WISS2007

タンジブルインタフェース構築のためのアプリケーション機能自動割当手法
An Automatic Application Functions Allocation Algorithm for Constructing Tangible Interfaces

松井 香純

岸野 泰恵

寺田 努

西尾章治郎∗

Summary. TUI (Tangible User Interface) を用いてアプリケーションを操作する場合，アプリケーションがもつ機能と TUI のデバイスを関連付ける必要があるが，従来の TUI のためのツールキットではこの関連付けが面倒であるため，ユーザが様々なアプリケーションを TUI を用いて気軽に操作することは困難であった．そこで本研究では，TUI のデバイスとアプリケーション機能を自動的に関連付ける手法を提案する．提案システムでは，アプリケーションの機能に適したデバイスの種類，機能の 2 次元配置，お互いに関連する機能の扱い方などに関するユーザの嗜好に基づいて自動的にデバイスと機能の関連付けを行う．評価実験
により，87%の精度でユーザの想定した機能が割り当てられることを確認した．

1

はじめに

近年，コンピュータ上のアプリケーションはます
ます高度化し，マウスとキーボードで操作するには複雑すぎるものも多くなっている．そこで最近では，実体をもつデバイスに手で触れてアプリケーションを操作する TUI (Tangible User Interface) の研究が盛んに行われている [3]．既存の TUI として，瓶の蓋を開けると音楽が流れる musicBottle[2] など，数多
くの TUI が提案されている．実際のモノを操作するのと同様の方法で入力デバイスを操作すると，実際のモノを操作したときに得られる結果に近い感覚の結果が得られるため，ユーザにとってわかりやすいインタフェースを実現できる．最近では PC 上の既存アプリケーションを TUI を用いて操作する研究も行われている．TUI を用いてアプリケーションを操作すると，マウスで画面上のボタンを押すのではな
く実際にスライダを上下に動かすことで画面を上下にスクロールするなど，直観的で初心者にもわかりやすいインタフェースが実現できる．しかしこれまでに TUI のためのツールキットとして提案されている Phidget[1] では，アプリケーションと連携させるために専門的なプログラミングの知識が必要であったり，VoodooIO[6] ではデバイスとアプリケーションの機能を手動で対応付けしなければならないという問題があった．
そこで本研究では，TUI を用いて PC 上のアプリケーションを操作する際に，TUI のデバイスとアプリケーションがもつ機能を自動的に関連付けることで，ユーザによる煩雑な操作なしに TUI を構築するシステムを実現する．本研究ではまずユーザのデバイス配置に関する嗜好を抽出するために予備実験∗

Copyright is held by the author(s).
Kazumi Matsui and Shojiro Nishio, 大阪大学大学院情報科学研究科, Yasue Kishino, NTT コミュニケーション科学基礎研究所, Tsutomu Terada, 神戸大学大学院工学研究科を行い，得られた知見を基に機能の自動割当アルゴリズムを構築する．提案手法を用いることで，プログラム知識や面倒な対応付けの操作を必要とせず，しかもユーザの嗜好にあった関連付けが自動的に行われるため，ユーザが自分専用にカスタマイズしたTUI を簡単に構築できるようになる．
以下，2 章では想定環境について説明し，3 章では予備実験および提案手法の詳細について述べる．
4 章ではシステムの実装について述べ，5 章では割当精度の評価を行う．最後に 6 章で本論文のまとめと今後の課題について述べる．

2想定環境

