鬼ごっこにおける「型」についてあれこれ

昼休みが暇なので、今までの考えをメモ。ところどころ雑記風味。
まだちゃんと文章化はできなかった。他に考えてることもあるが組み込めなかったり文にできなかったり。


TCGに見られるような「速攻型」「コントロール型」のような「型」を意識したAIを考えたい。で、そのために、その「型」という概念がどの程度汎用的なのかを考えてみる。その題材として、「鬼ごっこ」をとりあげ、「型」の存在について考えてみた。


まずは、TCGや格ゲーなど、「型」の存在するものについて考え、それらの特徴について考えた。これらの型は、「攻撃・速度を重視する代わりに、防御を犠牲にする(速攻型)」といったように、「パラメータ」に対する比重で表現できると考え、これらのパラメータを列挙してみた。

  • 攻撃
    • 自分の勝利条件へ近づく
  • 防御
    • 自分の敗北条件を退ける
  • スピード
    • 相手より先に勝利条件へ近づく
  • 安定性
    • 運に左右されないようにする

実際にはこれらの単純な比重にプラスして、コントロール型や土地破壊型のように「相手のスピード、安定性を下げる」という風に、相手に掛けるマイナスの比重も考慮する必要がある。


で、「鬼ごっこ」で考えてみる。鬼ごっこのルールは単純に言えば「鬼が相手に触れば鬼の勝ち=相手の負け」であり、これは「鬼と相手の距離が0になる」が勝利条件・敗北条件である、と表現できる。
上のパラメータに当てはめると、「攻撃=相手に近づく」「防御=鬼から遠ざかる」になる。しかし、他のパラメータには当てはまらなさそうだし、鬼には敗北条件がないし、相手には勝利条件がない(時間切れを導入すればあったりするが)。この段階で、前述のパラメータは一般的なものではなく、重要なのは「そのゲームに関連するパラメータ」ではないか、と推測する。「鬼ごっこ」でいうならば、相手との距離を縮めるための「移動速度」とか、移動を続けるための「スタミナ」とか。さらには、相手を追い詰めることを考えると「地形」という概念もあり、この「地形」という概念は単純な数直線では表せないものになる?相手の「移動速度」を制限するもの、と考えるとそうでもないかと思いつつ、しかし「方向」によって「移動速度」が変化して云々。
パラメータには当てはまらないといいつつも、「最初から全速力で追いかける」というのは「速攻型(スタミナを気にせず移動速度を最大化する)」と呼べるのではないか、とか。相手の移動方向を制限することは安定性の(相対的な)向上と呼べるのではないか、とか。色々。


「汎用AI」にする気はないというか、ゲーム依存部分は別途用意する必要がある、と考えているので、「地形」については案外どうでもいいのかもしれない。あくまで比重の置き方。しかし、「地形」の使い方にも種類があってその比重が云々。


結論としては、「型なんて考えながら鬼ごっこするやつはいねぇ」でFA。


////////////////////////


あらためて読み返しても、やっぱり思考がバラバラだな。パラメータの記述は上のレイヤの話なんだから、スタミナとか考慮してないのは普通でないの?とか。まぁ文章化しとけばつっこみやすいし、これはこれでいいのか。
この文章もこれはこれでつっこみはそこでいいのかとか云々。いいや。


////////////////////////


もう少しメモ。


通常は「自分の敗北=相手の勝利」なので、「自分の防御=相手の攻撃の妨害」だったりするため、「防御」という概念はいらない(相手の攻撃との相対で表現できる)と一度思ったが、特殊なゲームの場合は「自分も相手も勝利」という状況がありうるので、一応「攻撃」と「防御」は両方残して考える。