以下、参照はエキスパートシステムの好ましい実施形態に詳細に行われ、それらの例は添付の図面に示されている。本明細書に含まれた実施形態の図面および説明が特定の関連のある要素を示し、かつ、説明する一方、明確さの目的のために、典型的なコンピュータおよびネットワークに見出される他の要素を排除していることは理解されよう。
本エキスパートシステムは特定の以前の設計の方法およびシステムの欠点に対する解決策を提供する。当業者は、本発明の実施形態がエンジンの設計に関連して説明されている一方、本発明の態様はエンジンの設計を超えて適用可能であることを直ちに理解されよう。例えば、本明細書において開示かつ請求されているエキスパートシステム技術は、様々な目的のためのシミュレーションおよび最適化のシステムならびに複雑な計算システムの全般に適用可能とすることができる。本明細書で説明されているユーザインターフェースも、様々な有用なアプリケーションにおいて適用可能とすることができる。したがって、本発明の特定の実施形態がエンジンの設計に関する一方、本発明およびその態様は様々なアプリケーションにおいて有益であると認識されている。設計最適化の他の詳細、特徴、および、長所は、実施形態の以下の詳細な説明においてさらに明らかになる。
プロセッサに基づいた装置、複数のプロセッサに基づいたシステム、および、プロセッサにより実行された時にプロセッサにエキスパートシステム機能を行わせる指令を含む製造の条項を含むエキスパートシステムを実行するためのシステム、装置、および、方法は本明細書に説明されている。「1つの実施形態」、「特定の実施形態」に対する明細書におけるいずれの参照も、または、ある実施形態に対する同様の参照も、その実施形態に関連して説明された特定の機能、構造、または、特徴が本発明の少なくとも1つの実施形態に含まれたことを示すことを意図されている。本明細書の様々な場所でのこのような用語の出現は、必ずしもすべてが同じ実施形態を参照してはいない。「または」と称するは包含することをさらに意図され、そのため、「または」は1つもしくは他の「または」の付いた用語、または、2つ以上の「または」の付いた用語を示すことができる。
本発明が様々な複雑な装置および工程を最適化するために使用することができる一方、以下の実施形態は内燃エンジンの最適化における本発明の使用に関する。このようなエンジンは、エンジンの動作および多くの望ましい目標に寄与する多くの属性を有する。内燃エンジンの属性は、例えば弁の数およびサイズ、ピストンの直径およびストローク、点火のタイミング、燃料の供給、量、および、タイミング、ならびに、排気パイプの直径および長さを含む。内燃エンジンの動作に対する目標は、例えば燃料消費量、排出物、トルク、および、パワーを含む。
以下の説明において、用語「変数セット」は、単一のシミュレーションを行うために利用することができる変数値1セットを示すために利用されている。「試行」または「シミュレーション」は、与えられた試験条件下での変数1セットに関したシミュレーションを実行する行為である。「試験手順」は、試行が行われる1セットの試験条件である。「結果」は、試験条件に従った1セットの変数のシミュレーションからの特徴の値または依存変数を含む。用語「解決策」は、目標を評価するために利用された1つまたは複数の試行のグループを指す。用語「通過」は、最善の変数のセットを見出すためにランク付けされた解決策の収集結果を示す。用語「最適条件」は、通過の解決策のランク付けされたセットからの最善変数セットである局所最適条件を示すために利用されている。「モデル」はシミュレートすることができる変数のセットであり、「設計構成」は、設計を採用しているモデルである。
エキスパートシステムは、一般的に、人間の判断および挙動をシミュレートするコンピュータプログラム、または、特定の分野における専門的な知識および経験を有する編成体である。典型的に、このようなシステムは、ユーザおよびエキスパートシステムの蓄積された経験に基づいた情報を含む知識ベースを含む。エキスパートシステムは、主に、問題の診断において支援するためのそれらの持つ能力に対して、最近知られてきている。例えば、コンピュータの専門家は、コンピュータシステムの問題の原因を診断するため、最近のコンピュータシステムの複雑な相互作用を介して、彼らを誘導するためにエキスパートシステムを利用することができる。医師も、疾病および疾患について多くが知られているが、知られていることの多くが重複かつ矛盾している現代世界における患者の疾患の診断において、彼らを支援するためにエキスパートシステムを使用することができる。
本エキスパートシステムは、複雑なデバイスまたは工程の動作を見積もるために、それらのデバイスまたは工程をシミュレートすることを所望する設計者を支援する際の使用のためのエキスパートシステムを意図している。例えば、それらのデバイスの動作が試作品の作成される前に最大限可能な程度までシミュレートおよび証明されることが、デバイスの設計者によりしばしば所望されている。複雑なデバイスのシミュレーションは、通常、そのデバイスを作成するよりはるかに迅速かつはるかに安価である。しかし、車両のエンジンなどのよく知られているデバイスでさえ、シミュレートされるべきエンジンの定義およびシミュレーションをどのように行うかについての戦略を作成するためには熟練者を必要とするほどに、しばしば複雑である。したがって、本発明は、人間の設計者からの限られた情報を使用して、複雑なモデルおよび戦略を定義するために、熟練設計者および新人設計者により大きく利用することができる専門技術の知識ベースを提供する。
本発明の実施形態において利用されている知識ベースは、機械読取り可能なデータベースを含むことができ、かつ、システムにおいて利用される知識を含む。この知識は、例えば、目標および試験手順の定義、最適化の規則などの戦略関連情報、モデル関連情報、ならびに、シミュレーションおよび最適化の結果などの目的に関連した情報を含むことができる。これらのエキスパートシステムの知識ベースは、シミュレーションまたは最適化を介した知識ベースに含まれた情報に行われた変更、および、シミュレーションまたは最適化のシステムに入力された新しい情報を追跡する利益を提供することができる。
どの情報が新しいかを決定し、かつ、新しい情報を知識ベース内に自動的に保存するために、最適化において利用される情報を知識ベースに含まれた情報と比較する比較機能は、知識ベースと連動させることができる。したがって、エキスパートシステムの知識ベースは成長させ、かつ、改善することができる。例えば、設計者および/またはエキスパートシステムにより作成された新しい各モデルは知識ベースに保存することができ、したがって、将来の最適化における使用のために使用および修正することができるモデルの包括的なライブラリを構築する。同様に、設計者および/またはエキスパートシステムにより作成された新しい各戦略は知識ベースに保存することができ、したがって、戦略の包括的ライブラリを構築する。代案として、保存される情報を支配する規則は、例えば改善された結果を提供する情報のみを保存するために利用することができる。データベースに保存された各モデルまたは戦略の品質は、それらを、証明されたモデルおよび戦略に対しては承認されたとして、実験的モデルおよび戦略に対しては未承認として、または、他所からシステムに持ち込まれたモデルおよび戦略に対してはその他として分類するステップにより維持することもできる。
知識ベースに保存されたデータの進化も、そのデータを作成した工程を検討することができるように維持することができる。例えば、新しい戦略を作成するために修正された戦略は、系統のフォーマットで維持することができる。知識ベースにおける情報を作成した人物またはワークステーション、および、その情報がいつ作成されたかも、追跡の目的のために保存することができる。進化データは、例えば、どの人物および工程が最高品質のモデルおよび戦略を作成するかを決定するために管理により使用されることができる。
したがって、本エキスパートシステムは知識ベースにおける様々な構成における完全なデバイス定義を提供することができる。したがって、本エキスパートシステムは、例えばテンプレートの方法により設計者により入力されたデバイス属性を、入力された属性に最も緊密に対応する1つまたは複数の完全なデバイス定義に適合させることができ、かつ、将来の使用のために1つまたは複数の完全なデバイス定義を選択することができる。
同様に、本エキスパートシステムは、例えば知識ベースにおける完全な戦略定義を提供することができる。それらの戦略定義は、例えば、様々なデバイスをどのようにしてシミュレートするか、および、様々な目標への解決策をどのようにして策定するかを定義することができる。続いて、本エキスパートシステムは、例えばテンプレートの方法により設計者により入力された戦略属性を、入力された属性に最も緊密に対応する1つまたは複数の完全な戦略定義に適合させることができ、かつ、将来の使用のために1つまたは複数の完全な戦略定義を保存することができる。
1つの実施形態において、本エキスパートシステムは最適化において支援するために動作する。本明細書に提供されている実施例において利用されている最適化システムは、3つの主な態様、すなわち、シミュレータにより必要とされるすべての属性の値を定義する基本モデル、最適化の目標に全般的に関連した目的、および、基本モデルのどの属性が変化するか、および、最適化中にそれらの属性がどの程度変化するかに全般的に関連した戦略を含む。
したがって、本エキスパートシステムの実施形態は、最適化された設計を作成するために修正されるべき属性および構成部分の開始定義となる基本設計を利用する。本エキスパートシステムは、各仕様が1つまたは複数の目標および1つまたは複数の試験手順を含む1つまたは複数の仕様を含む目的も利用する。本エキスパートシステムは、1つまたは複数の変数、制約、および、1つの推定エンジンを含む戦略も利用する。
最適化に対する規則は、最適化システム全体を通じて分配することができる。例えば、属性に対する規則は、例えば他の属性に基づいた方程式により属性を定義することにより基本モデル内に埋め込むことができる。規則は目的にも埋め込むことができる。例えば、目標が最小に抑えられるべきか、最大化されるべきか、適合されるべきか、高い限界値として使用されるべきか、または、低い限界値として使用されるべきかは、目的内で定義することができる規則である。複数の目標の重み付けも目的内で定義することができる。重み付けは目的内の1つまたは複数の目標の各々に対する複数の点に適用することもできる。例えば、目標は特定の毎分回転数の各点において評価することができる。したがって、それらの点の各々は、所望されれば、独立に重み付けすることができる。規則はさらに戦略にも埋め込むことができる。例えば、可変パラメータ、特定の属性を算出するために使用される方程式などの制約、および、探査の規則は戦略内で定義することができる。
最適化システムの複数の領域に規則を埋め込むことの精妙さは、規則が適用される順序である。例えば、もしエンジンに装着されたパイプが出口の直径を入口の直径に等しくする方程式により基本モデルにおいて定義され、かつ、パイプが、出口および入口の直径が変化することができるように戦略において定義されていれば、それらの規則の実行の優先度または順序が、真っ直ぐなパイプが最適化において必要となるかどうか、または、真っ直ぐではないパイプを結果として得ることができるかどうかを決定する。
基本モデルまたは基本設計構成は、最適化された設計を作成するために、基礎により修正されるべき属性または構成部分の開始定義を含むことができる。「最善モデル」は、例えば、目標の指令がそれらの値に適合することである時に1つまたは複数の指定された値を最も緊密に近似するモデル、目標が値を最大化することである時に結果として得られる最大の値を与えるモデル、または、目標が値を最小に抑えることである時に結果として得られる最小の値を与えるモデルとすることができる。基本設計は設計をシミュレートするために必要なすべての属性を含むことができる。設計属性は設計属性データベースにさらに保存することができる。本明細書における実施例において利用された設計はエンジンの設計であり、そのため、それらのエンジンの例における基本設計構成は「基本エンジン」と呼ばれる。したがって、それらの属性は、例えば、吸入プリナムの寸法、吸入パイプの長さおよび直径、排気パイプの長さおよび直径、吸入弁の直径、排気弁の直径、および、シリンダの長さおよび直径などの寸法データを含むことができる。それらの属性は、例えば吸入空気圧、排気空気圧、および、スロットルの位置などの感知されたデータなどの他のデータも含むことができる。さらに、属性は、例えば、一般に組合せで使用されている排気パイプの長さおよび排気パイプの直径が排気パイプ構成部分を規定するためにグループ分けされることができるように、構成部分別に論理的にグループ分けすることができる。続いて、これらの構成部分は、1つの構成部分に対するすべての属性がエンジン構成部分の一意の名称のもとにグループ分けされるように、名称を割り当てることができる。したがって、本最適化は、1つまたは複数の目標を達成するために、選択された属性を変化させ、かつ、それらの変化する属性を有するエンジンの動作をシミュレートすることができる。
図1は本発明の「設計最適化」100を示す。図1に示す実施形態において、設計最適化100は、操作の2つの段階、「設計」および「実行」を示す。「設計」は「目標を指定する」102、「変数を指定する」104、「制約を指定する」106、「実験の設計を指定する」108、および、「最適化を指定する」110を含む。「実行段階」は「探査」112および「解決策」114を含む。
102において、最適化の1つまたは複数の目標を含む目的を指定することができる。目的は最適化の所望の結果の定義を含むことができる。目標は構成部分の少なくとも3つの部分、すなわち、特性、指令、および、値を有することができる。さらに、各特長は例えばエンジンの性能特性などの最適化されるべき実体とすることができる。指令は、特性について達成されることが所望されていることについて指示する。例えば、指令は、特性の値を最大化するため、特性の値を最小に抑えるため、または、特性の1つまたは複数の所望の値を適合するための指示とすることができる。値は、各設計構成が所望の結果に近づく程度を比較するための目的の規格を提供することができる。特定の状況において、最小化または最大化された目標は連動した値を有することができないのに対し、適合されるべき目標は典型的に少なくとも1つの連動した値を有する。
本実施例の目標は、試験手順において指定されたエンジン動作の範囲を介して最大パワーを達成するという単一の目標である。したがって、特性はパワーであり、指令はそのパワーを最大化することである。
試験手順は、例えば、動作の範囲、その範囲を介した段階的漸増、各毎分回転数の1段階においてシミュレートするためのエンジンサイクル数、エンジンにより利用される燃料、スロットルの位置、および、周囲条件を指定することができる。範囲は、例えば毎分5000回転(rpm)から10,000rpmとすることができ、漸増分は範囲全体を通じて1000rpm毎とすることができる。燃料は、例えばガソリンまたはディーゼルとすることができる。周囲条件は吸入点および排気点における気温、気圧、および、湿度を含む。
既に述べたように、目標は、所望の値または1セットの値に最小化、最大化、または、適合することができる。適合が所望された場合、目標に関連する値は、例えば曲線または曲線を定義する1セットの値に適合することができる。目標は設計の限界値としても利用することができる。例えば、目標は、高い限界値、低い限界値、または、高いおよび低い限界値の双方を有する帯域を使用して設定することができる。さらに、2つ以上の目標をシミュレーションのために確立することができる。したがって、例えば、ユーザは、エンジンの排気中の一酸化炭素に対して特定の高い限界値を設定していながら、所望のパワー曲線を適合しようと試みることができる。この実施例において、限界値より大きな一酸化炭素レベルを生成するすべての結果は無視され、限界値より低い一酸化炭素レベルを有するパワー曲線に最も良く合うものは結果として提供される。
高い限界値は、超えれば設計構成が許容不可能となる、パラメータに対する値または1セットの値の指定である。高い限界値は、例えば結果として得られる設計が燃料消費量に関して過剰に非効率となることを防止するための燃料消費量、などのパラメータに対して設置することができる。もし高い限界値がいずれかの点において超えられたなら、シミュレーションは、その変数のセットに対しては失敗したと考えてよい。
低い限界値は、下回れば設計構成が許容不可能となる、パラメータに対する値または1セットの値の指定である。低い限界値は、例えば結果として得られる設計が小さすぎるパワーを有することを防止するためのパワー、などのパラメータに対して設置することができる。もし変数のセットがシミュレーション中にいずれかの点において低い限界値より小さな値を生成したなら、シミュレーションは、その変数のセットに対しては失敗したと考えてよい。
限界帯域は、もし高い限界値がシミュレーション中にいずれかの点において1セットの変数について超えられたなら、または、変数のセットがシミュレーション中にいずれかの点において低い限界値より小さな値を生成したなら、シミュレーションがその変数のセットについては失敗したと考えることができるように、高い限界値および低い限界値を含む。
失敗した変数のセットは、最善の結果を決定するためには、変数のセットのランク付けにおいて典型的に使用されない。
戦略は目的を得るために使用される工程である。戦略は1つまたは複数の変数を典型的に含み、1つまたは複数の制約を含んでも含まなくてもよい。
104において、最適化されるべき変数が指定される。「最適化される」変数は、目標を達成するために、最適化シミュレーションにおいて変化させることになる変数である。2つの変数、排気パイプの長さおよび排気パイプの直径は、本明細書において実施例として説明されている実施形態において最適化されることになる。最適化されるべき各変数の初期値は割り当てることができる。続いて、シミュレーションが実行されることになる値の境界を設定することができる。本実施例については、100mmと1000mmの間の長さを有する排気パイプを、エンジンが動作している車両に合わせることが所望されていることが決定されている。本実用例については、100mmと200mmの間の直径を有する排気パイプを、その車両に合わせることが所望されていることも決定されている。100と1000mmの間の長さを有する排気パイプのみが検討されるため、排気パイプ長に対する境界は100mmおよび1000mmである。同様に、排気パイプの直径に対する境界は100mmおよび200mmである。各変数はグリッドの軸を表し、境界により包含される領域はグラフ的に見ることができ、「設計空間」と呼ばれる。
シミュレートされることになるエンジンの数は、最適化中に変化することが可能である変数または属性についての許容誤差の使用により、実践的な目的のために限定することができる。許容誤差は、シミュレートされるべき変数値が許容誤差点に該当する値に限られるように、変数に対して所望された最小の漸増分に設定することができる。許容誤差を使用しなければ、シミュレートされるべき無限の数の設計がいずれの設計空間内にも存在する。許容誤差を利用することにより、設計空間内の無限に小さな段階は排除され、有限の数のシミュレーションが設計空間内に存在することを強いられる。許容誤差が使用されると、シミュレートされるべき変数値は最も近い許容誤差点に丸められ、そのため、それらの点の間に該当する値はシミュレートされない。設計許容誤差は製造許容誤差に等しくすることができるが、設計者が最適化に対して検討を希望する各段階の量に単にすることもできる。例えば、長さにおいて10mmの漸増分を有し、かつ、直径において1mmの漸増分を有する排気パイプを検討することを所望できる。したがって、排気パイプ長に対する許容誤差は10mmに設定することができ、排気パイプの直径に対する許容誤差は1mmに設定することができる。グラフ的には、今、境界で囲まれた設計空間は各許容誤差の倍数毎に位置する点を有するグリッドとして見ることができる。許容誤差に関しては、変数の大きさなどのその変数の関数に基づいた万能許容誤差を設定することができる。しかし、所望であれば、変数に対する許容誤差はいかなる値にも設定することができる。許容誤差は相殺することができ、そのため、許容誤差点はゼロまたは許容誤差の他の倍数において開始することができる。したがって、例えば、排気パイプは25mmで開始する10mmの各漸増分において検討されることを所望でき、これにより、許容誤差の相殺を提供する。したがって、検討すべき排気パイプ長は25mmからの10mmの各漸増分(例えば、25mm、35mm、45mmなど)におけるものとなる。
許容誤差における変数のセットを有する最適化は最適化プログラムに対する自然の終結も提供する。そこから最適化が行われている点の周囲のすべての許容誤差点が一旦がシミュレートされ、かつ、より良好な特性値を生み出さないなら、最適化を終結することができる。さらに、許容誤差に基づいたシミュレーションの使用はシミュレーションの数を有益に低減する。なぜなら、互いに近い変数値は同じ許容誤差点に丸められ、同じ点のシミュレーションは2回行われる必要がないからである。むしろ、本発明は、シミュレートされるべき変数のセットが以前にシミュレートされた変数のセットと同じであることを認識することが可能であり、そのため、その同じ変数のセットを2度目にはシミュレートしない。
106において、媒介変数方程式を含む制約が指定される。初期設計属性は定数値として、または、媒介変数方程式により定義することができる。媒介変数方程式は、本明細書において1つのタイプの制約として言及されている。媒介変数方程式は、1つの属性を1つまたは複数の他の属性に関して定義する。媒介変数方程式により定義された属性は最適化することができない。しかし、この属性は、最適化されている変数が変化するにつれて変化することができる。例えば、パイプの入口の直径は、それが接続するポートの直径に等しいとして定義することができる。したがって、パイプの入口の直径はポートの大きさが変化するにつれて変化する。代案として、媒介変数方程式は、出口の直径を入口の直径に等しくすることにより、平行パイプなどの構成部分の幾何形状を定義することができる。したがって、パイプの取入れ口および取出し口が等しい構成のみが検討されることが保証される。媒介変数方程式の他の例として、エンジンのストロークはエンジンの排気量および口径工程比に基づくことができる。
本発明の実施形態において、設計空間内の設計構成に対する変数のセットは2つのステップでシミュレートされる。本明細書においては探査と呼ばれる第1のステップは、設計空間の様々な領域において変数のセットをシミュレートし、本明細書においては最適化と呼ばれる第2のステップは、設計空間の最も有望な領域において設計構成をシミュレートする。探査において、設計空間内のどの領域が最も有望であるかを決定するために、少数の変数セットが選択される。したがって、各変数について検討すべき値の範囲にわたって均一に分散されるように、例えば、各変数に対する3つの値が選択される。最適化において、探査において探査された最も有望な設計構成に隣接した設計構成が、それらの領域において最適な解決策を見出すためにシミュレートされる。
108において、実験の設計に対する属性が指定される。実験設計属性は、いくつの設計構成が探査112および最適化114でシミュレートされるかを決定することができる。実験設計属性は、各変数について探査されるべきレベルの数、さらなる検討のために所望された最善の試行の数、さらなる検討のために所望された他の領域の数、および、試行回数の限界値を含むことができる。レベルは探査中に検討されることになる各変数の値の数である。検討すべき最小値で開始し、検討すべき最大値で終了するグラフ上の軸を定義する各変数を使用してグラフ的に見ると、レベルは探査112における各軸上でシミュレートされるべき点の数である。したがって、探査112についてシミュレートされるべき解決策の数は各変数についてのレベルの数の積とすることができる。
万能または局所のレベルは、実験108の設計を指定する時に変数に対して設定することができる。万能レベルがすべての変数に対して割り当てられると、同じ数の値が各変数に対して検討される。例えば、万能レベルの3はデフォルトにより提供することができる。各変数に対して3つ値が選択された場合、探査において検討される設計構成の数は3nであり、ここでnは設計構成における変数の数に等しい。
局所レベルが各変数に対して設定されると、探査中に検討されるべき値の数は各変数に対して個別に選択される。さらに、万能レベルはデフォルトとして提供することができ、最優先の局所レベルは探査されている変数の1つまたは複数に対して指定することができる。ゼロのレベルも、探査112が1つまたは複数の変数に対して無効にされるように指定することができる。代案として、値は探査112における検討のためにユーザにより指定することができるか、または、探査112において使用されるべき値を選択するために他の技術を利用することができる。
いくつかの最善の試行は、最も緊密に目標を近似するいくつの設計構成が保持されるべきかに関して、探査114に指示するために指定することができる。それらの最善の設計構成は、しばしば単一の領域内に互いに近く存在する。しかし、最善の設計構成は、設計空間の同等でない部分に存在することができ、かつ、探査112において見出された2つ以上の設計構成の最適化の結果として得ることができる。
設計空間の1つまたは複数の局所最適領域(最善の設計構成を含まない領域)が提供されることは所望することができる。例えば、局所最適領域における解決策は、設計者を満足させるために目標に十分近くすることができ、かつ、実施するために実質的により費用効果を大きくすることができる。したがって、最適な設計を提供するために、いくつかの他の領域を指定することができ、それにより、局所最適領域における設計構成も最適化114により提供される。
試行回数の限界値も、限界値がシミュレートされるべき設計構成の数に対して設置されるように指定することができる。試行回数の限界値は、シミュレートすることができる設計構成の総数から、シミュレートすべき設計構成を無作為に選択することにより達成することができる。無作為の数字の種子はコンピュータシステムにおいてさらに指定することができ、それにより、同じ設計構成は同じ種子を選択することによりシミュレートすることができ、異なった設計構成は異なった種子を選択することによりシミュレートすることができる。
最適化は110において指定することができる。最適化において、隣接した設計構成は、探査112において選択された各領域において最適な解決策を見出すために、基本設計のシミュレーションから隣接した設計構成まで段階的に進むことによりシミュレートすることができる。最適化指定段階において、変数が最適化114に結合されるかどうか、および、変数がどのようにして最適化114に結合されるかの決定が行われる。本明細書において既に説明したように、変数は個別に、または、組合せで最適化することができる。各ステップは、隣接した設計構成をシミュレートする時に1つの変数のみが変化される「個別」として、または、隣接した設計構成をシミュレートする時に少なくとも2つの変数の組合せが変化される「組合せ」として最適化114の間に適用することができる。図7aは変数が個別に変化され、シミュレートされるべき4つの新しい設計構成を作成する実施例を示し、図7bは変数が組合せで変化され、シミュレートされるべき8つの新しい設計構成を作成する実施例を示す。この実施例により分かるように、パラメータが個別でよりも組合せで検討される時に、最適化システムによる検討のためにより多くの設計構成が提示される。
すべての変数は組み合わせることも組み合わせないこともできるか、または、変数のサブセットは1つまたは複数の組合せに組み合わせることができることに注意されよう。
加えて、段階ならびに段階デルタ開始および終了係数を指定することができ、閾値を指定することができ、最適化方法を指定することができ、かつ、最適化の各通過のための試行の回数に対する限界値を指定することができる。1つの段階の大きさは各変数について定義することができる。1つの段階は、最適化において検討される基本点より上方および/または下方のグリッド上の領域を定義することができる。1つの有用な段階の大きさは探査点間の距離であり、この大きさは、最適化に、取り囲んでいる各探査点において基本点を形成させる。段階デルタ開始および終了係数は、段階または段階の部分の割合として定義することができる。段階デルタ開始係数は、第1の最適化通過が発生する段階の部分としての基本点からの距離を定義することができる。段階デルタ終了係数は、もし最適化が他の手段により終結されなければ、最後の最適化通過が発生する段階の部分としての基本点からの距離を定義することができる。さらに、1つまたは複数の変数は、これらの変数が探査112のためにのみ必要であったために、最適化114から排除することができる。
段階デルタ係数は、探査グリッド上の2つの隣接した点間の距離の一部に基づいて変数のセットに対する新しい値を決定するために、最適化により使用することができる。閾値は、最適化が完全であるかどうかを決定するために各通過において評価することができる。したがって、最適化は閾値に到達した時点で終結することができるか、または、他の理由のために閾値に到達する前に終結することができる。例えば、最適化が終結できる他の理由は、基本点を取り囲んでいる設計空間におけるすべての許容誤差に対する設計構成がシミュレートされており、かつ、より良い結果が見出されなかったためである。
本実施形態のための最適化の方法は最急降下分析に基づく。代案として、下り坂最簡略または他の形態の分析を使用することができる。下り坂最簡略はいかなる組合せも可能とせず、かつ、許容誤差との組合せでは理想的に機能することができない。なぜなら、下り坂最簡略は、これの進行を維持するための小さな変化に依存しているからである。
既に討論したように、各通過においてシミュレートされるべき試行の回数に対する限界値は、もしそのような限界値が所望されれば指定することができ、無作為数の種子は、実行される最適化の数を制限するために、その限界値が超えられた場合に指定することができる。
探査112の間、設計空間は各変数または他の指定された値のレベルに基づきすべての変数を組み合わせて探査することができる。基準線のシミュレーションは最初に行うことができる。基準線のシミュレーションは他のシミュレートされた構成に対する比較のために行うことができる。したがって、例えば、車両のためのエンジンは排気パイプの長さおよび直径を変化させることによりパワーに対して最適化することができる。シミュレーションは、排気パイプの長さおよび直径のみに対する値を変化させながら、すべての設計空間に対する完全なエンジンを定義する基準線シミュレーションからの値を利用することができる。したがって、もし最適化すべきエンジンが700mmの長さで150mmの直径である排気パイプを現在利用していれば、パワーは基準線シミュレーションに対するエンジン速度の所望の範囲にわたるこの構成に対して決定することができる。この実施例に対するエンジン速度の範囲は5000から10,000rpmとなる。続いて、基準線シミュレーションの結果は、最適化の間に審査された排気パイプの長さおよび直径の他の変形に比較することができる。
しかし、基準線シミュレーションを行うことは必要ではない。シミュレーションの結果は、単に変数のどの構成が最善であるかを決定するためにランク付けすることができる。探査112は(本実施例の排気パイプの100mmから1000mmの長さおよび100mmから200mmの直径における)変数に対して設定された境界内の様々な定義済みの点における(本実施例のエンジンパワーにおける)結果を算出することができる。続いて、これらの結果は変数のどの構成が最善の結果を提供するかを決定するためにランク付けすることができる。
図2は排気パイプの長さおよび直径のシミュレーションの実施例のセットをグラフ的に示す。パワー性能は、左の境界として設定された100mmの最小排気パイプ長、右の境界として設定された1000mmの最大排気パイプ長、下方の境界として設定された100mmの最小排気パイプ直径、および、上方の境界として設定された200mmの最大排気パイプ直径を備えた風景平面上に地形図状に示されている。図2において、探査は設計空間におけるパワーの輪郭の値の例を例証するために高解像度で行われた。
図3は本発明の探査112に対する組み合わされた値を決定する方法230を示す。方法230は2つの変数に対応する二次元のグリッドを作成するために視覚的に動作する。しかし、本発明がいかなる数の変数も最適化するために利用できることは認識されたい。示す方法230における各変数に対する範囲は、その変数に対する最大境界値からその変数に対する最小境界値を差し引いたものに等しい。232において、計数器「N」は1に設定されている。252および254において見られるように、この計数器は、示す実施形態において排気パイプ長(「Len」)である第1の変数に対して設定されたレベルに到達するまで漸増される。234において、長さに対する範囲を等しい部分に分割する1段階が算出される。長さの第1の区分に対する変数値は236が最初に実行された時に算出される。したがって、グラフ的に、最小長さから実験点の第1の設計に対する範囲へのX軸上での距離は236において決定される。最小直径から実験点のその第1の設計へのY軸上での距離は実験点の第1の設計を正確に決定するために、次に決定される。したがって、排気パイプの直径に対する入れ子になったループは238において入れられる。238において、計数器「M」は1に設定される。248および250において見られるように、この計数器は、示す実施形態において排気パイプの直径(「Dia」)である第2の変数に対して設定されたレベルに到達するまで漸増される。240において、直径に対する範囲を等しい部分に分割する1段階が算出される。直径の第1の区分に対する変数値は242が最初に実行された時に算出される。したがって、2つの変数のみを検討する本実施形態において、シミュレートされるべき実験点の第1の設計の排気パイプ長および排気パイプの直径はステップ236から結果的に得られる長さとステップ242から結果的に得られる直径の交点である。
複写の変数値を図3において説明した方法により作成することができる特定の実施形態において、シミュレートされるべき変数値はデータベースまたはテーブルに保存される。各反復の後、シミュレーションを行うために使用される変数の新しいセットが開発された場合、シミュレーションに関連した変数セットはデータベースに保存されている変数のセットと比較することができる。したがって、もし変数のセットがデータベースに既に存在すれば、複写の変数セットは、変数セットの追加のシミュレーションに関するシミュレーションリソースを無駄にしないために、破棄することができる。したがって、244において、236および242において決定された長さおよび直径は、以前に算出され、かつ、データベースに保存された値に比較される。もし長さおよび直径の値が以前の値に合えば、現在の値は保存されず、方法は、実験点の次の設計を算出するために248に戻る。しかし、もし長さおよび直径の値がデータベースに保存されているいずれの値とも合わなければ、実験の現在の設計値は将来のシミュレーションのために246においてデータベースに保存される。
248において、もし計数器「M」が第2の変数「直径」に対して選択されたレベルより小さければ、計数器「M」は250において漸増され、工程は、次のステップのために所望の直径値を算出するために242に戻る。計数器「M」が第2の変数「直径」に対して選択されたレベルに等しいと、工程は252に進む。252において、もし計数器「N」が第1の変数「長さ」に対して選択されたレベルより小さければ、計数器「N」は254において漸増され、工程は、次のステップのために所望の長さ値を算出するために236に戻る。計数器「N」が第1の変数「長さ」に対して選択されたレベルと等しいと、工程は256において終了する。
図3の実験の設計値の決定方法230で算出された値はデータベースに保存される必要がないが、例えば、それらが算出された後、直ちにシミュレートできることが認識されよう。しかし、図3に関連して説明した方法は、複写のシミュレーションを有益に排除する。第1の変数に対するループが漸増された時、直径の値が第1の通過で算出された直径値と合うために、直径点を再算出する必要がないことにも注意されたい。したがって、回帰的アルゴリズムは、シミュレートされるべき実験の設計点を効率的に決定するために有益に採用することができる。
図4は、特定の試行において利用されるべき変数の値が、許容誤差点に該当するために所望の範囲内にあり、かつ、所望の大きさであることを確実にする許容誤差決定方法130を示す。本実施形態におけるように、各解決策において検討されている複数の変数がある場合、変数と関連したパラメータを選択する方法130は、検討されている各変数に対して1回行われなければならないとすることができる。132において、所望の開始値は許容誤差の方法に入力される。134から142において、許容誤差の方法130は、入力された開始値がその変数に対して設定された最大値境界よりは大きくないことを確実にし、144から152において、許容誤差の方法130は、入力された開始値がその変数に対して設定された最小値境界よりは小さくないことを確実にする。
134において、開始値は、その変数に対する最大値境界より大きいかどうかを決定するために検査される。もし開始値がその変数に対して設定された最大値境界より大きければ、136において、開始値には最大値境界の値が与えられる。138において、開始値は許容誤差により除された開始値の整数に等しく設定され、その値は許容誤差により乗される。138において、整数以外の値を交互に指定することができる。したがって、138において、開始値は許容誤差の倍数に設定される。例として、もし1005mmの排気パイプ長が入力され、検討されるべき最大長さが1000mmであり、かつ、許容誤差が10mmであれば、136において、開始値は1000mmの最大長さに等しく設定される。整数(integer)(1000mm/10mm)*10mmは1000mmである。したがって、1000mmが10mmの許容誤差の倍数であることが確認された。
丸められた整数の関数が138において使用され、かつ、境界が許容誤差の倍数に設定されていない場合、138の方程式の結果が境界の外に該当することは可能である。したがって、140および142において、もし開始値が設定された最大値境界より大きければ、方法は開始点から1つの許容誤差を減ずる。
144において、開始値は、その変数に対する最小値境界より小さいかどうかを決定するために検査される。もし開始値がその変数に対して設定された最小値境界より小さければ、146において、開始値には最小値境界の値が与えられる。148において、開始値は許容誤差により除された開始値の整数に等しく設定され、その値は許容誤差により乗される。したがって、148において、開始値は許容誤差の倍数に常に設定される。150および152において、もし開始値が設定された最小値境界より小さければ、方法は開始値から1つの許容誤差を加算し、154において、許容誤差の方法は終結する。
探査112の間、境界内に均一に広がった変数のための値のセットを発生することができ、それらのセットの各々に対してシミュレーションが進行する。本実施形態において、探査されるべき値のすべてのセットが先ず算出され、続いて、各シミュレーションが行われる。この順序付けに対する恩恵は複数のシミュレーションが同時に行えることである。この順序付けは、シミュレーションを同時に行うために複数のプロセッサが利用可能であるコンピュータのネットワーク上でシミュレーションが行われる場合に、特に有利である。しかし、シミュレーションは変数値が決定されるたびに交互に行うことができる。
図5は本発明の探査112を行う方法を示す。202において、境界内の実験の設計の様々な点における変数に対する値が決定される。それらの点は、各変数が、検討されるべき値の範囲全体にわたる解決策のサンプル収集に到着するために、設定された境界間でグリッド状に典型的に位置する。204において、解決策は、実験の設計の各点上で実行され、目標に対する結果は、実験の設計のそれらの点の各々に対して決定される。206において、解決策は、最初にランク付けされた目標に最も緊密に近づいている解決策、および、再度にランク付けされた目標に最も遠い解決策を使用してランク付けされる。所望された数の最善の解決策は210において収集される。212において、最善の領域内解決策は、例えば最急上昇分析を使用することにより決定される。最急上昇分析は、(i)各点における最急上昇を決定するステップ、および、(ii)いずれの隣接点に向かっても上昇しないすべての点の集合体を作成するステップを含む。上昇は隣接点が上がり望ましい結果を有する場合に起る。最急上昇はすべての隣接点の最も望ましい結果を有する点に向かって発生する。218において、210において最善の解決策であると決定されたいずれの点も排除され、最善の領域内解決策がランク付けされる。次に、218において、所望された他の領域内解決策の数に等しい領域内最善解決策の数が選択される。
探査112において作成された試行数が試行数の限界値を超えていれば、変数セットは、行われるべきシミュレーションの数が試行数の限界値に等しくなるまで、選択されるか、排除されるかのいずれかとなる。選択または排除は無作為化に基づくことができる。さらに、無作為化は、結果が、所望されたように反復可能となるか、または、修正可能となるように、種子に基づくことができる。
図6は最適化114の実施形態を示す。用語「基本点」は解決策の通過が発生する点を記述するために利用される。最適化114は基本点に隣接する設計構成をシミュレートし、かつ、最善の設計構成を選択する。通過のためのこの最善の設計構成は、所望された目標値を最も近く近似する値をもたらす設計構成である。したがって、通過からの最善の設計構成は次の最適化通過に対する基本設計になる。もし通過における発生された設計構成のいずれも、基本設計構成に関して改善しなければ、基本設計により近い設計空間における設計構成は次の通過においてシミュレートされる。次の通過に対して新しい基本エンジンが選択されると、工程は「移動」と呼ばれる。同じ基本エンジンが次の通過に対して保持され、その基本エンジンにより近い設計構成のシミュレーションが行われる時、工程は「縮小」と呼ばれる。したがって、移動において、基本エンジンはグリッド上の1つの位置から他の位置に移動され、そのため、追加のエンジンはその改善されたエンジンの周辺に発生させることができる。縮小において、基本エンジンはそれの現在位置に維持され、その基本エンジンにより近い代案エンジンが発生される。
1段階のサイズは最適化110の指定の間に指定された1段階デルタに基づく。1段階デルタ終了係数が到達されるか、または、基本点に隣接するすべての許容誤差に対する設計構成がシミュレートされ、かつ、特性のより良い結果が見出されなくなるまで、最適化は移動および縮小の工程を継続することができる。したがって、例えば、1段階デルタ開始係数は1段階デルタの64%とすることができ、1段階デルタ終了係数は1段階デルタの1%とすることができる。これにより、設計は、縮小の通過が発生するたびに、当初、基本点から1段階の64%、続いて、基本点から1段階の32%、基本点から1段階の16%、基本点から1段階の8%、基本点から1段階の4%、基本点から1段階の2%、および、基本点から1段階の1%シミュレートすることができる。既に注意したように、移動の間、現在の通過と重複する以前の通過からのエンジン設計は、それらが既に発生されたために、再発生のために選択することはできない。
最適化は、縮小係数を既に指定した1段階デルタ開始係数に設定することにより、302において開始する。探査点間の1段階のサイズの64%に等しい縮小係数を有する第1の通過が有益であることが実験を介して見出されており、そのため、64%という縮小係数が以下の例で使用され、各変数に対する探査点間の距離は各変数に対する1段階のサイズとして使用される。
304において、現在の基本点から伝播するシミュレーションのための値が決定される。図7aおよび7bにおいて分かるように、各解決策の通過は個別または組合せで行うことができる。図7aは長さおよび直径の変数に対して個別に発生する解決策の通過を示す一方、図7bは長さおよび直径の変数に対して同時に発生する解決策の通過を示す。2変数の本例において、図7a上にプロットしたように、変数に関して個別に解決策の通過を行うことは、(i)基本点の長さ値および基本点の直径値に直径方向における探査1段階の64%を加えたもので、直径に対するプラスモデルと呼ぶことができるもの、(ii)基本点の長さ値および基本点の直径値から直径方向における探査1段階の64%を減じたもので、直径に対するマイナスモデルと呼ぶことができるもの、(iii)基本点の長さ値に長さ方向における探査1段階の64%および基本点の直径値を加えたもので、長さに対するプラスモデルと呼ぶことができるもの、および、(iv)基本点の長さ値から長さ方向における探査1段階の64%および基本点の直径値を減じたもので、長さに対するマイナスモデルと呼ぶことができるものにおける基本点に隣接したシミュレートされるべき追加の値をシミュレータに選択させる。本例において、組み合わされた変数に関した解決策の通過を行うステップは、図7b上にプロットされたように、シミュレーションに、個別の解決策通過において選択された追加の値、および、(i)基本点の長さ値に長さ方向における探査1段階の64%を加えたもの、および、基本点の直径値に直径方向における探査の1段階の64%を加えたもので、プラス−プラスモデルと呼ばれるもの、(ii)基本点の長さ値に長さ方向における探査の1段階の64%を加えたもの、および、基本点の直径値から直径方向における探査の1段階の64%を差し引いたもので、プラス−マイナスモデルと呼ばれるもの、(iii)基本点の長さ値から長さ方向における探査の1段階の64%を差し引いたもの、および、基本点の直径値に直径方向における探査の1段階の64%を加えたもので、マイナス−プラスモデルと呼ばれるもの、および、(iv)基本点の長さ値から長さ方向における探査1段階の64%を差し引いたもの、および、基本点の直径値から直径方向における探査の1段階の64%を差し引いたもので、マイナス−マイナスモデルと呼ばれるものにおける追加の値を選択させる。
2つ以上の変数がシミュレーションにおいて検討される場合、いずれの2つ以上の変数も組み合わせることができる一方、他の変数は個別に、または、組合せで別個に検討されることに注意されよう。さらに、本発明は、以前の通過の最善の解決策からの結果における改善の程度に基づく変数の動的な組合せを考える。この動的組合せは、例えば他の未変化の変数と組み合わされた以前の通過の最善の結果において変化されたいずれの変数も含むことができる。代案として、以前の通過の最善の結果において変化された変数のいずれか、または、すべてを組み合わせることができる。さらに、最後の通過において変化された変数のいずれか、または、すべては、未変化の変数のいずれか、または、すべてと組み合わせることができる。例えば、各未変化変数は、以前の通過において変化された変数のいずれか、または、すべての組合せと組み合わせることができる。
306において、図4に示す許容誤差の方法はすべての変数に適用される。
既に討論したように、シミュレートされた変数セットはデータベースに保存され、新しく決定された変数セットはそれらの以前にシミュレートされた変数セットと比較することができ、そのため、複写の変数セットは破棄することができ、かつ、第2回目に対してシミュレートされなくてよい。したがって、308において、304および306において決定された変数セットは既にシミュレートされた変数セットに比較され、310において、非複写の変数セットはデータベースに保存される。
311において、もし最適化の通過において作成された試行の数が試行数の限界値を超えていれば、変数セットは、行われるべきシミュレーションの数が試行数の限界値に等しくなるまで選択されるか、排除されるかのいずれかとなる。選択または排除は無作為化に基づくことができる。さらに、無作為化は、結果が、所望されたように反復可能となるか、または、修正可能となるように、種子に基づくことができる。
312において、いずれの追加のシミュレーションも現在の基本点の周辺でシミュレートされるために外出するかどうかについて決定が行われる。本実施形態は許容誤差に基づくため、解決策の通過が行われるにつれ、基本点の周辺の許容誤差のすべての倍数が探査されると時間を生じることができる。基本点の周辺のすべての許容誤差倍数が探査されると、解決策工程は322に進む。もし基本点の周辺のすべての許容誤差倍数が探査されなければ、工程は314に進む。
314において、シミュレーションは通過に設定された各変数値に関して行われ、316において、最新のシミュレーションの結果は、その時に対する最善のシミュレーションの結果を見出すために以前のシミュレーションの結果に比較される。
318において、最後の解決策の通過の結果の1つが以前の最善の結果より優れており、かつ、以前の最善の結果より閾値より多い分だけ大きいかどうかに関して、決定が行われる。もし最後の解決策通過における結果の1つが最善の結果であれば、320において、基本点は最善の結果を有する新しい点にリセットされ、工程は304に戻る。もし最後の解決策通過の結果のいずれもが最善の結果でなければ、解決策の工程は322に進む。322において、現在の百分率は2または他の係数で除され、324において、現在の百分率が1段階デルタ終了係数より小さいかどうかに関して決定が行われる。もし現在の百分率が1段階デルタ終了係数より大きいか、これに等しければ、工程は、例えば基本点からの距離の半分において他の解決策の通過を作成するために304に戻る。もし現在の百分率が1段階デルタ終了係数より小さければ、最適化は326において終結する。当然、1段階デルタ終了係数の百分率において終結することは必要ではないが、この終結は、さらなるシミュレーションから導出された恩恵が最小となる点を通過してシミュレーションが継続することを有益に防止する。
最適化の結果は正規化することができる。例えば、結果は各目標の大きさにおける差を考慮するために正規化することができる。したがって、正規化された結果は平均的結果の百分率に基づくことができる。結果は重み付けすることもでき、それにより、1つの目標は、目標が変化する重要度を持つ場合に他の目標より大きな重み付けを与えられる。
目標に関連して使用することができる1つの技術は、本明細書において「適合設計」と呼ばれる。適合設計は、誤差値を生成するために相応された最小二乗を計算することによりシミュレーションの結果を評価するための、パワーまたは燃料消費量などの1セットの値の指定である。誤差値は、例えば各目標に対する結果の大きさの差を考慮するために、さらに正規化することができる。したがって、正規化された誤差値は、平均的結果が所望された適合から変化する百分率に基づくことができる。誤差値は、目標が変化する重要度を持つ場合に1つの誤差値に他の誤差値より大きな重み付けが与えられるように重み付けすることもできる。
動的な優先度は、最適化が、同時に行うことができる他の最適化に関連してその最適化自体の優先度を決定するために使用する自動的な工程である。動的優先度は、例えば通過において作成された試行の数の負数とすることができ、したがって、試行のより小さな数を有する通過により高い優先度を与える。実施形態において、行われたとして最適化に印を付けることは、ユーザに最適化を中止する方法を提供する。
最適化の完了後、最適化システムは各変数の感度を自動的に決定することができる。この決定は、各変数に対して許容誤差の1段階または他の所望の量を正に、または、許容誤差の1段階または他の所望の量を負に移動すること、および、それらの点の各々においてシミュレーションを行うことにより達成することができる。次に、各変数(例えば、|Δ1|+|Δ2|)に対して、最適値において結果として得られた目標値と1つの段階だけ負に向かった値において結果として得られた目標値との間の差を、最適値において結果として得られた目標値と1つの段階だけ正に向かった値において結果として得られた目標値との間の差に加えることにより、感度が算出される。
本発明の実施形態において、基本モデル選択のエキスパートシステムは属性を有する基本モデルを選択する際に支援するために採用することができ、同じまたは異なったエキスパートシステムはそのモデルを最適化するための最適化戦略を選択する際に支援するために採用することができる。基本エンジン属性の選択に関連して、エンジン属性は知識ベースのエンジン属性データベース部分に保存することができる。それらの属性は、例えば吸入プリナムの寸法、吸入パイプの長さおよび直径、排気パイプの長さおよび直径、吸入弁の直径、排気弁の直径、ならびに、シリンダの長さおよび直径などの寸法データを含むことができる。それらの属性は、例えば、吸入空気圧、排気空気圧、および、スロットル位置を含む感知されたデータなどの他のデータも含むことができる。属性は、例えば、一般に組合せで使用される排気パイプの長さおよび排気パイプの直径が排気パイプ構成部分を定義するためにグループ分けできるように、構成部分別に論理的にグループ分けすることができる。続いて、これらの構成部分は、1つの構成部分に対するすべての属性がエンジン構成部分の一意の名称のもとにグループ分けされるように、名称を割り当てることができる。構成部分はグループにさらに組み合わせることもできる。例えば、8気筒エンジンにおける8つのシリンダはシリンダの1グループに組み合わせることができる。
様々なエンジン構成を定義する属性または構成部分はエンジン属性データベース内に保存することができ、そのため、様々な事前構成されたエンジンが最適化のために利用可能とすることができる。例えば、2行程式単気筒エンジンに対する属性または構成部分ならびに4行程式12気筒エンジンに対する属性または構成部分を定義することができる。したがって、エキスパートシステムは非常に様々なエンジンまたは他のモデルを定義する際に支援することができる。
エンジンの属性または構成部分はエキスパートシステムによりさらに識別することができ、そのため、適切な属性または構成部分は所望のタイプの動作中のエンジンを定義するためにグループ分けすることができる。例えば、2リットルの排気量を有する4気筒エンジンが所望される場合、それらの特性を有し、十分に機能すると知られているエンジンに対する属性または構成部分は、最適化のために使用することができるエンジンの定義を作成するためにエキスパートシステムによりグループ分けすることができる。非常に多くの属性がエンジンの定義に関与する可能性があるため、以下の実施例においては、すべての属性が構成部分として論理的にグループ分けされていることが想定される。したがって、その各々が2つ以上の属性を含むことができる構成部分が各実施例においてエンジンの定義を作成するために組み合わせられる。
初期エンジン属性は定数値として、または、媒介変数方程式により定義することができる。媒介変数方程式は、1つの属性を1つまたは複数の他の属性に関して定義する。例えば、パイプの入口の直径は、それが接続するポートの直径に等しいとして定義することができる。代案として、媒介変数方程式は、出口の直径を入口の直径に等しくすることにより、平行パイプなどの構成部分の幾何形状を定義することができる。他の例として、エンジンのストロークはエンジンの排気量および口径工程比に基づくことができる。
本発明の実施形態において、最適化されるべき初期エンジン構成を選択する際に支援するためにエンジン構成エキスパートシステムが採用される。エンジン構成エキスパートシステムは、例えば、ユーザにより入力されたエンジンの態様を指定する特定の情報を受け取ることができる。エンジン構成エキスパートシステムは、エンジンの完全な定義が、ユーザにより指定されたよりもエンジンのより多くの態様が指定されることを必要とすることを認識することができる。したがって、エンジン構成エキスパートシステムはユーザにより指定された態様に基づき追加のエンジン態様を指定することができる。したがって、エンジン構成エキスパートシステムは、ユーザにより提供された仕様に基づき、かつ、エンジン構成エキスパートシステムにより指定された追加の態様を含む、完全なエンジン仕様を提供することができる。そのため、本発明のその実施形態において、完全なエンジンはユーザにより部分的な仕様のみを与えられたエンジン構成エキスパートシステムにより指定することができる。したがって、完全なエンジン仕様はユーザにより所望された如くに最適化することができる。
エンジン構成エキスパートシステムは、第1の属性に対して設計者により指定された値を、保存されているモデルにおけるその第1の属性の値に比較すること、および、第1の属性に対して指定された値に適合する第1の属性の値を有する各モデルを選択することにより、モデルを選択することができる。もし第2の属性が設計者により指定されれば、その属性の値は第1の属性に適合する基本モデルにおける第2の属性に比較することができる。追加の属性は同様の方法で比較することができ、設計者により指定された属性に最も緊密に適合するモデルは提案基本モデルとして返却することができる。
本明細書において使用されている如くの目的はエキスパートシステムの所望の結果の定義を含む。最適化に対する目的は1つまたは複数の下位目的を含むことができる。各下位目的は、目標に関してモデルの結果を評価するために利用される少なくとも1つの目標および少なくとも1つの試験手順をさらに含む。目標は、例えば、エンジン出力としても知られているエンジン動作の結果とすることもできる。エンジン出力は、例えば、パワー、トルク、および、一酸化炭素などの特定の化学物質の排出を含む。したがって、目標は1つのエンジン出力を最小化または最大化するために設定することができる。目標は、エンジン出力を、例えば曲線を形成する所望の値または1セットの値に適合させるためにさらに設定することができる。目標は設計されるべきエンジンに関する制限値として設定することもできる。制限値の目標が設定された場合、目標は高い制限値、低い制限値、または、高い制限値および低い制限値の双方を有する帯域として設定することができる。
したがって、例えば、ユーザはエンジンの排気中の一酸化炭素に対して特定の高い制限値を設定しながら、所望のパワー曲線を適合しようと試みることができる。この例において、制限値より高い一酸化炭素レベルを生成するすべての結果は無視され、かつ、制限値より低い一酸化炭素レベルを有するパワー曲線に最も良く合う結果を結果として提供することができる。
作成された各目的は、知識ベースにもしあれば、それの以前のバージョンへの系統的リンクと共に保存することができ、そのため、再使用できる。したがって、知識ベースにおける目的は継続的に増加および改善することができる。
エンジン構成エキスパートシステムと関連して、または、エンジン構成システムとは別個に使用することができる他のエキスパートシステムは戦略的エキスパートシステムである。戦略的エキスパートシステムはモデルを最適化するための戦略を選択する。戦略的エキスパートシステムは、例えば、ユーザにより入力されたエンジンに対する最適化戦略の属性を指定する特定の情報を受け取ることができる。戦略的エキスパートシステムは、完全な最適化戦略が、ユーザにより指定されたよりも戦略のより多くの態様が指定されることを必要とすることを認識することができる。したがって、戦略的エキスパートシステムはユーザにより指定された属性に基づき追加の最適化戦略属性を指定することができる。したがって、戦略的エキスパートシステムは、ユーザにより提供された属性に基づき、かつ、戦略的エキスパートシステムにより指定された追加の属性を含む、完全な最適化戦略仕様を提供することができる。そのため、その実施形態において、完全な最適化戦略はユーザにより部分的な仕様のみを与えられた戦略的エキスパートシステムにより指定することができる。したがって、最適化戦略は、例えばユーザまたはエンジン構成エキスパートシステムなどにより指定されたエンジンを最適化するために使用することができる。
本エキスパートシステムの実施形態において、戦略は変数、制約、および、推定エンジンを含み、推定エンジンは属性を含む。それらの変数および制約ならびに推定エンジンは、基本モデル属性が目的を達成するためにどのようにして修正されるかをさらに定義する。戦略属性は、基本モデル構成部分に対応させるために戦略構成部分にグループ分けすることもできる。変化するモデル属性は本明細書において「変数」と呼ぶ。各変数は、例えば最小値、最大値、許容誤差、および、レベルを含むことができる。存在する場合、最小値および最大値は設計空間の境界を定義すると見ることができる。指定された場合、許容誤差は、基本エンジン属性値に、許容誤差の倍数に、適用可能の場合はオフセットを加えたものであることを強いることにより戦略属性に対する許容可能な値を決定する。制約は1つまたは複数の変数値を持つ方程式の方法により変化する基本モデル属性である。制約は、ユーザが、例えば、もし入口の直径が最適化の一部として変更されていれば、平行パイプ区間を維持すること、または、他の部分の長さに応じた区間長さを調整することにより全体的なパイプ長さを維持することなどの設計の制約を定義することを可能にする。エキスパートシステムは、戦略属性を定義する際に援助を得るために、戦略開発の間にさらに使用することができる。
図5に示すものなどの探査は設計空間全体を通じて分布された点を評価するために使用することができ、かつ、図6に示す最適化などの所望の結果を有する探査点の最適化が典型的に後に続く。探査において利用されると、レベルは本明細書において既に説明したように機能することができ、かつ、そのような探査が所望されれば、設計空間の探査中に基本エンジン属性がいくつの値を有するかを指定することができる。例えば、もし1つの変数が250mmの総範囲を有し、かつ、探査が25mmの漸増分におけるその変数の影響を評価するためであれば、レベルは11に設定される。代案として、もし探査が50mmの漸増分において変数を評価するためであれば、レベルは6に設定される。
もし本明細書において「自動レベル」と呼ぶレベルの自動計算が所望されれば、推定エンジンは、対応する推定エンジン属性により指定されたエンジンの最大数に基づきレベルの数を計算することができる。例えば、自動レベルが選択されている実施例を検討すると、探査においてシミュレートされるために指定されたエンジンの最大数は256であり、2つの変数が最適化される。この実施例において、推定エンジンは、探査において各変数に対して16の値が検討されるべきであることを計算する。第1の変数に対する16の値と第2の変数に対する16の変数を乗じると、探査においてシミュレートされるべき合計256の点に等しい。
実施例として、各々が最小値および最大値ならびに許容誤差を有する2つの変数を有する排気パイプ構成部分はパワー曲線に適合するように設計されることが所望されている。ユーザはその排気パイプの直径および長さを指定することができ、属性は所望のパワー曲線に適合するために変化することを許容することができる。排気パイプの直径および長さに対する最小値および最大値は、例えば梱包の要件に適合するためなどに使用することができる。許容誤差はパイプの直径および長さの標準的な漸増分に設定することもできる。したがって、シミュレーションは所望のパワー曲線に最も明確に適合する排気パイプを見出すために行うことができる。
作成された各戦略は、知識ベースにおける系統的リンクと共に保存することができ、再使用できる。したがって、系統的リンクは、1つの戦略を誰が開発したかに加え、その戦略の以前の使用ならびにその戦略の成功およびその戦略の以前の形を示すためにも使用することができる。したがって、知識ベースにおける戦略は継続的に増加および改善することができる。
エンジン設計エキスパートシステムの実施形態において、象徴的構成部分は1つまたは複数の戦略属性を1つまたは複数の基本設計属性に関係付けるために利用することができる。象徴的構成部分の使用の恩恵は、変数と共に使用される戦略が他のモデル構成において他の変数または同じ変数に関連して再使用することができることである。したがって、例えば、エンジンに対して検討されるべき弁の直径の範囲は、シリンダ直径およびシリンダ当たりの弁の数に関連付けるために戦略属性において定義することができる。したがって、この戦略は様々なサイズおよび構成を有するエンジンに対して弁の直径を最適化するために使用することができる。典型的に、特定の所望の結果を有する設計を作成することに戦略が成功したことが一旦決定されれば、他の基本設計からその、または、同様の所望の結果を達成するために、その戦略を保持することができ、かつ、再使用することができる。
象徴的構成部分を利用する実施形態において、戦略構成部分には象徴的名称が当初割り当てられる。例えば、排気パイプには象徴的名称「排気ランナ1」を割り当てることができる。したがって、「排気ランナ1」は排気パイプを定義している初期エンジン構成部分にリンクさせることができる。
戦略構成部分は関連した1つまたは複数の象徴的変数をさらに有することができる。それらの象徴的変数は、象徴的変数が関連する基本モデルの構成部分における変数に対する対応部分とすることができる。したがって、象徴的構成部分は基本モデル構成部分におけるいくつかの、または、すべての変数を定義することができる。
象徴的戦略構成部分は絶対値、相対値、または、百分率値として定義することができる。絶対値は固定された数として入力することができ、かつ、変数に、最小絶対値と最大絶対値の間にある値に対してのみ最適化させることができる。相対値は、最適化のために最小値に達するために現在の値から差し引かれ、かつ、最適化のために最大値に達するために現在の値に加えられる量である。百分率値は最小値に達するために現在の値から差し引かれ、かつ、最大値に達するために現在の値に加えられる現在の値の百分率とすることができる。
象徴的戦略構成部分の使用の実施例として、「EXP1」と呼ばれる基本エンジン構成部分を基本モデルにおいて利用されるために選択することができる。その基本エンジン構成部分は直線状排気パイプを定義することができ、かつ、100mmの値を有する排気パイプ取出し口直径に対する第1の属性、100mmの値を有する排気パイプ取入れ口直径に対する第2の属性、および、1000mmの値を有する排気パイプ長に対する第3の属性を含むことができる。
「EXP1」の最適化が所望される場合、排気パイプを最適化するための最適化戦略を含む象徴的構成部分は、作成、または、もしこれが既に存在すれば、選択することができる。その象徴的戦略構成部分の名称は、例えば、本実施例において使用されている如く、「排気ランナ1」とすることができる。この実施例において、「排気ランナ1」は最小取出し口直径が25mmであり、最大取出し口直径が200mmであり、かつ、取出し口直径に対する許容誤差が5mmであることを指定し、そのため、5mmの漸増分における25mmから200mmの取出し口直径のみを最適化中にシミュレートすることができる。「排気ランナ1」は取入れ口直径が取出し口直径に等しいことも指定し、そのため、その直線状のパイプのみがシミュレートされる。さらに、「排気ランナ1」は、長さが、基本エンジン値からその値の50%を差し引いた値から、基本エンジン値にその値の50%を加えた値まで変化することを指定する。
もしエンジン構成部分「EXP1」が象徴的戦略構成部分「排気ランナ1」にリンクされていれば、最適化は、排気取出し口直径を25から200mmまで変化させながら、排気取入れ口直径を排気取出し口直径に等しくなるように変化させながら、かつ、排気長さを500から1500mmまで変化させながら、基本エンジン属性をシミュレートすることができる。
分かるように、もし「排気ランナ1」が100mmの排気取出し口直径、75mmの排気取入れ口直径、および、2000mmの排気長さを有する基本エンジンに適用されたのであれば、最適化は、それでも排気取出し口直径を25から200mmまで変化させるであろう。なぜなら、それらは「排気ランナ1」において絶対値として設定されているからである。同様に、最適化は、それでも排気取入れ口直径を排気取出し口直径と等しくなるように変化させるであろう。なぜなら、排気取入れ口直径は「排気ランナ1」において排気取出し口直径と等しくなるように定義されているからである。しかし、排気長さは、2000mmの長さを有する基本エンジンに対して1000から3000mmなどの異なった範囲にわたり変化する。なぜなら、排気長さ戦略は、基本エンジンの排気長さ値の百分率として「排気ランナ1」において定義されているからである。
したがって、戦略は、様々な基本モデルに適用可能となるように象徴的に定義することができることが分かろう。同様に、様々な戦略は、異なった構成を有する最適な解決策に達するために基本モデルに適用可能とすることができる。
象徴的構成部分は戦略内の知識ベースに保存することもでき、したがって、他の実用例に対して使用することができる知識ベースにおける情報のグループ分けを増加させる。
追加の態様は、指定された態様をデータベースに保存されているライブラリに適合させることにより仕様に加えることができる。例えば、エンジンの物理特性は、例えば、燃料の供給および点火のタイミングの特性ならびにカムのプロファイルなどの寸法を含むことができる。エンジンのライブラリは複数のエンジンの定義を含むことができ、このライブラリにおいて、各エンジンの定義は一覧になった物理特性のそれぞれの1つを含む。ユーザは、例えば、エンジンの排気量、シリンダの数、ブロック構成(例えば、90度Vまたは60度V)、または、シリンダ当たりの弁の数などを含む特定のエンジン構成情報を入力することができ、エンジン構成エキスパートシステムはユーザにより入力された情報に最も緊密に適合する完全なエンジン定義をライブラリから選択する。
図8は設計画面1100の実施形態を示す。設計画面1100は樹状図ウィンドウ1102、フロー図ウィンドウ1104、および、診断ウィンドウ1106を含む。樹状図ウィンドウ1102はエンジンの最適化を行う際に利用されるデータを含む。データは、例えば、最適化されるべきエンジンを定義する情報、および、最適化がどのようにして行われるかに関した情報を含むことができる。図8に示す樹状図ウィンドウ1102は、階層的形式の試験手続き、および、基本エンジンのすべての構成部分を備えた基本エンジン、および、構成部分収集物、構成部分、および、値の階層的形式におけるものを含み、ここで、構成部分収集物は構成部分収集物の隣の+記号を選択することにより表示させることができる類似の構成部分の収集物である。
診断ウィンドウ1106は設計画面1100における入力の状況に関してユーザに情報を提供する。診断ウィンドウは、定義されているモデルまたは試験手続きにおいて存在する可能性のあるいかなる警告および/またはエラーについて、ユーザに知らせることができる。例えば、診断ウィンドウ1106の行1、1107において、ユーザは、エンジンの定義が少なくとも1つのシリンダを含まなければならず、かつ、いずれのシリンダも定義されていないことを知らされる。これにより、ユーザには、適切な情報が設計画面1100に入力されたことを確認するためにエンジン設計プログラムを実行する前に設計画面1100に関した関連情報が提供される。
図9はユーザにより完成することができる開かれたエキスパートエンジンテンプレート1110の実施形態を備えた図8の設計画面1100を示す。エンジン仕様テンプレート1100は、例えばメインメニュー1101から「ファイル」、「新しい」、および、「エキスパートテンプレート」を選択することにより開くことができる。エンジン仕様テンプレート1110は、テンプレート1110に入力された情報に最も緊密に適合する1つまたは複数の完全な基本エンジン仕様をエンジン構成エキスパートシステムが選択することができる基本エンジン情報をユーザが提供することができる空間を提供する。エキスパートエンジンテンプレート1110は、最適化されるべきエンジンの属性である名称カラム1112における項目1114を提供する。図10に示すように、ユーザは名称カラム1112内の項目1114に対する値カラム1118に定置するために特性1116を入力することができる。特性1116はドロップダウンメニューなどのメニューから選択された数字、文字、または、入力内容とすることができる。単位カラム1120は、適用される場合に、値カラム1118の特性1116に対して単位1122を提供する。
図9のエキスパートエンジンテンプレート1110は選択されたエンジン速度においてパワーが適合するように調整されている。他のテンプレートは他の設計志向を有するエンジン、または、何らかの所望の設計基準を有する非エンジンを作成する際に支援するために提供することができる。所望のエンジン速度1128はパワー入力ウィンドウ1132のRPMカラム1130に入力される。各エンジン速度1128における所望のパワー1134はパワーカラム1136に入力される。一覧になったエンジン速度1128における所望のパワー1134のプロット1140は入力されたパワー1134およびエンジン速度1128のデータから作成される。
図11は、内部で定義されたエンジンを有し、樹状図1102における自動エンジン設計を示す図8の設計画面1100を示す。エンジンは、樹状図1102からエンジン構成部分を選択すること、フロー図1104内にそれらの構成部分を表す記号を定置すること、および、構成部分を所望されるようにリンクさせることにより定義することができる。したがって、フロー図ウィンドウ1104は、最適化において検討することができるエンジンの各構成部分の定義を含むことができる。図11に示す実施例において、フロー図ウィンドウは、(i)空気吸入圧力(INTATM)1150、(ii)吸入プリナムのサイズ(INTPLN)1152、(iii)第1吸入パイプ(INP1)1154、(iv)スロットル(THRT1)1156、(v)第2吸入パイプ(INP2)1158、(vi)吸入弁(INV1)1160、(vii)シリンダ(CYL1)1162、(viii)排気弁(EXV1)1164、(ix)排気パイプ(EXP1)1166、および、(x)排気パイプの取出し口における排気圧力(EXHATM)1168を含む。
図12から17は目的の作成を示す。図12は、目標タブ1201が選択されて開かれた目的仕様画面1200の実施形態を有する図8の設計画面1100を示す。目的仕様画面1200は、マウスのポインタが樹状図1102の「特性(1)」に乗っている時にマウスを右クリックすること、および、現れたメニューから「設計」を選択することにより開くことができる。利用可能な目標ウィンドウ1202は選択できる目標を提供し、選択された目標ウィンドウ1204は現在の目的仕様に対して選択されたすべての目標を含む。1つの目的に対して複数の仕様が定義でき、各仕様には複数の目標を含むことができることに注意されたい。
図13は、開かれた目標設定ダイアログボックス1210の実施形態を備えた図12の設計画面1100および目標タブ1201が選択された目的仕様画面1200を示す。目標設定ダイアログボックス1210はユーザが目標を定義するための空間を提供する。目標名称は1212において指定され、かつ、利用可能な目標ウィンドウ1202から選択された目標に適合する。目標のタイプは1214において指定され、かつ、例えば、目標の値を最大化する、目標の値を最小化する、または、目標値または目標値のセットを適合することができる。目標コストは1216において指定される。コストは目標の正規化された値、または、絶対値に基づくことができる。目標コストは他の目標との比較における目標の重み付けである。したがって、各目標に対する1.0の目標コストは各目標を等しく重み付けする。例えば、燃料の経済性が第1の懸念である実用例の場合、燃料消費量は2.0に重み付けすることができ、パワーは1.0に重み付けすることができる。結果は、燃料消費量がパワーの2倍の相対重要度を有することとなる。
図14は、速度フックタブ1220が選択された開かれた目的仕様画面1200を有する図8の設計画面1100を示す。速度フックタブ1220が選択された目的仕様画面1200は、シミュレーションが行われる速度に関連した入力内容を入力することができる空間を提供する。1つのRPMにおけるシミュレーションから他のRPMにおけるシミュレーションへの移動するタイプ、または、方法は1222に示されている。段階毎タイプが選択され、このタイプは、最適化に、いくつかのエンジンサイクルをシミュレートした後に1つのRPMから他のRPMに段階的移動を行わせる。1230において、各1段階においてシミュレートされるべきサイクル数を入力することができる。示す実施例において、RPMの各段階においてシミュレートされるべきサイクル数は5である。1224において、シミュレーション開始値が入力され、1226において、シミュレーション終了値が入力される。示す実施例における開始値は5000RPMであり、示す実施例における終了値は11000RPMである。1000RPMの漸増分が1228において入力されている。したがって、シミュレーションは5000RPMにおいて、および、1000RPMの各段階において11000RPMまで行われる。
図15は安定化タブ1240が選択された開かれた目的仕様画面1200を有する図8の設計画面1100を示す。安定化は、例えば与えられたRPMにおけるエンジンの複数の回転を介して、そのRPMにおけるそのエンジンの安定な動作を達成するために、エンジンのシミュレーションに進む。安定性は、最も最近のシミュレーションの結果を通過する長い線の傾きを許容可能な長い傾きの値に、および、最も最近のシミュレーションの結果のより小さなグループを通過する短い線を許容可能な短い傾きの値に比較することにより測定することができる。もしそれらの線の傾きが許容可能であれば、2つの線の間の平均値間の差がその差に対する許容可能な値に比較される。もし2つの線の平均値の差が許容可能であれば、シミュレーションはそのRPMにおいて安定化されている。Difference1242は、長い線の平均値と短い線の平均値の間の数学的な差であり、かつ、例えば、0.01の値および大気圧の単位を有することができる。長い傾き1246は長いカウント1248において指定された点を通過する線の傾きに対する最大許容可能値であり、例えば、0.01の値を有することができる。長いカウント1248は長い傾きを計算するために使用された最も最近の安定化点の数であり、例えば10の値およびサイクルの単位を有し、ここで、サイクルはシミュレートされるべきエンジンのサイクルの数を表す。短い傾き1250は短いカウント1252において指定された点を通過する線の傾きに対する最大許容可能値であり、例えば0.01の値を有することができる。短いカウント1252は短い傾きを計算するために使用された最も最近の安定化点の数であり、長いカウント1248における点のサブセットであり、かつ、例えば5の値およびサイクルの単位を有することができ、ここで、サイクルはシミュレートされるべきエンジンのサイクルの数を表す。最大回転数1254はシミュレータが実行するエンジンの回転の最大数であり、シミュレートされるべきRPM点において安定化することを試みる。最大回転数1254は、例えば99の値およびサイクルの単位を有することができ、ここで、サイクルはシミュレートされるべきエンジンのサイクルの数を表す。安定化値1256は特性を指定し、その値は最適化がいつ安定化されたと考えられるかを決定する際に使用される。安定化値1256は、最適化されるべきである基本エンジンなどの基本モデルのいずれの特性にも適用することができる。例えば、BMEPの値は安定化が適用される特性とすることができる。
図16はシミュレーションタブ1260が選択された開かれた目的仕様画面1200を有する図8の設計画面1100を示す。シミュレーションタブ1260が選択された目的仕様画面1200は、シミュレータにより使用された設定に関連した入力内容を入力することができる空間を提供する。複数のシミュレータは使用に対して利用可能とすることができ、そのため、目的画面1200のシミュレーションタブ1260は所望のシミュレータを選択するため、および、そのシミュレータの態様を定義するための空間を提供する。したがって、シミュレータ名フィールド1272は使用されるべきシミュレータの入力または選択のために設けられている。例えば、SIMLEV6Aはこの名称を有する標準的なエンジンシミュレータを選択するために入力することができる。さらに、使用されるそれぞれのシミュレータは保持することができ、そのため、その結果は再作成することができる。加えて、他のフィールドは点火済み/未点火フィールド1274を含めて設けることができ、このフィールド1274は、エンジンが点火された燃料を利用することを示す「点火済み」を入力することができるか、または、燃料が点火されていないエンジンを示す「未点火」を入力することができるかのいずれかのフィールドである。他のフィールドは、必要に応じて、または、シミュレータを定義するために便利であれば、目的画面1200のシミュレーションタブ1240のもとに設けることもできる。
図17は、燃料タブ1300が選択された開かれた目的仕様画面1200を有する図8の設計画面1100を示す。燃料タブ1300が選択された開かれた目的仕様画面1200はエンジンの燃料補給に関連する入力内容を入力することができる空間を提供する。燃料は1302において選択することができる。選択された燃料は、例えばガソリンまたはディーゼルとすることができる。フィールド1304から1310はガソリンまたはディーゼルなどの標準的な燃料に対して自動的に記入することができる。しかし、もし1302において非標準的な燃料が入力されれば、フィールド1304から1310は燃料を定義するために手作業で記入することができる。燃料の酸素対炭素の分子比(O/C)は1304において入力することができる。例えば、エタノール(C2H5OH)は0.5のO/C比を有することができる。ガソリンは0.0のO/C比を有することができる。燃料の水素対炭素(H/C)比は1306において入力することができる。例えば、オクタン(C8H18)は2.25のH/C比を有することができる。燃料に対する燃料発熱量は1308において入力することができる。燃料発熱量は、熱量計において燃料の単位質量を完全に燃焼させた時に遊離する熱の熱量数を示し、ここで、熱量計は物質または物体における熱の量を測定する器具である。ガソリンに対する燃料熱量は43,500,000ジュール/kgとすることができる。気化熱は1310において入力することができる。気化熱は、流体をその液体と同じ温度の気体に完全に変換するために、その流体の沸点にあるその流体に供給されなければならない燃料の単位質量当たりの熱量である。燃料がガソリンである場合、気化熱は、例えば420,000の値およびジュール/kgの単位を有することができる。
図18は、開かれた自動エンジン設計戦略画面1320の実施形態を有する図8の設計画面1100を示す。エンジン設計戦略画面1320は、マウスポインタが樹状図1102内の「戦略」に乗っている時にマウスを右クリックすること、および、現れたメニューから「設計」を選択することにより開くことができる。自動エンジン設計戦略画面1320は、変数1322、制約1380、および、推定エンジン1420のためのタブを含む。変数タブ1322が選択されると、自動エンジン設計戦略画面1320は樹状図ウィンドウ1324および選択された変数ウィンドウ1326を含む。変数タブが選択されると、現在の設計で利用することができる戦略構成部分のフォルダが樹状図1324に掲げられる。選択された変数ウィンドウ1326は最適化のための樹状図ウィンドウから選択された変数の一覧を含む。示す実施例において、樹状図は、選択された時にエンジン構成部分に関連付けられるシリンダ、端部、パイプ、および、ポペット弁システムに分類された戦略構成部分を含む。それらの分類の各々は、各分類内の戦略構成部分の一覧を表示するために選択することができる。
自動エンジン設計戦略画面1320の変数タブ1322の選択された変数ウィンドウ1326における各変数は、名称カラム1328内にグループの表示1327および変数の名称1329、最小値カラム1330内に最小値、現在値カラム1332内に現在値、最大値カラム1334内に最大値、許容誤差カラム1336内に許容誤差、および、単位カラム1338内に単位を含むことができる。グループの表示1327は、変数が、最適化の解決策段階中に組み合わせて使用されるようにする。所望された変数と同数の変数は、例えば、それらの変数を連続して一覧にすること、および、適用可能なグループ表示1327をグループ内の各変数の隣に設けることにより、そのような組合せに対してグループ分けすることができる。文字「G」はグループ内の最初の変数を表し、文字「M」はグループの中央の1つまたは複数の変数を表し、かつ、文字「E」はグループ内の最後の変数を表す。複数のグループを所望されたように定義することができることに注意されたい。最小値は、その変数に対して最適化が所望されている最小値である。現在は基本設計における変数の値である。最大値はその変数に対して最適化が所望されている最大値である。
示す実施形態における選択された変数ウィンドウ1326に含まれた変数は、排気パイプ出口直径(EXP1.S[4].ExitDia)および排気パイプ長(EXP1.S[4].Len)である。選択された変数ウィンドウ1326は、選択されたパイプが少なくとも20.0mmの取出し口直径、100.0mmの最大直径、および、5.0mmの許容誤差を有することをさらに表す。選択された変数ウィンドウ1326も、選択されたパイプが75.0mmの最小長さ、1000.0mmの最大長さ、および、25.0mmの許容誤差を有することを表す。選択された変数ウィンドウ1328が、選択されたパイプが38.0mmの現在直径および915.0mmの現在長さを有することを表すことにも注意されたい。このような現在値は基本エンジンにおいて定義することができ、かつ、例えば、現在使用されているエンジンに対する寸法、または、エンジン設計の結果と比較するために、もしくは、エンジン設計が進行するにつれて使用することをユーザが希望している値とすることができる。したがって、現在値を使用して構成された基本エンジンは設計プログラムにより当初に検討することができ、選択された変数ウィンドウ1326において定義されている範囲に該当する他のエンジンは、改善されたエンジン設計が作成されたかどうか、および、その改善の程度を決定するために、現在のエンジンに比較することができる。
図19は、変数タブ1322が選択された開かれた自動エンジン設計戦略画面1320を有し、かつ、開かれた最適化変数設定ウィンドウ1350の実施形態を有する図8の設計画面1100を示す。最適化変数設定ウィンドウ1350は、例えば、変数を選択すること、および、変数タブ1322が選択されたエンジン設計戦略画面1320上の「編集」ボタンにマウスポインタが乗っている時にマウスを左クリックすることにより開くことができる。最適化変数設定ウィンドウ1350は変数の態様を定義することができる空間を提供する。例えば、現行の1つの変数を開くことができ、1つまたは複数の態様を修正することができ、その修正された変数を保存することができる。全般設定ウィンドウ1352は、名称カラム1364の1354において変数の名称に、1356において象徴的名称に、1358において許容誤差に、1360においてレベルに、および、1362において自動レベルの使用に対するフィールドを含む。名称カラム1364に含まれた態様に対する値は値カラム1366において定義することができ、名称カラム1364に含まれた態様に対する単位は単位カラム1368において定義することができる。図19に示す実施例において、変数を定義するために利用された設定はEXP1.S[4].Lenの変数名称、EXP1の象徴的名称、mmの単位における25.0の許容誤差、5のレベル、および、自動レベルの不使用を含む。
最適化変数設定ウィンドウ1350における範囲ウィンドウ1370は、変数に対する最小値、現在値、および、最大値を定義することができるフィールドを提供する。範囲ウィンドウ1370における値は絶対値、相対値、または、百分率値として定義することができ、かつ、適切な単位を使用して識別することができる。
したがって、例えば、もし現在値が915.0mmであり、最小値が−50%として表されていれば、最小値は915.0mmの50%、または、457.5mmとなる。もし現在値が915.0mmであり、最大値が+50%として定義されていれば、最大値は915.0mmの150%、または、1372.5mmとなる。したがって、これらの最小値および最大値は、許容誤差開始点に加えられた許容誤差の倍数に丸めることができる。許容誤差は25mmであり、許容誤差開始点は0であり、したがって、最小値は475.0mmに丸めることができる。許容誤差開始点は多くの方法で算出することができ、かつ、例えば現在値とすることができ、そのため、許容誤差の倍数は最小値へと現在値から差し引かれ、許容誤差の倍数は最大値へと現在値に加えられる。
図20は、制約タブ1380が選択された開かれた自動エンジン設計戦略画面1320を有する図8の設計画面1100を示す。他の属性または変数を使用してシミュレートされるべき設計の属性を変化させるために利用された方程式は、制約タブ1380が選択されると自動エンジン設計戦略画面1320の制約ウィンドウ1382に掲げられている。
図21は、開かれた戦略方程式編集画面1390の実施形態を有する図20の制約タブ1380が選択された自動エンジン設計戦略画面1320を示す。戦略方程式編集画面1390は制約方程式の態様を表示または修正することができる空間を提供する。示す実施例において、「EXP1.S(4).EntranceDia」は自動エンジン設計戦略ウィンドウ1380において選択された制約であり、したがって、選択された制約「EXP1.S(4).EntranceDia」についての詳細な情報は戦略方程式編集画面1390に掲げられる。選択された制約は排気パイプの入口直径であり、その制約(EXP1.S(4).EntranceDia)の名称は戦略方程式編集画面1390の左側1392に入力されている。排気パイプ入口直径は同じ排気パイプの出口直径(EXP1.S(4).ExitDia)に等しくされており、これは戦略方程式編集画面1390の右側1394に入力されている。この方程式は、最適化に、等しい入口および出口の直径を持つ一定の直径の排気パイプを有するエンジン構成のみを発生させる。方程式により算出されている属性に対する最小値が所望されている場合、そのような最小値は最小値ダイアログボックス1396において入力することができる。同様に、方程式により算出されている属性に対する最大値が所望されている場合、そのような最大値は最大値ダイアログボックス1398において入力することができる。
図22は、制約タブ1380が選択された自動エンジン設計戦略画面1320上の「左側を編集」ボタンを選択することにより開くことができる変数選択画面1400の実施形態を示す。変数選択画面1400はツリー図1404から選択された属性一覧1402を提供する。したがって、制約方程式により定義されることが所望されている属性は属性一覧1402から選択することができる。戦略方程式編集画面1390の左側において利用されるべき属性は図22に示す変数選択画面1400と同様の変数選択画面から選択することができる。
図23は、推定エンジンタブ1420が選択された開かれた自動エンジン設計戦略画面1320を有する図8の設計画面1100を示す。基本推定エンジン設計戦略情報は、基本推定エンジン設計戦略ウィンドウ1422に表示される。基本推定エンジン設計戦略ウィンドウ1422は名称カラム1426における基本推定エンジン係数1424の一覧を含む。各基本推定エンジン係数1424は、値カラム1428に入力することができる値、および、単位カラム1430に入力することができる単位を含むことができる。基本推定エンジン係数1424は、探査が1432において所望されているかどうかに関する2値選択、1434において探査中にシミュレートされるべきエンジンの最大数、1436において所望されている解決策の総数、1438において各通過においてシミュレートされるべきエンジンの最大数、1440における無作為数発生器に対する種子、および、1442において拡張選択肢が所望されているかどうかに関する2値選択を含む。
最適な解決策を求めるための開始点として2つ以上の開始点を選択することできる最適化の探査段階は、可能にも不能にもすることができる。もし探査が所望されなければ、最適な解決策のために単一の調査が行われる。設計空間内に解決策を表面形状図的に見ると、しばしば谷により分離された複数のピークがある。したがって、探査を利用しない危険は、解決策が、最適な解決策を含まないピークに近づくことである。探査を利用すること、および、最適化の工程を設計空間内の2つ以上の点から開始することにより、最適な解決策を見出す可能性は高められる。
探査が、設計空間内の2つ以上の点において開始してエンジンをシミュレートするために使用される場合、設計空間内に選択されるべきいくつかの開始点はシミュレートされるべきエンジンの数の隣に入力することができる。所望されている解決策の総数は総解決策の隣に入力することができる。それらの開始点の各々からシミュレートされるべきいくつかのエンジンは、各解決策の通過におけるエンジンの隣にエンジンのその所望されている数を入力することにより指定することができる。
シミュレートされるべきエンジンの数は実践的な目的に対して限定することができる。許容誤差を使用せずとも、シミュレートされるべき無限の数のエンジンがいずれの設計空間にも存在する。許容誤差を利用することにより、当初、設計空間における小さな各段階は排除され、有限の数のシミュレーションが設計空間において強制的に存在させられている。しかし、例え許容誤差を利用しても、設計空間における潜在的な解決策の数は大きくすることができる。したがって、特定の環境においては、シミュレートされるべき潜在的解決策の数をさらに低減することが望ましい。複数の潜在的な解決策の一部のみがシミュレートされることが所望される場合、シミュレートされるべき潜在的解決策は無作為に選択することができる。例えば、無作為なエンジンは種子に基づいたモンテカルロ選択法を適用することにより選択することができる。種子の使用は、統計処理分野の当業者には知られているように、1つの最適化から他の最適化への反復性を可能にする。
基本推定エンジン設計戦略画面1422における値のみがユーザにより入力される必要がある。自動エンジン設計戦略画面1320の変数タブ1322に基づき定義された設計空間内で最適化がどのようにして行われるかを定義するために必要な他のすべての情報は、もし基本推定エンジン設計戦略ウィンドウ1422が完了されていれば、推定エンジンにより推定される。代案として、最適化が設計空間内でどのようにして行われるかに対する追加の制御をユーザが希望する場合、拡張選択肢ウィンドウ1450および/または万能選択肢ウィンドウ1480を完了することができる。
図23も拡張選択肢ウィンドウ1450の実施形態を示す。拡張選択肢ウィンドウ1450において定義することができる拡張選択肢の使用は、利用されるべき探査工程のタイプを許容することができる。拡張推定エンジン情報は名称カラム1454に含まれた拡張推定エンジン係数1452の一覧に含まれている。各拡張推定エンジン係数1452は値カラム1456に入力することができる値および単位カラム1458に入力することができる単位を含むことができる。拡張推定エンジン係数1452は1460において所望の探査工程を含む。所望の探査工程は、例えば、ドロップダウンボックスから選択することができる内部行列または完全行列を含むことができる。内部行列が、設計空間の境界の内側に存在する点が利用されることを表す一方、完全行列は、設計空間の境界上および境界の内側の双方に存在する点が探査において使用されることを表す。
最適化が達することを所望されている総解決策の数は最善設計解決策および局所最適解決策を含むことができる。最善設計解決策はすべての探査開始点から全体的に見出された最善のものである。局所最適解決策は、最適解決策をもたらす探査開始点以外の探査開始点から見出された解決策である。異なった探査開始点(局所最適値)からの解決策を提供することは、地形図的に見た時に複数のピークが設計空間に存在する場合の設計空間内での比較を提供する。既に討論したように、局所最適値を明らかにすることから導出された恩恵の例は、例えば、局所最適解決策が最適解決策に近づき、局所最適解決策が、例えば現在の設計からのより少ない変更を必要とするために、構築がより安価である場合、最適解決策以下のものが最適解決策よりも所望できることである。したがって、所望されている局所最適解決策の数は1462において入力することができ、所望されている最善設計の数は1464において入力することができる。
1466において、各解決策に対して第2の探査が所望されているかどうかに関する2値表示を表示することができる。各解決策に対する第2の探査は他の探査が所望されることを表す。なぜなら、例えば、多くの変数が、実践的な目的のために各変数に対するレベル数が2の値に限定されたかのように最適化されているためである。したがって、第2の探査通過は追加の探査点を選択するために行うことができる。追加の探査通過は所望された時に行うことができる。
1468において、動的組合せが所望されているかどうかについての2値表示を表示することができる。1470において、探査結果が保存されるべきかどうかについての2値表示を表示することができる。探査結果は探査中にシミュレートされた設計構成の結果である。1472において、解決策結果が保存されるべきかどうかに関する2値表示を表示することができる。解決策結果は最善設計および局所最適値のシミュレーションの結果である。1474において、較正テーブルを発生するかどうかについての2値表示を行うことができる。較正テーブルは指定されたRPMに関連した最適値のテーブルである。例えば、エンジンに対する最適化はRPMの範囲全体を通じて規則的なRPMの各段階において行われるように指定することができ、各指定RPMに関連した最適値を所望することができる。較正テーブルはその情報を提供することができる。
1476において、1つまたは複数の初期通過に関してシミュレートされるべき1段階の一部の目的のための開始百分率が入力され、1478において、1つまたは複数の最後の通過に関してシミュレートされるべき1段階の一部の目的のための終了百分率が入力される。
図23も万能選択肢ウィンドウ1480を含む。万能選択肢ウィンドウ1480は、万能係数1484の一覧を含む名称カラム1482、万能係数1484に関連した特性を含む値カラム1486、および、適切であれば万能係数に関連した単位を含む単位カラム1488を含む。
1490において、デフォルト最小/最大デルタ値が入力され、1492において、デフォルト最小/最大デルタ記述が入力される。デフォルト最小/最大デルタ値は、デフォルト最小/最大デルタ記述が「現在変数値を増倍」である時に現在値により乗され、かつ、最小値に到達するために現在値から差し引かれ、最小値に到達するために現在値に加えられる乗数を含むことができる。他のデフォルト最小/最大選択肢は「現在変数許容誤差を増倍」を含むことができる。
1494において、デフォルト許容誤差値が入力され、1496において、デフォルト許容誤差記述が入力される。デフォルト許容誤差値は、デフォルト許容誤差記述が「現在変数許容誤差を増倍」である時にデフォルト許容誤差に到達するためにデフォルト内部許容誤差により乗される乗数を含むことができる。他のデフォルト許容誤差選択肢は「現在変数値を増倍」を含むことができる。
設計戦略情報は、この情報を再検討および再割当てする必要なく、定義および再使用できることに注意されたい。例えば、システムの使用における実験または経験を可能に介して一旦決定されれば、戦略は、それらのシミュレーションにおける使用に対して戦略を承認できる特定の状況における使用に対して適切である。したがって、経験はシステムにおいて保持することができ、戦略を構築した経験を有さない可能性がある低レベルの設計者も、他人の経験に乗じることにより、やはり設計に参加することができる。
図24は、開かれた象徴的構成部分決定画面1500の実施形態を備えた図8の設計画面1100を示す。象徴的構成部分決定画面1500は、ツリー図1102における「象徴的構成部分」を選択すること、および、現れたメニューから「設計」を選択することにより設計画面1100から開くことができる。象徴的構成部分決定画面1500は、1つまたは複数の戦略属性を1つまたは複数の基本設計属性に関連付けることができる領域を提供する。図24に示す象徴的変数は構成部分の定義であり、特に排気パイプを定義する。象徴的構成部分決定画面1500に見られるように、象徴的変数構成部分1502はパイプであり、象徴的名称1504は「EXHAUST RUNNER」であり、かつ、エンジン変数の実際名称1506はEXP1である。このことは、象徴的名称「EXHAUST RUNNER」に関連した戦略属性を、構成部分「Pipe」のもとでエンジン構成部分「EXP1」に適用させる。
エキスパートシステムは、エキスパートシステムにより実行されるべき機能に依存して変化することができる多くの構成部分の部分を含むことができる。その最も基本において、典型低なえエキスパートシステムは、知識ベース、推定エンジン、および、ユーザインターフェースを含むことができる。知識ベースはエキスパートシステムに提供された訓練の蓄積である。推定エンジンは、例えば最適化された設計を作成するために、知識ベース内に典型的に含まれた情報に対して作用する指示または規則のセットを含むことができる。ユーザインターフェースは、ユーザが、エキスパートシステムに情報および指示を入力(すなわち、システムを訓練)し、かつ、エキスパートシステムの動作の結果をユーザに提供することを典型的に可能にする。機械的または他のデバイスに対する設計を作成することを意図されているエキスパートシステムも、コンピュータがデバイスの動作をシミュレートすることを可能にするシミュレータを含む。
本エキスパートシステムは情報または知識の貯蔵部を含むことができ、かつ、その知識に関した動作を行うこともできる。エキスパートシステムは、計算を行うためのプロセッサ、および、知識ベースを含む情報が記憶デバイスに保存されるデータベース構造を有する典型的にコンピュータに基づくシステムである。エキスパートシステムは、訓練を必要とし、学習した情報をメモリまたは記憶デバイス内に保存し、所望の結果を提供するためにその学習した情報をコンピュータプロセッサの知能と組み合わせることから、人間の専門家と類似させることができる。しかし、エキスパートシステムは1人または複数の人間の専門家の能力を大きく利用するための方法を提供する追加の利点を提供する。
エキスパートシステムは、そのエキスパートシステムが動作することになる1つまたは複数の工程、デバイス、または、システムに関連する情報を、その知識ベースに供給することにより訓練することができる。エキスパートシステムによりエンジンが設計されることになる実施例において、その情報は1つまたは複数のエンジンおよび関連構成部分に関連する可能性がある。
エキスパートシステムは、それらの工程、デバイス、または、システムの動作および相互作用に関連した情報をその知識ベースに供給することによっても訓練することができる。エキスパートシステムによりエンジンが設計されることになる実施例において、動作上および相互作用の情報は、様々な構成部分を有するエンジンが、エンジンの動作の様々なレベルにおいてそれらの構成部分が組み合わされた時に、どのようにして動作するかをエキスパートシステムに中継する指示を含む1つまたは複数のシミュレータの形を取ることができる。
エキスパートシステムは、エキスパートシステムにより達成されることを所望される目的、および、各設計を評価するための規則に関連した情報をその知識ベースに供給することによっても訓練することができる。目的情報は、所望の結果または性能を提供する工程、デバイス、または、システムにおいて実施することができる工程、デバイス、または、システムにおける変化に典型的に関連付けられる。エンジンが設計されることになる実施例において、その目的情報は、1つもしくは複数の目標を定義する1つもしくは複数の試験手続きまたは1つもしくは複数の仕様の形を取ることができる。組合せで、所望されている動作を最も緊密に達成する構成部分を識別するための所望の許容誤差の各段階における所望の変更内での1つまたは複数の変数構成部分の所望の変化は、戦略において定義することができる。目的は、結果が目標に比較されるために定量化される方法も含むことができる。
エキスパートシステムに保存された工程、デバイス、または、システムの情報、動作および相互作用の情報、目的の情報、ならびに、他のいかなる情報も、知識ベースとして組合せで参照することができる。
情報と共に常駐するエキスパートシステムの知識ベースを有する前に存在する間、エキスパートシステムは「フレームワーク」と呼ぶことができる。そのフレームワークは、プロセッサ、メモリ、データ保存施設、および、ユーザインターフェース用ハードウェアなどのハードウェアと共に、知識ベースから供給されるべき情報に規則がどのように適用されるべきであるかに関した指示を含む1つまたは複数の推定エンジン、および、1つまたは複数のシミュレータを含むことができる。したがって、知識ベースはフレームワークが動作できる蓄積された情報である。知識ベースを含む情報は、知識技術者と呼ばれる人間により入力することができ、かつ、エキスパートシステムの動作により作成および蓄積することもできる。エキスパートシステムが自身の知識ベースを利用して動作するため、その知識ベースの幾分またはすべては知識技術者により入力された場合、エキスパートシステムにより達成された結果は、知識技術者により知識ベース内に置かれた情報に依存して変化する傾向がある。したがって、共通のエキスパートシステムフレームワークが異なった知識技術者により実施されると、異なった情報が知識ベースに置かれる可能性があり、かつ、変化する結果はエキスパートシステムのそれらの実施により達成することができる。
エキスパート知識を蓄積したエキスパートシステムが、専門家にはなっていない人物により動作することができ、かつ、それでも、もし知識技術者などの専門家がエキスパートシステムを動作したなら達成されたであろう同じ専門的な結果を提供することは、さらに認識されよう。例えば、知識技術者は、情報が所望の結果を提供することを確実にするために、知識ベースにその技術者が入力した情報を利用して、エキスパートシステムを動作することができる。適切である場合、情報は、特定のデバイス、手順、または、システムがアプリケーションに固有のプロジェクトにおいてグループ分けされるように、知識技術者によりさらにグループ分けすることができる。したがって、アプリケーション技術者などの非専門家は、知識技術者により作成されるであろう設計と同じである1つまたは複数の設計を作成するためのプロジェクトにおいて情報を利用することができる。したがって、知識技術者の知識は、エキスパートシステムの使用を介して、専門家および同じく非専門家による使用に対して、編成全体を通じてその知識を展開することにより大きく利用することができる。
さらに、例えば市場の需要について、知識技術者より高い程度に知識を持つ人物は、市場の需要を満たす最適な解決策を作成するためにエキスパートシステムに含まれた知識技術者の知識を利用することができる。したがって、エキスパートシステムは、さもなくば複数の人間の間での時間のかかる相互訓練を必要とする問題を解決し、かつ、設計を作成することができる。
例として自動車における使用に対するエンジンおよび関連する構成部分を最適化するエキスパートシステムを利用して、例えば、変更のコストが高すぎるために変更されないことになっているエンジンシステム構成部分は、エンジン定義において定義することができる。変化させることができるエンジンシステムの構成部分は変数と呼ぶことができ、かつ、エキスパートシステムにおいて定義することができる。それらの変数の変化の大きさに対する制限もエキスパートシステムにおいて提供することができる。試験手続きはエンジンおよび構成部分が試験またはシミュレートされるコンピュータシミュレーションの条件および方法において記述するために、エキスパートシステムの目的の部分において定義することができる。
エンジン設計エキスパートシステムはシステムの非設計専門家の使用を促進するように構成することができる。例えば、エンジン設計エキスパートシステムは、エンジンの基本タイプに対応する各プロジェクトと、プロジェクトにおいて適合することができる。したがって、プロジェクトは、図25に関連してさらに討論される「エンジン定義」とも呼ばれる固定または可変の値、試験手順、および、下位知識ベースを有する構成部分の様々な定義を含むことができる。知識技術者は、そのエンジンの所望の設計を作成するために知られている定義のみを目的が含むように、目的を作成することができる。したがって、アプリケーション技術者は、設計が知識技術者により使用されるであろう同じ情報を使用するため、エキスパートシステムを利用して知識技術者が作成するであろう同じ設計であるエキスパートシステムを利用して、そのエンジンの新しい設計を作成するためのプロジェクト内に含まれた定義を利用することができる。それらの新しい設計は変更することができ、かつ、例えばエンジンの燃料効率、パワー、もしくは、排出物に対して最適化することができるか、または、特に所望されるエンジン機能の特性を適合することができる。アプリケーション技術者は、例えば様々なエンジン速度における動作を検証するために、既に設計されたエンジンシステムもシミュレートすることができ、それにより、それらの設計がすべてのエンジン速度において適切であることを確認することができる。
エキスパートシステムは設計の品質保証も提供する。なぜなら、パラメータに対しては制御が行われ、アプリケーション技術者はそのパラメータ内で修正を行うことができるからである。
アプリケーション固有のインターフェースはアプリケーション技術者または他のユーザにより利用することができるエキスパートシステムの一部として提供することができる。アプリケーション固有のインターフェースは、それらのアプリケーション技術者が、専門家により作成され、かつ、承認されたシステム定義を有し、かつ、最適な設計を作成するためにそれらの定義を利用するプロジェクトにアクセスすることを可能にできる。
したがって、アプリケーション固有のインターフェースは使用が容易な施設を提供し、かつ、知識技術者が提供するであろう結果と均等な結果を与える。今度は、その結果が他の設計に焦点を合わせるために知識技術者を自由にする一方、アプリケーション技術者、市場開拓担当者、または、他の人員は知識技術者による関与を必要とせずに設計を作成する。
図25は自動エンジン設計エキスパートシステム画面1600の実施形態のユーザツリー図1602を示す。ユーザツリー図1602はエキスパートシステム全体へのアクセスを可能にし、そのため、エキスパートシステムは知識技術者により修正することができる。1604において見られるように、1つまたは複数のプロジェクトがエキスパートシステム内で作成することができる。「初期試験」1606と題されたプロジェクトはアプリケーション固有のインターフェースプロジェクトとして含まれている。このアプリケーション固有のインターフェースプロジェクト1606内には、エンジンファイル1608において1つまたは複数のエンジン定義、試験手順ファイル1610において1つまたは複数の試験手順、および、1つまたは複数の下位知識ベース1612がある。各下位知識ベース1612は1つまたは複数の目的を備えた目的フォルダ1614、1つまたは複数の戦略を備えた戦略フォルダ1616、および、1つまたは複数の自動エンジン設計1618を含むことができる。自動エンジン設計1618は特定のエンジン、特定の試験手順、特定の目的、および、1つまたは複数の戦略を含むことができ、それらのすべては、例えば最適化において利用されるためにアプリケーション技術者によりプロジェクトから選択されていてもよい。
図26は、ドロップダウンメニュー1650からアプリケーション固有インターフェース項目1652を選択することによりアプリケーション固有インターフェースにアクセスするために利用することができるドロップダウンメニュー1650を生成するためにエンジン設計エキスパートシステム画面1600からの自動エンジン設計の選択を示す。
加えて、(図示しない)管理インターフェースはメニュー1650から自動エンジン設計状況項目1656を選択することによりアクセスすることができる。
同様に、(図示しない)知識技術者インターフェースはメニュー1650から知識技術者インターフェース項目1658を選択することによりアクセスすることができる。
図27は特定のプロジェクトに対するアプリケーション固有インターフェース画面1700の実施形態を示す。アプリケーション固有インターフェース画面1700はアプリケーション固有インターフェースツリー図1702を含む。この図1702における設計されるべきエンジンを定義および最適化するために必要な情報は、シミュレーションおよび最適化のための何千ものエンジン特性および規則を可能に含めて広範なものにできる一方、ツリー図1702は限られた数のそれらの特性および規則のみの修正を可能にする。アプリケーション固有インターフェース画面1700において利用可能な項目の制限は、アクセス可能でないいかなる情報もアプリケーション技術者またはアプリケーション固有インターフェース画面1700の他のユーザは修正することができないため、特性および規則に対して修正を行うために画面を使用してアプリケーション技術者の能力を制限するために、知識技術者により決定しておくことができる。
典型的としてよいように、アプリケーション固有インターフェース画面1700は広範な目的情報を表示しており、そのため、この画面を使用しているアプリケーション技術者は設計の目的1704を広範に修正することができる。しかし、アプリケーション固有インターフェース画面1700は、シミュレーション中に使用される戦略1706、および、シミュレーション中に使用されるエンジン定義1708を、アプリケーション技術者が設計のそれらの態様に対して何らかの修正を行うことを可能にせずに、単に一覧にしている。アプリケーション技術者が目的1704に広範にアクセスし、かつ、これらを修正することを可能にすることにより、このアプリケーション固有インターフェース画面1700を作成した知識技術者は、アプリケーション技術者が、1710においてパワーを所望のパワー曲線に適合させること、1712において炭化水素排出物に対する高い限界値を設置すること、および、1714において燃料消費量を最小に抑えることなどの目標1709を策定することを可能にしている。作成知識技術者は、アプリケーション技術者が、使用される試験手順1716の特定の態様を策定することも可能にしており、そのため、アプリケーション技術者は、1718においてシミュレーションにおいて利用されるべきである燃料、1720においてシミュレーションを行うためのエンジン速度、および、1722において開かれているスロットル領域の比などの事項を指定することができる。しかし、アプリケーション技術者が戦略1706およびエンジン1708を変更することを防止することにより、知識技術者は、アプリケーション技術者が、より知識のある知識技術者によってより良好に対処することができるエンジン設計の態様に干渉することを防止する。
もしいかなる変更も目的パラメータに行われ、そのため、各設計変更が一意に識別されるなら、アプリケーション技術者は目的1724に関連する記述および自動エンジン設計1726に関連した記述を変更できるか、または、多分変更することに注意されたい。
エキスパートシステムは、管理がエキスパートシステムにおいて発生している動作の状況を見ることを可能にし、かつ、管理がそれらの動作の実行の優先度を制御することを可能にする管理インターフェース関数も含む。
人的資源のように、コンピュータシステムは典型的に有限の資源であり、そのため、限られた数の動作が与えられた時間においてコンピュータシステムにより行うことができる。しかし、人間以上に、コンピュータシステムの資源は、効率の損失がほとんどなく、または、まったくなく、1つまたは複数の活動から1つまたは複数の他の活動に迅速に再差し向けすることができる。これは、エキスパートシステムが人間の専門家グループが行えるであろうより大きな柔軟性を管理に提供する1つの方法である。
エキスパートシステムが現在処理している1つまたは複数の動作の状況を表示する(図示しない)状況モニタは、管理の人員および他の人員に提供することができる。状況モニタは、例えば、目標、目標に達する際のエキスパートシステムの進捗、および、行われている各動作の処理を完了するために必要である処理の量を表示することができる。最適化の状況の検討は、例えば、単に見たい最適化を選択し、その最適化の状況を更新することにより見ることができる。
特定の動作の目標は、例えば、エンジンおよび関連構成部分の特性を修正することによりエンジン速度の範囲にわたり所望のパワー曲線に適合させるために、エンジン設計を最適化することである。そのような動作に対して、状況モニタは同じグラフ上に所望のパワー曲線およびプロット、開始点として使用されるエンジン設計に対するパワー曲線、および、それまでに作成された最善のエンジン設計をグラフとして表示することができる。状況モニタは、その最適化においてシミュレートされたエンジンの数およびこれからシミュレーションされるべきエンジンの数の見積りをさらに含むことができる。状況モニタは、各最適化に対する所望の完了時刻または、行われている各最適化に対する優先度の階層も表示することができる。
表示された情報は、システムの動作がどのようにして時間内に前進しつつ行われるかに関した決定を行うために管理者または他の人員により使用することができる。例えば、管理者は、他の最適化がより迅速に完了されることを可能にするために1つの最適化を保留することができる。もし、例えば、目標が許容可能なレベルに近似されており、さらなる最適化が所望されていないなら、または、もし改訂され、かつ、再実行されるべきであるほど最適化が貧弱に行われているなら、管理者または他のユーザは最適化を終結することができる。管理者または他のユーザは所望の日程を満たすために最適化の試行の優先度を修正することもできる。
エキスパートシステムは最適化の各試行に対する所望の完了時刻を満たすために最適化の優先度を動的に修正することができる。エキスパートシステムは他の自動的機能も行うことができる。例えば、最適化の試行中に変更されるために多くの特性が選択されると、最適化システムは効率的には機能しない。なぜなら、変更の混合された数が動作を行うために利用可能な最適化ハードウェアを凌駕する可能性がある、または、最適化を行うための時間がやっかいに長い可能性があるからである。したがって、エキスパートシステムは、1つまたは複数の最善の解決策を使用して特性のサブセットまたはグループにおいてそれらの特性を最適化することができ、最適化の第2またはその後の実施に送る。この工程は、早期に行われたグループの特性に対する開始設計として利用されている最適化のその後の実施からの結果を使用して周期的とすることもできる。
結果として得られる設計を改善するためにエキスパートシステムが行うことができる自動的機能の他の例は、最適化中に変化する各変数の感度をチェックすること、および、高度の感度を示す変数を再評価することである。感度は、1つの許容誤差値などの変数の小さな変化が実施された時に設計が変化する程度に関連する。変数の値における小さな変化からの結果の大きな変化は高い感度を示し、最適な結果がこれに基づき改善されることを示す可能性がある。したがって、エキスパートシステムは高い感度を示す変数に対する低減された許容誤差を設定することができ、かつ、結果として設計を基本設計として利用してそれらの変数に対する最適化を再試行することができる。
複数の装置に対して最適化が行われている時に利用することができるさらに他の機能は選択機能であり、これにより、より大きな能力および/またはより小さな負荷を有する装置は、高度な優先度の試行に対する、または、締め切りに間に合わせるための最も効率的な利用を提供するために自動的に選択することができる。
加えて、エキスパートシステムは所望の結果に到達するために非常に多くの回数にわたり連続的に、または、同時に動作させることができる。例えば、複数の最適化は、最善の解決策を見出すために、異なった戦略を使用して行うことができる。他の実施例において、多くの変数を所望することができ、エキスパートシステムの複数の動作は、連続した各試行を使用してそれらの変数のグループに対して連続的に行うことができ、直前の試行から1つまたは複数の最善の解決策を求める。
知識技術者、アプリケーション技術者、および、管理者を含む用語が人間により行われる機能に適用することを意図されており、エキスパートシステムはそれらの人間の機能に対応する機能的部分において説明されていることに注意されたい。しかし、いずれの1人の人物もそれらの機能の2つ以上を行うことができ、かつ、そのため、エキスパートシステムの複数の機能的態様にアクセスを有することを理解されよう。
エキスパートシステムの実施形態において、エキスパートシステムの動作の様々なレベルのユーザの、および、管理監視のための利用に対するエキスパートシステムの作業を編成する構造が考えられる。この構造は知識ベースに情報を編成することにより補強される。
様々なプロジェクト下位知識ベースは知識ベースに含まれている。各プロジェクトは所望の設計または工程を作成するために必要であるか、または、必要であると考えられるすべての知識を含むような構造にすることができる。プロジェクトは所望の設計または工程を作成するために必要であると考えられる知識を同様に含む下位プロジェクトにさらに下位分割することができる。したがって、それらのプロジェクトおよび下位プロジェクトへのアクセスは、新人ユーザなどのユーザがアクセスを有する知識を制限するために制限することができる。したがって、エンジンを設計するためのエキスパートシステムの実施例において、各プロジェクトおよび下位プロジェクトは少なくとも1つの基本エンジン定義、少なくとも1つの試験手順、少なくとも1つの目的、および、少なくとも1つの戦略を含むことができる。シミュレーション中、または、設計がシミュレートされた後、例えば所望の目的を満たすために基本エンジンを最適化するために、本明細書においては自動エンジン設計と呼ばれている結果として得られるエンジン定義が作成され、かつ、適用可能なプロジェクトに対する知識ベースに保存もされる。典型的なアプリケーションにおいて、知識技術者はプロジェクトに適切な情報(すなわち、基本エンジン定義、試験手順、目的、および、戦略)を置くことができ、アプリケーション技術者は所望の目的を達成するためにその情報を様々な組合せで利用することができる。例えば、知識技術者によっては何らの目的も提供されず、アプリケーション技術者には、例えば知識技術者からの入力なしに市場のニーズに基づき、目的を作成することが可能となっている場合には、他の変形も考えられる。この方法では、最善の設計情報は知識技術者により利用可能にされ、その情報は、1つまたは複数の最適化された設計または工程を作成するためにアプリケーション技術者により市場ニーズと組み合わせることができる。
例えば、プロジェクト内に含まれた知識ベースを構築するために、または、プロジェクト内に含まれた知識ベースへのアクセスをさらに制御するために、プロジェクト内の情報の下位分割が所望される場合は、下位プロジェクトも有益であることがある。下位プロジェクトは入れ子になったプロジェクトとして見ることができる。
プロジェクト内に含まれるために作成された情報も非プロジェクト下位知識ベース内に編成することができる。例えば、実施形態において、戦略知識ベースは知識ベース内に含まれている。この戦略下位知識ベースは戦略を編成するために様々な下位ディレクトリを含む。戦略下位ディレクトリは、エキスパートシステムの提供者により開発された戦略に対する提供者下位ディレクトリ、ユーザ組織の外の他のソースにより提供された戦略に対する未割当て下位ディレクトリ、組織の各知識技術者に対する分離された下位ディレクトリ、承認済み下位ディレクトリ、および、ゴミ箱下位ディレクトリを含むことができる。知識技術者は、その技術者が作成し、かつ、その技術者の下位ディレクトリに保存した戦略が有用ではないと決定した時、その知識技術者はその戦略をゴミ箱に移動できる。続いて、管理者はゴミ箱内の戦略を検討することができ、かつ、再び使用されないと管理者が決定した戦略を削除することができる。管理者は、承認済み下位ディレクトリに有益であると証明されているいずれの下位ディレクトリからも戦略を移動またはコピーすることもできる。戦略のこの編成は、知識ベースの戦略部分の開発を監督する能力を管理者に提供するフレームワークを作成する。
プロジェクトの外の情報の編成は、例えばその情報が複数のプロジェクトに適用できる時に有益である。特定の情報は複数のプロジェクトには適用可能とすることができず、そのため、適用可能なプロジェクト内でのみ維持することができる一方、特定の戦略のような他の情報は複数のプロジェクトに適用可能とすることができる。複数のプロジェクトに適用可能とすることができる情報は、例えば2つ以上の用途に対する可能性を持つ戦略に対する戦略下位知識ベースにおいて、プロジェクト下位ディレクトリの外で編成することができる。したがって、プロジェクトの外で編成された戦略および他の情報は、すべての適切なプロジェクトファイルまたは適切なプロジェクトに関連した他のファイルにコピーすることができる。例えば戦略以外のプロジェクトの外での様々な形の情報の編成も実施することができる。
エンジンがエキスパートシステムにより設計される実施形態において、自動エンジン設計(「AED」)と呼ばれる構造を実施することができる。各AEDは下位知識ベースと呼ぶことができる知識ベースからの情報のサブセットを含む。この情報は最適なエンジン設計を見出すことを意図された最適化またはシミュレーションのセットを行うために使用することができる。1つまたは複数のユーザは、1つまたは複数の基本設計定義、何が最適化されるべきかを定義する1つまたは複数の目的、および、最適化がどのようにして行われるかを定義する1つまたは複数の戦略を含むAED内に特定の情報を置くことができる。これらの基本エンジン定義、目的、および、戦略は、本実施形態のそのAEDに関連したそれぞれ「エンジン」、「目的」、および、「戦略」と題されたファイルに保存することができる。AEDが作成されると、それらの「エンジン」、「目的」、および、「戦略」のファイルは空にすることができる。続いて、適切な情報は適切な人物によりそれらのファイルに加えることができる。例えば、最適化が行われることになっている基本エンジン定義は知識技術者により追加することができ、そのタイプのエンジンに関係のある様々な最適化に対する証明済みの戦略は知識技術者により追加することができ、かつ、目的はアプリケーション技術者により追加することができる。代案として、それらの基本エンジン定義、目的、および、戦略へのポインタを、それらの基本エンジン定義、目的、および、戦略が知識ベースのどこか他の場所に保存されている場合に、AED内に作成することができる。
適切な情報がAEDに一旦追加されれば、アプリケーション技術者は適切な基本エンジン定義を選択し、1つまたは複数の所望の目的を選択し、かつ、それらの目的を最適化するエンジンを作成するために基本エンジン定義に対して修正を行うために適切な1つまたは複数の戦略を選択することができる。したがって、選択された情報は選択された基本エンジン定義、目的、および、戦略から複数のエンジン定義を作成およびシミュレートすることにより最適化することができる。
シミュレーション中、結果として得られるエンジン定義が全般的に作成され、結果として得られる最善のエンジン定義が保存される。最適化が行われた後、そのシミュレーションにおいて利用された基本エンジン設計、目的、および、戦略は、保存された結果として得られた設計と共に、AED内の下位ディレクトリに保存することができる。このようにして、管理者および技術者は、結果として得られたエンジン定義がどのようにして作成されたかを彼らに伝える履歴を有する。続いて、この情報は、どの戦略が最善の結果を提供するか、および、どの戦略が「承認された」ディレクトリに移動されるべきかの決定を含む多くの目的のために利用することができる。
本発明は特定の実施形態を使用して開示された一方、付属の特許請求の範囲において定義された如くの本発明の範囲から逸脱せずに、説明した実施形態に対する数多くの修正、改変、および、変更が可能である。したがって、本発明が説明した実施形態に限定されないこと、しかし、それらの実施形態が冒頭の特許請求の範囲の文言およびその均等物により定義された範囲全体を有することが意図されている。