第1回模擬戦
2004/12/14
ルール
- バトルフィールドは800x600
- 3回戦(総当り方式)
- 戦闘を生き残ったロボットを勝ちとする(スコアは問わない)
- 勝利数の総和で優劣を決定する
- 欠席者は性能評価のため戦闘は行うが、戦闘結果に関わらず「不戦敗」とする
結果
開発者 |
浅野 |
小田 |
高橋 |
土屋 |
中田 |
nt01 |
勝利数 |
コメント |
浅野
J01301_1 |
\ |
×○× |
××× |
××× |
不戦勝
(×××) |
××× |
1+3(不戦勝) |
crazy改良形 |
小田
J01310_6 |
○×○ |
\ |
○○○ |
○○○ |
不戦勝
(×××) |
××× |
8+3(不戦勝) |
オリジナル機
攻撃回避アルゴリズム搭載、線形予測アルゴリズム搭載 |
高橋
J01325_03 |
○○○ |
××× |
\ |
××× |
不戦勝
(○○○) |
××× |
3+3(不戦勝) |
直線移動形
フィールド内を縦横無尽に移動? |
土屋
J01328_01 |
○○○ |
××× |
○○○ |
\ |
不戦勝
(×○△) |
××× |
6+3(不戦勝) |
ramfire改良形 |
中田
J00335_1 |
不戦敗
(○○○) |
不戦敗
(○○○) |
不戦敗
(×××) |
不戦敗
(○×△) |
\ |
不戦敗
(×××) |
0(不戦敗) |
spinbot |
飛び入り
nt01 |
○○○ |
○○○ |
○○○ |
○○○ |
不戦勝
(○○○) |
\ |
12+3(不戦勝) |
攻撃回避アルゴリズム搭載
線形予測アルゴリズム、円軌道予測アルゴリズム搭載 |
開発者によるコメントは、各サイトの第7回定期報告にがあります。 |
浅野 |
小田 |
高橋 |
土屋 |
戦い終えて
それぞれに工夫を凝らしたロボットでした。
nt01の参戦は想定外だったらしいが、小田機が善戦しました。nt01,小田機はそれぞれが独自に開発した機体でしたが、アルゴリズムは似たものになりました。
- 浅野機-蝶のように舞い蜂のように刺す!!
- razyを模した不規則な動きで予測することは難しく、蝶のように舞うようですが、壁に衝突することで自らエネルギーを失う点が問題です。
- 蜂のように刺すように、動きのある相手に対して正確な攻撃を検討する必要があります。
- 小田機-ロボコードは逃げて勝つべし!!
- 攻撃を回避することを目標にした機体でかなりの攻撃を回避しました。
- 対高橋戦では、線形予測アルゴリズムの効果を証明しました。
- 対中田戦では、円軌道予測が未搭載であったため、spinbot系の中田機には不利でした。
- 高橋機-安定性があるロボット
- フィールド内を縦横だけでなく斜めに移動するため、単純な攻撃アルゴリズムを採用した浅野機や中田機には有効でした。
- 対小田戦では、線形予測アルゴリズムを搭載した小田機には完全に動きを読まれてしまい、小田機が撃った弾に「自ら当たりに行く」ことになります。
- 対土屋戦では、移動しつづけているためramfire形に追いつかれることがないと思ったのですが、なぜか、土屋機と壁にはさまれて身動きが取れなくなりました。
- 土屋機-神風特攻!
- ramfireを改良。敵機に接近し、回避できない距離から攻撃をする。たしかに神風特攻!
かなり手ごわい相手だと思います。接近されると相当に厄介です。「近づく前に落とす」しか方法はないと思います。
- 対中田戦では、土屋・中田双方1発も撃たず、エネルギーを保ったまま時間切れになるという珍事がおきました。このため、引き分け△がついています。
- 対浅野戦では、浅野機が壁に激突してエネルギーを失い動けなくなった後、土屋機が攻撃をするというパターンで3勝しています。土屋機の攻撃アルゴリズムの勝利ではなく、「相手の不備で勝てた。」というところでしょうか。
- 対小田戦では、小田機が「接近する前に撃つ」「接触したら離れる」を繰り返して土屋機を撃退しました。
- 対高橋戦では、壁際で高橋機が進路変更のため回転している間に土屋機が接近、高橋機は壁と土屋機に挟まれるという「狙いどおり」の攻撃ができました。
- 中田機-弾を高命中にしてたまに相手の攻撃を回避してたおされる前にたおす
- 欠席のため不戦敗
- 機体評価の結果、動きはSpinBotそのもの。フィールド中央を中心点とするよう初期移動がある。
- 敵機が移動することを考慮として弾の発射角度を左右に調整している。
- 予測アルゴリズムは搭載していないので、弾を高命中にしては実現していない。
そもそも、命中率が高ければ、相手の攻撃を回避する必要はないのではないか?という疑問にどう答えるのか?
- SpinBotの動きにより敵機の攻撃を回避している。
今回の模擬戦では円軌道を予測するロボットがなかったので、たまたま勝つことができた。円軌道予測アルゴリズムを搭載したロボット(AntiSpinBot他)には勝てない。
DOWNLOAD
以下のロボット(classファイル)を公開します。
- 線形予測アルゴリズム搭載機(NT_Fire.class)
Sample.Wall等直線運動をするロボットを迎撃します。
「命中率が高ければ攻撃を回避する必要はないのでは?」という疑問に対する答えです。
~/robocode/robots/nt/NT_fire.classとして保存してください。
- 円軌道予測アルゴリズム搭載機(AntiSpinBot.class)
Sample.SpinBot等円運動をするロボットを迎撃します。
最初に右上角へ移動を試みます。 以降、敵機の迎撃に専念するため、全く移動ません。
~/robocode/robots/nt/AntiSpinBot.classとして保存してください。
- 攻撃回避アルゴリズム搭載機
被弾しないよう攻撃を回避するロボットです。近日公開予定
学生のロボット