(57)【要約】【課題】製品（例えば自動車、携帯電話など）の工学設計最適化において、１セットのより収束しかつより多様なパレート最適解を求めるシステムおよび方法を開示する。【解決手段】一の面では、一つの製品に対しＭＯＥＡに基づいた複数の工学最適化が独立して行なわれる。初期世代や進化型スキームなどのパラメータによって、複数の工学設計最適化のそれぞれは他の工学設計最適化と異なっている。例えば、初期世代の母集団（設計選択肢）は、乱数あるいは擬似乱数生成器の異なるシードからランダムに生成することができる。他の面では、それぞれの進化型アルゴリズムは、限定されないが、ＮＳＧＡ−ＩＩおよびＳＰＥＡなどを含む特定の進化型アルゴリズムを用いる。さらに、それぞれの独立して行われる最適化のパレート最適解を、１セットのより収束しかつより多様な解を生成するよう、組み合わせる。組み合わせは、最適化の進化プロセスの際に、１つ以上の予め定義されたチェックポイントで行なうことができる。【選択図】図５
2011187056.tif 000002
【特許請求の範囲】
【請求項１】
多目的進化型アルゴリズム（ＭＯＥＡ）に基づいた製品の工学設計最適化において１セットの多様なパレート最適解を求めるためにコンピュータによって実現される方法であって、
コンピュータシステムにおけるアプリケーションモジュールによって、最適化される製品の記述を受け取るステップと、
前記アプリケーションモジュールによって、前記製品に対し、ＭＯＥＡに基づいた複数の工学設計最適化を独立して行なうステップであって、該複数の工学設計最適化は１セットの共通の設計変数および１セットの共通の設計目的関数を用いるように構成されており、初期世代の設計選択肢や進化スキームなどのあるパラメータによって該複数の工学設計最適化のそれぞれは他の工学設計最適化とは異なっているステップと、
前記アプリケーションモジュールによって、工学最適化の前記それぞれから得られるパレート最適解を組み合わせることにより、１つ以上の予め定義されたチェックポイントにおいて組み合わされた１セットのパレート最適解を求めるステップと、
前記アプリケーションモジュールによって、全体終了基準が満たされたとき前記組み合わされた１セットのパレート最適解をグローバルパレート最適解として指定するステップであって、該グローバルパレート最適解が記憶装置に記憶されユーザの指示に応じてモニタに図表によって表示されるステップと、
を備えるコンピュータによって実現される方法。
【請求項２】
請求項１に記載のコンピュータによって実現される方法であって、さらに、前記アプリケーションモジュールによって、初期世代の前記設計選択肢を工学設計最適化の前記それぞれに対してランダムに生成するステップを備える、コンピュータによって実現される方法。
【請求項３】
請求項１に記載のコンピュータによって実現される方法であって、前記アプリケーションモジュールによって、前記進化スキームに１つ以上の進化型アルゴリズムを用いるステップをさらに備える、コンピュータによって実現される方法。
【請求項４】
請求項３に記載のコンピュータによって実現される方法であって、前記１つ以上の進化型アルゴリズムは、限定されないが、ノンドミネーテッド・ソーティング・ジェネティック・アルゴリズム（Ｎｏｎ−ｄｏｍｉｎａｔｅｄ  Ｓｏｒｔｉｎｇ  Ｇｅｎｅｔｉｃ  Ａｌｇｏｒｉｔｈｍ  （ＮＳＧＡ−ＩＩ））およびストレングス・パレート進化型アルゴリズム（ｓｔｒｅｎｇｔｈ  Ｐａｒｅｔｏ  ｅｖｏｌｕｔｉｏｎａｒｙ  ａｌｇｏｒｉｔｈｍ  （ＳＰＥＡ））を含む、コンピュータによって実現される方法。
【請求項５】
請求項１に記載のコンピュータによって実現される方法であって、前記予め定義された１つ以上のチェックポイントは多数の世代によって測定される、コンピュータによって実現される方法。
【請求項６】
請求項１に記載のコンピュータによって実現される方法であって、前記予め定義された１つ以上のチェックポイントは多数の目的関数評価によって測定される、コンピュータによって実現される方法。
【請求項７】
請求項１に記載のコンピュータによって実現される方法であって、組み合わされた１セットのパレート最適解のそれぞれは、他の最適解に対して非優勢である、コンピュータによって実現される方法。
【請求項８】
請求項１に記載のコンピュータによって実現される方法であって、前記複数の工学設計最適化のうちのいずれか１つの工学設計最適化が収束したとき、前記全体終了基準が満たされる、コンピュータによって実現される方法。
【請求項９】
請求項１に記載のコンピュータによって実現される方法であって、前記複数の工学設計最適化のうちのすべての工学設計最適化が収束したとき、前記全体終了基準が満たされる、コンピュータによって実現される方法。
【請求項１０】
請求項１に記載のコンピュータによって実現される方法であって、前記全体終了基準は、すべての先のチェックポイントで生成された前記組み合わされたセットの解を試験して、グローバルパレート最適解が達成されたか否かを判断することによって定義される、コンピュータによって実現される方法。
【請求項１１】
請求項１、２、３あるいは４に記載の方法による、製品の多目的進化型アルゴリズム（ＭＯＥＡ）に基づいた工学設計最適化において１セットの多様なパレート最適解を求めるコンピュータシステムを制御するための命令を有するコンピュータ可読媒体。
【請求項１２】
多目的進化型アルゴリズム（ＭＯＥＡ）に基づいた製品の工学設計最適化において１セットの多様なパレート最適解を求めるシステムであって、
少なくとも１つのアプリケーションモジュールに関するコンピュータ読取り可能なコードを記憶しているメインメモリと、
前記メインメモリに連結される少なくとも１つのプロセッサであって、該少なくとも１つのプロセッサがメインメモリ内のコンピュータが読み取り可能なコードを実行して、前記少なくとも１つのアプリケーションモジュールに、次の方法に基づいてオペレーションを実行させる少なくとも１つのプロセッサと、を備えるシステムであって、
該方法が、
最適化される製品の記述を受け取るステップと、
前記製品に対し、複数のＭＯＥＡに基づいた工学設計最適化を独立して行なうステップであって、該複数の工学設計最適化は１セットの共通の設計変数および１セットの共通の設計目的関数を用いるように構成されており、初期世代の設計選択肢や進化スキームなどのあるパラメータによって該複数の工学設計最適化のそれぞれは他の工学設計最適化とは異なっているステップと、
工学最適化の前記それぞれから得られるパレート最適解を組み合わせることにより、１つ以上の予め定義されたチェックポイントにおいて組み合わされた１セットのパレート最適解を求めるステップと、
全体終了基準が満たされたとき前記組み合わされた１セットのパレート最適解をグローバルパレート最適解として指定するステップであって、該グローバルパレート最適解が記憶装置に記憶されユーザの指示に応じてモニタに図表によって表示されるステップと、
を備えているシステム。
【請求項１３】
請求項１２のシステムであって、前記方法がさらに、前記初期世代の設計選択肢を工学設計最適化の前記それぞれに対してランダムに生成するステップを備えているシステム。
【請求項１４】
請求項１２のシステムであって、前記方法がさらに、前記進化スキームに１つ以上の進化型アルゴリズムを用いるステップを備えているシステム。
【請求項１５】
請求項１４に記載のシステムであって、前記１つ以上の進化型アルゴリズムは、限定されないが、ノンドミネーテッド・ソーティング・ジェネティック・アルゴリズム（Ｎｏｎ−ｄｏｍｉｎａｔｅｄ  Ｓｏｒｔｉｎｇ  Ｇｅｎｅｔｉｃ  Ａｌｇｏｒｉｔｈｍ  （ＮＳＧＡ−ＩＩ））およびストレングス・パレート進化型アルゴリズム（ｓｔｒｅｎｇｔｈ  Ｐａｒｅｔｏ  ｅｖｏｌｕｔｉｏｎａｒｙ  ａｌｇｏｒｉｔｈｍ  （ＳＰＥＡ））を含むシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工学設計最適化に関し、特に、多目的進化型アルゴリズム（ＭＯＥＡ）に基づく工学設計最適化において、１セットのより収束しかつより多様なグローバルパレート最適解を求める改良方法に関する。
【背景技術】
【０００２】
今日、コンピュータ支援工学（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｅｎｇｉｎｅｅｒｉｎｇ（ＣＡＥ））は、解析、シミュレーション、設計、製造などのタスクにおいて技術者を援助するために用いられている。従来の工学設計手順においては、ＣＡＥ解析（例えば有限要素解析法（Ｆｉｎｉｔｅ  Ｅｌｅｍｅｎｔ  Ａｎａｌｙｓｉｓ（ＦＥＡ））、有限差分解析（Ｆｉｎｉｔｅ  Ｄｉｆｆｅｒｅｎｃｅ  Ａｎａｌｙｓｉｓ）、メッシュレス（ｍｅｓｈｌｅｓｓ）解析、計算流体力学（ＣＦＤ）解析、ノイズ・バイブレーション・ハーシュネス（Ｎｏｉｓｅ−Ｖｉｂｒａｔｉｏｎ−Ｈａｒｓｈｎｅｓｓ（ＮＶＨ））を低減するためモード解析等）が、応答（例えば応力、変位など）を評価するために使用されている。例として自動車の設計を用いて、自動車の特定のバージョンあるいは設計においてＦＥＡを用いて解析して、ある荷重条件による応答を求める。そしてその後で、技術者は、特定の目的および制約に基づいて、あるパラメータあるいは設計変数（例えば鋼シェルの厚さ、フレームの位置等）の変更により、自動車の設計の改善を試みることになる。さらに他のＦＥＡが、「最善」設計が達成されるまで、これらの変形を反映するように行なわれる。しかしながら、このアプローチは、一般的に、技術者の知識に依存しあるいは試行錯誤に基づいている。
【０００３】
また、多くの技術課題あるいはプロジェクトにおいて、その目的および制約は、概して相反し、互いに影響し合い、かつ設計変数は非線形に相互作用する。このように、「最善」設計あるいは二律背反（トレードオフ）関係を達成するにはそれらをどのように変更するべきかはあまり明らかではない。この状況は、１セットの相反する目標を満たすには、いくつかの異なるＣＡＥ解析（例えばＦＥＡ、ＣＦＤおよびＮＶＨ）を必要とする数種類の分野にまたがる最適化においては、さらにより複雑になる。この問題を解くために、「最善」設計を特定する設計最適化と呼ばれる体系的なアプローチが用いられる。
【０００４】
１つを超える目的関数を有するそのようなシステムの最適化は、多目的最適化と呼ばれている。単目的最適化問題（ＳＯＰ）と違って、多目的最適化問題（ＭＯＰ）は単一の最適解が求められない。代わりに、複数の目的の中の異なる二律背反を表わす１セットの最適解に帰着する。これらの解は、パレート（Ｐａｒｅｔｏ）最適解あるいはパレート最適解セットと呼ばれている。パレート最適解セットの設計目的関数空間表現は、パレート最適前線（Ｐａｒｅｔｏ  ｏｐｔｉｍａｌ  ｆｒｏｎｔ（ＰＯＦ））として知られている。パレート最適解を見つける最も一般的なストラテジーのうちの１つは、多目的最適化問題を単目的最適化問題に変換し、次に、単一のトレードオフ解を見つけることである。ＭＯＰをＳＯＰに変換するにはいくつかの方法があり、詳細には、重み付け和ストラテジー（ｗｅｉｇｈｔｅｄ  ｓｕｍ  ｓｔｒａｔｅｇｙ）、反転ユーティリティー関数（ｉｎｖｅｒｔｅｄ  ｕｔｉｌｉｔｙ  ｆｕｎｃｔｉｏｎｓ）、ゴールプログラミング（ｇｏａｌ  ｐｒｏｇｒａｍｍｉｎｇ）、ε−制約ストラテジー（ε−ｃｏｎｓｔｒａｉｎｔ  ｓｔｒａｔｅｇｙ）等がある。ＭＯＰをＳＯＰに変換するこの従来技術アプローチの欠点は、それぞれの最適化シミュレーションが単一のトレードオフに帰着するということであり、複数のシミュレーションは十分に異なったトレードオフ解が得られないこともある。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
最近、工学設計最適化方法論のうちの１つは、遺伝的アルゴリズム（ＧＡ）あるいは進化型アルゴリズムに基づいている。遺伝的アルゴリズムが効率的に多目的最適化問題を解くことは実証されている。遺伝的アルゴリズムが、単一の数値シミュレーションにおいて異なるセットのトレードオフ解が得られるからである。ＧＡは、一般に、初期世代としてランダムに生成された母集団からスタートする。その後、乗換えおよび／または突然変異など進化スキームが、将来世代を生成するのに用いられる。ＭＯＥＡにおける問題のうちの１つは、求められたパレート最適解が多様化しない（つまり、拡散および均一性が不十分である）、あるいは収束が不適当となるおそれがあるということにある。
【０００６】
したがって、ＭＯＥＡに基づいた工学最適化におけるクオリティ、特にＰＯＦの多様性を改善するために、ＭＯＥＡに基づいた工学設計最適化において１セットの多様なグローバルパレート最適解を達成する改善方法およびシステムが望まれよう。
【課題を解決するための手段】
【０００７】
製品（例えば自動車、携帯電話など）の工学設計最適化において、１セットのより収束しかつより多様なパレート最適解を求めるシステムおよび方法を開示する。本発明の一の面では、一つの製品に対し、ＭＯＥＡに基づいた複数の工学最適化が独立して行なわれる。初期世代や進化型アルゴリズムなどのあるパラメータによって、複数の工学設計最適化のそれぞれは他の工学設計最適化と異なっている。例えば、初期世代の母集団（設計選択肢）は、乱数あるいは擬似乱数発生器の異なるシード（ｓｅｅｄ）からランダムに生成することができる。他では、それぞれの進化型アルゴリズムは、限定されないが、ノンドミネーテッド・ソーティング・ジェネティック・アルゴリズム（Ｎｏｎ−ｄｏｍｉｎａｔｅｄ  Ｓｏｒｔｉｎｇ  Ｇｅｎｅｔｉｃ  Ａｌｇｏｒｉｔｈｍ（ＮＳＧＡ−ＩＩ））およびストレングス・パレート進化型アルゴリズム（ｓｔｒｅｎｇｔｈ  Ｐａｒｅｔｏ  ｅｖｏｌｕｔｉｏｎａｒｙ  ａｌｇｏｒｉｔｈｍ（ＳＰＥＡ））などを含む特定の進化型アルゴリズムを用いる。
【０００８】
本発明の他の面では、独立して行われるそれぞれの最適化のパレート最適解を、１セットのより収束しかつより多様な解を生成するよう、組み合わせる。組み合わせは、最適化の進化プロセスの際に、１つ以上の予め定義されたチェックポイントで行なうことができる。
【０００９】
さらに他の面では、ＭＯＥＡに基づいた工学最適化は、コンピュータシステムにおいて行なわれる。例えば、設計目的関数の評価は、コンピュータ支援工学解析（例えば有限要素解析法、メッシュフリー解析等）を用いて行なわれる。ランダムに生成された母集団は、コンピュータシステムにおいて実現された乱数あるいは擬似乱数発生器に基づいている。
【００１０】
本発明の他の目的、特徴および利点は、添付した図面を参照し、以下の本発明の実施の形態の詳細な説明を考察することによって明らかとなろう。
【００１１】
本発明のこれらおよび他の特徴、面および利点は、以下の説明、添付の特許請求の範囲および添付した図面を考慮してより理解されよう。図面は次の通りである。
【図面の簡単な説明】
【００１２】
【図１Ａ】設計変数としての厚さを用いて最適化される管状の部材（例示的な工学製品）を示す図である。
【図１Ｂ】多目的関数空間におけるパレート最適解を含んでいる例示的な解を示す図である。
【図１Ｃ】本発明の一の実施形態を実行するのに用いられる、非優勢解基準を判断する例示的なプロセスを示すフローチャートである。
【図２】パレート前線における解の混雑距離の定義をグラフで示す図である。
【図３Ａ】本発明の実施形態にかかる、独立して行なわれたＭＯＥＡに基づいた２つの最適化から、解を組み合わせる例を示す図である。
【図３Ｂ】本発明の実施形態にかかる、独立して行なわれたＭＯＥＡに基づいた２つの最適化から、解を組み合わせる例を示す図である。
【図４】ＭＯＥＡに基づいた複数の最適化を組み合わせてより収束しかつより多様な１セットの解を形成する例を示す図である。
【図５】本発明の実施形態にかかる、独立して行なわれたＭＯＥＡに基づいた複数の工学設計最適化から得られるパレート最適解を組み合わせることによって、より収束しかつより多様な１セットの解を求める例示的なプロセスを示すフローチャートである。
【図６】遺伝アルゴリズムすなわち進化型アルゴリズムを用いて、工学最適化を行なう例示的なプロセスを示すフローチャートである。
【図７】本発明の実施形態を実現可能である演算処理装置の主要な部品を示す機能図である。
【発明を実施するための形態】
【００１３】
まず図１Ａを参照して、管状の構造部材１０２（つまり例示的な工学製品）が、ある設計荷重条件の下で、設計目的が与えられた材料（例えば通常の強さ鋼）の重さの最小化、したがって、コストの最小化である工学最適化において、最適化される。厚さ１０４が薄いほど、構造物の重量が小さくなることは明らかである。しかしながら、ある点では、その構造物が設計荷重に耐えるには弱くなりすぎることになる（例えば、材料降伏および／または座屈による構造的な破壊）。したがって、この管状の構造体の工学最適化は、強さを最大限にし、その結果より安全な構造体とする他の設計目的を必要とする。この例示的なケースにおいて、厚さ１０４は、設計空間としての範囲（例えば８分の１インチから０．５インチ）を有することができる設計変数である。あらゆる設計選択肢がこの空間から選択される。多目的進化型アルゴリズムにおいて、それぞれの世代における母集団すなわち設計選択肢は設計空間から選択される。
【００１４】
１つの設計変数だけである場合、設計空間は一次元（例えば線）である。２つの変数に対しては、設計空間は二次元領域になる、などである。３つを超える設計変数に対しては、設計空間は図示することができない超空間（ハイパースペース（ｈｙｐｅｒｓｐａｃｅ））である。
【００１５】
図１Ｂは、２つの相反する設計目的に基づく、例示的な設計最適化の結果を示すＸ−Ｙ図である。２つの軸は、相関的要素ｆ1，ｆ2の態様の２つの異なる目的を表わす。多目的最適化においては、一つの最適な解がないが、その代わりに、目的間のトレードオフ関係を反映する１セットの解がある。それぞれの解を区別するために、非優勢基準と呼ばれる概念が、解の比較のために用いられる。
【００１６】
図１Ｃは、非優勢基準を判断する例示的なプロセスを示すフローチャートである。２つの設計選択肢が、複数の設計目的（つまり多目的）関数に応じてそれぞれの解ＸおよびＹを求めるよう評価される。以下の３つの条件のうちのいずれかが真（ｔｒｕｅ）の場合、解ＸはＹより優勢である（ステップ１７２）。
１．  Ｘは実行可能であり、Ｙは実行不可能である。（ステップ１５４および１５６）
２．  ＸおよびＹの両方とも実行不可能である（ステップ１６０）が、ＸはＹほど実行不可能ではない（ステップ１６２）。
３．  ＸおよびＹの両方とも実行可能な場合（ステップ１６４）、以下の２つの条件が満たされる必要がある（ステップ１７０および１７２）。
ａ．  Ｘは、すべての設計目的においてＹより悪くなく、かつ
ｂ．  Ｘは少なくとも１つの設計目的においてＹより厳密によい。
さらに、解ＹがＸより優勢である場合を判断することができる（ステップ１７５および１７６）。最後に、どちらの解も他方より優勢でない場合、ＸおよびＹは互いに対して非優勢である（ステップ１７８）。
【００１７】
図１Ｂは、２つの目的の、制約されていない最小化の例を示す。それぞれのドットは、領域１１６内の設計選択肢の評価された解（例えばＭＯＥＡのある世代における母集団のうちの１つ）を表わす。非優勢基準に応じて、それぞれの菱形１２２に対して、少なくとも１つの目的においてその菱形１２２よりよく、他の目的において劣ることのない、少なくとも１つの三角形１２４がある。このように、菱形１２２におけるすべての個々の解よりも、三角形１２４の方が優勢である。同様に、すべての三角形１２４よりも、正方形１２６の方が優勢であり、また、正方形よりも円１２８の方が優勢である。三角形１２４によって表わされる解は、三角形１２４によって表わされる他のどの解よりもよいものはないと言うことができ、したがって、三角形１２４によって表わされる解は、互いに対して非優勢である。円１２８によって表わされるすべての個々の解は他のどの個々の解に対しても非優勢であり、したがって、円１２８によって表わされるすべての個々の解は、最善すなわち最も高いランク（例えばランク１）を有する。もし仮に円によって表わされるすべての点が図１Ｂから除去されると、正方形１２６によって表わされる個々の解は、すべての他の解に対して非優勢である。したがって、正方形１２８には、次の最善のランク（例えばランク２）などが割り当てられる。
【００１８】
図１Ｂに示す例において、円１２８は１セットのパレート最適解を表わす。また、すべての円１２８を接続するライン１３０を、パレート最適前線という。一般的に、同じランクを有する１つを超える個々のものすなわち解があるであろうことを付言しておく。
【００１９】
パレート最適解の一の面は、２つの測定（拡散と均一性）を用いて定量化される多様性という。拡散は、Ｎ次元関数空間における１セットのパレート最適解によって形成される最大の超立方体（ｈｙｐｅｒｃｕｂｅ）の最大対角線長さとして定義される。拡散は、また、最大超立方体体積として定義することもできる。均一性は、１セットのパレート最適解において解がどのくらい均一に分布しているかとして定義される。数学的に、均一性Δは次のように表現することができる。
【００２０】
【数１】
2011187056.tif 000003
【００２１】
ここで、ｄiは関数空間における解の混雑距離（Ｃｒｏｗｄｉｎｇ  Ｄｉｓｔａｎｃｅ）（図２にグラフで示した例を参照）として定義され、「ｎ」は、１セットのパレート最適解における解の総数である。混雑距離は、他の解によって取り囲まれていない解の周囲の最大超立方体の周長の半分として定義される。境界点すなわち境界解（例えば２１０ａおよび２１０ｎ）には、最も近い隣接解との距離の２倍の混雑距離が割り当てられる。均一性測定は、混雑距離の標準偏差と同様であり、したがって、均一性計量は小さい値が望ましく、小さい値のとき解はよく分散されている。
【００２２】
図２は、２つの関数によって表わされる設計目的関数空間（つまり２つの軸としてのｆ1およびｆ2を用いる二次元関数空間）における例示的な１セットのパレート最適解（ドットとして示す）２１０ａ〜ｎを示す。パレート最適前線を、点線２３０によって表す。２つの極値端解２１０ａ、２１０ｎの間の距離２４０は、１セットのパレート最適解の拡散という。解２１０ｉの混雑距離ｄiは、距離ａi＋ｂiと等しい。
【００２３】
図示および説明の簡単化のために、２つの設計目的関数のみを図２において例示する。他の多数の目的関数が現実世界のプロジェクトにおいて行われる最適化において用いられることは、当業者には理解されよう。
【００２４】
ＭＯＥＡに基づいた工学設計最適化における目標は、完全なグローバルパレート最適解のセットを求めることである。しかしながら、グローバルパレート最適解のセットは、現実世界の製品では未知であり、したがって、「多様な（ｄｉｖｅｒｓｉｆｉｅｄ）」解を取り囲む１セットの解が望まれる。
【００２５】
そのような目標を達成する手段のうちの１つを、図３Ａ乃至図３Ｂに示す例で説明する。図３Ａにおいて、製品のＭＯＥＡに基づいた２つの最適化（つまり第１および第２最適化３０２ａ〜ｂ）が、独立して行なわれる。それぞれの最適化は、ランダムに生成された初期世代の母集団（つまり設計選択肢）で始まる。これら２つの最適化の差は、初期世代における母集団が異なるということにある。一の態様において、乱数あるいは擬似乱数発生器の異なるシードが用いられる。その結果、異なる一連の乱数あるいは擬似乱数により、異なる母集団が生成される。そして、設計選択肢（母集団）は、目的関数空間において評価されランク付けられる。図３Ａに示す初期世代のパレート最適解の第１および第２セット３０４ａ〜ｂは、それぞれ、第１および第２最適化３０２ａ〜ｂに対するものである。最適化は、矢印「ＥＡ」３０５として示す進化型アルゴリズム（例えばＮＳＧＡ−ＩＩ）によってＮ世代にわたって実行される。パレート最適解のそれぞれのセット３０６ａ〜ｂは、Ｎ番目の世代の終了時に得られる。そしてセット３０６ａ〜ｂは、組み合わせられて、組み合わされた１セットのパレート最適解３０８となる。組み合わされたセット３０８が、セット３０６ａ〜ｂのどちらよりも広く拡散しており、したがって、より収束しかつより多様であることは視覚的に明白である。セット３０６ａ〜ｂを組み合わせるとき、非優勢な解のみが保持される（優勢な解を決定する例示的なプロセスは図１Ｃを参照）。例えば、解３０９ｂは解３０９ａよりも優勢であり、したがって、解３０９ｂは最終的に組み合わされたセット３１０には含まれない。
【００２６】
２つの最適化３１２ａ〜ｂが、また、図３Ｂに示す例において独立して行なわれる。この例において、最適化３１２ａ〜ｂは、初期世代として、同じセットの設計選択肢（つまり母集団）からスタートする。設計目的関数を評価しランク付けした後、パレート最適解の第１および第２セット３１４ａ〜ｂは同一である。独立最適化が、矢印「ＥＡ−１」３１５ａおよび矢印「ＥＡ−２」３１５ｂによって示す２つの異なる進化型アルゴリズムを用いて実行される。例えば、「ＥＡ−１」はＮＳＧＡ−ＩＩであり、一方、「ＥＡ−２」はＳＰＥＡである。Ｎ世代の進化の後に、パレート最適解の２つのセット３１６ａ〜ｂが得られ、そして組み合わされて、組み合わされたセット３１８となる。この例において、組み合わされたセット３１８の均一性は第２セット３１６ｂよりもはるかによく、また組み合わされたセット３１８の拡散は第１セット３１６ａよりもよい。前の例と同様、最終的に組み合わされたセット３２０は、セット３１８において非優勢な解のみを含んでいる。
【００２７】
次に、図４を参照して、本発明の実施形態にかかる、ＭＯＥＡに基づいた工学設計最適化において、より多様なセットのパレート最適解を求めるより一般化した例を示す。多くのＭＯＥＡに基づいた最適化（第１から第Ｍ番目４０２ａ〜ｍ）が、任意の初期世代の設計選択肢を用いて独立して行なわれる。進化は、同じあるいは異なる進化型アルゴリズム（つまり、「ＥＡ−１」４０５ａ・・・「ＥＡ−Ｍ」４０５ｍ）を用いて実行される。Ｎ世代の後に、Ｍセットのパレート解４０６ａ〜ｍが組み合わせられて、組み合わされたセット４０８となる。なお、ＭとＮは正の整数あるいは全整数であり、組み合わされたセット４０８は、それぞれの独立した最適化と比較してより収束しかつより多様な解を含むことになろう。最後に、優勢な解がセット４０８から取り除かれて、最終的に組み合わされたセット４２０が形成される。
【００２８】
図５は、本発明の実施形態にかかる、独立して行なわれたＭＯＥＡに基づいた複数の工学設計最適化から得られるパレート最適解を組み合わせることによって、多様なこのようなセットの解を求める例示的なプロセス５００を示すフローチャートである。プロセス５００は、好ましくはソフトウェアで実行される。
【００２９】
プロセス５００は、ステップ５０２において、最適化される製品（例えば家電、車、飛行機など）の記述を受け取ることによってスタートする。ステップ５０４においては、製品の設計空間が、１セットの設計変数を選択することによって定義される（非常に単純な例に関する図１Ａを参照）。また、目的関数空間は、ＭＯＥＡに基づいた最適化において複数の設計目的関数を特定することによって定義される。次に、ステップ５０６において、複数の独立したＭＯＥＡに基づいた工学設計最適化が行なわれる（図４に示す例を参照）。最適化のそれぞれは、ある異なる特徴あるいはパラメータを、例えば初期世代における設計選択肢および／または進化型アルゴリズム（ＮＳＧＡ−ＩＩ、ＳＰＥＡなど）を有するよう構成される。そして、ステップ５０８において、最適化のそれぞれにおいて求められたパレート最適解が、所定のチェックポイントで（例えばＮ番目の世代の進化後）組み合わされて、組み合わされた１セットの解となる。チェックポイントを、多くの基準、例えば、目的関数評価の総数、世代の数、あるいは組み合わされた１セットの解がグローバルパレート最適解のセットに達成したか否かを決定するのに適している他の同等な条件によって定義することができる。プロセス５００は、ＭＯＥＡに基づいた最適化の全体停止基準あるいは全体終了基準が満たされたか否かを決定する判断５１０に移行する。全体停止基準は、多くの条件において実現することができる。例えば、それは独立して行なわれた最適化のうちのいずれか１つが収束したときとして、あるいは独立した最適化のすべてが収束したときとして、定義することができる。また、すべての以前のチェックポイントで組み合わされたすべてのセットを試験してパレート最適解が収束したか否かを判断することもできる。
【００３０】
「ｎｏ」の場合、プロセス５００は、ステップ５１２に移行し、次のチェックポイントで複数のＭＯＥＡに基づいた最適化を実行し続ける。そして、判断５１０が真になるまで、ステップ５０８および判断５１０が繰り返される。プロセス５００は、「ｙｅｓ」の分岐によって終了する。
【００３１】
図６に示すフローチャートは、製品の工学設計最適化において用いられる進化型アルゴリズムを実行する例示的なプロセス６００を示す。プロセス６００は、好ましくはソフトウェアで実行される。
【００３２】
プロセス６００は、ステップ６０２において設計空間から母集団（例えば、製品の設計選択肢）の初期世代を生成することによってスタートする。設計空間は、「ｎ」個の設計変数によって定義されたｎ次元超空間である。初期世代の母集団は、一般にランダムに生成され、乱数あるいは擬似乱数の発生器を用いるコンピュータシステム（例えば図７のコンピュータ７００）においてシミュレートすることができる。次に、ステップ６０４において、それぞれの設計選択肢が評価される。評価は、一般に、コンピュータ支援工学解析（例えば有限要素解析法、メッシュフリー解析、境界要素解析（ｂｏｕｎｄａｒｙ  ｅｌｅｍｅｎｔ  ａｎａｌｙｓｉｓ）、数値流体力学（ｃｏｍｐｕｔａｔｉｏｎａｌ  ｆｌｕｉｄ  ｄｙｎａｍｉｃｓ）等）を用いて行なわれる。コンピュータ支援の解析の解は、目的関数空間内に配置される。次に、判断６０６において、所定の停止基準が満たされたか否かが判断される。「ｎｏ」の場合、プロセス６００は、ステップ６０８に移行し、解をランク付ける（例えば図１Ｂに示す非優勢な解）。他の同等な方法も用いることができる。
【００３３】
ステップ６１０において、次世代の母集団あるいは設計選択肢が、乗換えや突然変異などの進化スキームを用いて先の世代から生成される。そして、プロセス６００は、ステップ６０４に戻り、判断６０６が真になるまで繰り返される。そして、プロセス６００は、終了する。
【００３４】
一の側面において、本発明は、ここに説明した機能を実行可能な１つ以上のコンピュータシステムに対してなされたものである。コンピュータシステム７００の一例を、図７に示す。コンピュータシステム７００は、プロセッサ７０４など１つ以上のプロセッサを有する。プロセッサ７０４は、コンピュータシステム内部通信バス７０２に接続されている。種々のソフトウェアの実施形態を、この例示的なコンピュータシステムの点から説明する。この説明を読むと、いかにして、他のコンピュータシステムおよび／またはコンピューターアーキテクチャーを用いて、本発明を実行するかが、関連する技術分野に習熟している者には明らかになるであろう。
【００３５】
コンピュータシステム７００は、また、メインメモリ７０８好ましくはランダムアクセスメモリ（ＲＡＭ）を有しており、そして二次メモリ７１０を有することもできる。二次メモリ７１０は、例えば、１つ以上のハードディスクドライブ７１２、および／またはフレキシブルディスクドライブ、磁気テープドライブ、光ディスクドライブなどを表わす１つ以上のリムーバブルストレージドライブ７１４を有することができる。リムーバブルストレージドライブ７１４は、よく知られている方法で、リムーバブルストレージユニット７１８を読み取りおよび／またはリムーバブルストレージユニット７１８に書き込む。リムーバブルストレージユニット７１８は、リムーバブルストレージドライブ７１４によって読み取り・書き込みされるフレキシブルディスク、磁気テープ、光ディスクなどを表わす。以下にわかるように、リムーバブルストレージユニット７１８は、コンピューターソフトウェアおよび／またはデータを内部に記憶しているコンピュータで使用可能な記憶媒体を有している。
【００３６】
代替的な実施形態において、二次メモリ７１０は、コンピュータプログラムあるいは他の命令をコンピュータシステム７００にロードすることを可能にする他の同様な手段を有することもできる。そのような手段は、例えば、リムーバブルストレージユニット７２２とインタフェース７２０とを有することができる。そのようなものの例には、プログラムカートリッジおよびカートリッジのインタフェース（ビデオゲーム機に見られるようなものなど）と、リムーバブルメモリチップ（消去可能なプログラマブルＲＯＭ（ＥＰＲＯＭ）、ユニバーサルシリアルバス（ＵＳＢ）フラッシュメモリ、あるいはＰＲＯＭなど）および関連するソケットと、ソフトウェアおよびデータをリムーバブルストレージユニット７２２からコンピュータシステム７００に転送することを可能にする他のリムーバブルストレージユニット７２２およびインタフェース７２０と、が含まれうる。一般に、コンピュータシステム７００は、プロセススケジューリング、メモリ管理、ネットワーキングおよびＩ／Ｏサービスなどのタスクを行なうオペレーティングシステム（ＯＳ）ソフトウェアによって、制御され連係される。
【００３７】
通信用インタフェース７２４も、また、バス７０２に接続することができる。通信用インタフェース７２４は、ソフトウェアおよびデータをコンピュータシステム７００と外部装置との間で転送することを可能にする。通信用インターフェース７２４の例には、モデム、ネットワークインターフェイス（イーサネット（登録商標）・カードなど）、コミュニケーションポート、ＰＣＭＣＩＡ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ  Ｍｅｍｏｒｙ  Ｃａｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ａｓｓｏｃｉａｔｉｏｎ）スロットおよびカードなど、が含まれうる。ソフトウェアおよびデータは通信インタフェース７２４を介して転送される。コンピュータ７００は、専用のセットの規則（つまりプロトコル）を実行してデータを送受信する。一般的なプロトコルのうちの１つは、インターネットにおいて一般的に用いられているＴＣＰ／ＩＰ（伝送コントロール・プロトコル／インターネット・プロトコル）である。一般的に、通信インタフェース７２４は、データファイルをデータネットワーク上で伝達される小さいパケットへ分割し、あるいは受信したパケット元のデータファイルへと再アセンブルする。さらに、通信インタフェース７２４は、正しい宛先に届くようそれぞれのパケットのアドレス部分に対処し、あるいはコンピュータ７００が宛先となっているパケットを他に向かわせることなく受信する。この書類において、「コンピュータプログラム媒体」、「コンピュータが読取り可能な媒体」、「コンピュータが記録可能な媒体」および「コンピュータが使用可能な媒体」という用語は、リムーバブルストレージドライブ７１４（例えば、フラッシュストレージドライブ）および／またはハードディスクドライブ７１２に組み込まれたハードディスクなどの媒体を概して意味して用いられている。これらのコンピュータプログラム製品は、コンピュータシステム７００にソフトウェアを提供する手段である。本発明は、このようなコンピュータプログラム製品に対してなされたものである。
【００３８】
コンピュータシステム７００は、また、コンピュータシステム７００をアクセスモニタ、キーボード、マウス、プリンタ、スキャナ、プロッタなどに提供する入出力（Ｉ／Ｏ）インタフェース７３０を有することができる。
【００３９】
コンピュータプログラム（コンピュータ制御ロジックともいう）は、メインメモリ７０８および／または二次メモリ７１０にアプリケーションモジュール７０６として記憶される。コンピュータプログラムを、通信用インタフェース７２４を介して受け取ることもできる。このようなコンピュータプログラムが実行された時、コンピュータプログラムによって、コンピュータシステム７００がここに説明した本発明の特徴を実行することが可能になる。詳細には、コンピュータプログラムが実行された時、コンピュータプログラムによって、プロセッサ７０４が本発明の特徴を実行することが可能になる。したがって、このようなコンピュータプログラムは、コンピュータシステム７００のコントローラを表わしている。
【００４０】
ソフトウェアを用いて発明が実行されるある実施形態において、当該ソフトウェアはコンピュータプログラム製品に記憶され、リムーバブルストレージドライブ７１４、ハードドライブ７１２あるいは通信用インタフェース７２４を用いてコンピュータシステム７００へとロードすることができる。アプリケーションモジュール７０６は、プロセッサ７０４によって実行された時、アプリケーションモジュール７０６によって、プロセッサ７０４がここに説明した本発明の機能を実行する。
【００４１】
所望のタスクを達成するために、Ｉ／Ｏインタフェース７３０を介したユーザ入力によってあるいはよることなしに、１つ以上のプロセッサ７０４によって実行することができる１つ以上のアプリケーションモジュール７０６を、メインメモリ７０８に、ロードすることもできる。動作においては、少なくとも１つのプロセッサ７０４がアプリケーションモジュール７０６のうちの１つが実行されると、結果が演算されて二次メモリ７１０（つまりハードディスクドライブ７１２）に記憶される。ＣＡＥ解析あるいは工学設計最適化の状況（例えば組み合わせ前後のパレート最適解）は、テキストあるいはグラフィック表現で、Ｉ／Ｏインタフェース７３０を介してユーザに報告される。
【００４２】
本発明を具体的な実施形態を参照しながら説明したが、これらの実施形態は単なる例示であって、本発明を限定するものではない。開示した例示的な実施形態に対する種々の変更あるいは変形を、当業者は思いつくであろう。例えば、設計目的関数の数を２として示したが、実際には、非常に多数の設計目的が用いられている。更に、それぞれの世代における母集団あるいは設計選択肢のサイズを少数で図示し説明したが、他のサイズあるいは数を代わりに用いることができる。つまり、発明の範囲は、ここで開示した具体的で例示的な実施形態に限定されず、当業者が容易に想到するあらゆる変更が、本願の精神および認識範囲そして添付の特許請求の範囲の権利範囲に含まれる。
【符号の説明】
【００４３】
１０２  管状構造部材
１０４  厚さ
１３０  パレート最適前線
２１０ａ〜ｎ  境界解
２３０  パレート最適前線
２４０  極値端解距離
７００  コンピュータシステム
７０２  バス
７０４  プロセッサ
７０６  アプリケーションモジュール
７０８  メインメモリ
７１０  二次メモリ
７１２  ハードディスクドライブ
７１４  リムーバブルストレージドライブ
７１８  リムーバブルストレージユニット
７２０  インタフェース
７２２  リムーバブルストレージユニット
７２４  通信インタフェース
７３０  Ｉ／Ｏインターフェース
【図１Ａ】
2011187056.tif 000004
【図１Ｂ】
2011187056.tif 000005
【図１Ｃ】
2011187056.tif 000006
【図２】
2011187056.tif 000007
【図３Ａ】
2011187056.tif 000008
【図３Ｂ】
2011187056.tif 000009
【図４】
2011187056.tif 000010
【図５】
2011187056.tif 000011
【図６】
2011187056.tif 000012
【図７】
2011187056.tif 000013
【外国語明細書】
2011187056000001.pdf