増井俊之, 高林哲. 置くだけ主義」による情報家電制御.
情報処理学会 2002年夏のプログラミングシンポジウム 発表資料. September 2002.

「置くだけ主義」による情報家電制御

ブロードバンド環境や, 情報家電の一般化により 大量の情報を誰でもどこでも活用できるようになりつつある一方、 情報のソースは増加する一方で機器はどんどん複雑になってきており、 筆者のように頭脳リソースの貧困な凡人にとっては 情報機器を活用するのが難しくなってきている。 ビデオの録画予約すら充分難しいのに、 情報家電機器など本当に使えるのであろうか。

現在使われている機器について考えてみると、 電話やテレビはだいたい誰でも使えているし、 FAXやオーディオ機器もそれほど問題にはなっていない。 目覚まし時計の設定もまず大丈夫である。 一方、 ビデオ録画をいつも間違いなく設定できる人は珍しいし、 計算機で複雑な操作を行なうことができる人はかなり少数である。 どちらかというと計算機に近いような情報家電機器を 誰でも使うことはできるのであろうか。

難しいという点では同じでも、 計算機のように本質的に複雑なものをを使いこなす難しさと ビデオ予約の難しさは質が異なるように思われる。 計算機を使いこなすためには、 キーボード操作のように長年の精進が必要な部分があるし、 プログラミングのように抽象的な思考が要求される場合があるが、 ビデオ予約の場合はそのようなものは必要なく、 単に情報を検索したり条件を指定したりできればすむからである。 ビデオ予約が難しいのは、単に現在の装置の設計が悪いからであり、 本質的に難しい問題ではなさそうに思える。 プログラムを作ったり良い文章を書いたりすることは 誰にでもできるわけではないが、 単純にデータをコピーしたり印刷したりする操作は誰でもできるはずで、 これらを一緒にすることは正しくないであろう。

頭脳リソース不足への対処法

頭脳リソースの足りない人間でも情報家電を使うことができるようにするためには 以下のような対策が必要だと思われる。

可能な操作の数を減らす

リモコンのボタンや 計算機デスクトップのアイコンやメニューのように 一度に沢山のものを提示されると、 どれを操作すればよいのか混乱するし間違いも多くなる。 一方、 リモコンにボタンがひとつしかなければ とりあえず押してみるしか仕方がないから、 少なくともボタンを押す前に悩むことはないし、 操作を間違うことはも少ないであろう。

操作が非常に単純だが便利な自動ドアについて考えてみると、

やりたいこと= ビルに入ること
できること = ビルに近付くこと
機械の動作 = ドアが開く
と決まっており、 これ以外の操作や反応はほとんど考えられないから、 ユーザはほぼ絶対に使い方を間違うことはありえない。 金槌を持つと何でも釘に見えると言うが、 それでも困らないようなシステムならばよいわけである。

抽象概念の排除

筆者を含めてほとんどの人は抽象概念を扱うことが苦手だと思われる。 計算機では操作対象やコマンドなど いろいろなものに名前をつけて扱うことが多いが、 テレビやビデオに名前をつけて扱うというのは 目の前のテレビを直接操作するのに比べると面倒だしわかりにくい。 また、情報家電でなんらかの手順を実行させようとするとき、 プログラムを実行するという概念だけでも相当難しいが、 変数関数のように目に見えないものを使って 条件判断繰返しを行なうことはほぼ絶望的である。

一方、 具体的に目に見えるものは扱いが楽である。 目の前のビデオからテレビに線がつながっていれば、 ビデオからテレビに信号が流れるだろうことが一目でわかるし、 目覚まし時計の短針が時間とともに回転して 設定時刻を示す針に重なるだろうということは誰でも想像することができる。 このように、 具体的に目に見えるものの関係はわかりやすいので、 主に記号や名前を使うテキストベースのプログラミング言語のかわりに、 より具体的なものを使ってプログラムを作ることができるビジュアルプログラミングシステムが 音楽などの世界でよく使われている。 記号を多用するプログラミング言語に比べ、 ビジュアルプログラミング言語では 情報の流れや因果関係を図としてわかりやすく表現することができるので、 抽象的指向を行なう頭脳リソースが足りない人でも なんとか活用することができる。

つまり、頭脳リソースが足りない人でも情報家電を使えるようにするためには 操作方法が強く限定された具体的な物だけを使うようにすればよいと考えられる。

情報家電機器の用途

情報家電機器はどういうことに使うのであろうか。 まず以下のような単純な欲求の実現が考えられる。 条件などの指定が多少必要になることもあるかもしれない。 このように、 一般的な家庭環境で情報家電を使って行なう操作は、 情報の流れの出所と行先と条件を指定できればほぼ充分で、 情報の加工はほとんど必要ないと思われる。 情報を編集したり新しく作ったりするための操作は ある程度難しくても仕方がないが、 情報家電の操作やWebブラウジングなどの操作は、 既に存在するデータの移動をコントロールしているだけにすぎないので 簡単な操作しか必要ないはずである。

