ised議事録

06-113. 設計研第4回: 井庭崇 講演(3)

題目:「自己革新的な社会に向けての教育とメディア」

設計研第四回:自己革新的な社会に向けての教育とメディア

3. 「つくる」コミュニケーションのための新しい伝達メディア

 それでは、いよいよ最後に三番目の話題に移りましょう。最後は、つくるコミュニケーションのための新しいメディアとツールについてお話します。ここまでは、コミュニケーションの連鎖としての「つくる」ということをまず概観し、そのための教育とはなにかについて見てきました。そして最後に、そのコミュニケーションの連鎖のための新しいメディアについて提案したいと思います。

新しいメディアとしてのシミュレーション

 そこで「つくる」ためのコミュニケーションを担うメディアとして、「コンピュータ・シミュレーション」を取り上げたいと思います。

 まず問題意識として、従来の自然言語は動的なシステムや複雑な仕組みを表現するのにというところがある適していないのではないか。自然言語は、動的なものや複雑な仕組みを表現するにはすごくリニアすぎますし、数値を入れて反映させたりすることもできないからです。だとすれば、そうではない方法でコミュニケーションを支えるメディアはつくれないか、という点から出発したいと思った。

 そこで、いま科学の分野ではシミュレーションをつくっていろいろなことを理解するという動きが見られます。これをコミュニケーションのために使えないかといったことを考えているんですね。といってもその効果が実証されているわけではなくて、こういう方向のアイディアで考えているという段階です*1

 この新しいメディアの特徴は「プロトタイプ(試作品)」の作成と共有ということです。シミュレーションによって、つくりたいもののプロトタイプ、実際に動くシステムのプロトタイプをパッと作成する。それを他の人に提示することで、自分がどういうイメージを持っているのかが伝達できるというわけです。

図:シミュレーションという方法(もしも~ならば)
図:シミュレーションという方法(もしも~ならば)


 それをより詳しく説明したのが上の図です(図:シミュレーションという方法(もしも~ならば))。シミュレーションとは、用意したモデルと初期条件【INPUT】から、そのモデルを時間的に展開させることです。つまり、もし○○ならば○○となる、というIF - THENを表現したものであるというわけですね。そしてその【INPUT】と、その結果【OUTPUT】を把握することを通じて、そのモデルの特徴についての知見を得ることができる。

メディアとリテラシーは進化していく

図:メディアとリテラシーは進化していく
図:メディアとリテラシーは進化していく

 こうしたシミュレーションは、一般に科学的に利用されることが主なんですが、私は新しいメディアになりうるのではないかと考えています。これはどういうことかというと、物語のメディアというものを考えて並べてみるとわかります(図:メディアとリテラシーは進化していく)。物語を語るにあたって、声、文、絵+文、映像、プログラム、といろいろある。はじめ声の文化があって、話すということをリテラシーとして学んで話すようになる。次に、(その前かもしれませんが、)絵がある。壁画を描いたり紙に描くことで、ノウハウを学んだりする。そして文章で表現する手段を学んでいく。映像も、つい15年前まで家庭用ホームビデオはほとんどの家庭になかったものですが、いまではだいぶ安くなって簡単な操作になってきたので、普通のおじいちゃんおばあちゃんでも簡単な編集ぐらいできるような時代になってきた。映像というテクノロジーは、ついこないだまで一部の人に限られたものでしたが、いろいろな人々が使えるようになった。

 これと同じように、ゲームやプログラムもなっていく必要がある、と考えるわけです。いまはほとんどの皆さんが消費者側にまわっていて、それをつくるという話はあまりありません。大学でも情報教育が10年ぐらい前から盛んになってきたわけですが、なかなかプログラミングをJavaでやります、Cでやりますといっても、全員が使えるようにはならないわけです。家庭用ビデオが普及したように底上げをすることで、プログラミングのリテラシーを普及させることはできないものか、と考えるわけです。

シミュレーションの作成支援ツールと実行環境


