arc の日記

はてなダイアリーから引っ越してきました。さらに新しい記事は https://junkato.jp/ja/blog/ で書いています。

ワークショップ(WISS2011, 天橋立)

http://www.ustream.tv/recorded/18873679

一昨年に続き去年も「インタラクティブシステムとソフトウェアに関するワークショップ」WISSで発表してきました。画像をクリックすると講演動画に飛びます。質疑応答で厳しい質問を何個も受けましたが、そのぶん期待されているものとポジティブに受け取っております!笑顔えがお*1

Sharedo

発表では、人とロボットでTo-doリスト共有できるWebサービス「Sharedo」を紹介しました。発表資料や会場内外でいただいた質疑応答の概要などがWISS2011特設サイトにあります。また、α版サービスをhttp://www.sharedo.info/で試験公開しています。Twitterアカウントを使ってログインして使ってみてください。

前年の研究との関連

研究紹介については特設サイトの資料に譲るとして、ここではもうちょっと大きな視点で前年の研究「Matereal」との関連を書いておきます。二つの研究を通して僕が自覚的に取り組んできたテーマは「実世界プログラミング」です。Human-Computer Interactionやロボティクスを専門にしていない人*2に「プログラミング」というとどうしてもソフトウェアやロジックの話が前面に出てきて、目的(アプリケーション)がデジタルな情報を操作することに終始しがちです。

でも僕は、人々の実生活がもっとプログラミングの恩恵に与れるようになったらいいな、と思って研究をしています。これは別に、いわゆるロボットに限った話ではありません。例えば我が家では、家の電気を点けたり消したり掃除ロボットに適当な時間に掃除をさせたり、といったことがスマートフォンからできるようになっています。

日常的に使うちょっとしたものを日曜大工する人というのは昔からいますが、僕はこれをプログラミングにも拡張したいのです。そんな日曜プログラミングの道具になれば、と思って作ったのがツールキットのMaterealであり、それをさらに、狭義のプログラミングが要らないアプリケーションにまで落とし込んだのがSharedoでした。(SharedoはMaterealを使って実装されています。)

Human Actuation

さて、僕が修士から博士にかけてこのテーマをやってきて、途中で気づいてテーマに織り込み始めたことが一つあります。それは、人とロボットの区別をあえてしないでみることです。この二つがいろんな意味で違うのは当たり前なんですが、僕が言いたいのは、それらを同じように扱ってみることでいろいろ分かることがあるだろう、ということです。昔、映画監督の押井守氏に取材したとき「機械が何処まで人間に近づけるか、それよりも、人間は何処まで機械に近いものなのか。それを明らかにする方が遥かに面白いと思う」と仰っていたのを大変面白く感じたものですが、これが今更響いてくるとは、自分でも驚きました。

例えばMaterealはnew 持ってこい(new おひるごはん(), 俺.getLocation() /* おなかへった */).assign(だれでもいいから).start();のようなプログラムを書くことで実際に人に対して指示を出す*3ことができます。Sharedoではもっと直接的にこのテーマを扱っていて、人に対して指示を出す方法とロボットに対して指示を出す方法が「To-doリストにタスクを追加する」だけで、一緒です。

人とロボットの区別をしないツールキットを作り、誰でも実用できるWebアプリケーションを作って、ユーザスタディをやってみたりいろんな人に話をしてみたところ、興味深かったのは、けっこうみんな頭を使わないでロボットみたいにやり過ごせるならそのほうがいいやと思っていたことです。むしろプログラムに指示を出されたい、自分に自由意志が認められないことを愉しめると仰っている方もいました。この問題は、HCIの分野ではHuman Computationと非常に関わりがあります。Human Computationは、もともとOCR(画像から文字を認識する)のような人間が正解を知っている作業について、実際に人にやらせてみて、その結果をもとに機械を賢くしていこうという目的で始まった研究です。

