ゲームを生み出す人工知能に学ぶ論理的ゲームデザイン

Board Game Design Advent Calendar 2018 9日目 兼 CCC Advent Calendar 2018です。

adventar.org

今回は、ゲームデザインのお話です。

元々、カレンダーには「Scrapboxでゲームの用語集を作ろう【論理的ゲームデザイン】」というタイトルで登録していましたが、その内容は次回に延期することにしました。すみません。

自己紹介

私は自身が立ち上げたHIchain Projectというサークルでゲームデザイナーとしてボードゲームを制作しています。
私は情報系の大学に所属していて、「文字を使ったパズルを考える」というゼミ課題としてHICHAINを考案し、その後製品化してゲームマーケットなどで販売しています。

アナログゲームに関してはオセロや将棋を少しやったことがある程度で、ゲームマーケットに出始めたぐらいから何回か最近のボードゲームをプレイした感じです。
ブラフや複雑なルールを理解することが苦手なので、どちらかというと将棋のようなシンプルなゲームの方が好きです。

実はHICHAINを考案してから、その人工知能を開発を目指してゼミで研究してました。
結局ルールの実装が複雑すぎて人工知能の開発までは至らなかったのですが、その過程でルールの欠陥が発覚するといった思わぬ副作用があったので今回はその経験に基づいて書きます。

HICHAINについてはこちらの記事で経緯をまとめているので興味があればご覧ください。

tkw.hateblo.jp

人工知能ボードゲームを生み出す

人工知能がゲームのルールを生成する」というにわかに信じがたい話があります。
実際、本当に生成した事例があり、人工知能が作ったボードゲームが存在します。

その1つがYavalathというボードゲームです。
海外で作られたゲームですが、ゲムマで頒布されたこともあるようです。
ルールは六角形マスの五目並べのようなアブストラクトゲームです。

このゲームは Ludi というシステムによって生成されていて、五目並べ囲碁などを学習させて新しいゲームを作っているようです。
しかも生成したゲームの評価(いわゆる "面白いか" どうか)を行い、面白いゲームをどんどん作り替えていき生成しています。

Ludemesという概念

Ludiのシステムの中で Ludemes という概念があります。
それはあるゲームの要素を元に新しいゲームを生み出すことでゲームがどんどん拡張されていくミームのような現象のことです。
Ludemic とはLudemesの形式に則っていることを指します。

Ludemesの成功例としてHexというゲームがあります。
Yavalathと似ていて、五目並べのマスを六角形にしたようなゲームです。
これは五目並べ(もしくは三目並べ)の一部の要素を拡張したLudemicなゲームといえます。

n目並べを拡張してHexになったように、Ludiはゲームを拡張していって新しいゲームを生成しています。

ゲームの自動生成プロセス

Ludiでは以下のプロセスでゲームを生成しています。

  1. 既存のゲームのルールを定義する
  2. テストプレイによりゲームを評価する
  3. ゲーム同士を掛け合わせて新しいゲームを作る
  4. 2~3の繰り返し

かなりざっくりしていますが、このようにゲームの生成→評価を繰り返してLudemicなゲームを生み出しています。

デジタルゲームは完璧なルールが求められる

まず第一段階のルールの定義ですが、Ludiではプログラミング言語で記述しています。
評価のためにコンピュータがプレイする環境が必要なので、アナログゲームを元にデジタルゲームを作ることと同じです。

実はアナログゲームをプログラムで実装することは大きなメリットがあります。それは、

  • 実装する過程で自然と用語やゲームの流れを厳密に定義する必要が発生する
  • 厳密にルールを定義することでゲームの拡張が容易になる

プログラムは非常に論理的です。アナログゲームは説明書で曖昧な表現や省略が可能ですが、コンピュータは人間のように推測してくれません。
そのため実装するには論理的で厳密なルールが求められ、ルールの穴や不明瞭な部分を見つけやすくなります。

また論理的なルールは拡張がしやすくなります。
これに関しては次の第2章の記事で説明します。

実際、HICHAINをアプリ化する過程で、ルールの欠陥に気づきました。
特殊な状況で見つかるルールの穴はプレイしているだけでは気づかないことが多いです。

次章: Scrapboxでゲームの用語集を作ろう

アナログゲームをプログラムで実装することはメリットがあると言いましたが、実際ボードゲームのデザイナーがプログラミングをすることは敷居が高いと思います。

そこで次章ではScrapboxというサービスを使って、プログラミングせずに論理的なルールを構築しようと思います。
Scrapboxはノートの共有サービスなのですが、Wikiのような構造で用語集を作るのに向いています。

余談: ゲームデザイナーは必要なくなるのか?

Ludiによって確かに新しいゲームがいくつか誕生しました。
では今後、人工知能がどんどんゲームを生み出した結果、人間のゲームデザイナーは必要なくなるのでしょうか?

実際はそんなことはありません。(多分…) なぜなら現時点で人工知能が未熟だからです。

まずLudiでは既存のゲームを元に拡張していくので、基本的に生成されたゲームは元の学習したゲームに似通っています。
実際、論文では「最終的に五目並べのようなゲームに偏っていく」と結論づけています。
このシステムでは"画期的な"ゲームが創造できるとは言いがたいと思います。

しかし最も難しいのは「面白いゲームとは何か」という根本的な課題です。
面白さはそもそも主観的な指標なので数値化することは難しく、「良い手かどうか」を判断するのとは訳が違います。

ゲームをデザインする人工知能は、マップの自動生成やレベルデザインなど一部のデザインでは既に活用されています。
しかしルールを作り出すというより創造的な分野においてはまだ発展途上で、研究の余地が多く残っています。

おわりに

Ludiに関しては私が論文を8割方和訳したので、興味のある方はこちらをご覧ください。
(誤訳がある可能性があるのでご了承ください)

今後人工知能が作ったボードゲームが大ヒットするかもしれません。
その日が何十年後か分かりませんが、私は楽しみにしています。