👾
マッチ箱の脳 1章にあるAI搭載ゲーム「アストロノーカ」まとめ
アストロノーカ
1998年に今のSQUARE ENIXによって発売されたゲーム。野菜を収穫してコンクールに出品する。
いい野菜を育てるため、品種改良や害獣退治がある。
害獣退治にAI「遺伝的アルゴリズム」が利用されている
害獣退治概要
畑を荒らしにくる「バブー」という生き物をトラップを配置して撃退する。
AIを用いて毎日進化してやってくる。
遺伝的アルゴリズムとは
世代という概念があり、良い性質を次の世代に「遺伝」させていくことで、より良い性質を持った個体が生まれる。
遺伝的アルゴリズムの流れ
- 現世代として、複数の性質をもつ個体を複数用意する。(たとえば、「010」「111」「000」)
- 個体を評価し、点数をつける(「010」2点、「111」2点、「000」0点)
- ある確率で3つのどれかを行い、次世代とする
a. 個体を2つ選択して、交叉する。(色々な方法があるが、たとえば、「010」「111」から「011」が生まれる)
b. 個体をひとつ選択して突然変異を起こす。(「010」が「110」になる)
c. 個体をひとつ選択してそのままコピーする。 - このやりとりを数回繰り返し、最も評価点の高いものを採用する
アストロノーカでの利用
「アストロノーカ」のなかで、アルゴリズムは次のようになっている。
- 最初のバブー集団をつくる
- 各バブーがトラップバトルを行う
- 各バブーのトラップバトルの成績を出す
- 成績に応じて、生き残るバブー、淘汰されるバブーを選ぶ
- 親となるバブーを選んで、遺伝子を交叉させ、子遺伝子を作る
- 子遺伝子に突然変異を与える
- 子遺伝子を集団に戻す
引用元「森川幸人. マッチ箱の脳(AI)―使える人工知能のお話 (p.65). Yukihito Morikawa. Kindle 版.」
- 最初の集団のバブーは20個体と決め、個体の性質として、複数パラメータを与えることで、ジャンプ力があるや食いしん坊や乱暴者などが生まれた。
- ゲーム画面に出ず、裏で計算に使われるだけの世代を作ることで、強くなる速度が速くなり、ゲームのテンポをよくしている
- プレイヤーが考えたトラップ配置を学習して敵が成長するので、同じ配置で勝ち続けることができない。敵もプレイヤーに合わせて変化していく仕組みになっている。
- ジャンプ力や腕力などの身体的パラメータ+トラップの思考回路もパラメータに含まれていて、当時は前例がなかった。
Discussion