武梅 高依蘋 邵蔣杰
摘? 要: 將增量控制方法應用于多智能體一致性問題。通過將相鄰智能體的控制變量作為控制輸入來更新每個智能體的狀態,可以在一定初始條件下將系統轉化為線性一致性問題,并應用于供應鏈庫存系統。而在實際中,由于統計過程復雜,系統很難獲得準確的庫存水平,因此,利用增量控制輸入可實現相應工廠的庫存水平一致,從而穩定整個市場供應。最后,通過仿真實驗驗證了該理論方法的有效性。
關鍵詞: 一致性; 供應鏈系統; 增量; 多智能體系統
中圖分類號:TP13? ? ? ? ? 文獻標識碼:A? ? ?文章編號:1006-8228(2023)09-64-05
Increment control method of consensus problem and its
application in supply chain systems
Wu Mei1, Gao Yiping2, Shao Jiangjie2
(1. School of Information Science and Engineering, Zhejiang Sci-Tech University, Hangzhou, Zhejiang 310018, China;
2. School of Computer Science and Technology, Zhejiang Sci-Tech University)
Abstract: In this paper, an increment control method is applied in the multi-agent consensus problem. By taking the control variables of neighboring agents as the control input to update each agent's state, the system can be transformed into a linear consensus problem under the circumstance of certain initial values and applied to the supply chain systems. In practice, it is difficult for the system to obtain exact inventory quantity of each facility due to the complex statistical process. Therefore, the incremental counterpart is utilized to achieve inventory level consensus for corresponding facilities, so as to stabilize the whole market supply. Finally, simulations are provided to demonstrate the effectiveness of the theoretical method.
Key words: consensus; supply chain systems; increment; multi-agent systems
0 引言
近幾十年來,多智能體系統的一致性問題引起了廣泛關注。多智能體系統在許多領域發揮了重要作用,如電力系統經濟調度、社交網絡決策、衛星編隊控制、分布式機器學習等。
早在二十世紀七十年代,DeGroot[1]首次提出了管理學和統計學領域的一致性概念,利用加權平方的方法來估計小組中的個人意見,并就參數的概率分布函數達成組內人員意見一致。直到二十一世紀,文獻[2]才提出相應的理論分析。隨后,許多學者在時延或有限時間控制、非線性系統、二階或高階系統等方面對一致性問題進行了研究。隨著計算機科學的快速發展,基于強化學習的方法被應用于解決系統中含有錯誤智能體的一致性容錯問題。在現有文獻中,解決多智能體一致性的方法均是假設可以通過本地通信獲得智能體之間的絕對或相對狀態,因此狀態被視為系統的控制輸入。此外,一些研究人員將智能體分成小組,并利用相關組信息作為控制輸入,以實現系統一致性[3]。
然而,在一些實際場景中,當無法獲得智能體或組之間的絕對或相對狀態信息時,現有的一致性方法將不再適用。例如,在供應鏈倉庫系統中[4],由于統計過程需要大量的人力物力,很難獲得每個倉庫的準確庫存量。鑒于上述情況,可以將增量狀態信息(即庫存變化)用作控制輸入,以達到庫存一致的目標,這將大大減少資源投資和人力耗損。
本文中,我們提出了一種新的分布式方法,解決當系統中既不存在智能體間相對狀態信息也不存在組間相對狀態信息時的一致性問題。具體而言,引入前一時刻中相鄰智能體的控制變量(增量狀態)來更新當前智能體的狀態。當初始控制輸入滿足鄰居的平均狀態的情況時,目標就等價于具有均勻相鄰權重的線性一致性系統,此時,系統必然可以達成一致。進一步地,研究了一個包含多個子鏈的供應鏈系統模型,其中每個子鏈被視為一個智能體且包含不同的工廠,不同子鏈中的相應工廠之間發生信息交互。通過輸入控制增量進行狀態更新,每個子鏈中各個工廠的庫存水平達到一致,并通過仿真實驗進行了相應的驗證。
本文的貢獻如下:①提出的方法是首次在不存在智能體間相對狀態和組間相對信息的情況下利用增量控制來實現系統一致;②增量控制方法能夠減少復雜大規模數據統計的計算負荷。我們通過將該策略應用于供應鏈系統來實現庫存水平的一致性,從而證明了這一能力。
1 相關知識
1.1 圖論
在智能體系統中,把一個智能體看作是一個節點,智能體之間的信息交互看作是連接成功的節點的邊,采用圖論知識來刻畫整個系統的拓撲結構。
用[G=V,E,A]來表示多個節點之間的有向信息交互拓撲,其中[V={1,2,…,N}]表示[N]個節點構成的集合,[E?V×V]表示邊集,即:節點之間有向的連接關系。[Ni=i|j∈V,j,i∈E]表示節點[i]的鄰居集合,[A=[aij]∈RN×N]表示節點的鄰接矩陣。當存在[(j,i)∈E]且[aij>0]時,表明節點[i]和節點[j]之間存在鄰居關系,否則[aij=0]。有向圖又可稱為強連接圖,表示當且僅當存在至少一個根節點以直接或間接的方式可以到達其他任何節點。在一般情況下,本文拓撲圖是準強連通的。
1.2 系統模型
考慮一組含有[n]個智能體的離散時間系統,第[i]個智能體的動力學模型可描述為:
[xik+1=xik+uik,? i∈V]? ⑴
其中,[xi(k)∈R]和[ui(k)∈R]分別表示智能體[i]在[k]時刻的狀態和控制輸入,在此[n]個智能體的初始狀態表示為[X0=[x10,x20,…,xn0]T]。在一些情況下,智能體也可以表示為組信息,用[Gi]表示。
本文中,假設智能體[i]既無法獲得其鄰居的絕對狀態信息[xi],也無法獲得其與鄰居智能體[j]的相對狀態信息[(xj-xi)]或者相對組信息[(Gj-Gi)]。此外,對于每個智能體來說,可以獲得其鄰居智能體的狀態增量信息。在很多實際場景中都可能發生這種情況,比如供應鏈系統的應用[5],配電系統中的局部電壓控制[6]。以供應鏈系統為例,由于庫存量龐大以及復雜的統計過程,實際中很難獲得準確的庫存數量,而獲取每個工廠及其鄰近工廠的增量部分,用以穩定整個市場的供應一致是可行的。
因此,本文的目標是為每個智能體[i]設計合適的控制輸入[ui(k)],以便在最后一步通過相鄰智能體的控制輸入[uj(k-1)],確保智能體在足夠小的[ε]范圍內,實現系統的狀態一致。
[limsupk→∞maxi≠jxik-xj(k)<ε]? ⑵
2 主要結論
本文中,研究多智能體系統在鄰居智能體的絕對或相對狀態信息未知,僅基于鄰居智能體的增量變化的情況下,達成系統的一致。首次引入控制變量研究多智能體的一致性問題,為了簡化分析,我們以固定拓撲的情況來進行分析。
對于智能體[i],其控制輸入為:
[uik+1=uik+j∈Niuj(k)Ni+1,? i∈V]? ⑶
由此,可得如下主要結論。
定理1 對于每個智能體,其狀態的更新僅與鄰居智能體的控制變量和自己的狀態值相關,當且僅當其初始控制輸入滿足如下,多智能體系統可達成一致。
[ui0=xi0+j∈Nixj(0)Ni+1-xi(0)]? ⑷
此時,我們所提出的算法等價于具有相同鄰居權重的經典一致性算法,即:
[xik+1=xik+j∈Nixj(k)Ni+1]? ⑸
當系統拓撲為固定拓撲時,系統可達成一致。
算法的具體細節參見算法1。
[算法1:智能體[i]基于增量控制的一致性算法 隨機初始化智能體[i]的值:[xi(0)] 控制輸入:[ui0=xi0+j∈Nixj(0)Ni+1-xi(0)]
智能體[i]在1時刻的值:[xi1=xi0+ui(0)] For[k=0? to? T ]do
[? ? ? ? ? uik+1=uik+j∈NiujkNi+1]
[? ? ? ? ? xik+2=xik+1+ui(k+1)] End For ]
備注1 當多智能體系統拓撲結構為平衡拓撲時,即每個智能體的入度等于出度,所提算法任然可使系統達成一致。讀者可參考Carli[7]等相關工作。
3 供應鏈系統模型
在本文中,假設每條供應鏈含有[N]條結構相似功能相同的子鏈,每條子鏈包含[n]個類似的工廠,其中,子鏈看作是結構圖中的節點。
[Xik=xi1k,xi2k,…,xinkT∈Rn]
[Uik=ui1k,ui2k,…,uinkT∈Rn]
[Dik=[0,…,0,din(k)]T∈Rn]
假設1 第[i]個子鏈,庫存水平滿足[0<xij(k)<xM],對于一些易腐物品,庫存水平隨著時間的推移將以[ρi]的速率衰減。
備注2 在實際應用中,由于庫存能力的限制,每個工廠[xij(k)]的最大庫存限制量為[xM]。特別是,某些易腐產品(如蔬菜)的庫存水平可能會隨著時間的推移而降低。
假設2 市場需求[dink]分為兩個部分,一部分為市場固定需求[din],另一部分為市場波動[ωin(k)]。因此,市場需求可以表示為:
[dink=din+ωin(k)]? ⑹
在系統中,為了實現整個系統的一致性,從而保證市場的穩定供應,每個智能體需要根據鄰居的行為調整各自的生產力。在此,交換的信息不是每個相鄰智能體的具體庫存水平,而是鄰居的增量狀態。因此,第[i]個子鏈的第[j]個工廠的控制輸入分為兩部分:一部分為[uij(k)]控制生產率以滿足供應需求,另一部分[uij(k)]調整庫存水平以實現系統一致。當初始值滿足[uij0=xij0+l∈Nixlj(0)Ni+1-xij(0)],有如下:
[uijk=uijk+uijk]
[uijk=kij×xijk]
[uijk=uijk-1+l∈Niulj(k-1)Ni+1]
其中,[kij]代表生產率,表示為:
[ki1k=ui2k+1-ρ1xi1kxi1k=ui2kxi1k+1-ρ1]
[ki2k=ui3k+1-ρ2xi2kxi2k=ui3kxi2k+1-ρ2]
[kink=dink+1-ρnxinkxink=dinkxink+1-ρn]
因此,第[i]個智能體(子鏈)的生產過程模型為:
[xi1k+1=ρ1xi1k+ui1k-ui2k]
[xi2k+1=ρ2xi2k+ui2k-ui3k]
[xink+1=ρnxink+uink-dink]
第[i]個子鏈的生產過程如圖1所示,其中[ρn]表示第[n]個工廠的庫存保留率,[1-ρn]表示第[n]個工廠的衰減量,在此處,假設不同子鏈相應工廠的衰減量相同; [uin(k)]表示第[i]條子鏈第[n]個工廠的生產量:[din]表示第[i]條子鏈第[n]個工廠的市場需求量;[xin]表示第[i]條子鏈第[n]個工廠的庫存水平即庫存量。
4 實驗結果和分析
在這個部分,我們首先考慮一個數值仿真證明所提出的算法,分別針對普通拓撲和平衡拓撲進行實驗。其次,構建一個含有四條子鏈,每個子鏈擁有三個工廠的供應鏈系統,并將所提算法應用于該供應鏈系統模型,通過實驗仿真分析其有效性。
4.1 數值仿真
考慮一個[n=10]的多智能體系統,每個智能體的初始值為0~10中的隨機數。智能體之間的通信拓撲如圖2所示,其為一個強連通有向圖,仿真結果顯示,智能體可在幾步之內就達成一致,如圖3所示。
若通信拓撲為平衡拓撲,即對于每一個智能體來說,入度等于出度,此時所有智能體的狀態都收斂到初始狀態的平均值,可實現平均一致性[8]。
由于在我們的問題中假設智能體之間的狀態信息未知,因此應該估計初始控制輸入對相鄰智能體狀態的影響,評估初始值不準確對收斂性能的影響。在這種情況下,初始控制輸入[ui0=xi0+(1-γ)j∈Nixj(0)Ni+1-xi(0)],其中[γ∈[-e,e]],誤差[e∈[0,0.5]],這意味著每個智能體[i]從具有[[-e,e]]誤差的所有鄰居智能體接收信息。我們以0.01的步長對[e]中的不同值進行采樣,并對每個值進行4000次實驗。然后,將每200個實驗結果分組,以計算系統達到一致性時的標準偏差。最后,在給定特定誤差的情況下,共繪制了20個結果,如圖4所示。可以得出兩個結論。首先,標準差相對于誤差[e]幾乎線性增長。其次,隨著初始控制變量中誤差的增加,標準差的變化越大,這意味著系統行為更難預測。
4.2 供應鏈系統的數值仿真
在本小節中,我們考慮一個由四個子鏈組成的供應鏈系統,每個子鏈包含三個工廠,這些工廠可以獨立生產和分銷產品。相應的生產流程如圖5所示。
當每個子鏈被視為一個圖節點時,不同子鏈之間對應的通信拓撲如圖6所示。初始時刻,庫存水平設定為[X10=2.3, 5.2, 8.9T],[X20=7.5, 6.4, 6.6T],[X3(0)=6.7, 3.1, 4.5T],[X4(0)=4.8, 4.3, 2.1T]。每個工廠的庫存保留率設置為[ρ1=0.8],[ρ2=0.7],[ρ3=0.8]。此外,對于市場需求[din(k)],所有固定需求部分均為[din=1],不確定的市場需求部分分別設置[ω1k=e-0.43kcos (k)],[ω2k=e-0.4kcos (k)],[ω3k=e-0.48kcos (k)],[ω4k=e-0.45kcos (k)]。
根據算法1,相應的模擬結果如圖7~圖9所示,對于每個子鏈中的相應工廠中的庫存水平,逐步達成一致。此外,我們分析了整個系統就庫存達成一致所需的時間。對于上述相同的供應鏈系統,初始庫存水平從0-10隨機抽樣,而其他參數保持不變。通過重復該實驗100次,工廠1和工廠2達成一致所需的時間相似,而工廠3達成一致的時間相對較長。顯然,這是因為工廠3與市場直接相連,市場波動會影響其收斂時間。
5 結束語
在本文中,我們提出了一種在多智能體系統中僅通過增量狀態實現一致性的新方法。該方法在通信拓撲滿足一般連接性要求的條件下,引入每個智能體及其鄰居的控制變量信息,作為更新其自身狀態的控制輸入。理論分析和數值模擬表明了該方法的有效性。同時,在供應鏈系統中采用所提出的方法來達成庫存一致。另外,對于平衡的拓撲結構,也可以實現平均一致。但仍有一些問題尚未解決,首先,實際場景中的拓撲通常是動態的,這是未來應該考慮的問題。其次,能否放寬對初始條件的限制可能是一個新的研究方向。
參考文獻(References):
[1] DeGroot M H. Reaching a consensus[J]. Journal of theAmerican Statistical association,1974,69(345):118-121.
[2] Jadbabaie A, Lin J, Morse A S. Coordination of groups ofmobile autonomous agents using nearestneighbor rules[J].IEEE Transactions on automatic control,2003,48(6):988-1001.
[3] 侯健,鄭榮濠.隨機分組策略下的分布式多智能體一致性[J].控制理論與應用,2018,35(4):517-522.
[4] 覃茜.基于多智能體的供應鏈系統在切換拓撲下的[H∞]一致性[D].山西:山西大學,2017.
[5] 高杉杉,劉永澤,王冰,等.基于切換拓撲的供應鏈系統庫存[H∞]一致性[C]//中國自動化學會控制理論專業委員會(Technical Committee on Control Theory, Chinese Association of Automation),中國自動化學會(Chinese Association of Automation),中國系統工程學會(Systems Engineering Society of China).第40屆中國控制會議論文集(15),2021:6.
[6] Farivar M, Zho X, Chen L. Local voltage control indistribution systems: An incremental control algorithm[C]//2015 IEEE international conference on smart grid communications (SmartGridComm).IEEE,2015:732-737.
[7] Carli R, Fagnani F, Frasca P, et al. Average consensus onnetworks with transmission noise or quantization[C]//2007 European Control Conference (ECC). IEEE,2007:1852-1857.
[8] 俞輝,蹇繼貴,王永驥.多智能體有向網絡的加權平均一致性[J].微計算機信息,2007,192(5):239-241.