(57)【特許請求の範囲】
【請求項１】
制御対象システムの伝達関数を副関数の組合せからなる構造として識別し、次いで該伝達関数のパラメータを求める装置において、
上記装置は、構造識別手段、シミュレーション手段及びパラメータ評価手段とからなり、
前記構造識別手段は、学習済みのニューラルネットによって、制御対象システムの入出力データを入力として、前記副関数の各々の採否を行うスイッチの値を決定することにより副関数の採否を決定し、
前記シミュレーション手段は、決定された前記各々のスイッチの値を受け、前記伝達関数の構造を発生し、該伝達関数の構造と制御対象システムの入力データから出力データのシミュレーション値を発生し、
前記パラーメータ評価手段は、制御対象システムの出力データ、前記シミュレーション値及び前記各々のスイッチの値に基づいて上記伝達関数のパラメータを求め、前記シミュレーション手段へ供給することにより前記各々のスイッチの値及び前記伝達関数のパラメータを出力することを特徴とする装置。
【請求項２】
制御対象システムの伝達関数を副関数の組合せからなる構造として識別し、次いで該伝達関数のパラメータを求める装置の制御方法において、
上記装置は、構造識別手段、シミュレーション手段及びパラメータ評価手段とからなり、
前記構造識別手段により、学習済みのニューラルネットによって、制御対象システムの入出力データを入力として、前記副関数の各々の採否を行うスイッチの値を決定することにより副関数の採否を決定するステップと、
前記シミュレーション手段により、決定された前記各々のスイッチの値を受け、前記伝達関数の構造を発生し、該伝達関数の構造と制御対象システムの入力データから出力データのシミュレーション値を発生するステップと、
前記パラーメータ評価手段により、制御対象システムの出力データ、前記シミュレーション値及び前記各々のスイッチの値に基づいて上記伝達関数のパラメータを求め、前記シミュレーション手段へ供給するステップと、
前記各々のスイッチの値及び前記伝達関数のパラメータを出力するステップとからなることを特徴とする制御方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明はシステム制御の分野に関するものであり、更に詳しく言えば、構造識別およびパラメータ識別、ならびにシステム制御におけるそれの使用に関するものである。
【０００２】
【従来の技術】
未知のプロセスシステムまたは完全に知られているプロセスシステムについてのモデル構造およびパラメータの識別は制御および診断にとって重要である。より正確にプラントまたはプロセスを正確に識別できると、それをより良く制御できる。システムパラメータの評価は適応制御／予測制御および自動調整の重要な面である。また、システムパラメータまたは構造の変化は貴重な診断標識である。たとえば、送りプロセスの遅れの急増はパイプラインの迂回を示すことがある。
システム識別は制御理論において以前から広範囲な研究の目的であった。いくつかの技術が開発され、それらの多くは広く用いられている。システム識別に対する現在のほとんどのやり方は「ハード知識」のやり方として特徴づけることができる。このやり方は広範囲の数学的解析により達成されることを意味する。それらの技術を利用できる場合には、極めて正確な結果を得ることができる。
【０００３】
【発明が解決しようとする課題】
現在の多くのシステム識別技術の欠点はそれらの技術の強さの結果である。数学的解析を容易にすることと、特定の用途のために計算の要求を扱いやすく保つことの少なくとも１つを必要とするという仮定は、他の用途に対しては妥当ではないことがある。現在の多くの技術の一般性および使用の容易さは限られる。
システム識別ツールの別の概念により応用のより大きな一般性が得られる。そのような汎用ツールすなわち汎用技術を、当業者が数学的解析をほとんど、または全く必要とせずに、多種類のシステム識別問題のために使用できる。専用技術が存在する場合には、それらの専用技術は一層正確に問題を解決できるかもしれないが、性能に対する要求を満足させながら、汎用技術が可能にする短い開発時間が大きな利点であることがある。
システム識別ツールおよび技術は、下記のような広い応用性を持つことができる。
・プロセス産業における技術者が制御を改善するために、取り扱うプラントについてより良い知識を得るためにそれらの技術者による明確な需要。このことは化学、機械およびその他の生産環境に対しては真実である。
・高性能の宇宙船、航空機、および鉄道車両や高速船のような、地球表面により近いシステムの力学についての研究を、それらのツールおよび技術を用いて改善できる。
・行動を追跡している人および他の種類の制御を強めることができる。
・生物学的機能、たとえば瞳の応答、腕または脚の調節、心拍の調整等のような神経筋肉系における研修もそれらのツールおよび技術を用いて改善できる。
【０００４】
識別問題を定式化し、解決する際には識別の目的を心に留めておくことが重要である。制御問題においては、最終の目標は特定のシステムに対する制御戦略を構築することがしばしばである。しかし、主な関心がシステムの諸特性を分析するような状況もある。化学反応における速度効率と、工業プロセスの熱伝導効率と、原子炉における反応効率との決定は、そのような「診断」状況の典型的な例である。その場合には、特定のパラメータ値の決定が最終目標であることがある。この種の問題の多くが生物学、経済学および医学においても見出される。
【０００５】
識別の目的が制御装置を設計することである場合でも、制御問題の性質に応じて問題の特性が大きく変わることがある。いくつかの例を以下に示す。
・安定なレギュレータの設計。
・１つの状態から他の状態へ最適に移行させるための制御プログラムの設計。
・擾乱によるプロセス変数の変化を最小にするレギュレータの設計。
したがって、本発明は広い応用性を持つことがわかる。しかし、本発明の応用性をそのように限定するという意図なしに、説明を容易にするために共通の制御環境を本発明は採用する。
【０００６】
したがって、建物の暖房通風および空調装置、または化学工場の生産ライン、あるいはその他の自動設備や半自動設備のようなシステムまたはプロセスを調整すなわち制御するためのモデルを構築する場合には、過去においては種々の技術が用いられてきた。システムのモデルは、システムの活動のセンサまたはその他のモニタによりシステムにおいて、あるいはシステムから識別される、システムへの入力と、出力または応答との間の関係を基にしている。たとえば、システムにおいてボイラの出力を増大すると、炉室のモニタされている環境内の種々の他の条件に応じた種々の速さで炉室における加熱を増大させる。炉室内の温度の時間的な変化として測定される応答は、グラフで描くことによりある種のカーブが得られる。そのカーブの形と、上向き応答の勾配、およびそのカーブを定める方程式の次数とを、モニタされる環境の性質に応じてかなり変えることができる。
【０００７】
本発明以前の現在のほとんどのシステム識別は、入力と出力の間の関係に対して基本的であるとしても、システムの構造をとくに識別しない。１つの共通なやり方は、システムの人手による分析を基にして、可能なまたはそれらしい最も複雑な構造をとることである。システムにおける（遅延、積分、遅れ、遅れ−進みのような）、全ての所定の不ルックの全てのパラメータをこのやり方の下で識別せねばならない。別のやり方においては、引き続くより複雑な構造をとり、実際のプロセスデータとの間で許容できる一致が得られるまで、パラメータの識別を行う反復プロセスが行われる。
【０００８】
それら２つの従来のやり方においては、適切な構造識別子が欠けているために、追加の計算を識別方法が行わなければならない。したがって、サーチ空間が大きくなりがちであり、システムを識別するプロセスは、長い時間を要する傾向がある。したがって、識別ソフトウェアは十分に長い時間と識別の正確さに対して十分な記憶資源を必要とし、前記方法の１つを基にした識別の正確さは低い傾向がある。
【０００９】
本発明以前は、実際の問題を取り扱うことができる自動構造識別技術は利用できなかった。この理由から、文献では「システム識別」または「構造識別」という用語を「パラメータ評価」または「パラメータ識別」と混同する傾向がある。しかし、ニューラルネットワークにおける最近の研究により、与えられた状況において変数セットの間の関係の例から、複雑な非線形多次元マッピングを開発する自動装置をあるニューラルネットワークが提供できることが示されている。これは問題解析または手動プログラミングをほとんど行うことなしに行うことができる。
しかし、ニューラルネットワークには特有の欠点がある。ニューラルネットワークは、とくにトレーニング（学習）段階において、および、ニューラルネットワークモデルが１つのプロセッサでソフトウェアで実現され、専用のハードウェアで実現されないとすると、一般に時間がかかり、かつ計算に費用がかかる。しかし、ニューラルネットワーク処理に費用があまりかからなくなるにつれて、構造識別とパラメータ識別のために、ニューラルネットワークを使用することが有用となってきた。
【００１０】
【課題を解決するための手段】
本発明の２レベル識別子は、構造識別問題を解くためのパターン分類子ニューラルネットワークを用いる。その２レベル識別子は、識別された構造に対応するパラメータ値を評価するために最近のアルゴリズム技術を用いる。
本発明はパラメータを評価するためにニューラルネットワークを採用できる。最初のパラメータ値をニューラルネットワークを用いて決定することもできる。オンラインシステムの連続パラメータ最適化も教えられる。最後に、最適化データを用いる連続オンライン調整すなわちトレーニングを説明する。
【００１１】
【実施例】
システム制御科学は多くの分野において応用され、先の「発明が解決しようとする課題」の項において簡単に述べたような科学技術史を有する。
ある概念を提示するために、特定の例、すなわち、ＨＶＡＣシステム（暖房、通風および空調装置）を参照する。ＨＶＡＣシステムは全体として閉じられている建物の空間内で応用でき、設定点を制御するオペレータに応答し、または温度や通風のための窓（およびおそらくは、日光からの熱負荷を変更し、窓を通じての熱損失を阻止するためのカーテン）を調節できる。オペレータは季節に応じた温度に合わせて窓を調節し、最も暑い時季には空調装置を運転して、カーテンを閉め、最も寒い時季には暖房を行って、カーテンを閉める。一般にオペレータは、寒いと感じた時には設定点を高くし、暑いと感じた時は設定点を低くする。室内で人が調節するサーモスタットで決定される設定点はボイラ、通風装置へ入力を直接供給し、または制御器を介して供給する。その制御器は同じ入力を機械的な装置へ供給する。この動作は人が行うことができるよりも効率的なやり方で行われる。本発明の目的のためには、制御器を用いる場合だけが関連する。
【００１２】
まず、入力「ｕ」と「Ｎ」を受け、出力「ｙ」を生ずる装置１１が示されている図１を参照する。これを上記した例の制御される建物空間と比較すると、装置へ供給される入力「ｕ」は炉により供給される熱であり、空調装置により供給される冷たさであり、かつ、通風（またはその他の供給）装置がそれらの入力のいずれかを供給する速度である。室からの出力「ｙ」は（この例においては）、入力「ｕ」のために変化する測定される温度である。室内には制御されない入力、またはサーモスタット以外の手段により制御可能である入力がある。それらの入力は「Ｎ」と呼ばれ（「ノイズ」を示す）、上記室の場合には、室内にいる人によるカーテン操作や窓操作の変更、日光に影響を及ぼす雲等を含むことがある。このように、システム１０は定量的に識別される。人は制御器を用いることなしに入力「Ｎ」に影響を及ぼすことができ、制御器により入力「ｕ」に影響を及ぼすことができ、もし存在するならば、人に影響するシステムの変化に応答してそのような操作を行うことができる。サーモスタットは出力「ｙ」もモニタし、入力「ｕ」へのそれ自身の変化に影響を及ぼして出力「ｙ」を設定点に一致させることができる。
【００１３】
上記のような変数ｕとｙおよびこの明細書でその他の符号で示すものは、ベクトルを意味する場合があることに注目すべきである。
【００１４】
図２には閉ループシステム２０が示されている。このシステムは装置１１と、ノイズ入力「Ｎ」と、制御可能な入力ｕと、制御された出力ｙと、出力ｙを制御１２へ戻す戻しループ１３とを有する。制御器はモデル３１を含むこともできれば、含まないこともできる。
次に、応答１９と時間１８の関係を示す応答曲線１７のグラフ３０が示されている図３を参照する。変更された出力ｕをシステムへ送るために制御器が信号を機械へ送る時刻と、制御器出力ｕにより応答が行われる時刻との間の時間を示すスペース１４は、このカーブ中の応答が「遅れ時間」または「遅れ」と呼ばれるものを有することを示す。したがって、制御されているのがボイラであるとすると、信号がボイラへ与えられる時刻から、室内の温度が影響される時刻までの時間は「遅れ時間」と呼ばれる。時間領域１５内のカーブ１７の垂下部分は、応答カーブ中の逆応答を示す。この垂下部分は、たとえば、熱が供給される前にブロワが始動して室内を多少冷やすような場合に起きることがある。カーブ１７の残りの部分は時間領域１６内の上向き勾配カーブである。カーブのこの部分は応答カーブの「積分作用」と呼ばれる。
【００１５】
このカーブ１７のような応答カーブは、システム中の設定点の１つの段階的な変化により生じさせることができる。もちろん、必ずしも全てのカーブがこれと同じ特徴を持つものではなく、室内への同じ設定点に応答しても、湿度、室内での空気の流量等のような、室内で測定可能な諸特徴の応答カーブは全く異なることがある。たとえば、非常に暑い日には、カーブ１７の部分１６の勾配は、比較的低出力の冷房装置が用いられている場合には、劇的に平になり、冷房装置が非常に強力であれば、全く同様なことがある。
【００１６】
本発明を実施するためにはシステムの数学的モデルを必要とする。このモデルはフィルタと二通りのやり方で変化を示すことができる。第１に、構造的な変化が可能である。可能な構造的変化は次のものを含むことができる。
・副関数の種々の組成（遅延、進み−遅れ等のような）。
・伝達関数モデル中の種々の字数の分母および分子の多項式。
・非線形数学モデル中の種々の非直線性（たとえば、飽和、ヒステレシス、対数、指数）。
第２に、数学モデルは種々の値を割り当てることができるパラメータを含むことができる。たとえば、システムがある遅れを含む場合には、その遅れの実際の値をパラメータとすることができる。
【００１７】
シミュレーションモデル６１が示されている図９を参照して構造識別子の開発を説明できる。このモデルはアルゴリズムセット、プログラムセット、または希望によってはアナログ装置とすることができる。
トレーニングデータの発生はモデル６１を用いて行うことができる。「ｓ」は構造表現（たとえば、スイッチ設定）である。ｓはベクトルである。一般には構造表現はスカラー数ではない。ｓは伝達関数（たとえば、Ｈ（ｓ）＝・・・）中のｓには決して関連しない。
一般的な場合には、種々の入力ｕ、ｓ、ｐがシミュレーションへ入力され、対応する出力ｙが発生される。各入力ｕ、ｓ、と出力ｙが１つのトレーニング例を構成する（なお、構造識別子をトレーニング例えば調整するためにはｐは不要である。）それから、図１０を参照して説明するようにしてネットワークは（各トレーニング例に対して）下記のようにトレーニングされる。
【００１８】
図１０において、先に述べたようにニューラルネットワーク６２に学習アルゴリズム６３が組み合わされる。矢印６４は、内部重みを調節することによるか、他の手段により、ニューラルネットワークを調節するためのアルゴリズムの能力を概略的に表わす。ニューラルネットワーク６２を通る入力ｙ、ｕは出力ｓ０  を生ずる。その出力は点６５においてｓと比較される。学習アルゴリズムは線６６で受けた比較結果を用いて、代表的な矢印６４で示されている修正を行う。文脈内で無視できるか、最小になるように、ｓ０・・・ｘ  がｓに十分に近くなるまでこのプロセスは繰り返される。
特定の入力ｕが常に用いられるものとすると、トレーニング中または動作中はその入力をニューラルネットワークへ特定の入力として供給する必要はない。
遅延を評価するために用いられるパラメータ評価のためのトレーニングセット例えば教師データセットの開発が１９９０年１０月１０日付の米国特許出願Ｎｏ．０７／５９４，９２７にいくらか詳しく記載されている。本発明のために類似のトレーニングセットを発生できるが、その米国特許出願における入力、出力および対応するパラメータ値ではなくて、入力、出力および対応する構造値を使用すべきである。したがって、ｕｐ，ｙｐと構造スイッチ設定を構造識別のために用いられるニューラルネットワークのトレーニングに関連する種類のデータとすべきである。
要するに、種々のモデル記述を無作為に、または慎重に、発生でき、各モデルのための応答カーブを発生するために、それらへ加えられるパラメータを入力できる。
【００１９】
それらの目的のためのトレーニングセットの発生およびシミュレーションの使用は周知であり、各種の技術およびシミュレータを使用できる。ニューラルネットワークは非線形マッピングができるものでなければならない。２つの例は、後方伝播関数型または動径ベース（ｒａｄｉａｌ  ｂａｓｉｓ）関数型であるネットワークである。
希望によっては、予測される実際のパラメータに一致させるために、ニューラルネットワークパラメータ自体は無作為に、または慎重に発生できる。強固にするためには、白色雑音または周期的雑音、あるいはそれらの雑音のいくらかの組み合わせをシミュレーションへ導入するとおそらく助けになる。基本的な開ループステップ入力はもちろん、閉ループ非ステップ入力、および任意の入力も使用できる。シミュレータにおいてトレーニングデータセットを作成するために用いられるモデルの種類が増加すると、実在の世界で制御することを意図するシステムのために正確なモデルをシステム識別子が選択されることが多くなる。もちろん、システムがより複雑になると、ネットワークとシミュレーションを動作させる費用が増加する。したがって、プロセスを開ループステップ入力として正確に記述できる場合には、トレーニングのためのそのベースを使用せねばならない。
【００２０】
したがって、データのトレーニングセットを、２レベルシステムを有する制御器が採用されていることを自身で見出すような実在世界の状況を参考にして構成されたシミュレータで編集せねばならない。もちろん代わりに実在世界の例を使用できるが、そのデータの編集は退屈で、誤りやすく、費用がかかり、しかも時間が非常にかかる。
【００２１】
パラメータ評価のためのシミュレータ識別の性能をとくに記述している前記米国特許出願におけるように、遅延パラメータの例を特に行って、ニューラルネットワークのトレーニングには、ニューラルネットワークからの出力が、与えられた例からの入力に対応する出力に一致するまで、対応する入力と出力がネットワークへ繰り返し供給されることを要する。この技術と概念またはツールは本発明においても同様に採用される。しかし、それは異なる目的のためにおかれる。
以下の説明を、システム識別器、パラメータ評価器、およびメモリによる最適化の項目に分けて行う。
【００２２】
ここで説明する本発明をＨＰ／Ａｐｏｌｌｏワークステーションで、フォトランまたはＣプログラミング言語で実現し、それを何回か公開して成功を収めた。システムの設計者は、本発明の教示を逸脱することなしに彼自身の実現の基礎を選択できる。ニューラルネットワークがより大きな処理能力を求められた場合には、ニューラルネットワークの処理により良く適合させられた装置と言語が好適なことは明らかである。
【００２３】
システム識別子
まず、２レベルシステムの一般的な説明が示されている図４を参照する。プロセス入力／出力データ２１が応答パラメータ分類器２２とパラメータ評価器２５へ入力される。一般に、応答パラメータ分類器２２は、例えば図６に関して後述するように、考察しているシステムの構造識別を行う。識別された構造２４を表わす伝達関数が応答パラメータ分類器２２からパラメータ評価器２５へ入力される。パラメータ分類器は伝達関数２４において識別されたモデルを用いて、その伝達関数に関連するパラメータ２７の初期値（この初期値は例えば米国特許出願Ｎｏ．０７／５９４，９２７に記載された方法で求められる）を求め、識別された構造において評価されたパラメータを用いて予測された処理入力／出力データに実際の入力／出力データ２１が一致するまで、それらのパラメータをそれの内部プロセスで繰り返し処理する。
【００２４】
パラメータ分類器２５へ送られる構造２４を識別する伝達関数は、一実施例においては一連の構造スイッチと見ることができる。伝達関数または一般的な用語では構造識別２４を一般的な用語で説明する前に、システム３０の構造識別を構成する構造スイッチ３１、３２、３３、３４が示されている図６を参照する。出力Ｙ（ｓ）を生ずるために入力Ｕ（ｓ）を利得係数３５へ直接加えることができる。入力Ｕ（ｓ）と出力Ｙ（ｓ）は、それぞれ、時間的に変化する入力信号ｕ（ｔ）と出力信号ｙ（ｔ）のラプラス変換である。利得はＫｐ  で一般に表される。遅延があることを、トレーニングデータセット中の入力と出力の間の関係が示すとすると、代わりに入力Ｕ（ｓ）がスイッチ３１を介してボックスＳＤ  内の遅延関数へ加えられる。遅延がないとすると、スイッチ３１が入力Ｕ（ｓ）を遅延関数の周囲へ送り、そこで入力はスイッチ３２により、ボックスＳＬＬにより示されている進み−遅れパラメータ関数の周囲へ、またはそのパラメータ関数を通って送られる。このプロセスはスイッチ３３とボックスＳＬ  （遅延関数）、スイッチ３４とボックスＳＩ  （積分関数）に対して繰り返される。このように、全てのスイッチが関数ボックスを通るものとすると、このシステムは遅延、進み−遅れ、積分を有する応答カーブを有するものとして識別される。もちろん、希望により、識別プロセスの全体の動作に害を与えることなしに、スイッチの順序を変えることができる。利得関数は全ての構造式中に存在するものと信ぜられるから、利得ボックス３５の前にはスイッチはないことに注目されたい。
【００２５】
上記構造識別は単なる一実施例にすぎないことに注目すべきである。構造は他のやり方で記述または識別できる。しかしそれらの他のやり方は、用いられるパラメータ評価器への許容できる入力に対応せねばならない。たとえば、トレーニングデータセット中で見出される応答パラメータを記述する方程式の次数を応答パラメータ分類器が単に通すものであるとすると、パラメータ評価器に含まれている限られた方程式セットからシステムの構造を記述または識別する方程式を生ずるためにそれらの数を使用するようにパラメータ評価器を構成できる。同様に、
【００２６】
【数１】
0003556956.tif 000002
【００２７】
のような伝達関数を記述するために他のやり方を使用できる。この式で、ａ、ｂはパラメータベクトルであるが、この態様では、遅延、進み−遅れ、等のような一般的なパラメータ名で呼ぶことはできない。ｎ、ｍはＨ（ｓ）の多項度（Ｈ（ｓ）は伝達関数）である。
【００２８】
しかし、図６において識別されている構造スイッチは多くの制御応用のために考慮すべき構造の妥当な領域であるから、使用するために好適な態様である。
次に、構造識別器すなわち応答パラメータ分類器２２が破線で示されている図７を参照する。この構造識別器２２は、図６のスイッチ３１〜３４により選択されうるボックスＳＤ、ＳＬＬ、ＳＬ、ＳＩ  を出力側に有するニューラルネットワークＮＮを含んでいる。したがって、システムは、ニューラルネットワークＮＮを通ったプロセス入力および出力データ２１を処理し、一実施例においてはスイッチ３１〜３４により選択されたボックス（すなわちＳＤ、ＳＬＬ、ＳＬ、ＳＩ、以下同じ）  を通じて２進のオン出力またはオフ出力を供給する。そうするとこれは伝達関数Ｈ（ｓ，ｐ）２３を形成する。この伝達関数の「ｐ」は識別された構造の各副関数のパラメータのパラメータセットである。（あるいは、装置の構成をより容易にできるならば、伝達関数の各部分と、希望によってはそのように付加された複雑さの別の層を、ターンオンまたはターンオフでき。）識別された構造と評価されたパラメータ、およびそれにより発生された関係を実際の入力ｕと実際の出力ｙ（２１）に対してテストするために、ボックス２３または複製された構造（図示せず）も採用できる。一般的なやり方であるが、時間的に変化する実際の入力ｕ（ｔ）と実際の出力ｙ（ｔ）がサンプルされ、サンプルされたベクトルｕとｙが、ここで説明するシステム識別法へ入力として供給される。したがって、パラメータ評価器比較器３８が入力ｕと出力ｙ（２１）を受け、ボックス２３への入力として線３６を介しての入力ｕを採用する。それと同時に、それはパラメータ（それらはベクトルｐとして識別される）の最後で最良の評価（この評価の一方法としては後述するパラメータ評価器とともに説明する。）を線３９を介して供給する。これにより線３７に出力ｙｍ  が発生される。この出力ｙｍ  はモデルにより決定されるｙである。それはボックス３８において線２１上の入力ｕと比較される。
【００２９】
したがって、図７に示されている実施例４０においては、スイッチＳｘ  の列をニューラルネットワークＮＮによりセットすることにより構造識別が行われる。線２１からの入力ｕとｙに応答してそれらのスイッチはセットされる。スイッチをセットすることにより、ボックス２３のソフトウェアまたはハードウェア実現によりシステムの構造を識別する式すなわち伝達関数が発生される。（小さくて、時間的に厳しくない応用ではソフトウェア実現が好ましく、高速処理を希望する場合にはハードウェア実現が好ましい。）このようにして、伝達関数Ｈ（ｓ，ｐ）がパラメータ評価器２５へ供給される。パラメータ評価器がそれの処理を終わった時にシステムの構造識別が終わったと考えられる。
【００３０】
パラメータ評価器
なお図７を参照して、パラメータ評価器２５は、パラメータ評価器２５がそれの第１のパラメータ評価セットＰ１  を線３９を介してボックス２３内の伝達関数へ供給すると同時に入力ｕを線３６を介してその伝達関数へ転送することにより、その伝達関数のソフトウェア実現またはハードウェア実現を採用する。各入力ｕ、ｐセットに対して、ボックス２３の出力は線３７に出力ｙｍ  をも生ずる。パラメータ評価のプロセスの説明は、図７においてボックス３８を参照するよりも図５を参照する方がより良く行うことができる。
【００３１】
図５において、流れ図５０はパラメータを識別するために用いられる装置の素子の間の入力と出力を詳しく述べる。ダイナミック構造識別器４１が入力をプロセスｕｐ  から受け、出力をプロセスｙｐ  から受ける。そして、先に説明したように該当の構造を示す関数の組み合わせを決定する。プロセスからの入力は、この装置においてシミュレーション関数を供給する汎用ダイナミックモデル４２へも供給される。この汎用ダイナミックモデル４２はシュミレーションを行って対象の装置がどのような動作を行うかを決定する。出力プロセスデータｙｐ  は、最適化プログラムを含む非線形パラメータ識別器４３へも供給される。ダイナミック構造識別器４１は、上記伝達関数に類似し、またはそれと同一の副関数の組み合わせとしての構造表現（構造インデックス）ｓを非線形パラメータ識別器４３へ供給する。その非線形パラメータ識別器へはプロセスモデル４２からの出力ｙｍ  も供給される。この非線形パラメータ識別器４３は例えば先の方法により決定された関数の入力／出力データを実際の処理入力／出力データに一致させる処理を行ってパラメータを決定する。プロセスモデル４２はこう配（部分ｙ／部分ｐ）を一般的に生ずる。そのこう配はパラメータ識別器４３へ供給でき、または希望によってはパラメータ識別器内で独立に発生できる。パラメータ識別器は出力「ｐ」を複雑なプロセスすなわち多段プロセスとして発生する。それは出力プロセスデータ「ｙｐ」  をモデル出力データ「ｙｍ」  と比較する。どのような装置でも制御する目的のために無視できるほどそれらのデータが十分に近くないとすると、出力プロセスデータｙｐ  をモデル出力データｙｍ  により近く一致させるために計算された、出力パラメータｐにおいて変化させるために最適化アルゴリズムでこう配（ボックス４２により決定されてボックス４３へ供給されるか、ボックス４３内で発生される）が用いられる。この種の計算を行うために多くの方法が良く知られており、どの計算方法がいいということはない。ある計算法は結果を速く出すがかなりの計算力を必要とするから、選択される方程式は設計上の選択の問題である。
【００３２】
ここで採用する計算方法は、制約を取り扱うために修正されたルベンバーグ・マーカート（Ｌｅｖｅｎｖｅｒｇ  Ｍａｒｑｕａｒｄｔ）最適化アルゴリズムである。この計算方法が、スケールス（Ｌ．Ｅ．Ｓｃａｌｅｓ）著「非線形最適化入門（Ｉｎｔｒｏｄｕｃｔｉｏｎ  ｔｏ  Ｎｏｎｌｉｎｅａｒ  Ｏｐｔｉｍｉｚａｔｉｏｎ）」（Ｓｐｒｉｎｇｅｒ−Ｖｅｒｌａｇ、１９８５）に記述されている。任意の特定の用途のための最良の計算法は設計上の考慮に応じて決定される。
ボックス４３からの出力ｐはボックス４２内のモデルへ供給される。このモデルはプロセス入力ｕｐ  を採用し、構造識別器４１から受けた構造インデックスｓにより識別された構造を通じてそのプロセス入力を送る。ボックス４２で用いるパラメータはボックス４３において出力ｙｐ  とｙｍ  の間の差、こう配、と、次のｐすなわち「ｐ」出力を生ずるために発生された最後のｐとを用いて行われる最適化を基にする。
【００３３】
図５を図７へ関連づけると、図７のボックス３８は図５のボックス４２、４３にほぼ対応する。しかし、識別された構造を含むボックス２３のある部分は図５のボックス４２に論理的に属する。
したがって、同じ素子対と、構造識別器と、パラメータ評価器とのいくつかの実施例をソフトウェアまたはハードウェアを用いて構成できることがわかる。しかし、パラメータ評価器は構造識別器により識別された構造のある指示を受けねばならず、またはパラメータ評価を行うために少なくとも動作できねばならない。パラメータ評価はあるモデルを介して供給する必要がある。そのモデルは、モデル出力を発生するために、識別された構造とプロセス入力にも依存する。パラメータ評価器が新しいパラメータ評価を生ずるためには、パラメータ評価器はモデル出力とプロセス出力を採用せねばならない。プロセス出力とプロセス入力は構造識別器へ供給せねばならない。それらの制約を心に留めて、当業者が利用できるソフトウェアまたはハードウェア構成技術に従って構成できる。
【００３４】
最初のパラメータ評価器
１９９０年１０月１０日に出願された米国特許出願Ｎｏ．０７／５９４，９２７に記載されているように、ニューラルネットワークを用いてパラメータ評価の説明を行う。最初のパラメータ評価が正確であればあるほど、どのような最適化技術も満足できる最適化をより迅速に行うことができることは周知である。良い最初のパラメータ評価を用いて時間と、費用のかかるマシンサイクルすなわち処理の大幅な節約を行うことができることが見出されている。パラメータを発生するために前記米国特許出願に記述されている技術を用い、かつ構造的に識別されたシステムにおける各パラメータに対してその技術を用いることにより、満足できる結果を達成できた。
【００３５】
次に図８を参照する。この図に示されている制御装置およびプロセスインターフェイスダイアグラム６０を参照して最初の解決評価について説明する。制御中のシステムまたはプロセスにおいてｕｐ  と出力ｙｐ  がモニタされる。それらの入力と出力はフィードフォーワードニューラルネットワーク５１へ入力として供給される。そのニューラルネットワークは前述したニューラルネットワークと類似し、最初のパラメータ評価を行うものとして用いられる。同じニューラルネットワークが、パラメータ評価ｐを供給すると同時に、構造を出力として識別するための構造インデックスｓを発生できる。それらの出力ｓとｐは、非線形最適化の機能（帰還型機能または反復型機能）を行うボックス５２へ供給される。ボックス５２は入力としてＵｐ、Ｙｐ  も受ける。
【００３６】
図５を参照して、ボックス５２はボックス４２、４３に類似するが、ニューラルネットワーク５１により発生される最初のパラメータ評価を使用して、パラメータの最終評価をもたらすため、その最適化を行う。ボックス５１からの出力ｓとｐは、希望により、マン−マシンインターフェイス５３へ供給することもできる。その解析は制御器、または制御中のシステムあるいはプロセスを改良するという目的を有することができる。希望によっては、マン−マシンインターフェイス５３に対する知能インターフェイスとして警報装置５４を動作させることができる。マン−マシンインターフェイス５３はシステムまたはプロセスへの直接制御入力を有することができる（この説明の初めで用いた簡単な例においてカーテンを閉める人のような）。
【００３７】
制御器５５は最適化ボックス５２からの出力ｐ＊  すなわち本発明による構造識別およびパラメータ評価が成された後の出力にしたがって動作する。この出力ｐ＊  はマン−マシンインターフェイスへも供給でき、かつ希望によっては警報装置を介して供給することもできる。出力ｐ＊  は、図５のボックス４３に等しいボックス５２の部分の最適化された出力である。したがって、出力ｐ＊  は、ＵＰ  とＹＰ  の間の関係であるカーブに最も正確に適合するパラメータセットである。それらのパラメータは翻訳器５６を介して制御器５５へ供給される。その翻訳器は制御中のシステムすなわちプロセスへの制御入力である出力ｕｃ  を発生するために制御器により求められるようにしてデータを翻訳する。
【００３８】
ネットワークのオンライン調整
一般的なプロセスダイナミックモデル４２により発生された結果、すなわち、ｙｍ  も出力とともにとられる入力値  ｕ＊ｐ  と評価されたパラメータ（ｐ）が、実在世界に適合するトレーニングセットを供給する。すなわち、シミュレータがトレーニングデータ発生器に等しいとすると、そのデータは一致し、トレーニングデータを強め、拡大するためにニューラルネットワークへの入力として使用できる。したがって、システムの動作中にネットワーク自体をオンラインでトレーニングできる。このトレーニングは、パラメータ評価のために用いられる時に最も強力である。というのは、それはより正確なパラメータｐ０  または最初のパラメータの発生を許すからである。
メモリによる最適化
最適化は科学および技術のあらゆる分野にあまねく存在する。したがって、ここで説明する最適化技術は広い応用性を有する。一般的な意味では、２つの変数ｘとｐのある関数Ｅ（ｘ，ｐ）の最小化（または最大化、しかし、それはここでは重要ではない）を必要とする問題へ応用できる。それらの変数は、任意の次元を有するスカラーまたはベクトルとすることができる。上記パラメータ評価応用においては、ｘはプロセス入力ベクトルｕｐ  とプロセス出力ベクトルＹｐ  との組み合わせであり、ｐは依然としてパラメータベクトルであり、関数Ｅはプロセス出力ベクトルｙｐ  と、プロセス入力ベクトルｕｐ  とｐから計算されたモデル出力ｙｍ  との間の一致度である。
システム識別の特定の応用またはより一般的な応用のいずれにおいても、ｘは与えられるものと仮定する。そうすると、問題はＥ（ｘ，ｐ）が最小になるｐの値を求めることである。たとえば、ＥをＥ（ｘ，ｐ）＝ｘ２  ＋２ｘ３ｐ＋ｐ１／２＋ｓｉｎ（ｐｘ）  のような関数とすることができる。（この例においては簡単にするためにｘとｐをスカラー量とする。）
【００３９】
ほとんど全ての非線形式Ｅに対して、Ｅの最適化は閉じた形の解析解を持つ必要はない。問題を解くためには反復最適化法を必要とする。ほとんどの実際の場合には、ｐの次元は１または２より大きく、したがって強力な計算力を必要とする。その計算力の必要性はここで説明する最適化により大幅に低くできる。ｐの次元に加えて、非線形最適化問題を解くために要求される計算力は、スタート点すなわち最初のｐ評価；Ｐ０  の等価性に強く依存する。Ｐ０  が（未知の）最適点すなわち解点ｐ＊  に近いとすると、その点ｐ＊  への最適化の収束は迅速である。しかし、スタート点と解点が近くないとすると、解を求めるために必要とされる計算資源と、任意の最適化法による最適化とする時間は、多くの応用において、実行できないほど大きく、長い。任意の最適化問題を与えられて良いスタート点を発生することは困難であり、通常の最適化法においては、その問題を解くための努力はほとんど、または全く費やされない。その代わりに、スタート点は典型的には任意である。本発明はこの従来の１段階法を２段階法で置き換えるものである。その２段階法のために種々の実施例を使用できる。
もちろん、第１の段階は良いスタート点、ｐ０  ＝Ｆ＊Ｍ（ｘ）を発生することである。ここで、Ｆ＊Ｍ（ｘ）は、ベクトルｘを与えられてｐの初期値の評価を生ずる機能すなわちマッピングである。それから、「ｐのどの値が関数Ｅ（ｘ，ｐ）を最小、すなわち、ｐ＊  ＝ａｒｇｐｍｉｎＥ（ｘ，ｐ）  にするか」という質問により記述される最適化法に対するｐの初期値としてその評価を使用できる。この最適化法は「修正器」として機能する。
【００４０】
この技術の鍵はＦ＊Ｍ（ｘ）の定義である。この表現自体は最適化プロセスの結果として実現でき、その最適化プロセスでは最適化は可能な関数Ｆ：
【００４１】
【数２】
0003556956.tif 000003
【００４２】
である。ここで、この式は、ある入力が与えられた際の実際の出力とパラメータを持ち同じ入力が与えられた構造の出力との差を最小にするものである。ｐ＊は複数のトレーニングデータ｛ｘ，ｐ＊｝において識別された最適値を表し、ＦＭ（ｘ）は可能な関数の空間を示す。なお、この形式の数式は当業者に良く知られており、この式の背景および動作などの詳細は本明細書に記載されている文献に示されている。
すなわち、ｘ，ｐ＊  のセットを与えられると、（与えられた）最適値ｐ＊  と、関数（構造）の出力がそのセットに関して最小にされる。この最適化問題のためのトレーニングセットとしては｛ｘ，ｐ＊  ｝が好ましい。ｘベクトルすなわち初期値を無作為に（またはある命令により）選択し、修正器を（無作為なスタート点で）用いて対応するｐ＊  ベクトルを見出すことにより、シミュレーションで集められる。トレーニングセットの収集段階と関数最適化プロセスを共にオフラインで行うことができることに注目することが重要である。したがって、妥当な限界内で、それらの計算作業のために求められる計算資源についての実際的な関心がほとんどない。探さねばならない大きい機能スペースを形成および開発するための系統的な技術を次に説明する。
【００４３】
非線形ニューラルネットワークおよび管理される学習アルゴリズムにより、魅力的で効率的な解が得られる。後方伝播学習規則のような学習アルゴリズム（ネイチャー（Ｎａｔｕｒｅ）３２３号、１９８６年１０月９日号、所載のルメルハート（Ｒｕｍｅｌｈａｒｔ）他の論文「後方伝播誤りによる学習表現（Ｌｅａｒｎｉｎｇ  Ｒｅｐｒｅｓｅｎｔａｔｉｏｎｓ  ｂｙ  Ｂａｃｋ−Ｐｒｏｐａｇａｔｉｎｇ  Ｅｒｒｏｒｓ）」に記載されている）、または動径ベース関数（Ｒａｄｉａｌ  Ｂａｓｉｓ  Ｆｕｎｃｔｉｏｎｓ）（ニューラル・コンピューテーションズ（Ｎｅｕｒａｌ  Ｃｏｍｐｕｔａｔｉｏｎｓ）１、１９８９年、２８１〜２９４ページ所載のムーディ（Ｍｏｏｄｙ）およびダーケン（Ｄａｒｋｅｎ）の論文「局部的に学習される処理装置のネットワークにおける高速学習（ＦａｓｔＬｅａｒｎｉｎｇ  ｉｎ  ｎｅｔｗｏｒｋｓ  ｏｆ  Ｌｏｃａｌｌｙ−Ｔｕｎｅｄ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔｓ）」に記載されている）を採用できる。それらのアルゴリズムは、トレーニングセットにおけるネットワークの出力の誤りを最小にするように、接続重みのようなネットワークパラメータを決定する。式
【００４４】
【数３】
0003556956.tif 000004
【００４５】
において、関数ＦＮＮは、入力ｘが供給された時にパラメータｗを持つネットワークにより実現される関数である。先に述べたｐとｐ＊の関係と同様に、ｗ＊  がひとたび知られると、上記一般的な場合に類似して、ｐ＊  の最初の評価を行うことができる。したがって、ｐ０＝ＦＮＮ（ｗ＊  ，ｘ）である。パラメータｗは単にニューラルネットワークのパラメータであることに注目すべきである。それらは、ネットワークの構成に応じて、個々の接続重みを表し、または他のパラメータを表わすことができる。
【００４６】
トレーニングされたニューラルネットワークの実行速度は、簡単なハードウェアで走るソフトウェアでネットワークが構成されているような簡単なハードウェアでも高速である。他方、トレーニングアルゴリズムは時間が非常にかかる。しかし、あまりトレーニングされていないネットワークを精密に調整するために用いられるものとすると、オンライントレーニングが可能である。最適化装置は、動作中に「一貫した」ベクトルｘとｐ＊  を発生するから、このデータをオンライントレーニングのために使用できる。採用される学習アルゴリズム、またはこの分野において使用する他のいくつかのアルゴリズムを、トレーニングされたネットワークと共に取り扱わねばならない。
【図面の簡単な説明】
【図１】基本的な開ループ制御装置の概念的なブロック図である。
【図２】基本的なループ制御装置のブロック図である。
【図３】時間との関係を示す応答カーブのグラフである。
【図４】２レベルシステム識別器の基本的な素子のブロック図である。
【図５】２レベルシステム識別器の一層詳しいブロック図である。
【図６】装置の一連のスイッチと、構成されたブロック／部品のブロック図である。
【図７】構造識別器およびパラメータ評価器のブロック図である。
【図８】制御される装置のブロック図である。
【図９】システムシミュレーションのブロック図である。
【図１０】ニューラルネットワークトレーニングのブロック図である。
【符号の説明】
１１  装置
１２  制御器
２２  応答パラメータ分類器
２５  パラメータ評価器
４１  ダイナミック構造識別器
４３  非線形パラメータ識別器
【図１】
0003556956.tif 000005
【図２】
0003556956.tif 000006
【図３】
0003556956.tif 000007
【図４】
0003556956.tif 000008
【図５】
0003556956.tif 000009
【図６】
0003556956.tif 000010
【図７】
0003556956.tif 000011
【図８】
0003556956.tif 000012
【図９】
0003556956.tif 000013
【図１０】
0003556956.tif 000014