« ITアーキテクトは中途半端なもの@デブサミDAY1 | メイン | エコとは何か »

身体の情報構造@デブサミDAY2

 デブサミ2日目です。東京大学 知能機械情報学の國吉康夫先生にお願いした「ロボットで分かった、人の構造が動きを導く」が凄すぎました。お願いしてよかったと、心から思います。

 過去の僕の気づきは以下を参照してください。
デブサミ2008(08/2/13-14)のお勧め 1/2
ロボットから考える、身体性としての構造が持つ意味


 今日、改めてお話を伺って気づいたのが「身体の情報構造」という言葉であり、ソフトウェアを「身体の情報構造を素直に駆動するもの」と捉えていたことです。

 先生は「身体は思っているより賢い」と言われています。ジャンプのようなダイナミックな動きでも、身体が持つ骨と筋肉という構造が自然に動きを作りだす部分がある。これが「身体が持つ情報構造」という部分です。この身体が持つ情報構造を駆動し、創発的に振る舞いを生むのがソフトウェアの仕事です。

 だから、振る舞いそのものを直接記述してはいけない。その点で牧野さんは「いまのソフトウェア開発は、ふるまいを直接記述することを単純化しようとしているだけ」という指摘は、痛すぎるぐらい正しいと思います。もう、BEPLとかBPMNとかプロセス記述言語は全否定です。

 振る舞いを記述すると応用ができなくなくなります。IF文に記述されていないことには対応できない。そうではなくて、身体は、ある安定した制約条件として寄りかかれる場所になります。だからこそ、そこを足掛かりに無限の可能性が広がる。パターン化は世界を狭くし、そして爆発的に広げるに書いたことにもつながります。


 その時にもっとも重要なのが相互作用からの創発です。環境との単純なインタラクションをモデル化するだけで、結果として非常に豊かなで人間的な振る舞いが生まれてくる。この写真を見てください。(以下の写真はSymbols, patterns, and behavior:towards a new understanding of intelligence Rolf Pfeiferから直接リンク)

 左上から右下にかけて床に落ちている白い発砲スチロールが集められているのが分かります。よく見ると写真の中に小さなロボットがいます。それが、これ。

 では、このロボットが何をしているのか?そう、ぱっと見ると「お掃除ロボット」ですよね。でも、このロボットには、そんな機能はありません。

 こいつは突き出した角がセンサーで、物が近づくと、その逆方向に曲がるという性質だけを持っています。ですが、中央に物がくるとセンサーが感知できないので、そのまま直進して物を押します。そのうち他の物にぶつかると、いままで押していた物を置いてどちらかに曲がってしまいます。結果として物が1か所に集まりお掃除したことになる。

 中央に物が来ると押し、他の物に当たると曲がってしまう(物を置き去りにする)という性質は、ロボットのセンサーの位置と鼻の形によって生まれています。あとは、その身体の構造が持つ仕組みを素直に駆動してあげるだけ。だから、センサーの位置が変わればソフトウェアを書き換えなくても掃除はしなくなります。身体のパラメタを操作するだけで振る舞いそのものを変化できる。

 情報構造という言葉にすごく惹かれました。どういう意図かをきちんとお伺いすることはできませんでしたが、なんとなく伝わるものがあります。身体の構造は確かに物理的な構造です。ですが、構造そのものに織り込まれている情報や、ある意味の知性がある。


 最後に牧野さんが質問されていた「ソフトウェア工学の分野でも、先生がいう身体の情報構造は存在しえるか」ということに「あると思っている」と答えられていました。それは視覚情報のように、入力データにある一定の制約やフィルタをかけることで実現されるのではないかと。

 僕もあると信じています。ITアーキテクチャを、そこまで持って行かなくてはいけない。環境やユーザーとのインタラクションとして振る舞いが創発されてくる。そして、アーキテクチャのパラメタによって、アプリケーションを変えなくても振る舞いが変化する(設定という以上の話でね)。

 そのために解決しなくてはいけないのがきむきむも聞いていた「どのように目的を与えうるのか」という問い。環境とインタラクションしているだけでは、砂浜を歩いている蟻みたいで無目的に見えてしまう。ソフトウェアが最低限の目的を達成できなくては意味がない。そのためには目的に向けて動かすだけの仕掛けが必要です。赤ちゃんは無目的に行動していたとしても、いつしか何らかの意思によって目的を自律的に設定し動きだします(少なくとも、そのように見える)。では、その発達はどこから生まれてくるのか。AIみたいな陳腐な話ではなく、議論を深めることができないものか。


 なお、相互作用からの創発を説明する例としてカオス発生器を並列に並べ、そのアウトプットの平均をインプットとして与えることでフィードバックループが発生し、創発的に意図をもったような動きをすることができるというデモを見ました。考え方はすごいシンプルなので自分でも作れる気がします。ちょっとProcessingとかで作ってみたいところです。


追記(2008/02/24):YouTubeにビデオがあったので貼っておきます。

トラックバック

このエントリーのトラックバックURL:
http://www.arclamp.jp/mt33/mt-tracback.cgi/2481

この一覧は、次のエントリーを参照しています: 身体の情報構造@デブサミDAY2:

» 社会の情報構造 送信元 レジデント初期研修用資料
ジャンプしたり、走ったり。「筋肉が収縮する」という、ごく単純な動作の集積は... [詳しくはこちら]

コメント (4)

とても興味深い記事でした。自分達の「診断学」にもかかわってきそうな内容で、痛みが放散する方向であったり、炎症が波及する、病気が「悪く」なる方向であったり、そんなものもたぶん、医師の暗黙知の形で身体構造を読んでいるのかな、と思いました。

おぉ、非常に興味がわきます。病気が悪くなる方向を「読む」のですね。身体が持っている情報構造を読み取って、そこから感じるものがあるということですか。
もしかしたら、身体というのは意思以上に本人のことを語る可能性があるのかもしれませんね。
だからこそ、自分の身体をコントロールすることで意思を制御する、例えば深呼吸なんて分かりやすいですが、そういうことなのかも。うーん、妄想が広がります。これはすばらしい気付きです。ありがとうございます。

kk:

>センサーの位置が変わればソフトウェアを書き換えなくても掃除はしなくなります。身体のパラメタを操作するだけで振る舞いそのものを変化できる。

これはむしろ弱点じゃないんですか?ちょっとしたハードの故障に対応できない柔軟性の無いシステムであることを示しているんですから。

yusukeです。返事が遅れてごめんなさい。

「身体構造を変えれば、ソフトウェアを書き変えなくても振る舞いを変えられる」という意味なので、ハードの故障うんぬんとは関係ないと思います。

故障という点でいえば、このロボットのソフトウェア的な目的は「対象物をよける」ということなので、片目になったとしても問題ありませんし、おそらく掃除もします。そういう意味では非常に故障しにくいロボットと言えます。

逆に従来のロボットの概念であれば片目になった瞬間に動かなくなるはずです。

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

About

2008年02月14日 23:55に投稿されたエントリーのページです。

ひとつ前の投稿は「ITアーキテクトは中途半端なもの@デブサミDAY1」です。

次の投稿は「エコとは何か」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Creative Commons License
このブログは、次のライセンスで保護されています。 クリエイティブ・コモンズ・ライセンス.
Powered by
Movable Type