今回は人工知能研究の中でも最大の難問と言われるフレーム問題を取り上げてみたいと思います。
人口知能がある問題を解こうとする際に、その問題に関係のある事柄だけを適切に選び出すのが難しい
人間が問題を解く際にはフレーム問題を意識することがないので、あまりイメージが湧かないかもしれませんが、人工知能にとっては常に直面する重大な問題です。
以下では具体例を交えて説明を行ない、フレーム問題がいかに深刻であるかをご理解いただけるようにしたいと思います。
フレーム問題とは?
フレーム問題は1969年にジョン・マッカーシーとパトリック・ヘイズによって提唱された哲学的な問題です。
例えば、あなたがこれから車で会社に向かうところだとします。目的は自動車を運転して会社に辿り着くことですが、言うまでもなく運転をする際には事故を起こさないように周囲に注意を払います。事故を起こしてしまっては出勤どころの話ではなくなってしまいますからね。一方で、自動車を使うのであれば、徒歩と違って天候はそれほど気にする必要はないでしょう。(台風や大雪などの異常事態を除けば)雨風で運転が妨害されることはそれほどありませんからね。
自動車運転の例で何を伝えたかったかと言うと、私たち人間は目的に関係のあるものと無いものを自然と判別できているということです。上記のような判断はほとんど考えるまでもなく無意識にやっているようなレベルでしょう。
しかし、これが人工知能となると簡単にはいかないのです。囲碁や将棋のようにきっちりルールが決まっていて限られた環境のみ考慮すればいいようなケースでは問題は起こりませんが、そうでなければ「そもそも何をどこまで検討しなければいけないのか?」という問題にぶち当たってしまうのです。さきほどの自動車運転の例であれば、「車の周囲の人は目的に影響を与えるか?」「天候は目的に影響を与えるか?」「車種は目的に影響を与えるか?」などを延々と判断していくことになります。
これがフレーム問題です。人工知能にとって深刻な問題であることがお分かりいただけたのではないかと思います。
バッテリーを取ってこれないロボット
ここで哲学者のダニエル・デネットがフレーム問題を説明するのに用いた有名な例を紹介します。
ある洞窟の中に台車があり、その上にはバッテリーと時限爆弾が並べて置かれています。バッテリーはロボットの動力として必要なので、それをロボットに取りに行かせるというタスクを考えます。
ロボット1号バッテリーを取りにいきますが、「バッテリーを取ってくること」以外は思考の外にあるので、一緒に置かれている時限爆弾には無頓着でした。そのため、台車を押して爆弾ごとバッテリーを持ち出してしまい、結果的に爆弾が爆発してタスク失敗となりました。
ロボット1号は壊れてしまったので、次はロボット2号がバッテリーを取ってくることになりました。ロボット2号には前回の失敗を踏まえて、「台車を押すという行為がどんな結果をもたらすか?」を考える機能を与えました。こうすることで、「台車を押していったら、いずれ時限爆弾が爆発するかも」ということを検討できそうです。しかし、話はそう単純ではありません。確かに爆弾のことを考慮できるようになりましたが、「台車を押したら洞窟が崩落しないか」など全く関係なさそうことまで検討し始めてしまい、考え込んでいるうちに時限爆弾が爆発してしまいました。
次はロボット3号です。ロボット2号は全く関係ないことまで考え込んで失敗したので、ロボット3号には「バッテリーを取ってくるという目的に関係のあることとないことを判別する機能」を与えました。そして、ロボット3号はバッテリーを取りにいったのですが、洞窟の前で立ち尽くしてしまい、またもや時限爆弾が爆発してしまいました。ロボット3号は洞窟の前で、
- 洞窟の天井の高さは目的と関係あるだろうか?
- 洞窟の壁の色は目的と関係あるだろうか?
- 今日の天気は目的と関係あるだろうか?
などのありとあらゆる可能性を延々と思考していたのでした。
人工知能は目の前の問題に対して考慮すべき範囲の枠(フレーム)を設定するのが非常に苦手だということがよく分かる例です。
人間はフレーム問題を克服しているのか?
先ほど自動車運転の例を挙げた際に「人間は無意識に目的に対して関係のあるものとないものを判別している」と述べました。では、人間はフレーム問題を克服していると言えるのでしょうか?
答えはノーです。人間もフレーム問題に直面することはあります。例えば、思いがけない事故が起こった際に加害者が「想定外だった」などと述べるのは、言い換えれば考慮漏れなので、問題に対して適切なフレームを設定できていなかったことになります。逆に、ロボット3号のようにいろいろ考えすぎて、なかなか行動に移せないということもあるかと思います。
このように人間自身もフレーム問題に悩まされることはありますが、ロボットとの大きな違いは無限の思考に陥ったりはしないということです。
人間の思考は必ず有限なので、ある一定の思考を行なったら必ず結論を出します。そのため永遠に悩まずに済むのですが、有限であるがゆえに、上記のような考慮漏れが問題になることもあります。言い換えれば、考慮漏れのリスクを許容して思考の無限ループを回避しているということです。
最後に
今回は人工知能研究の難問であるフレーム問題を解説してみました。
一見とても賢いように見える人工知能が人間にとっては何気ないような問題で苦慮しているというのは逆説的で非常に興味深いですね!!
最後になりますが、より詳しくAIを学んでみたいという方は、AIの基礎からAI搭載WEBアプリ開発まで学べるキカガク長期コースも活用してみてください!