(57)【特許請求の範囲】
【請求項１】
オペラント学習ブレインマシンインタフェースの使用を通しての、ニューラルプロセッサによる出力コマンドの生成方法であって、
前記ニューラルプロセッサ上で実行されるプログラムコードにより、複数の電極から一つ以上の電極を選択することと、
前記一つ以上の選択された電極から、前記ニューラルプロセッサにおいて神経信号を受信することと、
前記受信神経信号に基づいて閾値を設定することと、
出力コマンド率を定義するために、前記ニューラルプロセッサにタイマを設定することと、
前記タイマが終了していない間に、前記受信神経信号を検索および処理するために、前記ニューラルプロセッサによりプログラムコードを実行することと、
前記検索および処理された神経信号を入力として受信する前記ニューラルプロセッサにおける固定デコーダの使用を通して、制御コマンドを計算することと、
を具備する方法。
【請求項２】
前記ニューラルプロセッサにより神経信号を受信することは、前記オペラントから神経信号を受信すること、を具備する、請求項１に記載の方法。
【請求項３】
前記ニューラルプロセッサ上で実行されるプログラムコードによる前記制御コマンドを、後続のハードウェアまたはソフトウェア構成要素に入力として提供すること、を具備する、請求項１に記載の方法。
【請求項４】
現在のタスクが完了したかどうかを決定するために、前記ニューラルプロセッサ上で実行されるプログラムコードにより確認を行うこと、を具備する、請求項１に記載の方法。
【請求項５】
後続の出力コマンド率を定義するために、前記ニューラルプロセッサ上で実行されるプログラムコードにより前記タイマを設定することと、前記タイマが終了していない間に、前記受信神経信号を検索および処理することと、を具備する、請求項１に記載の方法。
【請求項６】
複数の電極から一つ以上の電極を選択することは、
前記ニューラルプロセッサにおいて実行されるプログラムコードの制御のもとで、前記オペラントにタスクを提示することと、
前記ニューラルプロセッサにより、前記タスクの提示中に、前記オペラントの神経活動を取得することと、
前記ニューラルプロセッサによる選択基準を、前記取得した神経活動に適用することと、
前記ニューラルプロセッサにより、前記選択基準を超える一つ以上の電極を選択することと、
を具備する、請求項１に記載の方法。
【請求項７】
神経活動を取得することは、前記ニューラルプロセッサが神経活動を取得する時間帯を定義するために、前記ニューラルプロセッサにおいて実行されるプログラムコードにより、電極選択タイマをスタートさせること、を具備する、請求項６に記載の方法。
【請求項８】
前記ニューラルプロセッサにより選択することは、前記ニューラルプロセッサにより、前記選択基準を超える電極のサブセットを選択すること、を具備する、請求項６に記載の方法。
【請求項９】
前記受信神経信号を処理することは、
前記受信神経信号内に含まれている一つ以上のチャネル上の信号ノイズを減衰することと、
前記一つ以上の減衰されたチャネルに対するスペクトル密度を計算することと、
前記一つ以上のチャネルに対する一つ以上の選択された帯域における平均パワーを決定することと、
前記一つ以上のチャネルに対するパワー比を決定することと、
を具備する、請求項１に記載の方法。
【請求項１０】
前記一つ以上のチャネルのうちの所与のチャネルに対するパワー比を決定することは、比γ・θ／β・δ計算することに従って、前記ニューラルプロセッサ上で実行されるプログラムコードにより決定され、βは範囲１４〜２４Ｈｚ内の帯域からなり、γは範囲３０〜８０Ｈｚ内の帯域からなり、δは範囲１〜４Ｈｚ内の帯域からなり、およびθは範囲４〜８Ｈｚ内の帯域からなる、請求項９に記載の方法。
【請求項１１】
前記制御コマンドを計算することは、プログラムコードが、前記ニューラルプロセッサに、
【数１】
0006663007.tif 000006
ここで、上式はチャネル１〜ｎに対するパワー比の合計からなり、比＝ γ・θ／β・δであり、βは範囲１４〜２４Ｈｚ内の帯域からなり、γは範囲３０〜８０Ｈｚ内の帯域からなり、δは範囲１〜４Ｈｚ内の帯域からなり、およびθは範囲４〜８Ｈｚ内の帯域からなる、を計算するように指令すること、を具備する、請求項９に記載の方法。
【請求項１２】
プログラマブルプロセッサにより実行されると、オペラント学習ブレインマシンインタフェースの使用を通しての、ニューラルプロセッサによる出力コマンドの生成方法を実行させるプログラムコードを具備する非一時的コンピュータ読取り可能媒体であって、
前記プログラムコードは、
前記ニューラルプロセッサ上で実行されるプログラムコードにより、複数の電極から一つ以上の電極を選択するためのプログラムコードと、
前記一つ以上の選択された電極から、前記ニューラルプロセッサにおいて神経信号を受信するためのプログラムコードと、
前記受信神経信号に基づいて、閾値を設定するためのプログラムコードと、
出力コマンド率を定義するために、前記ニューラルプロセッサにタイマを設定するためのプログラムコードと、
前記タイマが終了していない間に、前記ニューラルプロセッサにより前記受信神経信号を検索および処理するためのプログラムコードと、
前記検索および処理された神経信号を入力として受信する前記ニューラルプロセッサにおける固定デコーダの使用を通して、制御コマンドを計算するためのプログラムコードと、
を具備するコンピュータ読取り可能媒体。
【請求項１３】
前記制御コマンドを、後続のハードウェアまたはソフトウェア構成要素に入力として提供するためのプログラムコード、を具備する、請求項１２に記載のコンピュータ読取り可能媒体。
【請求項１４】
現在のタスクが完了したかどうかを決定するために、前記ニューラルプロセッサ上で確認を行うためのプログラムコード、を具備する、請求項１２に記載のコンピュータ読取り可能媒体。
【請求項１５】
後続の出力コマンド率を定義するために、前記タイマを設定するためのプログラムコードと、前記タイマが終了していない間に、前記受信神経信号を検索および処理するためのプログラムコードと、を具備する、請求項１２に記載のコンピュータ読取り可能媒体。
【請求項１６】
複数の電極から一つ以上の電極を選択することは、
前記オペラントにタスクを提示するためのプログラムコードと、
前記ニューラルプロセッサにより、前記タスクの提示中に、前記オペラントの神経活動を取得するためのプログラムコードと、
前記ニューラルプロセッサによる選択基準を、前記取得した神経活動に適用するためのプログラムコードと、
前記ニューラルプロセッサにより、前記選択基準を超える一つ以上の電極を選択するためのプログラムコードと、
を具備する、請求項１２に記載のコンピュータ読取り可能媒体。
【請求項１７】
神経活動を取得するためのプログラムコードは、前記ニューラルプロセッサが神経活動を取得する時間帯を定義するために、電極選択タイマをスタートさせるためのプログラムコード、を具備する、請求項１６に記載のコンピュータ読取り可能媒体。
【請求項１８】
一つ以上の電極を選択するためのプログラムコードは、前記ニューラルプロセッサにより、前記選択基準を超える電極のサブセットを選択するためのプログラムコード、を具備する、請求項１６に記載のコンピュータ読取り可能媒体。
【請求項１９】
前記受信神経信号を処理するためのプログラムコードは、
前記受信神経信号内に含まれている一つ以上のチャネル上の信号ノイズを減衰するためのプログラムコードと、
前記一つ以上の減衰されたチャネルに対するスペクトル密度を計算するためのプログラムコードと、
前記一つ以上のチャネルに対する一つ以上の選択された帯域における平均パワーを決定するためのプログラムコードと、
前記一つ以上のチャネルに対するパワー比を決定するためのプログラムコードと、
を具備する、請求項１２に記載のコンピュータ読取り可能媒体。
【請求項２０】
前記制御コマンドを計算するためのプログラムコードは、
【数２】
0006663007.tif 000007
ここで、上式はチャネル１〜ｎに対するパワー比の合計からなり、比＝ γ・θ／β・δであり、βは範囲１４〜２４Ｈｚ内の帯域からなり、γは範囲３０〜８０Ｈｚ内の帯域からなり、δは範囲１〜４Ｈｚ内の帯域からなり、およびθは範囲４〜８Ｈｚ内の帯域からなる、を計算するためのプログラムコード、を具備する、請求項１９に記載のコンピュータ読取り可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
ここで記述される発明は、一般的に、オペラント学習ブレインマシンインタフェースに関する。特に、発明は、その出力が多様な機械および人工代替物を駆動または操作できる、固定デコーダを利用したＥＥＧに基づくブレインマシンインタフェースを実現するためのシステム、方法、およびコンピュータプログラム製品に関する。
【背景技術】
【０００２】
ブレインマシンインタフェース（ＢＭＩ）は、脳から外部装置への直接通信経路である。この通信は、神経活動を測定する記録装置を使用し、記録装置が、測定した神経活動を、信号を変換および解釈するコンピュータ（または、ハードウェアおよびソフトウェアを含む任意の他のプログラム可能装置）に送信することにより達成できる。コンピュータは、信号をアクチュエータまたは外部装置に供給し、外部装置は作業成果に関して、フィードバックをユーザに提供し、それによりループを閉じる。
【０００３】
ＢＭＩに関する基本的研究は、実験が、皮質神経全体はロボットマニピュレータを直接制御できることを明確に示した１９９０年代後半の最初の提示以来、驚異的なペースで動いてきた。実際、現在までのＢＭＩの主要な目的または使用法は、潜在性のある新しい治療法として、患者の動きに影響を与える病気または他の医療状態、特に中枢神経系に関する状態を患っている人たちのような重度障害患者における運動制御を回復することであった。例えば、上記に示唆したように、外骨格または支援機械技術の他の方法は、ＢＭＩとの統合により恩恵を得ることができ、以前は限られた可動性のために病床に制限されてきた個人に新発見の自由度を提供する。同様に、そのようなインタフェースを利用する人工または生体工学的肢部は、制限のある機械的操作とは反対に、神経信号の使用を通して、ユーザによる人工代替物の直接制御の能力を提供し、生まれつきの肢部により提供されるものにアプローチする発動作用および操作の自由度をもたらしている。
【０００４】
ＢＭＩを他と区別させる特徴は、神経信号を得るために、頭蓋内インプラントのような侵襲性技術を利用するか、または非侵襲性方法を実現するかにある。しかし、神経信号を得るために侵襲性または非侵襲性技術を使用するかどうかに拘わらず、信号に含まれている情報は、そのような情報に基づいて意味のある行動を取ることができるように解釈されなければならない。ＢＭＩシステムの設計の一つのアプローチは、復号アプローチとして知られている。この技術を使用して、コンピュータにより、記録された神経活動を自然な肢部の動きと関連付け（復号し）、それにより、受信神経信号の「意味」を時間の関数として学習する数学モデルが生成される。そしてこの活動は、神経活動単独により動きを予測するために使用できる。市場におけるほとんどの商用システムは、このパラダイムの異なる変形例を通してＢＭＩにアプローチしている。
【０００５】
復号技術を実現する例としてのシステムが、Babak 等による「応答性神経リハビリテーションのためのシステムと方法」というタイトルの国際公開第２０１４／０２５７７２号において検討されている。Babak において、著者は、典型的なシステムがユーザの脳から受信する複数の神経信号から特定の信号を抽出するように機能する適応性特徴デコーダの使用を通して、神経信号を受信することを提案している。そして Babak は、抽出した信号をリハビリテーション装置のコマンド信号にマップするように構成されている適応性運動デコーダに抽出信号を提供する。コマンド信号が出力され、それにより、ユーザからの感覚性フィードバックの生成および受信を行なわせると共に、装置を制御する。この感覚性フィードバックはまた、適応性特徴デコーダにより抽出され、その内部マッピングパラメータを適宜調整する適応性運動デコーダに渡される。このように、Babak のリハビリテーション装置は、ユーザから受信する復号された信号に基づいて、出力制御を動的に適合化する。
【０００６】
復号アプローチは、デジタルコンピュータの状況内において再構築されるべく、既にオペラントの脳内にコード化されている感覚性および他の刺激情報を必要とする。デジタルコンピュータ内のそのような再構築は、典型的には、入信神経信号に基づいて受信刺激を予測し、オペラントの複雑な近似またはモデルを要求する神経ネットワークまたは類似の構成を利用する。言い換えれば、そのようなアプローチを実現しようと試みるソフトウェアはそのような神経信号を、受信している入力と一致する所望の結果とマッチングまたはマッピングすることにより、ソフトウェア自身を入信神経信号に適合させることを要求される。そのようなアプローチは、マシン学習技術に潜在する限界、トレーニング結果が決定的でなく、初期パラメータに依存する場合の問題のトラブルシューティングにおける困難さ、既存のモデルの再トレーニングのために、後から取得データを追加することができないなどの幾つもの欠点を有している。他の復号技術は、これらのおよび他の欠点を解決することを試みるが、これらにも他の欠点および限界が同様に付随する。
【０００７】
従って、カスタムビジネスロジックが、特定、任意のタスクを行うために利用できるコマンド信号の生成を可能にする、神経変化の変動形態を利用するために新しいシステムおよび方法が必要とされる。
【発明の概要】
【０００８】
本発明は、固定のタスクを行うために使用できる出力信号を生成するために、非侵襲性電極を使用する脳信号活動の収集と連携して、固定デコーダを利用するシステム、方法、およびコンピュータプログラム製品を提供する。本発明は、ユーザが、固定デコーダの制御を通して、装置の制御を学習することを迅速に可能にし、その制御は、発明の継続使用により時間と共に向上する。
【０００９】
本発明の実施の形態は、単一のＥＥＧ周波数帯のパワーではなく、異なる周波数帯の比に基づく固定デコーダの使用を含み、デコーダを頑強にし、ジッターがより少なく、アーティファクトに対して耐性のあるＢＭＩに種々の新しい改善点を提供する。固定デコーダに対するプログラムロジックは、ハードウェアと共にソフトウェアにおいて実例を示すことができ（例えば、フィールドプログラマブルゲートアレイ）、固定デコーダが利用可能なチャネルの限られたサブセットを使用するように構成できる。従って、所与の被験者がデコーダを使用して多様な装置を制御することを学習できるように（制御コマンドは、同じ変換または複数の同じ変換を使用するという条件で）、デコーダを、ハードウェアまたはソフトウェアにおいて、それぞれの人間である被験者またはタスクに対して最適化（何れの周波数帯を使用するか、何れの特別な比またはアルゴリズムで受信信号を処理するか、何れのチャネルか、何れの重みかなど）して固定できる。
【００１０】
固定デコーダからの出力は、特定フィードバックおよびトレーニングパラメータを実現するトレーニングプログラムに提供でき、それにより、被験者がこの制御を統合すると共に、装置の制御を迅速に学習することを可能にする。トレーニングプログラムは、固定デコーダにより出力されている現在の変換の連続的なフィードバックを、過去の変換（例えば、１秒前までの）のフィードバックおよびタスクの目標が達成されたときのフィードバックの顕著性と連携して提供する。
【００１１】
前記のことを考慮して、発明の実施の形態は、オペラント学習ブレインマシンインタフェースの使用を通して、ニューラルプロセッサにより出力コマンドを生成する方法を目的とする。この実施の形態に従う発明は、ニューラルプロセッサ上で実行されるプログラムコードにより、複数の電極から一つ以上の電極を選択することと、一つ以上の選択された電極から、ニューラルプロセッサにおいて神経信号を受信することを備えている。タイマが、出力コマンド率を定義するためにニューラルプロセッサに設定される共に、閾値が、受信神経信号に基づいて設定される。タイマが終了していない間に、ニューラルプロセッサは、受信神経信号を検索および処理するためにプログラムコードを実行し、検索および処理された神経信号を入力として受信するニューラルプロセッサにおける固定デコーダの使用を通して、制御コマンドを計算する。
【００１２】
ニューラルプロセッサがユーザに接続されている状況においては、ニューラルプロセッサにより神経信号を受信することは、オペラントからの神経信号を、例えば、オペラントの頭蓋に取り付けることができる電極を介して受信することを備えている。動作中、ニューラルプロセッサは、現在のタスクが完了したかどうかを決定するために、プログラムコードを実行することにより確認を行うことができる。タスク完了の一部として、ニューラルプロセッサ上で実行されるプログラムコードは、タイマが終了していない間に、受信神経信号を検索および処理できると共に、後続の出力コマンド率を定義するためにタイマを設定できる。ニューラルプロセッサ上で実行されるプログラムコードは、そのような制御コマンドを入力として、後続のハードウェアまたはソフトウェア構成要素に提供できる。
【００１３】
電極選択のセットは、本発明の一つの実施の形態に従って、サブプロセスに分割される。より具体的には、複数の電極から一つ以上の電極を選択することは、ニューラルプロセッサにおいて実行されるプログラムコードの制御下にあるタスクをオペラントに提示することと、ニューラルプロセッサによるタスクの提示の間、オペラントの神経活動を取得することと、を具備することができる。ニューラルプロセッサは選択基準を、取得した神経活動に適用し、選択基準を超える一つ以上の電極を選択する。同様に、ニューラルプロセッサにより電極を選択することは、ニューラルプロセッサにより、選択基準を超える電極のサブセットを選択することを備えている。神経活動を取得することは更に、ニューラルプロセッサが神経活動を取得する時間帯を定義するために、ニューラルプロセッサにおいて実行されるプログラムコードにより電極選択タイマをスタートさせることを備えている。
【００１４】
ニューラルプロセッサは、自身が受信する神経信号を処理するように動作できる。本発明の実施の形態によれば、受信神経信号を処理することは、受信神経信号内に含まれている一つ以上のチャネル上の信号ノイズを減衰することと、一つ以上の減衰されたチャネルに対するスペクトル密度を計算することを備えている。平均パワーは、一つ以上のチャネルに対して一つ以上の選択された帯域において決定され、パワー比は、一つ以上のチャネルに対して決定される。一つ以上のチャネルの中の所与のチャネルに対するパワー比を決定することは、一つの実施の形態によれば、比γ・θ／β・δを計算するために、ニューラルプロセッサ上で実行されるプログラムコードにより決定される。種々の実施の形態に係る、制御コマンドを計算することは、プログラムコードが、ニューラルプロセッサに（数式１）を計算することを指示することを備えている。
【数１】
0006663007.tif 000002
【００１５】
上記のことに追加して、本発明の分野は、プログラマブルプロセッサにより実行されると、オペラント学習ブレインマシンインタフェースの使用を通して、ニューラルプロセッサにより出力コマンドを生成する方法を実行させるプログラムコードを備えている非一時的コンピュータ読込み可能媒体を含んでいる。一つの実施の形態に係るプログラムコードは、ニューラルプロセッサ上で実行されるプログラムコードにより、複数の電極から一つ以上の電極を選択するためのプログラムコードと、一つ以上の選択された電極から、ニューラルプロセッサにおいて神経信号を受信するためのプログラムコードと、を備えている。プログラムコードは、受信神経信号に基づいて閾値を設定し、出力コマンド率を定義するために、ニューラルプロセッサにタイマを設定するために提供される。本実施の形態は更に、タイマが終了していない間に、ニューラルプロセッサにより受信神経信号を処理し、検索および処理された神経信号を入力として受信するニューラルプロセッサにおける固定デコーダの使用を通して、制御コマンドを計算するためのプログラムコードを提供する。
【００１６】
追加的に、プログラムコードは、制御コマンドを入力として、後続のハードウェアまたはソフトウェア構成要素に提供するためのニューラルプロセッサの一部として供給できる。そのようなプログラムコードはまた、後続の出力コマンド率を定義するためにタイマを設定するためのプログラムコードと、タイマが終了していない間に、受信神経信号を検索および処理するためのプログラムコードと共に、現在のタスクが完了したかどうかを決定するために、ニューラルプロセッサ上で確認を行うためのプログラムコードも具備することができる。
【００１７】
ニューラルプロセッサは、処理のための神経信号を自身が収集する電極を選択できる。そのため、複数の電極から一つ以上の電極を選択するためのプログラムコードは、タスクをオペラントに提示するためのプログラムコードと、ニューラルプロセッサによるタスクの提示中に、オペラントの神経活動を取得するためのプログラムコードと、を具備することができる。プログラムコードの更なる部分は、ニューラルプロセッサにより選択基準を取得した神経活動に適用でき、ニューラルプロセッサにより、選択基準を超える一つ以上の電極を選択できる。一つ以上の電極を選択するためのプログラムコードはまた、ニューラルプロセッサにより、選択基準を超える電極のサブセットを選択するためのプログラムコードも具備することができる。
【００１８】
神経信号を処理することにおいて、受信神経信号を処理するためのプログラムコードは、受信神経信号内に含まれる一つ以上のチャネル上の信号ノイズを減衰し、一つ以上の減衰されたチャネルに対するスペクトル密度を計算するためのプログラムコードを具備することができる。ニューラルプロセッサにおいて実行されるプログラムコードは更に、一つ以上のチャネルに対する一つ以上の選択された帯域における平均パワーを決定するためのプログラムコードと、一つ以上のチャネルに対するパワー比を決定するためのプログラムコードと、を備えている。一つの実施の形態に係る、制御コマンドを計算するためのプログラムコードは、（数式２）を計算するためのプログラムコードを備えている。
【数２】
0006663007.tif 000003
【図面の簡単な説明】
【００１９】
発明は、例であり非制限的なものとしての意味を有する付随する図面における図において例示され、図においては、類似の参照符号は類似または対応する部分を指すものと意図されている。
【００２０】
【図１Ａ】図１Ａは、本発明の一つの実施の形態に係る、固定デコーダを利用するブレインマシンインタフェース全体を例示するシステム図を提示している。
【図１Ｂ】図１Ｂは、本発明の一つの実施の形態に係る、タスクを行うために固定デコーダを利用するニューラルプロセッサを例示するブロック図を提示している。
【図２】図２は、本発明の一つの実施の形態に係る、トレーニングアプリケーションのためのユーザインタフェースを例示している。
【図３】図３は、本発明の他の実施の形態に係る、トレーニングアプリケーションのためのユーザインタフェースを例示している。
【図４】図４は、本発明の一つの実施の形態に係る、固定デコーダを利用するニューラルプロセッサの実行のための方法全体を例示するフロー図を提示している。
【図５Ａ】図５Ａは、本発明の一つの実施の形態に係る、電極選択の方法を例示するフロー図を提示している。
【図５Ｂ】図５Ｂは、本発明の他の実施の形態に係る、電極選択の方法を例示するフロー図を提示している。
【図６】図６は、利用可能な電極のセットからの、電極のサブセットの選択を例示するブロック図を提示している。
【図７】図７は、本発明の一つの実施の形態に係る、チャネルパワー比を使用する固定デコーダによる信号取得および処理の方法を例示するフロー図を提示している。
【図８】図８は、本発明の一つの実施の形態に係る、コマンドの出力のためのプロセスを例示するフロー図を提示している。
【図９】図９は、本発明の一つの実施の形態に係る、出力コマンドを決定するための、固定デコーダによる信号処理の方法を例示するフロー図を提示している。
【発明を実施するための形態】
【００２１】
ここで主題を、発明を実践できる例としての実施の形態の一部を形成し、それを例として示している付随する図面を参照して以下により完全に記述する。しかし主題は、多様な異なる形式で具現化できるので、ここで扱われ、または主張される主題は、ここで記述される例としての実施の形態の何れにも制限されるのではないとして解釈されることが意図されており、例としての実施の形態は、単に例示として提供される。本発明の範囲から逸脱することなく、他の実施の形態を利用でき、構造上の変更を行うことができるということは理解されるべきである。同様に、主張され、または扱われた主題に対しては、合理的に広い範囲が意図されている。とりわけ、例えば主題は、方法、装置、構成要素、またはシステムとして具現化できる。従って、実施の形態は、例えばハードウェア、ソフトウェア、ファームウェア、またはその任意の組み合わせ（ソフトウェア自身以外）の形状を取ることができる。従って、下記の詳細な記述は、制限的な意味で受け取られることは意図されていない。
【００２２】
明細書と請求項とを通して、用語は、明確に記述された意味を越える状況において示唆されまたは暗に意味される微妙に異なる意味を有することができる。同様に、ここにおいて使用されているような「一つの実施の形態における」という語句は、必ずしも同じ実施の形態のことを指しているわけではなく、ここで使用されているような「他の実施の形態における」という語句は、必ずしも異なる実施の形態を指しているわけではない。例えば、主張される主題は、例としての実施の形態の全部、または一部の組み合わせを含むことが意図されている。
【００２３】
図１は、本発明の一つの実施の形態に係る、固定デコーダを利用するブレインマシンインタフェース全体を例示しており、具体的には、これらの種々の構成要素間の閉ループ関係を例示している。図１のシステムは、ユーザ１００の頭皮に取り付けられる複数の電極１０４を備えており、電極１０４は、頭皮上で電極１０４の空間的配置を維持する帽子またはそれに類似する外被１０２により、適切な場所に取り付け、または維持できる。複数の電極のそれぞれは、個々のリード線１０６を介してニューラルプロセッサ１０８と通信しており、リード線１０６は典型的には、所与の電極１０４により受信される信号に対する電線管として働く金属ワイヤから形成されている。
【００２４】
ニューラルプロセッサ１０８は、ユーザ１００の頭皮と接触している複数の電極１０４の一つ以上により収集される神経信号を得るように動作するハードウェアおよびソフトウェアを備えている。種々の実施の形態によれば、ニューラルプロセッサ１０８は、局所的格納およびほぼリアルタイムな処理のために受信神経信号を収集でき、または、信号がニューラルプロセッサ１０８に受信されたときに、リアルタイムで信号を処理できる。何れの実施の形態においても、ニューラルプロセッサ１０８は神経信号のセットを受信し、この神経信号のセットは、電極１０４により収集された種々の周波数帯域、例えば、デルタ、シータ、アルファ、およびベータ波に従って図示表現できる（１１０）。
【００２５】
ニューラルプロセッサ１０８は、ユーザ１００の頭皮に取り付けられている電極１０４のそれぞれから受信する神経信号を利用できる。代替として、ニューラルプロセッサ１０８は、神経信号を受信し、プロセスを、選択された電極１０４から受信した神経信号に制限する、利用可能な電極のサブセットを選択できる。ニューラルプロセッサ１０８は、考慮対象の電極１０４から受信する神経信号に含まれる種々の周波数帯域を、例えば、この技術における当業者にはよく知られているスペクトル技術を使用して抽出して、所与の時点における種々の帯域に対する値を固定デコーダ１１２に渡す。所与の時点における種々の帯域の値に基づいて、固定デコーダ１１２は、特定、任意のタスクを行うための、アプリケーション１１４により制御コマンドとして利用できる出力値を計算する。
【００２６】
ニューラルプロセッサ１０８は、電極１０４から神経信号を継続的に受信して種々の帯域を抽出し、これら種々の帯域は固定デコーダ１１２に渡され、固定デコーダ１１２は、タスクを行うためにアプリケーション１１４により使用される出力値を生成する。このようにして、ユーザ１００はアプリケーションと相互作用するためにある期間の間、信号を送り続けることができる。例えば、固定デコーダ１１２は、ある期間におけるカーソルの位置、ディスプレイ上で対象物を動かす方向などを表しているコマンド信号を出力できる。ユーザ１００がニューラルプロセッサ１０８と相互作用するとき、彼または彼女は、アプリケーション１１４のユーザインタフェースから、例えば、カーソルが特別な方向に移動するようなフィードバックを受信する。ユーザインタフェースからフィードバックを提供することにより、ユーザ１００は、そのような制御を統合すると共に、アプリケーションが提示する特定、任意のタスクを制御することを迅速に学習できる。
【００２７】
図１Ｂは、本発明の一つの実施の形態に係る、タスクを行うために固定デコーダを利用するニューラルプロセッサを例示するブロック図を提示している。図１Ｂのニューラルプロセッサ１３０は、一つ以上の電極１３２のセットとディスプレイ装置１５２との両者と通信している。動作中、ニューラルプロセッサ１３０は、一つ以上の電極１３２のセットから神経信号を受信し、固定デコーダ１４８を使用して受信神経信号を処理する。固定デコーダ１４８は、ユーザにより生成された神経信号に基づいて計算されたコマンド信号に関するディスプレイ装置１５２へのフィードバックと共に、アプリケーション１３６による使用のためのコマンド信号を出力する。ディスプレイ装置１５２は、本発明の実施の形態により制御される任意の数の末端周辺機器と置き換えることができるということは留意すべきである。例えば、ディスプレイの代わりに、ディスプレイ装置１５２と、その関連するディスプレイインタフェース１５０とが、フライトコントロールインタフェースおよびフライトコントロールと置換されるように、固定デコーダ１４８により出力されるコマンド信号をフライトコントロールアプリケーションのためのビジネスロジックにより解釈できる。同様に、コマンド信号は、指向性コマンド信号のようなコマンド信号の受信を必要とする車椅子、義肢、または事実上、任意の他の装置を制御するために使用できる。
【００２８】
図１Ｂが例示している実施の形態に注目すると、多数の電極１３２が神経入力インタフェース１３４上でニューラルプロセッサ１３０と通信している。神経入力インタフェース１３４は、ＲＡＭ１４０またはＲＯＭ１４２から受信した指令を自身で実行する中央演算装置１３６の制御のもとで、ニューラルプロセッサが電極から受信している神経信号内に含まれている特定帯域を、消去または増幅するために一つ以上のルーチンを実行する。特定電極およびそれを備えている周波数帯域の選択のための技術は、ここにおいて、より詳細に記述される。
【００２９】
神経入力インタフェース１３４とディスプレイインタフェース１５０とに加えて、ニューラルプロセッサ１３０は、中央演算装置（「ＣＰＵ」）１３６、ＲＡＭ１４０、ＲＯＭ１４２、永続格納装置１３８、電極セレクタモジュール１４４、固定デコーダ１４８、およびタスク専用ビジネスロジック１４６を備えている。ＣＰＵ１３６は、ニューラルプロセッサ１３０の主要制御構成要素であり、ニューラルプロセッサ１３０を備えている他の構成要素の代わりに、またはその構成要素と連携して指令を実行できる。異なる構成要素またはモジュールとして提示されているが、電極セレクタ１４４、固定デコーダ１４８、およびタスクビジネスロジック１４６を備えているプログラムロジックは、ＣＰＵによる実行のためにランダム（１４０）または永続格納装置１３８に格納されるソフトウェアアプリケーションまたはルーチンとして種々の実施の形態に従って実現できる。
【００３０】
例示されているように、ニューラルプロセッサ１３０は、データおよびプログラムコードのための過渡性（１４０）、永続（１３８）、および永久（１４２）格納装置を提供する幾つかのデータ格納構造に対するアクセスを有している。永続格納装置１３８は、ニューラルプロセッサ１３０がパワーダウン状態になると、セッション間のデータおよびプログラムコードの格納装置を提供する。永続（１３８）格納装置の例としては、ハードディスクドライブとフラッシュメモリとがあるが、これらに制限されるわけではなく、それぞれは、ニューラルプロセッサが、所与の時間における１人以上のユーザからの収集神経信号と共に、プログラムコードを維持することを可能にする。ＲＡＭ１４０のような過渡性格納装置は、ＣＰＵが、プログラムコード、およびそのようなプログラムコードを実行するために必要な如何なるデータをも実行することを維持するための高速メモリ空間を提供し、一方、ＲＯＭ１４２のような永久メモリは、起動または初期化時にＣＰＵにより典型的に使用される読取り専用指令を提供する。
【００３１】
示されているように、ニューラルプロセッサ１３０はまた、電極セレクタ１４４、固定デコーダ１４８、およびタスクビジネスロジック１４６も備えている。電極セレクタ１４４は、一つ以上のルーチン（ＣＰＵによる処理と連携して実行できる）を実行するように動作し、ルーチンは、神経信号が読み込まれる特定電極を選択し、処理のための周波数帯域を抽出する。電極セレクタ１４４が出力する周波数帯域は、固定デコーダ１４８に入力として提供され、固定デコーダ１４８は、電極セレクタ１４４が固定デコーダ１４８に入力として提供する特定周波数帯域に対するパワーレベルに基づいて、固定デコーダ１４８が計算できる制御値または信号を出力する。
【００３２】
固定デコーダ１４８は、コマンド信号に含まれる指令に基づいてタスクを行うように動作するタスクビジネスロジック１４６にコマンド信号を出力する。一つの実施の形態によれば、ある値より低いコマンド信号は、ある方法でディスプレイ画面を再描画し、ある範囲でカーソルを操作するためなどに、タスクビジネスロジックへのコマンドとして働く。タスクビジネスロジック１４６はタスク専用であり、ビジネスロジックが目的とする特定タスクに従って修正できる。タスクビジネスロジック１４６は、特別な方法で、固定デコーダ１４８からのコマンド信号に応答するために、ハードウェアおよびソフトウェアの種々の組み合せにおいてプログラムできる。例えば、タスクが、画面上のカーソルを制御することであれば、タスクビジネスロジックを、タスクビジネスロジックが固定デコーダから受信するコマンド信号に基づくカーソルの表示に関して、ある行動を取るようにプログラムできる。
【００３３】
図２および図３は、本発明の種々の実施の形態に係る、トレーニングアプリケーションのためのユーザインタフェースを例示している。図２および図３のユーザインタフェースは、タスクビジネスロジックからの出力の実施の形態を表現しており、この実施の形態においては、タスクビジネスロジックは、プロセッサにユーザインタフェースを表示し、ビジネスロジックが固定デコーダから受信するコマンド信号に基づいて、ユーザインタフェース内で変位されたカーソルを操作することを指令するように動作する。図２から始めると、ユーザインタフェースは、ユーザに対して、ディスプレイ装置２０２内で種々の図形として提示される。ディスプレイ２０２上のユーザインタフェースは、ユーザが完成させるタスクを提示し、本実施の形態においては、このタスクは、上側の目標ライン２０４を越えるようにユーザがカーソル２１０を操作することを試みることを要求している。タスクの要求内容は、ディスプレイ２０２上のインタフェースの右上側の隅に配置されている、上方を指し示している矢印により表現された視覚コマンドまたはキューによりユーザに伝えられる。
【００３４】
ユーザに提示された直接のタスクに加えて、ディスプレイ２０２上のユーザインタフェースは、時間の関数としての、ディスプレイ２０２上のカーソル２１０の位置に関する履歴フィードバック２１２をユーザに提供する。このようにして、ユーザは、固定デコーダの出力に関する履歴を観測でき、ニューラルプロセッサが受信している神経信号に含まれている種々の周波数帯域のパワーを修正できる。プロセッサが表示するようにプログラムされている履歴フィードバック２１２のこの視覚的軌跡は、増加または減少できるが、何れにしても、現在のユーザに対する現在のセッションの間の二次元空間におけるカーソルの履歴位置を表現している。
【００３５】
ユーザが、神経信号をニューラルプロセッサに送ることによりニューラルプロセッサと相互作用するとき、固定デコーダは、タスクビジネスロジックが、ディスプレイ２０２上でカーソルの位置を決めるために使用するコマンド信号を計算または生成する。ユーザが現在のタスク、本実施の形態においては、キュー２１４により示されているように、ディスプレイ２０２上に提示されている上側の目標ライン２０４の上方にカーソルを位置させるタスクを満たすと、ディスプレイ２０２を制御しているプログラムコードは、プロセッサにタスクが満たされたことを示すものを提示または投影するように指令でき、例えば、成功を示す視覚的表示またはテキストを表示するように指令できる。例としてのタスクビジネスロジックは、二次元空間においてディスプレイ２０２上にカーソルを描画するために、固定デコーダからコマンド信号を受信するが、タスクビジネスロジックもまた、ディスプレイ２０２上の他のユーザインタフェース構成要素の描画および表示を制御できる。代替として、またはタスクビジネスロジックと連携して、ＣＰＵが実行する他のプログラムコードは、ディスプレイ２０２上の他のユーザインタフェース構成要素の描画および表示を制御できる。
【００３６】
前記のユーザインタフェース構成要素に加えて、ディスプレイはまた、下側の目標ライン２０８と共に、二つの内側のリセットライン２０６ａおよび２０６ｂもまた描画する。下側の目標ライン２０８は、上側の目標ラインと同様に、ここにおいて、より詳細に検討したように、あるタスクを満たすためにユーザが操作してカーソルを越えさせなくてはならない視覚的敷居として働く。リセットライン２０６ａおよび２０６ｂは、ある時間の間二つの内側のリセットラインの間にカーソルを保つことにより、現在のタスクをリセットすることを可能にする。
【００３７】
図２と同様に、図３は、種々の図形として、ディスプレイ装置３０２内でユーザに提示されるユーザインタフェースを例示している。ディスプレイ３０２上のユーザインタフェースは、ユーザが完成させるタスク、本実施の形態においては、下側の目標ライン３０４を越えてカーソル３１０を操作するようにユーザが試みることを要求するタスクを提示する。視覚コマンドまたはキューが、ユーザにタスクの要求内容を伝え、その要求内容は、本実施の形態においては、ディスプレイ３０２上のインタフェースの右下側の隅に配置されている、下方向を指し示している矢印３１４により表現されている。
【００３８】
ユーザに提示された直接のタスクに加えて、ディスプレイ３０２上のユーザインタフェースは、時間の関数としての、ディスプレイ３０２上のカーソル３１０の位置に関する履歴フィードバック３１２をユーザに提供する。このようにして、ユーザは、固定デコーダの出力に関する履歴を観測でき、ニューラルプロセッサが受信している神経信号に含まれている種々の周波数帯域のパワーを修正できる。履歴フィードバック３１２のこの視覚的軌跡は、増加または減少できるが、何れにしても、現在のユーザに対する現在のセッションの間の二次元空間におけるカーソルの履歴位置を表現している。
【００３９】
ユーザが現在のタスク、本実施の形態においては、キュー３１４により示されているように、ディスプレイ３０２上に提示されている下側の目標ライン３０４の下方にカーソルを位置させるタスクを満たすと、ディスプレイ３０２を制御しているプログラムコードは、タスクが満たされたことを示すものを提示または投影でき、例えば、成功を示す視覚的表示またはテキストを表示できる。例としてのタスクビジネスロジックは、二次元空間においてディスプレイ３０２上にカーソルを描画するために、固定デコーダからコマンド信号を受信するが、タスクビジネスロジックもまた、ディスプレイ３０２上の他のユーザインタフェース構成要素の描画および表示を制御できる。代替として、またはタスクビジネスロジックと連携して、ＣＰＵが実行する他のプログラムコードは、ディスプレイ３０２上の他のユーザインタフェース構成要素の描画および表示を制御できる。前記のユーザインタフェース構成要素に加えて、ディスプレイはまた、上側の目標ライン３０８と共に、二つのリセットライン３０６ａおよび３０６ｂもまた描画し、その両者は、図２と連携して記述したものと類似するように機能する。
【００４０】
上述したように、図２および図３に例示したユーザインタフェースは、ある時間の間、二次元空間においてカーソルを操作することをユーザに要求するタスクビジネスロジックの一部であることができる。一つの実施の形態によれば、タスクは、１０日間のトレーニング期間（例えば２週間の間、途中に２日の休みを含んで、１日当たり１セッション）を通して、１日当たり３回の１０分間実行行程から構成されている。テスト期間の間、ＥＥＧ電極のセットの神経活動は記録され、同時に、固定デコーダを使用して変換され、その情報は、ディスプレイ上のカーソルの位置を設定するために使用される。デコーダと選択された電極との両者は、最初のセッションの間に一度だけのみ確立され、トレーニング期間を通して変化しない。一つの実施の形態によれば、タスクは下記のように設計されている。ユーザには、カーソルが向けられるべき二つの可能な目標領域の一つ、例えば、上側制御ライン２０４の上方、または下側制御ライン２０８の下方を示しているキュー、例えば、キュー２１４またはキュー３１４が示される。正しい目標に到達した場合は、画面を満たすカラフルなパッチを含むことができる、満足を与える視覚的表示が提示され、それにより、ユーザは積極的になるように強化される。これは、正しいトライアルであると考えられる。他方、正しくない目標に到達した場合、または３０秒が経過した場合は、ユーザは強化されず、トライアルは正しくないとして終了する。新しいトライアルを再スタートするためには、ユーザは、カーソルをリセットラインと連携して中心位置に２秒間保つ必要がある。
【００４１】
図４は、本発明の一つの実施の形態に係る、固定デコーダを利用するニューラルプロセッサの実行のための方法全体を例示するフロー図を提示している。前記に示したように、ユーザには、複数の電極を取り付けることができ、この電極を通して、ニューラルプロセッサは、処理のための神経信号を捕捉する。従って、図４の処理は、利用可能な電極のセットからの電極の選択から開始する（ステップ４０２）。タスクに対する神経信号を捕捉するために使用される電極に関して決定が行われると、収集された神経信号に基づいて、ユーザに対する閾値が設定される（ステップ４０４）。電極選択とタスク閾値設定のプロセスは、ここで、より詳細に記述される。
【００４２】
ある実施の形態によれば、ＥＥＧ取得周波数は、処理／フィードバック周波数よりも高い（それぞれ２０４８Ｈｚおよび４Ｈｚ）。この理由のため、収集されたＥＥＧデータを、より低い周波数での検索のためにバッファに格納できる（ステップ４０６）。バッファが、１秒前の神経データ（２０４８点）に対応する、カーソルの現在の位置を計算するために必要なデータすべてを含んでいるかどうかを決定するために確認が行われる。含まれていない場合は、方法は、バッファが満杯になるまでバッファを確認することを継続する（ステップ４０８）。ある実施の形態によれば、カーソルの位置は２５０ｍｓ毎に更新され、これは、バッファは常に、前の時間のステップで処理されたデータの７５０ｍｓ（１５３６点）と共に、処理のための「新しい」ＥＥＧデータの２５０ｍｓ（５１２点）を含んでいることを意味している。バッファが満杯になると、ニューラルプロセッサは、固定デコーダを使用してデータを処理し（ステップ４１０）、固定デコーダは、最後の収集時間帯を使用して固定デコーダが検索且つ処理した神経信号に基づいて、制御コマンドを計算または導出して出力する(ステップ４１２）。
【００４３】
制御コマンドが出力されると（ステップ４１２）、ニューラルプロセッサ上で実行されるソフトウェアはプロセッサに、ユーザが実行しているタスクが完了したかどうかを決定するために確認を行うように指示する（ステップ４１４）。ニューラルプロセッサにおける固定デコーダの使用を通して、ユーザがアプリケーションとの相互作用を継続している状況においては（ステップ４１６）、プログラムフローはステップ４０６に戻る。従って、ニューラルプロセッサはバッファからデータを再び検索して、バッファが満杯かどうかを確認して、プロセッサが神経信号を処理して、コマンドをデコーダから出力することを可能にする。活動中のタスクが終了すると、プロセスは終了する（ステップ４１６）。
【００４４】
本発明の種々の実施の形態に従って、最初にニューラルプロセッサを使用するときは、ベースラインの計算が、神経信号の収集のために使用される電極を選択し、起動閾値を設定することによりニューラルプロセッサを較正するために行われる。利用可能な電極のサブセットは、ベースラインの神経活動に基づいて所与のユーザに対して選択できる。図５Ａは、本発明の一つの実施の形態に係る、電極選択の方法を例示するフロー図を提示している。
【００４５】
図５Ａに例示されているプロセスによれば、電極選択の方法は、電極選択タイマをスタートさせることにより開始される、収集および処理時間帯に行われる。一つの実施の形態によれば、電極選択タスクのための収集および処理の期間は、５分の時間帯に起こる。時間帯がオープンの間、つまり、電極選択タイマが終了していない間は、ニューラルプロセッサはタスクをユーザに提示し（ステップ５０４）、ユーザの自然な神経活動の取得を継続する（ステップ５０６）。例えば、ベースライン収集行程は５分の時間帯に行うことができ、その間、ユーザは、タスクの写真が表示されているディスプレイ画面を見るように要請される。この期間の間、ユーザはタスクを制御することができず、この表示の主な目的は、ニューラルプロセッサが、ユーザに何のフィードバックも提供することなく、ユーザから神経信号を取得することを可能にすることである。これにより、ユーザの自然な神経活動の取得が可能になる。
【００４６】
タスクの提示および神経信号取得の間（ステップ５０４およびステップ５０６）、システムは、電極選択タイマが終了したかどうかを判断するために確認を行う（ステップ５０８）。電極選択タイマが終了していない場合は、プログラムフローはステップ５０４に戻り、それによりニューラルプロセッサは、ユーザへのタスクの提示および自然な神経活動の収集を継続する。タイマが終了し、神経信号の収集が終了すると、収集された神経信号は、種々の選択基準に従って処理される（ステップ５１０）。選択基準の適用は、図５Ｂと共に、より詳細に記述される。
【００４７】
選択基準は、ニューラルプロセッサが、その神経信号の収集を、選択基準を満たすある数の電極に制限することを可能にする（ステップ５１２）。より具体的には、ユーザに複数の電極を取り付けた場合に、ニューラルプロセッサは、選択基準を満たすある数のそれらの電極のみを選択する。例えば、ユーザに２０個の電極が用意されたとすると、ニューラルプロセッサは、選択基準を最もよく満たす５個の電極を選択することができる。代替として、図５Ａの方法は、方法がその解析を、個々の電極とは反対に、電極のセットの種々の組み合わせで行うように動作できる。
【００４８】
図５Ｂは、選択基準の適用を、図５Ａで提示された電極選択プロセスの一部として例示している。図５Ｂのプロセスは、解析のための考慮対象の電極の第一サブセットの選択（ステップ５２２）から開始する（ステップ５２０）。例えば、考慮対象の電極のサブセットが５個で、考慮対象の電極のセットの総数が１７個の場合、プロセスは、その解析を、５個の電極の６１８８通りの組み合わせで行わなければならない。従って、電極の第一サブセットが選択され（ステップ５２２）、第一次ソートが、所与のサブセットに対して、正規性までの距離に従って適用される（ステップ５２４）。一つの実施の形態によれば、１サンプルコルモゴロフ−スミルノフテストが、任意のサンプルの分布の正規性をテストするために適用され、これには、標準正規分布との比較のために所与のサンプルを標準化することが含まれる。
【００４９】
第一次ソート（ステップ５２４）に加えて、第二次ソートが、歪度に従ってサブセットをソートするために適用され（ステップ５２６）、ここにおいて歪度とは、実数値変数の確率分布の、その平均値のまわりの非対称性の尺度である。第一次ソートと第二次ソート（ステップ５２４およびステップ５２６）それぞれの適用に続き、ソートを必要とする、考慮対象の電極の追加的サブセットがあるかどうかを決定するために確認が行われる（ステップ５２８）。考慮対象の追加的サブセットがある場合は、処理はステップ５２２に戻り、追加的サブセットが、ここで記述された第一次および第二次ソートに従って処理される。
【００５０】
考慮対象の電極の種々のサブセットのソートと順序付けが行われると（ステップ５２２から５２８まで）、方法は続けて、電極サブセット選択のための特定閾値を設定する（ステップ５３０）。電極サブセット選択のための特定閾値の設定は、閾値に到達することが易し過ぎることもなく、難し過ぎることもないように、所与のタスクに対して、主観的な「ぴったりの値」に任意に基づくことができる。従って、所与のシステムが実現できる特定閾値に関しては、幅広いバリエーションがある。一つの実施の形態によれば、および図２と図３のトレーニングアプリケーションが提示するインタフェースに基づくと、閾値は、標準偏差の２．９倍で所与のタスクに対して設定でき、タスクに対する目標条件を満たす電極のサブセット、例えば、５個の電極のサブセットを、設定された回数だけ初期化の間に識別する。例えばステップ５３０で、および図２の状況においては、方法は、タスクに対する目標条件（例えば、上側の目標ラインを越えること）を満たす電極のサブセットを、５分間の間に４回識別できる。
【００５１】
閾値がタスクに対して設定され（ステップ５３０）、電極の第一サブセットが考慮のために、設定された閾値に従って選択される（ステップ５３２）。閾値基準が考慮対象の電極のサブセットに適用され、考慮対象のサブセットが、設定された閾値基準を満たすかどうかを決定するために確認が行われる（ステップ５３４）。考慮対象のサブセットが選択のための閾値基準を満たす場合は、処理はステップ５３６に進み、考慮対象のサブセットが、選択候補として印を付けられる。しかし、方法がステップ５３４で行う確認が真と判定されるかどうかに拘わらず、プログラムフローは、最終的にはステップ５３７に向かい、ステップ５３０で設定された閾値と比較して、解析を必要とする考慮対象の追加的サブセットがあるかどうかを決定するために確認が行われる。追加的サブセットが考慮を必要な場合は、後続のサブセットが解析のために選択される（ステップ５３２）。
【００５２】
考慮対象の電極の多数またはすべてのサブセットが、選択基準閾値を満たすことが可能なので（可能性はかなり低いが）、方法は、選択基準閾値を満たす考慮対象のサブセットを順序付けるための格付けを行う（ステップ５３８）。最高格付けのサブセットが、ニューラルプロセッサが処理のための神経信号と、神経信号に基づくコマンド信号の出力を収集するために使用できる電極のサブセットとして選択されるように、選択が行われる（ステップ５４０）。電極の最高格付けのサブセットがｎ個あるときは、方法は、ｎ個の中の任意の所与の電極のサブセットを自由に選択できる。
【００５３】
電極選択方法（図５Ａ）と選択基準の適用（図５Ｂ）とに基づいて、図６は、利用可能な電極のセットからの電極のサブセットの選択を例示するブロック図を提示している。図６の実施の形態によれば、ユーザ６０２には、ユーザ６０２の頭蓋全体に渡ってパターン状に変位されている電極６０４ａ、６０４ｂ、および６０４ｃのような多数の電極が用意される。前に示したように、電極のセット、例えば、電極６０４ａ、６０４ｂ、および６０４ｃは、接着剤の使用または電極を帽子または類似の外皮に取り付けてそれをユーザ６０２に装着するような、種々の技術に従ってユーザ６０２の頭皮に取り付けることができる。
【００５４】
発明のある実施の形態に従って、利用可能な電極の総数のうちのサブセットのみが解析または調べられて、受信信号の品質が、ここで記述されたような固定デコーダを使用するＢＭＩを駆動するために十分であるかどうか決定する。例として示すと、ユーザ６０２に用意された電極の全体のセットの中の、考慮対象である１７個の電極６１８のセット（「解析セット」）がある。解析セットを考慮して、本発明の実施の形態は、５個の電極のサブセットのような解析セットを形成する電極のサブセットの種々の組み合わせからの神経信号を解析する。解析セットにおける１７個の電極全体のうち、５個の電極の組み合わせのサブセットから、ある時間において受信した神経信号の解析は、解析する６１８８個の可能なサブセットの範囲を提供する。
【００５５】
図５Ａおよび図５Ｂにそれぞれに関連して記述されたような電極選択方法および選択基準６１６を適用して、５個の電極のサブセットが、ニューラルプロセッサが提供するＢＭＩの動作と連携して、神経信号の収集における使用のために選択される。この例によれば、解析セットには最初は１７個の電極があった。解析セットから、選択方法を満たした５個の電極のサブセットが選択され、このサブセットは、電極６０６、６０８、６１０、６１２、および６１４を含んでいる。この技術における当業者は、ここにおいて記述したものを含めて、任意の特定の選択方法の適用が、２人の異なるユーザが同じ電極のサブセットを使用できるが、任意の所与のユーザに対する異なる電極のサブセットの選択という結果になり得るということを認識する。
【００５６】
図７は、本発明の一つの実施の形態に係る、信号取得と、チャネルパワー比を使用する固定デコーダによる処理と、の方法を例示するフロー図を提示している。本実施の形態によれば、一つ以上の所与のチャネルに対するパワー比を決定する方法は、システム初期化とチャネル選択閾値の設定とから開始する（ステップ７０２）。このステップにはまた、固定デコーダによる処理のために、神経信号が取得される特定のセットまたは電極のサブセットの選択も含めることができる。
【００５７】
方法は続けて、処理する追加的チャネルがあるかどうかを決定するために確認を行い（ステップ７０４）、ループの最初の繰返しでは真と判定され、処理のための第一チャネルの選択を行わせる。ステップ７０４で真と判定された場合、プログラムフローはステップ７０６に進み、そこにおいて方法は、所与の選択されたチャネル上の信号ノイズを減衰する。一つの実施の形態によれば、方法は、帯域除去フィルタまたは帯域消去フィルタとも称されるノッチフィルタを実現して、ある範囲、例えば５０Ｈｚあたりの周波数を減衰する。方法は更に、Butterworth フィルタであってよいフィルタを信号に適用する。一つの実施の形態によれば、Butterworth フィルタは、１Ｈｚと５０Ｈｚの間の４等級のフィルタである。ステップ７０８における Butterworth フィルタの使用は、所与のチャネル上の入信神経信号が、通過帯域の外側で、可能な限り平坦な周波数応答を有することを可能にする。
【００５８】
図７の実施の形態によれば、方法は続けて、所与の神経信号から線形傾向または平均値を除去し（ステップ７１０）、これは、入信神経信号から長期傾向を除去して、短期変化を強調するデトレンド（傾向除去）関数の使用を通して方法により達成できる。方法を実現するプログラムロジックは、チャネル上の結果としての神経信号のスペクトル密度を決定し（ステップ７１２）、信号内に含まれる多数の帯域に対して決定された平均パワーを決定するために計算を行う（ステップ７１４）。一つの実施の形態によれば、方法は、下記の帯域、つまりベータ（β）（１４〜２４Ｈｚ）、ガンマ（γ）（３０〜８０Ｈｚ）、デルタ（δ）（１〜４Ｈｚ）、およびシータ（θ）（４〜８Ｈｚ）に対する平均パワーを計算する。方法が、所与のチャネルにおける選択された帯域に対する平均パワーを決定すると（ステップ７１４）、プログラムフローはステップ７０４に戻り、方法は更に、処理を必要とする追加的チャネルがあるかどうかを決定するために確認を行う。
【００５９】
選択された電極のサブセットにより利用可能にされたチャネル上の神経信号の処理が完了すると、方法は、前記チャネルに対するパワー比の決定を終了する（ステップ７１６）。発明の一つの実施の形態に従って、図７の方法は、下記のような等式１に従うパワー比を実現する。
【数３】
0006663007.tif 000004
等式１
等式１のパワー比を利用することにより、方法は、ニューラルプロセッサに考慮対象の離散帯域のパワーレベルに応じた、所与のチャネルに対する全体のパワー値を提供する。
【００６０】
この技術における当業者は、図７の方法が、入信神経信号の異なる周波数のパワーの如何なる特定の比または組み合わせも必要としないということを認識すべきである。ここで記述された帯域のパワー比は例に過ぎず、制限的であることは意図されていない。更に、固定デコーダは特定の帯域のパワーレベル、例えば、信号振幅などのような時間ドメインにおける特徴の他に、追加的な情報を利用できる。本発明の一つの実施の形態に係る、下記の例としての擬似コードは、図７で記述した処理ステップを実現する。
define Butterworth filter parameters
apply Butterworth filter to signal
define Notch filter parameters apply
Notch filter to signal
% Spectrogram
for iChannel in NChannels
detrendedSignal=detrend(data(iChannel)）
calculate PSD of detrendedSignal
end
% Compute mean power of bands
beta=mean(psd[14:24]);
gamma=mean(psd[30:80]);
delta=mean(psd[1:4])
theta=mean(psd[4:8]);
% Compute power ratio
powerRatio=(theta*gamma)/(delta*beta);
position=log(sum(powerRatio[selectedChannels]));
【００６１】
本発明の実施の形態は、出力コマンドを生成するために、神経信号の所与のセット内の特定の帯域のパワーレベルを利用する。図８は、神経信号の所与のセット内の特定の帯域のパワーレベルを考慮して、出力コマンドを決定するためのハイレベルプロセスの一つの実施の形態を提示している。図８の方法によれば、信号内の特定の帯域が処理のために選択され、帯域に対する平均パワーレベルが決定される（ステップ８０２および８０４）。プログラムフローは続けて、考慮対象のチャネル（電極）全体における選択された帯域に対するパワー比を計算する（ステップ８０６）。方法は、出力コマンド信号を決定するために、チャネルに対するパワー比を使用し（ステップ８０８）、出力コマンド信号は、タスク専用ビジネスロジックがタスクを行うために利用できる。
【００６２】
図９は、本発明の一つの実施の形態に係る、出力コマンドを決定するための、固定デコーダによる信号処理の方法を例示するフロー図を提示している。図９の実施の形態によれば、方法は、第一チャネルに対するパワー比の選択（ステップ９０２）と、別のチャネルに対するパワー比の選択（ステップ９０４）と、から開始できる。方法は、第一チャネルおよび別のチャネルに対するパワー比の合計を計算し（ステップ９０６）、その合計を、過渡性または永続格納構造のようなメモリ構造に格納する。
【００６３】
方法は、考慮対象のチャネルのセットの一部として、解析のための追加的チャネルがあるかどうかを決定するために確認を行う（ステップ９０８）。追加的チャネルが存在する場合は、方法は、後続のチャネルに対するパワー比を選択する（ステップ９１０）。後続のチャネルに対するパワー比と、メモリにおける値と、を使用して、方法は新しい合計を計算（ステップ９１２）し、その合計は、メモリに戻されて格納される（ステップ９１４）。プログラムフローは、ステップ９０８から９１４に従って、ステップ９０８における確認が偽と判定され、それにより、解析のための追加的なチャネルが存在しないことが示されるまで繰り返す。
【００６４】
ステップ９０８における確認が偽と判定され、解析のための追加的なチャネルが存在しないことが示されると、プログラムフローは続けて、コマンド信号として固定デコーダにより出力される、メモリにおける合計の常用対数を計算する（ステップ９１６）。発明の一つの実施の形態に従って、図９の方法は、下記のような等式２に従う出力コマンドを決定する。
【数４】
0006663007.tif 000005
等式２
【００６５】
図１から図９までは、本発明の説明を可能にする概念的な例示である。この技術における当業者は、本発明の実施の形態の種々の態様が、ハードウェア、ファームウェア、ソフトウェア、またはそれらの組み合わせにおいて実現できるということを理解すべきである。そのような実施の形態においては、種々の構成要素および／またはステップは、本発明の機能を行うために、ハードウェア、ファームウェア、および／またはソフトウェアにおいて実現される。つまり、同じハードウェア、ファームウェア、またはソフトウェアのモジュールは、例示されたブロック（例えば、構成要素またはステップ）の一つ以上を行うことができる。
【００６６】
ソフトウェアによる実現においては、コンピュータソフトウェア（例えば、プログラムまたは他の指令）および／またはデータが、コンピュータプログラム製品の一部として、機械読取り可能媒体上に格納され、リムーバブル格納ドライブ、ハードドライブ、または通信インタフェースを介して、コンピュータシステムまたは他の装置または機械にロードされる。コンピュータプログラム（コンピュータ制御ロジックまたはコンピュータ読取り可能プログラムコードとも呼ばれる）はメインおよび／または二次メモリに格納され、一つ以上のプロセッサ（コントローラなど）により実行され、一つ以上のプロセッサに、ここで記述したような発明の機能を行わせる。この実施の形態においては、「機械読取り可能媒体」、「コンピュータプログラム媒体」、および「コンピュータ使用可能媒体」という用語は、ランダムアクセスメモリ（ＲＡＭ）、リードオンリメモリ（ＲＯＭ）、リムーバブル格納ユニット（例えば、磁気または光ディスク、フラッシュメモリ装置など）、ハードディスクなどのような媒体を一般的に指すために使用されている。
【００６７】
特に、他の実施の形態は、記述または例示した要素の幾つかまたはすべてとの相互交換により可能なので、上記の図および例は、本発明の範囲を単一の実施の形態に制限する意味は有していない。更に、本発明のある要素が既知の構成要素を使用して部分的または完全に実現可能な場合は、本発明の理解に必要なそのような既知の構成要素のそれらの部分のみが記述され、そのような既知の構成要素の他の部分の詳細な記述は、発明を不明瞭にしないように省略されている。本明細書においては、単一の構成要素を示している実施の形態は、ここにおいて明確にそうではないと述べられない限り、複数の同じ構成要素を含んでいる他の実施の形態に必ずしも制限されるべきでなく、その逆もそうである。更に、出願人は、明細書または請求項における如何なる用語も、明確にそのように述べられない限り、一般的でない、または特殊な意味と認められることを意図していない。更に、本発明は、例としてここで言及した既知の構成要素の、現在および将来の既知の等価物も含む。
【００６８】
具体的な実施の形態の上記の記述は、発明の全体的な性質を完全に開示し、それにより、他の者が、該当する技術の技量内の知識（ここに参考文献として引用および組み込まれた文書の内容を含む）を適用することにより、発明の全体的な概念から逸脱することなく、必要以上の実験なしに、そのような具体的な実施の形態を容易に修正および／または種々の適用に適合させることができる。従って、そのような適合および修正は、ここにおいて提示された教示およびガイダンスに基づいて、開示された実施の形態の等価物の意味および範囲内であると意図される。ここにおける文体および用語は説明の目的のためであり、制限的ではなく、本明細書の用語または文体は、該当する技術における当業者の知識との組み合せにより、ここで提示された教示およびガイダンスを考慮して、当業者により解釈されるためであるということは理解されるべきである。
【００６９】
本発明の種々の実施の形態を上記に記述したが、それらは例として提示されており制限的ではないということは理解されるべきである。該当する技術における当業者には、形状および詳細における種々の変更が、発明の精神および範囲から逸脱することなくここにおいて行うことができるとういうことは明白であろう。このように、本発明は、上記の例としての実施の形態の何れによっても制限されるべきではなく、下記の請求項およびその等価物に従ってのみ定義されるべきである。
【図１Ａ】
0006663007.tif 000008
【図１Ｂ】
0006663007.tif 000009
【図２】
0006663007.tif 000010
【図３】
0006663007.tif 000011
【図４】
0006663007.tif 000012
【図５Ａ】
0006663007.tif 000013
【図５Ｂ】
0006663007.tif 000014
【図６】
0006663007.tif 000015
【図７】
0006663007.tif 000016
【図８】
0006663007.tif 000017
【図９】
0006663007.tif 000018