Human Computationにおいては、仕事をやる人間が正しく(サボらず間違えずに)やってちゃんとうれしい報酬を与えるところが研究のミソで、要するに(A)コンピュータに対して(B)アルゴリズムと(C)電力を与えて処理をさせる代わりに(A)人間の(B)認知能力を(C)何らかのインセンティブを与えることによってコンピュータの代替として機能させています。インセンティブを他者との競争などゲームの仕掛けで与えようという議論は最近Gamificationと呼ばれていて、ソーシャルゲームの設計などで盛んに援用されていますね。認知能力を利用したぶんちゃんとお金を支払うというのは、AmazonMechanical TurkKYBERがやっています。とくにMechanical Turkについては、HCIの分野ではTurKitなどのツールキットが研究開発されるほど注目されています。

ちょっと話が逸れましたが、僕は、MaterealやSharedoをHuman Computationの考え方を実世界に持ってきた例だと考えていて、Human Actuationと勝手に呼んでいます。Human Actuationの既存のアプリケーション例としては、Amazon自動化された倉庫が倉庫で働く人に対して箱に詰めるべき商品と箱を渡して箱詰めだけを求めていたり、宅配業者のカーナビシステムが宅配する人に次向かうべき場所をどんどん指示していたり、さまざまな仕事が人に対してロボットのように(自由意志の入る余地があまりない形で)働くことを求めているのが挙げられるでしょうか。同様に、Sharedoは、例えばお手伝いさんに仕事を頼むためのユーザインタフェースとして使えるはずです。情報技術が一方では人々の創造性を伸ばす目的で使われ、一方では資本主義の名の下に、生身の人間の労働力と金銭を効率よく交換するための機構として利用されていることの意味を考えさせられます。Human Computationについては思想地図〈vol.2〉の「ゲームプレイ・ワーキング 新しい労働間とパラレルワールドの誕生」で触れられていたり、あとコンピュータが仕事を奪うという本もありますね。

僕個人としては、創造性至上主義のようなものは信じておらず、先に書いたとおり「頭を使わないでロボットみたいにやり過ごせるならそのほうがいいや」に非常にリアリティを感じています。楽できるならそのほうがいいんです。それでも、ロボットのように働く仕事は「付加価値が少ない」ため一般的には給料がいいわけではありません。それじゃ楽ができないですね。研究としては、この間のバランスの取れたアプリケーションに繋がることができたらいいなと考えています。最近では研究よりアプリケーションのほうが先を行っていることはけっこうあって、ヒントになるのはGigwalkのように位置情報を使って近くの人にちょっとしたこと(Gig)を頼めるサービスなどでしょうか。未来の自分に何かを頼むという意味で、電子手帳のリマインダ機能にも同じ側面がありそうです。

いくつか考えていることはあるのですが、研究としてはまだまだこれからです。Human Actuation以外にも興味を持っていることはあるので、いったいこの先どうなることやら…。

*1:同セッションで一つ手前に講演された辻田さんの研究です。

*2:じゃあHCIのPhysical Computingやロボティクスが扱ってきた「実世界」との違いは何なのか?という話になるわけですが、Physical ComputingはCookyのように人の生活空間の中でデバイスが動き回るといったことを基本的に想定していませんし、一方でロボティクスは(教育用途などを除けば)もう少し複雑なセンシングを用いた自律動作するデバイスを対象にしたものが多く、ちょっと狭義かつテクニカルです。論文を書くときにもこの感触を説明するのに苦労するのですが、現在の技術レベルで言えばそれらの間のことをやろうとしています。将来見返したときには、Physical Computingの文脈でロボットのようなことをやろうとしていた、というアプローチの違いとして認識されるであろう研究だと思っています。最近では、ツールキットのような抽象的なものだと分かってもらいにくい=研究にしづらいということを理解したので、より具体的な部分で差が分かりやすい研究をしようと考えるようになりました。成果は、今年以降、出していければと思います…。

*3:いわゆるロボットに指示を出すときはシリアルポートにコマンドを書き出しますが、人に対して指示を出すときは指示内容をGUIで表示するとか、メールを出しちゃうとか、いろいろなやり方があるはずです。少なくともMaterealがターゲットにしているアプリケーションでロボットがこなすべきタスクはだいたい人でもこなせる程度に高レベルかつ誤差を許容するのでこういうことができます。例えば、書道ロボットに対して出す指示をGUI経由で人に出してみて伝言ゲームのような遊び方をしてみたことがあります。サンプルを見ないで、筆の向きの右回転・左回転・前進などの指示だけで元の形を書き上げるの、難しいですよ!