(57)【要約】【課題】リアルタイムにユーザの操作習熟度を精度よく判定すること。【解決手段】判定装置１０は、ユーザの操作により移動するマウスカーソルの操作履歴に関する情報を取得する。そして、判定装置１０は、取得された情報を用いて、単位時間あたりのマウスカーソルの速度の変化を算出する。続いて、判定装置１０は、算出された速度の変化に応じて、ユーザの習熟度を判定する。【選択図】図１
2018018141.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの操作により移動するマウスカーソルの操作履歴に関する情報を取得する取得部と、
前記取得部によって取得された情報を用いて、単位時間あたりの前記マウスカーソルの速度の変化を算出する算出部と、
前記算出部によって算出された速度の変化に応じて、前記ユーザの習熟度を判定する判定部と
を備えたことを特徴とする判定装置。
【請求項２】
前記判定部は、前記算出部によって算出された速度の変化が所定値を超えているか否かを判定し、前記所定値を超えていると判定した場合には、前記ユーザを習熟者と判定し、前記所定値以下であると判定した場合には、前記ユーザを未習熟者と判定することを特徴とする請求項１に記載の判定装置。
【請求項３】
前記算出部は、前記取得部によって取得された情報から所定の時間間隔ごとの前記マウスカーソルの移動距離を算出し、該移動距離に基づいて所定の時間幅における平均速度を算出し、異なる時間幅の平均速度同士の差の絶対値を前記速度の変化として算出することを特徴とする請求項１に記載の判定装置。
【請求項４】
前記算出部は、直近の前記マウスカーソルの速さ平均が大きいほど値が小さくなる重みづけ関数を用いて、前記速度の変化から加減速度指標を算出し、
前記判定部は、前記算出部によって算出された加減速度指標に応じて、前記ユーザの習熟度を判定することを特徴とする請求項１に記載の判定装置。
【請求項５】
前記算出部は、前記マウスカーソルの速さ平均が大きいほど値が小さくなり、且つ、前記マウスカーソルの速さ平均が一定値より小さい場合には前記速さ平均が小さいほど値が小さくなる重みづけ関数を用いて、前記速度の変化から加減速度指標を算出し、
前記判定部は、前記算出部によって算出された加減速度指標に応じて、前記ユーザの習熟度を判定することを特徴とする請求項１に記載の判定装置。
【請求項６】
前記習熟度が高い操作履歴に関する情報を用いて算出された複数のマウスカーソルの速度の変化と、前記習熟度が低い操作履歴に関する情報を用いて算出された複数のマウスカーソルの速度の変化とのうち、所定値以上の数と前記所定値を下回る数をそれぞれ計数し、該所定値以上の数と前記所定値を下回る数とが、前記習熟度が高い操作履歴に関する情報を用いて算出されたマウスカーソルの速度の変化と、前記習熟度が低い操作履歴に関する情報を用いて算出されたマウスカーソルの速度の変化とで最も偏る値を前記所定値とすることを特徴とする請求項２に記載の判定装置。
【請求項７】
判定装置によって実行される判定方法であって、
ユーザの操作により移動するマウスカーソルの操作履歴に関する情報を取得する取得工程と、
前記取得工程によって取得された情報を用いて、単位時間あたりの前記マウスカーソルの速度の変化を算出する算出工程と、
前記算出工程によって算出された速度の変化に応じて、前記ユーザの習熟度を判定する判定工程と
を含んだことを特徴とする判定方法。
【請求項８】
ユーザの操作により移動するマウスカーソルの操作履歴に関する情報を取得する取得ステップと、
前記取得ステップによって取得された情報を用いて、単位時間あたりの前記マウスカーソルの速度の変化を算出する算出ステップと、
前記算出ステップによって算出された速度の変化に応じて、前記ユーザの習熟度を判定する判定ステップと
をコンピュータに実行させるための判定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、判定装置、判定方法および判定プログラムに関する。
【背景技術】
【０００２】
従来、ユーザのレベル判定や、ユーザインタフェース評価に用いるために、アプリケーション操作におけるユーザの操作習熟度を判定する技術が知られている。例えば、ユーザの習熟度に応じてその都度必要な支援情報を提示する技術などにおいては，操作に応じてリアルタイムに操作習熟度を判定する。
【０００３】
このようなユーザの操作習熟度を判定する手法として、例えば、マウスダウンやキーアップなど、特定の操作と操作の間の時間のばらつきから操作習熟度を判定する手法が知られている（例えば、非特許文献１、２参照）。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】中村喜宏、加藤康之、満永豊、“ユーザの思考時間に着目した習熟度指数の提案”、電子情報通信学会論文誌、Ａ  Ｖｏｌ．Ｊ７９−Ａ  Ｎｏ．２、１９９６年２月、ｐｐ．４１６−４２３
【非特許文献２】鳥羽美奈子、櫻井隆雄、森靖英、“ＰＣ操作ログの特徴量とオフィスワーカーのストレス量の相関分析”、電子情報通信学会論文誌、Ｄ  Ｖｏｌ．Ｊ９５−Ｄ  Ｎｏ．４、２０１２年、ｐｐ．７４７−７５７
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の従来技術では、リアルタイムにユーザの操作習熟度を精度よく判定することができない場合があるという課題がある。例えば、特定の操作と操作の間の時間のばらつきから操作習熟度を判定する手法では、インタフェースの仕様上、一つの操作単位の開始と終了が判別できない場合には、ユーザの操作習熟度を精度よく判定することができない。なお、統計的な指標を用いてユーザの操作習熟度を判定することも考えられるが、標本値が多数必要となり、リアルタイムでの習熟度判定が難しい。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明の判定装置は、ユーザの操作により移動するマウスカーソルの操作履歴に関する情報を取得する取得部と、前記取得部によって取得された情報を用いて、単位時間あたりの前記マウスカーソルの速度の変化を算出する算出部と、前記算出部によって算出された速度の変化に応じて、前記ユーザの習熟度を判定する判定部とを備えたことを特徴とする。
【０００７】
また、本発明の判定方法は、判定装置によって実行される判定方法であって、ユーザの操作により移動するマウスカーソルの操作履歴に関する情報を取得する取得工程と、前記取得工程によって取得された情報を用いて、単位時間あたりの前記マウスカーソルの速度の変化を算出する算出工程と、前記算出工程によって算出された速度の変化に応じて、前記ユーザの習熟度を判定する判定工程とを含んだことを特徴とする。
【０００８】
また、本発明の判定プログラムは、ユーザの操作により移動するマウスカーソルの操作履歴に関する情報を取得する取得ステップと、前記取得ステップによって取得された情報を用いて、単位時間あたりの前記マウスカーソルの速度の変化を算出する算出ステップと、前記算出ステップによって算出された速度の変化に応じて、前記ユーザの習熟度を判定する判定ステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、リアルタイムにユーザの操作習熟度を精度よく判定することができるという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】図１は、第一の実施の形態に係る判定装置の概要を示す構成図である。
【図２】図２は、マウスカーソル操作情報記憶部に記憶される情報の一例を示す図である。
【図３】図３は、加減速度指標の算出処理例を説明する図である。
【図４】図４は、ユーザの習熟度に応じた支援情報の表示例を説明する図である。
【図５】図５は、ユーザの習熟度に応じた支援情報の表示例を説明する図である。
【図６】図６は、第一の実施の形態に係る判定装置における習熟度判定処理の流れを示すフローチャートである。
【図７】図７は、第一の実施の形態に係る判定装置における加減速度指標と重みづけ関数の関係を説明する図である。
【図８】図８は、第二の実施の形態に係る判定装置における加減速度指標と重みづけ関数の関係を説明する図である。
【図９】図９は、第三の実施の形態に係る判定装置における加減速度指標と重みづけ関数の関係を説明する図である。
【図１０】図１０は、第三の実施の形態に係る判定装置における重みづけ関数を説明する図である。
【図１１】図１１は、実験用のアプリ画面例を説明する図である。
【図１２】図１２は、実験結果例を説明する図である。
【図１３】図１３は、閾値設定処理を説明する図である。
【図１４】図１４は、閾値設定処理を説明する図である。
【図１５】図１５は、判定プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１１】
以下に、本願に係る判定装置、判定方法および判定プログラムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態により本願に係る判定装置、判定方法および判定プログラムが限定されるものではない。
【００１２】
［第一の実施の形態］
以下の実施の形態では、第一の実施の形態に係る判定装置１０の構成、判定装置１０の処理の流れを順に説明し、最後に第一の実施の形態による効果を説明する。
【００１３】
［判定装置の構成］
まず、図１を用いて、判定装置１０の構成を説明する。図１は、第一の実施の形態に係る判定装置の概要を示す構成図である。図１に示すように、この判定装置１０は、通信処理部１１、入力部１２、出力部１３、制御部１４および記憶部１５を有する。判定装置１０は、ＰＣ（Personal  Computer）等のユーザ端末（図示省略）と通信可能に接続されたサーバ装置であるものとして説明するが、判定装置１０の機能をユーザ端末が有していてもよい。
【００１４】
通信処理部１１は、接続されるユーザ端末との間でやり取りする各種情報に関する通信を制御する。例えば、通信処理部１１は、ユーザ端末からユーザの操作により移動するマウスカーソルの操作履歴に関する情報を受信する。
【００１５】
入力部１２は、キーボードやマウスなどの入力デバイスであり、各種情報の入力操作を受け付ける。出力部１３は、ディスプレイなどの出力デバイスであり、各種情報を出力する。
【００１６】
また、記憶部１５は、制御部１４による各種処理に必要なデータおよびプログラムを格納するが、特に本発明に密接に関連するものとしては、マウスカーソル操作情報記憶部１５ａを有する。例えば、記憶部１５は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置などである。
【００１７】
マウスカーソル操作情報記憶部１５ａは、ユーザの操作により移動するマウスカーソルの操作履歴に関する情報を記憶する。例えば、マウスカーソル操作情報記憶部１５ａは、図２に例示するように、マウスカーソルの位置に関する情報として、マウスカーソルの画面上のｘ座標およびｙ座標を時系列順に記憶する。例えば、ユーザ端末のウィンドウサイズが１２００×１２００ピクセルであって、ユーザ端末が０．１秒ごとにマウスカーソルのｘ座標およびｙ座標を操作履歴として記録しているものとする。マウスカーソル操作情報記憶部１５ａは、後述する取得部１４ａによりユーザ端末から取得された操作履歴におけるマウスカーソルのｘ座標およびｙ座標を記憶しているものとする。図２の例では、マウスカーソル操作情報記憶部１５ａは、マウスカーソルの位置としてｘ座標「１１５０」およびｙ座標「３７８」を記憶し、０．１秒後のマウスカーソルの位置としてｘ座標「１１４８」およびｙ座標「３７６」を記憶している。
【００１８】
制御部１４は、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有し、これらによって種々の処理を実行するが、特に本発明に密接に関連するものとしては、取得部１４ａ、算出部１４ｂおよび判定部１４ｃを有する。ここで、制御部１４は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路やＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路である。
【００１９】
取得部１４ａは、ユーザの操作により移動するマウスカーソルの操作履歴に関する情報を取得する。例えば、取得部１４ａは、所定の時間ごとにマウスカーソルの操作履歴として、マウスカーソルの位置として、マウスカーソルのｘ座標およびｙ座標をユーザ端末から取得し、マウスカーソル操作情報記憶部１５ａに格納する。なお、取得部１４ａは、マウスカーソルの操作履歴を取得するタイミングとして、操作履歴の取得指示を受け付けたタイミングで取得してもよいし、ユーザ端末がマウスカーソルの操作履歴のデータを一定量以上蓄積したタイミングで取得してもよい。また、取得部１４ａは、マウスカーソルの操作履歴として、マウスカーソルの位置ではなく、例えば、マウスカーソルの移動距離を取得してもよい。この場合には、例えば、ユーザ端末が所定時間（例えば、０．１秒）ごとにマウスカーソルの移動距離を計算しているものとする。
【００２０】
また、取得部１４ａは、取得したマウスカーソルの操作履歴のうち、所定のアプリケーションの開始から終了までのマウスカーソルの操作履歴のみを抽出し、マウスカーソル操作情報記憶部１５ａに格納してもよい。ここで、所定のアプリケーションとは、マウスカーソルを頻繁に移動する操作が必要なアプリケーション（例えば、神経衰弱のゲームアプリケーションや図面作用の作業アプリケーション）である。つまり、このようなアプリケーション起動時のマウスカーソルの操作履歴のみを抽出することで、ユーザのマウスカーソルの操作の特徴がより明確な操作履歴のみを用いて、後述の算出部１４ｂおよび判定部１４ｃの処理を行うことができる。
【００２１】
算出部１４ｂは、取得部１４ａによって取得された操作履歴を用いて、単位時間あたりのマウスカーソルの速度の変化を算出する。具体的には、算出部１４ｂは、取得部１４ａによって取得された情報から所定の時間間隔ごとのマウスカーソルの移動距離を算出し、該移動距離に基づいて所定の時間幅における平均速度を算出し、異なる時間幅の平均速度同士の差の絶対値を加減速度指標として算出する。なお、ここで速度とは、特に断らない限り、単位時間当たりの移動距離の大きさのこととする。
【００２２】
例えば、算出部１４ｂは、マウスカーソルの操作履歴を用いて、ある時間間隔Δtごとにマウスカーソルの移動距離ｒを算出し、そこからある時間幅（ｎ×Δｔ）における平均速度Ｖａｖｅを算出する。そして、算出部１４ｂは、異なる時間における速さの平均の差の絶対値｜Ｖａｖｅ２−Ｖａｖｅ１｜として算出される速度の変化の大きさを、ある時間幅Ｔにおける加減速度を表す指標Ａとする。このＡの値が大きければ大きいほど時間幅Ｔにおけるマウスカーソルの動きは減速と加速を繰り返しており、したがって不定期な速さの変化を示していると考えられる。逆にＡの値が小さい時には、時間幅Ｔにおけるマウスカーソルの動きは減速と加速の変化の小さいメリハリのない動きを示していると考えられる。
【００２３】
ここで、図３の例を用いて、加減速度指標の算出処理例を説明する。図３に例示するように、算出部１４ｂは、時間間隔Δt１〜Δｔ４それぞれのマウスカーソルの移動距離ｒ１〜ｒ４を算出する。そして、算出部１４ｂは、時間幅Δt１〜Δｔ３の移動距離ｒ１〜ｒ３を時間幅Δt１〜Δｔ３で除算して平均の速さＶａｖｅ１を算出し、時間幅Δt２〜Δｔ４の移動距離ｒ２〜ｒ４から平均の速さＶａｖｅ２を算出する。そして、算出部１４ｂは、平均の速さＶａｖｅ１と平均の速さＶａｖｅ２との差の絶対値｜Ｖａｖｅ２−Ｖａｖｅ１｜を算出し、算出した値を、時間幅Ｔ＝４Δにおける加減速度指標Ａとする。
【００２４】
なお、図３の例では、時間間隔Δt１〜Δｔ４の各距離ｒ１〜ｒ４から加減速度指標Ａを算出する場合を説明しているが、その後、算出部１４ｂは、例えば、所定の時間間隔ごとに、マウスカーソルの操作履歴を用いて、マウスカーソルの移動距離を算出し、上記と同様に、加減速度指標Ａを算出する。つまり、例えば、算出部１４ｂは、上記の加減速度指標Ａを算出してから、所定の時間間隔が経過すると、時間間隔Δｔ５の距離ｒを算出し、上記と同様に、間幅Δt２〜Δｔ４の移動距離ｒ２〜ｒ４を時間幅Δt２〜Δｔ４で除算して平均の速さＶａｖｅ１を算出し、時間幅Δt３〜Δｔ５の移動距離ｒ３〜ｒ５から平均の速さＶａｖｅ２を算出する。そして、算出部１４ｂは、平均の速さＶａｖｅ１と平均の速さＶａｖｅ２との差の絶対値｜Ｖａｖｅ２−Ｖａｖｅ１｜を算出し、算出した値を、時間幅Ｔ＝４Δにおける加減速度指標Ａとする。このような処理を繰り返し行って、複数の加減速度指標Ａが算出された場合には、例えば、複数の加減速度指標Ａの平均値を算出し、該平均値を加減速度指標Ａとして、後述する判定部１４ｃの処理を行うようにしてもよい。なお、以下の説明では、最新の加減速度指標Ａを用いて、後述する判定部１４ｃの処理を行うものとする。
【００２５】
判定部１４ｃは、算出部１４ｂによって算出された速度の変化に応じて、ユーザの習熟度を判定する。例えば、判定部１４ｃは、算出部１４ｂによって算出された速度の変化が所定値（閾値）を超えているか否かを判定し、所定値を超えていると判定した場合には、ユーザを習熟者と判定し、所定値以下であると判定した場合には、ユーザを未習熟者と判定する。
【００２６】
つまり、判定装置１０は、加減速度指標Ａの値がある一定の閾値を越えている時間は、ユーザを習熟者と判定する。なお、加減速度指標Ａの値がある一定の閾値を越えている時間帯が一定時間以上継続した場合に、ユーザを習熟者と判定するようにしてもよい。
【００２７】
なお、判定部１４ｃは、加減速度指標Ａに応じて、ユーザの習熟度を段階的に判定してもよい。例えば、判定部１４ｃは、４つの閾値「０．１」、「０．２」、「０．３」、「０．４」と加減速度指標Ａとを比較し、ユーザの習熟度を「１」〜「５」の５段階評価のうちいずれの習熟度であるか判定してもよい。つまり、例えば、加減速度指標Ａが０．１以下である場合には、ユーザの習熟度を「１」と判定し、加減速度指標Ａが「０．１」を超えているが「０．２」以下である場合には、ユーザの習熟度を「２」と判定し、加減速度指標Ａが「０．２」を超えているが「０．３」以下である場合には、ユーザの習熟度を「３」と判定し、加減速度指標Ａが「０．３」を超えているが「０．４」以下である場合には、ユーザの習熟度を「４」と判定し、加減速度指標Ａが「０．４」を超えているが「０．５」以下である場合には、ユーザの習熟度を「５」と判定する。
【００２８】
このように、第一の実施の形態に係る判定装置１０は、マウスカーソル移動の速さの変化からマウスカーソルの加減速度の大きさに応じて、操作の習熟度を判定する。つまり、例えば、操作に習熟している者はある意図を持って操作コンポーネント（例えば、ボタンやコンボボックスなど）を操作するため、目的のコンポーネントへのマウスカーソルの移動と、目的のコンポーネントを操作のためのマウスカーソルの停止を繰り返す傾向にあると考えられる。逆に操作に習熟していない者は、明確な操作意図を持たずにマウスカーソルを動かしたり、操作するメニューやボタンの識別を迷ったりすることなどが多いため、マウスカーソルの移動は速さの変化が少ない、メリハリのない動きを示す傾向にあると考えられる。このため、マウスカーソル移動の速さの変化からマウスカーソルの加減速度の指標に応じて、操作の習熟度を判定することで、リアルタイムにユーザの操作習熟度を精度よく判定することができる。
【００２９】
また、上記のように、ユーザを習熟者の判定を行った結果を基に、例えば、ユーザの操作を支援する支援情報の表示制御を行ってもよい。このような表示制御処理は、例えば、ユーザ端末が行ってもよいし、判定装置１０とは異なる表示制御装置（図示せず）が行ってもよいし、判定装置１０が行ってもよい。ユーザ端末が表示制御を行う場合には、判定部１４ｃが判定した結果をユーザ端末に通知し、判定装置１０とは異なる表示制御装置が行う場合には、判定部１４ｃが判定した結果を表示制御装置に通知する。また、判定装置１０が行う場合には、例えば、図１に例示する機能部の他に、表示制御部をさらに有し、判定部１４ｃが判定した結果を表示制御部に通知するものとする。
【００３０】
ここで、図４および図５を用いて、ユーザの習熟度に応じた支援情報の表示例を説明する。図４および図５は、ユーザの習熟度に応じた支援情報の表示例を説明する図である。図４に例示する画面が習熟者と判定された場合の画面例であり、図５に例示する画面が未習熟者と判定された場合の画面例である。
【００３１】
また、図４および図５に例示する画面例は、サービスを申し込むための入力画面であり、サービスを申し込むユーザの氏名、住所および電話番号を入力する項目と、申し込みサービスを選択するチェックボックスが表示されている。図４に例示するように、ユーザが習熟者と判定された場合の画面例では、サービスを申し込むための入力画面がそのまま表示されており、支援情報を表示していない。また、図５に例示するように、ユーザが未習熟者と判定された場合の画面例では、サービスを申し込むための入力画面に支援情報をオーバレイ表示している。図５の例では、支援情報として、「氏名・住所は必須です」というメッセージと「申し込みサービスを選択して下さい」というメッセージを表示する。
【００３２】
［判定装置の処理の一例］
次に、図６を用いて、判定装置１０における処理の流れを説明する。図６は、第一の実施の形態に係る判定装置における習熟度判定処理の流れを示すフローチャートである。
【００３３】
図６に示すように、判定装置１０の取得部１４ａは、マウスカーソルの操作履歴を取得する（ステップＳ１０１）。例えば、取得部１４ａは、所定の時間ごとにマウスカーソルの操作履歴として、マウスカーソルの位置として、マウスカーソルのｘ座標およびｙ座標をユーザ端末から取得し、マウスカーソル操作情報記憶部１５ａに格納する。
【００３４】
続いて、算出部１４ｂは、マウスカーソル操作の加減速度指標の算出を行う（ステップＳ１０２）。具体的には、算出部１４ｂは、取得部１４ａによって取得された情報から所定の時間間隔ごとのマウスカーソルの移動距離を算出し、該移動距離に基づいて所定の時間幅における平均速度を算出し、異なる時間幅の平均速度同士の差の絶対値を加減速度指標として算出する。
【００３５】
そして、判定部１４ｃは、加減速度指標と閾値の比較を行い（ステップＳ１０３）、加減速度指標が閾値を超えているか否かを判定する（ステップＳ１０４）。この結果、判定部１４ｃは、加減速度指標が閾値を超えていると判定した場合には（ステップＳ１０４肯定）、ユーザを習熟者と判定する（ステップＳ１０５）。また、判定部１４ｃは、加減速度指標が閾値を超えていないと判定した場合には（ステップＳ１０４否定）、ユーザを未習熟者と判定する（ステップＳ１０６）。
【００３６】
［第一の実施の形態の効果］
このように、第一の実施の形態に係る判定装置１０は、ユーザの操作により移動するマウスカーソルの操作履歴に関する情報を取得する。そして、判定装置１０は、取得された情報を用いて、単位時間あたりのマウスカーソルの速度の変化を算出する。続いて、判定装置１０は、算出された速度の変化に応じて、ユーザの習熟度を判定する。このため、第一の実施の形態に係る判定装置１０は、リアルタイムにユーザの操作習熟度を精度よく判定することが可能である。
【００３７】
第一の実施の形態に係る判定装置１０では、例えば、ボタンクリックなどによる操作単位の定義が明確でない場合でも、ユーザの操作習熟度を判定することが可能であり、リアルタイムにユーザの習熟度を判定することが可能となる。その結果、さまざまな機能をもつＧＵＩ（Graphical  User  Interface）部品から構成されるアプリケーションの操作に対して、リアルタイムに操作習熟度を判定可能となる。よって、従来技術に比べてより一般的に適用可能な操作習熟度判定機能が実現される。
【００３８】
［第二の実施の形態］
上述した第一の実施の形態では、マウスカーソルの速度の変化、すなわち、異なる時間幅の速さの平均同士の差の絶対値を、加減速度指標とする場合を説明したが、直近のマウスカーソルの速さ平均が大きいほど値が小さくなる重みづけ関数を用いて、加減速度指標を算出してもよい。
【００３９】
例えば、特定のボタン間のみ距離が大きく離れている場合などはユーザが未習熟者でメリハリのないマウスカーソルの動きの場合でも加速がついてしまい、単位時間当たりの移動距離の増加によって、マウスカーソルの速度の変化が大きく見積もられる場合があり得る。このように、ユーザインタフェースの構造によっては、習熟者であっても未習熟者であってもマウスカーソルの速度の変化が大きくなる場合がある。
【００４０】
マウスカーソル操作においては、移動距離が長くなるとその分カーソルの移動の加速時間が増加し、その結果カーソル移動の速さも上がる傾向にある。第一の実施の形態で導入した加減速度の指標は、速さの変化に対して線形に変化し、加速している時間幅Ｔが長くなれば、メリハリのないマウスカーソルの動きに対しても加減速度が大きく評価される。
【００４１】
このため、第一の実施の形態で導入した加減速度の指標の増加は、目的を持ったマウスカーソル移動のみならず、マウスカーソルの移動距離の長距離化が原因の場合もありえ、したがって第一の実施の形態で導入した加減速度の指標は、上述したようなユーザインタフェースの構造による影響を排除しきれていない。
【００４２】
これに対して、加減速度の指標を速さ平均の差だけでなく、速さ平均の差に直近の速さ平均に応じた重みづけをする方法が考えられる。たとえば直近の速さ平均が大きければ大きいほど、加減速度を小さく見積もるような重みづけをすることで、マウスカーソルの移動距離の長距離化にともなう加減速度の増加を抑えることができる。上記のような方法で、加減速度の指標についてユーザインタフェースの構造への依存性を抑制することができる。
【００４３】
以下の第二の実施の形態では、加減速度指標Ａの算出方法について、マウスカーソルの速度の変化のみならず、直近のマウスカーソルの速さ平均が大きいほど値が小さくなる重みづけ関数を用いて、加減速度指標Ａを算出する場合について説明する。なお、第一の実施の形態と同様の構成および処理については適宜説明を省略する。
【００４４】
第二の実施の形態に係る判定装置の算出部１４ｂは、直近のマウスカーソルの速さ平均が大きいほど値が小さくなる重みづけ関数を用いて、加減速度指標を算出する。例えば、算出部１４ｂは、マウスカーソルの操作履歴を用いて、ある時間間隔Δtごとにマウスカーソルの移動距離ｒを算出し、そこからある時間幅（ｎ×Δｔ）における平均速度Ｖａｖｅを算出する。そして、算出部１４ｂは、異なる時間における速さの平均の差の絶対値｜Ｖａｖｅ２−Ｖａｖｅ１｜として算出される速度の変化の大きさを算出する。また、算出部１４ｂは、重み関数として重みＷ２＝１／Ｖａｖｅ２を算出する。そして、算出部１４ｂは、マウスカーソルの速さの平均の差の絶対値｜Ｖａｖｅ２−Ｖａｖｅ１｜に重みＷ２＝１／Ｖａｖｅ２を掛けて加減速度指標Ａを算出する。
【００４５】
ここで、図７および図８を用いて、第一の実施の形態に係る判定装置１０における加減速度指標と重みづけ関数の関係と、第二の実施の形態に係る判定装置における加減速度指標と重みづけ関数の関係とを説明する。図７は、第一の実施の形態に係る判定装置における加減速度指標と重みづけ関数の関係を説明する図である。図８は、第二の実施の形態に係る判定装置における加減速度指標と重みづけ関数の関係を説明する図である。
【００４６】
図７に示すように、第一の実施の形態に係る判定装置１０では、異なる時間におけるマウスカーソルの速さの平均の差の絶対値｜Ｖａｖｅ２−Ｖａｖｅ１｜と加減速度指標Ａとが同じであるため、実質重みＷ１の値が「１」となる。つまり、加減速度指標Ａの大小はマウスカーソルの速さの平均の差の絶対値｜Ｖａｖｅ２−Ｖａｖｅ１｜の大小に比例する。
【００４７】
一方、図８に示すように、第二の実施の形態に係る判定装置１０では、加減速度指標Ａを、マウスカーソルの速さの平均の差の絶対値｜Ｖａｖｅ２−Ｖａｖｅ１｜に重みＷ２＝１／Ｖａｖｅ２を掛けたものとする。つまり、マウスカーソルの速度があまりに大きい場合には、カーソルの長距離移動を反映しているとみなして、加減速度指標Ａとしての見積もりを小さくする。逆に、速度が小さい場合には、加減速度指標Ａとしての見積もりを大きくする。
【００４８】
このように、第二の実施の形態では、加減速度指標Ａの算出方法について、マウスカーソルの速度の変化のみならず、直近のマウスカーソルの速さの平均が大きいほど速度の変化が小さくなる重みづけ関数を用いて、加減速度指標を算出するので、習熟度によらない単位時間当たりの移動距離の増加によって加減速度指標が大きくなる場合でも、ユーザの操作習熟度を精度よく判定することが可能である。
【００４９】
［第三の実施の形態］
上述した第二の実施の形態では、直近のマウスカーソルの速さ平均が大きいほど値が小さくなる重みづけ関数を用いて、加減速度指標Ａを算出する場合を説明したが、これに限定されるものではなく、マウスカーソルの速さ平均が大きいほど値が小さくなり、且つ、マウスカーソルの速さ平均が一定値より小さい場合には速さ平均が小さいほど値が小さくなる重みづけ関数を用いて、加減速度指標Ａを算出するようにしてもよい。
【００５０】
第二の実施の形態では、マウスカーソル移動距離への依存性を解決可能であるが、一方でＶａｖｅ２が小さい場合には加減速度の指標が大きく見積もられる。よって、第一の実施の形態や第二の実施の形態で導入した加減速度の指標は、手先のブレやＩＯ（Input  Output）機器のノイズによる細かいマウスカーソルの動き、また無目的、探索的に近隣のコンポーネントをランダムに操作している場合などによっても、目的をもったマウスカーソル移動の場合と同様の大きさで評価されるか、あるいはそれより大きく評価されうる。
【００５１】
このような手先のブレやＩＯ機器のノイズ等を除去するために、マウスカーソル移動が小さな速さの時には加減速度の指標を小さく見積もる方法が考えられる。具体的な方法としては、たとえば第二の実施の形態のような重みづけＷ２をしておいて、一定以上のＷ２の値の場合は評価しない手法が考えられる。あるいは、Ｖａｖｅ２が小さい場合に加減速度が小さく見積もられるような、新たな重みづけＷ３を使用する手法が考えられる。
【００５２】
以下の第三の実施の形態では、加減速度指標Ａの算出方法について、マウスカーソルの速さ平均が大きいほど値が小さくなり、且つ、マウスカーソルの速さ平均が一定値より小さい場合には速さ平均が小さいほど値が小さくなる重みづけ関数を用いて、加減速度指標を算出する場合について説明する。なお、第一の実施の形態および第二の実施の形態と同様の構成および処理については適宜説明を省略する。
【００５３】
第三の実施の形態に係る判定装置の算出部１４ｂは、マウスカーソルの速さ平均が大きいほど値が小さくなり、且つ、マウスカーソルの速さ平均が一定値より小さい場合には速さ平均が小さいほど値が小さくなる重みづけ関数を用いて、加減速度指標を算出する。例えば、算出部１４ｂは、マウスカーソルの操作履歴を用いて、ある時間間隔Δtごとにマウスカーソルの移動距離ｒを算出し、そこからある時間幅（ｎ×Δｔ）における平均速度Ｖａｖｅを算出する。そして、算出部１４ｂは、異なる時間における速さの平均の差の絶対値｜Ｖａｖｅ２−Ｖａｖｅ１｜として算出される速度の変化の大きさを算出する。また、算出部１４ｂは、重み関数として重みＷ３＝（ｔａｎｈ（５Ｖａｖｅ２−３）＋１）／２Ｖａｖｅ２を算出する。そして、算出部１４ｂは、マウスカーソルの速さの平均の差の絶対値｜Ｖａｖｅ２−Ｖａｖｅ１｜に重みＷ３＝（ｔａｎｈ（５Ｖａｖｅ２−３）＋１）／２Ｖａｖｅ２を掛けて加減速度指標Ａを算出する。
【００５４】
ここで、図９を用いて、第三の実施の形態に係る判定装置１０における加減速度指標と重みづけ関数の関係とを説明する。図９は、第三の実施の形態に係る判定装置における加減速度指標と重みづけ関数の関係を説明する図である。
【００５５】
図９に示すように、第三の実施の形態に係る判定装置では、加減速度指標Ａを、マウスカーソルの速さの平均の差の絶対値｜Ｖａｖｅ２−Ｖａｖｅ１｜に重み「Ｗ３＝（ｔａｎｈ（５Ｖａｖｅ２−３）＋１）／２Ｖａｖｅ２」を掛けたものとする。つまり、マウスカーソルの速度があまりに大きい場合（Ｖａｖｅ２が大きい場合）にはカーソルの長距離移動を反映しているとみなして、加減速度指標Ａとしての見積もりを小さくする。同様に、マウスカーソルの速度があまりに大きい場合（Ｖａｖｅ２が大きい場合）にはマウスカーソル操作時のノイズとして加減速度指標Ａの見積りを小さくする。
【００５６】
ここで、第三の実施の形態に係る判定装置１０における重みづけ関数を説明する。図１０は、第三の実施の形態に係る判定装置における重みづけ関数を説明する図である。図１０に示すように、第一の実施の形態では、重みＷ１の値が「１」であり、第二の実施の形態では、重みが「Ｗ２＝１／Ｖａｖｅ２」で求められるが、第三の実施の形態では、重みが「Ｗ３＝（ｔａｎｈ（５Ｖａｖｅ２−３）＋１）／２Ｖａｖｅ２」で求められる。このため、マウスカーソルの速さが特定の範囲より外れている場合には、重みづけを小さく評価し、加減速度評価を小さくする。
【００５７】
このように、第三の実施の形態では、加減速度指標Ａの算出方法について、マウスカーソルの速さ平均が大きいほど速度の変化が小さくなり、且つ、マウスカーソルの速さ平均が大きいほど値が小さくなり、且つ、マウスカーソルの速さ平均が一定値より小さい場合には速さ平均が小さいほど値が小さくなる重みづけ関数を用いて、加減速度指標を算出するので、マウスカーソル移動が小さな速さの時には加減速度の指標を小さくする。この結果、手先のブレやＩＯ機器のノイズ等の時には加減速度指標を小さくすることができるため、ユーザの操作習熟度を精度よく判定することが可能である。
【００５８】
［実験結果］
上述したマウスカーソルの加減速度指標がユーザの操作の習熟度の指標となっているかを実験した。実験データのために、図１１に例示するような神経衰弱アプリを被験者に操作を行わせた。神経衰弱アプリには二つのモードがある。一つはＨｉｄｅモードで、図１１の（ａ）に例示するように、すべての数字が隠れた状態での本来の意味での神経衰弱を行う。また、もう一つはＯｐｅｎモードで、図１１の（ｂ）に例示するように、数字がすべて見えている状態での神経衰弱を行う。探索行動を必要とする前者のＨｉｄｅモードでの操作が未習熟な操作、操作手順が把握できている後者のＯｐｅｎモードでの操作が習熟した操作と見なせ、被験者に両モードのタスクを行ってもらった際の、両者における加減速度指標のヒストグラムを比較する。
【００５９】
また、実験の条件として、神経衰弱におけるカード枚数が６ｘ６の計３６個（０〜１７の計１８ペアであり、ウィンドウサイズが１２００×１２００ピクセルであるものとする。そして、被験者数は２名で、各被験者にはＨｉｄｅモード、Ｏｐｅｎモードのそれぞれのモードでそれぞれ２回ずつ、計４回のタスクを行ってもらった。同じ番号を連続して２回クリックすることを繰り返し、すべての数字のペアについて選択し終わった段階でタスク終了とする。Ｈｉｄｅモードタスクでは、一つの要素を選択するとその要素の数字が表示され、次に別の要素を選択した際に前回の選択と同じ数字だったら、ペアを当てることに成功したとみなし、それらの要素は以降選択不可となる。前回の選択と異なる数字だった場合には、ペアを当てることに失敗したとみなし、二つの要素の数字は再び表示されなくなる。また、Ｏｐｅｎモードタスクでは、すべての要素の数字が見えている状態でペアを選択するタスクを行ってもらった。タスク中は要素選択以外の操作は一切禁止とする。また、被験者にはできる限り少ない試行回数でタスクを完了するようインストラクションを行った。
【００６０】
このような条件のもとで行われた実験の結果を図１２に例示する。図１２に例示するグラフは、加減速度値について、０〜０．６の区間で、０．０３の幅ごとに度数をカウントしたヒストグラムである。加減速度値の算出については、第三の実施の形態の重みづけを行っている。横軸は第三の実施の形態における手法で算出された加減速度指標を示し、縦軸は度数（頻度）を示すものである、図１２に示すように、Ｏｐｅｎモードタスク（習熟操作）の方がより大きな加減速度指標値をとる傾向がみられる。
【００６１】
各被験者のデータそれぞれについて、各モードについてタスク２回分のデータに対し、全所要時間のうち前半半分のデータだけを抜き出す。これは、タスク後半は選択すべき要素が少なくなっていき、Ｈｉｄｅモードであっても習熟者のような操作となるためである。そして、それらのデータに対し各時間帯ごとの加減速度指標を算出し、無作為抽出によって１５０個のサンプルを抜き出す。抜き出したサンプルに対し、ＨｉｄｅモードとＯｐｅｎモードの加減速度指標の分布を比較するため、Ｗｅｌｃｈのｔ検定（片側検定）によって検定を実施した。結果、被験者１について、「ｐ＝６．１３ｘ１０−４、ｔ＝−３．２７、自由度  ２５４．５」となり、被験者２について、「ｐ＝１．１３ｘ１０−６、ｔ＝−４．８５、自由度  ２３４．３」となり、有意水準ｐ＜０．０１、｜ｔ｜＞２において有意にＯｐｅｎモードの方が加減速度指標分布の平均値が大きいといえる。
【００６２】
［閾値の設定］
閾値決定の手法の一例として、情報エントロピーを用いた以下のような手法が考えられる。例えば、上述したように、ＨｉｄｅモードとＯｐｅｎモードの加減速度指標値の標本（それぞれＮｈｉｄｅ個とＮｏｐｅｎ個あるとする）に対し、ある値α以上の標本数（それぞれＮｈｉｄｅ＿ｒｉｇｈｔ個とＮｏｐｅｎ＿ｒｉｇｈｔ個とする）とαを下回る標本数（それぞれＮｈｉｄｅ＿ｌｅｆｔ個とＮｏｐｅｎ＿ｌｅｆｔ個とする）を求める。例えば、図１３に例示するように、α＝０．１とした場合の、α以上の標本数Ｎｒｉｇｈｔ＝Ｎｈｉｄｅ＿ｒｉｇｈｔ＋Ｎｏｐｅｎ＿ｒｉｇｈｔと、αを下回る標本数Ｎｌｅｆｔ＝Ｎｈｉｄｅ＿ｌｅｆｔ＋Ｎｏｐｅｎ＿ｌｅｆｔとを求める。
【００６３】
そして、α以上の標本集合とαを下回る集合のそれぞれに対し、下記（１）式および下記（２）式を用いて、情報エントロピーＨを計算する。ただし、”ＬＲ”にはｌｅｆｔとｒｉｇｈｔのいずれか、また”ｍｏｄｅ”にはｈｉｄｅかｏｐｅｎのいずれかが入る。これにより、ＨｌｅｆｔとＨｒｉｇｈｔをそれぞれ求める。そして、情報エントロピーＨは、注目している領域における両モードの標本数の偏り具合の指標であり、値が大きければ両モードの標本が同数程度含まれていることを示し、逆に値が小さければいずれかのモードの標本数が支配的になっていることを示す。
【００６４】
【数１】
2018018141.tif 000003
【００６５】
【数２】
2018018141.tif 000004
【００６６】
この左右領域のエントロピーに対し、下記の（３）式により、ある閾値αで標本を分割した際のエントロピーの期待値Ｈｅｘｐを算出する。
【００６７】
【数３】
2018018141.tif 000005
【００６８】
両被験者の標本から無作為に３００個の標本を取得し、横軸をα、縦軸を上記Ｈｅｘｐ（対数の底は２とした）として計算したグラフを図１４に例示する。Ｈｅｘｐはα＝０．１のときに極小値をとり、したがってα＝０．１で標本を分割したとき、もっとも左右領域のそれぞれでｏｐｅｎモードとｈｉｄｅモードの標本が偏って分布していることが示される。統計検定の結果から、加減速度指標の平均値はｏｐｅｎモードの方が有意に大きいため、それを踏まえると、α＝０．１を境としたとき、左にｈｉｄｅモードの標本、右にｏｐｅｎモードの標本というようにもっとも明確に分かれて分布している。よって、今回の実験タスクにおいては操作習熟度判定の閾値をα＝０．１と設定することが考えられる。
【００６９】
このように、習熟度が高い操作履歴に関する情報であるｏｐｅｎモードの標本を用いて算出された複数のマウスカーソルの加減速度指標値と、習熟度が低い操作履歴に関する情報であるｈｉｄｅモードを用いて算出された複数のマウスカーソルの加減速度指標値とのうち、閾値α以上の数と閾値αを下回る数をそれぞれ計数し、該閾値α以上の数と閾値αを下回る数とが、ｈｉｄｅモードの標本と、ｏｐｅｎモードの標本化とで最も偏る値を閾値とする。これにより、判定装置１０に対して最適な閾値を設定することができ、習熟度の判定を精度よく行うことが可能である。
【００７０】
［システム構成等］
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。例えば、取得部１４ａと算出部１４ｂとを統合してもよい。
【００７１】
また、本実施の形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００７２】
［プログラム］
また、上記実施形態において説明した判定装置が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。例えば、実施形態に係る判定装置１０が実行する処理をコンピュータが実行可能な言語で記述した判定プログラムを作成することもできる。この場合、コンピュータが判定プログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかる判定プログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録された判定プログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。
【００７３】
図１５は、判定プログラムを実行するコンピュータ１０００を示す図である。図１５に例示するように、コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有し、これらの各部はバス１０８０によって接続される。
【００７４】
メモリ１０１０は、図１５に例示するように、ＲＯＭ（Read  Only  Memory）１０１１及びＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、図１５に例示するように、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、図１５に例示するように、ディスクドライブ１１００に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１１００に挿入される。シリアルポートインタフェース１０５０は、図１５に例示するように、例えばマウス１１１０、キーボード１１２０に接続される。ビデオアダプタ１０６０は、図１５に例示するように、例えばディスプレイ１１３０に接続される。
【００７５】
ここで、図１５に例示するように、ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、上記の判定プログラムは、コンピュータ１０００によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ１０９０に記憶される。
【００７６】
また、上記実施形態で説明した各種データは、プログラムデータとして、例えばメモリ１０１０やハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出し、各種処理手順を実行する。
【００７７】
なお、判定プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、判定プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ネットワーク（ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【００７８】
１０  判定装置
１１  通信処理部
１２  入力部
１３  出力部
１４  制御部
１４ａ  取得部
１４ｂ  算出部
１４ｃ  判定部
１５  記憶部
１５ａ  マウスカーソル操作情報記憶部
【図１】
2018018141.tif 000006
【図２】
2018018141.tif 000007
【図３】
2018018141.tif 000008
【図４】
2018018141.tif 000009
【図５】
2018018141.tif 000010
【図６】
2018018141.tif 000011
【図７】
2018018141.tif 000012
【図８】
2018018141.tif 000013
【図９】
2018018141.tif 000014
【図１０】
2018018141.tif 000015
【図１１】
2018018141.tif 000016
【図１２】
2018018141.tif 000017
【図１３】
2018018141.tif 000018
【図１４】
2018018141.tif 000019
【図１５】
2018018141.tif 000020