(57)【要約】  システム状態及びコンテキストパラメータによって記述されるシステム又はセットアップＳに生来的な関係の効率的学習を促進するために、セットアップに影響する、実行される次の動作を、この動作から生じると予想される知識利得に基づいて決定する。知識利得は、動作を実行した後の知識インジケータパラメータの値を、システム状態／コンテキストパラメータ及び動作変数が現在のものと同様の値を有する１つ以上の前の機会のこのインジケータの値と比較することによって、「ローカルに」評価される。好ましくは、「知識のレベル」は、予測モジュールによって生成される予測の精度に基づいて評価される。一連の動作の選択に予測マシンを参加させることによって、この技術を用いて、予測マシンをトレーニングすることができる。また、この技術を用いて、動作選択技術に基づいて選択された一連の動作を実行する自己発達装置又はシステムの発達を管理することができる。
2008508581.tif 000002
【特許請求の範囲】
【請求項１】
実行することができ、セットアップＳに影響する動作を定義する１つ以上の動作変数の値を指定する信号を生成する自動化された動作選択システム（１）において、
上記セットアップＳの状態及び／又はコンテキストを記述する０個以上のシステム状態／コンテキストパラメータ（ＳＣ（ｔ））の組の、時間ｔにおける値を示す信号が供給される入力手段と、
システム状態／コンテキストパラメータ及び動作変数の組のそれぞれ異なるパラメータ又は変数によって各次元が定義される多次元のシステム状態／コンテキスト／動作空間内の領域の組を定義する領域画定器（２）と、
上記動作変数の可能な値の組をそれぞれ含む候補動作の組を判定する判定手段と、
所定の候補動作と、時刻ｔにおける任意のシステム状態／コンテキストパラメータの値との組合せを含むシステム状態／コンテキスト／動作空間内の領域を特定する領域識別器（２）と、
所定の候補動作と、時刻ｔにおける任意の幾つかのシステム状態／コンテキストパラメータとの組合せを含むシステム状態／コンテキスト／動作空間の領域に依存する予測関数を適用し、時刻ｔの後の所定の間隔で、１つ以上の予測された変数（ＶＡＲ）の値を予測する予測手段（１２）と、
所定の候補動作と、時刻ｔにおける任意のシステム状態／コンテキストパラメータの値との組合せを含むシステム状態／コンテキスト／動作空間の領域に応じて、該所定の候補動作が実行された場合、上記予測手段（１２）の性能における予想される向上を評価する評価手段（１４）と、
上記評価手段（１４）によって、上記所定の候補動作について評価された上記予測手段（１２）の性能における上記予想される向上に基づき、実行のために所定の候補動作を選択する望ましさを示す信号を生成する生成手段とを備える自動化された動作選択システム。
【請求項２】
実行され、上記セットアップＳに影響を与える動作を選択し、０＜ｐ＜１として、上記予測手段（１２）の性能が最も向上することが予想されると上記評価手段（１４）が評価した候補動作の組のうちの１つの候補動作を選択する確率がｐである動作選択器（４）を更に備え、
上記動作選択器（４）によって選択された動作を定義するデータを出力することを特徴とする請求項１記載の自動化された動作選択システム。
【請求項３】
上記領域画定器（２）は、システム状態／コンテキスト／動作空間内の領域を動的に画定し、第１の基準（Ｃ１）が満たされると、既存の領域Ｒを２つ以上の新たな領域に分割することを特徴とする請求項１又は２記載の自動化された動作選択システム。
【請求項４】
セットアップＳに影響する動作が実行され、該動作を定義する動作変数値と、該動作が実行された時点でのシステム状態／コンテキストパラメータの値との組合せが領域Ｒ内に収まった機会の数を数える計数手段を更に備え、
上記第１の基準（Ｃ１）は、上記計数手段による計数が所定数（ＮＳ）に達したときに満たされることを特徴とする請求項３記載の自動化された動作選択システム。
【請求項５】
上記予測手段（１２）によって生成された予測の予想された予測誤差を評価するメタ予測手段（１３）を更に備え、
上記評価手段（１４）は、所定の候補動作が実行された場合、該所定の候補動作の実行の結果として予想される予測誤差の減少を評価することによって、上記予測手段（１２）の性能における予想される進歩を評価することを特徴とする請求項１乃至４いずれか１項記載の自動化された動作選択システム。
【請求項６】
所定の動作の実行の結果として得られる上記予測された変数（ＶＡＲ）の実際の値に関するフィードバックが供給されるフィードバック手段を更に備え、
上記予測手段（１２）は、上記フィードバックデータに応答し、上記システム状態／コンテキスト／動作空間内の、該フィードバックデータが生成された際の動作と、上記所定の動作が実行された時点における任意のシステム状態／コンテキストパラメータの値との組合せを含む領域と同じ領域の候補動作に適用される予測関数を適応化することを特徴とする請求項１乃至５いずれか１項記載の自動化された動作選択システム。
【請求項７】
トレーニング実例データを保存する記憶手段を更に備え、
実行された所定の動作について、上記トレーニング実例データは、動作変数値と、当該所定の動作が実行された時点での適用可能なシステム状態／コンテキストパラメータ値と、予測された変数（ＶＡＲ）の組の実際の値を定義するフィードバックデータとを含むことを特徴とする請求項６記載の自動化された動作選択システム。
【請求項８】
上記領域画定器（２）は、システム状態／コンテキスト／動作空間内の領域を動的に定義し、該システム状態／コンテキスト／動作空間内の領域Ｒを２つ以上の新たな領域に分割する際、該システム状態／コンテキスト／動作空間において、予測された変数の組によって定義された空間において、又は上記システム状態／コンテキスト／動作空間と上記予測された変数の組によって定義された空間とを組み合わせた多次元空間において、各新たな領域におけるトレーニング実例の数が均衡し、トレーニング実例の分散が最小となるように、新たな領域の境界を定義することを特徴とする請求項７記載の自動化された動作選択システム。
【請求項９】
上記動作選択器（４）は、実行のためにランダムに動作を選択する確率が１−ｐであることを特徴とする請求項２乃至８いずれか１項記載の自動化された動作選択システム。
【請求項１０】
上記予測手段（１２）は、最近傍識別アルゴリズムを適用することによって予測を生成することを特徴とする請求項１乃至９いずれか１項記載の自動化された動作選択システム。
【請求項１１】
請求項１乃至１０いずれか１項記載の自動化された動作選択システムを備える自動化された予測マシントレーニングシステムにおいて、
上記自動化された動作選択システムの領域識別器（２）と予測手段（１２）の組合せがトレーニング可能な予測マシンを構成し、
所定の動作の実行の結果として得られる上記予測された変数（ＶＡＲ）の実際の値に関するフィードバックが供給されるフィードバック手段を更に備え、
上記予測手段（１２）は、フィードバックデータに応答し、システム状態／コンテキスト／動作空間内の、フィードバックデータが生成された際の動作と、上記所定の動作が実行された時点における任意のシステム状態／コンテキストパラメータの値との組合せを含む領域と同じ領域の候補動作に適用される予測関数を適応化する自動化された予測マシントレーニングシステム。
【請求項１２】
上記予測手段（１２）によってシステム状態／コンテキスト／動作空間の異なる領域に適用されるそれぞれの予測関数の進化を監視する監視手段と、
上記監視手段が上記予測関数の変化のレートが閾値レベルを下回ったと判定した場合、当該予測マシントレーニングシステム（１１）の動作モードをトレーニングモードから予測モードに変更する動作モード設定器（１６）とを備える請求項１１記載の自動化された予測マシントレーニングシステム。
【請求項１３】
ロボット又は他の自己発達装置又はシステムにおいて用いられ、
上記ロボット又は他の自己発達装置又はシステムは、セットアップＳに影響する動作を実行することを特徴とする請求項１乃至１０いずれか１項記載の自動化された動作選択システム。
【請求項１４】
上記ロボット又は他の自己発達装置又はシステムによって実行される動作を選択する意志決定ユニットに実行のために所定の候補動作を選択する望ましさを示す信号を供給する供給手段を備える請求項１３記載の自動化された動作選択システム（２１）。
【請求項１５】
当該自動化された動作選択システム（２１）は、上記ロボット又は他の自己発達装置又はシステムから独立し、該ロボット又は他の自己発達装置又はシステムと通信することを特徴とする請求項１３又は１４記載の自動化された動作選択システム（２１）。
【請求項１６】
請求項１３又は１４記載の自動化された動作選択システム（２１）を備える自己発達ロボット又は他の自己発達装置又はシステム。
【請求項１７】
請求項１乃至１０いずれか１項記載の自動化された動作選択システムを用いる自動化された動作選択方法において、
自動化された動作選択システム（１）を準備するステップと、
セットアップＳの状態及び／又はコンテキストを記述する、時刻ｔにおける０個以上のシステム状態／コンテキストパラメータ（ＳＣ（ｔ））の値を示す信号を上記動作選択システム（１）に供給するステップとを有する自動化された動作選択方法。
【請求項１８】
所定の動作を実行した結果得られる予測された変数（ＶＡＲ）の実際の値を示すデータと、上記所定の動作が実行された時点における所定のシステム状態／コンテキストパラメータの適用可能な値を示すデータとを動作選択システム（２１）にフィードバックするステップを更に有し、
上記予測手段は、上記フィードバックデータに応答し、上記システム状態／コンテキスト／動作空間内の、該フィードバックデータが生成された際の動作と、上記所定の動作が実行された時点における任意のシステム状態／コンテキストパラメータの値との組合せを含む領域と同じ領域の候補動作に適用される予測関数を適応化することを特徴とする請求項１７記載の自動化された動作選択方法。
【請求項１９】
請求項１８記載の自動化された動作選択方法を含む自動化された予測マシントレーニング方法において、自動化された動作選択システムの領域識別器（２）と予測手段（１２）の組合せがトレーニング可能な予測マシンを構成することを特徴とする自動化された予測マシントレーニング方法。
【請求項２０】
ロボット又は他の自己発達装置又はシステムにおける自動化された動作選択方法であって、
上記ロボット又は他の自己発達装置又はシステムは、セットアップＳに影響する動作を実行することを特徴とする請求項１７又は１８記載の自動化された動作選択方法。
【請求項２１】
実行のために所定の候補動作を選択する望ましさを示す信号を、上記自己発達装置又はシステムによって実行される動作を選択する意志決定ユニットに供給するステップを有する請求項２０記載の自動化された動作選択方法。
【請求項２２】
請求項１３乃至１５いずれか１項記載の自動化された動作選択システムを用いて選択された一連の動作の選択及び実行に参加することによって、及び／又は請求項２０又は２１記載の自動化された動作選択方法を用いてトレーニングされた自己発達ロボット又は他の自己発達装置又はシステム。
【請求項２３】
請求項１１又は１２記載の自動化された予測マシントレーニングシステムを用いて及び／又は請求項１９記載の自動化された予測マシントレーニング方法を用いてトレーニングされた予測マシン。
【請求項２４】
請求項１１又は１２記載の自動化された予測マシントレーニングシステムを用いて及び／又は請求項１９記載の自動化された予測マシントレーニング方法を用いてトレーニングされ、１つ以上の予測された変数（ＶＡＲ）の値を予測するコンピュータシステム。
【請求項２５】
請求項１１又は１２記載の自動化された予測マシントレーニングシステムを用いて及び／又は請求項１９記載の自動化された予測マシントレーニング方法を用いてトレーニングされ、１つ以上の予測された変数（ＶＡＲ）の値を予測する専用システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習のために実行される一連の動作又は試行の最適化に関する。本発明は、特に、効率的学習を実現するために、どの試行又は動作を次に試すかを選択する自動化された動作選択方法及びシステムに関する。
【０００２】
また、本発明は、予測マシンのトレーニング、能動的学習の進歩の制御、自己発達装置又はシステム（例えば、ロボット）の動作の組織化へのこの技術の応用に関する。更に、本発明は、この技術を用いて予測マシンをトレーニングするシステム、制御能動的学習にこの技術を適用するシステム、又は自己発達装置又はシステムにおける動作組織化に関する。更に、本発明は、この技術を用いてトレーニングされる予測マシン及びこの技術を適用した自己発達装置に関する。
【背景技術】
【０００３】
セットアップ又はシステムＳに影響する一連の動作をセットアップＳに対して実行して、セットアップＳの挙動に関する知識を得ることが必要又は有用な様々な応用分野がある。セットアップＳは、天然のシステムであってもよく、又は人工的な（人間が作った）システムであってもよく、「セットアップ」という用語は、このシステムが能動的に組織化又は構成されていることを含意しない（もちろん、能動的に組織化又は構成されていてもよい）。所望の「知識」は、多くの場合、一組のシステムパラメータ間の関係を学習することによって形成される。実行すべき動作の数は、通常、最小であることが望まれる。
【０００４】
一般的には、如何なるセットアップ又はシステムＳも、その現在の状態と、システム自体が存在する環境コンテキストの状態とによって記述することができる。システムの現在の状態は、システムを特徴付ける多くの異なるパラメータ（「システム状態パラメータ」）から得られる値によって記述される。同様に、システムの環境コンテキストは、そのコンテキストを特徴付ける多くの異なるパラメータ（「コンテキストパラメータ」）から得られる値によって記述できる。多くの場合、所定のパラメータがシステム状態パラメータであるか、コンテキストパラメータであるかを明確に区別することはできない。実際には、本発明の動作に関する限り、この区別は、重要でない。これらの両方のパラメータを、本明細書では、システム状態／コンテキストパラメータと呼ぶこととする。
【０００５】
動作は、システムＳに影響することがある。例えば、システムＳに影響するパラメータを制御し、このパラメータが選択された値となるようにすることができる。制御（又は「調整」）されたパラメータは、システム状態／コンテキストパラメータであってもよいが、これは必須ではない。特定のシステムＳについて、システムＳの挙動に関する情報を引き出すことを意図する動作において値が調整される一組のパラメータ（又は「動作変数」）を選択することができる。
【０００６】
本発明は、システムの反応又は挙動を観測するために意図的に実行される、システムＳに影響する動作の選択に関連する。本明細書では、「動作（action）」の意味は、必ずしも物理的な動き又はアクチュエータの作動のみを指すのではなく、「動作」には、１つ以上の動作変数のそれぞれを特定の値に意図的に設定することも含まれる。多くの場合、調整された変数は、物理量（例えば、作物に供給する水の量、電極に印加する電圧のレベル等）に関連するが、これは、本発明の必須要件でない。
【０００７】
更に、本明細書において用いる「システム状態／コンテキスト／動作空間（system-state/context/action space）」という用語を説明する。
【０００８】
ユーザが、品質管理目的のために回路板を撮影するセットアップＳにおいて、生来的な関係を発見することを望む応用例について検討する。回路板は、様々な材料で製造された基板を有し、したがって、様々な明度値を有する。ここでは、露光時間及び周囲の照明が、写真画像で観察した場合の回路板と導電パスの間のコントラストにどう影響するかを解明することが望まれる。より具体的には、ユーザは、如何なる条件で高いコントラストの画像が得られるかを発見することを望む。
【０００９】
写真機材は、回路板を搬送するコンベアの上に取り付けられたデジタルカメラを含み、回路板は、カメラに対して固定された位置に配置される。画像処理ユニットは、デジタルカメラが生成した画像データを処理することによって、回路板と回路板上の導電配線との間のコントラストを自動的に判定する。ここでは、状況を単純化するために、画像処理ユニットは、画像内のどの部分が回路板に対応し、どの部分が導電配線に対応しているかを正確に判定できると仮定する。
【００１０】
この特定のシステムＳは、撮影時の回路板基板の明度Ｂｒ、周囲の照明ＡＩ及び曝露期間ＥＰによって記述できる。ユーザの制御の下で（又は自動的に）異なる値に設定できるパラメータは、曝露期間パラメータＥＰのみであり、他の２つのパラメータは、ユーザが制御できないとする。この場合、回路板明度Ｂｒ及び周囲の照明ＡＩは、システムを記述するシステム状態／コンテキストパラメータとみなすことができ、曝露期間ＥＰは、値を変更又は「調整」できる動作変数（action variable）とみなすことができる。
【００１１】
これらのパラメータＡＩ、Ｂｒ及びＥＰは、多次元空間を定義し、この単純な具体例は、多次元空間は、図１に示す三次元空間である。より現実的な具体例では、多次元空間の次元数は３以上である場合が多いが、これを図示することは、不可能ではないとしても、困難である。
【００１２】
本明細書では、システム状態／コンテキストパラメータ及びシステムの動作変数によって定義される上述した多次元空間を「システム状態／コンテキスト／動作空間（system-state/context/action space）」と呼ぶ。
【００１３】
上に例示したシステムは、如何なる場合も、回路板明度Ｂｒ、周囲の照明ＡＩ及び曝露期間ＥＰの値を定義するベクトルによって定義できる。図１は、Ｂｒ、ＡＩ及びＥＰの値の１つの特定の組合せに対応するベクトルＡの具体例を示している。
【００１４】
図１に示す立方体は、上述したコントラスト測定システムＳのシステム状態／コンテキスト／動作空間に対応する。なお、図１では、各システム状態／コンテキストパラメータ及び動作変数の極限を０と１にしている。これは、システム状態／コンテキストパラメータ値及び動作変数値のそれぞれを０．０〜１．０の範囲に正規化したシステム状態／コンテキスト／動作空間を表している。
【００１５】
従来技術の説明
統計の分野及び発達ロボティックスの分野において、学習を最適化するために一連の試行又は動作をどのようにスケジューリングするかに関して、既に様々な手法が提案されている。
【００１６】
統計の分野では、「最適実験設計」は、汎用の性能の所定のレベルを達成するために検討する必要がある実例の数を如何にして最小化することができるかを判定する。
【００１７】
発達ロボティックスの分野では、主な目的の１つは、発達するロボットを作成することである。このコンテキストにおいて、「発達」とは、ロボットが行う動作の複雑性の漸進的な増加、及びこれに関連するロボットの能力の向上を意味する。ロボットが発達するとは、ロボットが「学習」を行ったと言い換えることもできる。ロボットは、発達のために、感覚−運動空間（sensory-motor space）を探索する必要があり、換言すれば、所定の動作を実行した結果を発見する必要がある。この発見とは、例えば、所定の環境において、ロボットの車輪の速度を特定の値に設定（又は、ロボットの首部のジョイントを特定の構成に設定）した場合の視野の変化の判定等である。ロボットは、所定のコンテキスト（又は、環境）において、一連の動作を実行し、知覚された結果を取得することによって感覚−運動状態空間を探索する。このインタラクションの組によって、ロボットは学習を行うことができる。
【００１８】
ロボット学習効率は、最大化することが望まれ、換言すれば、ロボットが、自らの能力を特定のレベルにまで向上させるために実行すべき動作の数を減少させることが望まれる。感覚−運動状態空間を無作為に探索することは、非常に効率が悪く、感覚−運動マッピングに関する知識を得るためには、ロボットは、感覚−運動状態空間を何らかの規則に基づいて探索する必要がある。
【００１９】
発達ロボティックスの分野では、ロボットが最初に、比較的簡単なタスクに取り組み、次第に困難なタスクに移行するようにすることによってロボット学習の効率を高めることができることが見出されている。一般的には、ロボットが所定の時刻に遭遇する状況又はタスクを人間が制御することによって、タスクの複雑性を次第に増加させる。したがって、この学習処理は、「受動的学習」又は「受動的発達」と呼ぶことができる。
【００２０】
現在、ロボット（又は、他の人工システム）を自律的に発達させるメカニズムの実現に高い関心が寄せられている。この場合、学習処理は、発達のエンジンであってもよい。具体的には、複雑で、連続的で、動的な環境に遭遇した際、予めプログラミングされた知識なしで、この環境内のどのタスク又は状況が、発達の所定の段階における効率的学習に適合する複雑性を有しているかを判定できるロボット（又は他の人工システム）の実現が望まれている。このタイプのロボット／人工システムは、まず、感覚−運動マッピングの簡単な部分を学習し、続いて、複雑性が高い状況に徐々に焦点を移行する。
【００２１】
機械学習の分野では、知識又は「ノウハウ」において最大の利得を提供する動作をどのように選択するかについて、様々な「能動的学習」が提案されている。これらの提案は、「知識」及び知識における利得を定量化する手法に関して異なる。更に、これらの提案は、どの動作が知識に関して最大の利得をもたらす傾向があるかを判定する手法に関して異なる。以下、これまでに知られている幾つかの主な提案について説明する。
【００２２】
「最小の予測可能な結果をもたらす動作を選択」
まず、「J. Denzler and C. Brown in "Information Theoretic Sensor Data Selection for Active Object Recognition and State Estimation" ：IEEE Transactions on Pattern Analysis and Machine Intelligence, 24, vol. 2, pp. 145-157, (2001)」に提案されている手法について説明する。この論文は、所定の候補動作の感覚結果の予測を生成する予測モジュールの出力に間接的に基づいて、次の動作を選択するロボットシステムを提案する。例えば、予測モジュールは、特定の変数が値２．０を取ると予測する。意志決定モジュールは、予測モジュールが生成した予測の確実性の度合い（例えば、「その時点で、予測値２．０が正しい確率は６５％」）を評価し、実行すべき次の動作として、予測モジュールの予測の確実性が最も低い候補動作を選択する。
【００２３】
幾つかの用途では、この方法は、効率的である。しかしながら、ランダムな要素を含む環境においては、この手法では、ロボットは、そのランダムな要素（予測困難な度合いが最高である）を探索する行動に集中してしまう。ここで、この種のランダムな要素を探索しても、通常、学習に有用な知識は得られない。このように、ロボットの発達は、脱線してしまう。
【００２４】
更に、予測の確実性を評価する手法は、演算コストが高く、連続したシステム状態／コンテキスト／動作空間では、実現が容易ではない。
【００２５】
「最大予測誤差をもたらすと予想される動作を選択」
「S. Thrun in "Exploration in Active Learning", in Handbooks of Brain Science and Neural Networks, ed.M. Arbib, MIT Press (1995)」には、他の手法が提案されている。この提案では、所定の候補動作の結果の予測を生成する予測モジュールを利用する他のシステムが検討されている。ここでは、所定の候補動作を実行することによって生じると予想される予測誤差を評価することによって、予測モジュールの性能を評価するモジュールを用いる。この意志決定モジュールは、実行すべき次の動作として、最大予測誤差をもたらすと予想される候補動作を選択する。
【００２６】
この手法は、実時間で、高次元空間内で動作する小さいロボットにおいて、非常に効率的に実現できる。更に、この手法は、制御された環境（例えば、人工的な機器が静的な環境において、ナビゲートのための学習を行う環境）において有効である。しかしながら、この手法も、環境内のランダムな要素に焦点をあてるようになるため、制御されていない、非決定的な環境では、生産性が悪い。
【００２７】
「現在、不確実である予測の確実性を最大限高める動作を選択」
「N. Roy and A. McCallum in "Towards Optimal Active Learning through Sampling Estimation of Error Reduction", in Proceedings of the 18th International Conference on Machine Learning (ICML-2001).」には、更に他の手法が提案されている。この提案は、統計学の分野における「最適実験設計（optimal experiment design）」に立脚し、確率論的手法を採用している。
【００２８】
この技術では、ロボットは、ある候補動作の結果を予測するように構成された予測モジュールを備える。更に、これらの予測の確実性の度合いを予測するモジュールを設ける。この更なるモジュールは、様々な予測の信頼性がより高まるように動的に更新される。このシステムでは、実行するように選択される候補動作は、ロボットにとって現在不確かである予測の確実性が最大限高められる動作である。
【００２９】
上述したＤｅｎｚｌｅｒ及びＢｒｏｗｎのシステムとは異なり、この手法では、候補動作の評価は、ロボットの知識をどのように変更するか及びこの変更が予測の確実性にどう影響するかを予測するステップを含む。このシステムでは、特定の候補動作を選択することによって生じる知識の利得を評価することを試みる。
【００３０】
このＲｏｙ及びＭｃＣａｌｌｕｍの手法は、ランダムな要素を含む環境でも、ロボットがランダムな要素の探索に陥ってしまう状況を回避することができる。しかしながら、ロボットは、ランダムな要素（動作が予測の確実性に影響しない感覚−運動状態空間又は「システム状態／コンテキスト／動作空間」の一部）に焦点を合わせているとの判定を行う前に最低限の実例を考慮する必要がある。このため、有用な知識の利得が得られない動作を評価し、実行するために、時間及び演算リソースが浪費される。この無駄な時間は、雑音が独立して正規分布しているシステムにおいて最小化することができる。しかしながら、制御されていない現実的な環境では、このような条件は整っていない。
【００３１】
更に、この手法は、かなりの演算リソースを消費し、感覚−運動状態空間（又は、より一般的にはシステム状態／コンテキスト／動作空間）が連続的である場合、効率的に実現できない。
【００３２】
「予測誤差を最大限減少させる（と予測される）動作を選択」
本発明者らによる係属中の欧州特許出願番号第０３２９１３５９．２号には、能動的学習が提案されている。この技術では、自己発達装置は、候補動作の結果を予測するように設計された予測モジュールと、予測モジュールが生成した異なる予測に関連する予測誤差を予測するメタ予測モジュールとを備える。自己発達装置は、メタ予測モジュールを更新し、予測誤差の現在のレベルを監視する。実行されるように選択される候補動作は、（将来の幾つかの時点において）予測誤差が最大限低減されるとメタ予測モジュールが予測する動作である。
【００３３】
上述した技術は、ある状況下では有効であり、ロボットが環境内のランダムな要素に焦点をあててしまうことを回避できることが判明している。しかしながら、この技術では、幾つかの条件が整うと、ロボットは、予測誤り率が高い第１の状況と、予測誤り率が低い第２の状況とに交互に焦点をあてるループに陥ることがある。例えば、ロボットが壁に囲まれた空間に進入した場合、ロボットは、壁にランダムに衝突する動作（次に起こるかを予測する誤り率が高い状況）と、壁の正面に止まって壁を見る動作（次に何が起こるかを予測することが容易な状況）とを交互に繰り返すことに時間を費やしてしまう。
【発明の開示】
【課題を解決するための手段】
【００３４】
殆どのシステムでは、システムの挙動は、システム状態／コンテキスト／動作空間内の「どこにシステムがあるか」によって異なる。換言すれば、システム状態／コンテキスト／動作空間の異なる領域においては、様々なシステム状態／コンテキストパラメータ及び／又は動作変数の間に異なる関係が存在する。システム状態／コンテキスト／動作空間のそれぞれの異なる領域は、システムＳ内の異なる種類の状況に対応している。
【００３５】
図２は、図１のシステム状態／コンテキスト／動作空間を、周囲の照明と、基板明度と、曝露期間との間に異なる関係が成立する３つの領域に分割できる状況を示している。これらの３つの領域には、それぞれＲ１、Ｒ２１及びＲ２２のラベルを付している。システム状態／コンテキストパラメータと動作変数の値の１つの特定の組合せに対応するベクトルＡは、領域Ｒ１内に端点を有している。
【００３６】
上述のように、セットアップＳの挙動を調査し、セットアップに影響するどの動作を次に実行するかを選択する場合、異なる候補動作の実行から、如何なる学習の進歩が期待できるかを検討することが役立つ。本発明者は、直前に実行された一連の動作の解析に基づいて学習の進歩を評価した場合、最良の結果が得られないことを見出した。これに代えて、セットアップが現在の状況に類似する状況にあった場合に実行された現在の動作に類似する以前の動作を検討することが有効であることが見出された。
【００３７】
もちろん、この場合、どの動作が現在検討中の動作に「類似するか」、及びどの状況が現在の状況に「類似するか」を判断する何らかの基準が必要である。本発明では、動作／状況の対は、システム状態／コンテキスト／動作空間で同じ領域を占める場合に互いに類似すると判定する。換言すれば、システム状態／コンテキストパラメータ及び動作変数値ＳＣＡＡ（ｔ）に対応する状況Ａと、システム状態／コンテキストパラメータ及び動作変数値ＳＣＡＢ（ｔ）に対応する状況Ｂとは、ＳＣＡＡ（ｔ）とＳＣＡＢ（ｔ）とが、感覚−運動状態空間内の共通の領域に端点を有するベクトルを定義する場合、「類似している」とみなされる。
【００３８】
図２に示すように定義された３つの領域を有する図１のシステム状態／コンテキスト／動作空間内の３つのベクトルを示す図３は、上述した概念を非常に単純化して示している。システムＳにおいて、写真は、ＳＣＡＡ（ｔ）、ＳＣＡＢ（ｔ）ＳＣＡＣ（ｔ）によって表されるシステム状態／コンテキストパラメータの値と、動作変数の組合せに対応する状況Ａ、状況Ｂ、状況Ｃにおいて撮影される。本発明では、システムが状況Ａ及びＢにある場合、システム状態／コンテキストパラメータと動作変数の値の組合せを表すそれぞれのベクトルが共通の領域（図３の領域Ｒ１）に端点を有するため、状況Ａと状況Ｂは、互いに類似しているとみなす。
【００３９】
一方、システムが状況Ｃにある場合、システム状態／コンテキストパラメータ及び動作変数の値の対応する組合せを表すベクトルは、図３の領域Ｒ２１に端点を有し、この領域Ｒ２１は、状況Ａ及び状況Ｂに対応するベクトルの端点を含む領域Ｒ１とは異なるため、状況Ｃは、状況Ａ及び状況Ｂのいずれにも類似しない。
【００４０】
本発明者らは、システム状態／コンテキスト／動作空間のそれぞれの異なる領域に対応する状況では、学習の進歩を評価するために、それぞれ異なる関数を用いることが有効であることを見出した。
【００４１】
本発明の第１の側面では、本発明は、セットアップＳの挙動に関して効率的に知識を獲得するために、セットアップＳに影響する動作を次に実行するよう選択する自動化された動作選択方法及びシステムを提供する。本発明に基づく動作選択技術を用いることによって、セットアップＳの挙動に関する知識を獲得するために必要である動作の数を削減できる。更に、本発明により、複雑で、連続的で、動的な環境においても、効率的学習を実現できる。更に、本発明では、学習処理は、予測が容易な状況と、予測困難な状況との間でループに陥ることもなく、セットアップＳ内のランダムな要素の探索に脱線することもない。
【００４２】
本発明の第１の側面に基づく好ましい実施の形態は、探検される状況の複雑性を現時点での学習（「発達」）のレベルに一致させるために、システム状態／コンテキスト／動作空間のどの部分を次に探索するかを自動的に判定できる自動化された動作選択システム及び動作選択方法を提供する。
【００４３】
本発明の第１の側面の好ましい実施の形態に基づく動作選択技術では、予測マシンを使用する。具体的には、予測マシンは、セットアップＳの挙動に依存し、又はセットアップＳの挙動に影響を受ける１つ以上の変数ＶＡＲの組の各値を予測することを試みる。どの動作を次に実行するかを選択するために、一組の可能な次の動作（「候補動作」）を評価する。予測マシンは、各候補動作について、現在のセットアップの現在の状態及びコンテキストを考慮に入れて、どの変数ＶＡＲの所定の組の各値が、検討中のセットアップに適用された候補動作に類似するかを予測する。そして、メタ予測マシンは、予測誤差を予測することによって、これらの予測がどれくらい正確であると期待できるかを評価する。
【００４４】
候補動作の１つは、セットアップＳに影響するように実行されるよう選択される。選択された動作が実行された後、セットアップの状態及びコンテキストパラメータに対するこの動作の効果に関するフィードバック及び予測された変数の組の値に関するフィードバック（システム状態／コンテキストパラメータの観測値から既にこれらの値が導出できる場合を除く）を受信する。このフィードバックを用いて、予測マシンによって適用された関数を適応化し、これによって予測の精度を向上させることができる。また、このフィードバックは、将来の評価の精度を向上させるためにメタ予測マシンによって用いられる。
【００４５】
本発明では、所定の候補動作の実行から生じると予想される知識の利得に基づいて評価を行う。本発明の第１の側面に基づくある好ましい実施の形態では、この知識の予想される利得は、この候補動作の実行によって、予測誤差をどれ程削減できるかを判定することによって、評価される。
【００４６】
本発明の特殊性は、選択された候補動作が実行された直前の知識のレベルと、この動作の実行の直後の予想される知識のレベルとを比較することによって知識の予想される利得を評価しないという点である。すなわち、本発明では、選択された候補動作を実行した後の予想される知識のレベルを、セットアップのシステム状態／コンテキストパラメータ及び動作変数の値が、選択された候補動作を実行する時点におけるものと類似する１つ以上の以前の機会における知識のレベルと比較することによって、知識の予想される利得を評価する。
【００４７】
換言すれば、本発明によれば、学習の進歩は、システムの知識のレベルを示すパラメータ（「知識インジケータ」パラメータ）の調査に基づいて評価され、「知識インジケータ」パラメータの進化は、「ローカルに」（すなわち、システム状態／コンテキストパラメータ及び動作変数の現在の値を含むシステム状態／コンテキスト／動作空間の領域において）評価される。
【００４８】
知識インジケータパラメータの値の予想された変化は、単に、直前の知識インジケータパラメータの値ではなく、現在の状況に類似するこの知識インジケータパラメータの実際の値に基づいて評価されるので、本発明の技術によって、効率的学習を行うことができ、予測容易な状況と、予測困難な状況との間のループに陥ることを回避することができる。更に、本発明の技術では、ランダムな要素を含む（したがって、汎用的規則の学習に貢献しない）状況に焦点をあてることを回避することができる。
【００４９】
本発明の好ましい実施の形態では、候補動作は、この動作の実行によって予測誤差が大幅に低減されると予想される場合、大きな知識利得を生成すると考える。換言すれば、候補動作の実行に関連する予測を生成し、予想された予測誤差を算出する。この候補動作について予想された予測誤差は、現在の状況と同様の状況（すなわち、システム状態／コンテキストパラメータ及び動作変数の値が、システム状態／コンテキスト／動作空間において、現在のものと同じ領域にある場合）において、同じ種類の動作が以前に実行された際に観測された実際の予測誤差値と比較される。
【００５０】
候補動作が実行のために選択され、実行された後、この動作を定義するデータと、この動作が実行された際のシステム状態／コンテキストパラメータと、この動作実行の結果（予測された変数ＶＡＲのセットの観測値）とが「トレーニング実例」を構成するとみなす。
【００５１】
各トレーニング実例は、この動作が実行された際のシステム状態／コンテキストパラメータの各値と、この動作を定義するそれぞれの動作変数の各値と、この動作の実行の結果、観測されたそれぞれの変数ＶＡＲの各値とを異なる成分として有する多次元のベクトルを用いて表すことができる。この表現に基づき、各トレーニング実例は、２つのベクトルの結合とみなすことができ、第１のベクトルは、システム状態／コンテキスト／動作空間におけるこのトレーニング実例の位置を定義し、第２のベクトルは、「結果空間」（すなわち、次元が、予測された変数ＶＡＲの実際の異なる値に対応する空間）におけるトレーニング実例の位置を定義する。
【００５２】
本発明の第１の側面に基づく動作選択技術の好ましい実施の形態では、システム状態／コンテキスト／動作空間を順次、より細かい領域に分割することが望ましい。すなわち、まず、全体の空間を単一の領域（又は少数の領域）に分割し、後にこの領域（又はこれらの領域）を再分割する。
【００５３】
動作を選択及び実行する毎に、トレーニング実例が蓄積される。トレーニング実例データは、このトレーニング実例を定義するベクトルの端点を含むシステム状態／コンテキスト／動作空間の領域に関連付けて保存される。システム状態／コンテキスト／動作空間の領域を２つ以上の新たな領域に分割することが決定されると、以前に元の領域に関連していたトレーニング実例は、１つの又は他の新たな領域に割り当てられる。このように、所定の時点において、各トレーニング実例は、１つの領域だけに関連付けられている。
【００５４】
本発明の第１の側面に基づく動作選択技術の好ましい実施の形態では、第１の基準が満たされると、システム状態／コンテキスト／動作空間の所定の領域は、２つ（又は２つ以上）のより小さい領域に再分割される。この第１の基準の一具体例では、領域Ｒの再分割は、最新のトレーニング実例が、この領域Ｒ内に収まるシステム状態／コンテキストパラメータと動作変数との組合せを有するｎ番目のトレーニング実例であると判定されると実行される（Ｎは、予め定められた数である）。
【００５５】
領域Ｒを２つ以上のより小さい新たな領域に再分割する際、お互いから新たな領域を区別するための境界は、第２の基準に基づいて設定することが好ましい。この第２の基準の一具体例では、領域境界は、（システム状態／コンテキスト／動作空間の新たな領域に位置するトレーニング実例の数の均衡を維持しながら）システム状態／コンテキスト／動作空間の同じ新たな領域に割り当てられるトレーニング実例の位置の「結果空間」における分散を最小化するように設定される。
【００５６】
このようにシステム状態／コンテキスト／動作空間が順次再分割されると、木構造が成長する。すなわち、初期の領域を幹とみなし、この初期の領域を再分割することによって枝が生成され、これらを更に再分割することによって、小枝が生成される。そして、再分割の所定のチェインの最後の領域は、「葉」であるとみなすことができる。
【００５７】
動作が選択及び実行されると、本発明の第１の側面の好ましい実施の形態に基づく動作選択システムは、フィードバックが供給され、これにより、実際に生じた予測誤差を判定することができる。実際の予測誤差データは、システム状態／コンテキスト／動作空間の特定の領域、すなわち、システム状態／コンテキストパラメータの値と、予測が生成されたときに適用可能な動作変数との組合せに対応する領域に関連付けて保存される。この領域のサイズは、値の組合せが位置しているシステム状態／コンテキスト／動作空間の部分が、幾度も再分割されているか、又は殆ど全く分割されていないかに応じて異なる。
【００５８】
本発明の第１の側面に基づく動作選択方法では、時々、次の動作をランダムに選択することが好ましいことが見出された。換言すれば、大部分の機会では、予想された知識利得（ローカルに評価される。）を最大にするように次の動作を選択するが、時々、候補動作の１つをランダムに選択する。
【００５９】
本発明の第２の側面として、本発明は、予測マシンをトレーニングする予測マシントレーニングシステム及び予測マシントレーニング方法を提供する。予測マシンは、本発明の第１の側面に基づく動作選択方法を用いて、一連の動作の選択に参加することによってトレーニングされる。
【００６０】
本発明の第２の側面の好ましい実施の形態に基づく予測マシントレーニング方法では、実行されるとセットアップＳに影響する一組の候補動作のそれぞれについて、予測マシンは、その候補動作が実行された場合の一組の変数ＶＡＲの値を予測することを試みる（変数ＶＡＲの各値は、セットアップＳの挙動に依存し又は影響を受け、セットアップＳは、複数のシステム状態／コンテキストパラメータによって記述できる）。メタ予測モジュールは、予測の予想された精度（予想された予測誤差）を評価し、知識利得評価モジュールは、候補動作の実行による予測誤差の低減を評価する。予想された知識利得は、この動作が実行された場合に生じると予想された予測誤差のインジケータと、セットアップＳのシステム状態／コンテキストパラメータ及び動作変数の値の組合せが現在の実験の時点で適用可能な組合せに類似している１つ以上の前の機会に存在した対応する実際の予測誤差のインジケータとを比較することによって評価される。
【００６１】
本発明の第２の側面に基づく予測マシントレーニング方法では、システム状態／コンテキスト／動作空間は、動的な手法で、領域に分割される。予測、メタ予測及び知識利得評価は、各領域について個別に生成され、一連の動作が実行される毎に（トレーニング実例の数が増加する毎に）、これらは、精度が向上し、割り当てられた領域の特定に適合するように適応化される。各候補動作について、予想された知識利得は、予測関数と、その候補動作に対応するシステム状態／コンテキスト／動作空間の領域に割り当てられたメタ予測モジュール及び知識利得評価モジュールと、システム状態／コンテキストパラメータの現在の入力値とを用いて評価される。
【００６２】
動作選択モジュールは、実行のために候補動作の１つを選択する。大部分の機会においては、選択される候補動作は、予測誤差を最も低減すると予想される動作である（システム状態／コンテキスト／動作空間において「ローカルに」評価される）。そして、選択された動作が実行され、フィードバックが供給され、実際の予測誤差が判定され、システム状態／コンテキスト／動作空間の関連する領域に割り当てられた予測マシンモジュールの動作が、供給されたフィードバックを考慮に入れて変更される。
【００６３】
予測マシンが本発明に基づく動作選択方法を用いて選択された一連の動作によってトレーニングされると、予測マシンは、セットアップＳに生来的な関係によってプログラミングされたとみなすことができる。このようにトレーニングされた予測マシンは、状態及びコンテキストパラメータの値の所定の組合せについて、及び異なる動作の効果について、セットアップＳがどう振る舞うかを予測するために用いることができるため、それ自体に商品価値がある。セットアップＳが、互いにランダムではない関係があるパラメータを有すると仮定すると、予測マシンは、システムパラメータの間で成立する関係を既に学習しているので、この予測は、正確である場合が多い。
【００６４】
このように。本発明の第２の側面は、上述した予測マシントレーニング方法に基づいてトレーニングされた予測マシンも提供する。
【００６５】
本発明の第１及び第２の側面に基づく動作選択方法及び予測マシントレーニング方法は、専用に設計されたハードウェアを用いて実現してもよく、適切にプログラミングされた汎用コンピュータを用いて実現してもよい。いずれの場合も、調査されるセットアップＳに適用できるシステム状態／コンテキストパラメータ、セットアップＳに影響する動作、特に、調整できる動作変数（及び可能な調整値又は範囲）、及び予測すべき変数（ＶＡＲ）が既知となるように専用に設計されたマシン／プログラミングされたコンピュータを構成する必要がある。
【００６６】
必要な構成は、製造業者が専用に設計されたマシン、コンピュータプログラム又はプログラミングされた汎用コンピュータをエンドユーザに出荷する前に行ってもよい。これに代えて、専用に設計されたマシン、コンピュータプログラム又はプログラミングされたコンピュータを、汎用的な状態でエンドユーザに供給してもよく、この場合、ユーザが調査を望むセットアップに適用可能なシステム状態／コンテキストパラメータ、動作変数及び予測された変数（ＶＡＲ）は、ユーザが指定する。後者の場合、ユーザは、専用に設計されたマシン／プログラミングされたコンピュータを再初期化することができ、これによりユーザは、異なるセットアップを調査するために、新たなシステム状態／コンテキストパラメータ、動作変数及び予測された変数を入力できる。
【００６７】
初期設定処理が終わると、セットアップＳの挙動を学習すること又はセットアップＳの挙動を学習するように予測マシンをトレーニングすることを望むユーザＵは、専用に設計されたマシン／プログラミングされたコンピュータにシステム状態／コンテキストパラメータの現在の値を入力することができる。そして、専用に設計されたマシン／プログラミングされたコンピュータは、次に行うべき動作を指示する。適切な場合、専用に設計されたマシン／プログラミングされたコンピュータは、選択された動作を自動的に実行できる。この他の場合、専用に設計されたマシン／プログラミングされたコンピュータは、単に、次にどの動作を実行すべきかをユーザに指示する。
【００６８】
選択された動作が実行されると、ユーザは、専用に設計されたマシン／プログラミングされたコンピュータにシステム状態／コンテキストパラメータの更新された値と、（必要ならば）予測された変数の組の実際の値とを入力し、そして、専用に設計されたマシン／プログラミングされたコンピュータは、次に実行すべき動作（１つ以上の動作変数に割り当てるべき値）を判定する。このように、本発明に基づく動作選択技術及び予測マシントレーニング技術は、実行され、セットアップＳに影響を与える一連の動作を決定する。これにより、ユーザ又は予測マシンは、必要な動作の数を低減させた構造的で効果的な手法によって、セットアップＳに関する知識を得ることができる。
【００６９】
本発明の第１及び第２の側面に基づく動作選択技術及び予測マシントレーニング技術は、ユーザ（人間又はロボット）がシステム状態／コンテキストパラメータの現在の値を入力し、それぞれの動作の実行の結果に関してフィードバックを提供するという状況に限定されない。好ましい実施の形態では、システム状態／コンテキストパラメータ値の入力及びフィードバックの提供は、例えば、本発明に基づく技術を実現する専用に設計されたハードウェア／プログラミングされたコンピュータに接続されたセンサによって、自動的に実行される。
【００７０】
本発明の第３の側面では、上述した動作選択技術は、ロボット、他の自己発達装置又はシステムの発達を促進し、又はこれらの学習を管理するメカニズムとして適用できる。特に、本発明の第３の側面では、本発明の第１の側面の動作選択技術を用いて、自己発達装置又はシステムによって実行される一連の動作を決定する。自己発達装置又はシステムは、選択された動作を実行し、フィードバックを提供し、これにより動作の結果を判定することができる。
【００７１】
本発明の第３の側面の好ましい実施の形態は、自己発達装置又はシステムのために意志決定モジュールを提供する。この意志決定モジュールは、自己発達装置又はシステムによって次に実行すべき動作を判定し、自己発達装置又はシステムによる効率的学習を促進し、及び／又はその挙動の望ましい組織化を実現する。意志決定モジュールは、システム状態／コンテキスト／動作空間のどの部分を次に探索するかを自ら決定し、探検される状況の複雑性を、現時点での自己発達装置又はシステムの発達のレベルに一致させる。意志決定モジュールは、自己発達装置又はシステム自体に組み込んでもよく、個別に実現し、自己発達装置又はシステムと通信するようにしてもよい。
【００７２】
本発明の第３の側面により、効率的な手法で、複雑で非決定的なマッピングの能動的学習が実現する。ロボット（又は他の自己発達装置又はシステム）にこの手法を適用することによって、ロボットの挙動を組織化でき、これにより、ロボットは、遭遇する学習状況の複雑性を自律的にスケーリングできる手法で、選択的に動作の焦点（及び「注意（attention）」）を選択する。このように自己発達装置又はシステムの挙動を組織化する能力は、本発明の重要な利点である。
【００７３】
本発明の第３の側面は、自己発達装置又はシステムによる動作の選択を動機づけるドライブを構成する。このドライブは、「知的適応型好奇心（Intelligent Adaptive Curiosity）」と呼ぶことができる。このドライブは、動作選択方法によって、自己発達装置が過剰に予測可能になり、又は過剰に予測不能になる状況を回避することが保証されるため、「インテリジェント」と呼ぶことができる。また、このドライブは、自己発達装置に適応される状況が経時的な変化するため、「適応型」と呼ぶことができる。更に、このドライブは、学習の進歩を最大にし、自己発達装置を、（新たな学習が可能な）新たな状況の探索に推し進めるため、「好奇心」と呼ぶことができる。
【００７４】
多くの場合、この「知的適応型好奇心」ドライブは、自己発達装置又はシステムの挙動を動機づける幾つかのドライブの１つになる。ロボットは、例えば、温度維持、エネルギ維持、物理的完全性の維持等、ロボットの生存可能性（viability）の維持に関連する複数のドライブを有する。
【００７５】
互いに競合することがある異なるドライブを互いに統合する技術には、様々なものがある。例えば、異なるドライブをそれぞれ単純に重み付けしてもよい。或いは、各ドライブに報酬関数を割り当て、提案された動作に関連する総合的な報酬を算定してもよい。更なる具体例については、当分野の技術文献に開示されている。本発明の第３の側面に基づく技術によって自己発達装置の挙動を動機づける複数のドライブの１つを構成するコンテキストでは、異なるドライブを統合するために如何なる技術が選択されているかにかかわらず、本発明を適用できる。
【発明を実施するための最良の形態】
【００７６】
本発明の第１の側面
図４は、セットアップ又はシステムＳの挙動を調査するために使用にされる本発明の第１の側面の好ましい実施の形態に基づく動作選択システム１の主な構成要素を図式的に示すブロック図である。なお、実際には、この動作選択システムは、多くの場合、ソフトウェアによって実現され、図４に示す異なる「モジュール」は、システム全体で実行される様々な機能を理解しやすくするために区別しているに過ぎない。更に、図４に示す様々なモジュールの間での機能の分担は変更でき、及び／又は、図４に示すモジュールより多い又は少ないモジュールによって、これらの機能を実行することもできる。
【００７７】
図４に示すように、本発明の第１の側面の好ましい実施の形態に基づく動作選択システム１は、領域識別モジュール２と、知識利得評価モジュール３と、動作選択モジュール４と、実際の予測誤差を算出する実予測誤差計算器５とを備える。動作選択システム１は、所定の間隔τによって隔てられた一連のタイムステップのそれぞれにおいて、実行する動作を選択する。
【００７８】
領域識別モジュール２は、最初のタイムステップｔにおけるセットアップ又はシステムＳのシステム状態／コンテキストパラメータの値を示す信号ＳＣ（ｔ）を受信する。このデータは、上述したように、多くの異なる手法で、セットアップＳから得られる。システム状態／コンテキストパラメータの値は、通常、ユーザによって入力されるか、又は動作選択システム１に接続されたセンサから直接供給される。
【００７９】
また、領域識別モジュール２には、次に実行できる候補動作の組を示す信号Ａ（ｔ）も入力される。通常、ｋ番目の候補動作Ａｋ（ｔ）は、各値ｖ１、ｖ２、…ｖｎを、ｎ個の動作変数ＡＶ１、ＡＶ２、…ＡＶｎのそれぞれに割り当てる。これは、以下のような式で表すことができる。
【００８０】
【数１】
2008508581.tif 000003
【００８１】
なお、各候補動作は、現在のタイムステップｔのための動作変数に値を割り当てる。実際には、動作選択システム１が候補動作を選択し、この候補動作を実行するように準備するまでに、有限の時間δｔが必要であるため、動作変数は、時刻ｔ＋δｔになるまで割り当てられた値ｖ１等にならない。なお、時刻ｔから時刻ｔ＋δｔまでの期間中に、システム状態／コンテキストパラメータがＳＣ（ｔ）から著しく変化しないと仮定すれば、この誤差は、動作選択システム１の良好な性能に悪影響を与えない。多くの応用例において、システムの状態及びコンテキストは、選択された動作が実行されるまで変化しないので、このような条件は、必然的に成立する。他の応用例、特に、リアルタイムの応用例では、動作を算出し、選択し動作を実行するために必要な時間δｔ（通常、数ミリ秒）は、非常に短く、セットアップの状態及びコンテキストは、このような短い時間では、変化しない。
【００８２】
候補動作の組は、例えば、人間のユーザ、外部機器又はシステムによって、本発明に基づく動作選択システム１に入力してもよい。これに代えて、動作選択システム１自体が候補動作生成モジュール（図示せず）を備えていてもよい。いずれの場合も、セットアップの現在の状態及びコンテキストによっては、ある値を動作変数に割り当てることが不可能な場合がある。冗長な処理を回避するために、システム状態／コンテキストパラメータＳＣ（ｔ）の現在の値を考慮に入れて、候補動作の組を生成することが望ましい。
【００８３】
本発明のある好ましい実施の形態では、動作変数及びシステム状態／コンテキストパラメータは、本発明の動作選択システム１において、０．０〜１．０の範囲内の値を取るように正規化される。これによって、システム１内での処理が簡単になる。システムへの実際の入力及びシステムからの実際の出力を、正規化された値と、対応する「現実世界の」値との間で変換する手法は既知である。例えば、電圧変数ＶＶの「現実世界の」範囲が０ボルトから１５ボルトである場合、「ＶＶを０．２に設定する」という表現によって電圧変数に値を割り当てることは、「電圧変数ＶＶを３ボルトに設定する」ことを意味する。
【００８４】
領域識別モジュール２には、二重の役割がある。第１に、領域識別モジュール２は、後に詳細に説明するように、システム状態／コンテキスト／動作空間を複数の領域に分割する。第２に、領域識別モジュール２は、各候補動作Ａｋ（ｔ）について、この候補動作Ａｋ（ｔ）と、システム状態／コンテキストの現在の値ＳＣ（ｔ）との組合せを含むシステム状態／コンテキスト／動作空間の領域を特定する。
【００８５】
本発明に基づく動作選択ユニット１は、システム状態／コンテキスト／動作空間の異なる領域について個別に知識利得を評価するように構成されている。これは、知識利得評価モジュール３内に各領域あたり１つのシステム状態／コンテキスト／動作空間に対応する複数の専用ユニット（expert unit）ＥＸＰを設け、領域識別モジュール２が、各候補動作Ａ（ｔ）とシステム状態／コンテキストパラメータの現在の値ＳＣ（ｔ）との組合せを含むシステム状態／コンテキスト／動作空間を特定することによって実現される。
【００８６】
図４では、知識利得評価モジュール３内にＥＸＰＲ１、ＥＸＰＲ２１、ＥＸＰＲ２２の３つの専用ユニットを示している。なお、領域識別モジュール２が、システム状態／コンテキスト／動作空間を新たな領域に再分割するため、特定の時刻において知識利得評価モジュール３によって定義される専用ユニットの実数は、動的に変化する。
【００８７】
本発明の好ましい実施の形態では、各専用ユニットは、それ自身の予測モジュール１２、メタ予測モジュール１３、知識利得評価モジュール１４及びデータメモリ１５を備える。領域識別モジュール２は、候補動作によって、セットアップＳがシステム状態／コンテキスト／動作空間の領域Ｒ２１に対応する状況になると判定した場合、領域Ｒ２１に関連する専用ユニットＥＸＰＲ２１を用いて、この候補動作を実行した結果を予測し、結果として予想される知識利得を評価し、予想された知識利得信号を動作選択モジュール４に出力する。
【００８８】
以下、システム状態／コンテキスト／動作空間の領域Ｒ２１に関連する専用ユニットＥＸＰＲ２１の機能について、更に詳細に説明する。カウント変数ｑを用いて、セットアップＳがシステム状態／コンテキスト／動作空間の領域Ｒ２１に対応する状況になる連続した機会を指定することができる。これらの機会は、時間的に不規則な間隔で区切ってもよい。
【００８９】
領域識別モジュール２が、システム状態／コンテキストパラメータの現在の値ＳＣ（ｔ）を考慮に入れて、所定の候補動作Ａｋ（ｔ）に対応する状況を含むシステム状態／コンテキスト／動作空間の領域として、領域Ｒ２１を特定した場合、領域Ｒ２１に関連する専用ユニットＥＸＰＲ２１がアクティブ化される。この候補動作Ａｋ（ｔ）について、専用ユニットＥＸＰＲ２１の予測モジュール１２は、次のタイムステップ（ｔ＋１）における１つ以上の変数ＶＡＲのそれぞれの値を予測する。これらの変数ＶＡＲの性質は、本発明の動作選択システムによって調査されるシステムに依存する。予測モジュール１２は、通常、１つ以上のシステム状態／コンテキストパラメータの値又はこれらのパラメータに由来する幾つかの変数を予測することを試みる。
【００９０】
専用ユニットＥＸＰＲ２１の予測モジュール１２による予測には、ＶＡＲＲ２１（ｔ＋１）のラベルを付すことができ、これらの予測は、システムの現在のシステム状態／コンテキストパラメータ値ＳＣ（ｔ）及び所定の候補動作Ａｋ（ｔ）に基づいている。換言すれば、ＰＲ２１（Ａｋ（ｔ），ＳＣ（ｔ））＝ＶＡＲＲ２１（ｔ＋１）である。より包括的には、システム状態／コンテキスト／動作空間の領域Ｒにおける状況に対応する候補動作Ａ（ｔ）に関する予測は、以下のように表現することができる。
【００９１】
【数２】
2008508581.tif 000004
【００９２】
例えば、最隣接アルゴリズム（nearest neighbour algorithm）、多層パーセプトロンニューラルネットワーク（multi-layer perceptron neural network）を用いる技術、ラジアル基底関数ニューラルネットワーク（radial basis function neural network）、サポートベクトルマシン（support vector machine）、ベイジアンマシン（Bayesian machine）等、多くの異なる予測技術が知られている。本発明は、どの技術を用いて予測処理を実行するかに特に限定されない。なお、本発明の好ましい実施の形態では、専用ユニットの予測モジュール１２によって適用される予測関数は、最隣接アルゴリズムである。
【００９３】
更に、所定の専用ユニットの予測モジュール１２によって実行される予測、例えば、ＥＸＰＲ２１を、システム状態／コンテキスト／動作空間の領域、例えば、Ｒ２１の特性に適合するように調整することは有益である。具体的には、専用ユニットＥＸＰＲ２１は、時間が経過するにつれて、予測モジュール１２によって適用される予測関数を適応的に変更し、予測精度を向上させる（これは、先に列挙した全ての予測技術について同様である）。適切な適応化は、対応するシステム状態／コンテキスト／動作空間の領域内に位置しているトレーニングの実例についてのトレーニング実例データが専用ユニットに供給されると実行される。各トレーニングの実例は、それぞれ１つの領域だけに割り当てられるので、この適応化は、領域Ｒ２１に固有のものとなる。したがって、専用ユニットの全ての予測モジュール１２は、初めは同じ予測関数を使用していても（最初に同じ関数を使用することは必須ではない）、時間が経過すると、これらの関数は異なるものとなる。
【００９４】
また、各専用ユニットＥＸＰは、メタ予測モジュール１３を備え、メタ予測モジュール１３は、同じ専用ユニットの予測モジュール１２によって生成される各予測について、予測誤差を推定する。例えば、専用ユニットＥＸＰＲの動作について検討すると、システム状態／コンテキスト／動作空間の領域Ｒの状況に対応する各候補動作Ａ（ｔ）について、この専用ユニットＥＸＰＲのメタ予測モジュール１３は、この同じ専用ユニットＥＸＰＲの予測モジュール１２によって生成された予測ＶＡＲＲ（ｔ＋１）に関連すると予想されたそれぞれの誤差ＥｐＲ（ｔ）を示す値を以下の式に基づいて算出する。
【００９５】
【数３】
2008508581.tif 000005
【００９６】
メタ予測を実行するための様々な技術（例えば、最隣接アルゴリズム、多層パーセプトロンニューラルネットワークを用いる方法、ラジアル基底関数ニューラルネットワーク、サポートベクトルマシン、ベイジアンマシン等）が知られているが、本発明は、メタ予測処理を実行するために如何なる技術を用いるかについて限定されない。なお、本発明の好ましい実施の形態では、専用ユニットＥＸＰＲのメタ予測モジュール１３によって適用されるメタ予測関数は、現在検討中の候補動作の予測誤差が、この専用ユニットＥＸＰＲに対応する領域Ｒにおいて、トレーニングの実例について観測された最後の実際の予測誤差と同じになると仮定される単純な関数である。
【００９７】
ここでも、専用ユニットＥＸＰＲのメタ予測モジュール１３によって適用されるメタ予測関数は、領域Ｒの特性に応じて調整することができ、これにより、メタ予測関数は、時間が経過するにつれて、進化し、精度が高くなる。このように、専用ユニットの全てのメタ予測モジュール１３は、初めは同じ予測関数を使用していても（最初に同じ関数を使用することは必須ではない）、時間が経過すると、これらの関数は、通常、異なるものとなる。
【００９８】
各専用ユニットＥＸＰは、更に、この専用ユニットがカバーする領域Ｒの状況に対応する所定の候補動作Ａｋ（ｔ）について生じると予想される予測誤差の値を調べる知識利得評価モジュール１４を備える。知識利得評価モジュール１４は、予想された予測誤差を、セットアップＳのシステム状態／コンテキストパラメータ及び動作変数の組合せが、この同じ領域Ｒに位置している場合の１つ以上の以前の機会において観測された実際の予測誤差と比較する。この実際の予測誤差データは、この専用ユニットに関連するメモリ１５に保存される。知識利得評価モジュール１４の動作の好ましい実施の形態については、後に詳細に説明する。
【００９９】
知識利得評価モジュール１４は、この特定の候補動作を実行した場合に生じると予想される知識利得（予測誤差の減少）を示すデータを、この予想された知識利得が評価された候補動作を示すデータと共に動作選択モジュール４に出力する。
【０１００】
大部分の機会において、動作選択モジュール４は、セットアップＳに対して、又はセットアップＳにおいて実行される次の動作として、知識利得が最大になると予想される（この場合、予測誤差が最も減少すると予想される）候補動作を選択する。
【０１０１】
候補動作の所定の組について、２つ以上の専用ユニットの知識利得評価モジュール１４が動作選択モジュール４に予想された知識利得情報を出力する可能性が高い。この実施の形態の変形例として、知識利得評価モジュール３は、それ自体、どの候補動作が最大知識利得をもたらすと予想されるかを算出するユニットを備えていてもよい。この変形例では、知識利得評価モジュール３は、どの候補動作が最大知識利得（学習の進歩）をもたらすと予想されるかを示す情報を動作選択モジュール４に出力する。
【０１０２】
動作選択モジュール４は、選択された候補動作が何であるかを示す信号を出力する。この信号によって、（自動的に、又は例えば、人間のユーザによる操作によって）選択された動作が実行される。また、動作選択モジュール４は、どの候補動作が実行のために選択されたかを実予測誤差計算器５に示す。また、実予測誤差計算器５には、選択された候補動作に対応するシステム状態／コンテキスト／動作空間の領域Ｒを示す信号も供給される。これにより、実予測誤差計算器５は、知識利得評価モジュール３内の適切な予測モジュール１２から予測ＶＡＲＲ（ｔ＋１）を検索することができる。
【０１０３】
動作選択モジュール４が動作を選択し、時刻ｔ（正確には、時刻ｔ＋δｔ）においてこの動作が実行された後、実予測誤差計算器５は、時間ｔ＋１における予測されたパラメータの実際の値ＶＡＲＲａｃｔ（ｔ＋１）を判定する。予測された変数の各値ＶＡＲは、システム状態／コンテキストパラメータの値から算出できる場合がある。このような場合、実予測誤差計算器５には、時間ｔ＋１におけるシステム状態／コンテキストパラメータの値が入力される。これに代えて、時刻ｔ＋１において観測された変数ＶＡＲの組における予測された変数の実際の値を、選択された候補動作を実行した結果として実予測誤差計算器５に入力してもよい。
【０１０４】
実予測誤差計算器５は、入力された情報に基づいて、実際の予測誤差ＥＲａｃｔ（ｔ）、すなわち、この候補動作について予測モジュール１２が生成した予測ＶＡＲＲ（ｔ＋１）の組と、観測された実際の結果ＶＡＲＲａｃｔ（ｔ＋１）との間の差分を算出する。
【０１０５】
セットＶＡＲ内の予測された各変数について、実際の予測誤差ＥＲａｃｔ（ｔ）は、以下のように算出できる。
【０１０６】
【数４】
2008508581.tif 000006
【０１０７】
ここで、ｋは、１以上（通常２）の整数である。総合的な予測誤差ＥＲａｃｔ（ｔ）は、それぞれの予測された変数について得られた実際の予測誤差を結合すること（例えば、｜ＶＡＲＲ（ｔ＋１）−ＶＡＲＲａｃｔ（ｔ＋１）｜２の総和）によって算出できる。
【０１０８】
実予測誤差計算器５は、この総合的な実際の予測誤差データＥＲａｃｔ（ｔ）を専用ユニットＥＸＰＲに関連するメモリ１５に供給し、これにより、専用ユニットＥＸＰＲは、この専用ユニットによる後の計算において、この情報を考慮に入れることができる。
【０１０９】
ここで、変数ｔをカウント変数ｑの対応する値によって置換してもよい（ｑは、システムがシステム状態／動作／コンテキスト空間の領域Ｒで状況に遭遇した回数を数える変数であり、換言すれば、ｑは、領域Ｒにおいて観測されるトレーニングの実例の数を表す）。時刻ｔにおけるカウント変数ｑの値をｑｔとすると、時刻ｔにおいて観測される実際の予測誤差は、ＥＲａｃｔ（ｑｔ）と示すことができる。
【０１１０】
タイムステップｔにおいて、システムは、システム状態／コンテキスト／動作空間の領域Ｒの状況に既に複数回遭遇している可能性が高い。したがって、専用ユニットＥＸＰＲに関連付けてメモリ１５に保存された一連の実際の予測誤差値ＥＲａｃｔ（１）、ＥＲａｃｔ（２）、ＥＲａｃｔ（３）…ＥＲａｃｔ（ｑｔ−１）が存在する。領域Ｒについて観測された一連の実際の予測誤差値の全てに基づいて演算を行うことは、非実用的である場合があり、したがって、この領域について観測された最も近いＮ＋１個の値のみを演算に含ませることが望ましい。更に、雑音の効果を低減するために、以下のように、現在の値と、Ｎ個の実際の予測誤差の以前の値との平均値を算出する。
【０１１１】
【数５】
2008508581.tif 000007
【０１１２】
上の式の項は、右から左の順で、システムがシステム状態／コンテキスト／動作空間の領域Ｒに含まれる状況に遭遇した連続した機会に対応している。これらの連続した機会は、通常、時間的に不規則な間隔で隔てられている。
【０１１３】
専用ユニットＥＸＰＲの知識利得評価モジュール１４は、以下の式に基づいて、システム１が領域Ｒに含まれる状態に遭遇したｑｔ番目の機会で、時刻ｔにおいて達成された知識利得（又は「学習の進歩」）を定義することができる。
【０１１４】
【数６】
2008508581.tif 000008
【０１１５】
知識利得評価モジュール１４が、時刻ｔにおける所定の候補動作の実行のために達成されると予想される学習の進歩を推定した時点では、この動作の実行から生じる実際の予測誤差は、未知であり、したがって、平均値ＥｍＲａｃｔ（ｑｔ）を算出することはできない。ここで、知識利得評価モジュール１４は、この同じ専用ユニットＥＸＰＲのメタ予測モジュール１３が生成した推定ＥｐＲ（ｔ）を利用することができる。そこで、知識利得評価モジュール１４は、ＥＲａｃｔ（ｑｔ）の代わりにこの推定ＥｐＲ（ｔ）を使用し、ＥｍＲａｃｔ（ｑｔ）の値を算出し、算出したＥｍＲａｃｔ（ｑｔ）の値と、ＥｍＲａｃｔ［（ｑｔ−Ｎ）］とを比較することによって、予想される学習の進歩を評価する。
【０１１６】
本発明の第１の側面の好ましい実施の形態では、動作選択モジュール４は、機会の大部分において、予想される学習の進歩が最大となる候補動作を選択するように構成されている。但し、幾つかの機会では、動作選択モジュール４が次の動作をランダムに選択することが有益である。これによって、動作選択システム１は、セットアップ又はシステムＳの挙動に関して、情報を生成するという観点から有益な、システム状態／コンテキスト／動作空間内の新たな領域を発見することができる。
【０１１７】
実際に効果的であると確認された実験（図１０、図１１及び図１７を用いて後述する。）においては、動作選択モジュール４が学習の進歩を最大にすると予想される候補動作を選択する確率を０．８５とし、ランダムに動作を選択する確率を０．１５とした。なお、本発明は、これらの確率の値を限定するものではない。ランダムに動作を選択する確率がゼロではない限り、システム１は、システム状態／コンテキスト／動作空間において、興味深い新たな領域を発見することができる。また、この確率の値を１とした場合、システム１は、動作をランダムに選択し続けるのみである。したがって、本発明の好ましい実施の形態では、動作選択モジュール４が動作をランダムに選択する確率ｐを０＜ｐ＜１と定義する。
【０１１８】
幾つかの具体例では、動作選択モジュール又は動作選択器４によって選択された動作は、動作選択システム１による制御の下で、自動的に実行される。他の場合、動作選択システム１は、単に、１つ以上の動作変数のそれぞれの目標値を示す信号を出力してもよい。この場合、選択された動作は、人間のユーザ、若しくは他のマシン又はシステムによって実行される。動作の結果は、後のある時点（例えば、ｔ＋１）における、これにより得られるシステム状態／コンテキストパラメータの値として、又は後のある時点（例えば、ｔ＋１）で観測された、予測された変数ＶＡＲの組の実際の値として、動作選択システム１にフィードバックされる。動作選択システム１は、この結果データに、実行された動作を定義するデータと、動作が実行されたときのシステムを記述するデータとを関連付ける。データの結果の集合は、１つのトレーニング実例（training example）を構成する。
【０１１９】
上述のように、トレーニング実例データは、以下の要素を含む。
【０１２０】
・実行された動作（すなわち、時刻ｔにおいて実行された選択された動作を定義する一組の動作変数の値）
・時刻ｔにおけるセットアップ／システムＳの記述（すなわち、時刻ｔにおける一組のシステム状態／コンテキストパラメータの値）
実行された動作の結果（すなわち、後の所定の時刻、例えば、時刻ｔ＋１における、予測された一組の変数ＶＡＲの実際の値）
なお、フィードバックは、必ずしも、動作の実行の直後にシステム１に供給する必要はない。この間に、多くのタイムステップが割り込んでもよい。
【０１２１】
トレーニング実例データは、以下で更に詳細に説明するように領域識別モジュール２に供給される。
【０１２２】
これまで、システム状態／コンテキスト／動作空間を様々な領域に分割する手法については説明されていない。遭遇した異なる状況に関する学習が進むにつれて、領域識別モジュール２自体によって、システム状態／コンテキスト／動作空間を徐々に細かい領域、すなわち、より小さい領域に分割することは有益である。本発明の第１の側面の好ましい実施の形態では、この再分割は、以下のようにして実行される。
【０１２３】
動作選択ユニット１は、記憶に基づく学習（memory-based learning）を実行する。換言すれば、動作選択システム１は、システム１が最後に初期化されて以来、遭遇したトレーニング実例のそれぞれを「記憶」（データを保存）し、すなわち、各タイムステップ毎に、トレーニング実例データを登録する。このトレーニング実例データは、領域識別モジュール２に提供され、このトレーニング実例のシステム状態／コンテキストパラメータ及び動作変数の値によって定義されるベクトルの端点を含むシステム状態／コンテキスト／動作状態の特定の領域に関連付けられる。
【０１２４】
領域識別モジュール２は、当初、どの状況が互いに類似しているかに関する情報を有していない。したがって、システム状態／コンテキスト／動作空間の全体が単一の領域とみなされ、対応する知識利得評価モジュール３内の専用ユニットは、１つのみしか存在しない。動作選択システム１が実行されると、各タイムステップに遭遇した値（システム状態／コンテキストパラメータ値、予測された変数の実際の値等）に対応する一組のトレーニング実例が構築される。実例データは、既存の単一の専用ユニットに割り当てられ、この専用ユニットは、システム状態／コンテキスト／動作空間の単一の既存の領域について予測を行う。
【０１２５】
次第に増加するトレーニング実例に関するデータが収集されるので、領域識別モジュール２は、基準Ｃ１に基づいて、システム状態／コンテキスト／動作空間の初期の単一の領域を２つ以上の新たな領域に分割化するかを決定する。初期の領域が新たな領域に分割されると、元の専用ユニットは、それぞれが新たな領域のための複数の専用ユニットに分割され（又は新たな専用ユニットが作成され）、既に収集されているトレーニング実例データは、新たな領域（すなわち、システム状態／コンテキストパラメータ値と、このトレーニング実例の時点で適用可能な動作変数値の組合せを含む新たな領域）に関連する専用ユニットに再び割り当てられる。
【０１２６】
本発明の第１の側面の好ましい実施の形態では、領域を分割するか否かを決定するために用いられる基準Ｃ１は、元の領域において遭遇した実例の数に基づく単純な判断である。例えば、システム状態／コンテキスト／動作空間の所定の領域について遭遇したトレーニング実例の数が所定の数ＮＳを超えると、初期の領域を複数の新たな領域（例えば、２つの新たな領域）に分割することが決定される。図１０、図１１及び図１７を用いて後述する実験では、所定数ＮＳを２５０とした。
【０１２７】
領域を分割する時点で、基準Ｃ２は、元の領域をどのように分割するかを決定し、すなわち、新たな領域の境界を選択する。本発明の第１の側面に基づく好ましい実施の形態では、以下のような基準Ｃ２を用いる。領域Ｒを新たな領域（例えば、２つの新たな領域のＲ１及びＲ２）に分割する際、境界の位置は、領域Ｒについて既に収集されている実例データの数が新たな領域間で均衡し、分散が最小となるように設定される。すなわち、分割の後に、各新たな領域は、他の新たな領域が承継したトレーニング実例の数に近似する数のトレーニング実例を継承し、実例データの分散は、最小化される。この分散は、システム状態／コンテキスト／動作空間の各新たな領域内又は「結果空間」（すなわち、予測された変数ＶＡＲの組の実際の観測値によって定義される空間）内で、又はシステム状態／コンテキストパラメータ、動作変数及び予測された変数の組の値によって定義されるより高い次元のシステム状態／コンテキスト／動作／結果空間内で最小化することができる。この条件は、以下のように表現することができる。
最小化［｛ｃａｒｄ（Ｒ１）×分散（Ｒ１）｝＋｛ｃａｒｄ（Ｒ２）×分散（Ｒ２）｝］
本発明の第１の側面の好ましい実施の形態においては、システム状態／コンテキスト／動作空間の領域を上述のように分割する際、境界の位置を決定する処理は、まず、区切るべき次元（パラメータ、変数又はこれらの組合せ）を決定し、次に、その（又は各）境界の位置を決定する。境界は、例えば、変数Ｖ１の値の範囲が０〜０．５となる実例を含む領域を第１の新たな領域とし、変数Ｖ１の値の範囲が０．５１〜１．０となる実例を含む領域を第２の新たな領域とする等、簡単な規則によって定義することができる。領域識別モジュール２は、境界を区切るための次元及び値のリストを維持する。
【０１２８】
上述した領域分割処理は、再帰的に繰り返される。領域識別モジュール２によって、いずれかの領域において基準Ｃ１が満たされたと認識された場合、次に、その領域が新たな領域に分割される。このような処理を続けると、木構造が成長し、初期の領域（及び専用ユニット）は、幹を構成し、元の領域の第１のレベルの分割により枝が生成され、これらを更に分割することによって小枝が生成され、最終的な領域（及び専用ユニット）は、木構造の「葉」に相当するとみなすことができる。この木構造は、入力空間のセグメント化に対応しており、各専用ユニットは、それぞれのシステム状態／コンテキスト／動作空間の部分に専用に用いられる。
【０１２９】
動作選択ユニット１は、動作を続け、各タイムステップにおいて、領域識別モジュール２は、所定の候補動作と、システム状態／コンテキストパラメータの現在の値との組合せを含む「葉」領域を判定する。この判定は、候補動作変数の値及びシステム状態／コンテキストパラメータの現在の値を木構造の様々な領域を定義する境界データと比較することによって実行される。そして、この葉領域に適用可能な専用ユニットが、予測を生成する。各候補動作について予想される知識利得が評価されると、１つの候補動作が実行のために選択される。実際の結果が入手されると、予測された変数（ＶＡＲ）の組の実際の値を示すデータは、このトレーニング実例のための他のデータと共に、適用可能な葉に対応する専用ユニットのメモリに保存される。
【０１３０】
動作選択システム１を用いて一連の動作を選択した場合、幾らかの時間が経過した後、システムＳのシステム状態／コンテキストパラメータ及び動作変数の間に存在する実質的に全ての関係を反映する決定木アーキテクチャが構築される。専用ユニットの様々な予測モジュール１２が予測を生成する際に観測される予測誤差は、低減される。この予測誤差値の低減は、セットアップＳに関して希望の知識を取得するための学習処理が成功したことの指標として用いることができる。これにより、一連の動作を停止することができる。本発明の動作選択システムは、制御モジュール（図示せず）を備えていてもよく、制御モジュールは、異なる専用ユニットにおける予測誤差値の低減を監視し、これによって、停止基準が満たされた場合（例えば、領域識別モジュール２によって定義された全ての「葉」領域について、１つのトレーニング実例から次のトレーニング実例への実際の予測誤差の変化率が閾値を下回った場合）、動作選択システム１の動作の停止をトリガする。
【０１３１】
本発明の第１の側面の好ましい実施の形態は、上述した動作選択メカニズムを用いることによって、遷移現象を回避し、すなわち予測不能な状況から容易に予測可能な状況に切り替わった際、期待された知識利得の評価は、単に時間的に前の動作のみではなく、予測不能な状況における前の動作に基づいて実行される。
【０１３２】
更に、システム状態／コンテキスト／動作空間において認識される領域の定義を徐々に狭めることによって、本発明の好ましい実施の形態に基づく動作選択ユニットは、学習処理が、最初に、学習すべきマッピングの簡単な部分を修得し、次に、次第にマッピングのより難しい部分に進むことを確実にする。ここでは、システム状態／コンテキスト／動作空間の全てが詳細に探索されるわけではなく、興味深いと判定された部分のみが詳細に探索される。
【０１３３】
「決定木」アーキテクチャに基づく領域識別情報を最隣接アルゴリズムに基づく予測に結合することによって、本発明の好ましい実施の形態の動作選択ユニットは、非常に効率的な学習法を提供する。本発明では、学習の速度は最大限に速く、予測は、正確である。特に、予測は、平易な最近傍識別予測と比べて、非常に高速である。例えば、実例が１００万個あり、ＮＳ＝２５０である場合、平易な最近傍識別アルゴリズムは、１００万回の計算を行うが、本発明の第１の側面の好ましい実施の形態に基づく手法では、計算は２５０回のみ行えばよい（すなわち、それは４０００倍高速である）。更に、本発明の第１の側面の好ましい実施の形態によれば、領域分割によって、最近傍識別予測アルゴリズムの特徴である過学習（over-fitting）が減少するので、平易な最近傍識別予測に比べてより正確な結果が得られる。
【０１３４】
本発明の第２の側面
本発明の第１の側面に基づく動作選択システム１が実行され、一連の動作を選択し、様々な予測モジュールの予測誤差の全てが安定値（plateau value）に達すると、動作選択システム１は、システム又はセットアップＳに関してエキスパートになったとみなすことができる。特に、様々な専用ユニットの予測モジュール１２は、異なるセットアップ条件において（すなわち、システム状態／コンテキストパラメータの異なる値について）異なる候補動作の効果に関してかなり正確な予測を生成する傾向がある。
【０１３５】
これらの状況では、知識利得評価モジュール３における領域識別モジュール２及び予測モジュール１２の組合せは、セットアップＳの挙動に関して正確な予測を生成するためにトレーニングされた予測マシンを構成すると考えることができる。詳しくは、領域識別モジュール２及び予測モジュール１２の組合せは、動作変数の値及びシステム状態／コンテキストパラメータの異なる組合せについて、１つ以上の変数ＶＡＲの各値を予測できる。
【０１３６】
本発明の第２の側面は、予測マシントレーニングを本発明の第１の側面に基づく動作選択システムの一部に組み込み、動作選択システムによって予測モジュールにおける予測誤差が安定するまで一連の動作を選択することによって予測マシントレーニングするトレーニング方法を提供する。また、第２の本発明の側面は、このトレーニング方法を実現する予測マシントレーニングシステムを提供する。
【０１３７】
図５は、この本発明の第２の側面に基づく予測マシントレーニングシステム１１の好ましい実施の形態の主なコンポーネントを図式的に示している。なお、この予測マシントレーニングシステム１１は、図４に示す動作選択システム１と同様の構造及び機能を有する。したがって、図５では、図４の動作選択システム１と同様の機能を有する要素には、同じ参照番号を付している。
【０１３８】
ここで、この予測マシントレーニングシステム１１は、ソフトウェアによって実現することができ、図５に示す様々な「モジュール」は、説明の目的で示しているに過ぎない。予測マシントレーニングシステム１１において実行される様々な機能は、図５に示す手法とは異なる手法で、モジュールの間で分割してもよく及び／又はこれより多い又は少ないモジュールを用いてこれらの機能を実行してもよい。
【０１３９】
図５に示す予測マシントレーニングシステム１１は、図４に示す動作選択システム１において用いられていたものと同様な領域識別モジュール２、知識利得評価モジュール３、動作選択器４及び予測誤差計算器５を備える。上述したように、知識利得評価モジュール３の領域識別モジュール２及び予測モジュール１２の組合せが、この予測マシントレーニングシステム１１によってトレーニングされる予測マシンを構成する。
【０１４０】
予測マシントレーニングシステム１１は、２つのモードで動作し、動作モード設定モジュール１６を有し、動作設定モジュール１６は、予測マシントレーニングシステム１１が動作しているモードに基づいて、予測マシントレーニングシステム１１の異なるコンポーネントを制御する。第１の動作モードでは、予測マシンがトレーニングされ、第２の動作モードでは、予測マシンは、既にトレーニングされており、予測を生成する。
【０１４１】
予測マシントレーニングシステム１１が第１の動作モードにある場合、領域識別モジュール２、知識利得評価モジュール３（及びその専用ユニット）、動作選択器４及び予測誤差計算器５は、実質的に図４を用いて説明したように動作する。換言すれば、セットアップＳに影響する動作のシーケンスが選択及び実行され、各実行された動作、動作が実行された際のセットアップの記述（状態及びコンテキスト）及び動作の結果に関するトレーニング実例データが蓄積される。領域識別モジュール２は、このトレーニング実例データを用いて、システム状態／コンテキスト／動作空間を、セットアップＳに生来的な異なる種類の状況に対応するより細かい領域に分割することによって、決定木アーキテクチャを徐々に構築する。
【０１４２】
また、各領域のためのトレーニング実例データを用いて、知識利得評価モジュール３内の領域を処理するために割り当てられた専用ユニットの予測モジュール１２によって使用される予測関数を適応化する。換言すれば、一連の動作が選択及び実行されると、知識利得評価モジュール３内の異なる予測モジュール１２によって適用された関数は、セットアップＳ内のある種類の状況に対応するシステム状態／コンテキスト／動作空間内の各領域のプロパティ／挙動により順応するように適応化される。
【０１４３】
予測モジュール１２は、予測モジュール１２が生成する実際の予測誤差が低減されなくなった（すなわち、安定値に到達した）とき、トレーニングされたとみなすことができる。これは、各予測モジュール１２について実際の予測誤差の低減を監視するモジュール（図示せず）によって検出できる。この状況が検出されると、動作モード設定モジュール１６は、予測マシントレーニングシステム１１を第１の動作モードから第２の動作モードに切り換える。
【０１４４】
第２のモードでは、動作モード設定モジュール１６は、知識利得評価モジュール３及び動作選択器４に所定の機能を停止するための信号を送信する。詳しくは、予測マシントレーニングシステム１１が第２の動作モードである場合、ユーザは、実行できる可能な動作を特定するデータを入力し、すなわち、動作変数の組の値を指定する。また、ユーザは、セットアップの状態及びコンテキストを記述するデータ、特に１つ以上のシステム状態／コンテキストパラメータの組の各値を指定するデータを入力する。
【０１４５】
領域識別モジュール２は、システム状態／コンテキスト／動作空間のどの領域が、動作変数及びシステム状態／コンテキストパラメータ値の組によって定義されるベクトルの端点を含むかを判定し、この領域を扱う予測モジュール１２の専用ユニットを有効にする。有効にされた予測モジュール１２は、１つ以上の予測された変数ＶＡＲの組の値の予測を予測出力インタフェース１８に出力し、予測出力インタフェースは、この予測をユーザに提供する。
【０１４６】
幾つかの具体例では、ユーザは、トレーニングされた予測マシンを用いて、特定の動作の結果の予測を生成し、その動作を実行し、実行された動作の結果を予測マシントレーニングシステム１１にフィードバックすることができる。このような場合、フィードバックデータを用いて、更なるトレーニング実例を生成することができ、この更なるトレーニング実例を用いて、適切な予測モジュールによって適用される予測関数を更に適応化することができる。
【０１４７】
本発明の第１及び第２の側面の異なる分野への応用例
本発明に基づく予測マシン動作選択／トレーニング技術は、様々な分野に応用できる。異なる分野への応用例の幾つかの具体例を以下に説明する。以下の各具体例では、図４（図５）を用いて上述した動作選択システム（予測マシントレーニングシステム）を使用する。
【０１４８】
具体例１−生物学の分野
この特定の具体例では、人間のユーザが、化学物質の混合物が注入されると、有機組織がどのように反応するかを調べることを望む。化学物質の混合物は、各化学物質（Ｃ１、Ｃ２、Ｃ３…Ｃｎ）の濃度を指定することによって定義され、研究された組織の反応は、化学物質の混合物の注入から３０分経過後のその組織内のある種類の細胞における濃度（ＣＣ３０）を判定することによって測定される。
【０１４９】
各試行又は動作では、化学物質を組織に注入し、結果の反応では、その組織の損傷又は破壊も観察された。また、各試行を実行について、時間及びコストも検討した。もちろん、実行される試行の数を最小化することが望ましい。
【０１５０】
例えば、図４に示すような本発明の好ましい実施の形態に基づく動作選択システムを用いることによって、必要な試行の数を低減でき、ユーザは、化学的混合物に対する組織の反応に関する知識を効率的に取得できる。
【０１５１】
好ましくは、ユーザは、本発明の動作選択システムと共に、選択された動作を実行し、フィードバックを動作選択システムに提供する完全に自動化されたアセンブリを使用する。
【０１５２】
このような完全に自動化されたシステムの具体例を図６に示す。図６に示す具体例では、本発明の第１の側面に基づく（例えば、図４に示す）動作選択システムを用いて、所定の時刻に、異なる候補動作から実行する動作を選択する。選択された動作は、一組の実験用ロボットを含む自動実験室に出力される。選択された動作は、自動的に実行され、結果のフィードバックは、自動実験室から動作選択システムに供給される。
【０１５３】
詳しくは、この具体例では、動作選択システム１は、濃度値Ｃ１〜Ｃｎを動作変数とみなす。この具体例における動作選択システム１では、特定の化学物質の混合物の注入から３０分経過後に、予測モジュールが、ＣＣ３０を予測し、すなわち、組織内の特定の種類の細胞の濃度を予測する。
【０１５４】
この特定の具体例では、システム状態／コンテキストパラメータは、全く考慮に入れられない。すなわち、この具体例では、領域識別モジュール２及び実予測誤差計算器５には、調査中のセットアップＳからシステム状態／コンテキストパラメータが入力されず、セットアップＳからは、所定の時刻におけるＣＣ３０の実際の値のみが入力される。なお、必要ならば、ユーザは、システム状態／コンテキストパラメータを認識し、並びに検査中の組織を含む有機体の温度、血圧等を認識（及び監視）するように動作選択システム１を構成してもよい。
【０１５５】
動作選択システム１の関連する予測モジュール１２は、複数の候補動作のそれぞれについて、すなわち、各動作変数Ｃ１、Ｃ２…Ｃｎの値の多くの異なる可能な組合せについて、ＣＣ３０を予測する。完全に自動化されたアセンブリでは、検討される候補動作の異なるセットは、動作選択システム１自体内で自動的に生成してもよく、独立した候補動作生成モジュールによって生成してもよく、人間のユーザによって生成してもよい。
【０１５６】
実行される候補動作は、（大部分の機会において）システム状態／コンテキスト／動作空間において、候補動作において特定された組合せと同じ領域にあるＣ１〜Ｃｎの値の組合せをシステムが有する最後の機会と比べて、どの候補動作が知識を最大に増加させると予想されるかに関する動作選択器４による評価の結果に基づいて選択される。この他の少数の機会では、動作は、ランダムに選択される。そして、化学物質のどの混合物が選択されたかに関する情報が出力される。この情報は、自動化されたロボットの組に供給され、これらは、化学物質の選択された混合物を生成し、調査中の組織にこの混合物を注入する。
【０１５７】
３０分後、自動化されたロボットの１つが、組織内の特定の細胞の濃度（ＣＣ３０）を測定する。自動化されたロボットは、測定された濃度（ＣＣ３０）を示す情報を動作選択システム１の領域識別モジュール２及び実予測誤差計算器５にフィードバックとして供給し、これにより、動作選択システム１は、この候補動作（化学物質のこの混合物）について予測モジュール１２が生成した予測に関して、実際の誤差を判定できる。
【０１５８】
初めは、動作選択システム１は、システム状態／コンテキスト／動作空間内の単一の領域だけを認識する。しかしながら、多くの動作が実行されるにつれて、新たな専用ユニットが作成され、システム状態／コンテキスト／動作空間（この場合、「動作空間」）の異なる領域が細分化されて決定木構造が成長する。この決定木構造は、組織に注入された様々な化学物質の濃度と、これらの化学物質に対する組織の反応と間で成立する関係（このような関係が存在している限り）を反映する。
【０１５９】
システム状態／コンテキスト／動作空間の関連する領域で動作する本発明に基づく動作選択システム１の予測モジュール１２によって、各関係が学習されると、各予測モジュール１２によって生成された予測誤差は、安定値に落ち着く。動作選択システム１又はユーザは、予測誤差値の低減を監視し、予測モジュール１２が、事実上、学習できる知識の全てを学習したかを判定することができる。この時点で、一連の動作を停止する。
【０１６０】
一連の動作の最後には、本発明の動作選択システム１は、研究された組織が化学物質の異なる混合物にどう反応するかを予測するようにトレーニングされた予測マシンに発達する。ユーザが、研究対象の組織に化学物質の特定の混合物を投与することによる影響を調査したい場合、ユーザは、単に、唯一の候補動作であるかのように、Ｃ１〜Ｃｎの値の適切な組合せを動作選択システム１に入力し、次に、適切な予測モジュールからの出力を抽出し、これが、ＣＣ３０の予測の結果になる。
【０１６１】
上述した完全に自動化されたアセンブリを用いることに代えて、ユーザは、本発明の動作選択システム１のみを使用し、自らが化学物質の選択された組合せを混合し、動作選択システム１にフィードバックを提供してもよい。また、動作選択システム１によって評価される候補動作の様々な組（これは、動作選択システム１内の個別の候補動作生成モジュールによっても生成できるが）を人間のユーザが生成してもよい。
【０１６２】
このように、本発明の第１の側面を生物学の分野に応用した具体例では、ユーザに一連の動作を選択するマシンを提供し、ユーザは、特定の組合せの薬剤を組織に投与した場合の影響を学習することができる。また、本発明の第１の側面は、動作選択システム１がどの動作を実行するかを選択し、１つ以上の自動化されたロボットが、選択された動作を実行し、結果に関するフィードバックを行う完全に自動化されたアセンブリを提供する。
【０１６３】
更に、生物学の分野への応用例では、本発明に基づく動作選択システムを、例えば、図５に示すような予測マシントレーニングシステムに置き換えた場合、本発明の第２の側面により、ユーザは、予測マシントレーニングシステムを用いて、対話型の処理によって予測マシンをトレーニングし、これにより、化合物の特定の組合せを組織に投与した場合の影響を予測できる。また、この対話型の処理の結果、ユーザは、化合物の異なる混合物の注入の３０分後に、組織における特定の種類の細胞の濃度を予測するように予測マシンをトレーニングできる。例えば、このトレーニングされた予測マシンは、コンピュータシステムとして実現してもよく、専用のシステムとして実現してもよい。
【０１６４】
具体例２−農業の分野
次にバイオ系企業が農業者に販売するための特定の種類の酵母を製造する具体例を検討する。酵母は、例えば、水の量、化学肥料及び農薬等を増減させ、異なる条件下で培養できる。熟成する酵母の品質及び量は、パラメータの設定並びに農業的コンテキスト（例えば、土質、日照時間等）によって異なる。また、農業者によって、何を優先するかが異なる場合もある。例えば、最小の化学肥料で十分な収量を望む農業者もいれば、大量の化学肥料を用いても、酵母の収量を最大にすることを望む農業者もいる。
【０１６５】
バイオ系企業は、酵母の培養の間に用いられる水、化学肥料及び農薬の量が、異なる農業コンテキストにおいて、最終歩留まりにどのように影響するかを調べる必要がある。
【０１６６】
酵母の培養の間、週単位で適用される水、化学肥料及び農薬の量は、それぞれパラメータＷ、Ｆ及びＰを用いて指定でき、土質は、複数のパラメータＳＱ１、ＳＱ２等を用いて指定でき、収量は、植え付けの後の所定週経過後、１ヘクタールあたりに生産されるキログラム数をパラメータＹを用いて表す。
【０１６７】
各動作又は試行では、水、化学肥料及び農薬を用いて、バイオ系企業の酵母の作物を培養することを伴う。各試行を実行するためには、労働コスト、水／化学肥料のコスト及び時間的なコストが必要である。したがって、バイオ系企業にとっては、実行する試行の数を最小化することが望ましい。
【０１６８】
この具体例では、図４に示すような本発明の好ましい実施の形態に基づく動作選択システム１は、動作変数としてパラメータＷ、Ｆ、Ｐを認識し、システム状態／コンテキストパラメータとして土質（例えば、窒素含有量、粘土含有量等）を定義する値ＳＱｉを入力する。
【０１６９】
この具体例では、動作選択システム１は、予測モジュール１２が、植え付けから特定の期間経過後の酵母の収量Ｙを予測するように構成される。
【０１７０】
本発明の好ましい実施の形態に基づく動作選択システム１は、システム状態／コンテキストパラメータＳＱｉの現在の値を考慮に入れて、複数の候補動作のそれぞれについて、すなわち、適用された水、化学肥料及び農薬の量の異なる可能な組合せ（動作変数Ｗ、Ｆ、Ｐの値の異なる組合せ）のそれぞれについて、収量Ｙを予測する。
【０１７１】
ここでも、機会の大部分に関しては、システム状態／コンテキスト／動作空間において、候補動作において指定された現在のＷ、Ｆ、Ｐ及びＳＱｉ値の組合せと同じ領域にＷ、Ｆ、Ｐ及びＳＱｉの値の組合せがあった最後の機会と比べて知識を最大に増加すると予想される候補動作が動作選択器４によって実行のために選択される。この他の少数の機会では、動作は、ランダムに選択される。そして、Ｗ、Ｆ、Ｐの値のどの組合せが選択されたかを示す情報が出力される。
【０１７２】
バイオ系企業は、動作選択システム１から出力を受け取り、特定の条件の下で酵母の作物を培養できる。そして、必要な期間経過後に、収量Ｙを測定する。測定された収量Ｙは、フィードバックとして動作選択システム１に入力され、動作選択システム１の実予測誤差計算器５は、予測時点での値ＳＱｉを考慮に入れて、この候補動作（培養条件の組）について、関連する予測モジュール１２によって生成された予測の実際の誤差を計算する。
【０１７３】
第１の具体例と同様、一連の試行が行われるにつれて、動作選択システム１は、専用ユニットを発達させ、システム状態／コンテキスト／動作空間を細分化し、システムにおける生来的な関係を反映する決定木構造を成長させる。
【０１７４】
一連の試行が終了すると、動作選択システム１の様々な専用ユニットの領域識別モジュール２及び予測モジュール１２の組合せは、バイオ系企業の酵母の収量が異なる培養条件でどう影響を受けるかを予測するようにトレーニングされた予測マシンに発達する。バイオ系企業は、この予測マシンを用いて、又はバイオ系企業の酵母と共にこの予測マシンを農業者に提供することによって、土壌条件に応じて、培養条件の異なる組合せから見込まれる収量を評価することができる。
【０１７５】
農業の分野への応用例であるこの具体例では、本発明の第１の側面により、バイオ系企業は、予測マシンを用いて、一連の動作を順次選択し、新たな酵母の収量に関して、異なる培養条件の効果を学習することができる。
【０１７６】
更に、農業の分野への応用例では、本発明の第２の側面により、バイオ系企業は、予測マシントレーニングシステムを用いて、対話型の処理によって予測マシンをトレーニングし、これにより、異なる土壌条件を考慮に入れて、酵母の収量に関して、異なる培養条件の効果を予測できる。この対話型の処理の結果、バイオ系企業／農業者は、土壌条件及び培養条件の異なる組合せについて、酵母の収量を予測するように（例えば、コンピュータシステム又は専用のシステムの形式の）予測マシンをトレーニングできる。
【０１７７】
具体例３−工業生産／製造の分野
この具体例では、内燃機関又はモータの製造業者による本発明の仕様を想定する。これらのモータの駆動のためには、異なる組成の燃料を用いることができる。なお、組成の選択は、モータの機能に影響する。例えば、幾つかの組成は、安価であるが、モータを劣化させ、寿命を短くする。他のある組成では、エンジンの寿命を引き延ばすことできるが、エネルギ消費コストが高くなる。燃料組成によるエンジンの性能／寿命への影響は、特に、工場等で用いられる大きなエンジンの場合に重要である。燃料組成のバリエーションが、例えば、エンジンの寿命、燃費等の変数にどのように影響するかを明らかにすることが望ましい。
【０１７８】
燃料の異なる組成毎に、例えば、エンジンの寿命等の項目を判定する検査は、非常に高価となることは明らかである。この場合も、エンジン及びその性能に関して異なる燃料組成の効果を学習するために実行すべき検査の数を削減することが望ましい。
【０１７９】
本発明の動作選択技術を用いて、実行すべき一連の動作を決定することによって、エンジンの性能に対する異なる燃料組成の効果を効率的に学習することができる。具体的には、以下では、エンジン製造業者が図４に示すような動作選択システム１を用いて、動作を順次選択し、異なる組成の燃料を供給した場合のエンジンの性能を調査する。
【０１８０】
この具体例では、燃料組成内の異なる成分ａ、ｂ…ｍの重量比率は、それぞれパラメータＣａ、Ｃｂ…Ｃｍを用いて指定できる。ここでは、エンジンによって１時間あたりに消費される燃料の量をパラメータＦＣによって指定し、エンジンの定格パワー出力をパラメータＰによって指定し、エンジンの寿命をパラメータＬＴによって指定する。
【０１８１】
この具体例では、本発明の好ましい実施の形態に基づく動作選択システム１は、パラメータＣａ、Ｃｂ…Ｃｍを動作変数として認識する。この具体例では、動作選択システム１は、その予測モジュール１２が、エンジンの有効寿命（ＬＴ）、エンジンの燃費（ＦＣ）及びエンジンの定格パワー（Ｐ）を予測するように構成される。換言すれば、この具体例では、予測される変数ＶＡＲの組は、３つの変数を含む。この具体例でも、動作選択システム１についてシステム状態／コンテキストパラメータは、定義されない。
【０１８２】
本発明の好ましい実施の形態に基づく動作選択システム１は、複数の候補動作、すなわち複数の異なる可能な燃料組成ＬＴ、ＦＣ及びＰを予測する。
【０１８３】
ここでも、機会の大部分に関しては、関連する知識利得評価モジュール１４からの出力に基づいて、システム状態／コンテキスト／動作空間の同じ領域において、候補動作において指定された組合せと同じＣａ、Ｃｂ…Ｃｍの値の組合せが用いられた最後の機会と比べて、知識を最大に増加すると予想される候補動作が動作選択器４によって実行のために選択される。この他の少数の機会では、動作は、ランダムに選択される。そして、Ｃａ、Ｃｂ…Ｃｍのどの組合せが選択されたかに関する情報が出力される。
【０１８４】
エンジン製造業者は、動作選択システム１からこの情報を受け取り、エンジンを特定の条件下で動作させ、この動作条件におけるエンジンの有効寿命、燃費及び出力パワーを調べる。測定されたデータＬＴ、ＦＣ及びＰは、動作選択システム１にフィードバック（ＶＡＲの実際の値）として入力され、これにより、動作選択システム１の実予測誤差計算器５は、この候補動作（この燃料組成）について関連する予測モジュール１２が生成した予測の実際の誤差を計算することができる。
【０１８５】
上述した第１及び第２の具体例と同様に、一連の検査が進むと、動作選択システム１は、（それぞれの予測モジュールを有する）新たな専用ユニットを生成し、異なる成分の燃料組成、エンジンの定格パワー、エンジンの燃費及びエンジンの継続期間の間に存在する関係を反映する決定木構造に基づいて、システム状態／コンテキスト／動作空間を細分化する。
【０１８６】
一連の検査が終わると、動作選択システム１の領域識別モジュール２及び予測モジュール１２の組合せは、エンジンの継続期間、燃費及び出力が、エンジンに供給される燃料の組成によってどのように影響を受けるかを予測するようにトレーニングされた予測マシンに発達する。製造業者は、エンジンを販売する際、このトレーニングされた予測マシンをエンドユーザに供給でき、これによりエンドユーザは、異なる可能な燃料組成について、エンジンの性能を評価することができる。
【０１８７】
工業生産の分野への応用例であるこの具体例では、本発明の第１の側面により、エンジン製造業者は、予測マシンを用いて、一連の動作を順次選択し、エンジンの性能に関する異なる燃料組成の影響を学習することができる。
【０１８８】
更に、工業生産の分野への応用例では、本発明の第２の側面により、エンジン製造業者は、予測マシントレーニングシステムを用いて、対話型の処理によって予測マシンをトレーニングし、これにより、エンジンの性能に関する異なる燃料組成の影響を予測できる。この対話型の処理の結果、エンジン製造業者／エンジンユーザは、異なる燃料組成について、エンジンの燃費、出力パワー及び寿命を予測するように（例えば、コンピュータシステム又は専用のシステムの形式の）予測マシンをトレーニングできる。
【０１８９】
実施例４−金融の分野
次に、購入から３０日経過後の特定の金融商品（例えば、不動産又は他の資産、株式、ワラント、オプション、又は他の金融商品等）の価値を予測する具体例を検討する。
【０１９０】
金融商品の価値は、包括的な経済的条件に影響を受け、このような経済的条件は、システムのコンテキストであるとみなすことができ、例えば、ローカル株式市場インデクス（stock market index：ＳＭＩ）の終値、現行利子率（interest rate：ＩＲ）等のコンテキストパラメータを用いて記述できる。
【０１９１】
また、金融商品の価値は、その商品を定義する多くのパラメータによって影響を受けることも多い。これは、（コール）ストックオプションの具体例を考慮することによって理解される。このストックオプションは、オーナに対し、特定の日に、「権利行使価格」と呼ばれる特定の価格で、ある数量の株式を購入する権利を与える（株式を販売するオプションは、「プット」オプションと呼ばれる）。また、ストックオプション自体を取り引きすることもでき、したがって、ストックオプションは、価格を有する。この価格は、オプションの権利行使日までに残された期間、及び同じ株式の権利行使価格と実際の市場価格との間の差の影響を受ける。如何なる時点においても、通常、同じ株式の異なるオプション、特に、異なる権利行使価格及び異なる権利行使日を有するオプションを買うことができる。オプションの購入時点での実際の株価及びストックオプションの価格は、この種類の金融商品の「状態」を定義し、状態パラメータＣＰ（オプションの購入日の株式の現在の価格）及びＯＰ（オプションの現在の価格）によって記述できる。
【０１９２】
コールストックオプションの、購入から３０日後の価値が経済的条件及びオプション自体の「状態」によってどのように変化するかを知るためには、経済条件（元の株価を含む）が変化する環境において、異なる権利行使価格及び権利行使日を有する複数のオプションを購入する必要がある。ような購入は、コストがかかり、当然、経済的な損失を被る可能性もある。したがって、このシステムにおける生来的な関係を効率的な手法で発見できることが望ましい。本発明に基づく動作選択システムを用いることによって、これが実現される。
【０１９３】
好ましくは、ユーザは、完全に自動化された構成を使用し、この構成において、本発明に基づく動作選択システムは、（例えば、ウェブサイトに接続することによって）オンライン金融データベース、電子市場及び／又は電子商取引システムにアクセスでき、システム状態／コンテキストパラメータ値の現在の値を収集し、ストックオプションの購入を開始し、それらの購入の結果に関するフィードバックを取得するように適応化される。
【０１９４】
このような完全に自動化されたシステムの具体例を図７に図式的に示す。図７に示す具体例では、本発明の第１の側面に基づく動作選択システムは、インターネットの金融データベース（例えば、ナスダック（ＮＡＳＤＡＱ）ウェブサイト）にアクセスし、様々な経済指標及び購入できる潜在的商品を定義するパラメータの現在の値を入手することができる。また、動作選択システムは、（例えば、電子商取引システム又はオンライン取引サービスを利用することによって）国際的な金融市場で商品を購入し、これらの購入の結果に関するフィードバックをその市場から自動的に入手することができる。
【０１９５】
この特定の具体例では、図７に示す完全に自動化された構成において、図４に示す動作選択システム１を用いて、ローカル株式市場インデクス（stock market index：ＳＭＩ）の終値、現行金利（current interest rate：ＩＲ）、現在の株価（current share price：ＰＰ）及び現在のオプション価格（option price：ＯＰ）をシステム状態／コンテキストパラメータとして入手することができる。ストックオプション権利行使日（exercise date：ＥＤ）又は権利行使までの期間（time until exercise：ＴＥ）及び権利行使価格（strike price：ＳＰ）は、動作変数である。
【０１９６】
領域識別モジュール２及び実予測誤差計算器５には、購入を実行しようとする時刻ｔにおけるローカル株式市場インデクス（ＳＭＩ）の終値、現行金利（ＩＲ）、現在の株価（ＰＰ）及び現在のオプション価格（ＯＰ）が入力される。動作選択システム１の１又は複数の予測モジュール１２は、（時刻ｔに入力された様々なシステム状態／コンテキストパラメータの値が実際の購入時にも成立するとの仮定に基づいて）購入から３０日後のストックオプションの値を予測する。この仮定は、動作選択システム１が数ミリ秒以内に動作及びその動作を特定する出力データを選択でき、経済変数、例えば、株価の変化がこれより遅い場合に成立する。
【０１９７】
この具体例では、本発明の動作選択システム１は、権利行使日及び権利行使価格パラメータの調整に応じて動作変数ＥＤ及びＳＰを処理する。
【０１９８】
動作選択システム１が構成されると、動作選択システム１は、金融データベース等にアクセスし、株式市場インデクスＳＭＩ、中央銀行の現行利率ＩＲ及び現在の株価ＰＰの現在の値の詳細を入手する。動作選択システム１は、権利行使日ＥＤ及び権利行使価格ＳＰの値の可能な組合せを生成する候補動作生成器を備えていてもよい。これに代えて、独立したモジュール又は人間のユーザが候補動作の異なる組を生成してもよい。動作選択システム１は、金融データベース等にアクセスし、候補動作において指定された権利行使日及び権利行使価格の組合せを有するコールストックオプションの価格ＯＰを判定する。
【０１９９】
これらの異なる潜在的なコールストックオプション購入について、本発明に基づく動作選択システム１は、経済指標（ＳＭＩ及びＩＲ）、株価（ＰＰ）、オプションの現在の価格（ＯＰ）及びシステムが現在の日付を知っていれば、自ら算出できるオプションの権利行使までの期間（ＴＥ）の入力値を考慮に入れて、購入されたオプションの３０日後の価格を予測する。
【０２００】
完全に自動化された構成を用いることに代えて、ユーザは、動作を選択するためだけに動作選択システム１を用い、様々なシステム状態／コンテキストパラメータの値を自ら入力し、選択された購入を実行し、結果に関するフィードバックを提供してもよい。
【０２０１】
動作選択システム１の動作選択器４は、次に、試行すべき動作（購入）を選択する。選択される動作は、多くの場合、知識を最大に増加させると予想される動作（システム状態／コンテキスト／動作空間で「ローカルに」推定される。）であるが、動作は、確率ｐで、ランダムに選択される。そして、権利行使価格及び権利行使日の選択された組合せを有するストックオプションは、例えば、電子商取引システムを介して自動的に（又はユーザによって）、購入される。そして、購入されたストックオプションの３０日後の価格が記録され、例えば、インターネット金融データベースから動作選択システム１に自動的にフィードバックされ又はユーザによって手動でフィードバックされる。
【０２０２】
本発明の動作選択システム１は、初めは、コンテキスト／システム状態／動作空間内で１つの領域しか認識せず、したがって、全ての予測は、共通の予測モジュールによって行われる。そして、動作選択システム１によって提案された購入が実行され、購入されたストックオプションの３０日後の実際の価格に関するフィードバックが供給されると、動作選択システム１は、必要に応じて、コンテキスト／システム状態／動作空間を異なる領域に分割し、新たな専用ユニット（及び対応する新たな予測モジュール１２）を作成する。
【０２０３】
所定の回数の購入が行われた後、システムが幾つかのランダムではなはい要素を含んでいれば、本発明に基づく動作選択システム１は、生じることがある異なる状況（経済指標の異なる組合せ、株価、オプションパラメータ等）に応じて調整された予測モジュール１２を有する専用ユニットを発達させる。ここで、ユーザは、一連の動作（購入）を停止し、現在の経済的状況及び株価を考慮に入れて、権利行使価格及び権利行使日の異なる組合せによって定義されるストックオプションの３０日後の価格を予測できるマシンを入手する。ユーザは、これらの予測された価格をストックオプションの時価と比較することによって、購入により利益が得られる可能性が高いかを判断することができる。
【０２０４】
トレーニングされた動作選択システム１をトレーニングされたオプション価格予測マシンとしてサードパーティに販売してもよい。サードパーティは、トレーニングされた予測マシンによる提案に基づく購入を行った場合、サードパーティは、その購入の結果（すなわち、３０日後の実際のオプション価格）を処理すべき更なる実例と共に、予測マシンにフィードバックしてもよい。換言すれば、予測マシンをトレーニングした後であっても、更なる「トレーニング実例」を生成し、予測マシンの性能を更に高めることができる。
【０２０５】
なお、この特定の応用例では、自動化システム（又はユーザ）は、実際に選択された購入を実行する（選択された動作を実行する）必要はない。実際の購入を行わず、単に購入したと仮定した３０日後に、選択されたストックオプションの価格を判定し、この価格を動作選択システム１にフィードバックしてもよい。もちろん、ストックオプションの実際の購入は、同じ明細を有するオプションの市場価格に影響を与える。しかしながら、非常に大きな買い注文を行わない限り（又は、この種類の株式市場が非常に小さくない限り）、実際の購入を行わなくても、３０日後のオプションの市場価格に大きな影響はない。
【０２０６】
このように、本発明の第１の側面を金融分野に応用した具体例では、ユーザに一連の動作を選択するマシンを提供し、ユーザは、異なる条件で異なる購入を行った場合の効果を学習することができる。また、本発明の第１の側面は、完全に自動化された構成を提供し、この構成では、動作選択システム１が、（例えば、オンライン金融データベースに接続することによって）必要なシステム状態／コンテキストパラメータ値を取得し、実行すべき動作を決定し、（電子商取引システムに接続することによって）これらの動作を任意に実行し、（例えば、再びオンライン金融データベースに接続することによって）この動作の結果に関するフィードバックを取得する。この完全に自動化された構成では、動作選択システム１は、ウェブサイト／取引システムへの必要な接続を確立するソフトウェアロボット（又は「ソフトボット（softbot）」）を含んでいてもよい。
【０２０７】
更に、金融分野への応用例では、本発明の第２の側面により、ユーザは、予測マシントレーニングシステムを用いて、対話型の処理によって予測マシンをトレーニングし、これにより、異なる条件で異なる購入を行う効果を予測できる。この対話型の処理の結果、ユーザは、購入時の条件の所定の異なる組合せに応じて、特定の金融商品の未来の価格を予測する（例えば、コンピュータシステム又は専用のシステムの形式の）予測マシンをトレーニングできる。
【０２０８】
本発明の第３の側面
本発明は、第３の側面として、自己発達装置又はシステムの学習を管理し、又は挙動を組織化する技術及びシステム並びにこのような技術を用いた自己発達装置又はシステムを提供する。
【０２０９】
幾つかの種類の自己発達装置は、ロボット装置又は環境とインタラクトするためのアクチュエータ及びセンサを有する他の機器である。本発明の第３の側面では、環境と対話する自己発達装置をシステムＳとして扱い、本発明の第１の側面の動作選択技術に基づいて自律的に選択された一連の動作における挙動を調査することによって、このような自己発達装置による学習を管理し及び／又は挙動を組織化できる。このようなシステムのシステム状態／コンテキストパラメータは、通常、自己発達装置のセンサに供給された信号であり、動作変数は、自己発達装置のアクチュエータの設定になる。この場合、システム状態／コンテキスト／動作空間は、自己発達装置の感覚−運動状態空間（sensory-motor state-space）に一致する。
【０２１０】
なお、本発明の第３の側面は、センサ及びアクチュエータを有する単一の自己発達装置の応用例に限定されるわけではない。
【０２１１】
詳しくは、本発明は、共に動作する個別の独立した構成要素又はエンティティを含むシステムにも適用でき、この場合、選択される動作は、システムの構成要素／エンティティの１つ以上の動作変数の各値の設定であってもよい。
【０２１２】
更に、本発明の第３の側面は、物理的なアクチュエータを有さない受動的な自己発達装置又はシステムにも適用でき、更に、自己発達装置又はシステムは、センサさえ有していなくてもよい。例えば、本発明は、ある入力情報に基づいて出力を生成し、これによって環境と対話する自己発達コンピュータシステムに適用してもよい。本発明の第３の側面では、環境と対話する自己発達コンピュータをセットアップ又はシステムＳとして扱い、本発明の第１の側面の動作選択技術に基づいて自律的に選択された一連の動作におけるこのセットアップの挙動を調査することによって、このような自己発達システムの学習を管理し、又は挙動を組織化することができる。この場合、システム状態／コンテキストパラメータは、通常、自己発達コンピュータが受信又は生成した入力情報であり、動作変数の組は、自己発達コンピュータからの１つ以上の出力に基づいて値が設定される１又は複数の変数である。
【０２１３】
例えば、コンピュータによって構成された自己発達システムでは、システム状態／コンテキストパラメータは、コンピュータのある内部要素の状態を示すデータ（例えば、状態フラグ、バッファのフル／エンプティ状態、オーバフロー状態の存在等）、人間のオペレータによって入力されたデータ、コンピュータシステムがインタラクトするコンテキスト又は環境の状態を示すデータ等であってもよい。この環境は、例えば、コンピュータシステムが物理的機器又はシステムを制御する場合、物理的環境であってもよく、又は、例えば、コンピュータシステムが処理しているデータにおけるパターンを自ら学習しようとしている場合等には、非物理的環境であってもよい。いずれの場合も、コンピュータシステムによる学習の管理又は挙動の組織化は、本発明の第３の側面に基づいて実現できる。
【０２１４】
更に、本発明の第３の側面を用いて、専用のシステム（expert system）の学習を管理し、又は挙動を組織化することができる。例えば、専用のシステムは、人間のユーザと対話し、一連の質問を行い、（例えば、ユーザのアイデンティティに関して）ある判定を下す。なお、この目的で専用のシステムを用いる前に、専用のシステムで異なる可能な質問又は質問のシーケンスを十分に試し、一連の検査を実行し、どの質問のシーケンスが、後に正確な判定を行うために有効であるかを判断することは有用である。このような一連の検査は、検査の間、専用のシステムの挙動を組織化し、学習を管理する本発明の第３の側面に基づく技術を用いて選択できる。この具体例では、動作変数は、ユーザに行われる異なる可能な質問である。
【０２１５】
以下では、簡単な実験的なセットアップに基づき、本発明の第３の側面について説明する。図８に示すように、この実験的なセットアップは、壁ＷＬによって囲まれた正方形の空間内を移動する単純なロボットＲＢＴを含む。このロボットは、箱形の形状をしており、左車輪及び右車輪が取り付けられ、これらの車輪は、個別にスピードを制御できる。また、ロボットは、前部に壁を感知する２つの赤外線センサと、以下で更に詳細に議論する「玩具センサ」とを備え、３つの周波数（ｆ１、ｆ２、ｆ３のラベルを付す）のうちの選択された１つの周波数の音を生成できる。すなわち、ロボットは、２つの壁センサ（２つの赤外線センサ）と、１つの玩具センサと、３つのアクチュエータ（左車輪の速度コントローラ、右車輪の速度コントローラ及び可聴周波数コントローラ）とを備えると考えることができる。更に、ロボットは、内部クロックを有し、１０００ミリ秒毎にセンサからの値と、アクチュエータの設定とを更新する。
【０２１６】
この具体例では、所定の時刻にロボットが実行すべき動作を決定するロボットには、意志決定ユニットが組み込まれている。この意志決定ユニットは、本発明の第１の側面に基づく動作選択システム、例えば、図４の動作選択システム１を含む。この場合、動作選択システムは、ロボットの学習処理を管理し、この結果、ロボットの挙動の特定の種類の組織化を実現するモジュールであるとみなすことができる。なお、本発明は、本発明の第１の側面に基づく動作選択システム（又は意志決定ユニット）がロボットに搭載されている構成に限定されるわけではない。このシステム及びユニットは、ロボットから独立し、ロボットと通信してもよい。
【０２１７】
更に、説明を明瞭にするために、以下の説明では、意志決定ユニットは、本発明の第１の側面に基づく動作選択システムによる選択のみに基づいて、ロボットが実行する動作を判断すると仮定し、換言すれば、この具体例では、ロボットの動作を動機づけるドライブは、１つのみである。
【０２１８】
図８に示す実験的なセットアップでは、ロボットと同じ空間内にインテリジェントな玩具Ｔが存在する。玩具Ｔは、ロボットが生成した音に基づいて移動する。具体的には、ロボットが周波数ｆ１の音を出すと、玩具Ｔは、ロボットが移行できる速度より速い速度で空間内をランダムに移動する。この結果、ロボットには、玩具がランダムな位置に現れ、及び消えるように見える。ロボットが周波数ｆ２の音を出すと、玩具は移動を停止する。ロボットは、周波数ｆ３の音を出すと、玩具は、ロボットに飛び込む。ここで、ロボットは、視覚システム（vision system）を用いて玩具を検出でき、ｘ座標及びｙ座標に基づき、ロボットに対する玩具の位置を算出できる。玩具を検出し、その位置を判定するこの視覚ベースのシステムを「玩具センサ（toy sensor）」と呼ぶ。
【０２１９】
上述した実験的なセットアップは、スイス、ローザンヌのサイバーロボティックス社（Cyberbotics Sarl）（www.cyberbotics.com）によって提供されている既知の「ウェボット（Webot）」移動ロボットシミュレーションソフトウェアを用いてシミュレートした。
【０２２０】
各時刻において、ロボット又は（厳密に言うと、その動作選択システム）は、実行すべき動作を判定する。すなわち、ロボットは、左車輪の速度、右車輪の速度及びロボットが生成する音の周波数を設定する。このように、この具体例では、システムの動作変数は、左車輪の速度、右車輪の速度及びロボットが生成する可聴周波数である。
【０２２１】
ロボットが特定のコンテキスト（すなわち、センサ信号の特定の組）で動作を実行した１タイムステップ（すなわち、１０００ミリ秒）後の玩具までの距離を、ロボットが予測するシミュレーションを行った。１０００ミリ秒経過後、ロボットは、玩具センサを用いて、ロボット自身の位置に対する玩具の実際の位置を（ｘ，ｙ）座標に基づいて判定する。そして、ロボットは、判定された座標の値に基づいて、玩具へ実際の距離を算出する。
【０２２２】
ロボットが周波数ｆ１の音を出すと、玩具は、ランダムに動き回る。この場合、ロボットにとって、ロボットと玩具の間の距離を正確に予測する関係を判定することは不可能である。玩具への距離と、ロボットのセンサ値及び車輪速度との間には、相関は全くない。したがって、この状況を探索しても、価値ある学習はできない。換言すれば、ロボットは、周波数ｆ１の音を出す試行に長い時間を費やした場合、効率的な学習を行うことができない。
【０２２３】
ロボットが周波数ｆ３の音を出すと、玩具は、ロボット内に飛び込み、したがって、ロボットと玩具の間の距離はゼロになる。ロボットの動作選択システムが、周波数ｆ３の音の生成と、玩具への距離がゼロになることの間に成立するこの関係を学習することは（センサに由来する雑音があっても）容易である。この関係の複雑性は極めて低い。
【０２２４】
ロボットが周波数ｆ２の音を出すと、玩具は、移動を停止するが、ロボットは、自らが移動しているため、ロボットからは玩具が移動しているように見える。ここで、ロボットが周波数ｆ２の音を出しながら一連の観測を行うと、動作選択システムは、最終的に、玩具への距離がロボットの自己の動きに関連することを学習する。
【０２２５】
動作を選択し、結果を観測するまでの間の間隔は、１０００ミリ秒に設定し、これは、比較的長い周期である。したがって、ロボットに対する玩具の位置は、実質的に変化する可能性がある。このための、ロボットの動作選択システムが、ロボットの車輪のモータ速度及びロボットが生成する可聴周波数と、玩具への距離との間に存在する上述した関係を学習することがより困難になっている。
【０２２６】
特に、この具体例では、ロボットの現在の知覚−運動コンテキストＳＣ（ｔ）において、ロボットが特定の動作Ａ（ｔ）を実行した場合、ロボットの動作選択システムが、時刻ｔにおいて、１０００ミリ秒後（すなわち、ｔ＋１）の玩具への距離を正確に予測するマッピングを学習することが目的である。この場合、システム状態／コンテキストパラメータ及び動作変数の値は、時刻ｔにおいて、ロボットのセンサ（壁センサ及び玩具センサ）によって測定された値の組と、時刻ｔにおけるロボットのアクチュエータの設定である。
【０２２７】
ロボットの動作選択システムが学習する必要があるマッピングにおける唯一の現実的な複雑性は、周波数ｆ２の音の生成に関連するマッピングの部分に存在する。すなわち、周波数ｆ２の音が生成されると、玩具への距離は、知覚コンテキストＳＣ（ｔ）及び実行された動作Ａ（ｔ）の関数として変化し、これは、複雑ではあるが、学習可能な関係である。
【０２２８】
ロボットに効率的な学習を行わせるには、周波数ｆ２の音が生成された状況（学習すべき事項が多い。）の学習に長い時間を費やし、周波数ｆ３の音が生成された状況（学習すべき事項が少ない。）の学習に費やす時間を短くし、周波数ｆ１の音が生成された状況（学習できる事項がない。）には、実質的に学習の時間を費やさないことが望ましい。本発明の第３の側面が提供する技術により、ロボットは、自律的に自らの挙動を組織化し、学習を効率的に行える状況に適切に焦点を合わせることができる。
【０２２９】
図９は、図８のロボットの学習を管理し、挙動を組織化するために用いることができる動作選択システム２１の好ましい実施の形態の主な構成要素を示している。なお、この動作選択システム２１は、図４に図式的に示す動作選択システム１と同様の構造及び機能を有している。したがって、図９では、図４の動作選択システム１と同様の機能を有する要素には、同じ参照符号を用いている。
【０２３０】
ここでも、この動作選択システム２１は、ソフトウェアで実現することができ、図９に示す様々な「モジュール」は、説明の目的で示しているに過ぎない。また、動作選択システム２１において実行される様々な機能は、図９に示す手法とは異なる手法で、モジュールの間で分割してもよい。
【０２３１】
図９に示す動作選択システム２１には、センサ及びアクチュエータから、ロボットの感覚−運動状態を表す情報が入力される。この具体例では、入力される情報は、赤外線センサであるロボットの壁センサからの情報、玩具センサからの情報及びロボットのアクチュエータからの情報（右車輪の速度、左車輪の速度及び可聴周波数の値を示す信号。車輪／音響発生器自身ではなく、車輪／音響発生器を制御するコントローラからこれらの信号を供給してもよい。）である。
【０２３２】
本発明の第３の側面に基づく好ましい実施の形態では、センサ及びアクチュエータからの信号は、０．０〜１．０の範囲に収まるように正規化される。ロボットによって生成される可聴周波数については、ｆ１は、「周波数」変数が０〜０．３３の範囲にある場合に生成され、ｆ２は、「周波数」変数が０．３４〜０．６６の範囲にある場合に生成され、ｆ３は、「周波数」変数が０．６７〜１．０の範囲にある場合に生成される。
【０２３３】
動作選択システム２１は、システム状態／コンテキストパラメータＳＣ（ｔ）の現在の値に基づいて、ロボットが次に実行できる可能な動作のリストを生成する候補動作生成器２５を備える。
【０２３４】
各候補動作について、知識利得評価モジュール３の関連する専用ユニット内の予測モジュール１２は、次のタイムステップ（１０００ミリ秒）における玩具までの距離の予測ｄ（ｔ＋１）を生成する。予測モジュール１２によって生成された各予測について、同じ専用ユニットのメタ予測モジュール１３は、玩具への距離の予測における誤差の推定値Ｅｐ（ｔ＋１）を生成する。この同じ専用ユニットの知識利得評価モジュール１４は、候補動作についての予想された予測誤差と、実際に観測され、この１５の専用ユニットのメモリに保存された実際の予測誤差データとを比較し、この候補動作を実行した場合に生じると予想される知識利得を示す信号を候補動作選択器４に出力する。
【０２３５】
動作選択モジュール４は、予想された知識利得信号を受け取り、次に実行するべき動作を選択し、ロボットのアクチュエータに適切な制御信号を出力する。また、動作選択モジュール４は、どの候補動作が選択されたかを計算器５に指示する。
【０２３６】
計算器５は、実際の予測誤差ＥＲａｃｔ（ｔ＋１）を計算し、このデータを適切な専用ユニットのメモリ１５に保存する。
【０２３７】
実験結果
自己発達装置において、学習を管理する本発明の第３の側面の技術の効率を確認するために多くのシミュレーションを行った。これらのシミュレーションでは、図８の実験的なセットアップを用いて、多くのタイムステップで実験を繰り返した。これらのシミュレーションでは、ロボットの動作選択システムは、先行する如何なる「知識」も有しておらず、特に、車輪の速度の設定と、可聴周波数の設定との間に違いがあることを既知とするプログラミングを行わなかった。すなわち、実際に、これらのパラメータは、ロボットに関する限り、未定義の種類の変数とした。ロボットの動作選択システムは、調整できる全ての変数を動作変数として処理し、値を判定できる全てのパラメータをシステム状態／コンテキストパラメータとして処理するように設計された。
【０２３８】
図１０は、本発明の好ましい実施の形態の動作選択システム２１を用いて、図８のロボットによる玩具Ｔまでの距離の予測の学習を補助した場合に、実際の予測誤差が時間と共に（実行された動作の数が増えるにつれて）どのように変化するかを示すグラフである。このシミュレーションでは、動作選択モジュール４は、０．８５の確率で知識利得を最大にすると予想される候補動作を選択し、０．１５の確率で動作をランダムに選択するように構成した。
【０２３９】
図１０では、それぞれの「葉」の専用ユニットについて、実際の予測誤差の進化を表すために、個別の線を描画した。専用ユニットの分割時に、それぞれの新たな「葉」の専用ユニットは、元の専用ユニットから、現在、この新たな「葉」の専用ユニットに割り当てられたシステム状態／コンテキスト／動作空間のサブ領域に関連するトレーニング実例（及び実際の予測誤差値）を引き継ぐ。したがって、予測誤差のトレースは、図１０の左側では重なり、対応する専用ユニットが分割されるに従って、徐々に互いに分岐している。このようにして図１０には、木構造が出現し、この木構造は、領域識別モジュール２によって成長された決定木構造に対応する。
【０２４０】
このグラフから、シミュレーションの間、専用ユニットの３つのグループが発達していることがわかる。決定木構造の異なる枝は、実際に異なる状況に対応していることが検査によって確認された。すなわち、図１０の最も上の枝は、ロボットがｆ１の音を生成した状況に対応している。中央の枝は、ロボットがｆ２の音を生成した状況に対応している。最も下の枝は、ｆ３の音を生成した状況に対応している。
【０２４１】
図１０に示すように、決定木構造は、速やかに成長し、ｆ３の音が生成された状況を識別する。２５０回のタイムステップの後に、ロボット（正確には動作選択システム２１）は、ｆ３の音が生成された状況から、他の周波数の音が生成された状況を区別できるようになる。ここでは、動作選択システム２１の元の（又は「幹」の）専用ユニットは、「可聴周波数」変数が０．６７〜１．０の範囲の値（すなわち、ｆ３の音）である状況を扱う第１の「枝」の専用ユニットと、可聴周波数変数が０．０〜０．６６の範囲の値（すなわち、ｆ１又はｆ２の音）である状況を扱う第２の「枝」専用ユニットとに分割されている。
【０２４２】
ロボットは、最初にｆ３の音が生成されている状況が、学習の進歩の最も重要な源であることを発見する。このため、ロボットが周波数ｆ３の音を生成する状況を維持して、動作の大部分が選択された。ここで、ロボットは、このような状況に関して学習できる全ての知識、すなわち、この場合、玩具への距離が実際上ゼロとなることを非常に高速に学習した。したがって、予測誤差は、速やかに約ゼロに落ち着き、これらの状況は、学習の進歩の源にはならなくなった。
【０２４３】
シミュレーションの初期の段階では、ロボットは、ｆ３の音が生成される状況（これらが学習を最大に進歩させるため）を好んで探索するが、動作選択モジュール４による動作のランダムな選択のために、ｆ１又はｆ２の音が生成される状況でも動作を行った。幾らかの時間が経過すると、可聴周波数変数が０．０〜０．６６の範囲の値を取る状況（すなわち、ｆ１又はｆ２の音）を処理する「枝」の専用ユニットには、上述した基準Ｃ１を満たすために十分な実例が累積された。約３２０回のタイムステップの後に、この「枝」の専用ユニットは、可聴周波数変数が０．０〜０．３３の値（すなわち、ｆ１の音）である状況を扱う「上の枝」の専用ユニットと、可聴周波数変数が０．３４〜０．６６の値（すなわち、ｆ２の音）である状況を扱う「中央の枝」の専用ユニットとに分割された。
【０２４４】
約４００回のタイムステップの後、ロボット（正確には、動作選択システム２１内の専用ユニットの知識利得評価モジュール）は、ｆ２の音がある状況は、ｆ３の音がある状況又はｆ１の音がある状況に比べて、学習の進歩が大きいことを正確に判定した。したがって、動作選択モジュール４は、ｆ２の音の生成される状況を含む動作を好んで選択するようになった。
【０２４５】
動作選択モジュール４は、時々ランダム動作を選択するので、ロボットは、ｆ１の音の生成を含む動作を時々実行する。なお、ｆ１の音が生成された場合、専用ユニットは、玩具への距離の予測の精度を向上させるために何も学習することができない。したがって、専用ユニットは、ｆ１の音の生成を伴う動作では、知識利得が全く得られないことを速やかに学習する。したがって、図１０に示すように、ｆ１の音が生成される状況に対応する枝の探索は、途中で中止される。
【０２４６】
一方、ｆ２の音が生成された状況について多くのトレーニング実例が累積されると、専用ユニットは、ロボットの動作と、玩具への距離との間に関係性を見出すようになり、この結果、この距離の予測が向上するようになる。すなわち、ロボットは、ｆ２の音が生成された状況で、左右の車輪の速度を変更しながら実験を繰り返し、異なる状況を検索するようになる。本発明の好ましい実施の形態に基づく能動的学習管理アルゴリズムを用いた場合、モータ速度の設定に関するこの探索は、組織化され、速度設定は、学習の進歩が最適化されるように選択されることが見出された。
【０２４７】
上述したシミュレーションでは、ｆ１、ｆ２、ｆ３の音が生成される各状況について、ロボットがそれぞれどれ程の時間を探索に費やすかを検討することは、重要である。これを調査するために、シミュレーションを繰り返した。図１１は、（ロボットがより多くの数の動作を実行した後の）時間の経過と共に、ロボットが異なる種類の動作を実行するために費やした時間の割合を示している。図１１では、個々のトレースは、それぞれｆ１、ｆ２、ｆ３の音が生成された動作を実行するために費やされた時間の割合を表している。
【０２４８】
図１１に示すように、ロボットは、最初は、ｆ３の音が生成される状況に焦点をあてて探索を行っている。ロボットがこれらの状況を学習した後は、ロボットは、ｆ２の音が生成される状況に焦点をあてるようになる。
【０２４９】
これらのシミュレーションの結果を検討すると、本発明の第３の側面の好ましい実施の形態を用いてロボットの学習を管理することによって、ロボットは、自律的に、自らが調査する状況の複雑性をスケーリングし、複雑性が比較的低い状況から開始して、次に、複雑性が高い状況に移行することがわかる。また、本発明により、学習すべきことがない状況の探索に時間が費やされることが回避されることもわかる。このように、本発明の第３の側面によって、ロボットは、効率的学習を行うことができる。更に、また、この技術を用いることによって、ロボットは、外部の介入なしで、自らの挙動を組織化することができる。これは非常に望ましい実績である。
【０２５０】
上述のように、本発明の第３の側面の能動的学習管理技術は、知的適応型好奇心ドライブと呼ぶことができる。
【０２５１】
比較例
図１２〜図１７は、本発明の第３の側面の知的適応型好奇心ドライブを、能動的学習を管理するための他の既知の技術と比較するために実行されたシミュレーションの結果を表すグラフを示している。
【０２５２】
第１の比較例
図１２は、ロボットが感覚−運動状態空間の異なる領域を扱う専用ユニットを使用し、同じ評価基準Ｃ１及びＣ２に基づいて、空間を領域に順次分割するシミュレーションにおいて、時間の経過と共に、予測誤差がどのように変化するかを示している。なお、この第１の比較例では、期待された知識利得の評価を行わず、これに代えて、動作を完全にランダムに選択した。この第１の比較例で用いられたアルゴリズムを「ランダム（ＲＡＮ）」アルゴリズムと呼ぶ。
【０２５３】
図１２は、１５０００回のランダム動作の後に得られるＲＡＮアルゴリズムの典型的な結果の具体例を示している。感覚−運動状態空間は、それぞれｆ１、ｆ２、ｆ３の音が生成される状況に対応する３つの主な領域に分割されている。早い段階では、ｆ３の音が生成される状況が探索され、システムは、これらの状況において玩具への距離をどのように予測するかを学習する。更に、時間の経過と共に、ｆ２の音が生成される状況に関連する予測誤差が、減少している。しかしながら、システムは、ロボットがｆ３の音を生成する動作の実行も継続している。ロボットは、これらの状況から何も学習することがないので、これは、非常に非生産的である。このように、本発明に基づく知的適応型好奇心ドライブに比べて、ＲＡＮアルゴリズムによる学習は、効率的ではない。
【０２５４】
第２の比較例
図１３は、上述したシミュレーションと比べられる他のシミュレーションにおける時間の経過に伴う予測誤差の変化を示している。ここでも、ロボットは、感覚−運動状態空間の異なる領域を扱う専用ユニットを使用し、評価基準Ｃ１及びＣ２に基づいて、空間を複数の領域に順次分割する。なお、この第２の比較例では、「予測誤差が最大になると予想される動作を選択する」従来の手法に基づいて動作を選択した。これの手法は、「最大化（ＭＡＸ）」アルゴリズムと呼ぶことができる。このアルゴリズムは、（新たな状況が学習のための最大の可能性を提供するとの仮定に基づき）新たな状況を探索する。
【０２５５】
図１３は、ＭＡＸアルゴリズムから得られる結果の典型的な具体例を示している。ここでも、感覚−運動状態空間は、それぞれｆ１、ｆ２、ｆ３の音が生成される状況に対応する３つの主な領域に分割され、早い段階では、システムは、ｆ３の音が生成された状況において、玩具までの距離を予測する方法を学習する。しかしながら、ｆ２及びｆ３の音が生成される状況は、詳細に探索されない。これに代えて、システムは、ｆ１の音が生成された状況に探索を集中する。これは、更に、３つの異なる種類の状況にロボットが費やした時間の割合を示す図１４により明瞭に現れている。ロボットは、１０００回のタイムステップを経ただけで、既に、３５％の時間をｆ１の音が生成された状況に費やしている。
【０２５６】
能動的な発達を管理しようとする場合、ＭＡＸアルゴリズムは、何も学習できない状況をロボットに探索させるため、非生産的である。
【０２５７】
第３の比較例
図１２は、第４のシミュレーションにおいて、時間の経過と共に、予測誤差がどのように変化するかを示している。この第３の比較例は、「予測誤差を最小化すると予想される動作を選択する」従来の手法（「最小化（ＭＩＮ）」アルゴリズム）に基づいて動作を選択する点を除いて、第２の比較例と同様である。
【０２５８】
図１５及び図１６は、ＭＩＮアルゴリズムを用いるシミュレーションについてプロットされた図１０及び図１１と同じ種類のグラフである。この場合、ロボットは、ＭＩＮアルゴリズムに基づき、最も容易に学習可能で予測可能な状況であるｆ３の音が生成される状況に留まってしまう。これは、ＭＡＸアルゴリズムほど非効率的ではないが、ロボットは、簡単な状況に関して非常に高速に全てを学習し、より複雑な状況の探索に進まないために、非生産的である。
【０２５９】
本発明の第３の側面の利点
本発明の第３の側面に基づく動作選択技術によって、ロボット（又は他の自己発達装置又はシステム）は、能動的に、動作の焦点を次第に複雑性が高まる問題に変化させることによって、学習状況の複雑性をスケーリングすることができる。これは、システム状態／コンテキスト／動作空間内で複雑性が異なる領域を効率的且つ効果的に発見し、（学習可能性に関して）これらの領域の相対的な複雑性を評価し、ロボット（又は他の自己発達装置又はシステム）によりこの情報を探索し、挙動を自己組織化することによって実現される。
【０２６０】
学習を管理する他の技術では、非常に特殊な環境を除けば、組織化された挙動のこの種の発達を実現できない。特殊な環境とは、例えば、複雑性の増加の摂動が絶え間なく生成されるような環境である。このような環境は、人間の介入によって生じることがあるが、この他の場合、非常に希である。一方、ロボット／環境内に幾らかの潜在的な複雑性がある限り、本発明の第３の側面は、この種類の複雑なダイナミクスなしで、オープンエンド型の学習を効率的に管理できる。
【０２６１】
本発明の第３の側面を用いることによって実現される能動的学習の効率は、比較例に示したアルゴリズムの効率より高い。これは、シミュレーションの異なる処理段階において、ロボットがより興味深い状況、すなわち、この場合、ｆ２の音が生成された状況に関して、どれ程学習を行ったかを算出した更なるシミュレーションの組によって明らかになる。
【０２６２】
このシミュレーションの組では、ロボットは、本発明の好ましい実施の形態の能動的学習管理技術と、ＲＡＮアルゴリズムと、ＭＩＮアルゴリズムと、ＭＡＸアルゴリズムとを用いて、多くのタイムステップのそれぞれにおいて、玩具までの距離を予測した。１５０回のタイムステップ毎に、各シミュレーションを一時的に止め、ロボットの動作履歴を検査データベースに登録し、ｆ２の音が生成された複数の状況において、ロボットが玩具までの距離をどれくらい正しく予測できたかを確認した。各シミュレーションを再開する際、検査データベース内の実例は、（検査結果をバイアスすることを回避するため）メモリに残さなかった。
【０２６３】
なお、検査データベースは、以下の用にして生成した。ロボットは、動作をランダムに選択するように制御した。ｆ２の音が生成された各状況において、ロボットの感覚−運動データを玩具までの距離と共に記録した。
【０２６４】
図１７は、このシミュレーションの結果を示しており、詳しくは、異なるアルゴリズムのそれぞれについて、検査データベースを分析することによって生成された平均予測誤差が、時間と共にどのように変化するかを示している。
【０２６５】
図１７から、最初は、ＲＡＮアルゴリズムによって、予測誤差が最も小さくなることがわかる。換言すれば、早い段階では、ｆ２が生成された状況に関して、ロボットに最も学習させるのは、ランダムアルゴリズムである。しかしながら、約３０００回の動作（タイムステップ）の後に、本発明の第３の側面に基づく能動的学習管理技術は、ｆ２の音が生成された状況において、予測誤差を著しく低減しはじめる。これは、ｆ３の音が生成された状況（ロボットが探索を終えた状況）からｆ２の音が生成された状況にロボットが注意を移行させた事実に対応する。実際に、ロボットは、ｆ２の音が生成された状況の探索に時間の８５％を費やしており、このような状況において、玩具までの距離を予測する手法を急速に学習する。
【０２６６】
約３０００回のタイムステップ（動作）の後に本発明の第３の側面に基づく能動的学習管理技術は、ｆ２の音が生成された状況において、ロボットが最も学習できるアルゴリズムになる。このアルゴリズムを用いた場合の平均予測誤差は、約０．０９０の最小値付近で安定する。ＭＡＸアルゴリズム及びＭＩＮアルゴリズムによって生成される平均予測誤差は、これよりかなり大きいレベル（約０．１１）に残っている。ＲＡＮアルゴリズムの平均予測誤差は、徐々に低下し、最終的に、比較的小さい値で安定する。しかしながら、この最小値は、約０．０９２であり、本発明に基づくアルゴリズムによって実現される平均予測誤差よりは大きい。更に、ＲＡＮアルゴリズムでは、約１１０００回の動作を経なければ、この最小値に到達できない。換言すれば、ＲＡＮアルゴリズム及び本発明に基づくアルゴリズムのいずれでも、ロボットは、周波数ｆ２の音を生成する状況に関して学習を行うことができるが、本発明の第３の側面に基づくアルゴリズムを用いた場合、ＲＡＮアルゴリズムの約２．６倍の速さで学習を行うことができる。
【０２６７】
以上、現在、最良と考えられる実施の形態を用いて、本発明の様々な側面について説明したが、本発明は、好ましい実施の形態の特定の詳細に限定されないことは明らかである。特に、添付の特許請求の範囲内で、好ましい実施の形態を様々に変更又は発展させることができることは当業者にとって明らかである。
【０２６８】
例えば、本発明の好ましい実施の形態では、予測モジュールは、最近傍識別予測アルゴリズムを用いるが、本発明は、このアルゴリズムの使用に限定されない。同様に、本発明の好ましい実施の形態の動作選択モジュール４は、０．１５の確率で動作をランダムに選択するが、本発明は、ランダム動作を選ぶがこの確率値の使用に限定されない。
【０２６９】
また、本発明の好ましい実施の形態において用いられる領域識別モジュールは、領域Ｒのトレーニング実例の数が値ＮＳ＝２５０に達すると、領域Ｒを２つ以上のより小さい領域に分割するが、この数は、例示的な値であって、限定的な値ではない。更に、上述したように、領域内のトレーニング実例の数を数えない他の分割基準を用いてもよい。
【０２７０】
更に、上述したように、図４、図５及び図９に示すシステムのモジュールの間での機能の分担は、単に例示的なものである。説明した機能のモジュール間の分担を変更してもよく、及び／又はより多い又は少ないモジュールを用いて同じ機能を実行してもよく、例えば、１つのモジュールを用いて、システム状態／動作／コンテキスト空間内の領域を定義し、他のモジュールを用いて、システム状態／コンテキストパラメータ及び動作変数の特定の組合せにどの領域を適用するかを特定してもよい。更に、本発明に基づく動作選択システム及びトレーニングシステムは、別個のモジュールから構成する必要はない。例えば、本発明の好ましい実施の形態の様々な機能は、コンピュータプログラムでも実現でき、１個以上のソフトウェアモジュールの機能が重複していてもよい。
【０２７１】
また、図４、図５及び図９に示す異なるモジュールのある機能は、同等な結果を有する他の機能、又は機能の組合せに置換することができることは当業者にとって明らかである。例えば、図４に示すように、動作選択器４は、実予測誤差計算器５に、実行のためにどの動作が実際に選択されたかを示す信号を供給する。そして、実予測誤差計算器５は、実行のために選択された動作に関連する予測を検索する。ここで、所定の候補動作の組について、予測モジュール１２が生成した全ての予測を実予測誤差計算器５に供給し、実際の予測誤差を評価する際、動作選択器から供給された信号を調べることによって、これらの予測のうち、どの予測を用いるかを特定するようにシステム１を構成してもよい。
【０２７２】
更に、上述の説明では、予想される知識利得を算出するようにシステム状態／コンテキスト／動作空間の異なる領域にそれぞれが割り当てられた個別の専用ユニットを示し、元の専用ユニットが分割され、又は新たな専用ユニットが「作成」されるように記述したが、これは限定的でない。特に、ここでは、システム状態／コンテキスト／動作空間の各領域について、知識利得を適切な手法で評価することが重要なのであり、この評価は、拡張可能な別個の専用ユニットの組を用いて行ってもよく、又は予測機能及びメタ予測機能がロードされ、システム状態／コンテキスト／動作空間の関連する領域に適用可能なトレーニング実例データを保存した単一の機器（又はソフトウェアモジュール）を用いて行ってもよく、他の手法によって行ってもよい。
【０２７３】
更に、本発明を実現するシステムは、トレーニング実例データを照合及び保存し、システム状態／コンテキスト／動作空間で適切な領域を処理する専用ユニットに、必要に応じて、トレーニング実例データを供給する特定のモジュールを含んでいてもよい。
【０２７４】
更に、上述したように、本発明が提供する知的適応型好奇心ドライブは、単に、自己発達装置によって動作の選択を動機づける複数のドライブの１つであってもよい。このような場合には、図９の動作選択システム２１は、それ自体では、ロボットが実行する動作について、最終的な選択を行わない。より詳しくは、図９の動作選択モジュール４は、省略でき、様々な知識利得評価モジュール１４によって生成された知識利得値は、中央コントローラに関連する候補動作の望ましさの程度を示す報酬値として供給してもよい。中央コントローラは、ロボットの挙動を動機づける他のドライブが生成した他の情報と共に、これらの報酬値を処理し、ロボットが次に実行する動作を決定する。中央コントローラは、どの候補動作が選択されたかを示す信号を動作選択システム２１に供給し、これにより、実際の予測誤差を計算でき、適切な専用ユニットＥＸＰのメモリ１５に保存できる。
【０２７５】
最後に、ロボット装置、人工知能システム及び専用のシステム等は、本発明の第３の側面の使用に限定されない。機器／システムが、挙動を調査しているセットアップＳの一部を構成しない場合であっても、これらの機器及びシステムに本発明の第１の側面を適用して、実行すべき動作を選択してもよい。また、機器／システムが、挙動を学習しているセットアップＳの一部を構成しない場合であっても、これらの機器及びシステムに本発明の第２の側面を適用して予測マシンをトレーニングしてもよい。
【図面の簡単な説明】
【０２７６】
【図１】簡単なセットアップ又はシステムＳに適用可能な多次元の「システム状態／コンテキスト／動作」空間のグラフ図である。
【図２】図１のシステム状態／コンテキスト／動作空間内の異なる領域を示すグラフ図である。
【図３】図１のシステム状態／コンテキスト／動作空間内の異なるベクトルを示すグラフ図である。
【図４】本発明の第１の側面に基づく動作選択システムの好ましい実施の形態の主な要素を図式的に示すブロック図である。
【図５】本発明の第２の側面に基づく予測マシントレーニングシステムの好ましい実施の形態の主な要素を図式的に示すブロック図である。
【図６】本発明の第１の（第２の）側面を生物学の分野に適用した完全に自動化されたシステムの１つの具体例の主な要素を示すブロック図である。
【図７】本発明の第１の（第２の）の側面を金融の分野に適用した完全に自動化されたシステムの１つの具体例の主な要素を示すブロック図である。
【図８】本発明の第３の側面に基づく実施の形態を検査するために用いられる簡単なロボットを含む実験的なセットアップを示す図である。
【図９】自己発達装置又はシステムのための本発明の第３の側面に基づくトレーニングシステムの好ましい実施の形態の主な要素を図式的に示すブロック図である。
【図１０】図８の実験的なセットアップの簡単なロボットによって、本発明に基づく動作選択方法の好ましい実施の形態に基づいて動作が選択された場合、予測誤差がどう変化するかを示すグラフ図である。
【図１１】本発明に基づく動作選択方法の好ましい実施の形態に基づいて動作が選択された場合、異なる状況で図８の簡単なロボットが費やした時間の割合を示すグラフ図である。
【図１２】第１の比較例に基づき、図８の実験的なセットアップにける簡単なロボットが、ランダムに動作を選択した場合、予測誤差がどう変化するかを示すグラフ図である。
【図１３】第２の比較例に基づき、図８の実験的なセットアップにける簡単なロボットが、「最大化」アルゴリズムに基づいて動作を選択した場合、予測誤差がどう変化するかを示すグラフ図である。
【図１４】「最大化」アルゴリズムに基づいて動作が選択された場合、異なる状況で図８の簡単なロボットが費やした時間の割合を示すグラフ図である。
【図１５】第３の比較例に基づき、図８の実験的なセットアップにける簡単なロボットが、「最小化」アルゴリズムに基づいて動作を選択した場合、予測誤差がどう変化するかを示すグラフ図である。
【図１６】「最小化」アルゴリズムに基づいて動作が選択された場合、異なる状況で図８の簡単なロボットが費やした時間の割合を示すグラフ図である。
【図１７】本発明の好ましい実施の形態に基づく動作選択アルゴリズムを用いて、及び比較例に基づくアルゴリズムを用いて、図８の簡単なロボットの動作をそれぞれ選択した場合の学習の進歩を比較するグラフ図である。
【図１】
2008508581.tif 000009
【図２】
2008508581.tif 000010
【図３】
2008508581.tif 000011
【図４】
2008508581.tif 000012
【図５】
2008508581.tif 000013
【図６】
2008508581.tif 000014
【図７】
2008508581.tif 000015
【図８】
2008508581.tif 000016
【図９】
2008508581.tif 000017
【図１０】
2008508581.tif 000018
【図１１】
2008508581.tif 000019
【図１２】
2008508581.tif 000020
【図１３】
2008508581.tif 000021
【図１４】
2008508581.tif 000022
【図１５】
2008508581.tif 000023
【図１６】
2008508581.tif 000024
【図１７】
2008508581.tif 000025
【手続補正書】
【提出日】平成19年3月29日(2007.3.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１
【補正方法】変更
【補正の内容】
【請求項１】
実行することができ、セットアップＳに影響する動作を定義する１つ以上の動作変数の値を指定する信号を生成する自動化された動作選択システム（１）において、
上記セットアップＳの状態及び／又はコンテキストを記述する０個以上のシステム状態／コンテキストパラメータ（ＳＣ（ｔ））の組の、時間ｔにおける値を示す信号が供給される入力手段と、
システム状態／コンテキストパラメータ及び動作変数の組のそれぞれ異なるパラメータ又は変数によって各次元が定義される多次元のシステム状態／コンテキスト／動作空間内の領域の組を定義する領域画定器（２）と、
上記動作変数の可能な値の組をそれぞれ含む候補動作の組を判定する判定手段と、
所定の候補動作と、時刻ｔにおける任意のシステム状態／コンテキストパラメータの値との組合せを含むシステム状態／コンテキスト／動作空間内の領域を特定する領域識別器（２）と、
所定の候補動作と、時刻ｔにおける任意の幾つかのシステム状態／コンテキストパラメータとの組合せを含むシステム状態／コンテキスト／動作空間の領域に依存する予測関数を適用し、時刻ｔの後の所定の間隔で、１つ以上の予測された変数（ＶＡＲ）の値を予測する予測手段（１２）と、
上記選択された候補動作について、上記予測手段（１２）が、該選択された候補動作について生成した予測の実際の誤差を示す誤差情報を算出する計算手段と、
１つ以上の前の機会に上記予測手段（１２）が生成した予測の実際の誤差を示す誤差情報を保存するメモリ手段と、
所定の候補動作と、時刻ｔにおける任意のシステム状態／コンテキストパラメータの値との組合せを含むシステム状態／コンテキスト／動作空間の領域Ｒに応じて、該時刻ｔより前に、上記セットアップＳがシステム状態／コンテキスト／動作空間の同じ領域に位置するシステム状態／コンテキストパラメータ及び動作変数を有していた１つ以上の機会に存在した実際の予測誤差の誤差情報と比較することによって、該所定の候補動作が実行された場合、上記予測手段（１２）の性能における予想される向上を評価する評価手段（１４）と、
上記評価手段（１４）によって、上記所定の候補動作について評価された上記予測手段（１２）の性能における上記予想される向上に基づき、実行のために所定の候補動作を選択する望ましさを示す信号を生成する生成手段とを備える自動化された動作選択システム。
【国際調査報告】
2008508581.tif 000026
2008508581.tif 000027