テレビやプロジェクタを使うときに必要な操作は、 誰かが作った番組や映画の情報を テレビモニタやスクリーンに送るというだけの操作であるし、 音楽を聴くために必要な操作は、 CDやネットワーク上の音楽情報をスピーカまで転送する 操作ということになる。 また、ビデオ録画という操作は、 情報の転送に若干条件を付加するという作業になる。 このように、 情報家電機器の操作の基本は 情報の流れを制御することであると考えると、 複雑に思える情報家電操作も わかりやすい簡単なものとすることができるはずである。

音楽を聴く場合であれば、 どの音楽ソースをどの出力装置に転送するかだけを指定することさえ できればよいわけであるし、映像情報でも同じである。 どういう情報を/どういう条件で/どこに転送するか/ を柔軟に指定することさえできれば、 ハードウェアやネットワーク環境がどれほど複雑になっても ユーザにとって簡単に使うことができるはずである。

情報の流れの直感的な制御

情報の流れを指定することさえできれば良いといっても、 指定の方法はいろいろ考えられる。 キーボードで計算機を使うのに慣れた人ならば、 曲やサーバの名前を指定したり 流れの方向を記号で指定すればよいと考えやすいが、 このような手法は頭脳リソースの足りない人間には困難である。 最近のグラフィカルインタフェースに慣れた人ならば、 曲やサーバをアイコンで表現したり ドラッグ&ドロップで流れを指定すればよいと考えやすいが、 目の前のテレビやスピーカを扱うのに計算機画面を使うというのは 靴下掻痒の感がある。 名前や記号や計算機画面などを使うことなく、 やりたい操作を直接的に指定できるようにするための仕組みが必要である。

実世界の事物と計算機内の情報とを融合させることにより 計算機をより直感的に使おうとする 実世界指向インタフェースの考え方が近年かなり浸透してきている。 従来の計算機では、 あらゆる情報は計算機の内部のみに存在し、 それを外部から手探り的に操作するという使い方が普通であったが、 実世界指向インタフェースシステムでは 計算機の中身と実世界の事物を融合することにより、 計算機のより直感的な使い方が可能になっている。 情報家電製品に対しても実世界指向インタフェースの考え方を応用することにより 情報の流れを直感的に制御することができるようになる。

置くだけ主義

前述の「自動ドア」は 最も成功した実世界指向インタフェースシステムのひとつであろう。 ドアというものは 開けたり閉めたりする操作しか実行できないし、 建物に入るためには必ずドアの前に行く必要があるので、 ドアの前に立つことによりドアが開くという挙動は非常にわかりやすく、 使い方がわからない人はほとんどいないと思われる。 初めて自動ドアを見た人ならば戸惑うこともあるかもしれないが、 一度見てしまえばその使い方を忘れることはほとんど考えられない。

一方、オーディオ製品や情報機器は、 目的とする動作がドアの開閉と同じぐらい単純な場合であっても、 それを実行するための操作がはるかに複雑になっている場合が多い。 たとえば台所でCDを聴きたい場合、 アンプやCDプレーヤが居間に置いてあるとすると、 居間のCDプレーヤを操作しなければ台所でCDを聴くことはできない。 リモコンを使うこともできるが、 その場合でもリモコンを居間のプレーヤに向ける必要がありので 直感的でないことに変わりはない。 音楽サーバが屋根裏にあれば天井にリモコンを向けるのであろうか。 音楽のソースを表現するCDもスピーカも台所にあるのであれば、 それらだけを使って音楽を聴くことができてあたりまえのはずなのに、 現在の機器ではこのようなことができないようになっている。 ドアの前に立ってもドアが開かず、 別の場所にある装置を使ったり 別の場所にリモコンを向けて操作したりしなければならない ようなものだといえるであろう。

台所でCDを簡単に聴きたいという問題は、 スピーカのところにCDを置くだけ でその曲を聴くことができるようなシステムを作ることにより解決できる。 一見複雑と思われるような仕事でも、 このように置くだけで解決できるようなものが沢山ある。 何かを置いたら何かが起こるというのはかなり直感的であり、 間違えることが少ないと考えられるため、 情報家電の制御方式としては向いていると思われる。

ものを置くだけで必要な処理が自動的に実行される 実世界指向インタフェースシステムはいくつも提案されている。 マクギル大学のJeremy Cooperstockは、 ビデオテープや書類を置くだけで会議室のAV機器が正しく設定される 「Reactive Room」というシステムの実験を行なっていた[1]。 Reactive Roomには、 普通の会議室と同様にビデオやプロジェクトや書画カメラが置いてあるが、 ユーザがそれらの接続などの設定を行なわなくても、 書画カメラのところに書類を置けば 自動的にその出力がプロジェクタに接続されて投影されたり、 ビデオをデッキに挿入すると自動的に ビデオの出力がプロジェクタに接続されたり、 必要なものをそこに置くだけで必要な操作を実行することができる。

