跳轉到內容

機器人/計算機控制/控制架構/群體機器人

來自華夏公益教科書,開放的書籍,面向開放的世界

群體機器人是自主機器人領域中一項相對較新的研究。群體最佳化技術已經存在十多年,用於一些功能。這些技術最近已被改編並應用於自主機器人應用。在群體機器人這個主題上,"群體"這個詞被定義了幾種變體。第一次聽到“群體機器人”這個短語,很多人只是想到機器人的基本互動,例如跟隨領導者,或者簡單地將資料在所有機器人之間中繼,共同朝向一個目標。然而,群體機器人技術在複雜問題解決方面取得了進一步的進展。機器人現在可以被賦予一個目標和一個關於如何實現該目標的基本建議。這個建議可能不是實現目標的最有效方法,甚至可能無法實現目標。因此,必須有一種方法來改進或最佳化這個建議。然後引入最佳化功能。這裡涵蓋的幾種技術包括蟻群最佳化 (ACO) 和粒子群最佳化 (PSO)。這些最佳化功能將在下面深入探討。

基本群體機器人

[編輯 | 編輯原始碼]

如前所述,基本群體機器人包括簡單的功能,例如跟隨領導者和機器人之間的互動,例如標記。在這些場景中,機器人不會積極改進其當前目標。它們只是按照基本原則相互互動,以實現預定義的目標。

檔案:I-swarm.jpg

如上圖所示,群體機器人技術在微型機器人領域中經常出現,這是由於許多因素造成的。其中一個主要因素是尺寸本身。由大型機器人組成的群體機器人可能體積龐大、價格昂貴且資料收集效率低下。顯然,尺寸確實限制了板載裝置,但這就是群體機器人技術優勢所在。所有機器人的共同作用為情況提供了更多細節,從而提供完整的影像。上面由歐盟資助的群體機器人旨在將所有電氣部件整合到一個靈活的板上。該群體目前沒有重大待定目標,其行為模擬了生物昆蟲。


5px‎

James McLurkin 是萊斯大學的助理教授,他開發了自己的 DARPA 資助的群體機器人。他的實驗探索了物理資料結構,例如根據 ID 號碼排列群體機器人。除此之外,他還編寫了一個均勻分散演算法。其他群體機器人研究包括他對機器人速度比的研究,即研究訊息傳播速度與機器人物理速度之間的關係。這項研究是為了發現機器人移動速度快於其物理解釋中繼訊息速度的問題。


  • 卡內基梅隆大學:磁性群體機器人

卡內基梅隆大學正在進行一項磁性群體機器人研究。該專案的目的是開發一個群體機器人,能夠在沒有任何平面限制的情況下進行磁性形狀變化。這可以在微觀水平上用作三維物理建模輔助工具。上面圖片中的機器人使用一系列電磁體來控制相鄰機器人之間的互動。

  • 布魯塞爾自由大學 ("L'Université libre de Bruxelles")

ULB 的幾個 IRIDIA 專案涉及群體智慧。他們的一些軟體和硬體設計釋出在 GitHub 上。

蟻群最佳化 (ACO)

[編輯 | 編輯原始碼]

ACO 是最簡單的群體最佳化技術之一,已被證明可以可靠地工作。這種最佳化技術直接源於自然本身,表明它已經是可行的解決方案。這個概念需要對螞蟻在自然界中的運作方式有一個簡要的瞭解。請記住,此定義已針對我們“完美”的示例進行了調整。在自然界中,螞蟻會隨機遊走。如果一隻螞蟻發現食物,它會開始釋放資訊素並開始返回巢穴。在某個時刻,另一隻螞蟻會發現食物並返回巢穴。這個迴圈會發生很多次。如果一隻返回蟻群的螞蟻發現這些資訊素痕跡之一,它更有可能沿著痕跡行走。如果遇到岔路,則會透過資訊素強度進行偏差。這意味著,螞蟻更有可能沿著資訊素強度更強的痕跡行走。資訊素是揮發性的,會隨著時間的推移而蒸發。這意味著,沿著某條路徑行走的螞蟻越多,釋放的資訊素就越多。然而,如果相同數量的螞蟻在相同時間段內沿著一條長路徑和一條短路徑行走,那麼短路徑的資訊素強度會更高。這意味著偏差將始終傾向於更短、更高效的路徑,從而自然地選擇最佳解決方案。

這個過程可以在我們的電子世界中進行模擬。建立一個擬議的解決方案,並且“螞蟻”導航到該解決方案。然後修改初始解決方案以建立最有效的解決方案。下面是 ACO 的基本描述。可以看到,最初建立了兩條路徑,它們在中間重疊。這兩條路徑為最佳化問題提供了四種可能的解決方案。“螞蟻”然後隨機遍歷所有四種可能性。透過資訊素縮小可能性。所有四種解決方案都由相同數量的螞蟻遍歷,但較短的解決方案具有更高的資訊素強度,從而使更多螞蟻傾向於較短的路徑,從而消除所有其他解決方案,並收斂於最佳擬合解決方案。

粒子群最佳化 (PSO)

[編輯 | 編輯原始碼]

PSO 進一步遠離隨機函式,走向一個更智慧的解決方案。PSO 功能的大部分模擬了自然關聯,例如鳥群或魚群。在 PSO 函式中,首先提供一個通用的解決方案。然後初始化一群“粒子”。它們開始嘗試到達目標。當它們向目標移動時,它們會監控其自身位置使用者定義範圍內的某些其他粒子。它們周圍的粒子有助於形成區域性最優 (lbest)。這是迄今為止發現的最合適的解決方案。每個粒子還會監控其個人最優 (pbest) 和迄今為止的全域性最優 (gbest)。請記住,在一些模擬中,lbest=gbest,並且彼此周圍的粒子不會互相產生區域性影響。然後,粒子會朝著 lbest 和 pbest 以及 gbest 的組合進行偏差。它們的新速度向量還包括一個隨機縮放因子,以防止過早收斂於無效解決方案。下面提供了一個方程,用於提供對監控其 pbest 和 gbest 的群體機器人的基本瞭解。

General PSO Equation


此方程還提供了學習因子,在本例中,這些學習因子被縮放為“2”。從這個方程中我們可以看到,新的速度等於 pbest-當前和 gbest-當前之差的縮放值的總和。可以看到,這種最佳化技術為問題的最佳擬合解決方案提供了一個非常準確的收斂。

檔案:Particleswarm.jpg

  • 上面提供了一個指向開發的 Java 小程式的連結,以幫助理解 PSO 的操作。動畫小程式可以從這裡找到。
華夏公益教科書