999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Robocode的智能機(jī)器人的設(shè)計(jì)與實(shí)現(xiàn)

2016-05-19 11:12:13羅慶佳
電腦知識(shí)與技術(shù) 2016年8期
關(guān)鍵詞:人工智能

羅慶佳

摘要:該文是基于IBM公司開發(fā)的Robocode的JAVA機(jī)器人仿真引擎,分析并探索基于此平臺(tái)的智能機(jī)器人方案。在子彈跟蹤,反重力運(yùn)動(dòng),以及模式匹配瞄準(zhǔn)等人工計(jì)算智能技術(shù)的基礎(chǔ)上,比較并改進(jìn)策略,然后以onedan1.0機(jī)器人為例完成一個(gè)可行的智能方案,并編程實(shí)現(xiàn)部分機(jī)器人代碼。最后還做了效果測(cè)試。

關(guān)鍵詞:人工智能;機(jī)器人仿真引擎;智能算法;Robocode

中圖分類號(hào):TP18 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)08-0160-02

1 概述

本文先對(duì)IBM公司研制開發(fā)的Robocode智能機(jī)器人仿真平臺(tái)進(jìn)行系統(tǒng)介紹。然后結(jié)合人工智能的應(yīng)用領(lǐng)域,對(duì)過去和現(xiàn)在流行的機(jī)器人智能算法進(jìn)行總結(jié),比較其優(yōu)劣。最后結(jié)合自己的理解,對(duì)如何提高機(jī)器人智能化水平進(jìn)行探討,以O(shè)nedan1.0機(jī)器人為例,選擇其中的一些算法用java語言進(jìn)行實(shí)現(xiàn)。

本文對(duì)于智能機(jī)器人的應(yīng)用研究領(lǐng)域,比賽機(jī)器人應(yīng)用領(lǐng)域,特別是在射擊類戰(zhàn)略類游戲編程領(lǐng)域有一定的價(jià)值。

2 Robocode系統(tǒng)簡(jiǎn)介

Robocode編程平臺(tái)簡(jiǎn)介:Robocode 是由IBM公司開發(fā)的一套虛擬機(jī)器人仿真引擎。其中包括機(jī)器人運(yùn)行平臺(tái)Robocode,代碼編輯器Robot Editor等組件。程序員可以在Robocode中創(chuàng)建自己的機(jī)器人,利用系統(tǒng)提供的編程接口以編程的方式對(duì)機(jī)器人進(jìn)行控制。簡(jiǎn)單的說,Robocode就是一個(gè)用java語言編寫機(jī)器人的工具,同時(shí)也是機(jī)器人比賽的場(chǎng)地和實(shí)現(xiàn)機(jī)器人智能算法思想的良好平臺(tái)。

3 onedan1.0的瞄準(zhǔn)策略

3.1 常見瞄準(zhǔn)策略比較分析

一個(gè)好的機(jī)器人除了良好的移動(dòng)策略外,另一個(gè)不可缺少的特征就是打擊移動(dòng)目標(biāo)的能力,并且能達(dá)到精確的效果。下面我就對(duì)各種瞄準(zhǔn)策略做一個(gè)系統(tǒng)的分析。

3.1.1 單一瞄準(zhǔn)

單一瞄準(zhǔn)是那些專門為某一種運(yùn)動(dòng)方式而設(shè)計(jì)的瞄準(zhǔn)算法。大致分為以下幾種:1)向當(dāng)前目標(biāo)的位置開火:是一個(gè)最簡(jiǎn)單也是效果最差的瞄準(zhǔn)算法,只要目標(biāo)稍微移動(dòng)都將導(dǎo)致子彈打偏。2)線性預(yù)測(cè)瞄準(zhǔn):向目標(biāo)將去的地方開火,前提是目標(biāo)以一定速率沿著直線前進(jìn)。尤其是當(dāng)目標(biāo)離自己很近時(shí),這個(gè)算法相當(dāng)?shù)挠行?。在短時(shí)間內(nèi)機(jī)器人的所有運(yùn)動(dòng)都可近似為直線運(yùn)動(dòng)。不過,這種算法對(duì)于鐘擺運(yùn)動(dòng),隨機(jī)很強(qiáng)的運(yùn)動(dòng)以及一些高級(jí)移動(dòng)算法幾乎無能為力。

3.2 onedan1.0的瞄準(zhǔn)策略(模式識(shí)別)

模式是指對(duì)象的表示形式,也可以叫做樣本。在Robocode中通常是指機(jī)器人的狀態(tài)屬性,比如說坐標(biāo),方向,速度等。要進(jìn)行模式匹配,首先得記錄模式,也就是記錄機(jī)器人的狀態(tài)。在進(jìn)行匹配判斷的時(shí)候把當(dāng)前的狀態(tài)和記錄下來的狀態(tài)進(jìn)行比較,找出記錄中非常相似的一段狀態(tài),則認(rèn)為目前的狀態(tài)和那段狀態(tài)相匹配。