Reactive Roomのような考え方を用いることにより、 いろいろなものを置くだけで情報家電機器を制御することができる。 例えば以下のようなシステムが考えられる。

このように、 物を置くだけで情報の流れを制御するシステムを用意することによって 情報家電を簡単にコントロールすることができるケースは かなり多いと思われる。

置くだけ主義にもとづくシステム

このような置くだけ主義にもとづいたシステムの実装をいくつか紹介する。

PlayStand

PlayStandは、 スピーカの横にCDを置くだけでその中身を 聴くことができる「置くだけ再生」システムである。 CDをスタンドに置くと自動的にそのCDの再生が始まり、 スタンドから離すと停止する。

[待機中] [再生中]
CDが置かれていない状態 CDを置くと電灯がついて音が聞こえる

CDの中身はあらかじめMP3化して音楽サーバに格納してある。 CDケースにはRFIDタグが隠してあり、 スタンドの下に隠してあるリーダでそのIDを読みとることが できるようになっている。 IDとMP3ファイルの関係はあらかじめ登録してあるので、 IDを認識した時点でMP3ファイルを再生することにより 「置くだけ再生」が実現できたことになる。 PlayStandはこのように非常に単純な原理のシステムであるが、 わかりやすさは満点である。 台の上にはスピーカとCDとスタンドしかないので、 ユーザの実行できる操作はCDをスタンドに置くことぐらいであり、 スタンドに置けば音が鳴るというのは単純明解である。 原理的には台所でも風呂場でもトイレでも同じように使えるので、 自宅でぜひ使いたいという感想をもらうことが多かった。

現在のPlaystandは、 アンテナで読み取ったIDをシリアルに変換してPCに送出するモジュールと Linuxで実装している。 「置くだけ」演奏システムのために パソコンとRFIDリーダを使っていることになるが、 使いやすさを考えると将来はこの程度の富豪的な投資は充分正当化されるだろう。

CD Fax

[送信側] 転送
→
[受信側]
転送元トレイ 転送先トレイ

CD Faxは、 データの入ったCDを送信トレイに挿すことにより、 CDが転送されて転送先の受信トレイから出現するシステムである。 もちろん本当にCDが転送されるわけではなく、 データだけが転送されて転送先のCD-Rで焼かれて トレイからイジェクトされるだけであるが、 うまく作れば本当にCDが転送されているように見せることができると思われる。 FAXを送る程度の簡便さでCDの中身を送ることができるし、 「転送トレイに挿せばデータが相手に送られる」というのは かなり理解しやすいと思われる。

筆者は時々田舎の両親から写真を送れと言われるが、 デジカメ写真を印刷して送るのは面倒だし、 CD-Rなどに焼いて送るのもやっぱり面倒である。 自分の家と両親の家の両方にCD Faxを設置しておけば、 写真の入っているCDやメモリカードを挿入するだけで 相手の家のCD FaxからCDが出現するので、 写真でもビデオでも気軽に送ることができそうな気がする。 友人や家族でCD便りをやりとりするのも一興だろう。

現在のCD Faxは独自のプロトコルを用いてdRubyで実装されているが、 RFC2305で規定される インターネットFAXプロトコルのような 標準的なプロトコルを用いることもできるだろう。

置くだけプログラミング

筆者は、 FieldMouse[2]というデバイスを使って ビジュアルプログラミングと同様の方法で 実世界指向インタフェースのプログラミングを行なう 実世界指向プログラミング[3]を提唱している。 FieldMouseはマウスと同様の機能を実世界で実現できるデバイスであり 置くだけよりも高度な制御が可能である一方、 凡人には使い方が難しいかもしれない。 簡単な条件指定や情報の流れの制御程度のプログラミングであれば 置くだけ方式でも充分実用になるだろう。

参考文献

[1] Jeremy R. Cooperstock, Sidney S. Fels, William Buxton, Kenneth C. Smith. Reactive Environment. Communications of the ACM, Vol. 40, No. 9. pp.65-73, September 1997. http://www.cim.mcgill.ca/~jer/research/rroom/
[2] Itiro Siio, Toshiyuki Masui, Kentaro Fukuchi. Real-world Interaction using the FieldMouse. Proceedings of the ACM Symposium on User Interface Software and Technology (UIST'99), pp.113-119, November 1999.
[3] 増井俊之. 実世界指向プログラミング. 第40回情報処理学会 冬のプログラミングシンポジウム予稿集, pp.19-25. January 1999.