ここで、第3の方法「シミュレーション」が登場します。
(1)頭も良くなく、数理学的センスもないが、
(2)中途半端で未完成のモノ(プロトタイプ)を作らせたら、めっぽう早くて、コピペでプログラムの量産を続ける、
私のようなエンジニアにとって、「シミュレーション」というのは、世界を理解する方法としては、なかなか便利な道具なのです。
もっとも、シミュレーションというのは、現実世界との一致を一切保証しない、作り手の自分勝手な世界観に基づく、“自分だけのワンダーランド”ですので、その無矛盾性や完全性について、「論理」には遠く及びません。
それでも、「仮説」の応酬よりは、はるかに建設的であるとは思います。なぜなら、シミュレーションを本気で動かすためには、そのシミュレーションの中に、自分に都合の良い事実だけでなく、自分にとって都合の悪い事実や、不愉快な事象も、プログラムに組み込まないと、決して動き出さないからです。
このように、シミュレーションは、時間も手間もかかる、相当に面倒くさい方法ではありますが、基本的には、その対象が「モノ(有体物)」でさえあれば、どんなものであってもワンダーランドを作り出せることは、大きな利点でしょう。
また、「モノ」でなくても、例えば「ヒト」をシミュレーションの構成要素、または、「ヒトの世界」をシミュレーションすることもできます ―― というか、そのようなシミュレーションは、コンピュータが発明される前から行われていました。
その代表的な学問の一つが「経済学」です。
例えば、古典経済学は、人間が完全に利己的で、完全に合理的に行動するであることを前提とすることで、比較的簡単な数式モデルを適用することができました。コンピュータの使い方より、むしろ微分や積分の定式化の技術が必要でした。
ところが近年、行動経済学という(比較的)新しい学問が、著しい勢いで広まっています。これは、「人間の行動って、全然合理的じゃないじゃん」という観測結果から、再度、経済を見直すという学問で、人間の非合理性の定式化なども進めています。
それぞれの人間は「自分が合理的に行動している」と信じているのですが、それは、社会全体(あるいは「神の視点」)から見ると、全く不合理の極(きわみ)にある、という現実があります。
つまり、世界は「たった一つの神の視点」から理解するだけでは不十分で、「膨大な数の、それぞれ別々の人間の視点」の全てを使って理解しなければならない、ということの一つの証拠になっていると思います(この話は、後述の「オブジェクト指向プログラミング」の話に繋がります)。
さらに申し上げると、先ほど、私は、「『シミュレーション』は『論理』に劣る」というような話をしましたが、『シミュレーション』が『論理の理解を助ける』ことだってあるのです。
特筆すべきは、「モンティホール問題」です。これは、本気で本気の「驚愕動転」でした。残念ながら、これについて言及すると、今回どころか次回まで、延々とこの話を続けることになりかねませんので、この話については、私の日記をご一読ください。また「囚人のジレンマ」については、「陰湿な人工知能 〜「ハズレ」の中から「マシな奴」を選ぶ」をご参照ください。
その他、四色定理では、数学の定理の証明にコンピュータが使われるという方法が用いられています。私としては、「そんな証明方法ある?」と、信じられない気持ちでした*)。
*)なにしろ、コンピュータのソフトウェアにはバグが付きものだし、またOSの不具合や、最悪はCPUチップセットレベルでのハードウェアバグがある、という可能性など100%排除できないからです(参照)
今、この疑問については『「四角形の種類」を全部列挙しろ』という問題の拡張版、と理解しています。コンピュータにとって、633個程度の不可避集合の発見など、人間が四角形の種類を算出するより、ずっと簡単だからです。
また、2004年には定理の証明ソフトウェアで、この証明は完了した、ということになっているようです。
これは、「『シミュレーション』で『論理』を証明した」といっても問題ないのではないかと思います。
Copyright © ITmedia, Inc. All Rights Reserved.