首页 / 专利库 / 人工智能 / 人工生命 / Planning methods and planning apparatus

Planning methods and planning apparatus

阅读:976发布:2020-06-11

专利汇可以提供Planning methods and planning apparatus专利检索,专利查询,专利分析的服务。并且,下面是Planning methods and planning apparatus专利的具体信息内容。

(57)【特許請求の範囲】
  • 【請求項1】並列動作が可能な複数の処理装置を有し、
    与えられた問題を表現する目的関数の値を最小又は最大にする計画を立案する計画立案装置において、前記複数の処理装置が各々、同一時間経過に対し各々自律的に前記計画の最適化を図りながら自身の最適化進捗の状況を判断する計画評価手段と、所定時間連続して前記計画に変化が無い場合は、他の処理装置によって生成されたより優れた計画案を自身に取り込む自立淘汰手段とを備え、自律協調的に最適化を図ることを特徴とする、計画立案装置。
  • 【請求項2】計画対象となる問題について最小化又は最大化を図る項目を表す目的関数を作成し、該目的関数の最適値が得られる最適の計画を求める処理を並列に実行する最適化処理装置を備えた計画立案装置において、 前記最適化処理装置は並列処理を行う複数の処理装置によって構成され、前記各処理装置は、それぞれ、与えられた親計画案から予め定められた変異操作により新たに子計画を生成する計画変更手段と、前記親計画と前記子計画の比較評価、更新を行う計画評価手段及び自律的淘汰手段とを備え、 前記計画評価手段は、前記親計画と前記子計画の目的関数値の差分値を計算し、該目的関数値の差分が予め与えられた最適判断値より小さい場合には前記親計画を前記子計画に置換える処理を繰り返すと共に、該子計画が前記並列処理により得られた複数の計画案の中で最適な場合は、該子計画案をベスト計画案として登録し、前記差分値が前記最適判断値よりも大である時は、前記親計画を保持するよう構成され、 前記自律的淘汰手段は、当該処理装置における前記親計画の変更が連続して発生しなかった時間が、予め与えられた自律淘汰世代値と比較して大きい時は、前記ベスト計画案を該処理装置の新たな親計画として置換えるよう構成されていることを特徴とする計画立案装置。
  • 【請求項3】計画対象となる問題及びこの問題の解決に必要な変数の値を与える入力装置と、複数の処理装置からなり前記計画対象となる問題について最小化又は最大化を図る項目を表す目的関数を作成し、該目的関数の最適値が得られる最適の計画を求める処理を並列に実行する最適化処理装置と、前記最適の計画を出力する出力装置とを備えた計画立案装置において、 前記親計画と該親計画を漸化的に変異させて生成した子計画との評価値差分値とを比較し最適解に近い計画を決定するための最適判断値の情報を与える手段と、所定の値より長時間計画の変更が発生していない処理装置に自律的淘汰タイミングの判断を行わせるための自律淘汰世代値の情報を与える手段とを有し、 前記最適化処理装置は並列処理を行う複数の処理装置によって構成され、前記各処理装置は、それぞれ、与えられた親計画から予め定められた変異操作により新たに子計画を生成する計画変更手段と、前記親計画と前記子計画の比較評価、更新を行う計画評価手段及び自律的淘汰手段とを備え、 前記計画評価手段は、前記親計画と前記子計画の目的関数値の差分値を計算し、該目的関数値の差分が前記最適判断値より小さい場合には前記親計画を前記子計画に置換える処理を繰り返すと共に、該子計画が前記並列処理により得られた複数の計画案の中で最適な場合は、該子計画案をベスト計画案として登録し、前記差分値が前記最適判断値よりも大である時は、前記親計画を保持するよう構成され、 前記自律的淘汰手段は、当該処理装置における前記親計画の変更が連続して発生しなかった時間が、前記自律淘汰世代値と比較して大きい時は、前記ベスト計画案を該処理装置の新たな親計画として置換えるよう構成されていることを特徴とする計画立案装置。
  • 【請求項4】与えられた計画対象となる問題および該問題の解決に必要な変数の値を少なくとも受け入れる入力装置と、前記計画対象となる問題において最小化又は最大化を図る項目を表わす目的関数を作成し、該目的関数の値を最小化又は最大化する計画を立案する並列処理装置と、前記立案された計画を出力する出力装置を具備する計画立案装置であって、前記並列処理装置は、数値演算を行なう主演算装置と、情報を記憶するロ−カルメモリ−と他装置と情報の交換を行なう通信制御装置より成る複数のセルプロセッサと、前記複数のセルプロセッサ共通の記憶手段である共有メモリ−と、全体を制御する並列制御ユニットにより成り、前記セルプロッセサのうち少なく共1個は時間経過と共に減少する様な値で、親計画を漸化的に変異させて生成した子計画と親計画の評価値差分値とを、比較し、最適解に近い計画を決定する為の最適判断値と、時間の経過と共に増大する値で、この値より長時間計画の変更が発生していないプロセッサに自律的淘汰タイミングの判断を行なわせる為の自律淘汰世代値を前記共有メモリ−に生成し、所定時間経過後計画処理全体を終了させる最適判断/淘汰制御を行ない、他の複数のセルプロセッサ群は、それぞれ与えられた問題に対して複数の計画案を少なくとも記憶する記憶装置と、前記与えられた親計画案から予め定められた変異操作により新たに子計画を生成し、この2種の計画の目的関数値の差分値を計算し、前記共有メモリ−上の最適判断値を比較し、前記目的関数値の差分が前記共有メモリ−上の最適判断値より小さい場合には前記親計画を今回立案した子計画に置換え、計画開始時刻より刻時刻までの全てのセルプロセッサで増殖された計画案の中で最適な場合は、共有メモリ−上に該計画案と該計画評価値をそれぞれベスト計画案とベスト計画評価値として登録し、前記差分値が前記最適判断値よりも大である時は、親計画を変更せず、変更が連続して発生しなかった時間を示す淘汰世代カウンタ−を更新し、該淘汰世代カウンタ−値が、前記共有メモリ−上の自律淘汰世代値より大である時は前記共有メモリ−上のベスト計画案及びベスト計画評価値を自セルプロッセサ内のロ−カルメモリ−上の親計画案及び親計画評価値に置き換える自律的最適化処理を行なうことを特徴とする、計画立案装置。
  • 【請求項5】与えられた計画対象となる問題および該問題の解決に必要な変数の値を少なくとも受け入れる入力装置と、前記計画対象となる問題において最小化又は最大化を図る項目を表わす目的関数を作成し、該目的関数の値を最小化又は最大化する計画を立案する並列処理装置と、前記立案された計画を出力する出力装置を具備する計画立案装置であって、前記並列処理装置は、数値演算を行なう主演算装置と、情報を記憶するロ−カルメモリ−と他装置と情報の交換を行なう通信制御装置より成る複数のセルプロセッサと、前記複数のセルプロセッサ共通の記憶手段である共有メモリ−と、全体を制御する並列制御ユニットにより成り、前記セルプロッセサのうち少なく共1個は時間経過と共に減少する様な値で、親計画を漸化的に変異させて生成した子計画と親計画の評価値差分値とを、比較し、最適解に近い計画を決定する為の最適判断値と、時間の経過と共に増大する値で、この値より長時間計画の変更が発生していないプロセッサに自律的淘汰タイミングの判断を行なわせる為の自律淘汰世代値を前記共有メモリ−に生成し、所定時間経過後計画処理全体を終了させる最適判断/淘汰制御を行ない、他の複数のセルプロセッサ群は、それぞれ与えられた問題に対して複数の計画案を少なくとも記憶する記憶装置と、前記与えられた親計画案から予め定められた変異操作により新たに子計画を生成し、この2種の計画の目的関数値の差分値を計算し、前記共有メモリ−上の最適判断値を比較し、前記目的関数値の差分が前記共有メモリ−上の最適判断値より小さい場合には前記親計画を今回立案した子計画に置換え、前記差分値が前記最適判断値よりも大である時は親計画を変更せず、変更が連続して発生しなかった時間を示す淘汰世代カウンタ−を更新し、該淘汰世代カウンタ−値が、前記共有メモリ−上の自律淘汰世代値より大である時は、該セルプロセッサの位置により定まる自身を含む領域範囲内に含まれるセルプロセッサ群で処理されている計画案の中で最適な評価値を有する計画案を該セルプロセッサ内のロ−カルメモリ−上の親計画案及び親計画評価値に置き換える自律的最適化処理を行なうことを特徴とする計画立案装置。
  • 【請求項6】並列動作が可能な複数の処理装置を備えた計画立案装置において、与えられた問題に対し計画候補の内容を変更して計画において最小化または最大化を図る項目を表わす目的関数の値を最小又は最大にする計画を立案する方法であって、前記各処理装置における処理手順が同一時間経過に対し、各々自律的に最適化を図りながら、自身の最適化進捗の状況を判断し、所定時間連続して変化が無い場合は、他の処理装置におけるより優れた計画案を自身に取り込み、自律協調的に最適化を図ることを特徴とする、計画立案方法。
  • 【請求項7】並列動作が可能な複数の処理装置を備えた計画立案装置により、与えられた問題に対し計画候補の内容を変更して該計画を表わす目的関数の値を最小または最大にする計画を立案する方法であって、前記各処理装置において、前記計画案に対し、それぞれ計画が順列問題である場合には順列の要素並びの一部分だけを変更し、また計画が組合せ問題である場合には、計画を構成する最小要素単位の1つを変更し、前記変更によって生ずる目的関数値の差分を演算し、その差分値が時間推移の都度徐々に減少する値の範囲に一様に分布する値より小さい場合には変更後の計画案を最適計画候補とし、再び上記処理を繰り返し、前記差分値が前記値より大である場合は計画を変更せずに上記処理を繰り返すと共に、
    計画の変更が連続して定められた時間発生しない場合は、他の処理装置で検討されている計画案を最適計画候補として自身に取り込み上記処理を繰り返す様処理することを特徴とする、計画立案方法。
  • 【請求項8】計画対象となる問題及び該問題において最小化または最大化を図る項目を表わす目的関数が与えられており、この問題を並列動作が可能な複数の処理装置を用いて、目的関数を最小化または最大化する計画を立案する方法であって、計画対象要素を生命における遺伝子に対応させ、該計画要素の並び又は組合せを染色体に対応させ、該染色体を複数生成し、前記複数の処理装置に割当て、進化の方向を目的関数の最小化又は最大化に定め、各染色体で表わされる計画案を人工生命個体とし、各処理装置は与えられた計画許容時間内で該親人工生命個体に最小の変異を与えながら、子人工生命個体を生成する増殖処理、親人工生命個体と子人工生命個体の目的関数値を比較して前記進化方向に近い生命個体を生存させる評価淘汰処理、自身の人工生命個体の進化が連続して無い場合は、他の処理手段でのより優れた人工生命個体を自身に取り込むような自律的軍拡競争処理を行ない、前記淘汰処理における進化は、目的関数値が改善される進捗のみでなく、目的関数値が悪化する一時的な退化を含み、所定時間経過後に全ての処理装置での人工生命個体のうち最も目的関数値が進化の方向に近い個体を最適計画とすることを特徴とする、計画立案方法。
  • 【請求項9】入力装置と、計画対象となる問題において最小化又は最大化を図る項目を表わす目的関数を作成し、該目的関数の値を最小化又は最大化する計画を立案する並列処理装置と、出力装置とを具備し、前記並列処理装置は、数値演算を行なう主演算装置と、情報を記憶するロ−カルメモリ−と他装置と情報の交換を行なう通信制御装置より成る複数のセルプロセッサと、前記複数のセルプロセッサ共通の記憶手段である共有メモリ−
    と、全体を制御する並列制御ユニットより成る、計画立案装置により前記立案された計画を出力する計画立案方法において、与えられた計画対象となる問題および該問題の解決に必要な変数の値を入力し、前記セルプロッセサのうち少なく共1個は時間経過と共に減少する様な値で、親計画を漸化的に変異させて生成した子計画と親計画の評価値差分値とを比較し、最適解に近い計画を決定する為の最適判断値と、時間の経過と共に増大する値で、この値より長時間計画の変更が発生していないプロセッサに自律的淘汰タイミングの判断を行なわせる為の自律淘汰世代値を前記共有メモリ−に生成し、所定時間経過後計画処理全体を終了させる最適判断/淘汰制御を行ない、 前記他の複数のセルプロセッサ群は、それぞれ与えられた問題に対して複数の計画案を記憶し、前記与えられた親計画案から予め定められた変異操作により新たに子計画を生成し、この2種の計画の目的関数値の差分値を計算し、前記共有メモリ−上の最適判断値を比較し、前記目的関数値の差分が前記共有メモリ−上の最適判断値より小さい場合には前記親計画を今回立案した子計画に置換え、 計画開始時刻より刻時刻までの全てのセルプロセッサで増殖された計画案の中で最適な場合は、共有メモリ−上に該計画案と該計画評価値をそれぞれベスト計画案とベスト計画評価値として登録し、前記差分値が前記最適判断値よりも大である時は、親計画を変更せず、変更が連続して発生しなかった時間を示す淘汰世代カウンタ−を更新し、該淘汰世代カウンタ−値が、前記共有メモリ−
    上の自律淘汰世代値より大である時は前記共有メモリ−
    上のベスト計画案及びベスト計画評価値を自セルプロッセサ内のロ−カルメモリ−上の親計画案及び親計画評価値に置き換える自律的最適化処理を行なうことを特徴とする、計画立案方法。
  • 【請求項10】入力装置と、計画対象となる問題において最小化又は最大化を図る項目を表わす目的関数を作成し、該目的関数の値を最小化又は最大化する計画を立案する並列処理装置と、出力装置とを具備し、前記並列処理装置は、数値演算を行なう主演算装置と、情報を記憶するロ−カルメモリ−と他装置と情報の交換を行なう通信制御装置より成る複数のセルプロセッサと、前記複数のセルプロセッサ共通の記憶手段である共有メモリ−
    と、全体を制御する並列制御ユニットより成る、計画立案装置により、前記立案された計画を出力する計画立案方法において、与えられた計画対象となる問題および該問題の解決に必要な変数の値を入力し、前記セルプロッセサのうち少なく共1個は時間経過と共に減少する様な値で、親計画を漸化的に変異させて生成した子計画と親計画の評価値差分値とを比較し、最適解に近い計画を決定する為の最適判断値と、時間の経過と共に増大する値で、この値より長時間計画の変更が発生していないプロセッサに自律的淘汰タイミングの判断を行なわせる為の自律淘汰世代値を前記共有メモリ−に生成し、所定時間経過後計画処理全体を終了させる最適判断/淘汰制御を行ない、 前記他の複数のセルプロセッサ群は、それぞれ与えられた問題に対して複数の計画案を記憶し、前記与えられた親計画案から予め定められた変異操作により新たに子計画を生成し、この2種の計画の目的関数値の差分値を計算し、前記共有メモリー上の最適判断値を比較し、前記目的関数値の差分が前記共有メモリー上の最適判断値より小さい場合には前記親計画を今回立案した子計画に置換え、 前記差分値が前記最適判断値よりも大である時は親計画を変更せず、変更が連続して発生しなかった時間を示す淘汰世代カウンターを更新し、該淘汰世代カウンター値が、前記共有メモリー上の自律淘汰世代値より大である時は、該セルプロセッサの位置により定まる自身を含む領域範囲内に含まれるセルプロセッサ群で処理されている計画案の中で最適な評価値を有する計画案を該セルプロセッサ内のローカルメモリー上の親計画案及び親計画評価値に置き換える自律的最適化処理を行なうことを特徴とする計画立案方法。
  • 说明书全文

    【発明の詳細な説明】

    【0001】

    【産業上の利用分野】本発明は各種分野における様々な計画立案、設計、制御における最適案を提供する計画立案方法及び装置に関し、特に、順列組合せの数が膨大な問題を簡易な構成で極めて高速に解決する計画立案方法及び装置に関する。

    【0002】

    【従来の技術】従来から、多種多様な分野(例えば、電子基板のプリントパタ−ン設計、製造プロセス、下道配管設計、物流システム等)における、各種問題を対象とする計画立案問題において、最大、あるいは、最小とする項目を決め、該項目を、最大、あるいは、最小とする計画案である最適解を、現実的に許容しえる時間内に見つけ出すために各種の手法が提案されてきた。

    【0003】例えば文献「「巡回セ−ルスマン問題」に画期的方法−カオス利用で驚異の高成績、科学朝日、1
    993−Feb. 」、あるいは、特開平2−30458
    7号公報「最短距離、最短時間または最低交通費算出装置」に記載されているように、相互結合型ニュ−ラルネットワ−ク、カオス等を応用して、各種分野における計画立案問題の最適化を、現実的に許容し得る時間内で行う手段を実現しようとするものであった。

    【0004】また、文献「HANDBOOK OF G
    ENETIC ALGORITHM(Van Nost
    rand Reinhold)」に記載されている様に生物の進化を模擬し、大域的に準最適解を求める、遺伝的アルゴリズムも有望な手段として注目されている。

    【0005】

    【発明が解決しようとする課題】与えられた計画問題に対して、考えうる全ての計画案の組合せを検討する、いわゆる「列挙法」に対して、前記のように相互結合型ニュ−ラルネットワ−ク、カオス等の応用例を含む近年の最適化手段の共通的な考え方は、まず、初めにある計画案を立案し、当該計画案の内容を少しずつ、効率的に変更させ(すなわち、ランダムに立案するのではなく、少ない立案回数で最適解を得ようとする工夫を施している)計画問題において、最終的に最大または最小にしたい項目を表す、目的関数の値を評価していき、優れた計画(例えば、目的関数値を減少させる計画)を、次候補の計画案として採用し、最終的に短時間で最適解、すなわち、目的関数を最大または最小にする計画案を得ようとするものである。

    【0006】しかしながら、従来のニュ−ロやカオスの方法では、第1に、新たに計画立案を行う毎に、前記目的関数の最適化を行うための計画立案時のパラメ−タである、計画対象となる計画の構成要素数nの、少くとも3〜5乗回の、計画立案のための処理が必要であること、さらに、第2に、最適解へ到達できるという理論的裏づけがなく、経験的に最適性を評価しているために、
    最適解、あるいは、準最適解に到達するのに長い処理時間を要し、しかも、最適解に到達する確率が極めて低いという問題点を有していた。

    【0007】例えば、前記文献に記載されているシステムにおいては、30ケ所を各々1回だけ訪問する経路のうち、最短であるものを決定する、いわゆる「巡回セ−
    ルスマン問題」の解決を、最近のコンピュ−タ(例えば、10〜100(MIPS)の能を有するワ−クステ−ション等)を使用しても、20秒という長時間を要してしまう。 しかも、3(%)の確率で、最適解を誤って求めてしまう。

    【0008】これに対し、前記「遺伝的アルゴリズム」
    は、計画の要素を生物進化における遺伝子並びを含む染色体に対応させ、この染色体を複数設けることで、大域的探索を行うものである。 これにより前記手段に比べ最適性は劣るが、処理性、とくに最適解への初期収束性が大きく改善される可能性が高い。 しかしながら、遺伝進化を模擬する為には複雑な交配、突然変異、評価、淘汰、評価等の処理を行わねばならず、現実の産業分野への効果ある応用は極めて困難であった。

    【0009】また、近年、本発明が解決しようとする、
    組合せの爆発問題を処理装置を多数結合させた超並列処理装置を用いて解決しようとする試みが多くなされているが、並列処理の効率を向上させ、かつ最適性を高める適切な方法あるいは装置が存在していなかった。

    【0010】そこで本発明は、前記従来方法における、
    処理性及び最適性の問題点を解決し、組合せ、順列の数が膨大である計画問題の中から、目的関数の値を最大あるいは最小にする計画を極めて短時間で求める、計画立案装置及び計画立案方法を提供することを目的としたものである。

    【0011】

    【課題を解決するための手段】上記課題を解決するため、本発明によれば以下のような計画立案装置が提供される。 すなわち、並列動作が可能な複数の処理装置を有し、与えられた問題に対し、計画候補の内容を変更して計画において最小化または最大化を図る項目を表わす目的関数の値を最適にする計画を立案する計画立案装置において、複数の処理装置が各々、同一時間経過に対し各々自律的に計画の最適化を図りながら自身の最適化進捗の状況を判断する計画評価手段と、所定時間連続して前記計画に変化が無い場合は、他の処理装置によって生成されたより優れた計画案を自身に取り込む自立淘汰手段とを備え、自律協調的に最適化を図ることを特徴とする。

    【0012】本発明の計画立案装置の他の特徴は、最適化処理装置が、並列処理を行う複数の処理装置によって構成され、各処理装置は、それぞれ、与えられた親計画案から予め定められた変異操作により新たに子計画を生成する計画変更手段と、前記親計画と前記子計画の比較評価、更新を行う計画評価手段及び自律的淘汰手段とを備え、計画評価手段は、親計画と前記子計画の目的関数値の差分値を計算し、該目的関数値の差分が予め与えられた最適判断値より小さい場合には親計画を前記子計画に置換える処理を繰り返すと共に、該子計画が前記並列処理により得られた複数の計画案の中で最適な場合は、
    該子計画案をベスト計画案として登録し、差分値が最適判断値よりも大である時は、その親計画を保持するよう構成され、自律的淘汰手段は、当該処理装置における親計画の変更が連続して発生しなかった時間が、予め与えられた自律淘汰世代値と比較して大きい時は、ベスト計画案を該処理装置の新たな親計画として置換えるよう構成されている。

    【0013】また、本発明によれば以下のような計画立案方法が提供される。 すなわち、与えられた問題に対し、計画候補の内容を変更して計画において最小化または最大化を図る項目を表わす目的関数の値を最小または最大にする計画立案方法であって、複数の処理装置が同一時間経過に対し、各々自律的に最適化を図りながら、
    自身の最適化進捗の状況を判断し、所定時間、あるいは所定回数(世代)連続して変化が無い場合は、他のより優れた計画案を自身に取り込み再び最適化を続行させる計画立案方法である。 具体的には、複数の計画案に対し、それぞれ計画が順列問題である場合には、順列の要素並びの一部分だけを変更し、また計画が組合せ問題である場合は計画を構成する最小要素単位の1つを変更し、前記変異によって生ずる目的関数値の差分を演算し、その差分値が時間(世代)推移の都度徐々に減少する値の範囲に一様に分布する値より小さい場合には変更後の計画を最適計画候補とし、再び上記処理を繰り返す様にし、前記差分値が前記値より、大である場合は計画を変更せずに上記処理を繰り返す様にし、変更が連続して一定時間発生しない場合は、他の処理装置で検討されている最も最適解に近い計画候補として、上記処理を行なう方法である。

    【0014】

    【作用】本発明の基本的な考え方は、以下の通りである。 (1)計画立案を行う複数の処理装置を有し、
    (2)各処理装置にそれぞれ計画案を与え、(3)各処理装置は与えられた計画案を複製して新たな計画案を生成し、新たな計画案に対し最も小さな変異を与え、
    (4)最適解か否かを、極値に陥らぬようにして選択決定する。 この時、ある同一の計画立案処理装置内で、定められた回数、あるいは定められた時間計画が更新されない場合、(5)他の処理装置での最適解候補を自身の計画案として自律的に取り込む。

    【0015】概念的には複数の個体(計画案)が最小の遺伝的操作により自己増殖を繰り返して各々最適値に近づいてゆくが、最適化進捗度合いを各々が自律的に観察し進捗が鈍った場合他の優れた個体(計画案)に自律的に置き変わってゆく様に動作する。

    【0016】上記過程で、最終的に最適解に到達させるためには、時間(世代)経過に従って、最適度合いを判定する上限値を除々に減少させ、自律的に他の個体に置き変わるか否かの判定時間(世代)は増大させる様に制御すればよい。 上記処理装置では、各々処理手順が自律的に自身を淘汰する場合、計画系全時空間で最適な計画を自身に取り込む様にしているが、他の方法として、自身の存在する位置によって定まる特定の局所地域内での最適な計画を取り込む様にする方法も考えられる。 これにより、計画の進化はランダムな離散的拡張でなく、連続した地域の拡張の形で行なわれる様になる。

    【0017】また、上記処理装置では、各々の処理装置が自律的に自身を淘汰する場合、他のより優れた計画案を淘汰されるべき計画案に置き換えるようにしたが、他の方法として、前記2種の計画案のそれぞれの要素を継承するような交配(交叉)を行ない、得られた第3の計画案を該セルプロセッサが処理対象とする親計画案としてもよい。

    【0018】以上の様ないくつかの本発明による方法を行なうと、計画初期段階では、活発な個体の置き換え(軍拡競争)が行なわれ、比較的良い値を有する個体が揃い、中〜後期は各々の個体(計画案)は、漸化的に最小の変異で確実に最適解に収束してゆく。

    【0019】本発明は、直接的なニュ−ラルネットワ−
    ク構造や、従来の遺伝的アルゴリズムにおける交配や突然変異等の冗長な他の最小化手段を採用しない極めて明解な最適化方法であり、装置である。 特に重要な点は、
    従来の「遺伝的アルゴリズム」の初期の高速最適化速度を保持したまま、最適解が一定の処理後に得られる様にした点にある。 すなわち、公知の様に従来の「遺伝的アルゴリズム」は、立上りの最適性に優れるが、最適解はえられない点を解消する。 さらに、最適解が得られる従来のニュ−ラルネットワ−クのボルツマンマシン、あるいはシミュレ−テット・アニ−リングは、常時1種類の計画案を変更し、変更前の計画と比較しながら最適値に近づいてゆくため、遂時実行型の処理しかできなかったのに対し、本発明では、複数の計画案を同時に検討して進めることができるため、超並列処理装置により飛躍的な処理性向上が得られるようになる。

    【0020】遺伝的アルゴリズムについては前記文献に詳しい為、ここではその概要を述べる。 予め世代毎の個体の最大人口を定め、計画案をそれぞれ各々の個体に対応づける。 各個体は、定められた目的関数により評価される。 次に、その評価値の人口全体の評価値の総和に対する比率が計算される。 ある世代においては、前記比率に応じて選び出された(優性遺伝)1個、あるいは複数の親と呼ばれる個体にし、2個以上の親の構成要素を互いに交換して子を生成する交配操作、1個の親の要素を予め定められた突然変異率に従って変化させる突然変異操作、1個の親の要素並びを逆転させる逆位操作等の遺伝子オペレ−タ−(操作)により、所定の数の子個体が生成される。 次に、親個体と子個体について、予め定められた手順で、予め定められた数の個体を生存させ次世代処理に移行する様な処理を繰り返す。

    【0021】上記において、交配あるいは突然変異の遺伝子操作を繰り返しても最適値には到達しないことは公知である。 また、上記遺伝子操作、人工制限、淘汰、評価等の処理は少なくとも計画要素数をnとするとn 3 5
    回処理ステップを要していた。 本発明では、以下の様にして最適解を高速に得ることができるようにした。

    【0022】 (超並列制御プロセッサの処理)与えられた計画問題に対し、複数の計画案をそれぞれ複数の処理装置に1個づつ割り当てた後、全てのセルプロセッサを起動し、以下の処理を少なくともn 2 /Pn回繰り返す。 ここでnは計画対象要素数、Pmはセルプロセッサの数である。 以下、全てのプロセッサは非同期並行に独立して処理を行なう。 (第1のセルプロセッサの処理) (ステップ1)時刻tiの推移と共に減少してゆく範囲に一様に分布する最適判断値A(ti)を演算する。

    (ステップ2)時刻tiの推移と共に増大してゆく自律淘汰世代値B(ti)を演算する。

    (第2の並列セルプロセッサ群の処理) (ステップ1)割り当てられた計画案(以下親計画と称す)と同一の計画を複製し、最小の変異操作を施し子計画を生成する。 (ステップ2)生成された子計画の目的関数値を求め、


    親計画の目的関数値との差分値を求める。 (ステップ3)上記(ステップ2)で得られた目的関数差分値を、第1のセルプロセッサが該当時刻ti定めた最適判断値A(ti)と比較し、目的関数差分値がA


    (ti)よりも小である場合は子計画が最適計画に近いと判断し、親計画を子計画に置き換え、次に共有メモリ−上に記憶されているベスト計画の評価値と該子計画の評価値を比較し、該子計画が優れている場合、すなわち最大値を求める場合は大であり、最小値を求める場合は小である場合は、該子計画を共有メモリ−上のベスト計画案に、該子計画の評価値をベスト計画評価値にそれぞれ置き換え、淘汰世代カウンタ−をリセットする。 一方、前記目的関数差分値が最適判断値A(ti)より大である場合は、淘汰世代カウンタ−値を更新し、更新した淘汰世代カウンタ−値が、前記第1のセルプロセッサ−の(ステップ2)で定められている該時刻tiにおける自律淘汰世代値B(ti)より大である場合は、自律的に自身の親計画案を淘汰すべきと判断し、共有メモリ−に記憶されているベスト計画を自ロ−カルメモリ−上の親計画案に、共有メモリ−に記憶されているベスト計画評価値を自ロ−カルメモリ−上の親計画評価値にそれぞれ置き換え淘汰世代カウンタ−値をリセットする。 淘汰世代カウンタ−値が自律淘汰世代値B(ti)よりも小である場合は、そのまま次ステップに進む。

    【0023】他の処理方法として、上記(ステップ3)
    において、該セルプロセッサが自律的に自身の親計画案を淘汰すべきと判断した場合、自身の存在位置によって定まる局所的な範囲内のプロセッサ群の有する親計画案の中から最適なものを自身の親計画案として取り込んでも良い。

    【0024】また、上記(ステップ3)処理方法において、自身の親計画案を他の最適な計画案に置き換えるのではなく、前記2種の計画案のそれぞれの要素を継承するような交配(交叉)を行ない、得られた第3の計画案を該ップロセッサの処理対象親計画案としても良い。

    【0025】本発明による上記処理方法を用いると最適解が短時間で得られる。 この場合、最適解を得る為の処理時間は以下の様に評価できる。 第一のセルプロセッサの処理は、他のセルプロセッサ群と非同期に独立して行なわれ、かつ他のプロセッサより明らかに短時間で処理を終了できる。 何故ならば、計画開始を時刻toとするとto以降の時刻tiでの最適判断値A(ti)と自律淘汰世代値B(ti)は、何となれば予め定めることができるからである。 従って計画立案に要する処理時間の評価において第1のセルプロセッサの処理時間は評価不要である。

    【0026】第2のセルプロセッサ群の処理は、互いに非同期に独立して自律的に行なわれるので、処理時間は任意のセルプロセッサの処理の最長パスについてのみ検討すれば良い。

    【0027】ここで、nを計画対象要素数、C1、C
    2、C3をnに依存しない定数とすると、第2のセルプロセッサ群が最適解を得るまでの実時間処理回数オ−ダ−O(n)は、 O(n)=(全体の繰り返し回数)×{(ステップ1)+(ステップ2)+ (ステップ3)} =n 2 /Pm×{C1+C2×n+C3} =C4×n 3 /Pm ここでPn=n、すなわちセルプロセッサを計画対象数具備することにより O(n)=C4×n 3 /(Pm=n)=C4×n 2となる。 この結果、本発明を用いると、高々n 2のオ−
    ダ−で最適計画を得ることができる。 従来の遺伝的アルゴリズム等の方法では準最適解しか得られないのに対し、本発明では最適解が得られる点が重要である。 更に、上記(ステップ2)においては、多くのクラスの計画でnに依存しない目的関数差分を得ることができる方法が本発明に含まれており、この結果、このクラスに属する多くの計画問題においては、 O(n)=n 2 /Pm×{C1+C2+C3} =C4×n で最適解が得られる。

    【0028】一方、従来の方法では、1つの計画案の検討時にn 3個のステップを含んでいるため、これをn 3回繰り返すと、合計でn 6個の処理ステップを要す。 例えば、前記文献では、最適化、すなわち、最小化または最大化を図る項目を表す目的関数E(i)を、合計距離とし、その最小化を図るためにE(i)を次の様に定義している。 E(i)=ΣΣΣdab・Vbc(i)・(Vbc−1(i)+Vbc+1(i)) (第一のΣは、a=1からnまでの総和、第二のΣは、
    b=1からnまでの総和、 第三のΣは、c=1からn
    までの総和を表す。 )ここで、dijは、地点iとjの距離、Vijは、地点iをj番目に訪れる確率を表す。

    【0029】この式を実行するには、少くともn 3回の計算が必要である。 厳密には、前記文献の記載例では、
    4の項が存在する為、n 7という膨大な計算量を要し、
    nが30以上の場合の計画問題に応用することは、現実的でなく本発明との比較の対象としては適していない。

    【0030】従来の遺伝的アルゴリズムのうち最も高速なものはn 3のオ−ダ−で計画を立案する。 これを比較の対象とする。 1秒間に10 7回の命令実行が可能(1
    0(MIPS))なコンピュ−タ−を使用して、n=1
    0,000の最適化問題を解法しようとすると、各々の手段での1個体の処理ステップ数を1,000とすると前記、最速の遺伝的アルゴリズムでの処理時間Told
    は少くとも Told=(1,000×n 4 )/(10(MIPS)) =(10 3 ×10 16 )/(10 7 ) =(10 19 )/(10 7 )=10 12 ≒3(万年) 一方、本発明での処理時間Tnewは、 Tnew=(1,000×n 2 )/(10(MIPS)) =(10 3 ×10 8 )/(10 7 ) =(10 11 )/(10 7 )=10 4 (秒)≒3(時間) であるから1/10 8に処理時間が短縮され、処理の高速化が達成されたことになる。 すなわち、1億倍の高速化が実現される。 これは高速化の達成と同時に、処理許容時間が定められている場合には、同一時間内に解法し得る問題の大きさが飛躍的に大きくなることを示している。 例えば従来方法での解法可能な最適化の対象の数をNold,許容時間を10,000(秒)とすると、 Nold=(10,000*10 7 /10 31/4 =(10 81/4 ≒100 であるのに対し、本発明で解法可能な最適化の対象数N
    newは, Nnew=(10,000*10 7 /10 31/2 =(10 81/2 =10,000 である。 すなわち約3時間で、10,000個の要素を有する最適化問題が解法できることになる。

    【0031】

    【実施例】次に、本発明の実施例について図面を参照して詳細に説明する。 図1は、本発明の計画立案装置の概念を示す全体構成図である。 計画立案装置100は、計画対象となる問題及びこの問題の解決に必要な変数の値を与えるための入力装置3と、複数の処理装置からなり、計画対象となる問題について最小化又は最大化を図る項目を表す目的関数を作成し、この目的関数の最適値が得られる最適の計画を求める処理を並列に実行する最適化処理装置110と、この最適の計画を出力する出力装置2と、メモリー120とを有する。

    【0032】メモリー120には、入力装置3により与えられた、計画対象となる問題及びこの問題の解決に必要な変数の値を与える親計画情報121と、親計画とこの親計画を漸化的に変異させて生成した子計画との評価値差分値とを比較し最適解に近い計画を決定するための最適判断値を与えるの最適判断情報122と、所定の値より長時間計画の変更が発生していない処理装置に自律的淘汰タイミングの判断を行わせるための自立淘汰世代値を与える自立淘汰世代情報123、及び最適化処理装置110によって与えられた最適化計画情報124とが記録、保持される。

    【0033】最適化処理装置110の各処理装置110
    A〜Nは、それぞれ、計画要件を設定する計画要件設定手段111と、与えられた親計画案から予め定められた変異操作により新たに子計画を生成する計画変更手段1
    12と、前記親計画と前記子計画の比較評価、更新を行う計画評価手段113及び自律的淘汰手段114とを備えている。

    【0034】計画評価手段113は、親計画と子計画の目的関数値の差分値を計算し、この目的関数値の差分が最適判断情報122により与えられる最適判断値より小さい場合には親計画を子計画に置換える処理を繰り返すと共に、この子計画が並列処理により得られた複数の計画案の中で最適な場合は、この子計画案をベスト計画案としてメモリー120に登録する。 また、差分値が最適判断値よりも大である時は、親計画をメモリー120に保持するよう構成されている。

    【0035】自律的淘汰手段123は、その処理装置1
    10A〜Nにおける親計画の変更が連続して発生しなかった時間が、自立淘汰世代情報123により与えられる自立淘汰世代値と比較して大きい時は、メモリー120
    に登録された前記ベスト計画案をその処理装置の新たな親計画として置換えるよう構成されている。

    【0036】図2に、本発明の計画装置100を実現するための並列処理装置1の構成例を示す。 本装置は入力装置3、出力装置2、入力装置制御ユニット8、出力装置制御ユニット7、超並列制御ユニット4、相互に結合された複数のセルプロセッサ5、共有メモリー6とを有して構成される。

    【0037】入力装置3は、与えた計画対象となる問題を受け付ける機能であり、計画立案に必要なパラメータを示す定数等を受け付ける機能等を少なくとも有する手段であり、例えばキーボード、マウス等により実現できる。 入力装置制御ユニットは前記入力された情報を共有メモリー6、あるいはセルプロセッサ5内のローカルメモリーに転送する。

    【0038】出力装置制御ユニット7は、超並列制御ユニット4の要求に応じて共有メモリー6、あるいはセルプロセッサ5内のローカルメモリー内の情報を出力装置2に出力する。 出力装置2はCRT等により実現できる。

    【0039】超並列制御ユニット4は、外部との情報の入出力、複数セルプロセッサ5の制御、共有メモリー6
    の制御あるいは数値演算を行なう装置であり、CPU、
    ROM、RAM等の電子デバイスにて実現できる。

    【0040】図3は、前記セルプロセッサ5の詳細構成例を示したものである。 本例では、64本が並列に接続されているが、与えられた問題に対して要求される処理性、複雑性に応じて増減が可能であることは言うまでもない。 本装置は整数演算、実数演算等の処理を行なう主演算装置(CPU)9と、該当セルプロセッサが主に利用するが、他のプロセッサもアクセス可能なローカルメモリー10と、前記超並列制御ユニット4、共有メモリー6、他のセルプロセッサ5と情報を交換する為の複数のチャネル制御装置12と、前記主演算装置9とローカルメモリー10とチャネル制御装置12を結合するバス機構13により構成されている。 この様な構成とすることで、主たる論理処理は、他の処理装置との交信により中断されることなく行なうことができる様になる。

    【0041】次に図4に、並列処理装置1の処理フローを示す。 本処理は、ステップAとして、与えられた計画問題から、複数の初期案を生成し、各々の目的関数値を演算し、複数のセルプロセッサ内に初期計画案と目的関数値を転送し、以下の並列処理(ステップB、C)を同時に起動する初期処理ステップを有する。

    【0042】次にステップBと複数のステップC 1〜63
    は、時間的に並列に、すなわち同時に処理を行なうが、
    相互に抑止あるいは同期して処理が行なわれることは無い。 これにより、各セルプロセッサの稼動率は常に10
    0(%)が保証される。 すなわち各セルプロセッサの処理は各セルプロセッサ自身で自律的に行なわれる。

    【0043】図5は、図4のステップBの温度/淘汰制御の処理フローを示したものである。 ステップBは、ステップCの最適化処理において参照される最適判断値と自律淘汰世代値を離散的な時刻ti(i=1,2,…
    …)毎に計算し、共有メモリー上にそれぞれA(t
    i),B(ti)として格納する。

    【0044】最適判断値は、ある親計画と、該親計画から生成された子計画を比較し、いずれが最適解に近いかを判断する為の情報である。 ここでは例えば、

    で定める。 但し、C

    1は定数、a(ti)は時刻tiで生成した0.0〜1.0に一様に分布する実乱数である。 これは図5に示される様に、時間の経過と共に小さくなる様な値と0.0の間に一様に分布する値の時系列情報となる。 本例ではC

    1 =100.0に選ばれている。

    【0045】自律淘汰世代値は、親計画から子計画を生成して最適解に近い計画を生存させる過程で参照されるもので、自律淘汰世代値より長期間改善(進化)が無かった場合に他の優れた計画に置き替わる様な事象である「軍拡競争」を模擬する為の情報である。 ここでは例えば、

    で定める。 但し、C

    2は定数であり図5ではC

    2 =100


    0に選ばれている。 B(ti)は、時間tiの進捗と共に増大する値であり、これはすなわち計画立案の初期段階では各セルプロセッサに割当てられている計画案同志の生存の為の争い、すなわち「軍拡競争」が激しく行なわれ、一方計画立案が進むと各計画案の改善(進化)には十分な時間(チャンス)が与えられる様にするものである。

    【0046】以上の方法は、生物の進化は急激な突然変異や、無理な交叉(交配)によって行なわれるのではなく、非常にゆっくりと確実に最小の変異による増殖が複数の個体(計画案)で行なわれることにより徐々に改善が行なわれ、更に進化が進み、適応度が高まると、一層進化の速度は低くなるが、異なるグループ、あるいは種の間では生存競争が残存し、これにより、一層適応度の高い個体が得られてゆくことを模擬するものである。

    【0047】従来の遺伝的アルゴリズム手法においては、交配、突然変異、淘汰の操作のみで、かつ余りにも性急に計画案を変更してしまう為、進化の初期段階で、
    改善が停止してしまうという重大な問題があった。 これに対し本発明は、前記説明及び以下の詳細な説明で上記問題を解決しているのみならず、高効率の自律協調型並列情報処理の基本的方法である。

    【0048】図6は、図4の(ステップC)の最適化処理フローを示したものである。 各ステップは以下の様な処理を行なう。 (ステップC10)与えられている親計画案を複写し、
    最小の変異を与え子計画案を生成する。 次に子計画案の目的関数値を演算し、子計画評価値とする。

    【0049】 (ステップC20)親計画評価値と、子計画評価値の差分値と、前記(ステップB)にて共有メモリー上に記憶されている最適判断値A(ti)を比較し、差分値がA(ti)より小さい場合は子計画案が親計画案よりも最適解に近いものとして、(ステップC7
    0)に進む。 差分値がA(ti)より大きい場合は、親計画案が最適解に近い(進化なし)ものとして(ステップC30)に進む。

    【0050】 (ステップC30)ローカルメモリー上の淘汰世代カウンターを正に更新する。

    【0051】 (ステップC40)前記(ステップB)にて共有メモリー上に記憶されている自律淘汰世代値B
    (ti)と前記淘汰世代カウンター値を比較し、淘汰世代カウンター値がB(ti)より大きい場合は自律淘汰が必要と判断し(ステップC50)へ進む。 そうでない場合は(ステップC10)へ戻る。

    【0052】 (ステップC50)共有メモリーに記憶されている、ベスト計画案とベスト計画評価値をそれぞれローカルメモリーの親計画案と親計画評価値エリアに複写する。 この処理は、該セルプロセッサが自律的に自身の計画案を淘汰したものと考えてよい。 そして「軍拡競争」の勝者として、他のセルプロセッサで得られているベストな計画案が生存個体(計画案)数を増加させたものである。 ここでの処理は全セルプロセッサでのベスト計画が「軍拡」の権利を有するものとしているが、例えば該当プロセッサから有限のエリア内のベスト計画としてもよい。 これにより、より厳密な生物進化模擬となる。 計画対象数nが大きくなった場合については、後者が有効である。 次に(ステップC60)へ進む。

    【0053】 (ステップC60)淘汰世代カウンターをリセット(=0)する。

    【0054】 (ステップC70)子計画を構築し、該計画の目的関数値を演算し、子計画評価値とし、(ステップC80)へ進む。

    【0055】 (ステップC80)上記演算された子計画評価値と、共有メモリー上のベスト計画評価値を比較し、子計画評価値がベスト計画値よりも良好である場合は(ステップC90)に進み、そうでない場合は(ステップC60)へ進む。

    【0056】 (ステップC90)上記子計画案と子計画評価値をそれぞれ共有メモリー上のベスト計画案,ベスト計画評価値として複写する。 これにより、該当プロセッサで生成した子計画案が新たに「軍拡」の権利を得たことになる。 次に(ステップC60)に進む。

    【0057】以上の様に最適化処理(図4ステップC)
    は許容された時間内で、自己増殖,最小の変異、淘汰、
    評価、軍拡登録等の進化処理を自律的に無駄時間無く繰り返す。

    【0058】以上が本発明の一実施例であるが、発明をより具体的に示す為、「巡回セールスマン問題」に本発明を適用した場合について以下説明する。 図7は、いわゆる「巡回セールスマン問題」を計画例としたもので、
    図4の初期処理(ステップA)において前記入力装置3
    を介して与えられた問題が、設定された状態を示している(このような状態は、例えば、表示装置2に表示させる構成にしておけば良い)。 さて問題は、地点「0:
    ●」を出発し、地点「1」から「10」までを1回だけ訪問して、再地点「●」に戻る経路のうちで、例えば、
    距離が最も短くなるものを決定する問題である。

    【0059】ここでは、目的関数を距離の総和とし、最適化の目的は距離を最も短くすることとしたが、目的関数は、全箇所を訪問するのに要する所要時間の総和であっても、自動車等の訪問に使用する手段が消費するエネルギーの総和であってもよいことはいうまでもない。

    【0060】さて、設定された訪問順つまり親計画案をベクトルXで表現すると、 X=(1,2,3,4,5,6,7,8,9,10) となる。 また、各地点の間の距離は、予め定まっている。 ここでは、共有メモリー6の中に、地点fから地点t(f、tは、0から10の数)までの距離マトリックスD(f、t)(図7参照)が格納されている。

    【0061】図8は、本発明の工夫点の1つであって、
    図6に示すステップC10の処理を説明したものである。 計画立案の基本コンセプトは、与えられた計画Xの要素の並びを少し変化させてみることである。 ここでは、これを「摂動」と称している。 遺伝子操作の逆位に対応する。 すなわち、例えばベクトルXを構成する要素のj=3番目と、k=8番目の範囲に含まれる要素の並びを逆転させるわけである。 この時jとkは j<k および 1≦j、k≦10 なる条件を満足し、かつ、各々上記範囲内で一様分布する乱数である。

    【0062】この操作により新たな計画Yは、 Y=(1,2,8,7,6,5,4,3,9,10) となる。 Yは明らかにXに最小の変異を与えたものであり漸化的進化を意図したものである。

    【0063】次に、ある計画Aの目的関数をF(A)とすると、ここでは合計距離であるから、以下での計算の都合上、地点「●」を「11」とすると、親計画案Xの評価値は、 F(X)=ΣD m→m+1 (Σは、m=1から10までの総和をとる) =D 1→2 +D 2→3 +D 3→4 +D 4→5 +D 5→6 +D 6→7 +D 7→8 +D 8→9 +D 9→10 +D 10→11 =17+23+27+41+34+45+43+12+22+24 =288 となり、同様に、子計画案Yの評価値は、 F(Y)=D 1→2 +D 2→8 +D 8→7 +D 7→6 +D 6→5 +D 5→4 +D 4→3 +D 3→9 +D 9→10 +D 10→11 =17+45+43+45+34+41+27+27+22+24 =325 となる。

    【0064】図8をみてもYの方が直感的に長いことが分かる。 ここでXとYの目的関数差分値△Fxyを、 △Fxy=F(Y)−F(X) と定義すると、 △Fxy=325−288=37 となる。

    【0065】図9は、本発明において見出した目的関数値の推移の有する特有な性質を示したものである。 図9
    の上図は、横軸に立案回数i毎に定まる計画順ベクトルX(i)、縦軸に、その目的関数値を定義したものである。 計画順ベクトルの並びを、少しずつ変化させ、その時の目的関数値を比較しながら適正に、最適解に近い計画順ベクトルに置き換えて行く。

    【0066】この場合図に示すように、例えば、X
    (i)の様な極点(本実施例では、極小点)になる場合でも次のベクトルに移行し、十分な回数の立案を行なった後に、最適解ベクトルXoptに達することが分かる。

    【0067】従って、この様に毎回新しい計画Xi+1
    を作成し、その目的関数値F(Xi+1)を演算し、前回の計画Xiの目的関数値F(Xi)と比較して、より小さい、あるいは、大きなものを最適計画候補としていく処理を行なえば良いのであるが、この方法であると、
    計画対象数であるnが大きくなった場合に、新しい計画を作成し、目的関数値を計算するのに膨大な時間を要することになる。

    【0068】そこで、本発明では、この様な課題を解決するために、立案毎に新しい計画を作成することを不要とする性質を計画問題の有する性質から見出した。 図9
    の下図は、横軸に計画順ベクトルXiをとり、縦軸に、
    その目的関数F(Xi)のXiに対する微分値△F(X
    i)をとって表現したものである。 すなわち、 △F(Xi)=dF(Xi)/dXi=F(Xi+1)−F(Xi) である。

    【0069】これは、立案回数毎の目的関数差分値を表わしており、新しい計画「Xi+1」の目的関数値が前回の計画における目的関数値より小さくなる場合には、
    負となり、そうでない場合は、ゼロ、または正となる。

    【0070】その推移は、図に示される通り、F(X
    i)と対応するが、波形はゼロを中心とした、減衰振動(すなわち、振幅が小さくなりながら周期も変化していく波形)に類似した波形になる。

    【0071】厳密な実験によると、一般的な計画問題においては、問題の内容に関わらず、この様な形となり、
    Xiを時刻と考えた場合の振幅の減衰度合は、例えば、
    C/log(i+2) (本実施例では、C=10
    0)の相似形になることがわかった。 これは、△Fが正になった場合、つまり、新しい計画の目的関数値が前回の計画より悪くなった時でも(すなわち、最小化問題の場合には増加した場合:最小化問題の場合には減少した場合)、C/log(i+2)より小さな場合には、新しい計画を最適解候補に置き換えてゆくことにより、十分大きなiに対応する順ベクトルXiでは、必ず最適解に達することを示している。

    【0072】この性質は、最適化の処理性能の向上に極めて大きな貢献を行なう。 何故ならば、立案の繰返し毎に、新しい計画を全て作成し、該新計画に対する目的関数値を演算する必要がなく、単に、少し計画を変化させ(すなわち要素並びの一部を変化させ)、かかる変化させた部分のみについて、検討すればよいわけである。 これにより、最適化の対象である数nに依存せずに、目的関数値がどのように推移するかの検討が可能となり、計画問題の解決を高速に実現できる。

    【0073】このことを、以下具体例を参照して説明する。 最適化の第1の工夫は、△Fxyの演算方法にある。 図7に示す例においては、F(X)=Σ(Dmx)
    (Σは、mx=1から10までの総和を表し、文字X
    は、計画Xに関することを表す) F(Y)=Σ(Dmy) (Σは、my=1から10までの総和を表し、文字Yは、計画Yに関することを表す)の全てを計算したが、最適化の為には(距離の総和を最小にするためには)、多くの冗長な処理を含んでいる。 何故ならば、最適化を行うのに必要なのは、目的関数値ではなく、目的関数差分値であるからである。

    【0074】図8において、本発明による操作を行なった場合、ある2点の評価に可逆性(順番が変わっても、
    ある2点間の関係が不変、例えば、→、でも→
    でも距離は同じであること等をいう)がある場合には、
    高々2ヶ所の変更が行なわれているだけであり、しかもこれは、最適化対象数nに依存していない。

    【0075】図8で説明すると、XからYを生成する場合に変更されたのは、XのD 2→3とD 8→9を取り除いた点と、D 2→8とD 3→9が加わった点のみである。 これを数式で表わすと、 △Fxy=F(Y)−F(X) (D 1→2 +D 2→8 +D 8→7 +D 7→6 +D 6→5 +D 5→4
    4→3 +D 3→9 +D 9→10 +D 10→11 )−(D 1→2 +D
    2→3 +D 3→4 +D 4→5 +D 5→6 +D 6→7 +D 7→8 +D
    8→9 +D 9→10 +D 10→11 ) ここで本問題では任意の地点j,kに対して D j→k =D k→jが成立するので △Fxy=(D 2→8 +D 3→9 )−(D 2→3 +D 8→9 ) となる。 操作ポインターj,kを用いて一般化すると、 △Fxy=(D(j-1)→k+Dj→(k+1))−(D(j-1)→j+Dk→(k+1))…(式1) となり、最適化対象数nに依存せず、3回の加算、減算を行なうのみでよいことがわかる。 今まで順ベクトルの並びの変更すなわち、主として、数学的順列問題について述べてきたが、同様な考え方で、数学的組み合わせ問題も解決することが可能である。

    【0076】図10は、記憶手段3内の、予め格納されている定数と前記最適判断値例を示したものである。 テーブルjとkは例えばそれぞれ世代i=1からi=n 2
    まで次の様な性質を有する整数値がセットされている。
    pmはセルプロセッサ番号である。 (1)J(i、pr)<K(i、pr)(以下、iは立案回数) (2)1≦J(i、pm)、K(i、pm)≦n (3)上記(2)レンジ内で一様分布する。 式1を、再度、書き直すと、 △F(i)=(D(J(i)-1)→K(i)+DJ(i)→(K(i)+1)) −(D(J(i)-1)→J(i)+DK(i)→(K(i)+1)…(式2) ここで、本実施例での値 J(i)=3 K(i)=8 を(式2)に代入すると、 △F(i)=(D 2→8 +D 3→9 )−(D 2→3 +D 8→9 ) =(45+27)−(23+12) =72−35 =37 =F(Y)−F(X) となり、nに依存せずに、目的関数差分値が求まることがわかる。

    【0077】また、図10の下図に示される、A(t
    i)は、目的関数差分値△Fxyと比較するための定数であり、ti=1からn 2まで、例えば、次のような値が前記、最適判断/淘汰制御処理により共有メモリーに設定されている。 tiは時刻(世代)である。

    但し、logは、自然対数、a(ti)は、「0.0」


    から「1.0」に分布する一様乱数である。

    【0078】すなわち、時間(世代)tiの増加により、分布するレンジが小さくなるような値であればよい。 C 1は、△Fにより容易に定めることができる。 図10は、C 1 =100とした場合のA(ti)の分布エリアの推移を示す。 これは図5内のA(ti)と同じである。 斜線内にA(ti)は存在することになる。

    【0079】図11は、本装置が正しく動作することを検証するための説明図である。 予め最適解が判明している問題(与えられた全ての点を一度、訪問する計画問題、いわゆる「セールスマン巡回問題」)を、ランダムな訪問の順番を初期値とし、最適解に到達するか否かを検証した様子を示している。 円周上に地点を配置すれば、その最適解は明らかに円であり、n=8、16、3
    2においては、図11の様に最適解に達していることがわかる。

    【0080】図12は図11の問題を本発明にかかる手段を使用して解決する場合、最適化の対象となる対象数nを変えると共に、初期状態Xを変えて実験し、最適解に到達した回数の度数分布を作成したものである。 n=
    500までにおいて全てn 3回以下で、最適解に達していることがわかる。 これは少なくとも、n 3回の検討を行なえば最適解が得られることを示していることにほかならない。

    【0081】以上までの説明は、セルプロセッサが1個のすなわちPm=1の逐次実行型のコンピューターを用いた場合の最適計画立案について述べたものであり、本発明における図4の(ステップC)最適化処理の1つのセルプロセッサの動作についてのみ行ったものである。

    【0082】本発明は、前記n 3回を要する処理時間オーダーを更に以下の方法で高速化する。 図13は、前記説明においての計画案a 1 1 =(12345678)(a j
    k ,kは先祖セルプロセッサ列、すなわちどのセルプロセッサで処理進化したかを示す数字列、jは時刻(世代)tiを示す)を、セルプロセッサ1での時刻(世代)=1における最適解候補として、a 1 1が次の時刻=
    2にてセルプロセッサ2,3に「軍拡」し、強力な個体(計画案)がセルプロセッサ1,2,3で最小の変異である「逆位」により、新たな個体(計画案)a 2 11
    a 2 12 ,a 2 13を増殖している状態を示している。 a 1 1から最小の変異としての逆位を行い移行できる集合は、8都市から2都市を選ぶ組合せ、すなわち82の組合せ数の要素を有する。 従って、この中から最適解に近い候補を選択する確率は、「軍拡」したセルプロセッサの数の分だけ増大することがわかる。 すなわち、nが十分大きい、大規模な計画問題においては、十分大きな数のセルプロセッサを具備する程確実に、最適解に近づく速度が早くなる訳である。

    【0083】従来の超並列処理装置では、例えば並列本数が200程度までは処理性の向上が期待できるが、1
    000本以上になると、極端に効率が低下する、という問題があったが、本発明では、上記説明で明らかな様に並列数の増大による効率低下は極めて少ない。

    【0084】図14は、図5、図6に示した、本発明による分散協調並列処理の状況を「巡回セールスマン問題」を例に示したものである。 本図は、横軸に時間(世代)推移tiを、縦軸に、前記(ステップB)により定められる最適判断値A(ti)、自律淘汰世代値B(t
    i)、セルプロセッサ毎の処理結果、及びベスト個体(計画)とベスト個体の評価値を定義したものである。

    【0085】初期状態(ti=1)ではセルプロセッサ1、(CP1)からセルプロセッサ8(CP8)に、それぞれ初期計画案(親計画案)として、a 1 1 、b 1 2 、c
    1 3 、D 1 4 、E 1 5 、F 1 6 、G 1 7 、H 1 8がそれぞれ割当てられている。 時刻が2になると、CP3の計画は、時刻2
    における淘汰世代数連続して進化(評価値が更新された場合「進化」と称する)がなかった為、時刻2までのベスト計画案(BEST個体)であるD 1 4に置換えられてしまっている。

    【0086】図15は、これらの状況を時刻(世代)毎の計画案の祖先(時刻=1にて各セルプロセッサに割当てられた計画案を示す)を根とするツリーで示したものである。 ここで祖先を同一とする計画案群を「種」と称す。 生物学における「種」とは異なる。 むしろ族に近い。 ある「種」が拡張(軍拡)する場合、最適化を行うセルプロセッサの数が一定であるから、他の計画案(個体)が消滅(淘汰)する。 本発明では、これは各セルプロセッサが、自律的に淘汰すべきか判断し、他のより優れた計画案を自身に取込む様に工夫している。 後述するが、この場合、図6の処理では他の優れた計画案をそのまま、淘汰されるべき計画案を消滅させ置換えているが、両者の要素が共に残る様な交配を行うことも考えられる。

    【0087】図15では、時刻12においてa種が5
    個、b種が1個、d種が2個他生存し、進化を行なっている状況を示している。

    【0088】図16は、以上の状況を第1の軸に時間経過(時刻)を、第2の軸にセルプロセッサ番号を、第3
    の軸として第2の軸で示されるセルプロセッサ内の計画案の該当時刻での評価値を定義したものである。 時刻1
    では、各々に個別の計画案が割付けられ、それぞれ異なる評価値を有している。 1つのセルプロセッサに注目すると、評価値が改善される場合とわずかに悪化する場合があるが、変化を続けている場合は、長期的には、明らかに改善されてゆくのがわかる。 しかし、所定時間(自律淘汰世代値)変化が無い場合は、他のセルプロセッサで処理中の計画案で優れたものがある場合それを取込む様に処理されており、進化が一気に促進されている。 このように並列に協調しながら最適化を図っている為、短時間で最適解に到達している。

    【0089】図17は、第1の軸は図16と同様、時間の推移(時刻)を示しているが、第2の軸は、評価値であるが全てのセルプロセッサの計画案評価値のうちで最適な値(本例では最小値)を持つものを、図はプロットしている。

    【0090】従来の逐次実行型の最適化方法及び最適化装置を用いた場合に比べ、本発明による方法及び装置を用いると極めて短時間に最適値に到達していることがわかる。 これは、同一の計画(設計、制御)許容時間が与えられている場合は、本発明では、従来方法に比べ、より複雑(要素数が大きい)な問題を解法することが可能であることを示している。

    【0091】図18は、本発明による最適化状況を、タイミング毎のセルプロセッサ内の計画案評価値度合でシンボルを定めセルプロセッサのマトリックスで示した図と、各評価値を棒グラフとし、視点場を回転して示したものである。

    【0092】左図は、縦横共16分割とし、各交差矩形をセルプロセッサでの評価値度合シンボルとしている。
    本例では、256個のセルプロセッサとしている。

    【0093】右図は、評価値を下降方向に定義したもので、従って棒グラフ先端が高いもの程最適解に近いことを示している。

    【0094】時刻ti=1では、散発的に良い解が存在しているが、時刻ti=mでは各プロセッサ毎の最適化処理により全体的に改善され、また、最適解に近い計画案グループが形成されている。 時刻ti=n(nは十分大きい)になると、全体が大きく改善され、かつ最適解が出現している。

    【0095】以上は、各セルプロセッサ内の計画案を1
    つの個体とした「人工生命」と、考え、この場合の淘汰の方向が各個体の身長増加と考えればよい。 もちろん、
    ここでの身長とは「巡回セールスマン問題」での「距離の総和」の減少の軸方向である。

    【0096】本発明の第2の要点は、この様に従来実験的に行なわれていた「人工生命」の早期育成の手法を提供し、かつ「人工生命」技術を産業に応用する手法を提供できることにある。

    【0097】図19以降に、「人工生命」の育成に一層近い、他の最適化方法を示す。 最適化対象要素数(n)
    が大きく、かつ超並列接続のセルプロセッサ数が大きい場合には、以下の方法が、前記方法より優れている場合がある。

    【0098】図19は、前記方法の処理の一部を変更したもので「局所的軍拡伝播最適化方法」と称する。 図6
    に示した前記方法は、セルプロセッサ毎に自律淘汰が行なわれる場合計画手段全体でベストな計画案を自身に取込んでゆくものであった。 この方法であると、ベストな計画案が、全体に離散的に拡散してゆき、比較的少ない種類の「種」による高速の最適化が期待できる。 これは、例えば目的関数の種類が少ない場合で、かつ最適解がある程度偏在する場合に有効である。

    【0099】図19は、図6の処理フローに(ステップC42),(ステップC44),(ステップC46)を加え、(ステップC80)と(ステップC90)を取除いたものである。 すなわち(ステップC40)で自律的に淘汰が必要と判断された場合、全最適化時空間の該時刻までのベストの計画を取り込むのではなく、自セルプロセッサを囲むセルプロセッサの中でより優れたものがある場合、その中から最も優れたものを自身の親計画とする様に動作する。 これにより、ベストの計画を記憶しておく必要が無くなる為、(ステップC80)と(ステップC90)が不要となる。 図20は、以上の処理を、セルプロセッサCPを中心とするハードウェアトポロジーと、各メモリー内の項目による説明図である。

    【0100】(ステップC42)では、CPを囲むプロセッサCPからCPの8個のセルプロセッサについて以下の処理を繰り返すよう制御する。 (ステップC
    44)では、例えばCP内のローカルメモリーの親計画評価値と、CP内のローカルメモリー内の親計画評価値を比較する。 この結果CPに隣接するCPの親計画評価値の方が最適解に近い場合は、CPの親計画案と親計画評価値をCPのものとそれぞれ置き換える。

    【0101】この様にして以下同様にCPからCP
    まで処理をくり返すことによりCPに隣接するセルプロセッサのうちで最も最適である計画がCPに取り込まれる。 本例では、直接隣接するセルプロセッサのみを対象としたが、参照範囲はこれに限定されるものではなく、対象問題に応じて定めることが可能である。

    【0102】図21は、前記図18と同様、図20に示した「局所的軍拡伝播最適化手法」による最適化状況を示したものである。 図21の定義は、左図の各セルプロセッサに対応する各交差矩形のシンボルが種により定められている点を除いては図18と同一である。 すなわちti=1にて存在したa種の祖先a 1が徐々に勢力を拡張してゆき、ti=nでは半数以上の領域に存在するプロセッサに伝播していることが視覚的に容易に認識できる様にしたものである。 従って、同一模様で示される領域は同一の評価値を有するのではなく、右図に示される様に、同一種であっても評価値はそれぞれ異なる。

    【0103】図18に比較すると、同一時刻(世代)において、各セルプロセッサ毎の評価値が平均的に高くなっており、各評価値高原(評価値が台を成していることを指す)から離散的により最適な計画(個体)が成長している様子が伺える。 これは、図6の方法に比べ、急激な広域的計画変更を行なわず、局所的な領域内での改善を徐々に行なっている為であり、最適化問題の要素数が大でかつ、セルプロセッサ数も大である場合は極めて有効に作用する。

    【0104】本処理は、染色体を都市の並びX, X=(1234…… n) に、各要素を遺伝子ととして対応させると、「定方向進化」を行なう。 原始的な「人工生命」の増殖、淘汰、軍拡競争となる。 本方法の特徴は、単に進化は「進歩」
    (改善)だけでなく「退化」(悪化)を含んでいることにより、極値状況から必ず脱出する点にあり、従来の最適化方法や、「人工生命」の有する根本的問題を解決している点にある。

    【0105】これにより、従来は、実験室レベルであった「人工生命」の手法に本発明を適用し、かつ計画/設計/制御における目的項目の最適化方向を「定方向」に定めてやれば、極めて高速にかつ確実に、最適解が得られることになる。

    【0106】図22は、上記を更に具体的な最適化手法と同一の時間軸で比較実験した結果を示している。 図2
    2の上の図は、全ての存在する解をランダムに探すランダム探索法によるもので、例えば、「巡回セールスマン問題」での都市の数を100とした場合は、最適解到達に必要な最悪値は100! ≒10 157の検討回数が必要である。

    【0107】中図は、従来の遺伝的アルゴリズム(G
    A)とシミュレーテッドアニーリング等の最適化手法による結果を示している。 GAは初期段階で比較的良い値に収束しているが、検討回数が増加しても、改善が無くなり、最適解に到達しない。 この傾向は、計画の要素数(=n)が大きくなる程顕著となり、厳密な最適問題にGAは適用困難である。

    【0108】シミュレーテッドアニーリング等の手法は、徐々にではあるが確実に最適解に近づいてゆきn 3
    〜n 5程度の検討回数で最適解に到達する。 前記ランダム検索に比べると、n! からn 5へ大きく高速化が達成されている。 しかし、やはりnが10,000を超える大規模な問題の場合は、現在の逐次実行型のコンピュータの最速の処理速度を有するものを用いたとしても、現実的には解法が困難である。 また、将来的にも、処理装置に半導体技術を用いる限り、既に処理速度は限界に近づいている為、実用できないことにになる。

    【0109】図22の下の図は、本発明による最適化状況を示したものである。 最適化は原理的にはn 3 /Pm
    すなわち並列度数分だけ高速化される。 現実的には10
    0(%)の並列効率は困難であるので本例では、Pm=
    c・n(cは1より大である整定数)とすることで、n
    2オーダーの検討回数で最適解に到達している。 今後のコンピュータのアーキテクチャは膨大な数の、セルプロセッサを超並列に仮想ハイパー接続したものとなる。 これに対し、本発明で示した、各々のセルプロセッサでは確実な最適化処理を行ない、かつ、時間の推移により自律的な淘汰、交配等を行なう方法は、計画のみならず、
    設計、制御等多くの情報処理の基本的な考えとなるものである。

    【0110】図23に、極めてニーズの多い、製造業における生産計画の最適化に、本発明を応用した例を示す。

    【0111】本実施例では、製造設備Aにて6種類の作業〜を効率良く行なう計画例である。 設備が1台の為作業の移行時は冶具の交換、清掃、NC加工パラメータの設定等の、図に示す段取り時間が必要となる。

    【0112】この計画は、前記「巡回セールスマン問題」と対応づけて検討すると作業を巡回地点に、段取り時間を巡回地点間の距離に対応させ、目的関数として総作業時間をとり、これを最小とすることとすると同一となる。

    【0113】これにより、前述の「巡回セールスマン問題」に、1対1に対応することとなる。 これはさらに、
    総段取り時間を最小にすることと等価であり、初期親個体のうち最良の評価値を有する親個体P(1)の総段取り時間が77(分)であったものが、本発明による装置によって、39(分)となり、50(%)も、総作業時間が短縮される。

    【0114】実際の大規模な工場に配置される設備数は、数百、作業数は、1ヶ月で数千〜数万におよぶが、
    図12によれば、極めて短時間に、現実的な最適解が得られることを示しており、製造業の規模が大きくなればなるほど、本発明は、その効果を発揮する。

    【0115】本実施例と同様な問題として、 (1)配送計画 (2)配車計画 (3)製鉄における圧延計画 (4)自動倉庫の入出庫計画 (5)材料取り計画 などがある。

    【0116】

    【発明の効果】本発明によれば、簡単な構成により、与えられた問題に対する最適な計画立案を高速に行なう手段を提供できる効果がある。

    【図面の簡単な説明】

    【図1】本発明の計画立案装置の全体構成例を示す概念図である。

    【図2】本発明を実現するための並列処理装置の構成例を示す図である。

    【図3】図2のセルプロセッサの詳細構成例を示す図である。

    【図4】本発明における並列処理手順の説明図である。

    【図5】図3の最適判断/淘汰制御処理手順の説明図である。

    【図6】図3の自律型最適化処理手順の説明図である。

    【図7】巡回セールスマン問題における最適化方法の設定例である。

    【図8】計画の遺伝子操作と評価の説明図である。

    【図9】目的関数値推移の性質の説明図である。

    【図10】最適化変数の例である。

    【図11】最適化動作例の説明図である。

    【図12】最適化に要した検討回数の度数分布である。

    【図13】時間(世代)経過毎の計画の増殖とセルプロセッサの処理説明図である。

    【図14】分散協調最適化状況の説明図である。

    【図15】時間(世代)推移に対する個体(計画)の進化と軍拡競争の例である。

    【図16】時間(世代)推移に対するセルプロセッサ毎の評価値推移の説明図である。

    【図17】本発明による効果の説明図である。

    【図18】最適化の進行状況例であり、また人工生命の進化の状況例の説明図である。

    【図19】本発明の他の実施例になる局所的軍拡伝播最適化処理手順の説明図である。

    【図20】図19の局所的軍拡伝播最適化方法の説明図である。

    【図21】局所的軍拡伝播最適化の進行状況例であり、
    また人工生命の進化及び生息地域の力のバランスの説明図である。

    【図22】処理パフォーマンス比較グラフである。

    【図23】本発明を生産計画立案に応用した場合の例である。

    【符号の説明】

    1…並列処理装置、2…出力装置、3…入力装置、4…
    超並列制御ユニット、5…セルプロセッサ、6…共有メモリー、7…出力装置制御ユニット、8…入力装置制御ユニット、100…計画立案装置、110…最適化処理装置110、111…計画要件設定手段、112…計画変更手段、113…計画評価手段、114…自律的淘汰手段114、121…親計画情報、122…最適判断情報、123…自立淘汰世代情報、124…最適化計画情報

    ───────────────────────────────────────────────────── フロントページの続き (72)発明者 塩沢 正三 茨城県日立市幸町三丁目2番1号 日立 エンジニアリング株式会社内 (56)参考文献 特開 平6−314270(JP,A) 特開 平5−204891(JP,A) 特許3069479(JP,B2) 西川、玉置、「近傍モデルによる遺伝 アルゴリズムの並列化手法とそのジョブ ショップ・スケジューリング問題への応 用」、計測自動制御学会論文集、第29 巻、第5号、社団法人計測自動制御学 会・発行(1993年5月)、pp. 589〜 595(特許庁CSDB文献番号:CSN T199901641007) 米澤保雄、「遺伝的アルゴリズム−進 化理論の情報科学−」、森北出版株式会 社・発行(1993年10月、初版)、pp. 152〜155(特許庁CSDB文献番号:C SNY199700140001) 高橋、棟朝、高井、佐藤、「階層型G Aによる協調的探索手法とそのUNIX −Network上での実現」、情報処 理学会研究報告、Vol. 93、No. 103(93−AI−91)、社団法人情報処 理学会・発行(1993年11月)、pp. 9 〜16(特許庁CSDB文献番号:CSN T199901153002) (58)調査した分野(Int.Cl. 7 ,DB名) G06F 9/44 G06N 3/12 G06F 15/16 G06F 19/00 JICSTファイル(JOIS) CSDB(日本国特許庁)

    高效检索全球专利

    专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

    我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

    申请试用

    分析报告

    专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

    申请试用

    QQ群二维码
    意见反馈