靳種寶
(南京郵電大學 自動化學院 南京 210003)
多智能體系統[1](MAS,Multi-Agent System)是由多個相互對立作用的自治智能體形成的集合,研究的重點在于智能體間的交互,即智能體為了完成一個相同的目標而協調多個智能體的行為,以最大程度地實現系統的總體目標。RoboCup(The Robot Soccer World Cup)機器人足球仿真系統[2]是一個典型的多智能體系統,其提供了一個實時異步、有噪聲的對抗環境,為研究多智能體間協作提供了一個標準平臺。在這種環境下,為了贏得比賽,除了需要單個智能體有快速的反應能力,更需要為多個智能體間制定靈活的協作策略來進行有效的球隊協作,從而完成整支球隊比賽任務。
本文研究RoboCup中已有的多智能體間協作方法[3-7],通過球員協作射門來提出在一定區域中利用陣型中控球球員來組織協作,邀請范圍內球員進行協作配合,并動態進行協作角色分配,來解決整體設計協作策略的靈活性問題,實現區域球員間的靈活協作,從而協作完成指定目標任務。
2D仿真足球比賽平臺是一個由11個多智能體協作完成進球從而贏得比賽的任務。但是,由于每個智能體都只擁有局部的視覺信息,執行的相關動作也只能直接影響到局部環境。如何完成全局的決策,達到多智能體間的相互配合,必須是基于一定區域的協作。基于模型的特點,可以通過陣型來對11個智能體進行比賽場地區域上的分配,使其在全場比賽中能夠執行簡單的協作配合。
在比賽中,陣型的劃分與現實世界中人類足球比賽一樣,按照球員在場上的職責來定位。陣型的名稱一般以后衛、中衛和前鋒的人數來定義,如圖1所示的4-3-3陣型。在比賽過程中,根據環境的改變,在4-3-3陣型基礎上對一定區域中的球員位置進行協調變動。
角色的概念代表一個球員在比賽中承擔的責任,如前鋒、后衛、守門員等。根據球員在場上的位置,定義11個球員在場上的位置按照4-3-3陣型分為11種基本角色屬性,如圖1所示。每個角色球員根據自己所處球場位置有不同的角色狀態。

圖1 4-3-3陣型、球員角色和區域劃分
為了更好地配合陣型來區分場上不同區域,會依據球在場上的位置及對己方的影響將球場分為若干區域。這里本文將球場按照長度分為4類:Defense、Mid_def、Mid_off和Offense;按照寬度分為Side_L、Mid和Side_ R等3類,如圖1粗黑線所框區域。Defense和Mid_def區域表示防守區域,位于己方半場;Offense與Mid_off區域表示進攻區域,位于對方半場;Side_L與Side_R為球場左、右翼區域,Mid為球場中間區域。由此,按照長度和寬度分類可以將球場劃為12個區域。本文中的射門區域定義為位于對方半場Offense區域和Mid區域的重合部分,如圖1的陰影部分。
多智能體的協作主要就是對多智能體行為的管理,以實現智能體策略的選擇和行為的輸出。如何避免需要過多的信息和嚴格的條件來組織一次有效的協作策略是RoboCup機器人足球仿真環境下多智能體間協作的難點。基于陣型區域球員自組織、動態角色分配的協作方法可以自發地為一次協作來安排協作角色,使角色球員能夠針對當前的環境快速進行策略選擇,促進多智能體協作的實現。
動態角色分配是在協作方法建立后,根據陣型及基本角色來將協作中的球員分配為某種協作角色,并且指導協作動作。這樣分配的角色會根據協作方法的不同而執行不同的協作動作,但目的都是為了協作更好的實現。
該協作方法的處理結構如圖2所示,分為2個階段:(a)根據當前陣型中控球球員的位置區域得出區域狀態,建立觸發點區域狀態信息;(b)建立控球球員區域內球員信息集合,由控球球員發出協作邀請建立協作關系,分配協作角色,得出協作動作集合,最后輸出智能體協作動作,實現多智能體協作。
在第一階段中,根據球的位置和己方成功控球的幾率大小來判斷當前己方是處于進攻比賽狀態還是防守比賽狀態,從而建立有效的區域狀態信息,為協作目的給予指導。第二階段中,根據區域狀態信息和協作目的,由控球球員組織陣型區域中球員建立協作關系,分配協作角色并指導角色動作,實現球員協作。

