第494回 リベットの実験をコンピュータで再現したら自由意志が生まれてしまった。 自由意志をプログラムで完全再現


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


「意識が宿ったAIアバター『もこみ』を本気で作るプロジェクト」として、去年、
クラウドファンディングを行いました。

それがプロジェクト・エデンです。
ようやく、その基盤部分が完成してきたので、最初のデモの準備をしてるとこです。
最初のデモは、リベットの実験をすることは決まっていました。
リベットの実験というのは、自由意志がないことを証明した有名な実験です。

被験者に好きなタイミングで手首を動かしてくださいって言います。
そして、その時の脳波と筋電位を記録します。
脳波は、一次運動野の脳波です。


運動野には、全身がマッピングされていて、体を動かすとき活性化するので、その脳波を測定するわけです。
筋電位は手首の筋肉が動いたときに発生します。
その結果がこれです。
C:\Users\takata\AppData\Local\Microsoft\Windows\INetCache\Content.Word\2タイトルなし.jpg
実際に筋肉が動く550ミリ秒前に脳波が出ているのがわかりますよね。
次は、意識がいつ、手首を動かそうと思ったかです。
これを確かめるために、黒丸が高速で回転するタイマーを用意します。


そして、「動かしたい」と思った瞬間の位置を覚えておいてもらいます。
その結果がこれです。

実際に筋肉が動く200ミリ秒前に「動かしたい」という意志が発生してました。
でも、これ、よく考えるとおかしいんです。
「動かしたい」って思ったのは自分ですよね。
だから、「動かしたい」って思ったことがきっかけで脳波が出るはずですよね。
ところが、グラフを見たら、「動かしたい」って思う350ミリ秒前に脳波が出始めてるんですよ。
これを素直に解釈すると、何らかの脳波が無意識から出て、それを受け取った意識が「動かしたい」って思ったってなりますよね。
つまり、無意識から「『動かしたい』と思え」って命令されて、それを受けて意識は「動かしたい」って思ったってなりますよね。
つまり、自由意志なんてないことが証明されたわけです。
さて、本当にそうなんでしょうか?
そこで、この実験をコンピュータで完全に再現して、その謎を解き明かします。
これが今回のテーマです。
自由意志をプログラムで完全再現
それでは始めましょう!

最初に、リベットのもう一つの実験についても紹介しておきます。
それは、皮膚刺激をしたとき、どのタイミングで意識に上るかって実験です。
手の甲にパチって短い電気パルスを与えても気付きません。
そこで、パチパチパチって連続して電気パルスを与えたら、500ミリ秒後にやっと気づきました。
さっき、脳の運動野の話をしましたけど、運動野の対面には感覚野があります。

感覚野にも身体がマッピングされてて、感覚野を刺激すると対応する体の部分を触られたと感じます。
実験してみると、感覚野を刺激した場合は、一瞬で触られたと感じるそうです。
皮膚刺激だと、なんで気付くのに500ミリ秒もかかるんでしょう。
500ミリ秒って0.5秒で、結構長いです。
おそらく、皮膚は外界に接してるからノイズも多いです。
わずかなノイズにいちいち反応してたら気が散ってしょうがないです。
だから、確実に触れられたと確信を持つために0.5秒の継続刺激が必要だと考えられます。

次に、皮膚と脳を同時に刺激してみました。
脳へは右手の感覚野、皮膚刺激は左手です。
そして、皮膚刺激は500ミリ秒継続させます。

さて、意識はどんな順番に刺激を感じるでしょう?
当然、脳刺激の右手を先に感じて、その後、皮膚刺激の左手を感じるでしょう。
ところが、実際は、右手と左手、同時に感じたんです。
どうも、意識がどのタイミングで刺激を感じるかは無意識がコントロールしてるようなんです。
無意識は、現実に起こった順番どおりに意識に感じさせようとしてるみたいなんです。
なんでかっていうと、二つの出来事が起こった場合、早い方が原因で、後に起こったことが結果かもしれないですよね。
だから順番ってものすごく重要なんです。
だから、無意識は順番を維持して意識に感じさせてるんです。
どうも、僕らが感じてる世界って、裏で無意識が制御した結果のようなんです。

そのことは後半で詳しく語るので、まずは、プロジェクト・エデンの説明をします。
これがメタバースシステムの全体です。

離れたところにいるユーザーがインターネットを介してメタバース空間で会話できるシステムです。
「メタバースクライアント」というのがユーザーが操作する端末です。
ユーザーが見る画面はこんな感じです。