本研究で想定するシステム利用環境を図 1 に示す．一般の PC に加えてタンジブルデバイスが同時に存在し，ユーザがアプリケーションを操作する際には既存のインタフェースと TUI を併用する．ユー
ザが使いたいアプリケーションにあわせて自由にタンジブルデバイスを配置すると，システムはアプリケーションの機能を自動的にデバイスに関連付ける．
ユーザがアプリケーションを切り替えるたびに，そのアプリケーションにあわせて TUI の動作は変更され，ユーザは特に個別のアプリケーションに対しての設定することなく直観的に TUI を利用できる．
本研究では TUI のデバイスとして Pin&Play を用いる [5]．Pin&Play は図 2 に示すように，通信および電力供給を行うボードとそこに配置するピン型デバイス（図 3 ）からなる．ボードは 5 層からなり，第 2 層と第 4 層には導電性の繊維の布地，第 1 層，第 3 層，第 5 層は絶縁性の素材である．第 2 層は通信と電力供給のための層であり，第 4 層はグランドである．デバイスは 2 つの端子をもち，ボードに刺し込まれるとそれぞれの端子がボードの各導電層と接続される．また，デバイスは ID をもち，スイッチやスライダといった部品の他に LED を備えていWISS 2007

3提案手法

3.1 予備実験図 1. 提案システムの利用例

ピン

ピン制御用PC

第5層
ボード

第3層

アダプター

第1層
第4層：導電層（グランド）
第2層：導電層（通信と電源）

図 2. Pin&Play のシステム構成図
LED

グランド

電源・通信

図 3. Pin&Play のデバイス（上は基本のピン型デバイス，下は左からボタン，ダイヤル，スライダ）

る．Pin&Play のボードは，デバイスの状態の変化や新たなデバイスの追加，デバイスが抜き取られたことを検出でき，さらに著者らの研究グループで提案した手法 [4] を用いることで，ボード上のデバイスの位置を取得できる．
アプリケーションがどのような機能をもっているかはアプリケーション製作者からメタデータとして提供されるものとする．また，個々のユーザのデバイス配置に関する嗜好は，あらかじめユーザごとに記述されているものとする．

本システムは，ユーザがもつ嗜好をもとに TUI に対するアプリケーション機能の割当を行うシステムである．ユーザの嗜好はパラメータとして表現されるため，どのような種類の嗜好が機能配置に影響を与えるかを明らかにする必要がある．そこで，アプリケーション機能とデバイスの割当やデバイスの配置に関する嗜好を調査し，アルゴリズム設計の方針を決定するために予備実験を行った．実験は 20 代の男女 9 人を被験者として，まず被験者に Pin&Play のデバイスを使って簡単なゲームをさせることで，デバイスの操作感を把握させ，その後下記の手順で実験を行った．まず，被験者にブラウザ，音楽プレイ
ヤー，地図ソフトという一般ユーザが頻繁に用いる3 種類 8 個のアプリケーションを提示し，それをマウスやキーボードで使わせながら，そのアプリケーションの中で TUI で使いたい機能とその機能に割り当てたいデバイスを自由にボード上に配置させた．
次にそれぞれのアプリケーションごとに数種類の機能に限定し，その機能を割り当てたいデバイスを自由に配置させた．
実験の結果，同じアプリケーションに対しても，被験者のデバイス配置にはさまざまなパターンがあることがわかった．図 4 に Google Earth に対して，機能を限定せずにデバイスを配置させた際の実験結果を示す．デバイスの配置に関して，被験者 A がズームとティルトのスライダを GUI での表示順に従ってボードの両端に分けて配置しているのに対して，被験者 B は 2 つのスライダを右端にまとめて配置するなど，機能に対しての配置方針が異なることがわかる．一方で，両者とも地図を上下左右に移動させるボタンはその意味どおりに上下左右の位置に配置しており，地図の右回転と左回転のデバイスもそれぞれ左右に配置するなど，操作上の意味を重要視して配置していることがわかる．さらに，上下左右ボタンを隣接させて配置していることから，意味の近い機能は隣接させるという方針があることもわかる．
すべての被験者の評価結果より，被験者が考慮したと思われる配置に関する嗜好を抽出した結果とその適合率を表 1 に示す．結果より，すべての被験者が，機能間の意味が明確な場合はそれに従ってデバイスを配置し，さらにほとんどの被験者は GUI の配置に近い位置にデバイスを配置することがわかった．また，GUI とは関係なく，個人の嗜好に従ってデバイスを選択して配置する被験者もいることがわかった．これは「ボリューム＝つまみ」といったよ
うに，日常生活における機器の特徴をもとに機能配置しているものと考えられる．

