AIプログラムとかUnityゲーム開発について

探索や学習などを活用したAI系ゲームを作りたいと思います。

どの敵を狙うかという評価

AIの行動選択のうち、複数の敵がいる場合にどの敵を狙うか?は重要な戦略となります。
基本的には一番近い敵を狙うようにしていますが、その他の評価点として、

  • 味方が狙っていないフリーの敵を狙う
  • 味方が狙っている敵を狙う(数の暴力)
  • HPが減っている敵を狙う(とどめをさす)
  • HPが減ってない敵を狙う(まんべんなく攻撃する)

といった考え方ができます。


対戦させたみた感じでは、フリーの敵を狙うというのが有効みたいでした。
そのほかの戦略がだめなのは、あと一回矢が当たると死ぬ相手に、矢が3本当たるということは、限られた攻撃機会を無駄にしているわけです。
なるべくフリーの敵を失くすということは、無駄な攻撃を失くすという意味合いがありそうです。


下記は、同じ戦力で、左は(一番近い敵を狙う+フリーの敵を狙う)戦略で、右は戦略無し(一番近い敵を狙うのみ)
http://27.120.88.154/rts10.gif

このへんの戦略は、ゲーム作成する上で評価点として調整するところですが、
あえてユーザーにオプションとして開放するのもいいかなと思います。
ただ、フリーの敵を狙うのが最適解なら、みんな設定したほうがいいので、オプションの意味がなくなります。
ケースバイケースのオプションができれば、より望ましいと思います。