但是對(duì)于onedan1.0機(jī)器人,我嘗試使用模式識(shí)別技術(shù)。模式識(shí)別是嘗試指出敵方機(jī)器人是否在使用任何一種預(yù)定義的模式的過程,然后基于假定它將繼續(xù)使用那個(gè)模式來瞄準(zhǔn)敵人。但是需要注意的是,這個(gè)技術(shù)不同于能適應(yīng)目標(biāo)使用任何重復(fù)模式的模式分析。

3.3 模式識(shí)別瞄準(zhǔn)的智能改進(jìn)

模式識(shí)別瞄準(zhǔn)的識(shí)別能力應(yīng)該可以通過以下的幾方面得到改進(jìn):

1)更多的模式:這是最顯然的擴(kuò)充。增加更多的復(fù)雜的基于速度的模式。

2)分析朝向的變化:能在速度識(shí)別時(shí)分析朝向的變化。這個(gè)分析要比速度模式分析更復(fù)雜,但花上一些努力能產(chǎn)生非常強(qiáng)大有力的瞄準(zhǔn)系統(tǒng)。

3)模式分析:比較適用一對(duì)一的比賽,它能快速地學(xué)習(xí)新的模式,但是缺點(diǎn)是對(duì)CPU有強(qiáng)烈的要求。如果實(shí)現(xiàn)了這個(gè),將擁有一個(gè)難以對(duì)付的機(jī)器人。

4 onedan1.0機(jī)器人部分代碼實(shí)現(xiàn)和測(cè)試

4.1 onedan1.0機(jī)器人的結(jié)構(gòu)

在進(jìn)行實(shí)現(xiàn)時(shí),第一個(gè)robot只寫成了一個(gè)類文件。開始時(shí),這種作法還可行,但如果試圖給robot增加更多的智能的時(shí)候,這就導(dǎo)致了難以管理的缺點(diǎn)。因此必須得做一個(gè)更好的結(jié)構(gòu)化設(shè)計(jì)。

較好的解決方法是把robot分成模塊,每一塊都可重用,并且分別管理robot行為的每一部分。為移動(dòng)、雷達(dá)、火炮和瞄準(zhǔn)控制各寫了一個(gè)類。并且把對(duì)敵人信息的跟蹤和存儲(chǔ)也寫成類。

Onedan類:該類繼承AdvansedRobot類,提供了整個(gè)機(jī)器人的大框架。

Util類:所有基本的數(shù)據(jù)表示和操作。

Enemy類:用來儲(chǔ)存敵人數(shù)據(jù)。

Radar類:雷達(dá)策略類。

Movement類:移動(dòng)策略類。

Fire類:各種開火方法,槍口調(diào)整,火力調(diào)整都不獨(dú)立出去,包括在這個(gè)類中。

接下來,編寫Onedan1.0機(jī)器人瞄準(zhǔn)模塊的代碼,由于代碼比較簡(jiǎn)短,只需要寫在了一個(gè)類文件中。

4.2 瞄準(zhǔn)模塊代碼

通過在本文之前介紹的模式匹配算法中進(jìn)行一些改進(jìn),使其還可以分析直線前進(jìn)和靜止的機(jī)器人,并根據(jù)代碼的需要做了一些調(diào)整。以下就是Onedan1.0機(jī)器人的模式匹配模塊主要函數(shù)的代碼:

4.3 onedan1.0機(jī)器人瞄準(zhǔn)模塊測(cè)試

首先,以下簡(jiǎn)單地介紹用于測(cè)試onedan1.0機(jī)器人瞄準(zhǔn)系統(tǒng)的sample機(jī)器人:

sample.Walls:是一個(gè)圍繞比賽場(chǎng)地的繞墻機(jī)器人,瞄準(zhǔn)系統(tǒng)是對(duì)原始點(diǎn)射擊的方法。

sample.Corrners:是一個(gè)在比賽開始后,自動(dòng)尋找最接近的角落,并且迅速移動(dòng)過去,在角落附近進(jìn)行鐘擺運(yùn)動(dòng)的機(jī)器人,瞄準(zhǔn)系統(tǒng)也是對(duì)原始點(diǎn)進(jìn)行射擊的方法。

由于在測(cè)試中,onedan1.0機(jī)器人是靜止不動(dòng)的,所以用于測(cè)試的兩個(gè)sample機(jī)器人對(duì)onedan1.0機(jī)器人的命中率均為100%,顯然對(duì)onedan1.0機(jī)器人不是很公平,降低了測(cè)試效果,可采取了一些平衡措施:將sample.Walls機(jī)器人的發(fā)彈速度降低到onedan1.0機(jī)器人的2/3,將sample.Corrners機(jī)器人的子彈能量降低為onedan1.0機(jī)器人的2/3。由于打飛的子彈會(huì)造成能量損失,也就是說onedan1.0機(jī)器人必須有70%以上的命中率才可能取得比賽勝利。