An Automatic Application Functions Allocation Algorithm for Constructing Tangible Interfaces

表 1. 実験結果からの被験者の嗜好
1234567

被験者の嗜好ウィンドウ上の GUI の配置に近い配置にデバイスを置く
順番に意味がある場合や，並ぶ順番が概念的に決まっているような場合は，その順にデバイスを並べる
関連性の高い機能を隣接して配置する．
関連性の高い機能には同じ形状のデバイスを割り当て，そうでない場合は違う形状のデバイスを割り当てる
同じ意味をもつ機能には，アプリケーションが変わっても同じ形状のデバイスを割り当てるデバイスに向きがある場合，その方向とウィンドウ上での変化方向が一致するようにデバイスを置く
GUI の表示とは関係なく，特定の機能は特定の位置に配置したり，特定のデバイスを選択する

適合率7/99/9
9/9
9/9

6/9
8/9
4/9

による．予備実験では，スクロールバーはスライダに割り当てられることが多い，GUI 上の配置に従ってスクロールバーに対応するデバイスは右側や下側に配置する，被験者が左手で操作したい機能は常に左側に配置される，といった傾向があった．
機能間の位置関係（嗜好 2）
意味的に 2 次元的な位置関係をもつ機能は，その位置関係に従って配置される．予備実験では，地図を上下左右に移動させるボタンは，どのユーザも上下左右の位置関係で配置していた．
(a) 被験者 A

機能間の関連性（嗜好 3，4）
意味的に近い機能や，対になる機能は，割り当てるデバイスを近くに配置する傾向がある．予備実験
では，消音ボタンと音量ダイヤルを隣接して配置する例があった．

(b) 被験者 B
図 4. GoogleEarth を操作する場合のデバイス配置

3.2 関連付けアルゴリズムの設計方針
前節で述べた予備実験の結果から，アプリケーション機能のデバイスへの割当においては，(1) 機能に対するデバイスの適性，(2) 機能間の位置関係，(3) 機能間の関連性，の 3 つが重要であり，それぞれの要素はアプリケーション固有のものと，アプリケーションによらず汎用的なものとに分けられることがわかった．それぞれに関して以下に説明する．
機能に対するデバイスの適性（嗜好 1，5，6，7）
ユーザがアプリケーションの機能を操作するとき，操作に適したデバイスの種類や，デバイスに適した位置は，その機能の特徴に対してユーザがもつ嗜好上で挙げた 3 つのユーザの嗜好にはそれぞれ，アプリケーション固有のものと，アプリケーションによらず汎用的なものがある．予備実験では，あるユー
ザはどの音楽再生ソフトでも，停止ボタンと再生ボタンを横に隣接して配置する傾向が見られたが，アプリケーションの GUI 上のボタン配置に影響され，2 つのボタンの左右が入れ替わる場合があった．

3.3 関連付けアルゴリズム
提案手法では，前節で抽出した方針に従い，下記の手順でアプリケーション機能とデバイスの関連付けを行う．

STEP0 関連付け情報の記述
関連付けを行う前準備として，ユーザの嗜好を，各機能に対するデバイスの適切さを表すスコア（S d ），デバイスの相対位置に関するスコア（S p ），機能間の関連の強さ（S r ）としてあらかじめ記述する．S dはある機能に対して，絶対位置やデバイスの種類に基づくユーザの嗜好を表すスコアで，S p はデバイス間の相対位置に関する嗜好を表すスコア，S r は関連する機能に割り当てたデバイス間の，距離に関する嗜好を表すスコアである．絶対位置や距離に関する嗜好は，ボードの各辺を 10 分割し，それぞれの段階WISS 2007ごとにスコアを付加する．スコアはユーザが好むものほど高い値を設定する．またこれらの嗜好を，アプリケーションによらないものと，アプリケーションに特化したものと 2 種類用意する．システムは，操作しようとするアプリケーションに特化した嗜好がある場合はそれを優先して用いることになる．

