freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

機器人足球?qū)嶒瀳蟾?已修改)

2025-05-26 00:39 本頁面
 

【正文】 1. 課程設(shè)計分析 1.1 課題要求(1)了解5Vs5機器人足球仿真比賽平臺及其策略。(2)在C語言編程環(huán)境下,完成策略的編寫和調(diào)試。(3)運用所寫的程序進行足球機器人比賽,并在比賽中完善所寫的策略。1.2 編寫目的通過對機器人足球仿真這一課程設(shè)計的了解,設(shè)計,編寫和調(diào)試,實現(xiàn)足球策略在機器人上的優(yōu)化應(yīng)用,使己方機器人仿真足球隊在比賽中獲勝。最終達到能熟練運用C語言程序設(shè)計知識解決實際問題,實現(xiàn)具體目標的目的,并初步掌握工程化項目化軟件開發(fā)的方法及過程。1.3 背景機器人足球如今已為越來越多的人所關(guān)注。其國際認可的比賽按機器人可分為三大類:大中型機器人足球?qū)嵨锝M比賽,微型機器人足球?qū)嵨锝M比賽,機器人足球仿真組比賽;按數(shù)量分可分為:3vs3,5vs5,11vs11等。機器人足球仿真5vs5組比賽是在國際認可的同一平臺The Robot Soccer Simulator Director ,從而實現(xiàn)比賽的目的。而其策略是基于Visual C++編寫的,只要掌握了C語言課程設(shè)計的知識就可以實現(xiàn)策略的編寫。 2.用戶手冊 2.1運行環(huán)境要求? Pentium III 600 MHz ? 256 megabytes of ram ? TNT2 3d Graphics accelerator with 32 megabytes of ram ? 24x CDROM ? Screen resolution of 800 x 600 ? 16 bit Sound card ? Microsoft Windows 98 ? Direct X ? 10 megabytes of free hard drive space ? Director ? Visual C++ 2.2使用方法? 將包含源代碼的工程文件用Visual C++ ,編譯(快捷鍵F7),鏈接生成動態(tài)鏈接庫。 ? 把生成的動態(tài)鏈接庫文件復(fù)制到C:\Stratege\blue目錄下。并更具需要更換文件名稱。 ? 打開5Vs5平臺程序,將文件名稱輸入到STRATEGIES目錄下的Blue欄中,再用鼠標單擊Lingo把鏈接狀態(tài)更改為C++,然后在點擊Send選項。鏈接文件過程完成。 ? 在右側(cè)的工具欄中,點擊STARE,開始比賽。 ? 如需進一步了解該軟件的用法,單擊右下角HELP選項。 2.3注意事項? 本文中所提供的策略程序,只能在藍隊(右隊)中使用。 3.1程序預(yù)期功能實現(xiàn)進攻防守兩大功能的合理靈活的切換;通過實現(xiàn)快速反應(yīng),精確定點定向移動,路線優(yōu)化設(shè)計等方法實現(xiàn)高效進攻和防守。 3.2功能模塊的劃分4. 詳細設(shè)計及算法 4.1進攻的詳細設(shè)計及算法(1)當球在對方半場時為進攻模式1 主攻1:當球接近對方禁區(qū)時,在對方球門罰球區(qū)守侯,伺機射門;否則輔助助攻球員進攻。主攻2:當球接近對方禁區(qū)時,在對方球門大禁區(qū)一側(cè)守侯,伺機射門;否則輔助助攻球員進攻,控球。助攻1:控球,將球帶進對方禁區(qū),輔助主攻機器人進攻。助攻2:在助攻1機器人后方適當位置定點,隨時接應(yīng)助攻1機器人。守門員:調(diào)整位置到初始位置 (2)當球在我方半場且不由對方控球時為進攻模式2 主攻1:控球,將球帶進對方禁區(qū),輔助主攻機器人進攻。主攻2:在助攻1機器人后方適當位置定點,隨時接應(yīng)助攻1機器人。助攻:準備進入對方半場并尋找有利攻擊位置。 防守:定位到球與我方球門之間的適當位置,隨時準備截球。 (3)另外一套進攻方案: 每個機器人都作為一個獨立的實體,分別進行判斷: 機器人1:當球在對方半場大禁區(qū)線外時,追球;當球在對方半場大禁區(qū)線內(nèi)上方時,留守下方,準備接反彈出來的球;當球在對方半場大禁區(qū)線內(nèi)下方時,留守中間,伺機射門。機器人2:當球在對方半場大禁區(qū)上下方時,將球傳向門前;當球在對方大禁區(qū)和中場線之間時,控球,將球帶向球門。機器人3:。始終追球機器人4:當球在對方半場大禁區(qū)線外時,追球;當球在對方半場大禁區(qū)線內(nèi)上方時,留守中間,伺機射門;當球在對方半場大禁區(qū)線內(nèi)下方時,留守上方,準備接反彈出來的球。4.2防守的詳細設(shè)計及算法當球在我方半場且對方控球時為防守模式 主防:定位到球前方截球,使球向?qū)Ψ桨雸鲆苿印?助防:定位到球與球門之間的適當位置截球,協(xié)助主防和守門員。 后衛(wèi)1:定位到球門前適當位置做好截球接應(yīng)準備。后衛(wèi)2:定位到球門前適當位置做好截球接應(yīng)準備。守門員:開始就自行運動到如圖所示位置,這樣可借助球門柱防止守門員因慣性偏離球門,可大大提高其運動速度,并可減少與其他隊員的碰撞。不足之處在于因碰撞而姿態(tài)變化后調(diào)整空間較小。 (1)當球在圖中所示陰影內(nèi)時,守門員的Y坐標盡量與球保持一致,當球坐標在球門范圍外時,守門員保持在離球最近位置侯球。(2)當球在圖中所示陰影內(nèi)時,守門員進入積極防守狀態(tài)。 積極防守狀態(tài)按球的方向和位置不同分四種狀態(tài): (1)球的運動方向指向球門,此時守門員應(yīng)位于球的運動方向上,阻截球的運動。(2)球的運動方向背離球門。此時守門員應(yīng)位于球與兩門柱連線夾角的角平分線方向上,為下一次截球作準備。(3)在圖示情況下,守門員的Y坐標盡量與球保持一致,當球坐標在球門范圍外時保持 ,球門內(nèi)時運動。(4)當球在如圖虛線內(nèi)運動時,守門員與球相反運動,以把球撞出. 4.3數(shù)據(jù)結(jié)構(gòu)機器人球員的數(shù)據(jù) (Vector3D pos表示機器人的三維坐標; rotation表示機器人的方向; velocityLeft表示機器人的左輪速度, velocityRight表示機器人的右輪速度;) typedef struct { Vector3D pos。 double rotation。 double velocityLeft, velocityRight。 } Robot。 對方機器人 (成員意義同上) typedef struct { Vector3D pos。 double rotation。 } OpponentRobot。 總的環(huán)境參量結(jié)構(gòu) (home[PLAYERS_PER_SIDE]表示我方幾號機器人;opponent[PLAYERS_PER_SIDE]表示對方幾號機器人;currentBall表示當前球的位置,lastBall表示上個周期球的位置,predictedBall表示下個周期球的位置,用來預(yù)測球下個周期位置;fieldBounds表示場地邊界坐標,goalBounds表示球門邊線坐標;gameState表示比賽狀態(tài), whosBall表示球的掌控狀態(tài), *userData預(yù)留給用戶的數(shù)據(jù)指針) typedef struct { Robot home[PLAYERS_PER_SIDE]。 OpponentRobot opponent[PLAYERS_PER_SIDE]。 Ball currentBall, lastBall, predictedBall。 Bounds fieldBounds, goalBounds。 long gameState。 long whosBall。 void *userData。 } Environment。 4.4程序流程 4.5函數(shù)說明基本動作 void PredictBall ( Environment *env )。 預(yù)測球的位置,單步預(yù)測,運用微量調(diào)節(jié)。入口參數(shù):環(huán)境參量。void Velocity ( Robot *robot, double vl, double vr )。 將響應(yīng)產(chǎn)生的機器人速度寫入系統(tǒng)參量中,即引發(fā)機器人運動。入口參數(shù):機器人指針,左輪速度,右輪速度。void Angle1(Robot *robot,int desired_angle)。 使機器人轉(zhuǎn)到預(yù)定角度。入口參數(shù):機器人指針,預(yù)定角度。void AngleOfPosition(Robot *robot,double x, double y)。 使機器人轉(zhuǎn)某一角度,指向特定點。入口參數(shù):機器人指針,特定點橫坐標,特定點縱坐標。以下函數(shù)有方向性,基于以上的基本動作void NormalGame_Right( Environment *env )。 右隊總策略。入口參數(shù):環(huán)境參量。void Defender_Right(Environment *env)。 void Defend1_Right(Environment *env)。 void Defend2_Right(Environment *env)。 void Defend_Right_py(Environment *env)。 右隊防守策略。入口參數(shù):球員指針,環(huán)境參量。void Defence1_Right(Robot *robot,Environment *env)。右隊防守策略。入口參數(shù):球員指針,環(huán)境參量。 void GoalKeeper_In_Right(Robot *robot,Environment *env)。 右隊守門員策略。入口參數(shù):球員指針,環(huán)境參量。新加入的策略 void Kick( Environment *env, Robot *robot, double aim_angle )。 基本動作,繞到球后方,帶球運動到對方球場。入口參數(shù):環(huán)境參量,球員指針,目標角度。void Position1_cz( Robot *robot, double x, double y )。 移動到預(yù)定點,這是整個程序最重要的底層函數(shù)基礎(chǔ)。入口參數(shù):球員指針,預(yù)定點橫坐標,預(yù)定點縱坐標。void Position_py(Robot *robot, double x, double y)。 移動到預(yù)定點,無速度衰減。入口參數(shù):球員指針,
點擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1