図:シミュレーションの作成支援ツールと実行環境
図:シミュレーションの作成支援ツールと実行環境


 そこで、私たちのつくった"PlatBox Simulator"と"Component Builder"(PlatBox Project)を紹介したいと思います。これはもともと"Boxed Economy Simulation Platform"*2という名前をつけていましたが、最近になって名前やイメージを一新してリリースを始めました。これはもともと科学的な目的でつくられたのでそこまでユーザーフレンドリーではないのですが、興味のある方は http://www.platbox.org/ から無料でダウンロードできますので試してみてください。

 たとえば、「空港の待ち行列」モデルというものがあります。これはすごくオーソドックスなモデルなんですが、この上で動かすとどうなるでしょうか。まず、カウンターの数を設定してみます。エコノミー、ビジネス、ファースト、どれもひとつにして実行してみると、行列が画面上にできます。エコノミーカウンターは到着する人数が多いので、そうするとひとつのカウンターがあっという間にいっぱいになってしまうわけです。これではだめだなという話になって、エコノミーカウンターを2つぐらいにしてみようという判断が出てきます。実際に画面上で増やしてみると、やっぱり行列ができてしまう。これで3つにしてみよう、といろいろ試行錯誤ができるわけです。たとえばセキュリティチェックを1個エコノミーカウンターに移して、人的には同じリソースでうまい最適化が図れないかというようなことも、シミュレーションによって探索的に行うことができるわけです。

 初期設定もいろいろ変えることができます。たとえばカウンターの処理能力を変える、移動時間のばらつき具合を変える、広告をここに置いたり、ゲーム機を無料で置いたりする。あるいはエコノミークラスでバッグを預ける人を増やしたり減らしたりすることで、どのくらい差が出てくるかということも見ることができる。たとえば、飛行機会社が空港に着く前に、運送会社を使って直接空港に荷物を届けておくと、ディスカウントがありますみたいな制度を行うと、たぶんバゲージを申し込む人の割合が減る。これも組み込んでみることで、実際に行列を減らすための施策を試行錯誤できるわけです。

 次に、ここでプラットフォームというのはどういう意味か説明します。シミュレーターというのはいろいろありますが、たとえば経済のシミュレーターというと、ある目的に基づいてモデルが組み込まれていくツールのことをいいます。また、シムシティはゲームするだけにしか使えませんね。あれで経済予測しようと思っても、おそらく目的が違うので違うシミュレーターを使ってくれという話になる。いま説明した待ち行列モデルも、基本的にはある目的に特化したものです。

 そこで私たちがつくったこのシミュレーション作成ツールは、シミュレーション・プラットフォームとうたっています、つまり、これは土台なんですね。いろんなものをインポートすれば、いろんなモデルを動かせる。経済予測もできれば、カオスの実験もできる。あるいは政治のシミュレーションもできる。つくったモデルをいろいろなところに持っていくことで、シミュレーションをさまざまに動かすことができるように開発しています。

 ではモデルをどうやってつくるのかという話ですが、普通こういったモデルをつくるにはプログラミング言語JavaやCで書いてやる必要があります。そこで違うやり方を提案しているのが、Component Builderというツールの強みです。これはオブジェクト指向を記述するものとしてUMLという統一モデリング言語*3があるのですが(図:UMLでモデルを記述する)、UMLでモデル図を描いてあげるとJavaのプログラムを自動生成してくれるというものです。あるいはアクションをどういう手順でエージェントが行動するのか、独自のビジュアル言語で描いてあげれば、それをシミュレーションすることができます。つまり、プログラミングを学ばなくても、グラフィカルな言語でシミュレーションを構築することができる。

図:UMLでモデルを記述する
図:UMLでモデルを記述する

 たとえば、このisedの研究会をモデル化してみましょう。いまこの会場に、speakerとaudienceというのがいまして、speakerとaudienceはいまisedの関係性でつながっています。speakerのアクションはしゃべることで、私の話がつまらないとaudienceは居眠りをします(笑)。これを「クラス図」というかたちで、世界にどういうものが存在するのかを定義します。さらにこれをもとにソースコード生成を行うと、このアプリケーションがJavaで変換してくれるわけです。

 さらに、behaviorというものを状態遷移図で描いていきます。この状態遷移図で、起きている状態から眠っている状態になるということを定義します。Time eventというのが時間が来ることを表すわけですね。

 あとは初期設定で世界の定義をしてやる必要があります。いま何人この場にいて、どういうことになっているのかを構築します。まずagentとrelationを定義します。agentはいまspeaker=講演者と、audience=聴衆ですね。来場者が居眠りするというbehaviorを持っていることにしましょう。そしてrelation、つまり講演者と来場者は、双方向で関係性を持っています。