今、目の前に見えるのがAIアバターの「もこみ」です。
この画面は「もこみ」とユーザーの太郎が会話してるとこです。

AIアバターは、AIアバターサーバーとマインド・エンジンからなります。

ユーザーはメタバースを見て操作しますけど、AIアバターはマインド・エンジンがメタバースを見て操作します。
つまり、ユーザーの脳の中身と同じ仕組みがマインド・エンジンの中にあるわけです。
だから、マインド・エンジンには視覚入力とか、意識や無意識といった要素があります。


メタバース間の通信はJSON形式のメッセージで送られます。
JSONは一般的なデータフォーマットで、送信元、送信先、送信時刻、メッセージ内容などが含まれていて、全てログサーバーに保存されます。
マインド・エンジン内の通信もJSON形式でやり取りされて、これもすべて保存されます。

それでは、さっそく、マインド・エンジンの中身を紹介します。

上の「視覚入力」がAIアバターが見てる光景です。
これはメタバースそのもので、アバターにとっての現実世界です。
左に「意識」があって、その下に「無意識」があって、視覚入力の下に「仮想世界」があります。
仮想世界というのは、現実世界を仮想的に脳内に再現したもので、意識は仮想世界を介して現実世界を認識します。
これが僕が提唱する「意識の仮想世界仮説」で、マインド・エンジンの基礎となる考えです。

この部分は既に完成していて、今回、マインド・エンジンをメタバースに完全に組み込んだわけです。

ここで脳内の視覚処理を説明します。
目の網膜からの視覚情報は後頭葉の一次視覚野に送られます。

つまり、一次視覚野には二次元画像が再現されます。
視覚情報は、その後、頭頂葉に向かう背側視覚路と、側頭葉に向かう腹側視覚路に分かれて分析されます。

背側視覚路は位置や動きを分析して「どこの経路」とよばれています。
腹側視覚路は色や形を分析して「何の経路」とよばれています。
こうやって分析することで「赤いボールが右から左に移動している」とかって感じることができます。

さて、ここでゲームで使われる3DCGの話をします。
CG処理は重いので、出来るだけデータを軽くする対策が取られています。

たとえば、同じ3Dオブジェクトでもきめ細かさによって複数段階のモデルを用意しておきます。
たとえば、一番雑なウサギは、でっかいポリゴンで作られて折り紙のウサギみたいです。
でも、遠くにあるときは、これで十分なんです。
近くにあるときだけ、きめ細かなウサギを見せるんです。
こうやって計算量を削減します。

これは、マインドエンジンとAIアバターサーバーのデータのやりとりを示した図です。

たとえば、メタバース空間に机があって、その上にリンゴがあって、AIアバターはそれを見てるとします。

AIアバターサーバーには、机とリンゴのJSONメッセージが届きます。
JSONメッセージは位置情報などを含むテキストデータで、これを基に3Dの机やリンゴを生成してメタバース空間を再現します。
そうして作られた3DCGの空間がメタバース・エデンの現実世界となります。

ユーザーが見る端末には、この3DGGをそのまま表示すればいいです。
でもマインド・エンジンは脳内と同じ処理を行います。
そこで、まず必要となるのは、一次視覚野に送られる二次元画像です。

AIアバターサーバーにはメタバースの状況が次々に送られてきて、それを順次3DCGに変換します。
だから、それを写真に撮ってマインド・エンジンに送れば、それが一次視覚野に送られる二次元画像になります。

ただ、人は、視界の隅々まで詳細に認識してないですよね。
「机があるなぁ」ってざっくりと把握するだけです。
マインド・エンジンも、これと同じです。
通常は、最も粗い3Dモデルで作られた二次元画像で十分です。

脳内では一次視覚野の次は「何の経路」で「机」とか「リンゴ」って認識します。
マインド・エンジンも、送られてきた二次元画像を画像解析して物体認識します。
これは、一般的なAIツールを使って行います。
たとえば、これはYOLOと言われる画像認識システムです。

写真から、人と犬と馬って認識してますよね。
そして、たとえば犬と認識したら、つぎに犬のオブジェクトを生成します。
オブジェクトというのは色とか形といった様々なデータまとめたデータ構造のことです。
オブジェクトには、たとえば形は(犬)で、色は黒とかってデータを持たせます。
さらに、データベースから名前は犬で、鳴き声は「ワンワン」ってデータを引き出してオブジェクトに持たせます。
いってみれば、このオブジェクトが「意味」です。
そして、一次視覚野に投影された二次元画像が「見た目」です。
意識は「見た目」と「意味」をセットで認識します。
これが「見る」という経験です。
つまり、マインド・エンジンは人と同じ「見る」という経験をしてるんです。