STEP1 グループ列挙
縦スクロールバーは，スライダやダイヤルのように 1 つのデバイスによる操作だけでなく，2 つのボタンで上下にスクロールさせるという方法も考えられる．そこで，機能が割り当てられる可能性のある，複数デバイスのすべての組合せを列挙する．


機能とデバイスの関連付け

STEP2

アプリケーション機能とデバイス (および複数デバイスのグループ) の全ての組合せを列挙し，以下の式を用いて各組合せの評価値を求める．

Vi =pd(Sij+ Sij)+

jj−1

jr
Sijk

(1)

kd
ここで Vi は組合せ i に対する評価値を意味し，Sijは組合せ i における機能 j を割り当てたデバイスにp対するスコア，Sij は組合せ i における機能 j を割りrは当てたデバイスの位置関係に対するスコア，Sijk
組合せ i における機能 j と k を割り当てたデバイスの距離に関するスコアである．列挙されたすべての組合せに対して V を計算し，最大のスコアをもつ組合せを採用する．

STEP3



<function><v_scrollbar><h_position value="same" score="5" /><v_slider num="1" color="" score="4" /><dial num="1" color="" score="3" /></v_scrollbar><h_scrollbar><v_position value="8" score="3" /><v_position value="9" score="5" /><v_position value="10" score="3" /><h_slider num="1" color="" score="4" /><dial num="1" color="" score="3" /></h_scrollbar><prev><v_position value="same" score="2" /><button num="1" color="" score="2" /></prev></function>


図 6. 嗜好の記述例

パラメータ修正STEP2 で提示した関連付けがユーザの想定と異なる場合，ユーザは間違い訂正モードに入り，誤った関連付けが行われたデバイスをシステムに通知する．
システムは，通知されたデバイスの履歴も考慮しながら，正しい関連付けに寄与した全ての嗜好のスコアを一定量増やし，間違いに寄与した嗜好のスコアを一定量減少させることでパラメータを修正する．
drの絶対位置や Sijkの距
正しい嗜好情報の中でも Sij
離に関するスコアについては，段階の近いスコアにも修正値を伝播させることで汎用性を持たせる．修
正後，再度関連付けを行い，ユーザの嗜好に合う関連付けになるまでこの操作を繰り返す．

4

図 5. シミュレータの表示例

実装

システムのプロトタイプを実装した．プロトタイ
プは，想定環境に示したように Pin&Play のボード上にデバイスを配置すると，自動的にフォアグラウンドのアプリケーションの機能を配置したデバイスに割り当て，実際にユーザがデバイスを操作することでアプリケーションが制御できる．各アプリケーションがもつ機能情報に関しては，筆者らが XML形式であらかじめ記述しておいた．また，図 4 に示すシミュレータも実装し，実際に TUI を用いた場合と同様の機能を PC 内で実現できるようにした．

ユーザの嗜好は XML 形式で記述する．機能に対するデバイスの適性に関する嗜好の記述例を図 6 に示す．
この記述では，機能に対するユーザの嗜好情報を列挙しており，個々の機能，その機能の位置に対するスコア，デバイスの種類に対するスコアを記述している．システムはこれらの嗜好に基づいてアプリケーション機能とデバイスの関連付けを行う．関連付けがユーザの想定したものと異なった場合は，ユーザはホットキーによりシステムを間違い訂正モードに移行させ，関連付けが誤っているデバイスを操作することにより誤りをシステムに通知する．再びホットキーによりシステムは自動的に再関連付けを行う．

An Automatic Application Functions Allocation Algorithm for Constructing Tangible Interfaces

表 2. 割当の精度

5

アプリケーション
InternetExplorer
Lunascape
FireFoxGoogleEarth
プロアトラス
SonicStage
iTunesWindowsMediaPlayer

機能数66655545A141B666-C
66645325

割当成功率-0.4291.0000.881

ユーザごとの割当が一致した機能の数
DEFG
666666555055445444545

評価実験

