《電子技術(shù)應用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設計應用 > 基于VB語言的機器人足球仿真比賽與對策研究
基于VB語言的機器人足球仿真比賽與對策研究
Icbuy
摘要: 本文著重對機器人足球比賽的對策進行研究,提出了四步?jīng)Q策推理模型,,并采用VB高級編程語言進行了仿真實現(xiàn),。決策推理模型要對實時變化的球場狀況進行分析處理,編寫對策,,此種模型有其自身的優(yōu)點,,簡單、快速,。還有其他一些模型,,如引力斥力模型、神經(jīng)網(wǎng)絡模型,、生物進化模型等,,當然這些模型的實現(xiàn)有一定的復雜性。
Abstract:
Key words :
 

  1.引言

  目前,,有關機器人足球比賽的國際組織有兩個:RoboCup聯(lián)合會和FIRA組織,。比賽項有三個:(1)、小型機器人比賽(Ф≤15cm);(2),、中型機器人比賽(15cm<Ф≤50cm);(3),、電腦模擬比賽。在仿真設計中涉及到很多關鍵性問題,,如智能體的體系結(jié)構(gòu),、智能體團隊的合作、自學習功能等,。采用一種基于行為模式的體系結(jié)構(gòu),,使球員能根據(jù)環(huán)境和自己的狀態(tài)來決定當前的行為模式,然后根據(jù)該行為模式來決定當前要采取的動作,。而團隊合作則主要是通過隊伍的組建(陣形)實現(xiàn)的,。每個陣形是一組角色的集合,,不同的角色通過預定的協(xié)議來實現(xiàn)合作。本文通過對小型機器人足球比賽仿真組比賽(五對五)的對策進行研究,,提出了四步?jīng)Q策推理模型,,利用大賽組委會提供的動態(tài)鏈接庫,采用VB語言對此進行了仿真,。

  2. 足球機器人對策研究

  在足球機器人系統(tǒng)中,,足球機器人對策研究屬于決策子系統(tǒng),它的任務是根據(jù)當前球場上的比賽形勢,,作出部署,,給隊員發(fā)出指令,擔負起教練員的職責,。對于足球機器人而言,,教練員是個盲人,他不是用眼睛看到比賽場景,,反映到大腦進行形象思維,而是根據(jù)隊員在比賽場上的位置和球位置的精確數(shù)據(jù)對比賽場上的形勢進行分析,,所以更多的是依靠邏輯思維來完成推理過程,。

  這樣,決策子系統(tǒng)在制定決策時就應該參照盲人教練的思維過程展開,,嚴格地對鏈上的每一個環(huán)節(jié)進行抽象推理,,從而實現(xiàn)專家知識與決策過程的形式化。本文在此基礎上提出了四步?jīng)Q策推理模型如圖1所示,。

