(西安體育學(xué)院,西安,710068)
基于分布式網(wǎng)絡(luò)的足球仿真平臺(tái)設(shè)計(jì)
黑曉虎
(西安體育學(xué)院,西安,710068)
本課題將分布式網(wǎng)絡(luò)技術(shù)和機(jī)器人足球比賽有機(jī)結(jié)合在一起,采用模塊化思想,設(shè)計(jì)了一種基于分布式網(wǎng)絡(luò)的足球仿真系統(tǒng)。該系統(tǒng)通過(guò)仿真接口將仿真平臺(tái)與機(jī)器人系統(tǒng)有機(jī)結(jié)合,最終構(gòu)建了運(yùn)動(dòng)仿真、智能裁判、自動(dòng)歸位、策略及其三維顯示等幾大模型。
分布式網(wǎng)絡(luò);機(jī)器人;足球仿真系統(tǒng)
分布式網(wǎng)絡(luò)結(jié)構(gòu)由具有多個(gè)終端節(jié)點(diǎn)機(jī)互連而成。任意一點(diǎn)的連接至少有兩條線路,即使其中一條線路產(chǎn)生故障,通訊任務(wù)也可以交由另一條線路完成。利用專用物理效應(yīng)設(shè)備和計(jì)算機(jī)等工具模擬真實(shí)的環(huán)境,在設(shè)計(jì)的系統(tǒng)模型中進(jìn)行動(dòng)態(tài)實(shí)驗(yàn)研究。系統(tǒng)仿真技術(shù)被廣泛應(yīng)用于航空、航天、交通、生態(tài)系統(tǒng)、經(jīng)濟(jì)、國(guó)防等多種領(lǐng)域,它可以應(yīng)用于科技產(chǎn)品的論證、設(shè)計(jì)、生產(chǎn)實(shí)驗(yàn)等階段。
分布式網(wǎng)絡(luò)的足球仿真平臺(tái)是由分布式模型仿真系統(tǒng)以及運(yùn)行在該仿真系統(tǒng)上的關(guān)鍵模型兩大組件構(gòu)成。
2.1 分布式網(wǎng)絡(luò)仿真系統(tǒng)
該分布式網(wǎng)絡(luò)仿真系統(tǒng)一系列API和輔助工具來(lái)協(xié)助完成模型的創(chuàng)建、模型的連接、模型的執(zhí)行工作的開展,并且還可以集成網(wǎng)絡(luò)的收發(fā)功能。該系統(tǒng)不用網(wǎng)絡(luò)消息收發(fā)、對(duì)線程和鎖的處理,只需要定義算法和接口,這種工作方式可以提高模型的開發(fā)效率。分布式仿真系統(tǒng)的構(gòu)成包括以下幾部分:
(1)仿真服務(wù)節(jié)點(diǎn)
仿真服務(wù)節(jié)點(diǎn)可以負(fù)責(zé)收集其他節(jié)點(diǎn)的數(shù)據(jù),這種工作方式可以將仿真服務(wù)集群中的所有信息共享給連入系統(tǒng)的客戶端。它還可以存儲(chǔ)管理模型,可以將模型保存、刪除,在收到計(jì)算機(jī)的任務(wù)信號(hào)時(shí)開啟執(zhí)行器。
(2)模型的開發(fā)接口
可以提供一系列函數(shù)和標(biāo)準(zhǔn)以此來(lái)開發(fā)模型,從模型開發(fā)接口SDK繼承自己的模型,以此來(lái)進(jìn)行模型的開發(fā)。
(3)模型執(zhí)行器
將模型層次關(guān)系進(jìn)行加載和分解,產(chǎn)生一組有向的基本模型圖,形成一組有向的基本模型圖,完成以上加載工作之后根據(jù)模型依賴關(guān)系,將輸入、控制接口數(shù)據(jù)接收,并依次執(zhí)行每個(gè)模型,將其結(jié)果傳輸?shù)较乱粋€(gè)節(jié)點(diǎn)的執(zhí)行器。
(4)模型組裝工具
瀏覽模型的列表,采用拖拽、連線兩種方式將模型組合起來(lái),在執(zhí)行命令的調(diào)動(dòng)下讓仿真計(jì)算節(jié)點(diǎn)調(diào)用執(zhí)行器,以此來(lái)執(zhí)行組合好的模型。
2.2 機(jī)器人足球仿真平臺(tái)的模型
運(yùn)行在仿真系統(tǒng)上的關(guān)鍵模型指的是機(jī)器人足球仿真平臺(tái)上構(gòu)建的模型,該設(shè)計(jì)對(duì)這些模型做了詳細(xì)介紹:
(1)物理仿真模型
該模型主要負(fù)責(zé)機(jī)器人環(huán)境的物理計(jì)算工作,對(duì)構(gòu)建好的機(jī)器人和球物理結(jié)構(gòu)進(jìn)行碰撞檢測(cè)、剛體動(dòng)力學(xué)仿真、位置反饋的處理。
(2)自動(dòng)裁判模型
自動(dòng)裁判模型主要負(fù)責(zé)的工作是判斷比賽過(guò)程中是否存在犯規(guī)現(xiàn)象,并將當(dāng)前比賽所處的狀態(tài)通知給其他其他模型。
(3)自動(dòng)歸位模型
當(dāng)系統(tǒng)出現(xiàn)違規(guī)現(xiàn)象時(shí),自動(dòng)歸位模型就會(huì)采取相應(yīng)的措施。在比賽出現(xiàn)違規(guī)現(xiàn)象時(shí),自動(dòng)歸位模型會(huì)依據(jù)規(guī)則處罰犯規(guī)的“運(yùn)動(dòng)員”并且還會(huì)重新設(shè)置“運(yùn)動(dòng)員”的位置,根據(jù)策略模型提供機(jī)器人的站位信息來(lái)糾正違規(guī)占位現(xiàn)象。
(4)策略模型
策略模型為參賽隊(duì)員的編程設(shè)計(jì)出相應(yīng)的接口,這些接口能夠接收物理模型、裁判模型所提供的賽場(chǎng)信息,并且該程序還設(shè)計(jì)了“運(yùn)動(dòng)員”轉(zhuǎn)角、跑定點(diǎn)、守門、射門等簡(jiǎn)單基本的足球比賽動(dòng)作。策略模型是系統(tǒng)的執(zhí)行核心,并且是具備網(wǎng)絡(luò)功能的模型。
(5)可視化模型
可視化模型接收比賽場(chǎng)地傳達(dá)來(lái)的信息,將這些信息整合并用三維重現(xiàn)顯示比賽過(guò)程,將其投影到大屏幕上,其顯示效果逼真,具有很好的欣賞價(jià)值。將物理、自動(dòng)裁判、自動(dòng)歸位模型用動(dòng)態(tài)鏈接庫(kù)(DLL)的形式呈現(xiàn)出來(lái),并上傳到仿真服務(wù)節(jié)點(diǎn),將上傳上來(lái)的信息用執(zhí)行器組件加載后相應(yīng)的模型才能被執(zhí)行;策略模型和可視化模型這種可執(zhí)行程序(EXE)形式模型可以直接在本地執(zhí)行,并通過(guò)網(wǎng)絡(luò)連入計(jì)算服務(wù)相應(yīng)的節(jié)點(diǎn)與其他模型協(xié)同運(yùn)行。
采用統(tǒng)一的數(shù)據(jù)標(biāo)準(zhǔn)、結(jié)構(gòu)、協(xié)議以及數(shù)據(jù)庫(kù)來(lái)設(shè)計(jì)構(gòu)建分布式仿真模型,利用廣域網(wǎng)或者是局域網(wǎng)連接各個(gè)仿真計(jì)算節(jié)點(diǎn),各節(jié)點(diǎn)通信互通。計(jì)算機(jī)網(wǎng)絡(luò)可以將分散在不同地域的仿真計(jì)算節(jié)點(diǎn)連接起來(lái),使相對(duì)獨(dú)立的各類節(jié)點(diǎn)互聯(lián)以此來(lái)構(gòu)成一個(gè)規(guī)模大、參與者多的綜合虛擬環(huán)境。該課題詳細(xì)論述了系統(tǒng)自動(dòng)裁判及自動(dòng)歸位模型的設(shè)計(jì):
3.1 自動(dòng)裁判的模型設(shè)計(jì)
該系統(tǒng)的所仿真的比賽速度比正常比賽要快很多,用人工裁判無(wú)法準(zhǔn)確快速的裁判比賽結(jié)果。自動(dòng)裁判模型的設(shè)計(jì)滿足了以上系統(tǒng)要求,該系統(tǒng)是根據(jù)機(jī)器人的位置進(jìn)行智能化裁判。該模型可以對(duì)足球比賽進(jìn)行進(jìn)行態(tài)勢(shì)評(píng)估,得到比賽評(píng)估結(jié)果,根據(jù)比賽規(guī)以及場(chǎng)地的現(xiàn)場(chǎng)狀況進(jìn)行判罰。
(1)比賽態(tài)勢(shì)評(píng)估模塊
足球比賽雙方各有11名隊(duì)員,比賽分上下兩場(chǎng)個(gè)為5分鐘,將球射入對(duì)方球門次數(shù)多者得勝。在比賽過(guò)程中要進(jìn)行比賽態(tài)勢(shì)分析,結(jié)合球的位置、方向、比賽當(dāng)前比分、比賽剩余時(shí)間、控球率五個(gè)方面進(jìn)行綜合分析。態(tài)勢(shì)分析模塊會(huì)將大量密集、散亂的信息進(jìn)行預(yù)處理,從這些信息中提出影響比賽勝負(fù)或扭轉(zhuǎn)局勢(shì)的相關(guān)信息,該模塊的信息可以給智能決策模塊提供相應(yīng)的輔助決策信息。
假設(shè)某一隊(duì)賽場(chǎng)形勢(shì)為FS{優(yōu)勢(shì),劣勢(shì)}、比賽剩余時(shí)間為TS{比賽初始,比賽中間,比賽末尾} 、當(dāng)前兩隊(duì)比分狀況為SC {比分領(lǐng)先,比分持平,比分落后}、某一隊(duì)的控球率為BR{我方控球,對(duì)方控球}、當(dāng)前球的位置為BP{近,中間,遠(yuǎn)}、當(dāng)前球的方向?yàn)锽D{準(zhǔn),較準(zhǔn),不準(zhǔn)}、雙方機(jī)器人位置RR{近,中間,遠(yuǎn)},各態(tài)勢(shì)元素的拓?fù)浣Y(jié)構(gòu)如圖1所示:
圖1 態(tài)勢(shì)元素拓?fù)浣Y(jié)構(gòu)圖
3.2 自動(dòng)歸位的模型設(shè)計(jì)
自動(dòng)裁判模型給出相應(yīng)的裁判結(jié)果,自動(dòng)歸位模型將機(jī)器人移至規(guī)定的位置中。機(jī)器人歸位方式有以下兩種:(1)平臺(tái)默認(rèn)的位置(2)隊(duì)員制定相應(yīng)的策略指定機(jī)器人對(duì)應(yīng)的位置。
第二種歸位方式可能不符合比賽規(guī)則。系統(tǒng)設(shè)計(jì)時(shí)首先檢測(cè)歸位位置是否符合比賽規(guī)則。歸位不符合規(guī)則時(shí)要對(duì)其位置進(jìn)行矯正,再歸位機(jī)器人。自動(dòng)歸位的步驟如下所示:
(1)關(guān)閉物理引擎,獲取各個(gè)球的位置和當(dāng)前定位球狀態(tài)。
(2)讀取機(jī)器人的位置坐標(biāo)。
(3)檢測(cè)機(jī)器人歸位是否符合規(guī)則。
(4)查找符合比賽規(guī)則且與機(jī)器人當(dāng)前位置最近的坐標(biāo)。
(5)校正機(jī)器人的位置。
對(duì)該系統(tǒng)的各個(gè)模型進(jìn)行詳細(xì)設(shè)計(jì),完善系統(tǒng),并將設(shè)計(jì)好的系統(tǒng)進(jìn)行測(cè)試,確認(rèn)無(wú)誤后即可投入使用。
該課題將分布式網(wǎng)絡(luò)技術(shù)和機(jī)器人足球比賽有機(jī)結(jié)合在一起,設(shè)計(jì)了一種基于分布式網(wǎng)絡(luò)的足球仿真系統(tǒng)。該系統(tǒng)具有很好的應(yīng)用價(jià)值。
[1] 李迅.機(jī)器人足球分布式仿真平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[D].武漢工程大學(xué),2012.
[2] 張冰,陳萬(wàn)米,梁亮,魏延欽.基于OpenGL的小型組機(jī)器人足球仿真平臺(tái)設(shè)計(jì)[J].系統(tǒng)仿真學(xué)報(bào),2008,03:724-728.
黑曉虎,男,1978年3月出生,陜西西安人,講師,研究方向:足球教學(xué)訓(xùn)練與科研
Soccer simulation platform based on the distributed network design
Hei Xiaohu
(Xi'an PHYSICAL EDUCATION university,Xi'an,710068)
This paper will be distributed network technology and organic combination of robot soccer, modular thinking,design soccer simulation system based on a distributed network.The system interface through simulation and robotics systems simulation platform combine eventually build motion simulation, intelligent referee,automatic homing strategy and its three-dimensional display and other major models.
distributed network;robot;soccer simulation system