ゲームAIラウンドテーブル・オン・ツイッター第32回 「シンボルと人工知能」
#gameai_rt32 このように、ゲーム世界にある「もの」に対して、AIが認識できるように置いておくデータのことを知識表現と言います。英語で言うと、Knowledge Representation なので、KR と通常略されます。
2013-06-15 22:53:34#gameai_rt32 さて、これで世界とAIの頭の中でべつべつに「岩」というシンボルが存在するので、これをマッチングすることで、モンスターは「これは「岩」なんだなあ」と認識することができます。
2013-06-15 22:54:48#gameai_rt32 「岩」と認識できさえすれば、あとは、それに対して何を行うかは、AIの内部の思考ルーチンで書くことができます。
2013-06-15 22:55:38#gameai_rt32 これがシンボルの力です。なんだ、あたりまえじゃないか、と思われるかもしれません。その通りであたりまえなのですが、これはゲーム空間だからできることです。
2013-06-15 22:56:11#gameai_rt32 たとえばロボットに岩を岩であると認識させることはたいへんです。なぜなら、現実世界にはタグをつけることができないからです。せいぜいマーカーや文字を書いておくことぐらいですが、まさか現実世界全部に名前をつけることはできません。
2013-06-15 22:57:03#gameai_rt32 このように、現実世界の人工知能では常に世界のものと記号の間の関係をつけられない、という問題がつきまといます。これを「シンボルグラウンディング」の問題と言いますが、うまくやればゲームではこの問題を回避できます。
2013-06-15 22:58:24#gameai_rt32 さて、シンボルの力は絶大です。モンスターの状態も「HP」「MP」「すばやさ」とかと数字をセットで持たせておけばいいですし、「岩」以外にも「草 30」(30は栄養値)「水 70」みたいに持たせておけばいいでしょう。
2013-06-15 23:00:06#gameai_rt32 ここから、今日の議題です。なんだかこんなことをしていると、シンボルと数字で人工知能は作れてしまう気がして来ます。シンボルと数字でできないことがあるでしょうか?また、もっとうまくやれば、もっとどんなことができるでしょうか?
2013-06-15 23:02:07#gameai_rt32 今日は、シンボルと数字から、人工知能について議論してみましょう。ここからは自由討論です。ハッシュタグをつけて自由に議論してください。僕もしゃべり続けるので、面白いと思った意見には、どんどんお互いにレスをしましょう。
2013-06-15 23:03:15#gameai_rt32 シンボルは常に何かを指すことができます。記号をあらかじめ世界にセットする、ということは、実は人工知能からは、記号の世界しか見えていない、ということです。
2013-06-15 23:04:22数値に限らず、ハッシュなどで文字情報も持たせればなんでもできそうではある。複雑な動きをするほど定義は大変かもだけど。 #gameai_rt32
2013-06-15 23:05:02#gameai_rt32 記号の世界しか見えていない、ということは、離散的な世界しか見えていない、ということです。離散的な世界というのはとてもプログラムから扱いやすいので、シンボルによる人工知能の形成という手法がゲームでは当然のアプローチになるのですが。
2013-06-15 23:05:13#gameai_rt32 そして、シンボルによって人工知能を作って行くということは、人工知能を賢くするためにはシンボルの体系をひたすら深く掘って行くしかないのです。そして、シンボルにもいろいろな種類が必要です。属性、関係、対象を指す、などのシンボルを駆使して、記述して行きます。
2013-06-15 23:07:21#gameai_rt32 離散化した時に細かなディティールが消えているという問題はあるかもですね。一見省いても問題ない様な細部が、実はバタフライエフェクト的に重要だったと言う事も考えられます。
2013-06-15 23:08:10#gameai_rt32 例えばこれの究極が人間それぞれに対しての反応というのであっても、自分はAIはシンボルと数字だけで可能、というかそれでしか出来ないと思ってます。プログラマとしてはそれ以外の『データ』の持ち方がわからないので。
2013-06-15 23:08:18#gameai_rt32 あと、事前に単位が作られて計測出来るようなものでないと認識出来ないですね。 例えば美術品も点数を付けておかないと素晴らしいものかどうかの判断ができない。
2013-06-15 23:08:26#gameai_rt32 シンボルにとって記述されるのは世界だけでなく、モンスターの知能そのものもシンボルと数値で記述されて行きます。シンボルと数値の体系が相互に作用しうことで、この種類のゲームのAIは動いていると言えるでしょう。それでいいのか?
2013-06-15 23:08:50#gameai_rt32 シンボルを定義していけば定義していくほど、それによる組み合わせは無限大だと言えますが、それは人工知能と関係あるのですか? 予め用意されておいた答えにモンスターがたどり着くか、というようなことだと考えたのですが、根本から間違っていますか?
2013-06-15 23:10:42#gameai_rt32 それでは一度シンボルと数字でとことんまで人工知能を作って行くことを考えます。シンボルは別のシンボルに変化することもあるでしょう。シンボル同士の関係性や規則も必要です。シンボル同市のクラスターもあるでしょう。
2013-06-15 23:11:11例えばAIにどこまでを求めうるかというところも重要かと。少なくとも人間から見て思考してると見えるレベルであれば現在でも可能だと思う #gameai_rt32
2013-06-15 23:11:39#gameai_rt32 物とシンボルを1対1で関連づけるのではなくて、1つの物を複数のシンボルの集合体として表現した方が良いと思います。
2013-06-15 23:12:34#gameai_rt32 それに応じてシンボルを処理する実行系も作れねばなりません。シンボルによる記述、処理系。つまるところを、これはまるで、言語やプログラム言語を作っているのと同じ問題になる。そこまで大きくなくても、やっていることは同じに見えて来ます。
2013-06-15 23:13:17#gameai_rt32 複数のシンボルを組み合わせて持たせることで 定形しか作れないことを打破するんですか。 そういうのはアリかもですねぇ。
2013-06-15 23:14:12