5.1 割当の精度
PC の操作に習熟した 20 代の男女 9 名を被験者とした評価実験を行った．被験者は予備実験の被験者と同じであり，予備実験の結果をもとに筆者らが嗜好情報をあらかじめ用意した．表 2 に，対象としたアプリケーションとその割当精度を示す．本評価では，代表的なウェブブラウザ，音楽プレイヤー，地図ソフトをそれぞれ数種類用い，機能をある程度限定した上で被験者にデバイスを自由に配置させた．
表ではユーザごとに，ユーザが想定した割当とシステムが実際に行った割当が一致した度合いを示している．平均すると，提案アルゴリズムは 87%の一致率を実現しており，実用に耐え得る精度であることを確認した．
結果を詳細に見てみると，ユーザ I は GUI の配置にデバイスの配置が影響されるユーザ，ユーザ E，ユーザ G は GUI の配置にデバイスの配置が影響されないユーザであったが，ユーザ I には GUI の影響を考慮した関連付け，ユーザ E，ユーザ G には GUIの影響を考慮しない関連付けになるような嗜好情報ファイルになっていたため，ほぼ正しい割当が行われていることがわかる．嗜好を適切に設定することで，割当成功率が 100%となるユーザのデータが多く見られた一方で，ユーザ D や I のプロアトラスの例のように，関連付けが全く一致しない結果もみられた．これは，現状の割当アルゴリズムが，複数の異なる機能を 1 つのデバイスに割り当てることを想定していなかったり，対象となるデバイスの動作特性とあまりにも異なる機能が割り当てられたためである．例えば，「戻る」と「次へ」の機能をスライダ1 つへと割り当てたユーザがいたが，これは 2 つの機能を単一のデバイスに割り当てており，しかもアナログ値をとるスライダというデバイスに ON/OFFを行う機能を割り当てようとしている．このような割当は本アルゴリズムでは考慮されておらず，したがって連鎖的に他の機能の割当へも影響を及ぼした
結果，関連付けの精度が悪くなっていた．この問題を解決するためには，個別にユーザの特殊な要望を

0.857

1.000

0.857

1.000H666-I
66650545J
5552
51.000

0.881

0.833

記述できる枠組みが必要となる．

5.2 修正の精度
前節の実験において割当が成功しなかったユーザ
A，C，D，I，J の 12 個の事例に対して修正アルゴリズムを適用し，正しい割当になるまでに必要な訂正回数を調べた．ただし，12 個のうち 9 個は，前節最後に問題として挙げた割当不可能な組合せであり，訂正アルゴリズムを用いても修正できない．一方，残りの 3 つの事例に関しては，それぞれ 4 回，1回，1 回で修正できた．この結果より，修正アルゴリズムでユーザの嗜好を学習できており，最初に入力されたユーザの嗜好情報が十分でない場合でも学習により補完が可能であるといえる．

5.3 プロファイルの自動構築
今回のプロトタイプシステムでは，ユーザの嗜好情報はあらかじめ入力されているとした．しかし，実際にシステムを利用する場合，ユーザが自分の嗜好を適切に把握して嗜好情報を作成するのは困難であり作成作業の手間も大きい．そこで，嗜好情報の自動構築を行うことが本研究の課題となる．本稿ではその第 1 段階として，提案アルゴリズムにおける訂正インタフェースを用いて嗜好情報の自動構築ができるかどうかの実験を行った．具体的には，嗜好情報のスコアすべてを 0 にし，修正アルゴリズムにしたがってアプリケーション特化のスコア情報を更新していくことで，意図した機能割当を実現するプロファイルを作成できるかを調査した．実験結果を表3 に示す．表にはユーザごとに，ユーザの想定する関連付けになるために適用した訂正アルゴリズムの回数を示している．表中の ∗ は割当不可能な組合せを含むため，割当が一致するプロファイルを作成できないものを表す．用いた修正アルゴリズムは，正しい割当の組が多く見つかれば早く収束するため，回数に極端な差がみられた．また，今回の実験は単一の割当にいかに早くたどり着くかのみを評価しているため，他のアプリケーションにも適用可能なプロファイルかどうかといった評価を行っていない．汎WISS 2007

