アンドロイドを作るためにLispを勉強している(5)

10 25, 2010


回はアハムービーを見ていただこうと思う。


た物を片っ端から忘れて行く。何もみていないくせにしっかり見ているような気がする。ぱっと写真を見せられればその瞬間に空は空のシンボルに置き換わり、山は山のシンボルになる。空も山もどうでもよくなってさわやかな印象だけを残す。その印象が見ていないものをみているように思いこませる。実際には写真の端の4つの角と中央の人物の顔くらいしか見ていない。

ぼくの背後には本棚がある。そこにあるべきだし、さっき部屋に入ったときも違和感がなかったのでやっぱりそこにあると考えるのが自然だろう。人間が見ていると思い込んでいるものはこれとほとんどかわらない。本棚が何段あったかは思い出せない。別のデータからなら、たとえば所有している本のデータから本棚の棚数を推論することは可能かも知れないが、いまぼくの背後の本棚は「本棚」というシンボルでしかない。見たと思い込んでいるものは片っ端から抽象化されていく。物や状況によって圧縮率がことなり、しかもトリガーはものすごく情緒的だ。ある人がどの車に乗っているか覚えていなかったり、特定の人の車に関しては色や車内の様子まで思い出せたり。本の並びは思い出せなくても「あれ、だれか触ったかな」と感じたり。普通目が行かないだろうという場所に落ちている女性の髪の毛に気がついたり。

論とは忘却だ。人間が見た、あるいは経験した記憶は全てクオリアに置き換えられている。「本の位置が変わった"気がする"」というのは映像データの比較ではない。事象を記憶しているわけではなく、その時点での情緒のパラメータを記憶していると見るべきだと思う。本が入れ替わっていると、本棚の映像を覚えていなくとも本棚の印象が変わる。映像自体は削除してしまう程の豪快な非可逆圧縮データと、驚くべきはそのデータからの生成能力の高さ。クオリアを人間が獲得した究極のデータ圧縮方式と言わずしてなんとしよう。そしてこれはぼくがぶつかったアンドロイド製作の壁でこのシリーズを書いたのはその記念。また何かに気がつけば続きを書こうと思う。


←アンドロイドを作るためにLispを勉強している(4)

広告

アンドロイドを作るためにLispを勉強している(4)

10 24, 2010
成果すらコラかちにこら


なたは今、屋根の下でマウスを右手にしていることと思う。もしかしたらモバイルかもしれないが屋根の下の居る可能性が高く、屋根が落ちてくる可能性もゼロではない。そして屋根が落ちてくる可能性の下でこの文章を興味深く読んでくれているかもしれないし、おもろくもないのでもう閉じようとしているかもしれない。屋根が落ちてくるとすれば、きっとマウスをクリックしたり、ホイールしたり、ましてや文章を読む前に逃げ出すのが正解だ。隕石、飛行機の墜落、テロ。可能性は確かに存在する。そんな大事ではなくても、財布をすられるかも知れないし、モニターの裏からゴキブリが出るかもしれない。コンピューターに推論をさせるとこれらの可能性を排除することができない。フリーズしてしまうのだ。これがフレーム問題と呼ばれている。

は人間がなぜフリーズしないかというと、天井の存在を忘れているからだ。客観的にみれば「考慮する必要のない事柄を見ていない」といえるし、人間の情報処理上は「存在していない」し、本人は「ちゃんと見えている」と思い込んでいる。確かに何か動きがあれば意識に上ってくる。照明のひもが軽く揺れれば「地震かな」と思い、それが予震である可能性、近い将来天井が落ちてくる可能性にまで考えか及ぶかもしれない。不安がとまらなくなると人間にもパニックというフレーム問題が起こる。もっと身近な例えをすると本を読んでいる周りで騒がれれば読み進められなくなる。

識していない物」を「認識している」と思い込んでいる。おかしな話に聞こえるかもしれないが盲点の話を聞けばそういうこともあり得ると納得してもらえると思う。

