(57)【特許請求の範囲】
【請求項１】
制御対象の特性を制御する制御系の制御特性に影響を及ぼす係数を用いて複数の染色体を生成し、
各染色体に対して動作シミュレーションを行い、動作シミュレーションによる制御対象の動作シミュレート結果を使用者に数字又は視覚表現で表示し、
表示された動作シミュレート結果に基づいて使用者が染色体の淘汰を行い遺伝的アルゴリズムにより染色体を進化させ、
進化後の染色体に基づく前記係数を用いて制御対象の制御を行うことができるようにした
ことを特徴とする進化的制御方式。
【請求項２】
前記動作シミュレーションを外部装置で行うことを特徴とする請求項１に記載の進化的制御方式。
【請求項３】
前記外部装置がパーソナルコンピュータであり、動作シミュレーションをシミュレーションソフトを用いて行うことを特徴とする請求項２に記載の進化的制御方式。
【請求項４】
進化により得られた制御系の制御特性を保存し、保存した制御特性を呼び出して、その制御特性を再現できるようにした
ことを特徴とする請求項１〜３の何れか一項に記載の進化的制御方式。
【請求項５】
制御対象が車両用エンジンであり、制御系の制御特性が、エンジンの燃料噴射量、点火時期、電子スロットル開度、吸排気バルブタイミング、バルブリフト量、及び／又は吸排気制御バルブタイミングの特性である
ことを特徴とする請求項１〜４の何れか一項に記載の進化的制御方式。
【請求項６】
制御対象が車両であり、制御系の制御特性が、車体のサスペンション又はシートのダンパの特性である
ことを特徴とする請求項１〜４の何れか一項に記載の進化的制御方式。
【請求項７】
制御対象が電気モータ或いはエンジンを補助動力とする自転車又は車イスであり、制御系の制御特性が前記電気モータ或いはエンジンのアシスト特性である
ことを特徴とする請求項１〜４何れか一項に記載の進化的制御方式。
【請求項８】
制御対象がパーソナルロボットであり、制御系の制御特性がパーソナルロボットの動作特性である
ことを特徴とする請求項１〜４の何れか一項に記載の進化的制御方式。
【請求項９】
通信手段を用いて複数の使用者の外部装置を接続し、
各外部装置において染色体の動作シミュレーションを用いた進化計算を並列的に行う
ことを特徴とする請求項２〜８の何れか一項に記載の進化的制御方式。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、制御対象の特性を進化的に制御する進化的制御方式に関する。
【０００２】
【従来の技術】
従来から、車両や家電製品等の製品の特性を制御する場合、制御対象となる製品の特性は、開発・設計段階で、その製品を使用すると思われる使用者を想定し、その仮想使用者の好みや使用状況を加味し、できるだけ広い範囲の使用者に適応するように決められる。
【０００３】
【発明が解決しようとする課題】
しかし、上記した製品を使用する使用者は、個々に特有の個性を持っており、その好みも千差万別であるため、前記したように、その製品を使用すると思われる使用者の好み等を想定して製品の開発・設計を行ったとしても、必ずしも複数の使用者が満足する特性を提供できるとは限らないという問題がある。
上記した問題を解決するために、現在は、使用者が製品購入前に、その製品の特性を確認し、特性が自分の満足するものであるか否かを判断することが行われているが、この購入前の製品の特性の確認は使用者にとって煩わしいものである。また、基本的に同一製品は同じ特性で制御されることが多いため、例えば、製品のデザインは気に入っているのに特性が気に入らないために、その製品の購入を断念せざるえない等、特性により製品の選択範囲が制限されるという問題も生じる。
本発明は、上記した従来の問題点を解決し、複数の使用者が満足し得る特性を実現できる進化的制御方式を提供することを目的としている。
【０００４】
【課題を解決するための手段】
上記した課題を解決するために、本発明に係る進化的制御方式は、制御対象の特性を制御する制御系の制御特性に影響を及ぼす係数を用いて複数の染色体を生成し、各染色体に対して動作シミュレーションを行い、動作シミュレーションによる制御対象の動作シミュレート結果を使用者に数字又は視覚表現で表示し、表示された動作シミュレート結果に基づいて使用者が染色体の淘汰を行い遺伝的アルゴリズムにより染色体を進化させ、進化後の染色体に基づく前記係数を用いて制御対象の制御を行うことができるようにしたことを特徴とするものである。
【０００５】
【発明の実施の形態】
以下、本発明に係る進化的制御方式の実施の形態を添付図面に示した一実施例を参照して説明する。
図１は本発明に係る進化的制御方式の基本概念を示すブロック図である。
図面に示すように、この進化的制御方式は、反射層、学習層、及び進化シュミレート層から成り、外部から制御すべき制御対象の作動状態に関する情報を入力し、この入力情報に基づいて反射層で制御基本量を決定し、かつ学習層で基本補正量を決定し、これら出力から制御対象に対する制御出力を決定する。進化シュミレート層は、使用者の指示に基づいて制御対象の動作シュミレーションを行いながら使用者の好みに合った最適制御モジュールを生成し、その最適制御モジュールを学習層に学習させる。
以下、進化的制御方式を実行する各手段の働きについて説明する。
反射層は、制御すべき制御対象の作動状態に関する情報（以下、外界情報と称する）と、外界情報に対する制御基本量との関係を数式、マップ、ファジールール、ニューラルネットワーク、又はサブサンプションアーキテクチャ等の形式の制御系で予め備えている層であり、外界情報が入力されると、上記した制御系から入力された外界情報に対する制御基本量を決定して出力する。尚、前記サブサンプションアーキテクチャとは、並列的な処理を行う行動型人工知能として公知である。
学習層は、学習用と実行用とに入れ替え可能な二つの制御系を備え、一方の制御系（実行用）で制御を実行している間、他方の制御系（学習用）で進化シュミレート層から進化した最適制御モジュールを学習し、学習が終了すると、制御を実行している制御系と学習後の制御系とを入れ替え、学習後の制御系での制御を開始する。
尚、この学習層における制御系は初期状態ではゼロを出力するように設定されており、従って、初期状態では反射層の出力のみで制御対象の制御が行われる。
進化シュミレート層は、進化演算部、動作シュミレーション部、表示部、及び指示入力部を備えている。進化演算部は、評価系と進化適応系からなり、進化適応系は、反射層で決められた制御基本量を使用者の好み及び／又は使用環境に合わせるように補正するための少なくとも一つの制御モジュールを備え、この制御モジュールを評価系からの指示に基づいて遺伝的アルゴリズムにより進化させる。遺伝的アルゴリズムにより進化した制御モジュールは、動作シュミレーション部によりシュミレートされ、その結果を表示部に表示する。使用者はシュミレート結果の評価を行い、指示入力部を介して、進化演算部の評価系に評価結果を入力する。評価系は、進化適応系の制御モジュールを評価結果に沿ってさらに進化させる。進化シュミレート層は、上記した処理を繰り返し、その時点で最も使用者の指示に合った最適制御モジュールを獲得し、その結果を学習層の学習用制御系に学習させる。尚、前記制御モジュールとは、制御系のあるまとまった制御を行う一単位をいう。
学習層では、その学習用制御系で学習した最適制御モジュールをＩＣカードやフロッピーディスク等の外部記憶手段に保存させ、必要に応じて、外部記憶手段から過去に保存した最適制御モジュールを読み出して、好ましい最適制御モジュールによる制御を実行できるようにしている。
上記した各手段の働きにより、この進化的制御方式からの制御出力は、制御すべき制御対象を使用する使用者の指示によって刻々と変化し、その結果、制御対象は使用者の指示に適応した特性に刻々と変化していく。本明細書では、この進化的制御方式により制御対象の特性が使用者の指示に適応した特性に進化していく状態を「調教」と称する。
【０００６】
図２は、上記した進化的制御方式を経時的に示すフローチャートである。
始めに使用者からの進化開始の指示が有るか否かを判断し、使用者からの進化開始指示が入力されると以下の進化処理を開始する（ステップａ）。
使用者からの進化開始指示が入力されると、進化シュミレート層は、その進化演算部で、進化適応系の制御モジュールから幾つかの選択用制御モジュールを生成し、各制御モジュールに対して動作シュミレート部で動作シュミレーションを行う。動作シュミレーションの結果は、表示部で使用者に対して視覚的、又は聴覚的手段等により表示される。使用者は、表示部での表示結果に基づいて、選択用制御モジュールの評価を行い、その中から好みの制御モジュールを選択し指示入力部に入力する。指示入力部に入力された使用者の評価結果は進化演算部の評価系に送られ、評価系は、評価結果に基づいて進化適応系に、評価結果に沿った選択用制御モジュールをさらに生成させる（ステップｂ）。
上記した処理を繰り返すことにより、進化シュミレーション層で、その時に使用者の望む最も最適な制御モジュールを獲得する（ステップｃ）。
進化シュミレート層で得られた最適制御モジュールは、学習層の学習用制御系により学習され、学習層では、学習用制御系での学習が終了すると、学習用の制御系と、それまで実行用であった制御系を入れかえ（ステップｄ）、その後は、学習後の実行用制御系で、外界情報に基づいて基本補正量を決定し、反射層の制御基本量の補正を行う（ステップｅ）。尚、学習層の出力は初期状態ではゼロに設定され、従って、初期状態では反射層からの制御基本量のみで制御対象に対する制御出力が決定されている。
【０００７】
図３は、制御対象を実際に動作させることにより進化処理中の評価を行う制御手段と、前記進化シュミレート手段とを組み合わせた制御システムの実施例の概念図を示している。
制御手段は、進化適応層、学習層、及び反射層から成る。
反射層及び学習層の機能は基本的には、図１及び図２で説明した実施例の処理と同じである。
進化適応層は、評価系と進化適応系を備え、使用者の指示に基づいて処理を開始する。進化適応層は、処理を開始すると、使用者の指示又は使用者の意志を評価し得る情報を評価系で入力し、進化適応系は、その制御モジュールから使用者の指示に沿って幾つかの選択用制御モジュールを生成する。進化適応層は、これら選択用制御モジュールに基づいて制御対象を実際に動作させ、その動作結果に基づく使用者の評価を評価系で入力し、評価結果に沿って選択用制御モジュールの淘汰を行い、残った制御モジュールから遺伝的アルゴリズムにより、さらに選択用制御モジュールの生成を行う。進化適応層は、上記した処理を繰り返すことにより、その時点て使用者の指示に最も合った最適制御モジュールを獲得し、進化適応系の制御モジュールを最適制御モジュールに固定する。進化適応層は、その後、最適制御モジュールに基づいて補正値（以下、この補正値を進化補正値と称する。）を出力して、反射層から出力される制御基本量を補正する。学習層では、進化適応層が最適制御モジュールに固定された時の進化適応層の入出力関係と学習層の実行用制御系の入出力関係を学習用制御系で合わせて学習する。この間、制御対象の制御は、反射層、学習層の実行用制御系、及び進化適応層により実行される。尚、初期状態においては、学習層からの出力はゼロに設定されている。反射層からの制御基本量に学習層における学習用制御系の出力（以下、この出力を仮想補正量と称する。）を加えた値と、実際の制御出力（制御基本量＋学習層の実行用制御系の補正量（以下、この補正量を基本補正量と称する。）＋進化補正量）との差がしきい値より小さくなった時点で学習層における学習用制御系は学習を終了し、学習用制御系と実行用制御系とが入れ替わって、学習後の制御系が実行用として機能し、制御を実行していた制御系が学習用として機能し、反射層と学習層とによる制御が行われる。
進化適応層は、最適な制御モジュールに関する情報を学習層に学習させた後は、その出力をゼロに固定し、以後は、使用者からの進化開始指示が入力されるまで待機する。
進化シュミレート手段は、使用者の指示に基づいて図１及び図２で説明した進化シュミレート層と同様の処理を行うように構成されている。
上記した構成により、使用者は、制御モジュールの進化処理を実際に制御対象を動作させた結果に基づいて行うか、又は動作シュミレーションによるシュミレート結果に基づいて行うかを選択することが可能になり、より使用者及び使用環境に基づいた進化的制御を実行することが可能になる。
【０００８】
次に、進化的制御方式によって車両用エンジンを制御する実施例に基づいて、進化的制御方式について、さらに具体的に説明する。
図４は、エンジン１と前記進化的制御方式を実行する制御システム１０との関係を示す概略図である。
図面に示すように、この制御システム１０は、エンジン回転数、スロットル開度、吸気温度、大気圧、空燃比（Ａ／Ｆ）、及び車速等の情報を入力し、これらの入力情報に基づいてインジェクタ３の噴射時間、点火プラグ５の点火時期、及び吸気バルブ７のバルブタイミングを制御して、燃費性能と加速性能の両立を図ったエンジン制御を行う。
図５は、前記制御システム１０の概略ブロック図である。
この制御システム１０は、反射層、学習層、及び進化適応層から成る制御装置１３と、進化処理を動作シュミレーションにより行う進化シュミレーション手段１５と、外部記憶手段１７とを備え、使用者に指示に基づいて、制御装置１３の進化制御層又は進化シュミレーション手段１５の何れかで進化処理を行えるように構成されている。
【０００９】
（制御装置１３について）
始めに制御装置１３について詳細に説明する。
反射層は、エンジン回転数、スロットル開度、吸気温度、及び大気圧等を入力して、これらの入力信号に基づいて予め決められた数式をモデル化した方程式からインジェクタ３の噴射時間、点火プラグ５の点火時期、及び吸気バルブ７のバルブタイミングを制御する制御基本量を決定して出力する。
進化適応層は、評価系と進化適応系とから成る。
図６は、進化適応層及び学習層の基本動作のフローチャートである。以下、このフローチャートを参照して進化適応層及び学習層の基本動作について説明する。
・ステップ１：初期集団（第１世代）の生成
進化適応系は図７に示すように、エンジン回転数、スロットル開度、吸気温度、及び大気圧を入力し、燃料噴射補正量、点火時期補正量、及びバルブタイミング補正量を出力する４入力３出力式の階層型ニューラル回路網から成る制御モジュールを備えており、使用者からの進化開始指示が入力されると、そのニューラル回路網の結合係数を遺伝子として乱数を用いてコーディングし、複数の個体（本実施例では９個の個体１〜９）、即ち複数の染色体からなる第１世代を生成する。尚、前記個体とは、遺伝的アルゴリズムの中の一個の染色体をいう。各個体の遺伝子の値（即ち、ニューラル回路網の結合係数の値）の初期値は予め決められた範囲内（ほぼ−１０〜１０の間）でランダムに決定する。またこの時、全ての遺伝子（結合係数）の値が０になる個体を一つ生成することで、進化の過程で進化前の性能を下回らないようにすることができる。
・ステップ２：適応度の評価
次に、反射層及び学習層の出力に第１世代における１番目の個体１の結合係数を用いた進化適応層の出力（以下、この出力を仮補正量と称する。）を足し合わせた値を用いて燃料噴射量、点火時期、吸気バルブのタイミングを制御する。この時の進化適応層の出力である仮補正量Ｙは、前記個体１の結合係数を適用したニューラル回路網に、その時のエンジン回転数、スロットル開度、吸気温度、及び大気圧を実際に入力してニューラル回路網の出力ｘを決定し、さらにこの出力を次式（１）を用いて線形変換して得られる。また、エンジン回転数等の入力情報は正規化したものを用いる。
Ｙ  ＝  ２×Ｇｘ−Ｇ        （１）
ここで、Ｙは仮補正量力、ｘはニューラル回路網の出力、Ｇは進化適応層出力ゲインである。このように、ニューラル回路網の出力ｘを線形変換して用いることにより、進化適応層から出力される補正量の値が極端に大きくなることがなく、全体として進化がすこしづつ進むようになり、エンジンの挙動が評価や進化のために極端に変動することがなくなる。
そして、進化適応層から個体１を用いた仮補正量Ｙを出力したままの状態で、しばらく走行し評価系に評価用情報（空燃比及び車速等）を入力する。評価系では、この評価用情報に基づいて、個体１を用いて制御されたエンジンのトルク及び燃費を求め、個体のトルク及び燃費に関する特性を図８に示す表現方法を用いて、例えばメータ部等に設置されたディスプレイ上に表示する。図８（ａ）〜（ｃ）は個体の評価の表現方法の一例を示す図であり、各図において四角形の横幅はトルクの大きさを、色（濃淡）は燃費を示し、また、縦幅は速度を三段に分割して示している。トルクは横幅の大きさに比例して大きくなり、また燃費は色の濃さに比例して良くなり、また、速度は、上段が高速、中段が中速、そして、下段が低速を表している。
上記した個体の評価は、集団、即ち第一世代の全ての個体に対して行われ、各個体の評価は、図９に示すように同時に一画面に表示される。
・ステップ３：使用者による評価及び淘汰
９個の個体１〜９の全てに対する特性の表示が終了すると、制御は一度評価モードに入る。この評価モードでは、使用者がディスプレイ上に表示された９個の個体を次々に選択し、進化適応層では、そのニューラル回路網を使用者に選択された個体の結合係数に一時固定して、選択された個体による制御を行う。これにより、使用者はディスプレイ上に表示された９個の個体の特性を、実際に走行した乗り心地等から判断し、各個体の適応度を乗り心地から評価する。
使用者は、ディスプレイ上に視覚表現されたトルク・燃費特性と、実際に走行した時の乗り心地とに基づく各個体の適応度の評価を終了した段階で、制御を淘汰モードに切り替え、第１世代の個体の淘汰を行う。この淘汰は、例えば、ディスプレイを淘汰モードに切り替え、図９に示すように、ディスプレイをタッチすることにより、第１世代の個体の中から使用者に、好みの特性を持つ個体を幾つか選択させ、使用者に選択された個体を親個体として残し、それ以外の個体を消去することにより行われ得る。
・ステップ４：交叉
使用者による親個体の選択が終了すると、選択された親個体の中から乱数を用いて２個の親個体を選択し、これらに交叉演算を施して２個の子個体を生成する（図１０参照）。この処理を５回行うことにより、再び、９個の子個体からなる集団、即ち、第２世代が生成される（１０番目の子個体は捨てる）。
前記個体間の交叉には、例えば、１点交叉、２点交叉、又は正規分布交叉等の手法が用いられる。
正規分布交叉とは、実数値表現の染色体（個体）について、両親を結ぶ軸に対して回転対称な正規分布にしたがって子を生成する方法である。正規分布の標準偏差は、両親を結ぶ主軸方向の成分については両親間の距離に比例させ、その他の軸の成分については両親を結ぶ直線と集団からサンプルした第３の親との距離に比例させる。この交叉方法は、親の特質が子に引き継がれやすいという利点がある。
・ステップ５：突然変異
９個の子個体を生成した後、これらの子個体に対して、ある確率で遺伝子に突然変異を施し、結合係数に変位を与える（図１１参照）。
・ステップ６
ステップ２〜ステップ６までの処理を使用者が満足いく特性を持つ個体が得られるまで繰り返し行い、使用者は、満足いく個体が得られた時点で、その個体を最適個体とする指示を与え進化処理を終了させる。進化適応層は、使用者により最適個体が選択されると、そのニューラル回路網の結合係数を最適個体で固定する。進化適応層は、ニューラル回路網が最適個体で固定された後は、そのニューラル回路網により得られる実際のエンジン回転数等の入力情報に対する進化補正量による制御を行う。
進化適応層が進化補正量による制御を実行し始めると、学習層の学習用ニューラル回路網は、進化適応層の入力と出力との関係を、学習層の実行用として機能しているニューラル回路網の入力と出力との関係と合わせて学習する。この間、進化適応層の出力は、それ以前の評価関数を最大とした個体により行われ、制御則が時間的に変化することはない。
前記した学習では、進化適応層と学習層の実行用ニューラル回路網との入出力を、あるステップ幅で平均化し、これを入出力データとして教師データ集合の更新に用いる。例えば、１秒間の平均エンジン回転数が５０００ｒｐｍ、平均スロットル開度が２０、平均吸気温度が２８℃、平均大気圧が１０１３ｈＰａであった場合、これらと、その時の進化適応層及び学習層における実行用ニューラル回路網の出力（即ち、進化補正量及び基準補正量）を合わせたものを入出力データとして用いる（図１２参照）。この入出力データを、以前の教師データに加えて新しい教師データ集合を得る。この時、教師データ集合における新しいデータとのユークリッド距離が一定値以内の古い教師データは消去する。この様子を図１３に示す。また、教師データ集合の初期値は、すべての入力データに対して出力をゼロにしておく。
学習層では、更新された教師データ集合に基づいて、学習用ニューラル回路網の結合係数の学習を行う。前記結合係数の学習は、学習中の学習用ニューラル回路網の出力（即ち、仮想補正値）と反射層からの制御基本量とから得られる仮想制御出力と、実際の制御出力との間の誤差がしきい値以下になるまで行われ、この学習が終わると、学習用のニューラル回路網は実行用になり、もとの制御用のニューラル回路網が学習用となる。この後、学習層は新しく得られた実行用のニューラル回路網により基本補正量を決定して実際に出力し、同時に、進化適応層の出力はゼロになり、学習層と反射層とによる制御が行われる。
また、学習層の実行用のニューラル回路網の初期値は、出力が常にゼロになるように設定しておく。こうすることで、初期状態においては、反射層と進化適応層のみで制御をおこなうようにできる。
学習済みの実行用ニューラル回路網の結合係数は、フロッピーディスクやＩＣカード等の外部記憶媒体に記録し、保存、読み出しを可能とし、これにより、一度進化により得られた最適個体の特性を何時でも再現できるようにする。こうすることで、走行場所や道路状況あるいはその時の気分に合わせて、使用者の好みの特性を即座に実現てきるようになる。
【００１０】
（進化シュミレート手段１５について）
次に、進化シュミレート手段１５について説明する。
図１４は、進化シュミレート手段１５の構造を概念的に示す図である。図面に示すように進化シュミレート手段１５は、進化演算部、動作シュミレーション部、表示部、及び指示入力部を備えている。進化演算部は、評価系と進化適応系からなり、進化適応系は、エンジン回転数、スロットル開度、吸気温度、及び大気圧を入力し、燃料噴射補正量、点火時期補正量、及びバルブタイミング補正量を出力する４入力３出力式の階層型ニューラル回路網から成る制御モジュールを備えている（図７参照）。
以下に、図１５のフローチャートを参照しながら、進化シュミレート手段１５の基本動作について説明する。
・ステップ１：初期集団（第１世代）の生成
進化演算部の進化適応系は、使用者からの進化開始指示が入力されると、そのニューラル回路網の結合係数を遺伝子として乱数を用いてコーディングし、複数の個体（本実施例では９個の個体１〜９）、即ち複数の染色体からなる第１世代を生成する。各個体の遺伝子の値（即ち、ニューラル回路網の結合係数の値）の初期値は予め決められた範囲内（ほぼ−１０〜１０の間）でランダムに決定する。またこの時、全ての遺伝子（結合係数）の値が０になる個体を一つ生成することで、進化の過程で進化前の性能を下回らないようにすることができる。
・ステップ２：適応度の評価
次に、上記処理で得られた第１世代の１番目の個体の結合係数から、進化演算部で制御出力（燃料噴射量、点火時期、及びバルブタイミング）を演算し、その演算結果を動作シュミレーション部の制御パラメータとして用いて、走行シュミレーションを実行してトルク及び燃費を求め、個体に対する評価を行う。この結果を表示部に送り、表示部では個体のトルク及び燃費に関する特性を図８に示す表現方法を用いてディスプレイ上に表示する。個体の評価は、集団、即ち第一世代の全ての個体に対して行われ、各個体の評価は、図９に示すように同時に一画面に表示される。
・ステップ３：使用者による評価及び淘汰
９個の個体１〜９の全てに対する特性の表示が終了すると、使用者による第１世代の個体の淘汰が行われる。この淘汰は、例えば、ディスプレイを淘汰モードに切り替え、図９に示すように、ディスプレイをタッチすることにより、第１世代の個体の中から使用者に、好みの特性を持つ個体を幾つか選択させ、使用者に選択された個体を親個体として残し、それ以外の個体を消去することにより行われ得る。
・ステップ４：交叉
上記した使用者による選択結果は、指示入力部を介して進化演算部に送られ、進化演算部の評価系で、使用者により選択された親個体から乱数を用いて２個の個体を選択し、これらに交叉演算を施して２個の子個体を生成する（図１０参照）。この処理を５回行うことにより、再び、９個の子個体からなる集団、即ち、第２世代が生成される（１０番目の子個体は捨てる）。
前記個体間の交叉には、例えば、１点交叉、２点交叉、又は正規分布交叉等の手法が用いられる。
・ステップ５：突然変異
９個の子個体を生成した後、これらの子個体に対して、ある確率で遺伝子に突然変異を施し、結合係数に変位を与える（図１１参照）。
・ステップ６
ステップ２〜ステップ６までの処理を使用者が満足いく特性を持つ個体が得られるまで繰り返し行い、使用者は、満足いく個体が得られた時点で、その個体を最適個体とする指示を与え進化処理を終了させる。
進化シュミレート手段１３は、上記した処理により得られた、最適個体を適用した最適制御モジュールを、外部記憶手段１７に記憶させる。
制御装置１３の学習層では、必要に応じて、前記進化シュミレート手段１３で進化させた制御モジュールを読み込んで、その学習用ニューラル回路網に学習させ、学習終了後に、学習用ニューラル回路網を実行用に切り替えて、前記、進化シュミレート手段１３により得られた制御モジュールによる制御を実行する。
【００１１】
上記した制御装置１３及び進化シュミレート手段１５は、何れも使用者の指示に基づいて進化処理を行う。従って、使用者が、進化処理を行う時に、実走行による評価を行うか、動作シュミレーションの結果による評価を行うかを選択して、制御装置１３の進化適応層又は進化シュミレート手段１５の何れかを作動させることで、制御装置１３の進化適応層又は進化シュミレート手段１５の何れかで制御モジュールの進化処理が行わる。
図１６は、制御システム１０における学習前の出力と、上記制御装置１３の進化適応層又は上記進化シュミレーション手段１５から最適制御モジュールを学習した後の出力との比較を燃料噴射パルスを例に挙げて示す比較図である。この図１６に示すように、上記した制御装置１３の進化適応層又は進化シュミレーション手段１５による進化処理により、エンジンは、使用者の好みに合わせてドライバビリティ性能重視型又は燃費性能重視型に調教されていく。
【００１２】
上記したように、制御装置１３に進化適応層を設け、かつ制御装置１３の外部装置として進化シュミレート手段１５を設けることにより、使用者が、進化処理を行う時に、実走行による評価を行うか、動作シュミレーションの結果による評価を行うかを選択することが可能になり、より使用者及び使用環境に基づいた進化的制御を実行することが可能になる。
また、進化シュミレート手段１５では、実走行を行わずに、進化を実行するので、使用者が各個体毎に実際に走行して評価を行う等の手間を省くことができ、かつ、進化をより速く行うことができる。
さらに、進化シュミレート手段１５では、動作シュミレーションによる進化を行うので、使用者が実際に走行したことのない使用環境での制御を、予め予測して進化させておくことができる。
また、進化シュミレート手段１５を設けることにより、例えば、他人の進化させたエンジン等を自分の車両に適用して走行を行うことが可能になり、制御の多様性が拡がる。
さらに、進化シュミレート手段１５を例えば、図１７に示すように、インターネット等の通信手段で他人の進化シュミレート手段と結び、進化シュミレート手段における個体の適応度の評価を、個体別に並列計算させ処理速度を向上させることも可能になる。また、このように複数の進化シュミレート手段を結ぶと、個体数が増えるので、進化の多様性が向上し、よりよい進化を得ることも可能になる。また、進化シュミレート手段１５は、専用のシュミレート装置で構成することもできるが、適当なシュミレーションソフトを備えたパーソナルコンピュータでも構成することができ、このように、パーソナルコンピュータで進化シュミレート手段を構成すると、高価な専用シュミレート装置を購入する必要がなくなるという効果を奏する。
【００１３】
以上説明した第３の実施例では、進化的制御方式の制御対象として車両用エンジンを適用しているが、この進化的制御方式の適用対象は本実施例に限定されることなく任意のものでよく、例えば、車体のサスペンションやシートのダンパー特性の制御又は、電気モータやエンジンを補助動力とする自転車或いは車イスにおける補助動力のアシスト特性、又はパーソナルロボットの動作特性（きびきびした動作やのんびりした動作）の制御に適用してもよい。
また、上記第３の実施例では、制御出力として噴射時間、点火時期、及び吸気バルブタイミングを用いているが、制御対象としてエンジンを適用する場合の制御出力は上記の他、例えば、電子スロットル開度、バルブリフト量、排気バルブタイミング、又は吸排気制御用バルブタイミング等が考えられ得る（図４参照）。ここで、吸気制御用バルブとは、タンブル及びスワールの制御を行うために吸気管に設けられるバルブであり、また、排気制御バルブとは、排気脈動を制御するために排気管に設けられるバルブである。
さらに、上記第３の実施例では、学習層を階層型ニューラル回路網で構成しているが、学習層の制御系の構成は本実施例に限定されることなく、例えば、ＣＭＡＣ(Cerebellar Model Arithmetic Computer)を用いてもよい。ＣＭＡＣを用いる利点としては、階層型ニューラル回路網に比べて、追加学習の能力が優れていること、学習が高速である等が挙げられる。
また、上記第３の実施例では、進化シュミレート層１５を外部装置として設けているが、これは本実施例に限定されることなく、例えば、反射層、学習層、及び進化適応層等から成る制御手段に含まれてもよい。
さらにまた、上記実施例では、使用者が遺伝的アルゴリズムによる染色体の淘汰を行うように説明しているが、前記染色体の淘汰、即ち、遺伝的アルゴリズムによる進化処理を行う者は使用者に限定されるものではなく、例えば、エンジン等の制御対象の製造業者が使用者からの依頼に応じて行ってもよく、また、製造・販売業者等が販売前に独自に行ってもよいことはいうまでもない。
【００１４】
【発明の効果】
以上説明した本発明に係る進化的制御方式によれば、制御対象の特性を制御する制御系の制御特性に影響を及ぼす係数を用いて複数の染色体を生成し、各染色体に対して動作シミュレーションを行い、動作シミュレーションによる制御対象の動作シミュレート結果を使用者に数字又は視覚表現で表示し、表示された動作シミュレート結果に基づいて使用者が染色体の淘汰を行い遺伝的アルゴリズムにより染色体を進化させ、進化後の染色体に基づく前記係数を用いて制御対象の制御を行うことができるようにしているので、制御対象の特性を動作シミュレーションを行いながら任意の特性に設定することができ、複数の使用者がそれぞれ満足する特性を実現することができる。
また、進化を実現する手段として遺伝的アルゴリズムを用いているので、制御対象の進化を効果的に行うことができる。
また、遺伝的アルゴリズムの評価を動作シミュレーションにより行うので、進化処理中に制御対象を実際に動作させる必要がなく、制御対象の進化を手軽にかつ、手早く行うことができる。
さらに、染色体の淘汰を使用者が行えるので、出荷後に製品の特性を使用者の好みに合わせて変えることができ、使用者毎にカスタマイズされたユーザフレンドリな製品を提供することができるという効果を奏する。
また、制御対象の特性を、使用者が自分の意志に基づいて変更することができるので、使用者の製品購入時の選択範囲を製品の特性が制限することがなくなり、また、使用者に製品を自分独自の特性をもつ製品に調教するという意識上の楽しみを与えることができるという効果を奏する。
さらに、動作シミュレート結果を使用者に数字又は視覚表現に表示するため、使用者が、淘汰作業において製品の特性を表すデータを参考にでき、淘汰作業の負荷が軽減できるという効果を奏する。
また、請求項２に係る進化的制御方式によれば、動作シミュレーションを外部装置で行うので、制御対象のある場所に拘束されることなく、好きな場所で進化処理を行うことができる。
また、請求項３に係る進化的制御方式によれば、外部装置として一般家庭に広く普及されているパーソナルコンピュータを使用するため、別途効果なシミュレート装置を購入する必要がない。
さらに、請求項４に係る進化的制御方式によれば、使用者が気に入った特性の保存と呼び出しがいつでもできるため、その時の気分や環境に応じて制御対象の動作特性をすばやく変更することができる。
さらにまた、請求項５に係る進化的制御方式によれば、車両のエンジン特性を使用者の好みに応じて自由に設定できるため、使用者毎に常に最適なエンジン特性を得ることができる。
また、請求項６に係る進化的制御方式によれば、車両のサスペンションやシートのダンパ特性を使用者の好みの応じて自由に設定できるため、使用者毎に常に最適な車体特性を得ることができる。
さらに、請求項７に係る進化的制御方式によれば、補助動力付き自転車や車イスのアシスト特性を使用者の好みの応じて自由に設定できるため、使用者毎に常に最適なアシスト特性を得ることができる。
また、請求項８に係る進化的制御方式によれば、パーソナルロボットの動作特性を使用者の好みの応じて自由に設定できるため、使用者毎に常に最適な動作特性を得ることができる。
さらに、請求項９に係る進化的制御方式によれば、通信により各使用者間の外部装置を接続することで、各外部装置において染色体の動作シミュレーションを用いた進化計算を並列的に行うことができるため進化速度を向上させることができ、また、個体数を増やすことが可能になるので、進化の多様性を向上させることができる。
さらに、使用者間で進化結果を手軽に共有利用することができる。
【図面の簡単な説明】
【図１】  本発明に係る進化的制御方式の基本概念を示すブロック図である。
【図２】  図１に示した進化的制御方式を経時的に示すフローチャートである。
【図３】  制御対象を実際に動作させることにより進化処理中の評価を行う制御手段と、進化シュミレート手段とを組み合わせた制御システムの実施例の概念図である。
【図４】  エンジン１と進化的制御方式を実行する制御システム１０との関係を示す概略図である。
【図５】  制御システム１０の概略ブロック図である。
【図６】  制御装置における遺伝的アルゴリズムによる進化適応層の進化と学習層の学習に関するフローチャートである。
【図７】  ニューラル回路網のコーディングを概念的に示す図である。
【図８】  （ａ）〜（ｃ）は各々個体の特性の視覚的表現方法を示す図である。
【図９】  ９個の個体からなる集団の特性の視覚的表現方法を示す図である。
【図１０】  個体間の交叉を概念的に示す図である。
【図１１】  個体の突然変異を概念的に示す図である。
【図１２】  教師データ集合が新しい教師データを獲得する状態を概念的に示す図である。
【図１３】  教師データ集合の更新を概念的に示す図である。
【図１４】  進化シュミレート手段１５の構造を概念的に示す図である。
【図１５】  進化シュミレート手段の動作のフローチャートである。
【図１６】  進化前と進化後の制御出力の比較をインジェクタの噴射パルスを例に挙げて示す図である。
【図１７】  複数の進化シュミレート手段をインターネット等の通信手段で接続した例を示す図である。
【符号の説明】
１      エンジン
３      インジェクタ
５      点火プラグ
６      吸気バルブ
１０    制御システム
１３    制御装置
１５    進化シュミレート手段
１７    外部記憶手段
【図１】
0003825845.tif 000002
【図２】
0003825845.tif 000003
【図３】
0003825845.tif 000004
【図４】
0003825845.tif 000005
【図５】
0003825845.tif 000006
【図６】
0003825845.tif 000007
【図７】
0003825845.tif 000008
【図８】
0003825845.tif 000009
【図９】
0003825845.tif 000010
【図１０】
0003825845.tif 000011
【図１１】
0003825845.tif 000012
【図１２】
0003825845.tif 000013
【図１３】
0003825845.tif 000014
【図１４】
0003825845.tif 000015
【図１５】
0003825845.tif 000016
【図１６】
0003825845.tif 000017
【図１７】
0003825845.tif 000018