さて、こっからがリベットの実験です。

まず、AIアバターが手首を動かすときの処理の流れを説明します。
今、AIアバターの意識が「手首を動かそう」って思ったとします。
それはJSONメッセージとなってAIアバターサーバーに送られます。
AIアバターサーバーとは、AIアバターの身体の状態を持っています。
つまり、AIアバターサーバーにあるデータが、現実世界のAIアバターの動きそのものといえます。
つまり、AIアバターサーバーのデータが筋肉とか関節の回転角度を示すわけです。

今、AIアバターサーバーに「手首を動かせ」ってメッセージが届きました。
これを受けて、メタバースのAIアバターの手首の角度情報が更新されます。
これが、手首の動き始めです。
リベットの実験ならここです。


メタバース・エデンでリベットの実験が再現されるのがわかりますよね。

それから、もう一点、重要な話をしておきます。
それは、意識的に体を動かすとはどういうことかって話です。
たとえば、こうして腕を動かすとき今、腕の角度が何度ぐらいかって、目をつむっててもわかりますよね。
これは、腕を動かすとき、関節の角度の信号が脳にフィードバックされているからです。
この感覚のことを固有感覚といいます。
つまり、意識的に体を動かすとき、脳から筋肉への指令が行くと同時に、関節から脳に関節回転角度のフィードバックが送られるんです。
脳から出発した信号が、フィードバック信号として戻ってきたとき、初めて意識は「動かしてる」って認識できるんです。
これが意識的な行動です。
意識から出発する行動なので、これが自由意志による行動とも言えます。

逆に、自由意志でない行動とはどんなものでしょう。
それは意識せずに行う行動です。
たとえば、熱い鍋にさわった時、思わず、手を引っ込める脊髄反射とかです。
このとき、意識して行動してないですよね。
手を引っ込めてから「熱っつぅ」ってなります。
つまり、行動した後に、「熱いから手を引っ込めた」って意識が認識するんです。
これが自由意志でない行動です。
自由意志でない行動は、無意識から出発して、後から意識が認識するタイプの行動です。

リベットの実験に戻ります。
今、AIアバターが部屋の中でぼぉ~っと椅子に座ってるとします。
AIアバターの前にはタイマーがあります。
ぼぉ~っとしてるのは、脳で言うとデフォルトモード・ネットワークの状態です。
これは車で言うとアイドリング状態で、行動してるわけでもなく、寝てるわけでも無く、何らかの行動の準備状態にあるって感じです。
一方、たとえばスポーツ選手が試合に集中してるときの脳状態をエグゼクティブ・ネットワークと言います。
これは目の前の現実世界を一瞬たりとも見逃さない集中状態です。

ぼぉ~としたデフォルトモード・ネットワークにあるとき、AIアバターは最も粗い3Dモデルで現実世界を認識しています。
だから、タイマーも、でっかいポリゴンで作られててガクガクです。

目の前に、回転するタイマーがあるとだけ分かればいいので、これで問題ありません。
ここで、AIアバターに、好きなタイミングで手首を動かすように言います。
そして、「動かしたい」って思ったときのタイマーの位置を覚えておいてもらいます。

意識は、ランダムなタイミングで「今だ」って決めるプログラムを持っているとします。
つまり、意識が行動の出発点となって、意識的に行動するわけです。
これは自由意志による行動と言えます。

さっき、意識的な行動はフィードバック信号を受けとったとき、初めて認識するって言いましたよね。
これは、身体的な行動に限らなくて、「思う」って思考も同じです。

たとえば、意識が「今、動かそ」って思ったとします。
それは、意識が出発点となって「今、動かそ」ってメッセージを送ることです。
メッセージを出力すると、それを受け取った無意識が「今、動かそ」ってメッセージをフィードバック信号として送り返します。
意識は、このフィードバック信号を受け取ったとき、「今、動かそ」って思ったって認識するんです。

はい、これでようやく準備が整いまいした。
それじゃぁ、始めますよ。

意識が「今、手首を動かそ」って思いました。
それと同時に、タイマーを見ようとします。
これらの思いはJSONメッセージとして無意識に渡されます。

