1.一種基于自組織行為的集群機器人圖形組建方法,其特征在于,包括以下步驟:
步驟1:對集群機器人中各機器人發(fā)送待組建的圖形位置和形狀信息;
步驟2:將集群機器人按次序排列在初始位置,并隨機初始化4個單體機器人的運動狀態(tài)以及給每個單體機器人進行ID標識,其中,一個為種子狀態(tài),梯度為0,另外三個為終止停止狀態(tài),梯度為1,且梯度為1的單體機器人與梯度為0的單體機器人之間的距離小于0.309R;
步驟3:集群機器人中各單體機器人之間通過相互傳輸信息,依據(jù)各自不同運動狀態(tài)和梯度,對各單機器人的下一時刻的運動狀態(tài)和行進順序進行自組織的周期性編隊控制,完成所需組建的圖形;
所述集群機器人中各單體機器人之間相互傳輸信息是指集群機器人中各單體機器人將自身的位置坐標、ID信息、運動狀態(tài)以及梯度發(fā)送給在其通訊半徑內的單體機器人,并獲取在該通訊半徑內與其他機器人之間的距離;
單個機器人的運動狀態(tài)包括起始停止狀態(tài)、等待狀態(tài)、行進狀態(tài)、種子狀態(tài)、暫停判斷狀態(tài)和終止停止狀態(tài);
單體機器人梯度是指集群機器人在初始位置時,各單體機器人離處于種子狀態(tài)的單體機器人的遠近程度,距離處于種子狀態(tài)單體機器人越遠的單體機器人的梯度越高;
未進行梯度初始化的單體機器人梯度以距離處理種子狀態(tài)的單體機器人距離由近至遠依次按照以下過程確定梯度:
將與當前單體機器人距離小于0.309R的單體機器人作為當前單體機器人的鄰近單體機器人,將鄰近單體機器人中梯度最小的單體機器人的梯度賦值給當前單體機器人,并當前單體機器人的梯度值加1,完成當前單體機器人的梯度計算;
所述起始停止狀態(tài)是指集群機器人位于初始位置時,所有單體機器人靜止不動,除已初始化的四個單體機器人外,其余單體機器人均進行自身梯度計算,完成梯度計算后進入等待狀態(tài);
所述等待狀態(tài)為單體機器人從起始停止狀態(tài)到行進狀態(tài)之間的一個過渡狀態(tài),處于等待狀態(tài)的單體機器人滿足以下任一條件時,進入行進狀態(tài):
當在通訊半徑內的其他單體機器人的梯度全都小于該單體機器人梯度時,進入行進狀態(tài);
當在通訊半徑內該機器人梯度為最大且與其中一個或多個單體機器人的梯度相等,則從中選出ID最大的單體機器人進入行進狀態(tài);
所述行進狀態(tài)是指單體機器人處于前行運動過程中;
所述種子狀態(tài)是指處于種子狀態(tài)的單體機器人不運動,且作為其他行進狀態(tài)單體機器人停止運動標志物,當處于行進狀態(tài)的單體機器人與處于種子狀態(tài)機器人距離小于設定??烤嚯x時,停止運動;
所述暫停判斷狀態(tài)是指處于行進狀態(tài)機器人運動到與種子狀態(tài)機器人相距0.309R時進入的狀態(tài),用來根據(jù)周圍機器人的狀態(tài)判斷下一步進入終止停止狀態(tài)或種子狀態(tài);
所述終止停止狀態(tài)是指單體機器人處于終止停止狀態(tài)時,單體機器人靜止不動,向外發(fā)送自身位置和狀態(tài)信息;
其中,R為單體機器人半徑。
2.根據(jù)權利要求1所述的方法,其特征在于,所述依據(jù)各自不同運動狀態(tài)和梯度,對各單機器人的下一時刻的運動狀態(tài)和行進順序進行自組織的周期性編隊控制,具體過程如下:
處于行進狀態(tài)的單體機器人沿靜止的單體機器人邊緣前行,在前行過程中與靜止的單體機器人之間間隔距離為0.155R;
當處于行進狀態(tài)的單體機器人與處于種子狀態(tài)的單體機器人之間的間距小于或等于0.155R時,則該單體機器人由行進狀態(tài)轉換到暫停判斷狀態(tài);
當單體機器人處于暫停判斷狀態(tài)時,若在其通訊半徑內存在處于種子狀態(tài)機器人時,該機器人保持暫停判斷狀態(tài);若在其通訊半徑內不存在處于種子狀態(tài)機器人時,則開始計算自身優(yōu)先值,并與其最接近的兩個單體機器人進行優(yōu)先值大小比較,優(yōu)先值大的單體機器人進入種子狀態(tài),其他處于暫停判斷狀態(tài)的單體機器人進入終止停止狀態(tài);
當單體機器人處于種子狀態(tài)時,若周圍圍滿六個機器人且間距都為0.309R時,則由種子狀態(tài)轉換至最終停止狀態(tài),否則,一直保持種子狀態(tài);
當單體機器人處于終止停止狀態(tài)時,根據(jù)接收到其他處于終止停止狀態(tài)機器人發(fā)送的定位信息,采用三邊定位算法對自身位置進行計算,并向外廣播自身狀態(tài)和定位信息。
3.根據(jù)權利2所述的方法,其特征在于,單體機器人的優(yōu)先值是指單體機器人的工作負責區(qū)域覆蓋所需組建圖形的軌跡類型;
覆蓋的軌跡為線條或弧線時,為線優(yōu)先值;
覆蓋的軌跡存在拐點時,為點優(yōu)先值;
不存在軌跡覆蓋時,為非優(yōu)先值;
其中,線優(yōu)先值大于點優(yōu)先值,點優(yōu)先值大于非優(yōu)先值。
所述單體機器人的工作負責區(qū)域是以(x0+1.155R,y0+R),(x0-1.155R,y0+R),(x0+1.155R,y0-R),(x0-1.155R,y0-R)四點組成的矩形區(qū)域;
其中,單體機器人圓面圓心點坐標為(x0,y0)。
4.根據(jù)權利2所述的方法,其特征在于,所述處于行進狀態(tài)的單體機器人沿靜止單體機器人的邊緣行走,是沿順時針方向,以與集群機器人間距為0.309倍的單體機器人半徑距離,圍繞集群機器人進行移動。
5.根據(jù)權利要求1-4任一項所述的方法,其特征在于,所述單體機器人自身位置坐標信息采用如下定位方法進行計算獲得:
其中,xself,yself分別表示為單體機器人真實的橫、縱坐標;分別表示為單體機器人的橫、縱坐標計算值;xn,yn分別表示為該單體機器人的鄰近單體機器人中的第n個單體機器人的橫、縱坐標計算值;DN表示為該單體機器人與其通訊范圍內第n單體機器人之間的測量距離。
6.根據(jù)權利要求1所述方法,其特征在于,在組建的圖形中,相鄰單體機器人之間的間距為單體機器人半徑的0.309倍。