間の視界には「盲点」がある。まっすぐ前を向いて両手を前に出して1メートル20センチくらい手を広げる。そして指をさしたあたり、そこは本当はなにも見えていない場所なのだ。目の構造上、眼球の内側から外側へ神経を通す穴があって網膜が欠けている部分があるという話だ。だけどちゃんと見えている。見えているように思い込んでいる。脳が、見えていない場所のデータを補完しているからだ。


←アンドロイドを作るためにLispを勉強している(3)
アンドロイドを作るためにLispを勉強している(4)→

広告

アンドロイドを作るためにLispを勉強している(3)

10 18, 2010
治すかに葉に疎にチリ 二未開理に奇異味噌意

アンドロイドを作るためにLispを勉強している。なんか簡単に作れそうな気がしたから。

ぜ簡単に作れそうな気がしたか。HONDAのasimoというロボットがある。おそらくasimoは技術の結晶だ。だけど学習しない完成品だ。でも学習させるなら最初は歩けなくったっていいはず。人間だって最初はハイハイしている。

律思考を手に入れれば自律歩行は後からついてくる。三半規管に変わるセンサーと足さえつければ自分で歩くようになる。つまり、立つこともできない、ろくに意識もない赤ちゃんを作ればいいんだ。なんだ簡単じゃん。簡単に作れそうな気がしてしまう。実際立って歩くだけなら簡単だと思う。ところがろくに意識もない赤ちゃんのポテンシャルを再現できないことに気がつく。ここからはフレーム問題と人間が獲得した究極のデータ圧縮方式の話になる。

は戻り、理性はif文の積み重ねではないかということ。人工生命ティエラというプロジェクトがある。調べてもらった方が早いが簡単に言うと、最初の最初の原始的な一種類の一匹の生物をヴァーチャルに進化させていくというものだ。一種類の生物がやがて多様性を得て、生き残るための能力を獲得していく。人間の理性もこのようにして生まれたものだろう。人間の赤ちゃんを作ることでさえ困難であるならばもっと手前から作ってやれ、というのであれば理に適っている(もっともティエラはそういうプロジェクトではないが)。問題は、現実世界という処理能力で36億年かかったという事実だ。それでも案外、世界一のスーパーコンピューターを使えば数十年で理性を手に入れることができるのかもしれない。二番じゃダメかもしれない。

asimoを作るか、赤ちゃんを作るか、地球をシミュレートするか。現実問題として個人が趣味できるのは二番目のような気がする。仮に財力があったとしても二番目が正解のような気がする。とりあえず殻はAIBO程度でいいんだ。ハイハイから学ぶのであれば体にあわせてプログラムする必要もない。というか、とりあえずはアプリケーションの中でいいだろう。


←アンドロイドを作るためにLispを勉強している(2)
アンドロイドを作るためにLispを勉強している(4)→

広告

アンドロイドを作るためにLispを勉強している(2)

10 17, 2010
digit matrix




アンドロイドを作るためにLispを勉強している。なんか、簡単にできそうな気がしたから。

際のところ30年も前に人工知能ブームなるものがあったらしい。少なからずコンピューターが身近になり始めた頃だろうか。宇宙開発もすすみ、鉄腕アトムなんていうアニメもあり、SFそのものが身近になり始めたころだろうか。きっとみんながこう思っていたことだろう。なんか、簡単にできそうな気がする。実際には月に行くよりも難しかったわけだ。

ぜやってみないとわからなかったか。それは人間が当たり前にこなしていることが、実はものすごいことだということに気がつかないからだ。当たり前にこなしているがゆえに気がつかないのだ。

工知能、AIなんて今どきよく目にするかもしれない。テレビゲームをすればAIが相手をしてくれるし、炊飯器だってAIで動いているかも知れない。しかし大抵はプログラムされたとおりに動くまがいものだ。「if文」で動いているに過ぎない。

くのイメージしている、狭義の人工知能というと人工意識にちかい。意識というのも曖昧なもので、虫にだって意識はあるだろと言われるかもしれない。しかし最初に述べたように、アンドロイドを作るためにLispを勉強している。人間の意識を作りたいんだ。ぼくのいう人工知能とは某漫画でいうところのゴーストがこれにあたる。おそらく。