表 3. 訂正の精度
アプリケーション名
InternetExplorer
Lunascape
FireFoxGoogleEarth
プロアトラス
SonicStage
iTunesWindowsMediaPlayer

A∗
∗
∗

B
21812-C
191312∗173810用的なユーザ嗜好の自動構築を行うためには，高度なプロファイル自動構築アルゴリズムが必要となると考えられる．

6

まとめ

本研究では，TUI を用いて PC 上のアプリケーションを簡単に操作するために，アプリケーションの機能とタンジブルデバイをの自動的に関連付けする手法を提案し，プロトタイプシステムの実装を行った．
本稿では，予備実験を行うことでユーザの TUI 配置に関する嗜好を抽出し，その結果に基づいてアルゴリズムを実装することで，87%の精度でユーザの意図通りのアプリケーション機能割当を自動的に行うことができた．また，割当が間違っている場合にも訂正モードを用意することで，ユーザの嗜好の更新を容易に行えるようにしている．提案システムを用いることで，ユーザは TUI を用いて快適に PC 上のアプリケーションを操作できるようになる．
今後はユーザの嗜好を記述することが難しいという問題に対して，簡単な記述ツールの作成や，一般的なユーザ間で共通の嗜好や傾向をテンプレート化するなどユーザに嗜好を記述する負荷を与えない方法を提案する予定である．また，5.3 節で述べたように，ユーザに一切記述をさせずにプロファイルを構築する方法についても検討を進める．さらに，本研
究では Pin & Play システムについてのみ実装および評価を行ったが，他の TUI デバイスを用いた場合でも，そのデバイスに対する位置や機能割当への嗜好を記述すれば，提案アルゴリズムはそのまま適用できる．したがって，今後は 3 次元 TUI など他の TUIデバイスへ提案手法を適用し，また，PC 操作の初心者や子供などを対象とした運用評価を行い，提案アルゴリズムの有効性を評価する予定である．

謝辞
本研究の一部は文部科学省科学研究費補助金基盤
研究 (A)(17200006)，および特定領域研究 (19024046)，
中山隼雄科学技術文化財団の研究助成によるものである．ここに記して謝意を表す．

ユーザごとの訂正回数
DEFG
H
201717171616 19
71310
∗
7173
∗
184820
∗
11-I
16
4
1015
∗
3712J
7102∗
∗

参考文献
[1] S. Greenberg and C. Fitchett: “Phidgets: easy development of physical interfaces through physical widgets,” in Proc. of the ACM symposium on User interface software and technology(UIST 2001), pp. 209–218 (2001).
[2] H. Ishii, A. Mazalek, and J. Lee: “Bottles as a Minimal Interface to Access Digital Information,” in Extended Abstracts of Conference on Human factors in
Computing Systems (CHI 2001), pp. 187–188 (Mar.
2001).
[3] H. Ishii and B. Ullmer: “Tangible bits: towards seamless interfaces between people, bits andatoms,” in Proc. of Conference on Human factors in
Computing Systems (CHI 1997), pp. 234–241 (Mar.
1997).
[4] Y. Kishino, T. Terada, N. Villar, H. W. Gellersen,
and S. Nishio: “A Position Detection Mechanism
enabling Location-aware Pin & Play,” International
Journal of Smart Home, Vol. 1, No. 1, pp. 31–39(Apr. 2007)．
[5] K. Van Laerhoven, N. Villar, A. Schmidt,H. W. Gellersen,M. Hakansson,andL. E. Holmquist: “Pin&Play: The Surface as
Network Medium,” IEEE Communications Magazine, Vol. 41, No. 4, pp. 90–96 (Apr. 2003).
[6] N. Villar, K. M. Gilleade, D. Ramduny-Ellis, andH. W. Gellersen: “The VoodooIO gaming kit: areal-time adaptable gaming controller,” in Proc. ofAdvances in Computer Entertainment 2006 (ACE2006) (June. 2006).