robocode_Robocode策略
這篇技巧文章發(fā)表在2002年5月的IBM developerWorks期刊的“披風(fēng)和炮塔:向Robocode大師學(xué)習(xí)秘密”一文中。
角斗聯(lián)盟
當(dāng)我發(fā)現(xiàn)Robocode時(shí),沒(méi)有定期的比賽表明哪種機(jī)器人是最好的。 隨著新版本機(jī)器人的發(fā)布,任何存在的比賽都很快過(guò)時(shí)了。 我為開(kāi)發(fā)自己的機(jī)器人所做的測(cè)試比任何公開(kāi)的競(jìng)爭(zhēng)數(shù)據(jù)都更加完整和最新。 然后,克里斯蒂安·施奈爾(Christian Schnell)發(fā)布了RoboLeague,從而使比賽自動(dòng)化,而我開(kāi)始進(jìn)行自己的基于聯(lián)賽的比賽。 在測(cè)試自己的機(jī)器人時(shí),我下載了50多個(gè)其他人已上傳到Robocode存儲(chǔ)庫(kù)的機(jī)器人。 我將這些機(jī)器人分為10個(gè)師。接下來(lái),我以Gladiator風(fēng)格為每個(gè)師進(jìn)行了100回合的戰(zhàn)斗。 每個(gè)部門(mén)的前兩個(gè)機(jī)器人將在下個(gè)賽季升級(jí)和降級(jí)。 將生成HTML結(jié)果上傳到一個(gè)簡(jiǎn)單的網(wǎng)站很容易,在這個(gè)網(wǎng)站上,不斷增長(zhǎng)的Robocode社區(qū)可以看到他們的機(jī)器人與那里的許多其他機(jī)器人相比。 因此, 角斗聯(lián)盟誕生了。
基于聯(lián)盟的格式具有兩個(gè)積極的特點(diǎn)。 首先,這是一種使用大量具有相對(duì)較少數(shù)量的機(jī)器人的比賽進(jìn)行比賽的方法,因?yàn)檫\(yùn)行這些機(jī)器人可能很耗時(shí)。 其次,具有類(lèi)似標(biāo)準(zhǔn)的機(jī)器人最終可以處于同一個(gè)聯(lián)盟中。 因此,剛起步的機(jī)器人創(chuàng)造者可以與類(lèi)似的標(biāo)準(zhǔn)機(jī)器人競(jìng)爭(zhēng),并且競(jìng)爭(zhēng)激烈,而不是被比其早期創(chuàng)造更進(jìn)化的機(jī)器人所殺。
運(yùn)動(dòng)策略
以下是移動(dòng)策略的級(jí)別:
射擊
以下是定位級(jí)別:
收集信息
以下是掃描級(jí)別:
在更先進(jìn)的機(jī)器人中,可以為戰(zhàn)場(chǎng)上其他機(jī)器人收集的數(shù)據(jù)對(duì)于制定復(fù)雜的移動(dòng)和射擊策略至關(guān)重要。 以下列出了可以從其他機(jī)器人獲得的一些數(shù)據(jù):
- 位置
- 標(biāo)題
- 速度
- 角速度
- 能源
- 您對(duì)它們?cè)斐闪硕啻蟮膫?可用于比較戰(zhàn)場(chǎng)上的其他機(jī)器人,并瞄準(zhǔn)您似乎最容易(最多或最少)命中的機(jī)器人
- 他們對(duì)你造成了多少損失
- 他們死了多少次
- 當(dāng)他們發(fā)射子彈時(shí)(使用能量差的微妙技術(shù))
這份策略清單絕不是完整的。 角斗士聯(lián)賽中的頂級(jí)機(jī)器人在某種程度上使用了上述大多數(shù)策略。 但是,時(shí)不時(shí)有人提出新概念或簡(jiǎn)單策略,迫使其他所有機(jī)器人提出反策略。 即使是最簡(jiǎn)單的想法也可以非常成功。
翻譯自: https://www.ibm.com/developerworks/java/library/j-tipstrats/index.html
總結(jié)
以上是生活随笔為你收集整理的robocode_Robocode策略的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java空心正方形代码_从Java中的用
- 下一篇: AD16 SCH原理图打开正常,PCB图