図:アクションの記述
図:アクションの記述

 このように関係図を記述し、変数や初期設定値、条件分岐などをフォームからパーツのように加えていくことで(図:アクションの記述)、そのモデルをもとにシミュレーションが生成されるという仕組みになっています。

モデル駆動のシミュレーション作成が可能に

 いままでソフトウェアをつくるときには、いろいろなレベルの言語がありました。昔はマシン語を使わないとプログラムが書けませんでしたし、アセンブラーという言語でメモリ上の読み書きをしていた。それから比較的なじみのあるC言語Javaのようなプログラミング言語が出てきて、プログラミング言語ソースコードを書くとソフトウェアが出来るようになりました。これがいまの時代ですね。

図:モデル駆動のシミュレーション作成が可能に
図:モデル駆動のシミュレーション作成が可能に

 そしていまソフトウェア工学の世界で行われているのは、これにモデリング言語というさらに抽象化したものをのせて、そのモデルを記述するだけでソフトウェアを作るというチャレンジです*4(図:モデル駆動のシミュレーション作成が可能に)。まだ汎用的なものはできていないのですが、私たちのつくったこのシミュレーションも同じ試みをしているわけです。つまりこういう現象や社会のモデルをつくりたい、といった概念モデルをつくると、それをComponent BuilderというツールがJavaソースコードに変換してくれて、さらにJavaのコンパイラで実行可能なものにしてくれるわけですね。

 いままでソフトウェア開発や、動くものをつくるというときには、このソースコードのレベルに習熟している必要がありました。しかし、それでは文法などのテクニカルなところにとらわれてしまうので、やはり普及は見込めないわけです。そこで、ビジュアルな操作でモデルの作成を可能にする必要があると考えています。

 というのも、もともと社会シミュレーションの分野にはコンピュータ・サイエンティストが多いんですね。社会科学者が少ないのはどうしてだろうと考えると、要するに社会科学者はあまりプログラミングが得意ではないというか、やったことがないわけです。物理学や化学ではコンピュータ・シミュレーションが当たり前のように使われているのに、社会科学で使われていないのは、スキルが違うからである、と。理系であればプログラミングできても抵抗はありませんが、経済学者、社会学者、政治学者たちは、なかなかプログラミング経験がありません。そうであれば、底上げさえすればできるんじゃないかと考えて、こういうものをつくったんです。

 こうしたシミュレーション・ツールをもっとうまく使いやすくしてあげれば、もっと日常レベルで使うことも可能でしょう。今回はあくまで20年、30年持つスパンのヴィジョンの話なので、来年再来年にそうなるという話ではないのですが。

語彙を提供するPlatBox 基礎モデル

図:語彙を提供するPlatBox 基礎モデル
図:語彙を提供するPlatBox 基礎モデル

 さて、このようなことが実現できるのは、実はメタモデルというものを定義しているからなんですね。「PlatBox基礎モデル」というのですが(図:語彙を提供するPlatBox 基礎モデル)、たとえば動くものはagentというふうにとらえます。そしてagentはgoods、つまり物を持っています、あるいは情報を持っています。そしてagentとagentの間はなにか関係を持っていて……というように、メタモデルを定義します。

 そして具体的なモデルは、このメタモデルに基づいて描かれるわけです。こういったものを定義しておかないと、ソースコードをモデルから生成するといったことはできません。あえてこれを定義し制約をかけることで、表現力が高まっているといえます。

 もちろんこのメタモデルが完全であるわけではなく、これとはまったく異なる枠組みのメタモデルはでてくるはずですし、むしろそういったものはあっていいわけです。今後このツールや枠組みがずっと生き残っていくと主張しているのではありませんし、あくまで未来のメディアのひとつとして提示しているにすぎません。

動くプロトタイプとしてシミュレーションをつくる

図:動くプロトタイプとしてシミュレーションをつくる
図:動くプロトタイプとしてシミュレーションをつくる

 さて、ここまで紹介してきました、新しいメディアとしてのシミュレーションの特徴というのは、すでに「動くプロトタイプ(試作品)」をつくるところにあるといいました。つまり、簡単にパッと動くものをつくれるということですね。社会システムでも、ビジネスシステムでもいいわけです。いったんモデルをつくれば、いろいろなパラメーターを動かして、自分のロジックは本当に正しいのかどうか、本当にそれは起こりうるのかどうかをいろいろ実験することができる(図:動くプロトタイプとしてシミュレーションをつくる)。

 つくるということは、物事をわかっていれば確実につくることができるというわけではありません。つくって試行錯誤をしてみると、気づかなかったことがかならず出てきます。それをまた調べないといけません。こうしたサイクルをすべてゼロベースでやるのは大変なので、パーツを組み合わせてプロトタイプをつくり、そこで試行錯誤をするというやり方がいいのではないか、というわけです。