それを受け取った無意識は、「手首を動かせ」ってメッセージをメタバースサーバーに送ると同時に、AIアバターサーバーにタイマーの詳細モデルの生成指示を出します。
さっき、AIアバターサーバーの情報が筋肉の動きだって言いましたよね。
人の場合、脳から筋肉への情報伝達は若干時間がかかります。
そこで、プロジェクト・エデンでもそれを忠実に再現してて、マインド・エンジンから出た手首を動かせの指示は、若干遅れてAIアバターサーバーに到達するようにしています。
さて、今、マインド・エンジンから、手首を動かせと、タイマー詳細モデルの生成指示を同時に出ました。
それがこの位置です。

無意識の指示を受けてタイマーの詳細モデルが完成したら、このタイミングで、意識に「今、手首を動かそ」のフィードバック信号を返します。
これを受けたとき、意識は「今、手首を動かそ」って認識して、そのタイミングでタイマーを見ます。
C:\Users\takata\AppData\Local\Microsoft\Windows\INetCache\Content.Word\23タイトルなし.png
すると黒丸の位置がはっきり見えました。
それが、この位置です。

マインド・エンジンからの「手首を動かせ」信号は、時間がかかるので、その後、AIアバターサーバーに届きます。
それが手首の筋肉が動き始めたこの位置です。
C:\Users\takata\AppData\Local\Microsoft\Windows\INetCache\Content.Word\24タイトルなし.png

はい、リベットの実験が、完璧に再現されましたよね。
そして、「今、動かそ」という意志は意識から出発してましたよね。
つまり、自由意志で手首を動かしてたんです。

意識が「今だ」と思う350ミリ秒前から脳波が出ていた原因も分かりました。
それは、意識が「今だ」と思うタイミングを無意識が遅らせてたからです。

じゃぁ、もし、無意識がタイミングを遅らせなかったらどうなっていたでしょう?
意識は、「今、動かそ」って思いついた瞬間にタイマーを見てしまいます。
そのタイマーはでっかいポリゴンで作られててガクガクです。
そんなの見たら、意識はびっくりしますよね。
「えーっ、今見てる世界は、現実じゃないのかも」って感づかれてしまいます。

意識に、仮想世界のことを気付かれないようにするのが無意識の役目です。
だから、高精細な現実世界が完成したタイミングで、意識に「今、動かそ」って認識させたんです。
この仕組みによって、何かを注意して見たとき、そこには、必ず完璧な世界が存在します。
これ、僕らが普段感じてる世界ですよね。

じゃぁ、そもそも、なぜ、仮想世界なんて厄介な仕組みを作ったんでしょう?

それは意識に意味をもった世界を見せるためです。
僕らは、リンゴを見ただけで、リンゴは甘酸っぱいとかってわかりますよね。
それがわかるのは、「見た目」と「意味」のセットで世界を認識してるからです。
これを実現するのが仮想世界です。

ただ、現実世界と仮想世界では、「今」のタイミングがちょっずれます。
わずかなずれなので、誰も気づきませんでした。
ところが、それに気付く人が現れました。
それがリベットです。

リベットは、意識が「今、動かそ」と感じた瞬間より350ミリ秒前に脳波が出てることを発見しました。
ただ、まさか、今見てる世界が仮想世界だとは思いませんでした。
そこで思いついたのが、意識は、無意識によって「今、動かそ」と思わされてるという説です。
つまり、自由意志が存在しないという説です。
世界中の科学者もこの説を信じました。

でも、自由意志がないなんて、にわかに信じられません。
だって、ジャンケンでグーを出したいと思ったらグーを出せますよね。
グーを出そうとしてもチョキしか出せないなんて経験したことないです。
これが自由意志がある何よりの証拠です。

そこで、僕が提案したのが「意識の仮想世界仮説」です。
僕らが見てるのは、現実世界そのものじゃなくて仮想世界だって説です。
ただ、この説は、現代の脳科学では技術的に検証不可能です。
そこで、コンピュータで再現して証明することにしました。
それが、今回紹介したプロジェクト・エデンです。
実際のデモは、もう少しで完成しますので、もうちょっとお待ちください。

はい、今回はここまでです。
面白かったらチャンネル登録、高評価お願いしますね。
それから、意識の仮想世界仮説はこちらの本の第一巻、リベットの実験については第二巻で詳しく語ってますのでよかったら読んでください。
それじゃぁ、次回も、おっ楽しみに!