フィッツの法則

フィッツの法則（フィッツのほうそく、英: Fitts's law）とは、マンマシンインタフェースにおける人間の動作をモデル化したもので、対象の領域に移動するのに必要な時間が対象部までの距離と対象物の大きさの関数となることを予測する。フィッツの法則は、ある点を指すという動作、すなわち対象物に手や指で物理的に触れたり、あるいはコンピュータのディスプレイ上でポインティングデバイスを用いて仮想的に指したりすることをモデル化するために用いられる。1954年に ポール・フィッツが提唱した。 フィッツの法則は複数の方法で数学的に定式化されているが、一般的なものとして一次元の移動についてのシャノンの公式化がある。 これはヨーク大学教授の Scott MacKenzie が提案したもので、シャノン＝ハートレーの定理への類似性からこのように命名された。 T = a + b log 2 ⁡ ( 1 + D W ) {\displaystyle T=a+b\log _{2}{\Bigg (}1+{\frac {D}{W}}{\Bigg )}} ここで: T は動作を完了する平均時間(伝統的にこの分野の研究者は移動時間(movement time)を意味する MT を当てる) a は装置の開始・停止時間を示し、b はデバイスそのものの速度である。これらは計測データの直線近似により求められる D は、開始点から対象の中心までの距離である (伝統的にこの分野の研究者は動きの幅amplitudeを意味する Aを当てる) W は、動きの方向に測った対象物の幅である。 W は、動作の最終地点が対象の中心から±W⁄2内になければならないことから、 最終的な位置に対して許容される誤差として考えることができる である。 上式から、目標が遠いか小さい場合により多くの時間がかかる「速度と正確さ」のトレードオフを見て取ることができる。 フィッツの法則は非常な成功を収め、またよく研究されたモデルであった。フィッツの結果を再現するような実験、また若干異なる条件でフィッツの法則が適用できることを示す実験は、比較的たやすく実施することができる。そうした実験では、相関係数 0.95 以上、すなわちモデルが非常に正確であるという結果が出ることも多い。 フィッツ自身は法則について二本の論文しか発表しなかったが(1954 年にフィッツ名義、1964年に Peterson と共著)、ヒューマンマシンインタフェース (HCI) の領域で関連する研究は数百、より広い心理学の分野ではおそらく数千の研究結果が発表されている。 HCI にフィッツの法則を適用した最初の例は 1978年の Card、English、Burr (1978)によるもので、1⁄bで定義される性能評価値(IP)を用いて入力装置の性能を比較し、マウスが最も成績が良いとの結果を示している（Stuart Cardの経歴によれば、この結果は「ゼロックスがマウスを実用化した大きな理由の一つだった」 ）。フィッツの法則は、入力する方法（手、足、頭の向き、視線など）、操作体（入力装置）、物理的環境（水中を含む）、母集団（若年者、高齢者、障碍者、麻薬摂取者）、といった非常に様々な条件に対しても適用できることがわかってきている。なお定数 a、b、IPはそれぞれの条件で異なる。 グラフィカルユーザインタフェースが発明されて以降、フィッツの法則はユーザーが画面上でマウスカーソルをボタンなどのウィジェットに移動する動作にも適用されるようになった。フィッツの法則はポイント・アンド・クリックにもドラッグ・アンド・ドロップのいずれもモデル化することができるが、ドラッグの場合には、ボタンを押しつつける筋肉の緊張が大きくなるため、移動が難しくなり IP は低下する。 もともとのフィッツの法則の厳密な定義では、 適用される対象は一次元の動作にのみであり、二次元の動作には対象としない（その後エイコット・ツァイの法則により、二次元の場合にも拡張された） 単純な運動反応（たとえば人間の手による）を説明するが、通常マウスカーソルの実装に用いられるソフトウェアによるカーソルの加速は考慮していない 訓練されていない動作が対象であり、数ヶ月、数年といった訓練後に行われる動作を対象としていない（フィッツの法則は、訓練が影響しないような非常に低いレベルから振る舞いをモデル化できると主張する研究者もいる） であったが、もし、一般的に言われるようにフィッツの法則がマウスの移動にも適用できるとすると、ユーザインタフェースの設計に下記の示唆を与える。 ボタンなどの GUI 部品はある程度の大きさがなければならない。小さいとクリックが難しくなる ディスプレイの隅や端にある要素( Windows XP 'Luna'テーマの「スタートボタン」や、 Mac OS X のApple & Spotlightメニュー）は、それ以上マウスを動かしても画面の端でありカーソルは動かない位置にいるため、無限の幅を持っていることになる。このため非常に操作しやすい ポップアップメニューは、ユーザーがマウスの移動させなくてすむため、プルダウンメニューより早く開くことができる。 パイ型に配置したメニューの要素は直線的に配置したメニューの要素よりも早く、ミスが少なく選択することができる。パイメニューは中心からの距離が全て等しく短い位置におかれ、また選択する楔形の領域は非常に大きい（通常画面の端まで拡大する）ためである。 フィッツの法則は、信頼できる人間-コンピュータの予測モデルの数少ない例である。近年、フィッツの法則から派生した Accot-Zhai のステアリング法則に基づくモデルがこれに加わった。 フィッツの法則の対数項は、目標到達の困難さ ID と呼ばれ、単位はビットである。この法則は下記のようにも表現できる: T = a + b I D , {\displaystyle T=a+bID,\,} ここで I D = log 2 ⁡ ( D W + 1 ) {\displaystyle ID=\log _{2}\left({\frac {D}{W}}+1\right)} である。すなわち、b の単位は ビットあたりの時間、たとえばミリ秒/ビットである。定数 a は反応時間、ないしマウスをクリックするのに必要な時間を取り入れたものと考えることができる。 a と b は、目標点を指すという動作の条件が変化すれば変わる。たとえばマウスとスタイラスはいずれも目標点を指すために用いられるが、 aとbはそれぞれ異なる。 性能評価値 IP (スループット TP とも呼ばれる)は、次元が単位時間当たりのビットであり、動作がどの程度早く完了できるかを示す。特定の目標とは無関係である。 IP の定義には慣例的に二つの方法があり、IP = 1/b とするか(この場合、a の影響を無視してしまう）、IP = IDaverage/MTaverage とする (この場合、算出に用いられた平均的なIDに依存してしまう）。二つの方法についての議論は、Zhai の論文(2002年)を参照されたい。どのような定義が使用されても、異なる入力装置で IP を測定することで、各装置の目標点を指す動作についての性能を比較することができる。 フィッツのもともとの定式化はシャノンの公式化とは若干異なり、 I D = log 2 ⁡ ( 2 D W ) {\displaystyle ID=\log _{2}\left({\frac {2D}{W}}\right)} であった。ここでの 2 は特に重要ではなく、ID は 2 を考慮して定数 a、b の変更すれば吸収できる。シャノンの形式における "+1" は、特にD/W が小さい場合には、フィッツの元の式に大きな影響を与えない。 シャノンの形式には、ID が常に負でないこと、計測結果によりよく合致しているという利点がある。 フィッツの法則は様々な動作のモデルから導くことができる。非常に単純な例として、離散的で自己決定的な動作を考えてみよう。ここでのモデルは単純すぎるが、フィッツの法則の直感的な理解を助ける情報を提供する。 ユーザーが小動作の連続によりの目標点へ移動するものとする。それぞれの小動作は、一定時間 t かかり、目標の中心に対してその時点で残った距離に対して一定の割合 1 -r ( 0 < r < 1 )を移動するものとする。ユーザーの最初の小動作のあと、残った距離は rD となり、 n 回目の小動作の後は rnD である（すなわち、長時間が経過すると、中心までの残った距離は指数関数的な減衰関数となる）。 N を到達に必要な小動作の回数とすると、 r N D = W 2 {\displaystyle r^{N}D={\frac {W}{2}}} となる。これを N について解くと、 N = log r ⁡ W 2 D = 1 log 2 ⁡ r log 2 ⁡ W 2 D ( since  log x ⁡ y = ( log z ⁡ y ) / ( log z ⁡ x ) ) = 1 log 2 ⁡ 1 / r log 2 ⁡ 2 D W ( since  log x ⁡ y = − log x ⁡ ( 1 / y ) ) {\displaystyle {\begin{aligned}N&=\log _{r}{\frac {W}{2D}}\\&={\frac {1}{\log _{2}r}}\log _{2}{\frac {W}{2D}}\quad ({\text{since }}\log _{x}y=(\log _{z}y)/(\log _{z}x))\\&={\frac {1}{\log _{2}1/r}}\log _{2}{\frac {2D}{W}}\quad ({\text{since }}\log _{x}y=-\log _{x}(1/y))\end{aligned}}} 全ての小動作の完了に必要な時間は、 T = N t = t log 2 ⁡ 1 / r log 2 ⁡ 2 D W = t log 2 ⁡ 1 / r + t log 2 ⁡ 1 / r log 2 ⁡ D W {\displaystyle {\begin{aligned}T=Nt&={\frac {t}{\log _{2}1/r}}\log _{2}{\frac {2D}{W}}\\&={\frac {t}{\log _{2}1/r}}+{\frac {t}{\log _{2}1/r}}\log _{2}{\frac {D}{W}}\end{aligned}}} 適切な定数 a 、bを定義することで、上式は以下のように改められる。 T = a + b log 2 ⁡ D W {\displaystyle T=a+b\log _{2}{\frac {D}{W}}} この導出方法は 1983年の Card、Moran、Newell による方法と類似したものである。各ステップで決定的な方法で移動距離が変わるモデルに対する批判については、 1990年の Meyer 他による研究を参照のこと。