第37回 フレーム問題、完全解決 前編


ロボマインド・プロジェクト、第37弾
こんにちは、ロボマインドの田方です。

さて、今回のテーマは、予告通り、フレーム問題です。

AIとか人工知能とかに興味がある人なら、名前ぐらい聞いたことがあると思います。
この問題が解けない限り、AIロボットが、僕らの生活の中に入ってくることはないって話です。
その根本を指摘した問題です。

なぜかわからないんですけど、このフレーム問題にこだわりを持ってる人が、結構いるみたいなんです。
どういう人かって言うと、たとえば、早くドラえもんみたいなロボット、出来ないかなぁとか、話してたりすると、「フレーム問題を解けない限り、ドラえもんなんて永久にできないよ」とか言ったりする人です。

グーグルで、「フレーム問題」で検索したら、wikipedia、人工知能学会に続いて、3番目に僕のブログが出てくるんですよ。
僕のブログって、そんなに炎上することないんですけど、「フレーム問題は解決済み」って記事だけ、なぜか炎上してるんです。
「フレーム問題を分かってない」とか、「そんなんじゃ、解決したことにならない」ってコメントが定期的に入るんです。

どうも、フレーム問題を解決できないってことにロマンを感じてるようで、解決したとか言うと、鬼のような反論してくるんです。
だから、このYouTubeでもフレーム問題には触れないようにと思ってたんですよ。
でも、そんな人でも黙らせる解決方法が見つかったので、今回は、禁断のフレーム問題を解禁することにしました。

さて、このフレーム問題、提唱したのはジョン・マッカーシーというコンピュータ科学者です。
マービン・ミンスキーと並んで人工知能の第一人者です。
AI、人工知能って言葉は、彼が考案したそうなんです。
プログラム言語のLISPとか、タイムシェアリングシステムって言う初期のコンピュータの重要な概念を提唱したスゴイ人なんです。

まずは、フレーム問題の中身です。
フレーム問題っていうのは、ロボットが現実の世界で活動するようになったときに直面する課題を説明した、一種の思考実験です。

有名なのは、哲学者ダニエル・デネットが挙げた洞窟の例です。
洞窟の中にバッテリがあって、それをロボットが取りに行くって話です。
ただし、そのバッテリの上には時限爆弾が置いてあるわけです。
AIロボットは、無事にバッテリだけを持って帰れるかって課題です。

博士は、ロボット1号機に最初の指令を下します。
「おい、1号機、洞窟にあるバッテリを持ってこい」

「了解しました!」
1号機は、張り切ってバッテリを取ってきたんですが、その上の時限爆弾も一緒にもってきたんですよ。
だから、洞窟から出てきたとこで、ドッカーンって爆発してしまいました。
バカですよねぇ、1号機。

博士は考えました。
「はは~ん、バッテリを動かしたら、その上に乗ってる爆弾もいっしょについてくるってこと、理解してなかったんだな。
つまり、何か行動すると、それがどう影響するかを考えてないからこうなるんだ。
よし、そこまで考える2号機を作るぞ」

そうして、改造した2号機を投入します。
さて、バッテリの前に来た2号機は、いろいろ考えます。
「バッテリを動かすと、時限爆弾が爆発しちゃうんじゃないか」
「いや、もしかしたら、爆弾を動かすと、天井が落ちてくるんじゃないか」
「いやいや、もしかしたらだよ、洞窟の壁の色がかわるんじゃないか」
いやいやいやいや、もーしーかーしたら・・・
ドッカーン!

また爆発してしまいました。
2号機、やっぱ、バカじゃん。

「なんで、こんなことになるんだ!」
博士、怒り心頭です。
「爆弾動かしたからって、洞窟の色がどうなるかなんて、そんなん、関係ないやろ」
「はは~ん、わかったぞ」と。
「2号機は、関係あるものと、関係ないものの区別がつかへんかったんやな。
よし、また改造するぞ」
そう言って3号機を作り上げました。
「ゆけ、3号機!」

3号機は、めちゃ、頭がいいです。
何が関係があって、何が関係ないかを見極める能力があります。
洞窟の前に到着した3号機は、関係のないことを除外する作業に入りました。
ところが、関係のないことを考えだしたら、無限に思いついてしまって、結局、そこから一歩も動けなくなりました。
3号機、一番バカじゃん!

これがフレーム問題です。

本題に入る前に、ちょっと気になる点を指摘しときます。
爆弾を載せたバッテリっていう例、これ、例として、あんまし良くないんじゃないって点です。

フレーム問題って、AIの課題を指摘しようとしてるんですけど、どんな課題を指摘しようとしてるのか、いろいろ読み取れるんですよ。
ほんで、それが原因で、僕のブログが炎上してるってのもあるんですよ。

たとえば、この問題、正解ってあるんでしょうか?
つまり、人間だったら、確実にバッテリだけ持ってこれるんでしょうか?

バッテリの上に時限爆弾が乗ってるのは分かったとします。
時限爆弾って、僕も本物は見たことないですけど、たぶん、そのまま除けたら爆発するんじゃないですか?
多分、フタとか開けたら赤い線とか青い線とかがあって、赤い線を切ったらタイマーが止まって、青い線切ったらすぐに爆発するとか。
素人考えですけど。
なんか、人工知能の話とかけ離れてきましたよね。

実際、僕のブログでも、そんなコメントが何件も寄せられてるんです。
でも、フレーム問題で言いたいのは、どんな難問でも解けるAIができないと意味がないってことでしょうか?
つまり、時限爆弾があれば、100発100中で解除できるAIを開発しろっていってるんでしょうか?
違いますよね。

AIロボットが、まず目指すべきは、人間社会の中で、人間と普通に暮らせるロボットです。
人間でも解けない難問を解決するロボットを作ろうなんて、そんなの無理です。
時限爆弾の載ったバッテリを持ってくるって課題。
これ、人間でも難しいので、思考実験として適切とはいえないんです。

そこで、妥当な課題としては、人間が簡単に出来ることができるAIロボットを作るってことになると思います。
時限爆弾が載ったバッテリとかより、たとえば、冷蔵庫からチーズを取ってきてといった課題とかです。
ただし、チーズの上にハムが載ってるけど、チーズだけ持ってくるとかって感じです。

今さら、内容を変えると、ややこしくなるので、ここでは、時限爆弾は触っても除けても爆発しないって前提で話を進めたいと思います。

ブログの記事で、僕は、具体的なフレーム問題の解決方法を書いたんです。
バッテリだけ持ってくるロボットのプログラムを考えたわけです。

そしたら、それにも、いっぱい反論が寄せられました。
どういう反論かと言うと、プログラムで解決したら意味ないじゃんって反論です。
自分で解決できないと、意味ねぇよってことのようです。

さて、この反論はどうでしょう?
一見、最もと言えそうです。
でも、僕らが目指してるのは、人間と同程度の知能を持ったAIロボットです。
人間も、全て自分で考えて解決してるわけじゃないですよね。
生まれたばかりの赤ちゃんが、自分で勝手に学んで生きていけるようになるわけじゃないです。
窓から身を乗り出してたら、引き戻して叱らないといけません。
そうやって、教えないと人間社会で生きていけるようになりません。

だから、AIロボットに関しても、基本的なプログラムは与えておく必要があります。

肝心の、フレーム問題の解決方法ですが、それについては、次回、お伝えします。

それでは、次回もお楽しみに!