哈佛機器人專家第一次介紹Kilobots是在2011年,當時只有25個,可以進行一些簡單的前進后退旋轉等動作,并能通過遙控器進行統一控制,有一些簡單的群組智能。然后在2013年出現時,到了100個。然后。。。這一次就出現了下圖中密集的機器人陣列,總共1024只!這是從始至今在同一時間同一地點看到如此之多的機器人。
一千個機器人所呈現出的如螞蟻般密集的景象
別看他們似乎有些可怕的名字(KILL-O-BOTS!其實kilo是計算機中的一千,也就是1024)還有在大家印象中對機器人群的恐怖印象,其實這些小機器人是沒有任何危害的。每個機器人都如同金幣般大小,而且非常廉價(才14美金)。靠振動腿來移動,機器人之間通過紅外進行通信。
研究這些群組機器人最為關鍵的有兩點。
首先是要達到一千多這種足夠多的數量。事實上,研究院研究群組機器人通常通過電腦模擬,畢竟這種方式能節省很大的成本。而建造實際的機器人時,群組至少包含五個或者十個,極少情況下會有一百個。
當有一千個群組機器人時,單個機器人的重要性幾乎降低到零:雖然某幾個機器人可能會出現故障或當機,但是機器人數量如此之大,機器人群組的集體行為趨勢并沒有改變,因此也沒有造成任何影響。
其次是管理如此巨大的群組機器人的軟件和基礎設備。當有一千個機器人時,對幾個機器人管理有效的方法已經行不通了。充電就是一個例子。想象一下將1000個機器人手動插到電源上的場景吧。哈佛研究員因此制作了如圖所示的充電設備。同時,也可以通過紅外信號快速的對其進行編程。正因為可以一次性的對所有的機器人群組進行充電與編程操作,所以,當擴充機器人群組的數量時,所需要的時間仍然沒有增加。
如果你有了這群機器人你會怎么做呢?是不是想到了超能特工隊里的磁力機器人:)
在生物系統中,群組織控制是根據一套非常簡單的規則。拿魚舉例來說,當轉向旁邊離你最近的鄰居時,要與前面的魚保持緊密的距離。對于Kilobots,組織形狀的算法也是基于類似的一套簡單功能。
● 跟蹤邊緣,機器人可以通過測量到邊緣機器人的距離沿著群組的邊緣進行移動
● 梯度陣列,初始機器人生成一個帶有梯度值的信息隨著在群組中傳播而遞增,讓每個機器人知道與初始機器人之間的距離。
● 定位,機器人可以通過和鄰居通信以及測量和其之間的距離來組建一個本地定位系統。
在這些功能中,定位是最困難也是最重要的。機器人通過從桌面反射后的紅外進行通信,同樣通過檢測紅外光的強度來測量機器人之間的距離:光亮度越小距離越遠。但是他們并不確定光是從什么地方過來的。因此就需要用到定位,他們通過一個初始的“種子”機器人組來定義定位系統的原點,隨后的機器人就可以通過至少三個已經定位好的機器人的紅外光照強度進行定位了。
集體自組合算法
左上:用戶發送給機器人的確定的圖形形狀。
右上:這個算法基于三個基本的集體行為:跟蹤邊緣,梯度陣列和定位。
底部:一組機器人根據用戶定義的形狀進行群組自組合。
一旦機器人定位好后,組建成任何形狀的圖案都是相對簡單直接的:機器人圍繞著群組的邊緣移動一直到檢測到已經進入圖形區域中。然后,每個機器人繼續沿著形狀邊緣移動一直到檢測到即將走出形狀或者碰到前面的機器人。也就是說:機器人根據這個簡單的規則一直移動,直到形狀組建完成。
Kilobots結構
好了,下面熟悉下Kilobots的結構
1,3.7V電池
2,電源跳線
3,振動電機
4,RGB燈
5,環境光傳感器
6,串口輸出接口
7,編程接口
8,充電銷
9,紅外發射器
10,紅外接收器