(57)【要約】【課題】ゲームを再スタートすることなくプレーヤーの技能レベルに適したゲームの難易度レベルを設定できるようにする。【解決手段】プレーヤーが疲れると、プレーヤーの動きの低周波成分に比べてプレーヤーの動きの高周波成分が一般に減少するという事実を利用する。動き入力装置により生成された信号から得られるプレーヤーの動きの周波数成分を解析することによって、システムは、プレーヤーの応答レベルの変化を判定し、これに応じてゲームを変更することができる。１実施形態では、入力装置信号のウェーブレット解析を用いてプログラムを制御または調節する。【選択図】図５
2008043751.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサ上で動作するプログラムを制御する方法（５０）であって、
ユーザインターフェースからの信号に対してウェーブレット解析を使用するステップ（５０２）と、
前記ウェーブレット解析に基づいてユーザの応答レベルを決定するステップ（５０３）と、
決定されたユーザの応答に応答して前記プログラムを調節するステップ（５０４）
を含む、方法。
【請求項２】
前記使用するステップが、前記ユーザインターフェースから動き信号の高周波成分を取得するステップを含む、請求項１の方法。
【請求項３】
前記決定された応答が、取得した高周波数成分の変化に基づくものである、請求項１の方法。
【請求項４】
前記決定するステップが、高周波数成分のレベルに基づく、請求項２の方法。
【請求項５】
前記使用するステップが、前記ユーザインターフェースからの動き信号の低周波成分を取得するステップを含み、前記決定するステップが、前記高周波数成分と低周波数成分の両方のレベルに基づく、請求項２の方法。
【請求項６】
前記決定するステップが、ある時点における前記信号の高周波数成分及び低周波数成分を、別の時点における高周波数成分及び低周波数成分と比較するステップを含む、請求項１の方法。
【請求項７】
プロセッサ上で動作するプログラムに対するユーザインターフェース（１０）と、
前記プロセッサ上でのプログラムの実行中に前記ユーザインターフェースからの信号に対してウェーブレット解析を実行するための手段（１６）と、
実行されたウェーブレット解析に応答して、前記プログラムの少なくとも１つの動作態様を調節するための手段
を備える、システム。
【請求項８】
前記プログラムがゲームであり、前記入力インターフェースがゲームコントローラである、請求項７のシステム。
【請求項９】
前記動作態様が、難易度レベル、命令レベル、表示される情報量、のリストから選択される、請求項７のシステム。
【請求項１０】
前記入力インターフェースはコンピュータマウスであり、前記信号は位置信号である、請求項７のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
この出願は、同時に提出され、同時係属中の、共通の譲受人に譲渡された「SYSTEM AND METHOD FOR USING IMAGE ANALYSIS OF USER INTERFAXE SIGNALS FOR PROGRAM CONTROL」と題する米国特許出願（代理人整理番号は70051594-01）に関連する。当該米国特許出願の開示内容を参照により本明細書に組み込むものとする。
【０００２】
本願は、一般に、インタラクチィブ（対話型）コンピュータシステム及び方法に関し、より具体的には、ユーザインターフェース信号のウェーブレット解析を用いてプログラムを制御するためのシステム及び方法に関する。
【背景技術】
【０００３】
コンピュータ、ゲーム・コンソール、または手持ち式のコンソールを使用する電子ゲーム機は、一般に、入力装置、プロセッサ、及び、表示装置を利用する。入力装置としては、マウス、ジョイスティック、または、プレーヤー（ゲームをする人）がプロセッサに応答を入力できるようにする他の形態のコントローラを用いることができる。プロセッサはコンピュータシステムの一部とすることができ、または、XBOX（商標）やPLAYSTATION（商標）ゲーム機などのゲーム機置専用のものとすることができる。プロセッサは、ディスプレイと通信して、ゲームの可視像及び／または音像（audio image）を提示する。
【０００４】
これらの電子ゲームは、プレーヤーが楽しめるレベルの遊技（プレー）を提供するために、一般に、異なる遊技のレベル（プレーレベル）を有している。多くのゲームでは、遊技のレベルはゲームを始める前にユーザによって選択され、遊技のレベルを変更するためには、ユーザはゲームを再スタートする必要がある。プレーヤーは、ユーザの遊技のレベルに適したレベルを見つける前に、様々なレベルの遊技を試さなければならないことが多いだろう。
【０００５】
ゲームでは、プレーヤーは、一般に、素速い及び／または機敏な応答が要求される状況に置かれ、プレーヤーの得点は、一般に、ゲームによって提示される課題に素速く応答するプレーヤーの能力を反映したものとなる。
【０００６】
多くの状況では、ディスプレイ上の物体を動かすためにゲームによって使用される位置情報を中継するために、マウス、ジョイスティック、または、コントローラが使用される。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
適切な遊技のレベルでプレーすれば、必ずや、プレーヤーはゲームからやりがいのある課題を提供され、このため、プレーヤーはゲームに圧倒されたり、ゲームに退屈したりする可能性が最小限になるであろう。しかしながら、ゲームを開始する前にユーザの技能レベルを設定しなければならない場合には、ユーザが、ゲームを再スタートする以外には技能レベルを調整できる便利な手段はない。しばしば、ユーザは、（設定されている）技能レベルがそのユーザに適したものではないことさえ知らない。
【課題を解決するための手段】
【０００８】
本発明は、プレーヤーが疲れると、プレーヤーの動きの高周波成分は、プレーヤーの動きの低周波成分と比較して一般に減少するという事実を利用する。動き入力装置によって生成された信号から得られるプレーヤーの動きの周波数成分を解析することによって、システムは、プレーヤーの応答レベルの変化を判定し、これに応じて、ゲームを変更することができる。１実施形態では、入力装置の信号のウェーブレット解析を用いて、プログラムを制御し、または、調節する。
【０００９】
以上は、以下の本発明の詳細な説明をより十分に理解できるようにするために、本発明の特徴及び技術上の利点をかなり広く概説したものである。本発明の他の特徴及び利点については後述するが、それらは、本発明の特許請求の範囲の主題を構成するものである。当業者であれば、本発明と同じ目的を達成するために、開示された概念及び特定の実施形態を、他の構成に変更したり他の構成を設計するための基礎として容易に利用できることが理解されよう。当業者であれば、また、そのような本発明と等価な構成は、添付の特許請求の範囲に記載された本発明の思想及び範囲から逸脱するものではないことも理解されよう。本発明の構造と本発明の動作の方法の両方に関して、本発明の特徴であると信ずる新規な構成並びに他の目的及び利点は、以下の説明及び添付の図面からより十分に理解されよう。当然ながら、各図面は、例示及び説明の目的で提供したものであり、本発明を限定することを意図したものではない。
【００１０】
本発明をより完全に理解するために、以下、添付の図面を参照して本発明を詳細に説明する。
【実施例】
【００１１】
図１に示すように、本発明の１実施形態は、プロセッサ１２と通信する装置１０のようなユーザインターフェースを備える。ゲームプログラム用のプログラムコードまたはアルゴリズムは、メモリ１４のような記憶装置に格納することができ、プロセッサ１２により実行することができる。応答レベルコンポーネント１６は、プログラムコードに組み込むこともでき、または、プロセッサ１２に組み込むこともできる。
【００１２】
ユーザインターフェース１０はコンピュータマウス、ゲームコントローラ、ジョイスティック、または、プレーヤーが自身のアクションをプロセッサ１２に入力することが可能な他の任意の装置とすることができる。プロセッサ１２は、記憶装置、マイクロプロセッサ、及び、ゲームプログラム用のプログラムコードを実行するために利用される任意のコンポーネントを備えることができる。プロセッサシステムは、コンピュータシステム、ビデオゲームコンソール（またはビデオゲーム機）、または、携帯型（または手持ち式）のゲーム装置の一部とすることができる。
【００１３】
（ユーザインターフェース１０によって提供される）プレーヤーの動きの高周波成分を、プレーヤーの応答レベルの指標として使用することができる。たとえば、際立った高周波成分は、高い応答レベルを有する特別に技能の高いプレーヤーであることを示唆しうる。１実施形態では、ユーザ応答レベルコンポーネント１６は、ウェーブレット技術を利用して、ユーザインターフェース１０からの信号を解析することにより、プレーヤーの応答レベルを判定する。ゲームプレー中におけるプレーヤーの応答レベルの変化（たとえば、周波数成分またはユーザ入力の変化）を利用して、ゲームプログラムの１側面（または１態様）を変更すること、たとえば、遊技の難易度を調整することができる。プレーヤーの応答レベルをモニタするための他の手段を本発明の実施形態に組み込むこともできる。
【００１４】
信号を、正弦項と余弦項のおそらく無限に続く級数の和として表すことができるということがフーリエ理論からわかっている。この和はフーリエ級数も呼ばれる。しかしながら、フーリエ級数は、それが周波数分解能のみを有し、時間分解能を有さないという点で不利である。これは、フーリエ級数は信号に存在する全ての周波数を決定できるであろうが、いつそれらの周波数が出現するのかを知ることはできないということを意味する。この問題を解決するために、時間領域と周波数領域において同時に、信号をある程度表すことが可能な解決策が開発されてきた。これらの時間−周波数結合表現の背後にあるアイデアは、対象とする信号をいくつかの部分に切り分けて、それらの部分を個別に解析することである。
【００１５】
ウェーブレット変換またはウェーブレット解析は、フーリエ変換の欠点を克服するソリューションを提供する。ウェーブレット解析では、十分にスケーラブルな被変調ウィンドウを使用することにより、信号切り分け問題（signal-cutting problem）を解決する。このウィンドウは信号に沿ってシフトされ、全ての位置についてスペクトルが計算される。次に、このプロセスは、全ての新たなサイクルごとにわずかに短い（または長い）ウィンドウでもって何回も繰り返される。最終的な結果は、信号の時間−周波数表現の集合となる。
【００１６】
図２のＡ〜Ｆは、ウェーブレット変換の１例１０を示す。ウェーブレット、ウェーブレット解析、及びウェーブレット変換とは、有限長のまたは速やかに減衰する振動波形（マザーウェーブレット（mother wavelet）として知られている）に関して信号を表現するものとして参照される。
1185862694084_0
に説明されているように、この波形は、拡大／縮小され、入力信号に合致するように変換される。正式な用語では、この表現は、ウェーブレット級数であって、二乗可積分 (square integrable) 関数からなるヒルベルト空間についての基底関数（basis function）の完全直交系（a complete orthonormal set）に関する二乗可積分関数の座標表現である。一般的に、ウェーブレット変換、すなわち、関数f(x)のＷは以下のように表すことができる。
【００１７】
【数１】
2008043751.tif 000003
【００１８】
ここで、ψはマザーウェーブレット関数（または基本ウェーブレット関数）であり、「ａ」及び「ｂ」はスケーリングファクタである。上記の形式は使い勝手のよいものではない。なぜなら、これは、連続ウェーブレット変換（CWT）であり、無限積分を必要とするからである。そのため、実際の演算では、離散ウェーブレット変換（DWT）が有用である。DWTについての式は以下のように示すことができる。
【００１９】
【数２】
2008043751.tif 000004
【００２０】
簡単には、関数f(x)は、マザーウェーブレット関数ψ及びウェーブレット変換された係数ｄｋ（ｊ）の級数で以下のように表すことができる。
【００２１】
【数３】
2008043751.tif 000005
【００２２】
これは次のように表すこともできる。
【００２３】
【数４】
2008043751.tif 000006
【００２４】
【数５】
2008043751.tif 000007
【００２５】
このプロセスは、多重解像度解析（multi-resolution analysis:MRA）として知られている。
【００２６】
図２のＡは元の関数f(x)を示す。図２のＢ〜Ｆはウェーブレット変換された関数（ｄｋ（ｊ））である。
【００２７】
図２のＡの関数ｆ(ｘ)は理論上の人工的な関数であって、実際のゲームデータではない。図示の例では、始めの段階（左側）では高周波成分はない。図２のＢ及Ｃはノイズ成分を含んでいる可能性がある。たとえば、USBインターフェースは、人間が制御可能な時間と比べてはるかに短い時間である８ｍｓｅｃというリフレッシュレートを有する。このため、８ｍｓといった高周波成分は電気ノイズとなりうる。図２のＦは、低周波成分を示しており、したがって、これは、ゲームコントロールでの用途に重要な信号である。プレーヤーのレベルコントロールのための他の重要な信号が、たとえば、図２のＤ及びＥに示されている。
【００２８】
プレーヤーの入力関数をｆ(t)、プレーヤーのレベル関数をg(t)とする。この場合、f(t)は、ウェーブレットを用いて以下の式で変換される。
【００２９】
【数６】
2008043751.tif 000008
【００３０】
ここで、マザーウェーブレットは任意のウェーブレットである。それは、Haar（ハール）関数、Gabor（ガボール）関数、Spline（スプライン）関数または他のタイプのマザーウェーブレット関数とすることができる。マザーウェーブレットは理想的には基本関数である。係数ｄｋ（ｊ）は、ウェーブレット変換によって計算される。関数g(t)は、たとえば、式（４）によって次のように定義されるのが望ましい。
【００３１】
【数７】
2008043751.tif 000009
【００３２】
ここで、k＝０は現時点を意味し、k0は過去の時点を意味する。大きなk0は大きな遅れ及び大きな平均化時間を示唆している。関数g(t)の大きな値は、プレーヤーによる大きな周波数成分を示唆している。
【００３３】
図３は、関数g(t)のグラフである。一般化のために、式（７）を次のように記述することができる。
【００３４】
【数８】
2008043751.tif 000010
【００３５】
ここで、αｋ（ｊ）は重み係数である。さらに、加算インデックスであるj_start、j_end、k_start及びk_endは適切に決定されなければならない。
【００３６】
図３は、式（８）に基づいて関数g(t)をプロットしたグラフである。関数g(t)が所定の範囲の周波数成分の感度を有することが容易に理解される。
【００３７】
図４は、ゲームに対するプレーヤーのレベル関数g(t)の１例を示す。はじめに、最初の時間期間（区間１）の間、高周波成分が大きくこれはプレーヤーの活発な応答を表している。プレーヤーが疲れると、プレーヤーの動きの高周波成分は、プレーヤーの動きの低周波成分に比べて小さくなる（区間２）。プレーヤーのユーザインターフェース１０との相互作用の周波数成分を解析することによって、コンピュータまたはゲーム機（またはゲームコンソール）は、プレーヤーの応答レベルを判定または推測することができる。
【００３８】
プレーヤーの応答レベルが判定されると、プロセッサ１２は、たとえば、プレー（遊技）中のゲームの難易度レベルを調節することによってシステムを変更することができる。本発明の１実施形態では、これには、ゲームにおいて予め設定されているいくつかの難易度レベルを切り換えること、または、判定された応答レベルに対して、データベースまたはアルゴリズムによって適切であるものとして示された難易度レベルを使用することが含まれる。別の実施形態では、処理システムは、それがゲームアルゴリズムを実行する速度を速くし、または遅くすることができる。さらに別の実施形態では、ユーザの応答が決められた範囲内に入るまで、難易度を連続的に調節することができる。
【００３９】
図５は、ゲームの技能レベルを調節するために使用されるシステムの１実施形態５４０のフローチャートである。プロセス５０１において、ユーザインターフェース１０から信号を取得する。プロセス５０２において、図２のＡ〜Ｆ及び図３に関して説明したように、信号のウェーブレット解析が実行され、プロセス５０３において、レベルが変わったか否かを判定する。レベルが以前の示度（またはメモリに記憶されている以前の一組の示度）から変化している場合は、プロセス５０４において、プレーヤーの応答レベルに基づいてゲームの技能レベルが調節される。ユーザレベルの確立されたテーブルを設けて、ある時間にわたる高値と低値（または、高周波数成分と低周波数成分）の平均を使用してユーザにとって快適な実際の等級レベルを決定することができることに留意されたい。任意の時点における等級レベルに基づいて、ゲームの技能レベル（または他のプログラム）をより難しくなるようにまたはより簡単になるように調節することができる。
【００４０】
ゲーム機（またはゲームシステム）について説明したが、本明細書において開示した概念を用いて任意のプロセッサ上で動作する任意のプログラムの動作態様（または動作の側面）を制御することができることに留意されたい。たとえば、スプレッドシートプログラム（spread sheet proguram）は、入力信号の周波数に基づいて異なる命令を提示することができる。
【００４１】
本発明及びその利点を詳細に説明したが、添付の特許請求の範囲によって規定される本発明の思想及び範囲を逸脱することなく、種々の変更、代用及び置換を行うことが可能であることは言うまでもない。さらに、本発明の範囲は、本明細書に記載された、プロセス、機械、製造、物の組成、手段、方法、及びステップの特定の実施形態に限定されない。当業者であれば、本発明の開示内容から、本明細書で説明した対応する実施形態と実質的に同じ結果を達成する既存のまたは後で開発されるであろうプロセス、機械、製造、物の組成、手段、方法、またはステップを本発明にしたがって利用することができるということを容易に理解するであろう。したがって、特許請求の範囲には、そのようなプロセス、機械、製造、物の組成、手段、方法またはステップも含まれる。
【００４２】
以下に、本発明の種々の構成要件の組み合わせからなる例示的な実施態様を示す。
１．プロセッサ上で動作するプログラムを制御する方法であって、
ユーザインターフェースからの信号に対してウェーブレット解析を使用するステップと、
前記ウェーブレット解析に基づいてユーザの応答レベルを決定するステップと、
決定されたユーザの応答に応答して前記プログラムを調節するステップ
を含む、方法。
２．前記使用するステップが、前記ユーザインターフェースから動き信号の高周波成分を取得するステップを含む、上項１の方法。
３．前記決定された応答が、取得した高周波数成分における変化に基づくものである、上項１の方法。
４．前記決定するステップが、高周波数成分のレベル（または大きさ）に基づく、上項２の方法。
５．前記使用するステップが、前記ユーザインターフェースからの動き信号の低周波成分を取得するステップを含み、前記決定するステップが、前記高周波数成分と低周波数成分の両方のレベル（または大きさ）に基づく、上項２の方法。
６．前記決定するステップが、ある時点における前記信号の高周波数成分及び低周波数成分を、異なる時点における高周波数成分及び低周波数成分と比較するステップを含む、上項１の方法。
７．前記ユーザインターフェースが、コンピュータマウスとゲームコントローラのリストから選択される、上項１の方法。
８．前記プログラムがゲームプログラムであり、前記調節するステップが、前記ユーザに提示する技能レベルの変化をもたらす、上項１の方法。
９．プロセッサ上で動作するプログラムに対するユーザインターフェースと、
前記プロセッサ上でのプログラムの実行中に前記ユーザインターフェースからの信号に対してウェーブレット解析を実行するための手段と、
実行されたウェーブレット解析に応答して、前記プログラムの少なくとも１つの動作態様を調節するための手段
を備える、システム。
１０．前記プログラムがゲームであり、前記入力インターフェースがゲームコントローラである、上項９のシステム。
１１．前記動作態様が、難易度レベル、命令（インストラクション）レベル、表示される情報量、のリストから選択される、請求項９のシステム。
１２．前記入力インターフェースはコンピュータマウスであり、前記信号は位置信号である、上項９のシステム。
１３．前記実行するための手段は、前記ユーザインターフェースからの以前の周波数成分に対する前記ユーザインターフェースからの現在の周波数成分を測定するための手段から構成される、上項９のシステム。
１４．プログラムを使用する方法であって、
プログラムのレベルを設定するステップと、
ユーザインターフェース信号から得られた周波数成分をモニタすることによってプラグラムを使用している間ユーザの応答レベルの変化を判定するステップと、
判定された前記ユーザの応答レベルの変化に基づいて前記プログラムのレベルを調節するステップ
を含む、方法。
１５．前記判定するステップが、前記ユーザインターフェース信号に対してウェーブレット解析を用いるステップを含む、上項１４の方法。
１６．前記ユーザインターフェース信号は、ゲームコントローラのコンポーネントからのユーザの動き、または、ユーザによるゲームコントローラのコンポーネントの移動を表す、上項１５の方法。
１７．前記プログラムのレベルは、前記ゲームプログラムの難易度レベルである、上項１６の方法。
１８．前記ウェーブレット解析が、前記ユーザインターフェース信号の低周波数成分の増加を示すときには、前記難易度レベルは低くされる、上項１７の方法。
１９．前記ウェーブレット解析が、前記ユーザインターフェース信号の高周波数成分が比較的一定であることを示すときには、前記難易度レベルは高くされる、上項１７の方法。
２０．前記ユーザインターフェース信号の低周波数成分が増加している間、前記難易度レベルは比較的一定である、上項１７の方法。
【００４３】
本発明は、プレーヤーが疲れるにつれて、プレーヤーの動きの低周波成分に比べてプレーヤーの動きの高周波成分が一般に減少するという事実を利用する。動き入力装置により生成された信号から得られるプレーヤーの動きの周波数成分を解析することによって、システムは、プレーヤーの応答レベルの変化を判定し、これに応じてゲームを変更することができる。１実施形態では、入力装置信号のウェーブレット解析を用いてプログラムを制御または調節する。
【図面の簡単な説明】
【００４４】
【図１】本発明の１実施形態のブロック図である。
【図２】Ａ〜Ｆは、それぞれ、本発明の１または複数の実施形態によって利用可能なウェーブレット変換の１例を示す図である。
【図３】プログラム（によるたとえばゲームの）実行中のウェーブレット成分の例示的な時間変化を示すグラフである。
【図４】プレーヤーのレベル関数ｇ（ｔ）の１例を示す図である。
【図５】本発明の１実施形態の一部分のブロック図である。
【符号の説明】
【００４５】
１０  入力装置
１２  プロセッサ
１４  ゲームアルゴリズム
１６  ユーザ応答レベル判定手段
【図１】
2008043751.tif 000011
【図２】
2008043751.tif 000012
【図３】
2008043751.tif 000013
【図４】
2008043751.tif 000014
【図５】
2008043751.tif 000015