コミュニケーション・メディアとしてのシミュレーション

図:コミュニケーション・メディアとしてのシミュレーション
図:コミュニケーション・メディアとしてのシミュレーション

 さらに私が考えているのは、これがコミュニケーションの手段になるのではないかということです(図:コミュニケーション・メディアとしてのシミュレーション)。たとえばこのシミュレーション・ツールはプラットフォーム化されているので、私がつくったモデルを誰かにメールで送って、メールで受け取った人が自分のプラットフォームに乗せるだけで再現できます。文字通り、このプラットフォームがある意味基盤というかインフラ的な意味も含んでいるわけです。

 たとえば、今後の経済見通しについて政府が発表したとします。GDPも表面的なグラフの結果や数値や文章が書いてあるのではなくて、こういうロジックで経済成長がこうなると思っている、と提示できる。するとたとえば総研の方が、政府のモデルをダウンロードして、政府の消費者モデルは甘いからうちの開発した消費者モデルでやると違う結果になるよね、とまた公表する。また違うユーザーが、「政府も総研もそういうけれど、うちの業界からみると実はここがブレイクスルーになる。だから実は経済がもっと違ったかたちになるんじゃないか」といったアイディアを、このシミュレーションというメディアを通じて発信できるようになるのではないか。こうした新しいコミュニケーションを想像しています。

「ヴァーチャル」

 こうしたシミュレーションの性質に関連する言葉に、「ヴァーチャル」というものがあります。シミュレーションを作成する本質とは、ヴァーチャルな動くシステムをつくることだと表現できます。

 そもそもこのヴァーチャル(virtual)という言葉の語源は、"virtu"という「力やエネルギー、最初の衝撃」を意味する言葉から来ています。フィリップ・ケオーは『ヴァーチャルという思想』(NTT出版、1997年 asin:4871885275)のなかで、こういう用法があるといいます。「樫の木はドングリの中にヴァーチャルに存在している」。つまりこれは、ヴァーチャルに存在するという表現が、内在する力や内在するエネルギーを意味しているわけです。

 そう考えると、さきほど私が紹介したシミュレーションを構成する部品というのは、実は初期条件を与えれば動くというものです。つまり、ヴァーチャルな発展内在性を持ったものを組み合わせて表現する、という新しい表現手段になっているのではないか。私たちが1回の実行で見えているものというのは、そこにひとつの値を与えたひとつの結果でしかない。しかし、モデルというものはいろいろな可能性を持っていて、値を変え、モデルの組み合わせを変えると、違った姿を見せてくれるわけですね。

ネオ・エクリチュール

 こうしたシミュレーションのメディアとしての可能性は、いわば「ネオ・エクリチュール」といえるのではないでしょうか。ケオーはこういいます。「ヴァーチャルな世界によって、具体的な対象物や想像的記号の<空間構成>を用いて自在に「象徴的視点」を生成する可能性がもたらされ、抽象的な理念をまったく新しい形で表現できるようになる。」つまりシミュレーションは実は言葉のようなメディアではなく、動くものを圧縮し、その内在性を梱包したまま運んだり、かつ組み合わせたり実行したりできるというようなメディアになるのではないかと考えているんです。

 まだまだシミュレーションというツールが完全にできているわけではありませんが、ポイントはイメージがつかみやすくなるということになると思います。つまり、あるものをどうするかについては、イメージがつくので議論しやすい。しかし、いまないものをどうやってイメージをシェアしながら合意をしつつ向かっていく、ということは非常に難しい。しかもそれがダイナミックなものであれば、なおさらです。そこで、こうしたものを表現することができるメディアが必要だと思うわけです。

 絵が得意な人はうまくできるかもしれませんし、あるいは文字が得意な人はうまくできるかもしれません。しかし、すごく巧みな文章で書かれたものを受け取ったとしても、それをまた書き換えて魅力的なものが返せるかというと、これはなかなか難しかったと思います。つまり、他の可能性を見出しにくかったと思うんです。そこでシミュレーションの本質というのは、そこにモデルがあって、私たちはその一部しか一回では見ることができず、何度も試行錯誤することで複雑な全体像が見えてくるという点にあると思います。

