コンテンツにスキップ

ロボカップSSLの試合で必要なロボットの動き

試合をするために必要な動作,AIで実装する必要がある動作を紹介します.

AIを開発するにあたってはこれらの動作ができるようにする必要があります.

当然,これ以外にも試合をするためにボールを蹴るパスの生成や,ロボットの速度指令値を決めるなどが必要です.

フォルト

試合中にフィールドの破損など試合続行が難しい場合にフォルトがかけられます. このとき,ロボットは停止しなければなりません.

レフェリーボックスからフォルト指令が入った場合,無線通信を停止するなどして実装します.

ストップゲーム

ゴールの後など,試合が止まっているときに必要です. また,試合開始前でも必要となります.

ボールから一定距離離れなければなりません. ストップゲーム中はどちらのチームのボールかを宣言されていないため, どちらのチームのボールであっても良いようにしておく必要があります.

キックオフ

試合開始時やゴールを決めた後に必要です.

後述のダイレクトキック,インダイレクトキックと異なり, 相手のフィールドにロボットが入ってはいけません. また,キックオフ時にパスをするのであればロボットを動かしておいてパスルートを決めるなどする必要があります.

ダイレクトキック

ボールがルール違反をするなどした場合に,ゴールを直接狙っても良いキックとなります. パスをするのか,直接ゴールを狙うのかを考える必要があります.

インダイレクトキック

ゴールを直接狙ってはいけないキックです.ボールがサイドに出たときなどのフリーキックで使用します.

ペナルティキック

ペナルティキックは守る側と攻める側で動きが当然異なります. しかし,共通する部分としては蹴るロボット, キーパー以外は所定のラインから後ろに下がっていなければなりません.

攻める側の動作は単純で,ゴールにボールを決めるためにはどうしたら良いか決定し, ボールを蹴れば良いです. 一方,キーパーは特殊な動作が必要となり,ゴールライン上を移動してゴールを防がなければなりません.

まとめ

以上がルールを守って試合をするためにも,スムーズに試合をするためにも必要な動作となります. 必ず必要な順番に紹介をしました. 最初はフォルト動作を実装することが良いと考えます. フォルトがあれば何かあってもロボットを止めることができます.

次はストップゲームでしょう. ストップゲームができなければその後のキックオフもできません. ストップゲームができるようになるためには蹴る以外の動作を精度はともかく, 確実にできるようにする必要があります.

ペナルティキックが登場する頻度は低いですが,動きが特殊であるため実装は必要です.