(57)【要約】  本発明は、決定モデルの設計および使用のためのシステムに関する。より詳しくは、本発明は、ディジタルモデルまたは物理センサにより表された環境から得られる外部の変数と、ディジタルパラメータにより表されたエージェントの内部の変数とに応じた仮想または物理エージェントによる意思決定のための自動的な方法に関係し、意思決定手段が、仮想または物理エージェントのアクションを制御する。この意思決定手段は、内部または外部の変数の一部に応じてエージェントのアクションのパラメータを判定する。本発明では、アクションのパラメータを判定する動作は、各々が外部および内部の変数の一部の関数であるようないくつかの決定サブプロセスにより実行される。さらに、この動作は、全般的な決定問題の限定された部分を処理し、決定サブプロセスにより判定されたパラメータは、エージェントを制御するアクションパラメータのセットを構築するべく処理される。
2007520774.tif 000002
【特許請求の範囲】
【請求項１】
数値モデルまたは物理センサによって表された環境から得られる外部の変数と、数値パラメータによって表されたエージェントの内部の変数とに応じた仮想または物理エージェントによる意思決定のための自動的な方法であって、意思決定手段が、前記エージェントのアクションを制御しており、
前記意思決定手段は、前記内部の変数または前記外部の変数の少なくともいくつかに応じて前記仮想または物理エージェントの少なくとも１つのアクションのパラメータを判定し、
前記アクションのパラメータを判定する動作は、各々が前記外部の変数および前記内部の変数の少なくともいくつかの関数であるようないくつかの決定サブプロセスによって実行され、かつ、全般的な決定問題の限定された部分を処理し、
前記決定サブプロセスの各々によって判定された前記パラメータは、前記仮想または物理エージェントを制御するアクションパラメータのセットを構築するべく、処理されることを特徴とする自動的な方法。
【請求項２】
いくつかの前記内部の変数は、知覚を表す数値であることを特徴とする請求項１記載の自動的な方法。
【請求項３】
いくつかの前記内部の変数は、モチベーションを表す数値であることを特徴とする請求項１記載の自動的な方法。
【請求項４】
いくつかの前記外部の変数は、機会を表す数値であることを特徴とする請求項１記載の自動的な方法。
【請求項５】
前記パラメータ、モチベーション、および機会の計算は、処理ブロックのツリーによって実行され、それぞれの処理ブロックは、前記内部の変数と前記外部の変数と１つまたは複数の上流の処理ブロックの出力変数のいくつかを有する入力変数を受領する関数に対応していることを特徴とする請求項１記載の自動的な方法。
【請求項６】
前記処理ブロックは、論理演算子、エキスパートシステム、および数学演算子を有することを特徴とする請求項５記載の自動的な方法。
【請求項７】
前記方法が、さらに、中断の前に処理された前記決定サブプロセスを使用して判定された前記パラメータによって前記エージェントのアクションを制御する段階から構成される前記パラメータの判定動作を中断する手段を含むことを特徴とする請求項１記載の自動的な方法。
【請求項８】
前記の中断する手段の起動は、使用される各々の処理ブロックのコストによって減分される処理カウンタの状態に応じて制御されることを特徴とする請求項７記載の自動的な方法。
【請求項９】
１つの処理ブロックの前記コストは、前記処理ブロックの処理を実行するのに必要なマシン時間を表す数値パラメータによって判定されることを特徴とする請求項８記載の自動的な方法。
【請求項１０】
前記マシン時間を表す前記数値パラメータは、その他の処理ブロックの少なくともいくつかのコストとの関連において相対的に判定されることを特徴とする請求項９記載の自動的な方法。
【請求項１１】
前記の中断する手段は、マスタシステムの関数によって制御されることを特徴とする請求項７記載の自動的な方法。
【請求項１２】
前記方法が、さらに、アクションに対するパラメータの各々の判定の後に前記マスタシステムに対して問い合せを実行し、前記問い合せに対する前記マスタシステムの応答に応じて、前記の中断する手段を起動する段階を有することを特徴とする請求項７記載の自動的な方法。
【請求項１３】
前記方法が、さらに、起動の降順に前記決定サブプロセスを配列する手段を含むことを特徴とする請求項７記載の自動的な方法。
【請求項１４】
前記方法が、さらに、前記中断の時点における計算ツリー、アクチュエータ、および決定サブプロセスの状態を記録する手段と、記録された情報を使用して前記決定サブプロセスを継続する手段とを含むことを特徴とする請求項７記載の自動的な方法。
【請求項１５】
いくつかのエージェントが共通的な決定モデルから制御されており、前記決定モデルは、それぞれのエージェントに固有の情報を記録する手段を有することを特徴とする請求項１記載の自動的な方法。
【請求項１６】
前記方法が、前記決定モデルの処理の際に動的なメモリ割り当ての段階を有していないことを特徴とする請求項１記載の自動的な方法。
【請求項１７】
前記方法が、さらに、前記決定サブプロセス間の論理的従属関係を処理する手段を含むことを特徴とする請求項１記載の自動的な方法。
【請求項１８】
論理的従属関係を処理する前記手段は、従属サブプロセスの最高の起動に応じてマスタサブプロセスまたは前記決定サブプロセスの起動を変更する段階から構成されていることを特徴とする請求項１７記載の自動的な方法。
【請求項１９】
前記方法が、前記環境の異なる知覚オブジェクトから導出される多値の外部の変数の処理を実行することを特徴とする請求項１記載の自動的な方法。
【請求項２０】
１つの処理ブロックの出力値は、別の決定サブプロセスによって使用される場合には、処理サイクルにおいて記憶されることを特徴とする請求項５記載の自動的な方法。
【請求項２１】
前記出力値は、いくつかの処理ブロックに共通のメモリ内に記録されることを特徴とする請求項２０記載の自動的な方法。
【請求項２２】
前記方法が、さらに、前記共通のメモリが飽和した場合に、１つの処理ブロックの１つまたは複数の出力を再計算する手段を含むことを特徴とする請求項２１記載の自動的な方法。
【請求項２３】
前記方法が、さらに、動作の詳細なレベルを遂行する手段を含むことを特徴とする請求項１記載の自動的な方法。
【請求項２４】
前記方法が、さらに、学習信号の特性とは無関係に収束適合メカニズムを含むことを特徴とする請求項１記載の自動的な方法。
【請求項２５】
学習が、ＦＩＳＫ分布に基づいた確率論的プロセスによって実行されることを特徴とする請求項２４記載の自動的な方法。
【請求項２６】
前記方法が、さらに、知覚または計算ツリーの結果に対応する情報から構成されるメモリをグループ化および記録する手段を含むことを特徴とする請求項１記載の自動的な方法。
【請求項２７】
前記方法が、さらに、階層の形態でメモリをグループ化する段階を有することを特徴とする請求項２６記載の自動的な方法。
【請求項２８】
前記方法が、さらに、アクティブなメモリを選択する段階から構成される認識段階を有することを特徴とする請求項２６記載の自動的な方法。
【請求項２９】
前記方法が、さらに、完全な認識が存在していない場合に新しいメモリを生成する動作を有する請求項２８記載の自動的な方法。
【請求項３０】
前記方法が、さらに、記憶されている情報を算出された情報の状態によって置換することにより、前記アクティブなメモリを更新する動作を有することを特徴とする請求項２８記載の自動的な方法。
【請求項３１】
前記方法が、さらに、更新済みの前記メモリの情報の信頼性を算出する動作を有することを特徴とする請求項３０記載の自動的な方法。
【請求項３２】
前記方法が、さらに、前記階層の前記メモリとアクチュエータとの間の接続の手段を含むことを特徴とする請求項２７記載の自動的な方法。
【請求項３３】
前記接続は、全てのメモリに共通している一般的な計算ツリーに基づいて、前記メモリの情報を使用して実行されることを特徴とする請求項３２記載の自動的な方法。
【請求項３４】
前記方法が、さらに、前記メモリ間の影響の生成のために前記メモリ間をリンクする手段を含むことを特徴とする請求項２６記載の自動的な方法。
【請求項３５】
前記方法が、さらに、リンクによって前記メモリ間の影響を伝達する段階を有することを特徴とする請求項３４記載の自動的な方法。
【請求項３６】
前記方法が、さらに、変化を経験した前記影響に限定された影響の更新の最適化を有することを特徴とする請求項３５記載の自動的な方法。
【請求項３７】
前記方法が、さらに、変更済みの情報を決定モデルの残りの部分に伝達する段階を有することを特徴とする請求項３５記載の自動的な方法。
【請求項３８】
前記方法が、さらに、仮想オブジェクトの生成により、変更済みの情報を伝達する手段を含むことを特徴とする請求項３７記載の自動的な方法。
【請求項３９】
前記方法が、さらに、１つの処理ブロックの結果をオーバーローディングすることにより、変更済みの情報を伝達する手段を含むことを特徴とする請求項３７記載の自動的な方法。
【請求項４０】
前記方法が、さらに、最も有用性の乏しいメモリを削除する段階から構成される使用メモリ数の自動管理のためのメカニズムを含むことを特徴とする請求項２６記載の自動的な方法。
【請求項４１】
前記使用メモリ数の自動管理のためのメカニズムは、設計段階においてカスタマイズすることが可能であることを特徴とする請求項４０記載の自動的な方法。
【請求項４２】
前記方法が、さらに、最も有用性の乏しいリンクを削除する段階から構成される使用リンク数の自動管理のためのメカニズムを含むことを特徴とする請求項３５記載の自動的な方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、人工知能の分野に関するものであり、より詳しくは、決定モデルの分野に関するものである。
【０００２】
本発明は、さらに詳しくは、決定モデルの設計および使用のためのシステムに関するものである。ここで、「決定モデル」とは、意思決定を行う能力を有する数学的モデルである。本発明によるシステムは、ビデオゲームの分野のアプリケーションを具備しているが、当然のことながら、この例に限定されるものではない。
【背景技術】
【０００３】
従来技術においては、既に、仏国特許出願公開第２８１１４４９号公報（ＦＲ２８１１４４９）（マセマティーク・アプリークィー（Mathematiques Appliquees S.A. ）社）により、仮想エージェントまたは物理エージェント（以下、仮想または物理エージェントと略記する）による意思決定のための自動システムが公知になっている。数値モデルによって表された環境から得られる外部の変数と、数値パラメータによって表されたエージェントの内部の変数とに応じた仮想または物理エージェントによる意思決定のための上記のような自動システムは、前述の変数の１つまたは複数のバリエーションを使用して、エージェントにより実行される対象のアクションを選択する手段を有している。仮想または物理エージェントを表す数値パラメータは、エージェントのモチベーションを表す数値データを有している。仮想または物理エージェントのアクションの選択も、エージェントのモチベーションを表す前述の数値データの値の関数である。上記のようなＰＣＴ特許出願において提示されているシステムは、アクションの２値選択肢の問題にしか対処していないという欠点を有している。例えば、上記のシステムは、アクションの実行に使用されるパラメータを選択する能力を有していない。本発明と比較した場合に上記のマセマティーク・アプリークィー社の解決策のさらなる欠点は、利用可能な演算リソースが最適化されないという点にある。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、使用されるソフトウェアおよびハードウェアリソースの最適な管理のための自動システムを提案することによって、従来技術の欠点を改善することを目的とするものである。さらには、本発明によるシステムによれば、それぞれのアクションごとに、パラメータの理想的なセットを判定することが可能である。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明は、その最も概略的な意味において、数値モデルまたは物理センサによって表された環境から得られる外部の変数と、数値パラメータによって表されたエージェントの内部の変数とに応じた仮想または物理エージェントによる意思決定のための自動的な方法に関係し、意思決定手段が、上記の仮想または物理エージェントのアクションを制御しており、この意思決定手段は、内部または外部の変数の少なくともいくつかに応じて上記の仮想または物理エージェントの少なくとも１つのアクションのパラメータを判定し、このアクションのパラメータを判定する動作は、各々が外部および内部の変数の少なくともいくつかの関数であるようないくつかの決定サブプロセスによって実行され、かつ、全般的な決定問題の限られた部分を処理し、これらの決定サブプロセスの各々によって判定されたパラメータが、上記仮想または物理エージェントを制御するアクションパラメータのセットを構築するべく、処理されることを特徴としている。
【０００６】
好ましくは、いくつかの内部の変数は、知覚を表す数値である。
【０００７】
特定の実施例によれば、いくつかの内部の変数は、モチベーションを表す数値である。
【０００８】
変形例によれば、いくつかの外部の変数は、機会を表す数値である。
【０００９】
好ましくは、パラメータ、モチベーション、および機会の計算は、処理ブロックのツリーによって実行され、それぞれの処理ブロックは、内部の変数と外部の変数と１つまたは複数の上流の処理ブロックの出力変数のいくつかを有する入力変数を受領する関数に対応している。
【００１０】
好ましくは、これらの処理ブロックは、論理演算子、エキスパートシステム、および数学演算子を有している。
【００１１】
好ましくは、本発明の方法は、中断の前に処理された決定サブプロセスを使用して判定されたパラメータによってエージェントのアクションを制御する段階から構成される上記パラメータの判定動作を中断する手段を有している。
【００１２】
好ましくは、上記の中断する手段の起動は、使用される各々の処理ブロックのコストによって減分される処理カウンタの状態に応じて制御される。
【００１３】
好ましくは、１つの処理ブロックのコストは、当該処理ブロックの処理を実行するのに必要なマシン時間を表す数値パラメータによって判定される。
【００１４】
好ましくは、このマシン時間を表す数値パラメータは、その他の処理ブロックの少なくともいくつかのコストとの関連において相対的に判定される。
【００１５】
特定の実施例によれば、上記の中断する手段は、マスタシステムの関数によって制御される。
【００１６】
好ましくは、本発明の方法は、アクションに対するパラメータのセットのそれぞれの判定の後にマスタシステムに対して問い合せを実行し、この問い合せに対するマスタシステムの応答に応じて、上記の中断する手段を起動する段階を有している。
【００１７】
好ましくは、本発明の方法は、起動の降順に決定サブプロセスを配列する手段を含む。
【００１８】
好ましくは、本発明の方法は、中断の時点における計算ツリー、アクチュエータ、および決定サブプロセスの状態を記録する手段と、記録された情報を使用して決定サブプロセスを継続する手段とを含む。
【００１９】
変形例によれば、いくつかのエージェントが共通的な決定モデルから制御されており、この決定モデルは、それぞれのエージェントに固有の情報を記録する手段を有している。
【００２０】
好ましくは、本発明の方法は、決定モデルの処理の際に動的なメモリ割り当ての段階を有していない。
【００２１】
好ましくは、本発明の方法は、複数の決定サブプロセス間の論理的従属関係を処理する手段を含む。
【００２２】
好ましくは、この論理的従属関係を処理する手段は、従属サブプロセスの最高の起動に応じてマスタサブプロセスまたは決定サブプロセスの起動を変更する段階から構成されている。
【００２３】
好ましくは、本発明の方法は、環境の異なる知覚オブジェクトから導出される多値の外部の変数の処理を実行する。
【００２４】
特定の実施例によれば、１つの処理ブロックの出力値は、別の決定サブプロセスにおいて使用される場合には、処理サイクルにおいて記憶される。
【００２５】
好ましくは、この出力値は、いくつかの処理ブロックに共通のメモリ内に記録される。
【００２６】
好ましくは、本発明の方法は、共通のメモリが飽和した場合に、１つの処理ブロックの１つまたは複数の出力を再計算する手段を含む。
【００２７】
好ましくは、本発明の方法は、動作の詳細レベルを遂行する手段を有している。
【００２８】
好ましくは、本発明の方法は、学習信号の特性とは無関係に収束適合メカニズムを含む。
【００２９】
特定の実施例によれば、学習は、ＦＩＳＫ分布に基づいた確率論的プロセスによって実行される。
【００３０】
好ましくは、本発明の方法は、知覚または計算ツリーの結果に対応する情報から構成されるメモリをグループ化および記録する手段を含む。
【００３１】
好ましくは、本発明の方法は、階層の形態でメモリをグループ化する段階を有している。
【００３２】
好ましくは、本発明の方法は、アクティブなメモリを選択する段階から構成される認識段階を有している。
【００３３】
好ましい変形例によれば、本発明の方法は、完全な認識が存在していない場合に新しいメモリを生成する動作を有している。
【００３４】
好ましくは、本発明の方法は、記憶されている情報を算出された情報の状態によって置換することにより、アクティブなメモリを更新する動作を有している。
【００３５】
好ましくは、本発明の方法は、更新済みのメモリの情報の信頼性を算出する動作を有している。
【００３６】
特定の実施例によれば、本発明の方法は、階層のメモリとアクチュエータとの間の接続の手段を含む。
【００３７】
好ましくは、上記の接続は、全てのメモリに共通している一般的な計算ツリーに基づいて、メモリの情報を使用して実行される。
【００３８】
変形例によれば、本発明の方法は、複数のメモリ間の影響の生成のために上記メモリ間をリンクする手段を含む。
【００３９】
変形例によれば、本発明の方法は、リンクによって複数のメモリ間の影響を伝達する段階を有している。
【００４０】
特定の実施例によれば、本発明の方法は、変化を経験した影響に限定された影響の更新の最適化を有している。
【００４１】
特定の実施例によれば、本発明の方法は、変更済みの情報を決定モデルの残りの部分に伝達する段階を有している。
【００４２】
好ましくは、本発明の方法は、仮想オブジェクトの生成により、変更済みの情報を伝達する手段を含む。
【００４３】
好ましくは、本発明の方法は、１つの処理ブロックの結果をオーバーローディングすることにより、変更済みの情報を伝達する手段を含む。
【００４４】
好ましくは、本発明の方法は、最も有用性の乏しいメモリを削除する段階から構成される使用メモリ数の自動管理のためのメカニズムを含む。
【００４５】
好ましい変形例によれば、この使用メモリ数の自動管理のためのメカニズムは、設計段階においてカスタマイズすることが可能である。
【００４６】
好ましくは、本発明の方法は、最も有用性の乏しいリンクを削除する段階から構成される使用リンク数の自動管理のためのメカニズムを含む。
【００４７】
純粋に説明を目的として提示される本発明の一実施例に関する以下の記述を、添付の図面との関連で参照することによって、本発明について十分に理解することができるであろう。
【発明を実施するための最良の形態】
【００４８】
本発明によるシステムのアーキテクチャは、構造的および機能的な数学表現の概念に基づいている。本発明のモデルは、その構造と所定の数の機能的シンボルによって表される。
【００４９】
本発明の一実施例に関する説明が理解できるようにするために、まず、機能的シンボルのいくつかの定義を提示する。
【００５０】
以下においては、次の名称を使用している。
【００５１】
・「インタレストセンタ（Interest centre ）」：決定問題の単一側面のみを取り扱うサブプロセス（すなわち、決定サブプロセス）である。
【００５２】
・「オーダー（Order ）」：インタレストセンタから導出される結果であり、決定サブプロセスに対するそのインタレストを表す値を有している（オーダーを実行する方法と、おそらくは、オーダーのターゲットオブジェクトに対する参照を表す０〜ｎ個のパラメータ）。
【００５３】
本明細書の残りの部分においては、「アクション」および「アクチュエータ」は、決定モデルのソリューションを表しており、最適なオーダーを判定する処理動作を実行する。
【００５４】
「知覚」または「センサ」により、インタレストセンサの処理動作に不可欠なマスタシステムから得られる情報を取得することが可能である。
【００５５】
「処理ブロック」または「特定の処理モジュール」は、数学関数を実行するブロックを意味している。
【００５６】
各々のインタレストセンタは、「モチベーション（motivation）」の概念を自分自身にリンクさせている。これは、対応するインタレストセンタを満足させるような決定モデルのインタレストを計測する。
【００５７】
インタレストセンタがリンクされている各々のアクチュエータごとに、対応するインタレストセンタの（環境に属する）外部要素のインタレストの尺度として「機会（opportunity ）」が定義されている。
【００５８】
インタレストセンタがリンクされている各々のアクチュエータごとに、対応するインタレストセンタのアクチュエータの実行に使用される構成を表す有限数のパラメータが定義されている。このパラメータは、「強度」と表現することも可能である。
【００５９】
オーダーのインタレストは、インタレストセンタのモチベーションと機会との積である。したがって、このようなオーダーのインタレストは、各々のペア（インタレストセンタ、アクチュエータ）ごとに異なったものになる。
【００６０】
全ての値（モチベーション、機会、パラメータ等）は、計算ツリーによって算出される。これらの計算ツリーは、その根が算出対象の値を指定し、葉がその計算に使用される値（知覚）を指定しているツリータイプの図である。
【００６１】
これらの計算ツリーは、得られた情報（知覚）に対して、処理ブロックによって数学関数を実行することが可能である。この結果、このツリー構造により、実行対象の計算のセットが判定される。設計のグラフィカルな特性を通じて、いくつかの計算ツリー内において処理ブロックを再使用することにより、これらの計算を分解することができる。この結果、（完全に分解された）計算の最小構造を維持することが可能である。これが図１に示されている。
【００６２】
この例においては、知覚は、オブジェクトのリストによって表現することが可能であり、知覚の有限なセットによって各々のオブジェクトを表すことができる。同一の知覚によって表されたオブジェクトは、同一のオブジェクトクラスに属している。図２に示されているように、オブジェクトクラスを表す知覚のセットは「知覚グループ」を形成する。
【００６３】
リソースの節約という明白な理由により、決定モデルは、オブジェクトの組み合せを直接的に処理することができない。これは、ｎ個のオブジェクトが知覚された場合に、ｎ2個の組み合せを処理しなければならないためである。ただし、組み合せの２つのオブジェクトの中の１つをインタレストセンタと関連付けることにより、これらの組み合せのいくつかを処理することが可能であり、これが、このオブジェクトとの可能な組み合せを評価する責任を負うことになる。
【００６４】
以下のような場合に、２つのインタレストセンタの間に論理的な従属関係が存在している（ＡがＢに従属している）と表現する。
【００６５】
・Ｂが、アクチュエータＡＣＴに接続されている。
・Ａが使用する計算ツリーによって実行される処理をＡＣＴが変更する。
【００６６】
循環的な論理的従属関係は、システムによって自動的に切断され、従属関係は、次のサイクルにおいてのみ考慮されることになる。この切断は、決定モデルを読み込む際に１回だけ実行される。
【００６７】
アクチュエータのセットとインタレストセンタのセットは、その他のインタレストセンタおよびアクチュエータから隔離されているか、または、それらの唯一のリンクが論理的な従属関係である場合に、「レイヤ」を形成する。
【００６８】
図３は、レイヤと論理的従属関係の概念を示している。
【００６９】
レイヤＡの処理が、アクチュエータＡＣＴを通じて別のレイヤＢによって変更される場合に（論理的な従属関係）、Ｂは、Ａのマスタであると表現される。Ｂが、オーダーをＡに対して送付すると考えられる。リソースの節約という理由により、アクチュエータがマスタシステムの関数を呼び出すようにすることが可能であり、この結果、この動作が、レイヤＡの変更を置換することになる。この場合に、Ａは、Ｂよりも詳細であると表現される。このようにして、動作の詳細の２つのレベルが生成される。この結果、アクチュエータ内に配置されている適合されたメカニズムにより、モデルを使用する際に、動作の詳細の所望のレベルを指定することが可能である。
【００７０】
決定を得るための決定モデルの使用を「反射サイクル」と呼ぶ。反射サイクルにおいて決定モデルに供給される情報は、一定である。
【００７１】
「起動（Activation）」は、対応するインタレストセンタの処理の決定モデルに対する重要性を表している。この起動は、時間（反射サイクル）についてインタレストセンタのモチベーションを積算することによって判定される。さらに、この起動は、インタレストセンタを処理する際にゼロにリセットされる。この結果、全てのインタレストセンタが、そのモチベーションの履歴に応じて実行される。
【００７２】
特定のインタレストセンタは、オートマトンであり、これらのインタレストセンタは、モチベーションを処理しない（起動が存在しない）。これらのインタレストセンタは、従属インタレストセンタの最強の起動を継承する。このような継承物に対して、「イプシロン（ε）」（ゼロに非常に近い正の数値）が加算される。このメカニズムは、従属インタレストセンタよりも前に自動的な従属関係（マスタオートマトン・インタレストセンタ）が処理されることを保証する。
【００７３】
モチベーションは、マスタシステムに属する決定モデルを使用して検討対象のエンティティの内部状態と関係しているため、知覚グループに対して接続されない。したがって、モチベーションと、そして、起動を迅速に算出することが可能である。
【００７４】
決定モデルは、その起動に応じてインタレストセンタをソートする段階を実行する。次いで、この順序（最強の起動から最弱のものへ）により、これらのインタレストセンタが処理される。このシステムによれば、全てのインタレストセンタの処理が完了する前に決定サブプロセスが中断された場合にも、一貫性のある決定を得ることができる。すなわち、システム内において実行される処理動作は、ある程度の一貫性を維持しつつ、中断可能な特性を示すことになる。
【００７５】
本発明に従ってシステム内において実行される処理動作は、インタレストセンタによって主に実行される。インタレストセンタの主な目的は、それらが接続されているアクチュエータに伝達されるオーダーを算出することにある。これを実行するべく、上記のインタレストセンタは、決定モデルの設計段階において定義される計算ツリーを使用する。
【００７６】
その他の処理動作は、アクチュエータの内部において実行される。これらのアクチュエータは、受領したオーダーの管理に関係している。
【００７７】
各々のアクチュエータは、所望の結果の一部を明確な形にする。上記のアクチュエータは、互いに独立しているため、全ての決定基準を満足する結果を判定するのにローカルなメカニズムで十分である。したがって、複数のアクチュエータ間における対話の段階は不要であり、当然のことながら、これは、実行される計算の最適化に結びつく。
【００７８】
複数のオーダー間の影響のためのローカルなメカニズムにより、アクチュエータは、グローバルなソリューションを判定することが可能である。オーダーＢに対するオーダーＡの影響を計測するべく、アクチュエータは、Ｂに対するＡの相補性を算出する。この相補性は、０（互換性を有していないオーダー）と１（完全に相補的なオーダー）の間である。これによって、Ｂが受領するＡのインタレストが重み付けされる。相補性は、マスタシステム内において定義されている関数を呼び出すことによって算出される。
【００７９】
上記の影響の後に、最高のインタレストを具備するオーダーが実行されることになる。その前に、そのパラメータの最適値を算出する必要がある。それぞれのパラメータは、次の３つの値によって表される。
【００８０】
・パラメータの初期値ｐ
・パラメータの値が理想的であると見なされるマージンを表す値ｍ
・パラメータの値は適格であるが、インタレストが乏しい安全性マージンを表す値ｓ
【００８１】
図４は、（ｐ、ｍ、ｓ）によって表される可能な値のセットを示している。
【００８２】
各々のパラメータの最適値は、（ｐ−ｍ−ｓ）と（ｐ＋ｍ＋ｓ）の間である。ここで、インタレストは、選択基準として使用される。各々の可能な値ごとに、（異なるオーダーから得られる）累積インタレストが算出される。次いで、最大の累積インタレストを具備する値によって最適値が指定される。セグメントが関係している場合には、２つの最終値の１つまたはセグメントの中心に対応する値が選択される。
【００８３】
図５は、パラメータの最適値の計算を示している。
【００８４】
メモリコストの理由により、各々のアクチュエータは、限られた数（設計段階においてユーザーが決定した数）のオーダーのみを管理することが可能である。オーダーをマージ（merge ）するための内部的な方法により、過剰に多くの情報を失うことなしに、上記の限度を遵守することが可能である。この方法によれば、インタレストが最も少なく、かつ、相補性が最高のオーダーが削除される。相補性を有しているオーダーに対する上記の影響が、当該オーダーに永続的に積算される。換言すれば、これは、相補性が最高のオーダーのペア（Ａ、Ｂ）を判定するという問題である。次いで、オーダーＡを削除し、Ａのインタレストを考慮するべく、オーダーＢを変更するようになっている。２つのペア（Ａ、Ｂ）および（Ｃ、Ｄ）が同一の相補性を具備している場合には、最低のインタレストを具備するＡまたはＣの中のいずれかを削除するようになっている。
【００８５】
各々のアクチュエータは、持続性（persistency ）の概念を内蔵している。持続性には、次のように、その動作を変更する３つのタイプが存在している。
【００８６】
・「揮発（Volatile）」：オーダーは、影響メカニズムの介入を伴うことなしに、アクチュエータによって受信されたら直ちに実行される。
【００８７】
・「持続（Persistent）」：オーダーは、反射サイクルにおいてのみ維持される。これらのオーダーは、各々の新しいサイクルの開始時点において消去される。
【００８８】
・「固定（Static）」：オーダーは、複数の反射サイクル間において維持される。各々のオーダーには、「飽満（satiety ）」と呼ばれる特定の計算ツリーが関連付けられている（０と１の間）。各々の新しいサイクルの開始時点において、飽満の値１における相補性により、オーダーのインタレストが重み付けされる。この飽満の値が大きい場合には、インタレストは小さく、この結果、オーダーのマージが発生する。ゼロインタレストのオーダーは、即座に消去される。
【００８９】
アクション選択メカニズムの説明を以上（第１部）で完了し、以下、第２部において、適合メカニズムについて検討することとする。
【００９０】
ここでは、設置されている適合メカニズムがローカライズされ制御される。
【００９１】
・「ローカリゼーション」：適合メカニズムは、「適応型処理ブロック」と呼ばれるある特定の処理ブロックのレベルにおいて実行される。したがって、これらのブロックを使用する計算ツリーのみが適合能力を有することになる。
【００９２】
・「制御」：適合メカニズムは、「監督（supervising ）」と呼ばれる特定のアクチュエータによって起動される。このパラメータは、それぞれ、現在の状況に関して伝達される判断（judgement ）を表している。
【００９３】
判断または学習信号は、次の３つの異なる種類を有する値によって表される。
【００９４】
・失敗：この値が大きいほど、判断された状況は、より不都合である。
【００９５】
・成功：この値が大きいほど、判断された状況は、より好都合である。
【００９６】
・二又の失敗：判断は、失敗の計測に加え、適合の意味に関する標識をも提示する。この種類は、パラメータ（これは、相対的な値ではなく、正確な値を有しており、モチベーションと機会を表している）にリンクされた計算ツリーにのみ使用可能である。
【００９７】
判断の数学的特性（連続または離散、単一または二又）は、適合の収束に対して大きな影響を与える。適応型処理ブロックに配置された適合メカニズムは、受領した判断の種類とは完全に無関係に機能しなければならない。
【００９８】
適合型処理ブロック内における適合は、学習パラメータを変化させることによって実行される。これらのパラメータは、ブロックが実行する処理の際に使用される。これらのパラメータを変化させることにより、上記の処理を変更するようになっている。これらのパラメータの可能な値は、有限であって、制限され、かつ、順序付けされたセットに属していなければならない。
【００９９】
各々の適応型処理ブロックは、遭遇した状況に対するブロックの適合性を計測する信頼性によって特徴付けられている。これは、０と１の間である。これは、次式によって算出される。
【０１００】
ここで、ｅが、計測された誤差であるとする。
【０１０１】
（信頼性（Reliability））n+1＝（（信頼性）n＊ｎ＋１−ｅ）／（ｎ＋１）
【０１０２】
絶対値（AbsVal）（（信頼性）n+1−（信頼性）n）＞εの場合には、ｎ＝ｎ＋１である。
【０１０３】
学習パラメータの新しい値（Value ）は、次の式（１）によって算出される。
【０１０４】
ここで、ｅが、信号と関連する誤差であるとし、ｆが、ブロックの信頼性であるとし、ａが、パラメータの現在の値であるとし、ｐが、０と１の間のランダムな数値であるとする。
【０１０５】
【数１】
2007520774.tif 000003
【０１０６】
したがって、算出される新しい値は、いわゆるＦｉｓｋ分布に準拠しており、これは、対称的なものにすることが可能である。
【０１０７】
ここで、学習ブロックの次の３つの例を考えてみることとする。
【０１０８】
・重み付け学習ブロック（weighting learning block）
・多線形学習ブロック（pluri-linear learning block ）
・ニューラル学習ブロック
【０１０９】
重み付け学習ブロックは、単一の学習パラメータのみを有している。このブロックは、入力を具備しているか否かに応じて、次の２つの動作モードを有している。
【０１１０】
・重み付けモード：入力を具備している場合には、ブロックは、その学習パラメータによってその入力を重み付ける（積）。
【０１１１】
・生成モード：入力を有していない場合には、ブロックは、その入力が１であるかのように、その学習パラメータを単純に返す。
【０１１２】
学習パラメータの学習は、単純に、以前の命令をブロックに対して適用することによって実行される。ブロックは、学習信号を受信すると、基準入力値の平均を使用し、この平均に現在の学習パラメータを乗算することによって学習基準を取得し、信頼性と信号の関数としてスケールを従来同様に取得し、そして、学習により得られた値を基準入力値の平均によって除算することにより、新しい学習パラメータを取得する。
【０１１３】
ここで、ｉが、基準入力値の平均であるとし、ｗが、学習パラメータの値であるとし、ｅが、信号と関連する誤差であるとし、ｆが、学習ブロックの信頼性であるとし、ｗ’が、学習パラメータの新しい値であるとし、ａが、ローカリゼーションであるとし、ｂが、スケールであるとする。
【０１１４】
これにより、非ゼロのｉについて、次式が得られる。
【０１１５】
ａ＝ｗ＊１
ｂ＝ｅ＊（１−ｆ）
ｗ′＝（ａ＋ｂ＊Ｆｉｓｋ）／ｉ
【０１１６】
「多線形学習ブロック」の場合の概念は、理想的な関数を、学習セグメントと呼ばれるセグメントのセットに分割するというものである。各々の学習セグメントは、理想的な関数の連続した部分を近似している。上記の学習セグメントは、原点における傾きと縦座標という独自の学習パラメータを有している。したがって、上記の学習ブロックは、学習セグメントの原点における傾きと縦座標といういくつかの学習パラメータを１つにグループ化している。
【０１１７】
ここで、ａが、傾きであるとし、ｂが、原点における縦座標であるとすれば、次のとおりである。
【０１１８】
ｙ＝ａ＊ｘ＋ｂ
【０１１９】
各々の学習セグメントは、２つの定義限度を有している。この結果、その定義限度に対応する使用入力値の平均が記録される。
【０１２０】
セグメントは、以前と同様に理想的な出力値を算出する。記憶されている入力値は、実際には、使用入力値の平均に対応している。新しい学習ポイントが生成される。次いで、学習ブロックは、使用される入力ポイントにおいて関係している学習セグメントの分割を実行する。この結果、単一のものから２つの学習セグメントが生成される。図６に、この分割の動作が要約されている。
【０１２１】
次いで、学習パラメータを次のように算出する。
【０１２２】
ここで、ｘ１とｙ１が、第１学習ポイントの座標であるとし、ｘ２とｙ２が、第２学習ポイントの座標であるとし、ａが、一次方程式の傾きであるとし、ｂが、一次方程式の原点における縦座標であるとする。
【０１２３】
２つの学習ポイントが存在する場合には、次のとおりである。
【０１２４】
ａ＝（ｙ２−ｙ１）／（ｘ２−ｘ１）
【０１２５】
さもなければ、次のとおりである。
【０１２６】
ａ＝０
【０１２７】
１つの学習ポイントが存在する場合には、次のとおりである。
【０１２８】
ｂ＝ｘ１＊ａ＋ｙ１
【０１２９】
さもなければ、次のとおりである。
【０１３０】
ｂ＝０
【０１３１】
さらに、セグメントの最大数が、設計段階において定義される。
【０１３２】
この数を超過した場合には、学習ブロックは、「マージ（merger）」を実行する。このマージは、２つの学習セグメントを区切るポイントの中の１つを選択し、これを消去する段階から構成されている。次いで、２つの隣接セグメントが、相応して、それらの学習パラメータを再計算する。上記マージは、ブロックの情報の消失に対応している。したがって、この結果、この消失が極小化される。この消失は、次のようないくつかの要因にリンクしている。
【０１３３】
・学習セグメントの信頼性：セグメントの信頼性が高いほど、その変更は、より不都合である。
【０１３４】
・新しいセグメントの終点と除去対象のポイントによって形成された三角形の表面積：この表面積は、関係するポイントの除去の際に失われる情報（Information ）を表している。
【０１３５】
この情報は、次式によって算出される。
【０１３６】
ここで、ｆが、信頼性であるものとし、ｌが、横座標間の差であるとし、ｈが、縦座標間の差であるとする。
【０１３７】
情報＝（１／２）＊ｆ＊ｌ＊ｈ
【０１３８】
図７は、このようなマージプロセスの適用方法を示している。
【０１３９】
ニューラル学習ブロックは、２つの関数に分割される。第１の関数は、学習パラメータを使用してブロックの入力を重み付ける（１入力当たり１つの学習パラメータ）。この第１の関数は、学習パラメータの合計を実行することによって、それらを組み合せている。第２の関数は、出力の閾値設定を可能にする。デフォルトでは、この出力はシグモイド（sigmoid）である。
【０１４０】
ここで、ｆmodが、結果を変更する関数であるとし、ｆcombが、入力を組み合せる関数であるとし、ｋが、シグモイドの勾配であるとする。
【０１４１】
ｆmod（ｘ）＝（ｅｘｐ（ｋ＊ｘ）−１）／（ｅｘｐ（ｋ＊ｘ）＋１）
【０１４２】
さらに、次の式（２）が成立する。
【数２】
2007520774.tif 000004
【０１４３】
学習は、それぞれの入力ごとに実行される。したがって、学習ブロックが受領した学習信号は、全ての入力によって使用される。学習基準は、最新の学習信号以降に使用された値の平均である。以前と同様にスケールが算出される。
【０１４４】
そして、この学習の結果が、学習パラメータの新しい値である。ニューラル学習ブロックは、次の２つの主要な動作上の相違点により、従来のニューロンと区別されている。
【０１４５】
・信頼性の使用：ニューラルネットワークは、シミュレートベーキング法から継承した類似の学習ファクタを使用している（これは、温度と呼ばれている）。信頼性により、このパラメータを有利に置換することが可能である。これは、その値が、受領した学習信号によって左右され、したがって、任意ではないためである。
【０１４６】
・確率論的学習：ニューラル学習ブロックを非確率論的にすることは可能であるが、その場合には、収束が、特定の学習信号の欠乏に直面することになる。
【０１４７】
従来のニューラルネットワークは、実際には、失敗を計測する連続学習信号を使用している。
【０１４８】
アクション選択および適合メカニズムの説明を以上で完了し、以下、モデリングおよび動的計画について検討することとする。
【０１４９】
望ましい程度に豊富なモデルの生成を実現するための２つの概念は、次のように区別される。
【０１５０】
・メモリ：これにより、情報のセットを記憶することが可能である。このセットは、マスタシステムの概念を表している。これらの情報のセットの各々は、メモリクラスを表している。
【０１５１】
・リンク：これによって、相互にリンクされたメモリを変更する影響を表すことができる。
【０１５２】
実際には、リンクは、メモリの情報を変更するアクチュエータに類似している。これらの変更は、結果的にリンクアクチュエータに対してオーダーを送付するメモリによって生成される。したがって、メモリは、インタレストセンタである。
【０１５３】
各々のメモリは、自分自身が収容している情報を指定している所定のクラスに属している。これらのクラスは、メモリクラスと呼ばれる。同一のクラスに属している全てのメモリは、「メモリ階層」を形成する。
【０１５４】
同一の階層に属するメモリは、「記憶アクチュエータ（memorise actuator ）」と呼ばれるアクチュエータによって生成される。これらのパラメータの各々が、メモリの情報アイテムの値を決定する。
【０１５５】
メモリクラス内に記憶されている情報は、計算ツリーから得られる。したがって、この情報は、多かれ少なかれ、知覚者（percipient）から直接的に導出される。
【０１５６】
その実行の際には、「記憶アクチュエータ」は、既存のメモリに対して新しいメモリの生成を提案する。次いで、各々の既存のメモリが、提案されたメモリ内において自分自身を識別するべく試みることになるが、これが、認識段階である。
【０１５７】
メモリの「基準オブジェクト」、あるいは、より端的には、メモリの基準は、マスタシステムから得られ、かつ、メモリの原点に位置しているソースオブジェクトを指定する識別子に付与された名称である。
【０１５８】
認識は、認識ツリーと呼ばれ、かつ、各々のメモリ階層ごとに設計された特定の計算ツリーによって実行される。この計算ツリーが存在しない場合には、システムは、基準によって直接的な認識を実行する。
【０１５９】
提案されたメモリ内において、いずれのメモリも自分自身を完全に認識しない場合には、新しいメモリが生成される。したがって、この新しいメモリは、提案されたメモリによって自分自身を完全に識別する。
【０１６０】
提案されたメモリによって部分的にでも自分自身の識別に成功した全てのメモリは、アクティブメモリとなる。これらのメモリは、その影響をその他のメモリに伝達することはできない。これらは、その他のメモリの影響のレセプタクル（receptacle）である。
【０１６１】
アクティブメモリは、提案されたメモリと完全に整合するように、その情報を変更する。この段階は、メモリの更新段階に対応している。
【０１６２】
各々の情報アイテムは、次の３つの別個の値を１つにグループ化している。
【０１６３】
・記憶されている情報（基準情報）：この値は、最新の記憶の時点における計算ツリーの結果に対応している。
【０１６４】
・変更済みの情報（読み込まれた情報）：この値は、リンクされたメモリによって変更済みになって記憶されている情報（基準情報）に対応している。
【０１６５】
・情報の信頼性（Reliability）：この値により、記憶されている情報の時間の経過に伴う安定性を計測することが可能である。この情報の信頼性は、次式によって算出される。
【０１６６】
ここで、ｅが、計測された誤差であるとする。
【０１６７】
（信頼性）n+1＝（（信頼性）n＊ｎ＋１−ｅ）／（ｎ＋１）
【０１６８】
絶対値（AbsVal）（（信頼性）n+1−（信頼性）n）＞εの場合には、ｎ＝ｎ＋１である。
【０１６９】
メモリの全体的な信頼性は、その情報アイテムの信頼性の平均を実行することによって算出される。
【０１７０】
上記の値が生成された時点で、メモリは、階層内に存在するアクチュエータに対して自動的に接続される。これらのアクチュエータは、「階層アクチュエータ（stratum actuator）」と呼ばれる。
【０１７１】
オーダーの算出に必要な計算ツリーは、特定の知覚者に基づいて、メモリの情報を使用することが可能である。これらの計算ツリーは、全てのメモリによって共有されているため、一般的であると表現される。
【０１７２】
階層アクチュエータに送付されたオーダーのソースオブジェクトが、常に、このオーダーの原点に位置するメモリの基準である。
【０１７３】
階層アクチュエータの中の「リンクアクチュエータ」により、ターゲットメモリに対するリンクを生成することが可能である。単一のリンクアクチュエータにより、全てのターゲットメモリを管理することが可能である。これらのアクチュエータは、一般的なアクチュエータである。新しいメモリの各々の生成の際に、対応するリンクアクチュエータが更新される。
【０１７４】
図８に示されているように、リンクにより、１つのメモリは、別のメモリに対して影響を与えることができる（すなわち、別のメモリの情報を変更することが可能であり、この変更された情報は、読み込まれた情報と呼ばれる）。
【０１７５】
ターゲットがアクティブなメモリであるリンクは、このメモリに対してその影響を伝達しない。その一方で、これらのリンクは、その影響を使用することにより、そのメモリを使用することになるレイヤを変更する。この変更は、次の２つの形態を取ることができる。
【０１７６】
・仮想オブジェクトの生成：マスタシステム内に実際に存在していない新しいオブジェクトが生成され、レイヤによって知覚されることになる。
【０１７７】
・処理ブロックのオーバーローディング：レイヤによって使用される処理ブロックの結果が置換され、次いで、システムが自動更新される。
【０１７８】
図９は、リンクによる仮想オブジェクトの生成を示している。
【０１７９】
全ての影響の計算は、ｎ2のレベルの複雑さを伴う長い計算であり、ｎは、メモリの数である。
【０１８０】
しかしながら、本発明のシステムは、アクティブなメモリの変化またはメモリ情報の変さらに対応する必要な更新のみを管理する能力を有している。したがって、この方法によれば、時間の経過に伴って分散可能な増分的な処理が保証されている。
【０１８１】
メモリ階層は、使用されるメモリリソースを自動的に管理する能力を有している。メモリとリンクの生成が既に妨げられている場合には、「忘却アクチュエータ（forget actuator ）」と呼ばれる特定の階層アクチュエータにより、それらの破壊を管理することが可能である。
【０１８２】
このアクチュエータは、設計段階において生成されているか否かとは無関係に存在することに留意することが重要である。そのデフォルトの動作は、最も有用性の乏しいメモリおよび／またはリンクを除去する段階から構成されている。
【０１８３】
メモリの有用性は、次の２つの主たる要因によって左右される。
【０１８４】
・メモリの生成または最新の更新の時点において算出された機会により、決定モデルに対するその有用性を知ることができる。
【０１８５】
・その信頼性によって重み付けがなされたメモリの更新数により、メモリの「確実性」を知ることができる。
【０１８６】
したがって、メモリの有用性は、次式によって算出される。
【０１８７】
有用性＝（機会）＊（信頼性）＊（更新数）
【０１８８】
リンクの有用性は、次の２つの要因によって左右される。
【０１８９】
・ターゲットメモリの有用性
・リンクの生成のために算出された機会（これは、決定モデルに対する当該リンクのインタレストを計測する）
【０１９０】
したがって、リンクの有用性は、次式によって算出される。
【０１９１】
有用性＝（機会）＊（有用性（ターゲットメモリ））
【０１９２】
設計段階において、「忘却アクチュエータ」を指定することが可能である。このアクチュエータは、維持対象のメモリの信頼性のパーセンテージを判定する単一のパラメータを有している。
【０１９３】
以上、一例として、本発明について説明してきたが、結論として、当業者であれば、本発明の範囲を逸脱することなしに、本発明の様々な変形例を実施することが可能であることを理解されたい。
【図面の簡単な説明】
【０１９４】
【図１】計算ツリーの分解構造図を示す図である。
【図２】知覚グループの使用を示す図である。
【図３】論理的従属関係およびレイヤの概念を示す図である。
【図４】パラメータにリンクされた値のセットを示す図である。
【図５】パラメータの最適値の判定を示す図である。
【図６】新しい学習セグメントの分割による生成を示す図である。
【図７】マージ対象の２つの学習セグメントの判定を示す図である。
【図８】リンクによる２つのメモリ間の影響のためのメカニズムを示す図である。
【図９】リンクによる仮想オブジェクトの生成のためのメカニズムを示す図である。
【図１】
2007520774.tif 000005
【図２】
2007520774.tif 000006
【図３】
2007520774.tif 000007
【図４】
2007520774.tif 000008
【図５】
2007520774.tif 000009
【図６】
2007520774.tif 000010
【図７】
2007520774.tif 000011
【図８】
2007520774.tif 000012
【図９】
2007520774.tif 000013
【国際調査報告】
2007520774.tif 000014
2007520774.tif 000015
2007520774.tif 000016
2007520774.tif 000017