シミュレーションとアニメーション

 また、シミュレーションとアニメーションの差異も重要です。いわゆるセル画のアニメーションというのは、単に表象部分の結果だけをセルに移して、コマで映すものですね。しかしシミュレーションというのは、モデルが内側にあって、その結果を常に演算して表示している。奥にかならずモデルが存在しているわけです。

 つまりシミュレーションでコミュニケーションを行うことの意味は、いろんな可能性を内在したままのモデルをシェアしながら、コミュニケーションで伝えていくということなんですね。ここになにか可能性があるのではないか。いまのところ私にはこうした抽象的な表現しかできませんが、そんなことを考えています。

4. さいごに

 さいごに、もうひとつ考えていることがあります。コンピュータ・シミュレーションでパーツを組み合わせるといっても、やはり日常感覚とは程遠いですよね。そこで解決策として、フィジカル・モデリングというものが面白いのではないかと思うんです。

 たとえばブロックおもちゃの「レゴ」を思い浮かべてください。レゴのブロックのようなものが物理的に存在していて、それを組み合わせることでモデルをつくるとイメージしてみてください。さらにagentはこういうbehaviorをもっていて、この世界のどこかの場所に存在し、誰々とこういうコミュニケーションします、といったことをブロックで構築していく。おそらくこれは、皆でテーブルを囲みながらポストイットをつけてアイディアを出していくような感覚でモデリングのコラボレーションができるわけです。いまはペアモデリングも画面上で行うのが限界なんですが、それを手で触れることができて、皆でガチャガチャやる感覚でモデリングすることが可能なんじゃないか。

 このように、シミュレーションといっても、単にコンピュータのなかで行われるのではなくなっていくと思われます。これからユビキタス社会になっていくことで、物に隠れたかたちでコンピュータが搭載されていくようになれば、モデリングという作業もだいぶ変わってくるのではないかというふうに思うわけです。その研究を始めようかなと最近は考えています。

 ということで今日はいろいろな話を駆け足でしてきたんですが、まず、万人が「つくる」社会、あるいは小さなイノベーションが遍在する自己変革的な社会になるというヴィジョンを提示しました。そのとき、皆で議論しあいながらコミュニケーションの連鎖で「つくる」という認識が重要になるだろうという話をしました。そしてそれを下支えするためのコミュニケーション・スキルを重視した教育と、新しいメディアとして、シミュレーションがありうるのではないかという議論を行いました。

 以上で講演を終わります。ありがとうございました。

参考文献

  • ジョー・ティッド他『イノベーションの経営学―技術・市場・組織の統合的マネジメント』(NTT出版、2004年 asin:4757121261
  • マイケル・シュレーグ『マインド・ネットワーク』(プレジデント社、1992年 asin:4833414368
  • トム・ケリー他『発想する会社!―世界最高のデザイン・ファームIDEOに学ぶイノベーションの技法』(早川書房、2002年 asin:415208426X)
  • デイヴィッド・クローリー他編『歴史のなかのコミュニケーション―メディア革命の社会文化史』(新曜社、1995年 asin:478850510X
  • ナイジェル・ギルバート、クラウス・G・トロイチュ『社会シミュレーションの技法―政治・経済・社会をめぐる思考技術のフロンティア』(日本評論社、2003年 asin:453555241X
  • フィリップ・ケオー『ヴァーチャルという思想―力と惑わし』(NTT出版、1997年 asin:4871885275

*1:シミュレーション的なものが新しいコミュニケーションや理解のための「メディア」であるという発想については、リチャード・デューク『ゲーミングシミュレーション:未来との対話』(アスキー、2001年 asin:4756139000)なども参照のこと。

*2:註:Boxed Economy Project

*3:註:以下の記事などを参照のこと。→@IT:5分で絶対に分かるUML - 0分

*4:註:「モデル駆動型アーキテクチャMDA: Model-Driven Architecture)」あるいは「実行可能UML(Executable UML)」などと呼ばれる。以下の記事を参照のこと。→@IT:特集:MDAをツールで体験する (前編)

トラックバック - http://ised-glocom.g.hatena.ne.jp/ised/08030611