し話をもどして、虫にだって意識はある。ぼくはそう思う。でも虫なら「if文」を詰め込めば作れそうな気がする。ハードはとりあえず別にして、たとえばラジコンで動くカブトムシがあればそれにカブトムシの習性くらいプログラムで何とか与えられそうな気がする。カブトムシならば「待て」と言われたときに待たせる必要がないからだ。

ゃあ、犬はどうか。目の前にえさが置かれ、「待て」といわれれば犬は考える。近い未来において、どう行動することが自分の欲求を最大限に満たすことができるかを考える。これを「推論」といい、そしてこれがアンドロイドを作る上で最大の障壁だ。カブトムシは推論しない。ともすると蜘蛛の張った罠を回避することもあるかもしれないが、これは「推論」ではない。「もし、蜘蛛の巣があったら迂回する」というプログラムを持っているだけだ。むかーしむかし、沢山のカブトムシのなかに、突然変異で「もし、蜘蛛の巣があったら迂回する」遺伝子を獲得した個体がいて、その遺伝子をもっている個体は死ぬ確立が低かったというだけだ。蜘蛛の巣に突っ込むとどうなるかを考えているわけでも、経験によって学んだわけでもない。「あれなんかきもいから避けよう」くらいにしか思っていない。だから食わず嫌いに近い。対して犬が「待て」を前にして躊躇するのは食わず嫌いではない。待つべきか、待たざるべきかを考えることができるのだ。

まりifの構文っていうのは本能だ。犬になるとむき出しの「本能」を理性の膜がおおう。理性の膜は赤い腫れ物のような本能を覆い、より多くの欲求を満たすためにそれを庇っているのだ。ズキズキとうずく本能をおさえて、涎をたらしながらお座りしてご飯を待つ。欲求を満たすために。欲求をみたすために? そう、つまり理性だって突き詰めれば最大限の欲求を満たすための行動、本能の一種だ。ならばif文の積み重ねで形成されたものじゃないのか? そうかもしれない。たしかにそうかも知れない。


←アンドロイドを作るためにLispを勉強している(1)
アンドロイドを作るためにLispを勉強している(3)→

広告

アンドロイドを作るためにLispを勉強している(1)

10 15, 2010
lisp on editor


Lispという言葉をはじめて耳にしたのは、ゲーデルの第二不完全性定理が証明されたという話の中でだった。そのときはさしてLispの方に興味をもたなかったが。

二不完全性定理とは「もし系の中に矛盾がなかったら系の無矛盾性を証明できない」というものだ。ゲーデルは「数論」という我々にはあまり馴染みのないジャンルの学者だったのだが、整数に矛盾がなかったら整数で整数を語ることができないんじゃないか? ということに気づいてしまった。「系」といってもいろいろある。この世界そのものだってそうだ。つまりゲーデルは神に矛盾があること、運命なんて存在しないことに気がついてしまった。

してそれを証明したのがプログラム言語Lispだ。世界で二番目に古いプログラミング言語。美しいと形容され、一時期は人工知能の言語ともてはやされ、あるバンドは「神はLispで世界を作った」と歌った。何が美しいかってその小ささだ。8つの単語を覚えるだけであなたはコンピューターの中に世界を作ることができるだろう。



(car cdr cons quote eq atom cond defun)





て、なぜ神は世界を作るのにLispを選んだかというと、LispはLisp自身にLispを語らせることができるからだ。テクニカルなことを言うと、他のプログラミング言語とちがって関数と変数のデータの形が一緒なので引数に関数を突っ込める。Lisp自身がデータなのだ。変幻自在で自由度が高い。かわりに「こういうときはこうする」というようなわかり易さがない。トイレで8つの単語を覚えてもパソコンの前で途方にくれる。

Lispはとにかく書いていて楽しい。問題は実用的でないことだ。これだけ魅せられる人が居ながら、Lispで書かれたすごいソフトというのがあまりない。あなたが神でもない限り、もっと人間の思考に近い言語で事足りるということなのかもしれない。


アンドロイドを作るためにLispを勉強している(2)→

広告
プロフィール

じょなさん

Author:じょなさん
元バックパッカーの引きこもり、世界に飛び出す引きこもり。当初は役立つ情報を、と思っていたんだけど自分の興味しか書けないね。

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