圖2 協作方法流程
根據陣型區域內的球員自組織實現一次有效的協作射門。在協作方法的實現前,必須要對智能體的當前狀態和行為進行處理,為后續協作提供有利的信息。
RoboCup仿真比賽是一個復雜、動態的多智能體環境,有許多種可能的狀態,每個球員都與之對應的一組特征狀態。將這些特征狀態分為以下幾類來對球員狀態進行描述:
(1)區域位置類S
該類用來描述球或球員智能體位于比賽場地的特定區域。設S為整個球場區域的集合:
S={Defense(Side_L、Mid、Side_R), Mid_def(Side_L、Mid、Side_R), …}
球員在不同區域活動時有不同的動作選擇。
(2)速度類V
對球員智能體和球的運動速度特征定義如下:
V={當前球員智能體是靜止still、在移動{速度v,方向d},球是靜止still、在移動{速度v,方向d},…}
(3)區域位置球員類P
該類用來描述在當前控球球員區域類己方球員和對方球員的狀態信息集合,定義如下:
P={區域中己方球員數num_TM,己方球員狀態集{TM1,TM2,…},區域中對方球員數num_OPP,對方球員狀態集{OPP1,OPP2,…}}
在RoboCup這樣一個復雜的多智能體環境中,一般使用多個特征狀態來對智能體當前的運動狀態進行描述。
在一場足球比賽中,有效的進攻是球隊取勝的關鍵,很難想象一個球員在己方后場帶球到對方禁區最終實現射門進球。RoboCup仿真環境與真實環境一樣,球隊必須通過有組織的協作,才能完成射門進球得分這個目標任務。下面通過右翼邊路進攻協作射門方法為實例,說明使用陣型和動態角色分配的協作方法建立球員間協作過程。
當11號右前鋒控球至對方底線后,比賽陣型將會伴隨11號球員移動向對方半場,在射門區域將會有己方隊員中鋒7號、前鋒9號和10號,而距離11號球員附近的球員會有中鋒7號和前鋒9號,對方球員數量及位置,這些信息將會以智能體的狀態集F由11號球員組織起來并建立協作方法,以實現快速協作射門。整個協作過程如圖3所示。
上述的協作過程具體描述如下:

圖3 11號球員右翼協作射門方法過程
(1)己方11號控球隊員,進行協作決策,獲取與其相關的隊友及對方球員的策略信息:射門區域內己方和對方球員區域位置狀態、速度狀態以及自身附近己方與對方球員區域位置狀態、速度狀態,建立協作目的——射門得分,組織協作方法并對球員角色進行分配:11號控球入禁區,10號球員前插吸引對方后衛,9號球員前插判斷有效射門位置,7號球員入禁區協助11號控球;
(2)11號帶球入禁區,同時協作球員執行相關動作;
(3)11號球員帶球一段時間后,會被對方后衛緊逼,因此,傳球給位置點很好并且周圍沒有對方后衛的9號隊友;
(4)當9號接到傳球以后,9號隊員尋找一條合適的射門路徑,然后成功射門得分,至此整個協作過程結束。
以上過程用偽代碼表示如表1所示。

表1 右翼11號前鋒協作射門方法流程
為了驗證提出的基于陣型和動態角色分配的協作射門方法的合理性及有效性,將其應用于Apollo2D仿真球隊中,在歷年參加RoboCup仿真比賽的球隊中挑選了一些不同風格的球隊作為對抗球隊,根據比賽中射門情況來評估其方法的整體性能。表2給出了部分比賽結果。

表2 射門協作方法的比賽結果
由 表2中 數 據 可 知, 除 了 與WrghtEagle_09、HELIOS_08這樣的國內外強隊的對抗中的比賽結果不是很理想外,其余的比賽結果還是比較好的,在整個比賽中球隊進攻時具有較高的協作水平和射門成功率,整體上來看,達到了預期的協作目的。
[1] Jiming Liu.多智能體原理與技術[M]. 靳小龍,張世武,Jiming Liu 譯. 北京:清華大學出版社, 2003.
[2] 李實,徐旭明,葉榛,等.機器人足球仿真比賽的Server 模型[J].系統仿真學報,2000,12(2):37-39.
[3] Snasel, V.,Martinovic, J,Kozusznik, J.Strategy Description and Modelling for Multi-agent Systems[J]. Computer Information Systems and Industrial Management Applications, 2008. CISIM '08. 7th, 2008: 50-55.
[4] Sng, H.L.,Sen Gupta, G.,Messom, C.H.Strategy for collaboration in robot soccer. Electronic Design[J]. Test and Applications, 2002. Proceedings. The First IEEE International Workshop on. 2002: 347-351.
[5] Weihua Sun, Qingshan Li, He Liu, Lei Wang, Shaojie Mao, Yuping Li.A Scripted-Control Integration Strategy in Multiagent System. Artificial Intelligence and Computational Intelligence[R], 2009. AICI '09. International Conference on,2009: 263-267.
[6] Dimopoulos, Y, Moraitis, P. Multi-Agent Coordination and Cooperation through Classical Planning[R].Intelligent Agent Technology, 2006. IAT '06. IEEE/WIC/ACM International Conference on,2006:398-402.
[7] Yuanzhi Wang, Fei Zhang, Liwei Chen, Guosheng Hu, Shanhe Jiang. A Collaborative Learning System Based on Multiagent[C]. Advanced Language Processing and Web Information Technology, 2008. ALPIT '08. International Conference on. 2008: 353 -357.
[8] RoboCup Soccer Server manual for Soccer Server 7.07 and later.2003.2.28.