不久前,一種名為“蜂群崩潰症候群”(CCD)的神秘疾病開始摧毀蜜蜂蜂巢。這些蜜蜂負責美國大部分的商業授粉,它們的損失引發了人們對農業可能開始遭受損失的擔憂。2009年,我們三人與哈佛大學和東北大學的同事一起,開始認真考慮建立一個機器人蜂群需要什麼。我們想知道機械蜜蜂是否可以複製的不僅僅是個體的行為,還有數千只蜜蜂互動產生的獨特行為。我們現在已經創造了第一批“羅伯蜂”——飛行蜜蜂大小的機器人——並且正在研究使成千上萬的它們像真正的蜂巢一樣合作的方法。
從表面上看,這項任務幾乎不可能完成。蜜蜂經過數百萬年的進化,已經變成令人難以置信的飛行機器。它們微小的身體可以飛行數小時,在陣風中保持穩定,尋找花朵並躲避捕食者。用鎳幣大小的機器人試試看。
現在考慮蜂巢。一個蜂群似乎沒有主管,也沒有中央權威。然而,成千上萬的蜜蜂群落智慧地分工合作,完成對整個蜂巢健康至關重要的任務。當蜂巢需要更多花粉時,會有更多的蜜蜂去覓食;當蜂巢需要照料時,蜜蜂會待在家裡。當出現問題時——比如蜂后意外死亡——蜜蜂會迅速適應變化的環境。如果無人負責,如此龐大的蜂群是如何做出這些複雜的決定——而又不會花費太長時間或因溝通不暢而造成混亂的呢?
支援科學新聞報道
如果您喜歡這篇文章,請考慮透過以下方式支援我們屢獲殊榮的新聞報道: 訂閱。透過購買訂閱,您正在幫助確保有關塑造我們當今世界的發現和想法的具有影響力的故事的未來。
機器人蜂巢可以做的遠不止為花朵授粉(儘管農業是一個潛在用途)。實際上,小型、靈活、簡單、廉價的機器人可以比少數功能強大的機器人更有效地執行許多工。例如,考慮一下救援人員攜帶一箱1000個“羅伯蜂”——重量不到一公斤的包裹。可以將“羅伯蜂”釋放到自然災害現場,以搜尋倖存者的熱量、聲音或撥出的二氧化碳特徵。如果只有三隻機器人完成了任務,而其他機器人失敗了,這對蜂群來說也是一種成功。對於目前一代價值10萬美元的救援機器人來說,情況並非如此。
然而,機器人蜜蜂群落帶來了大量的技術挑戰。這些微小的機器人從頭到尾的長度不會超過幾釐米,重量約為半克——大約是世界上最輕的自主飛行器的重量的百分之一。這個微小的封裝必須容納每隻蜜蜂的飛行系統、電子大腦和視覺系統,以及控制蜜蜂如何與其蜂巢其他成員互動的控制器。材料科學、感測器技術和計算架構的最新進展正在使這些目標觸手可及。
身體和飛行
製造小型飛行機器人最明顯的挑戰是找到使其飛行的辦法。不幸的是,過去十年中機器人在小型化方面取得的穩步進展對我們幾乎沒有幫助,因為“羅伯蜂”的小尺寸改變了作用力的性質。摩擦等表面力開始支配重力和慣性等與體積相關的力。這種比例縮放問題排除了機械工程師的大部分標準工具包,包括旋轉軸承和齒輪以及電磁馬達——這些部件在較大的機器人中無處不在,但對於“羅伯蜂”來說效率太低。
我們沒有采用旋轉馬達和齒輪,而是根據空中昆蟲的解剖結構設計了“羅伯蜂”——撲翼由(在本例中)人造肌肉驅動[參見上方框]。我們的肌肉系統使用獨立的“肌肉”來提供動力和控制。相對較大的動力致動器使翅膀-胸廓機構振盪,從而為翅膀的拍打提供動力,而較小的控制致動器則微調翅膀的運動,從而產生扭矩以進行控制和機動。這兩種致動器都在翅膀與身體連線的關節處工作。
人造肌肉由壓電材料製成,當您在其厚度方向施加電壓時,壓電材料會收縮。這種致動器有一些缺點——例如,它們需要高電壓並且易碎——但這是一個比例縮放物理原理對我們有利的例子。這些致動器越小,它們就越想快速移動。並且由於每個週期(每單位質量)傳遞的功量保持相當恆定,因此更快的拍打會導致更大的功率。事實上,這些肌肉產生的功率與同等大小的昆蟲肌肉產生的功率相當。
在過去的幾年裡,我們試驗了數十種不同的致動器和關節配置。我們在所有這些設計中尋找的一件事是它們的可構建性。蜂巢中的數千只蜜蜂將必須批次生產。
到目前為止,我們提出的最佳設計是由三層夾層結構製成的:硬質面板形成頂層和底層,中間是一層薄聚合物薄膜。我們透過在頂層和底層刻出材料來建立關節,留下中間層的聚合物彎曲,從而建立撓曲關節[參見前頁的方框]。
我們在製造蜜蜂大小的機器人方面取得了巨大進展,但我們仍在努力找出為其供電的最佳方法。為了克服小型飛行對能源的苛刻要求,蜜蜂的大部分質量必須由主致動器和動力裝置佔據(想想“電池”,儘管我們也在探索使用固體氧化物微型燃料電池的可能性)。電力問題也被證明有點像第22條軍規:大型動力裝置可以儲存更多能量,但需要更大的推進系統來處理增加的重量,而這反過來又需要更大的電源。
儘管我們還不能讓“羅伯蜂”依靠自身動力飛行,但我們已經展示了一種100毫克的蜜蜂,它能夠產生足夠的推力起飛(我們將其拴在外部電源上)。“羅伯蜂”還能夠使用主動和被動機制相結合的方式來穩定自身。鑑於電池能量密度的技術水平以及所有身體部件的效率,我們對飛行時間的最佳估計仍然只有幾十秒。為了增加飛行時間,我們正在努力最大限度地減少每個身體部件的質量並最大限度地提高其效率。
大腦和導航
電力並不是唯一限制“羅伯蜂”的因素。機載大腦是另一個尚未解決的問題。野外的“羅伯蜂”必須不斷評估周圍環境,決定最佳行動方案並控制其飛行機制。外部電子裝置在實驗室中可以作為臨時的解決方案,但工作的“羅伯蜂”將需要自己的大腦。
從高層次來看,大腦構成了智慧,它不僅負責控制單個“羅伯蜂”,還負責管理其與蜂群中其他“羅伯蜂”的互動。我們著手分層構建大腦——解釋物理環境的感測器、處理基本控制功能的電子神經系統以及做出高階決策的可程式設計電子皮層。作為第一步,我們試圖設計一個能夠實現自主飛行的大腦子系統。這一挑戰需要一個緊密的控制迴路,其中包含感測器、訊號處理器和身體部位的運動。
為了弄清楚使用什麼感測器以及如何構建大腦電路,我們再次求助於自然。蒼蠅(和其他動物)使用兩種廣泛型別的感測器在世界各地活動。本體感受感測器為蒼蠅提供有關其內部狀態的資訊——例如,翅膀拍打的速度或電池中剩餘的電量。外感受感測器提供有關外部世界的資訊。
現代技術提供了GPS、加速度計和多軸陀螺儀,但此類感測器通常太重或消耗太多功率(或兩者兼有),因此無法使用。因此,我們正在研究一種類似於天然蜜蜂所擁有的電子視覺系統——一種分析“光流”的系統,即影像感測器視覺場中物體的明顯運動。想象一下從汽車乘客側窗看到的景象:附近的物體似乎快速穿過您的視野,而遠處的物體移動緩慢。即使僅配備小型、簡單的影像感測器,利用此資訊的視覺系統也可以建立其環境的詳細三維表示。
然而,“羅伯蜂”的大腦必須足夠強大,才能處理來自影像感測器的資料流,並做出適當的控制決策來驅動身體致動器。同樣,即使是先進的現成元件也無法滿足我們的需求。因此,我們一直在探索一種用於“羅伯蜂”大腦的新型計算機架構,該架構將通用計算與稱為硬體加速器的專用電路相結合。與通用處理器(即執行普通家用電腦的萬能晶片)不同,硬體加速器是經過微調的電路塊,它們只做一件事,但做得很好。我們將使用硬體加速器來進行穩定飛行所需的快速、即時計算,同時還要保持在嚴格的功耗預算之內。
一個主要的挑戰是弄清楚我們可以容忍哪些權衡。例如,我們希望能夠使用高解析度相機。然而,高畫素計數需要更大的影像感測器和額外的計算能力來處理影像。最佳平衡點在哪裡?
為了幫助回答這些問題,我們開發了一個特殊的測試室。我們將“羅伯蜂”的身體安裝在固定的多軸力和扭矩感測器上,並讓它拍打翅膀以嘗試飛行。在測試室的牆壁上,我們投射出“羅伯蜂”將要飛行的物理環境的影像。透過這種方式,我們可以探索我們的原型視覺系統、大腦和身體如何協同工作以在世界中導航。
當然,飛行控制僅僅是開始。我們還在並行努力探索其他型別的感測器,這些感測器將使“羅伯蜂”能夠完成特定任務——例如,找到隱藏在地震廢墟中的人。
不幸的是,我們目前預見不到我們目前的蜜蜂具備直接的蜂對蜂通訊能力——與無線通訊相關的功率成本太高了。然而,這並不意味著蜜蜂會單獨行動。
蜂群和通訊
與我們希望“羅伯蜂”在其中執行的世界相比,單個“羅伯蜂”將非常微小且功能有限,功率和重量預算嚴重限制了任何單個“羅伯蜂”可以擁有的感測和通訊硬體型別。因此,除了我們對“羅伯蜂”的身體和大腦的研究之外,我們還必須弄清楚如何建立一個蜂群。與蜜蜂一樣,孤立的“羅伯蜂”幾乎一事無成。但是蜂巢呢?群體行為將使“羅伯蜂”能夠探索大片區域,透過進行許多簡單的觀察來理解這些區域,有效地分工合作,並且即使單個蜜蜂失敗也能蓬勃發展。成群的小型、靈活且可能是一次性的機器人可以實現許多新的應用——例如授粉,或災難場景中的搜尋和救援——這些應用對於單個機器人來說是不可能的。
自 1990 年代初期以來,在“群體智慧”研究領域工作的計算機科學家已經闡明瞭許多受社會性昆蟲啟發的強大協調演算法——從協調搜尋策略到智慧分工。但即使掌握了這些演算法,也不能像管理單個機器人那樣管理機器人群。
首先,在數千個實體級別進行程式設計和推理變得站不住腳。這就像要求普通的軟體開發人員坐下來寫出計算機內部每個物理位的指令一樣。相反,正如編譯器採用計算機程式的人類可讀指令並將其轉換為控制微處理器內部各個電晶體的 1 和 0 一樣,我們需要一種更高級別、更抽象的方式來對整個蜂群進行程式設計——這種方式可以將全域性指令轉換為單個行為程式。我們需要一種用於蜂群的程式語言。
哪種語言能夠捕捉蜜蜂蜂群所做的事情以及我們希望“羅伯蜂”蜂群做的事情?目前還沒有簡單的答案,但我們已經開發了兩種抽象語言作為起點。在 Karma 語言中,可以指定蜂群必須完成的任務流程圖。流程圖包含表示觸發新任務的條件的連結。Karma 系統使用來自個體的資訊來調整資源向任務的分配,這種方式模仿了蜂巢在真實蜜蜂蜂群中所起的作用。
另一種稱為 OptRAD(最佳化的反應-對流-擴散)的方法將空中機器人蜂群視為在環境中擴散的流體。任何單個“羅伯蜂”都使用機率演算法來確定是否基於當前環境狀態執行任務。將系統視為流體使 OptRAD 能夠在較高層次上推理預期結果,並調整其行為以適應新情況。
關於構建和操作一個龐大的機器人蜂群,我們也有很多東西要學習,這個蜂群不僅包含數十個或數百個,而且包含數千個自主機器人,其數量遠遠超過了人類操作員。當有數千個實體時,僅在個體級別操作機器人也變得站不住腳。想象一下,如果每個機器人都有一個開/關開關——如果開啟每個機器人需要五秒鐘,那麼開啟 1000 個機器人將需要近一個半小時。類似的限制適用於從成本到維護的所有方面——每個機器人都必須便宜、易於製造且易於在集體層面操作。理想情況下,每個操作都應該是可擴充套件的——它應該花費一些固定的時間量,而不會隨著集體規模的擴大而增加(或者至少增加得非常緩慢)。
這些挑戰促使我們建立了 Kilobot 系統——數百個機器人的集合,每個機器人的寬度約為四分之一美元硬幣,它們透過振動移動並與其他附近的 Kilobot 通訊。我們可以使用這個集合來測試我們的程式語言和我們的湧現行為數學模型的有效性。畢竟,如果不使用真實的硬體進行實驗,我們就不太可能理解物理系統的湧現行為。
該集合可用於測試我們最終希望“羅伯蜂”蜂群實現的許多群體行為。例如,我們可以要求該群體在環境中搜索目標,然後,一旦某個 Kilobot 找到目標,就將位置報告給該群體。我們還開源了 Kilobot 設計,供希望自行製造的團體使用。或者,可以從教育機器人公司 K-Team 購買預製的 Kilobot。我們希望這種標準化的機器人套件將有助於產生新的想法,並促進各個團體無法單獨完成的科學集體進步——畢竟,我們也依賴集體力量來變得大於我們各部分的總和。
未來
儘管我們已經取得了很大進展,但仍有許多工作要做。我們預計在幾年內,我們將擁有在嚴格控制的實驗室條件下飛行的“羅伯蜂”。在那之後的五到十年內,您可能會看到它們得到廣泛應用。
1989 年,著名的機器人專家羅德尼·布魯克斯撰寫了一篇關於小型機器人用於太空探索的益處的論文,題為“快速、廉價且失控:機器人入侵太陽系”。這當然是對老工程師格言的一種戲仿,即消費產品通常可以用以下形容詞中的任意兩個(但不能是三個)來描述:快速、廉價和可靠。對於許多個體而言,一個個體的失敗無關緊要。
布魯克斯對這個概念在機器人技術中的解釋具有預見性。如果您可以製造許多簡單但有效協同工作的東西,誰會在乎個體是否偶爾會從天上掉下來呢?確保機器人探險家成功的唯一方法是允許它們偶爾從天上掉下來。
