Environment-Centric Active Inference
以環境為中心的主動推理
https://arxiv.org/pdf/2408.12777v1
摘要
為了使智能體能夠應對環境中非預期的變化,我們提出了一種以環境為中心的主動推理方法(Environment-Centric Active Inference, EC-AIF),其中主動推理中的馬爾可夫毯(Markov Blanket)是從環境的角度定義的。在傳統的主動推理中,馬爾可夫毯是從智能體的角度出發定義的。也就是說,首先將執行“動作”的實體定義為智能體,例如機器人或人;然后將受該智能體“動作”直接影響的人或物定義為環境;并將智能體與環境之間的邊界定義為馬爾可夫毯。這種以智能體為中心的定義方式無法讓智能體對由定義之外的因素引起的環境變化作出反應。
在所提出的EC-AIF中,并沒有明確對應于“智能體”的實體。環境包括所有可觀測的事物,不僅包含傳統上被認為是環境的人和物體,還包括執行“動作”的實體如機器人和人類。因此,所有的狀態,包括機器人和人的狀態,都被納入推理目標之中,從而消除了環境中的未預期變化。我們將EC-AIF應用于一個機器人手臂,并通過其完成物體搬運任務進行驗證。實驗結果表明,該機器人手臂能夠成功搬運物體,同時對物體目標位置的變化以及另一個機器人手臂姿態的變化作出響應。
關鍵詞 :機器人 · 馬爾可夫毯 · 具身智能體 · 物體搬運
1 引言
主動推理(Active Inference)解釋了生物體的智能行為,并提升了各種智能體的智能水平。作為主動推理基礎的是自由能原理(Free Energy Principle),根據該原理,生物體會通過改變用于采樣環境的動作,或改變用于推斷環境狀態的感知來最小化其自由能 [7,4,14]。該原理的獨特之處在于,它以統一的方式解釋了“行動”的改變,即主動推理 [6,18]。在這種將感知與行動統一處理的傳感器-運動依賴關系(sensorimotor contingency)下,這種方法適用于諸如機器人等智能體,因為它排除了與感知無關的動作。因此,主動推理已被實現在多種智能體中,并有助于生成智能化的行為 [25,3,8,10,12,15,20,23,24,1,2]。
在主動推理中,智能體(agent)與環境(environment)的定義一直由研究人員自行決定 [22,21,16,13,26]。在這些研究中,尤其是在具有具身性的系統(如機器人)中,通常隱含的指導原則是將機器人定義為智能體,將其周圍定義為環境。
對智能體與環境的定義實際上意味著對主動推理中的馬爾可夫毯(Markov Blanket)進行設計。只要所定義的環境保持不變,智能體在某些情況下可以比人類表現得更好。然而,環境中也可能發生一些智能體無法直接改變的變化,或者存在其他智能體的情況下也會出現變化。這種隱含的馬爾可夫毯設計準則將無法應對那些非智能體本意所導致的環境變化。
因此,需要一種能夠應對非預期環境變化的馬爾可夫毯設計策略。這不應是一種隱含的指導原則,而應是一種與系統配置無關的具體策略,例如不依賴于機器人及其周圍環境的具體劃分。我們首先必須回答一個根本性問題:什么是智能體?什么是環境?設計策略應當能夠解答這一基本問題。
那些并非出于智能體意圖的環境變化,其根源在于我們假定了一個對應于“智能體”的實體(如機器人),并將它的周圍定義為環境。如果我們不再預設這樣一個對應于“智能體”的實體,而是將整個世界都視為環境,則所有環境中的變化都必須處于智能體意圖的掌控之下。因此,通過假設世界中的一切都是環境,并基于此來定義馬爾可夫毯,可以使智能體對環境中的變化作出響應。
我們提出了一種以環境為中心的主動推理方法 EC-AIF(Environment-Centric Active Inference),該方法基于環境來設計馬爾可夫毯。馬爾可夫毯的概念如圖 1 所示。傳統的馬爾可夫毯定義如圖 1(a) 所示:將執行“動作”的實體(如機器人或人)定義為智能體,將其他人或物體定義為環境。在這種定義下,智能體的狀態是完全可知的;同時,在所定義范圍內的環境狀態也被高精度地推斷,而范圍之外的環境狀態則完全未被推斷。
相比之下,我們提出的 EC-AIF 完全不同,如圖 1(b) 所示:不存在明確對應于“智能體”的實體。除了傳統上被認為是環境的人和物體外,環境還包括執行“動作”的實體,如機器人和人。此時,整個環境的狀態都被納入推斷范圍,但推斷的準確性因狀態而異。
我們將 EC-AIF 應用于一個機器人手臂,并在一個物體搬運任務中進行了演示。實驗結果表明,該機器人手臂能夠適應環境中的變化,并成功完成物體搬運任務。
2 方法 2.1 自由能原理與主動推理
據稱,生物體遵循自由能原理(Free Energy Principle, FEP)。生物體會不斷重復感知與行動的過程。感知 是從環境中獲取觀測值 o,并推斷環境中的隱藏狀態 s 的過程;行動 是推斷適當的策略 π 并對環境采取行動的過程。隱藏狀態 s 和策略 π 的推斷是為了使自由能盡可能小,這一過程依賴于生物體所擁有的環境生成模型 p(o, s, π)。
FEP 的一個重要特征是,它也將“行動”視為對策略的推斷,即所謂的主動推理(active inference) 。FEP 將感知與行動統一為一種“推斷”過程來處理。
這種推斷過程假設感知與行動的類別是預先定義好的。感知與行動通過觀測值 o、隱藏狀態 s 和策略 π 來表示,它們都以概率分布的形式進行處理。因此,為每個觀測變量 o、隱藏狀態變量 s 和策略變量 π 定義概率變量,就等同于定義了感知與行動的類別。
例如,考慮觀測變量是視網膜圖像,隱藏狀態變量是目標物體的位置,策略變量是眼球運動的方向。在這種情況下,感知就是基于視網膜圖像推斷目標物體的位置,而行動則是根據目標物體的位置推斷適當的眼球運動方向。這些概率變量的集合被稱為馬爾可夫毯(Markov Blanket) 。馬爾可夫毯決定了感知與行動的類別。
2.2 馬爾可夫毯
生物體被認為會自適應地選擇其馬爾可夫毯。通常想象的馬爾可夫毯是生物體身體與其周圍環境之間的邊界。但這并不是生物體唯一的馬爾可夫毯。生物體的馬爾可夫毯具有層級結構,例如器官與其周圍環境之間的邊界、細胞與其周圍環境之間的邊界 [5,11,17,19]。根據不同的目標,會選擇合適的馬爾可夫毯。
為了構建一個用于解釋生物體智能行為或生成人工系統智能行為的主動推理模型,研究人員需要設計一個馬爾可夫毯。例如,在典型的主動推理問題 T-Maze 任務 [6] 中,主動推理模型是基于一只老鼠建立的,這只老鼠是一個具有動作能力(在迷宮中移動)的智能體。研究人員為老鼠的兩種感知模態——外感受(迷宮中的位置)和內感受(吸引或厭惡刺激)設計了觀測變量。此外,還設計了可能解釋這些觀測變量的隱藏狀態變量。觀測的目標,稱為“偏好(preference)”,提供了預期自由能的梯度,從而引導出合適的行為。
同樣地,當將主動推理應用于機器人時,也是從作為具有動作能力的智能體的機器人出發來設計馬爾可夫毯。在將主動推理應用于世界中有限的現象或分配給機器人的特定任務時,以智能體為中心設計馬爾可夫毯是非常有效的。
然而,以智能體為中心設計的馬爾可夫毯并不能涵蓋那些超出限定現象或任務范圍的內容。智能體會推斷馬爾可夫毯中定義的隱藏狀態與策略,但反過來,它無法推斷未在馬爾可夫毯中定義的狀態或策略。
我們期望機器人和其他人工系統的智能行為具備通用性,即能夠應對非智能體本意引起的環境變化。智能體所面臨的“非預期”的環境變化,實際上涉及馬爾可夫毯所定義環境之外的隱藏狀態與策略的變化。
隱藏狀態的變化來源于其他智能體的存在。例如,除了目標機器人之外還安裝了另一個機器人的情況下,該隱藏狀態會被另一個機器人的位置、朝向和運動所改變。另一方面,策略的變化則來源于目標智能體無法直接實現的目標變化。例如,當目標機器人執行某項任務時,如果任務被更換為僅靠該機器人無法完成的任務,則策略也會發生變化。
由于這些變化涉及環境的“外部”,因此智能體并未“意圖”這些變化。這意味著,只有將這些變化納入環境的“內部”,智能體才能作出響應。這就要求我們在馬爾可夫毯的設計上從“以智能體為中心”轉向“以環境為中心”。
2.3 以環境為中心的主動推理(EC-AIF)
我們提出了以環境為中心的主動推理方法——EC-AIF,該方法從環境出發設計馬爾可夫毯。圖2展示了EC-AIF中觀測變量o、隱狀態變量s和策略變量π的決策過程。在EC-AIF中,通常用于指導模態選擇的“what”和“where”概念[18]被應用于環境中。
首先,“where”是通過將整個可觀測空間視為環境來定義的。例如,可觀測空間可以簡單地被劃分為一個網格,每個網格點分別定義為where1、where2,以此類推。
接下來,“what”是從可觀測空間中枚舉出來的,在其中“where”是獨立變化的。“what”包括whatc和whatnc兩種類型:
whatc 是連接到控制器(如機器人)的部分;
whatnc 是未直接連接到控制器(如球體)的部分,但其“where”會因機器人的操作而發生變化。
對于whatc,針對每個控制器分別枚舉與其連接的對象;
對于whatnc,則考慮那些在機器人操控下“where”會發生變化的對象,并將其視為部分獨立的對象而包含進來。因此,像那種粘在機器人身上并始終隨機器人移動的球體,不會被包含在whatnc中。
隨后,觀測變量 o 是由“what”和“where”的可能組合定義的:
算法1展示了EC-AIF中的流程。對于每一個whatc,都會配置一個生成模型,該模型由上述決策流程中定義的觀測變量o、隱狀態變量s和策略變量π表示。
3 結果與討論
3.1 實驗設置
實驗是在機器人進行物體搬運的場景下進行的。該場景中主要使用了 Universal Robots 公司的 6 軸機械臂 UR5e,以及安裝在其末端的 Robotiq 自適應夾爪 2F-140,如圖 3(a) 所示。
在該場景中,整個“世界”由以下部分組成:UR5e 機械臂、DENSO WAVE 公司的 6 軸機械臂 COBOTTA(如圖 3(b) 所示),以及放置在 UR5e 周圍的目標物體。因此,該場景中的“what”如下所示:
此外,“where”由網格點 P1 至 P15 組成,其中包括:
UO:UR5e 的原點位置,
CO:COBOTTA 的原點位置,
Int.:兩臺機器人之間的中間位置。
我們通過兩個能夠捕捉物體搬運過程中環境變化的場景來評估所提出的方法:
場景1:物體搬運的目標位置發生變化。
場景2:另一臺機器人的朝向發生變化。第一個場景是環境中無法由智能體直接改變的因素發生變化的一個例子:物體搬運的目標位置發生了變化。具體來說,如圖4(a)所示,初始時目標位置位于機械臂UR5e的前方(P12),隨后變為機械臂COBOTTA的一側(P5)。在目標位置變化之前,該位置在UR5e的可到達范圍內,因此可以由UR5e單獨完成物體搬運。而在目標位置變化之后,該位置超出了UR5e的可達范圍,但處于COBOTTA的可達范圍內,因此需要UR5e與COBOTTA協作完成搬運任務。
第二個場景是一個存在其他機器人的情況下環境發生變化的例子,其中物體搬運的目標位置保持不變,但另一臺機器人的朝向發生了變化。具體來說,如圖4(b)所示,目標位置位于COBOTTA的正前方(P14),COBOTTA最初朝向與目標位置相反的方向,隨后轉向目標位置的方向。在COBOTTA朝向變化之前,當UR5e將物體放置在目標位置時,不會與COBOTTA發生接觸,因此UR5e可以獨立完成搬運任務。而在COBOTTA朝向變化之后,UR5e在將物體放置于目標位置時會與COBOTTA發生接觸,因此需要與COBOTTA協作完成搬運任務。
在這兩個場景中,目標物體的初始位置均為P7。目標位置作為對目標物體觀測的偏好給出。
將所提出的EC-AIF方法以及作為基準的普通AIF方法分別應用于兩臺機械臂UR5e和COBOTTA上。EC-AIF與AIF均使用pymdp [9](一個用于主動推理的開源軟件包)實現。動作的輸出以機器人手部的目標位置和朝向形式傳遞給機器人控制系統。機器人控制部分基于ROS Melodic(安裝在Ubuntu 18.04上的機器人開源系統)。
3.2 物體搬運目標位置的變化
當目標位置位于UR5e的可達范圍內時,在應用普通AIF和EC-AIF兩種情況下,均獲得了由UR5e將物體搬運至目標位置的路徑。圖5展示了當目標位置位于UR5e可達范圍內時所選動作的變遷情況。在兩種情況下,時間步1中均選擇了將UR5e移動到P7(即物體所在位置)的動作,隨后在時間步2中選擇了由UR5e將物體放置在目標位置P12的動作。圖6還顯示了當目標位置位于UR5e可達范圍內時對物體觀測的總次數。無論是應用普通AIF還是應用EC-AIF的情況下,物體起始位置(P7)和P12的觀測值相對其他位置更高,并且選擇了一條從P7直接搬運物體到P12的路徑。
在目標位置變化至UR5e可達范圍之外后,在應用普通AIF與應用EC-AIF的情況下觀察到了差異。圖7展示了當目標位置位于UR5e可達范圍之外時所選動作的變化情況。
在應用普通AIF的情況下,UR5e在各個時間步中選擇了各種不同的動作,未觀察到一致的動作序列。
而在應用EC-AIF的情況下,在時間步1中,選擇了UR5e移動至P7(即物體所在位置)的動作;隨后在時間步2中,選擇了UR5e將物體搬運至UR5e與COBOTTA之間的中間位置(Int.)的動作;進一步地,在時間步3中,先選擇了COBOTTA移動至中間位置(Int.)的動作,之后選擇了COBOTTA將物體放置于目標位置P5的動作。
圖8還顯示了當目標位置位于UR5e可達范圍之外時對物體觀測的總次數。在應用普通AIF的情況下,只有目標物體初始位置P7的觀測值較高;而在應用EC-AIF的情況下,物體起始位置(P7)、中間位置(Int.)以及目標位置(P5)的觀測值均相對其他位置更高,并且選擇了由UR5e和COBOTTA協作搬運物體從P7到P5的最短路徑。因此,應用EC-AIF的機器人能夠響應目標位置的變化。
結果表明,EC-AIF可用于應對那些無法由智能體直接改變的環境變化。在普通AIF中,環境定義是以UR5e為中心、即在其可達范圍內。只要目標位置位于UR5e的可達范圍內,UR5e就能夠完成物體搬運任務。在普通AIF中,由于動作變量比EC-AIF少,因此可以更快地選擇動作。
然而,一旦由于用戶原因導致目標位置超出UR5e的可達范圍,UR5e將無法確定如何搬運物體。這是因為此時目標位置已超出了所定義的環境范圍,且未對該物體位置設定任何偏好。而在EC-AIF中,環境是獨立于UR5e的可達范圍的。因此,即使目標位置位于UR5e的可達范圍之外,也只需更改對物體位置的偏好,即可適當地選擇UR5e的動作。
物體搬運的最短路徑表明,主動推理機制隱含了最小作用量原理。從起始位置P7到目標位置P12和P5之間存在多種可能的搬運路徑,但遵循主動推理的機器人選擇了最短路徑。遵循主動推理的智能體會采取行動以最小化對環境的“驚訝”(surprise),這意味著該智能體最小化了物體運動結果偏離最小作用量原理所帶來的意外性。因此,主動推理自然地包含了最小作用量原理。
3.3 其他機器人朝向的變化
EC-AIF 使得物體搬運路徑能夠根據 COBOTTA 的朝向進行調整。圖 9 顯示了當 COBOTTA 朝向與目標位置方向不同以及朝向目標位置時的運動序列和物體搬運路徑。
當 COBOTTA 朝向與目標位置方向相反時,物體從起始位置被直接搬運至目標位置。
相比之下,當 COBOTTA 朝向目標位置方向時,物體的搬運路徑發生了變化。
具體來說,物體通過中間位置(Int.)從起始位置被搬運至目標位置。
當 UR5e 與 COBOTTA 之間沒有接觸風險時,物體沿最短路徑搬運;而當 UR5e 與 COBOTTA 的接觸風險增加時,物體則沿一條繞行路徑搬運以避免接觸。
該結果表明,EC-AIF 能夠適應存在其他機器人時環境變化的情況。起始位置和目標位置均位于 UR5e 的可達范圍內。因此,在不存在障礙物(包括其他機器人)的情況下,物體通過最短路徑從起始位置被搬運至目標位置。
然而,當情況發生變化,COBOTTA 朝向目標位置方向時,COBOTTA 在物體搬運路徑中成為了障礙物。結果是,即使 UR5e 選擇了將物體搬運至目標位置的動作,也無法生成相應的 UR5e 運動軌跡。因此,系統選擇了通過中間位置(Int.)的動作——即在避開障礙物的同時距離最短的路徑。
4 結論
為了使智能體能夠應對環境中發生的非預期變化,我們提出了一種以環境為中心的主動推理方法——EC-AIF,該方法從環境出發定義主動推理中的馬爾可夫毯。
在普通的主動推理中,環境是從執行“動作”的智能體(如機器人或人)的角度出發進行定義的,因此智能體無法對超出該環境范圍的、由其他因素引起的環境變化做出響應。
而在所提出的 EC-AIF 中,環境被作為起點進行定義,并不存在等同于“智能體”的實體。因此,包括機器人和人在內的所有狀態都被納入推理的目標范圍,從而能夠應對環境中的非預期變化。
我們將 EC-AIF 應用于機械臂,并在物體搬運任務中進行了驗證。實驗結果表明,機械臂能夠在應對物體目標位置變化以及其他機械臂姿態變化的情況下,成功完成物體搬運任務。
未來的工作將通過考慮由于其他機器人朝向導致的機器人軌跡變化機制,進一步優化生成模型的設計,并研究機器人之間偏好信息傳遞的方式。
原文鏈接:https://arxiv.org/pdf/2408.12777v1
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.