以下就是Onedan1.0機(jī)器人和sample.Walls機(jī)器人的一對(duì)一比賽。從結(jié)果可以看出,Onedan1.0機(jī)器人取得了九勝一負(fù)的好成績(jī)。

從結(jié)果可見,Onedan1.0機(jī)器人的瞄準(zhǔn)系統(tǒng)相當(dāng)優(yōu)秀,具有一定的智能,在和Robocode自帶的Sample機(jī)器人比賽中取得了很好的成績(jī)。

5 結(jié)束語

Java作為面對(duì)對(duì)象語言已經(jīng)被人們認(rèn)識(shí)并接受,我們不可否認(rèn)Robocode是個(gè)完美的學(xué)習(xí)、游戲平臺(tái),但它也存在自身的缺陷,本文對(duì)Robocode 在子彈跟蹤,反重力運(yùn)動(dòng),以及模式匹配瞄準(zhǔn)等人工計(jì)算智能技術(shù)的基礎(chǔ)上,比較并改進(jìn)策略,然后以onedan1.0機(jī)器人為例完成一個(gè)可行的智能方案,并編程實(shí)現(xiàn)部分機(jī)器人代碼。最后還做了效果測(cè)試。

參考文獻(xiàn):

[1] 劉玉寬.Robocode——我的樂趣[J].程序員,2003(8):53-56.

[2] 劉陽.打造自己的第一個(gè)機(jī)器人[J].程序員,2003(8):57-60.

[3] 梁曉峰.DIY實(shí)戰(zhàn)機(jī)器人[J].程序員,2003(8):61-65.

猜你喜歡
人工智能
我校新增“人工智能”本科專業(yè)
用“小AI”解決人工智能的“大”煩惱
汽車零部件(2020年3期)2020-03-27 05:30:20
當(dāng)人工智能遇見再制造
2019:人工智能
商界(2019年12期)2019-01-03 06:59:05
AI人工智能解疑答問
人工智能與就業(yè)
基于人工智能的電力系統(tǒng)自動(dòng)化控制
人工智能,來了
數(shù)讀人工智能
小康(2017年16期)2017-06-07 09:00:59
人工智能來了
主站蜘蛛池模板: 91九色视频网| 久久永久免费人妻精品| 人妻21p大胆| 国产剧情国内精品原创| 国产欧美日韩在线一区| 亚洲资源站av无码网址| 九九热视频在线免费观看| 色爽网免费视频| 1024国产在线| 国产专区综合另类日韩一区| 欧美成人日韩| 韩国v欧美v亚洲v日本v| 天堂av高清一区二区三区| 免费国产一级 片内射老| 欧美另类视频一区二区三区| 欧美全免费aaaaaa特黄在线| 色综合中文字幕| 91伊人国产| 天天综合网亚洲网站| 亚洲an第二区国产精品| 国产网站黄| 萌白酱国产一区二区| 91精品最新国内在线播放| …亚洲 欧洲 另类 春色| 一级毛片免费观看久| 亚洲成a人片77777在线播放| 国产亚洲欧美日韩在线一区二区三区| 亚洲欧洲日韩综合色天使| 又黄又湿又爽的视频| 女人18毛片一级毛片在线| 日韩一区二区三免费高清| 国产精品播放| 国产91线观看| 在线欧美日韩国产| 99ri精品视频在线观看播放| 久久人人爽人人爽人人片aV东京热 | 日本手机在线视频| 欧美一级黄色影院| 青草娱乐极品免费视频| 国产福利免费在线观看| 成人精品午夜福利在线播放| 国产在线日本| 精品视频在线观看你懂的一区| 成人综合网址| 免费在线播放毛片| 久久亚洲中文字幕精品一区| 永久免费无码成人网站| 成人精品区| 亚洲天堂区| 欧美日韩动态图| 亚洲无线国产观看| 麻豆国产在线观看一区二区| 午夜国产理论| 国产成人精品一区二区| 国产色图在线观看| 亚洲欧美日韩色图| 狠狠色婷婷丁香综合久久韩国 | 91国语视频| 2021国产精品自拍| 五月天在线网站| 精品午夜国产福利观看| 亚洲一区无码在线| 亚洲成肉网| 国产成人三级在线观看视频| 国产av一码二码三码无码| 国产福利大秀91| 在线观看热码亚洲av每日更新| 网友自拍视频精品区| 国产精品三级专区| 欧亚日韩Av| 欧洲亚洲欧美国产日本高清| 欧美日韩午夜| 欧洲高清无码在线| 国产成人久视频免费| 国内精品自在自线视频香蕉| 夜夜爽免费视频| 欧美一级高清免费a| 老熟妇喷水一区二区三区| 国产精品天干天干在线观看 | 99国产在线视频| 伊人久久久大香线蕉综合直播| 一级毛片在线直接观看|