四步?jīng)Q策推理模型

  2.1 輸入信息預處理

  為了對比賽場上的形勢進行分析處理,,以便采用合適的策略和動作,需要把從視覺系統(tǒng)得到的數(shù)據(jù)進行模糊化與抽象化,。此模塊包括以下幾個部分:

  (1)區(qū)域劃分:因為球是比賽場上的核心,,它所處的位置影響到?jīng)Q策的結(jié)果,為此將球場分成如圖2所示六個區(qū)域:

  (2)判斷控球者:判斷哪方或哪名隊員控球,,以便采取合適的策略;本文采用最短距離法,,即誰離球最近便代表誰控球。

  (3)計算實體距離:包括球與球員之間的距離,,兩球員之間的距離,。

  (4)區(qū)域檢測:判斷該區(qū)域己方隊員的個數(shù)及對方隊員的個數(shù)。

  (5)選取傳球者:有兩種傳球方案,,① 距離最近者 ②最佳球員,。

  2.2 態(tài)勢分析與策略選擇

  對輸入信息進行預處理后,根據(jù)賽場形勢,,及時調(diào)整比賽策略,。本文編寫了三個策略:全攻全守,、自由人戰(zhàn)術(shù)、人盯人策略,。

  (1)全攻全守:一種積極的作戰(zhàn)方法,。球在前場時全隊壓上(除守門員外),有主攻與協(xié)攻隊員,,中場負責搶球傳球;球在后場時全隊撤回進行防御,。

  (2)自由人戰(zhàn)術(shù):偏向于防守。安排自由人全攻全守,,其他隊員各自負責一區(qū)域,。

  (3)人盯人策略:進攻為全攻策略,防守時不只圍球轉(zhuǎn),,而是強調(diào)盯人和卡位,。

  本文通過平均累計性能最優(yōu)算法進行調(diào)用。平均累計性能最優(yōu)算法是給每個策略設置性能指標初值,,每次調(diào)用性能指標最優(yōu)的策略;當調(diào)用此策略獲得不良效果(如失分,,失球等),則性能指標減一,,反之,,獲得佳績(如得分,有效控球等),,則加一[3],。

  2.3 隊形確定與角色分配

  在確定好策略以后,為了使足球機器人在比賽中相互配合,、協(xié)調(diào)作戰(zhàn),,更好的完成各自的任務而不至于出現(xiàn)沖突,需要給每個機器人分配不同的角色,。本文根據(jù)球位置及球員位置進行角色分配,。

  確定好機器人角色后,就要對機器人的動作進行設計和安排,,根據(jù)動作函數(shù)調(diào)用關系及復雜程度把動作分為三層:基本動作,,技術(shù)動作,戰(zhàn)術(shù)動作,。

  (1)基本動作:

 ?、俚蕉c ②轉(zhuǎn)角 ③沿指定方向移動

  (2)技術(shù)動作:

  ①射門 ②攔截 ③守門 ④傳球 ⑤控球

  (3)戰(zhàn)術(shù)動作:

 ?、僖粋饕簧?②二過一 ③交叉掩護

  3. 足球機器人仿真

  通過模擬足球機器人系統(tǒng),,可促進對人工智能和機器人學的研究和比賽經(jīng)驗的積累,產(chǎn)生新的控制方案和新的對策。VB是面向?qū)ο蟮木幊陶Z言,,編程簡單,、界面友好,深受編程人員青睞,。本文采用VB語言進行仿真,,通過調(diào)用VB接口函數(shù)(大賽組委會提供的動態(tài)鏈接庫)編寫AI程序。

  3.1 VB接口說明

  大賽組委會提供的動態(tài)鏈接接口包含在Cclient.bas模塊,,主要有以下函數(shù),。

  (1)GetStart:打開和服務器的連接。

  (2)GetInformation:從服務器端得到作戰(zhàn)的信息,。

  (3)RunTo:移動指令,。

  (4)KickToTarget:向固定點踢球。

  (5)KickToDirect:向固定方向踢球,。

  (6)NoKick:清空球員的預置動作,。

  (7)GamePause:暫時停止服務器操作。

  (8)GameResume:使服務器重新運行,。

  (9)GameState:顯示比賽狀況,。

  (10)CleanUp:結(jié)束與DDL的通訊。

  3.2 設計步驟[1][2]

  (1) 編寫輸入信息預處理模塊

  (2) 編寫動作庫模塊:其中要用到輸入信息預處理,。

  (3) 編寫策略庫模塊:根據(jù)球場情況給每個隊員分配角色和動作,。

  (4) 編寫主模塊:分析比賽狀況與球場狀況,利用平均累計性能最優(yōu)算法調(diào)用策略庫,。

  3.3 程序設計框架

  采用大賽組委會提供的動態(tài)鏈接接口,我們可以編制自己的AI程序,,每個AI程序的基本框架如下:

 

  3.4 設計舉例

  本文對全攻全守策略算法進行舉例,,說明如何調(diào)用策略和編寫程序的,算法流程圖如圖3所示:

全攻全守策略算法流程

圖3 全攻全守策略算法流程

  4. 結(jié)束語

  本文著重對機器人足球比賽的對策進行研究,,提出了四步?jīng)Q策推理模型,,并采用VB高級編程語言進行了仿真實現(xiàn)。決策推理模型要對實時變化的球場狀況進行分析處理,,編寫對策,,此種模型有其自身的優(yōu)點,簡單,、快速,。還有其他一些模型,如引力斥力模型,、神經(jīng)網(wǎng)絡模型,、生物進化模型等,當然這些模型的實現(xiàn)有一定的復雜性。



 

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。