http://www.ipsj.or.jp/event/samuraicoding/2016-17/
SamurAI 3x3(サムライスリーオンスリー)は、それぞれ異なる武器を持つ3人のサムライで構成される2つのチームが広い陣地でプレイするゲームです。競技者はゲームをプレイするサムライの行動を決定するAIプログラムを構築します。
グループで開発し、初めて触るRubyで長距離射程タイプのAIを作成しました。
開発していた時のアルゴリズムメモ
Lancerの行動確率をプログラム
上位のプログラムから、敵の位置を予測した値が与えられる
予測は、0%,50%,100%の3段階(0~2)
とりあえずこの3つを主軸に動く
占領チャンス0,1
占領する意味がないなら0
逃げる0,1[x,y]
敵の攻撃範囲に入っている
攻める0,1[x,y]
逃げるまでではないが、どこまで攻めてよいかdestanceで決める
自分の周囲を判定
・占領場所が無さそうなら、占領確率は低い
・効率よく占領する場所があれば、その場所の占領を優先する確率が高い
・敵対勢力にやられそうなら、逃げる確率が高い
・敵対勢力を倒せそうなら、近づいて攻撃をする確率が高い
・近い位置で味方勢力が倒されそうなら、助けに行く可能性が高い
・予測1の場所しかない場合は、近くに隠れて攻撃、逃げを狙っている可能性が高いので警戒しつつ行動する確率が高い
##メモ
スタート後、西を向いたまま北に進行。セイバーの領地に入る時、潜伏したまま敵地近くに進行。中央近くで暴れまわる。