(57)【要約】【課題】数式処理により適切な最適化処理を高速に行う。【解決手段】本方法では、パラメータの値を複数セット生成して各セットについてシミュレーションを実行させて評価指標の値を取得し、評価指標とパラメータとの関係を表し且つ第1の次数についての第1モデル式と、評価指標とパラメータとの関係を表し且つ第1の次数より高次の第2モデル式とを生成する。そして、第1モデル式と制約条件から限定子除去法により第1モデル式の最適解を実現するパラメータの値を算出させる。さらに、算出されたパラメータの値のうち値が制約条件に含まれる上限値又は下限値となったパラメータを特定し、第2モデル式に対して、特定されたパラメータの値として上限値等を代入して第2モデル式を変形する。また、変形後の第2モデル式と制約条件の該当部分から限定子除去法により、変形後の第2モデル式の最適解を実現する、変形後の第2モデル式内のパラメータの値を算出させる。【選択図】図１
2011154439.tif 000002
【特許請求の範囲】
【請求項１】
予め定められた設計パラメータの値を複数セット生成して各セットについてシミュレーションを実行させることにより、予め定められた評価指標の値を取得し、前記評価指標と前記設計パラメータとの関係を表し且つ第１の次数についての第１のモデル式と、前記評価指標と前記設計パラメータとの関係を表し且つ前記第１の次数より高次の第２のモデル式とを生成し、モデル式データ格納部に格納するステップと、
前記モデル式データ格納部に格納されている前記第１のモデル式と予め定められた制約条件とから限定子除去法により前記第１のモデル式の最適解を実現する前記設計パラメータの値を算出させ、設計パラメータ値格納部に格納するステップと、
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータを特定し、前記モデル式データ格納部に格納されている前記第２のモデル式に対して、特定された前記設計パラメータの値として前記上限値又は下限値を代入して前記第２のモデル式を変形する変形ステップと、
変形後の第２のモデル式と前記制約条件の該当部分とから前記限定子除去法により前記変形後の第２のモデル式の最適解を実現する、前記変形後の第２のモデル式内の設計パラメータの値を算出させ、前記設計パラメータ値格納部に格納するステップと、
を、コンピュータにより実行させるための最適化処理プログラム。
【請求項２】
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータの中から、前記モデル式データ格納部に格納されている前記第１のモデル式に対する影響度の条件を満たす設計パラメータを抽出するステップと、
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータのうち、抽出された前記設計パラメータ以外の設計パラメータの値として前記上限値又は下限値を、前記モデル式データ格納部に格納されている前記第２のモデル式に代入して前記第２のモデル式の第２の変形式を生成するステップと、
前記第２のモデル式の第２の変形式と前記制約条件の該当部分とから前記限定子除去法により前記第２の変形式の最適解を実現する、前記第２の変形式内の設計パラメータの値を算出し、前記設計パラメータ値格納部に格納するステップと、
をさらに前記コンピュータに実行させるための請求項１記載の最適化処理プログラム。
【請求項３】
予め定められた設計パラメータの値を複数セット生成して各セットについてシミュレーションを実行させることにより、予め定められた評価指標の値を取得し、前記評価指標と前記設計パラメータとの関係を表し且つ第１の次数についての第１のモデル式と、前記評価指標と前記設計パラメータとの関係を表し且つ前記第１の次数より高次の第２のモデル式とを生成し、モデル式データ格納部に格納するステップと、
前記モデル式データ格納部に格納されている前記第１のモデル式と予め定められた制約条件とから限定子除去法により前記第１のモデル式の最適解を実現する前記設計パラメータの値を算出させ、設計パラメータ値格納部に格納するステップと、
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータを特定し、前記モデル式データ格納部に格納されている前記第２のモデル式に対して、特定された前記設計パラメータの値として前記上限値又は下限値を代入して前記第２のモデル式を変形する変形ステップと、
変形後の第２のモデル式と前記制約条件の該当部分とから前記限定子除去法により前記変形後の第２のモデル式の最適解を実現する、前記変形後の第２のモデル式内の設計パラメータの値を算出させ、前記設計パラメータ値格納部に格納するステップと、
を含み、コンピュータに実行される最適化処理方法。
【請求項４】
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータの中から、前記モデル式データ格納部に格納されている前記第１のモデル式に対する影響度の条件を満たす設計パラメータを抽出するステップと、
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータのうち、抽出された前記設計パラメータ以外の設計パラメータの値として前記上限値又は下限値を、前記モデル式データ格納部に格納されている前記第２のモデル式に代入して前記第２のモデル式の第２の変形式を生成するステップと、
前記第２のモデル式の第２の変形式と前記制約条件の該当部分とから前記限定子除去法により前記第２の変形式の最適解を実現する、前記第２の変形式内の設計パラメータの値を算出し、前記設計パラメータ値格納部に格納するステップと、
をさらに含む請求項３記載の最適化処理方法。
【請求項５】
予め定められた設計パラメータの値を複数セット生成して各セットについてシミュレーションを実行させることにより、予め定められた評価指標の値を取得し、前記評価指標と前記設計パラメータとの関係を表し且つ第１の次数についての第１のモデル式と、前記評価指標と前記設計パラメータとの関係を表し且つ前記第１の次数より高次の第２のモデル式とを生成し、モデル式データ格納部に格納するモデル式生成部と、
前記モデル式データ格納部に格納されている前記第１のモデル式と予め定められた制約条件とから限定子除去法により前記第１のモデル式の最適解を実現する前記設計パラメータの値を算出させ、設計パラメータ値格納部に格納する第１設計パラメータ値生成部と、
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータを特定し、前記モデル式データ格納部に格納されている前記第２のモデル式に対して、特定された前記設計パラメータの値として前記上限値又は下限値を代入して前記第２のモデル式を変形し、変形後の第２のモデル式と前記制約条件の該当部分とから前記限定子除去法により前記変形後の第２のモデル式の最適解を実現する、前記変形後の第２のモデル式内の設計パラメータの値を算出させ、前記設計パラメータ値格納部に格納する第２設計パラメータ値生成部と、
を有する最適化処理装置。
【請求項６】
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータの中から、前記モデル式データ格納部に格納されている前記第１のモデル式に対する影響度の条件を満たす設計パラメータを抽出し、
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータのうち、抽出された前記設計パラメータ以外の設計パラメータの値として前記上限値又は下限値を、前記モデル式データ格納部に格納されている前記第２のモデル式に代入して前記第２のモデル式の第２の変形式を生成し、
前記第２のモデル式の第２の変形式と前記制約条件の該当部分とから前記限定子除去法により前記第２の変形式の最適解を実現する、前記第２の変形式内の設計パラメータの値を算出し、前記設計パラメータ値格納部に格納する
第３設計パラメータ値生成部
をさらに有する請求項５記載の最適化処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、数式処理による最適化技術に関する。
【背景技術】
【０００２】
ものづくりにおける設計段階では、設計条件を予め定められた設計パラメータの関数（すなわち目的関数）として表現し、例えば目的関数の値が最小になるように設計パラメータを設定することが必要となる。その際、設計者はベースとなる形状を決めた後で各設計パラメータの変動幅を設定し、設計パラメータ空間内で最適化を行う。しかし設計パラメータ数が多い場合、設計パラメータ空間内をくまなく探索しようとすると組み合わせ数が膨大となってしまう組み合わせ爆発が起こり、実時間内では計算不可能となる。
【０００３】
このような数値計算による最適化処理について、高速に処理しようとする技術は多数存在している。
【０００４】
一方、計算機シミュレーションによる最適設計には、数式処理による最適化という手法も存在している。この手法では、様々な設計パラメータの値について、計算機シミュレーションを実施し、各々のケースについて出力評価指標を算出する。そして、設計パラメータと出力評価指標との関係を近似するモデル式を計算し、このモデル式に基づいて数式処理による最適化を行う。この最適化のための処理として、得られた近似式及び制約条件からコストと性能との関係を表す数式を算出する場合がある。
【０００５】
なお、数式処理については、限定子除去法（ＱＥ：Quantifier Elimination）という技術が知られている。この技術は、例えば∃ｘ（ｘ2＋ｂｘ＋ｃ＝０）という数式を、限定子（∃及び∀）を除去した等価な式ｂ2−４ｃ≧０に変形する技術である。
【０００６】
具体的には、以下の文献を参照のこと。但し、ＱＥについての文献は多数存在しているので、以下の文献以外でも有用な文献は存在している。
【０００７】
数学セミナー  穴井宏和・横山和弘「計算実代数幾何入門」  日本評論社出版。第１回  ＣＡＤ（Cylindrical Algebraic Decomposition）とＱＥの概要（2007年11月号）、第２回  ＱＥによる最適化とその応用（2007年12月号）、第３回  ＣＡＤアルゴリズム(前半)（2008年1月号）、第４回  ＣＡＤアルゴリズム(後半)（2008年3月号）、第５回  ＣＡＤによるＱＥ（2008年4月号）。
雑誌FUJITSU2009-9月号，穴井 宏和, 金児 純司, 屋並 仁史, 岩根 秀直，「数式処理を用いた設計技術」（http://img.jp.fujitsu.com/downloads/jp/jmag/vol60-5/paper24.pdfから２００９年１０月取得可能）
Mats Jirstrand: Cylindrical Algebraic Decomposition - an Introduction，１９９５−１０−１８（http://www.control.isy.liu.se/research/reports/1995/1807.ps.Zから２００９年１０月取得可能）
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特表２００８−５０７０３８号公報
【特許文献２】特表２００８−５０２０３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、ＱＥでも計算量が多いという問題がある。このため、制約条件の数を減らして問題を簡略化するか、モデル式の次数を落としたり変数や項の数を減らすといったモデルの簡略化を行う必要が出てくる。しかし、このような簡略化は誤差を大きくするため、最適な解を与える１点を求める場合に影響が大きい。
【００１０】
従って、本技術の目的は、数式処理により適切な最適化処理を高速に行うための技術を提供することである。
【課題を解決するための手段】
【００１１】
本最適化処理方法は、（Ａ）予め定められた設計パラメータの値を複数セット生成して各セットについてシミュレーションを実行させることにより、予め定められた評価指標の値を取得し、評価指標と設計パラメータとの関係を表し且つ第１の次数についての第１のモデル式と、評価指標と設計パラメータとの関係を表し且つ第１の次数より高次の第２のモデル式とを生成し、モデル式格納部に格納するステップと、（Ｂ）モデル式格納部に格納されている第１のモデル式と予め定められた制約条件とから限定子除去法により第１のモデル式の最適解を実現する設計パラメータの値を算出させ、設計パラメータ値格納部に格納するステップと、（Ｃ）設計パラメータ値格納部に格納されている値が制約条件に含まれる上限値又は下限値となった設計パラメータを特定し、モデル式格納部に格納されている第２のモデル式に対して、特定された設計パラメータの値として上限値又は下限値を代入して第２のモデル式を変形する変形ステップと、（Ｄ）変形後の第２のモデル式と制約条件の該当部分とから限定子除去法により、変形後の第２のモデル式の最適解を実現する、変形後の第２のモデル式内の設計パラメータの値を算出させ、設計パラメータ値格納部に格納するステップとを含む。
【発明の効果】
【００１２】
数式処理により適切な最適化処理を高速に行うことができるようになる。
【図面の簡単な説明】
【００１３】
【図１】図１は、最適化処理装置の機能ブロック図である。
【図２】図２は、本技術の実施の形態に係る処理フローを示す図である。
【図３】図３は、モデル式生成処理の処理フローを示す図である。
【図４】図４は、モデル式データ格納部に格納されるデータの一例を示す図である。
【図５】図５は、シミュレーション結果を模式的に示す図である。
【図６】図６は、低次数のモデル式の導出を模式的に示す図である。
【図７】図７は、高次数のモデル式の導出を模式的に示す図である。
【図８】図８は、第１ＱＥ処理の処理フローを示す図である。
【図９Ａ】図９Ａは、制約付き最適化問題の一例を示す図である。
【図９Ｂ】図９Ｂは、ＱＥ問題の一例を示す図である。
【図１０】図１０は、制約付き最適化問題の一例を示す図である。
【図１１】図１１は、実行可能領域の一例を示す図である。
【図１２】図１２は、第２ＱＥ処理の処理フローを示す図である。
【図１３】図１３は、設計パラメータｘ1とモデル式との関係を模式的に示す図である。
【図１４】図１４は、第３ＱＥ処理の処理フローを示す図である。
【図１５】図１５は、コンピュータの機能ブロック図である。
【図１６】図１６は、ＱＥ処理部の処理を説明するための図である。
【図１７】図１７は、ＱＥ処理部の処理を説明するための図である。
【図１８】図１８は、ＱＥ処理部の処理を説明するための図である。
【図１９】図１９は、ＱＥ処理部の処理を説明するための図である。
【図２０】図２０は、ＱＥ処理部の処理を説明するための図である。
【図２１】図２１は、ＱＥ処理部の処理を説明するための図である。
【図２２】図２２は、ＱＥ処理部の処理を説明するための図である。
【図２３】図２３は、ＱＥ処理部の処理を説明するための図である。
【図２４】図２４は、ＱＥ処理部の処理を説明するための図である。
【図２５】図２５は、ＱＥ処理部の処理を説明するための図である。
【図２６】図２６は、最適化処理装置の機能ブロック図である。
【発明を実施するための形態】
【００１４】
本技術の実施の形態では、設計対象物の物理量（例えば、長さや厚みなど）を設計パラメータとして採用し、当該設計パラメータの関数である目的関数の値を最適化（例えば最小化又は最大化）すると共に、当該最適値を実現するための設計パラメータの値を高精度で算出する。より具体的には、半導体設計のうちＳＲＡＭ（Static Random Access Memory）形状の設計を一例にする。ＳＲＡＭ形状の設計では、例えばセル電圧、Loadゲート長、Driverゲート長、Transferゲート長、Load幅、Driver幅、Transfer幅、WordLine電位、LoadのVth、DriverのＶth、TransferのＶthなどが設計パラメータとして採用され得る。
【００１５】
本実施の形態では、設計パラメータの値を所定の変動幅内で変動させてシミュレーションを行い、シミュレーションの結果から設計パラメータとシミュレーション結果である評価指標との関係をモデル化することによって、目的関数を特定する。ＳＲＡＭ形状の設計では、高精度でのモデル化が必要で、線形モデルでは不十分とされている。しかしながら、目的関数の最適解を与える設計パラメータの値は、設計パラメータの上限値又は下限値のいずれかになることが多いことが知られている。例えば設計パラメータが０以上１以下という値域で定義されている場合には、下限値が「０」であり、上限値が「１」である。但し、設計パラメータの値が下限値になるか、上限値になるかについては、様々な要因が関係しており、特に複数の評価指標を同時に評価する必要がある場合には、一義的に上限値であるか下限値になるかを事前に特定することはできない。
【００１６】
本実施の形態では、このような特性を活用している。但し、ＳＲＡＭ形状の設計以外にも、このような特性を有するようなものであれば、本実施の形態を適用することができる。
【００１７】
本技術の一実施の形態に係る最適化処理装置１００の機能ブロック図を図１に示す。最適化処理装置１００は、（Ａ）設計者から問題設定についてのデータなどの入力を受け付ける入力部１と、（Ｂ）入力部１により受け付けられたデータを格納する問題設定データ格納部２と、（Ｃ）問題設定データ格納部２に格納されているデータを用いてモデル式生成処理を実施するモデル式生成部３と、（Ｄ）モデル式生成部３の処理結果を格納するモデル式データ格納部４とを有する。
【００１８】
また、最適化処理装置１００は、（Ｅ）問題設定データ格納部２とモデル式データ格納部４とに格納されたデータを用いて処理を行う第１ＱＥ処理部５と、（Ｆ）第１ＱＥ処理部５などの処理結果を格納する処理結果格納部８と、（Ｇ）問題設定データ格納部２とモデル式データ格納部４と処理結果格納部８とに格納されているデータを用いて処理を行う第２ＱＥ処理部６と、（Ｈ）問題設定データ格納部２とモデル式データ格納部４と処理結果格納部８とに格納されているデータを用いて処理を行う第３ＱＥ処理部７と、（Ｉ）処理結果格納部８に格納されているデータを出力する出力部９とを有する。
【００１９】
例えば最適化処理装置１００とは別に設けられ且つネットワークを介して接続されているコンピュータ上で実行されているシミュレータ２００は、例えばＳＰＩＣＥ（Simulation Program with Integrated Circuit Emphasis）シミュレータなどであり、最適化処理装置１００のモデル式生成部３と連携する。但し、シミュレータ２００は、最適化処理装置１００において実行される場合もある。
【００２０】
また、例えば最適化処理装置１００とは別に設けられ且つネットワークを介して接続されているコンピュータ上で実行されているＱＥツール３００は、最適化処理装置１００の第１乃至第３ＱＥ処理部５乃至７と連携する。但し、ＱＥツール３００は、最適化処理装置１００において実行される場合もある。ＱＥツール３００は、従来技術の欄で述べたように、ｘ2＋ｂｘ＋ｃ＝０というモデル式を得た場合に、周知の限定子除去法でｘの存在し得る範囲としてｂ2−４ｃ≧０を算出するような処理を行う。
【００２１】
次に、図１に示した最適化処理装置１００の処理内容について図２乃至図１５を用いて説明する。
【００２２】
設計者は、問題設定のためのデータを最適化処理装置１００に入力する。最適化処理装置１００の入力部１は、設計者から問題設定のためのデータを受け付け、当該データを問題設定データ格納部２に格納する（ステップＳ１）。例えば、評価指標Ｆ１＝ＳＮＭ（Static Noise Margin）及び評価指標Ｆ２＝ＷＭ（Write Margin）を指定して、目的関数として評価指標Ｆ１及びＦ２のうち小さい値（ｍｉｎ（Ｆ１，Ｆ２））を指定する。さらに、設計パラメータとしてｘ1乃至ｘ7を指定して、これら設計パラメータの制約条件（制約式とも呼ぶ。）を０≦ｘi≦１として指定する。このようなデータを、問題設定データ格納部２に格納する。
【００２３】
次に、モデル式生成部３は、問題設定データ格納部２に格納されているデータを用いて、モデル式の生成処理を実施する（ステップＳ３）。このモデル式の生成処理については、図３乃至図７を用いて説明する。
【００２４】
まず、モデル式生成部３は、LatinHypercubeサンプリング法等の既に知られた方法を用いて、問題設定データ格納部２に格納されている制約条件に従った設計パラメータの値の複数のセットを生成し、例えばモデル式データ格納部４に格納する（ステップＳ２１）。例えば、図４に示すように、設計パラメータｘ1乃至ｘ7の値を、制約条件を満たすように複数セット生成する。図４の例では、Ｆ１及びＦ２の値をも登録する例を示しているが、本ステップではまだ値は登録されない。
【００２５】
そして、モデル式生成部３は、シミュレータ２００に、生成された設計パラメータ値セットの各々に対してシミュレーションを実施させ、シミュレータ２００から評価指標Ｆ１及びＦ２の値を取得し、例えばモデル式データ格納部４に格納する（ステップＳ２３）。この段階で図４に示すように、各行に評価指標Ｆ１の値及び評価指標Ｆ２の値が登録される。
【００２６】
また、モデル式生成部３は、シミュレーション結果に基づき低次数の（例えば線形の）モデル式を例えば最小二乗法等により生成して、当該モデル式のデータをモデル式データ格納部４に格納する（ステップＳ２５）。例えば、設計パラメータを１つと仮定して、ステップＳ２３で取得されたシミュレーション結果をグラフに表すと図５のようになる。図５では、横軸が設計パラメータの値を表し、縦軸が評価指標の値を表す。そうすると、このような空間において、シミュレータ２００への入力（すなわち設計パラメータ値）と出力（シミュレーションによる評価指標の値）とをプロットすることができる。本ステップでは、例えば最小二乗法等により、例えば線形のモデル式を生成する。図５のような場合には、図６に示すように、直線Ｃ１がモデル式として算出される。
【００２７】
例えば、設計パラメータがｘ1からｘ7までである場合には、それらの設計パラメータと評価指標Ｆ１との関係を表す低次数のモデル式及び設計パラメータと評価指標Ｆ２との関係を表す低次数のモデル式がモデル式データ格納部４に格納される。
【００２８】
そして、例えば以下のようなモデル式が得られたものとする。なお、線形モデルの場合にはＦ１１及びＦ１２と記すものとする。
【００２９】
【数１】
2011154439.tif 000003
【００３０】
さらに、モデル式生成部３は、シミュレーション結果に基づき高次数の（例えば２次の）モデル式を例えば最小二乗法等により生成して、当該モデル式のデータをモデル式データ格納部４に格納する（ステップＳ２７）。基本的な考え方はステップＳ２５と同じであるが、例えば図７に示すように、曲線Ｃ２のような高次のモデル式を算出する。
【００３１】
例えば、設計パラメータがｘ1からｘ7までである場合には、それらの設計パラメータと評価指標Ｆ１との関係を表す高次数のモデル式及び設計パラメータと評価指標Ｆ２との関係を表す高次数のモデル式がモデル式データ格納部４に格納される。
【００３２】
そして、例えば以下のような２次のモデル式が得られたものとする。なお、２次のモデルの場合にはＦ２１及びＦ２２と記すものとする。
【００３３】
【数２】
2011154439.tif 000004
【００３４】
【数３】
2011154439.tif 000005
【００３５】
このように低次数のモデル式と高次数のモデル式を活用して、以下の処理において適切な設計パラメータ値を算出する。
【００３６】
図２の処理の説明に戻って、第１ＱＥ処理部５は、問題設定データ格納部２とモデル式データ格納部４とに格納されているデータを用いて、ＱＥツール３００と連携して第１ＱＥ処理を実施し、処理結果を処理結果格納部８に格納する（ステップＳ５）。この第１ＱＥ処理については、図８乃至図１１を用いて説明する。
【００３７】
第１ＱＥ処理は、最初から次数の高いモデル式をＱＥでは解けないので次数の低いモデル式をＱＥで解くことによって、考慮すべき設計パラメータを減らすための前処理である。低い次数のモデル式を使用すると精度は低いが、おおよその設計パラメータの値を得ることができる。設計パラメータの値は上限値又は下限値になることが多いという特徴がある問題を解く場合には、精度が低い低次数のモデル式で設計パラメータの値を算出して上限値又は下限値になることが分かれば、高次数のモデル式で設計パラメータの値を算出しても、その設計パラメータについては同じように上限値又は下限値になる。従って、低次数のモデル式で上限値又は下限値となった設計パラメータについては、高次数のモデル式では定数として扱っても問題なく、考慮すべき設計パラメータを減らすことができるようになる。
【００３８】
第１ＱＥ処理部５は、問題設定データ格納部２に格納されている制約条件及び目的関数とモデル式データ格納部４に格納されている低次数のモデル式とでＱＥ問題を生成して、例えばメインメモリなどの記憶装置に格納する（ステップＳ３１）。
【００３９】
一般的には、図９Ａに示したような制約付き最適化問題から、ＱＥ問題を生成する場合には、以下のような処理を実施する。すなわち、目的関数（−ｘ−２ｙ−５ｚ）に含まれる変数（本実施の形態であれば設計パラメータ）について存在を表す「∃」を付与する（図９ＢのＡ）。さらに、目的関数を最大化するということを表すために、例えば変数ｓを導入して「ｓ≦目的関数」という関係式に変換する（図９ＢのＢ）、この関係式と全ての制約条件（「Subject to」の後の条件）をＡＮＤを表す「∧」で結合する（図９ＢのＣ）。すなわち、ｓ≦−ｘ−２ｙ−５ｚ∧２ｘ＋３ｙ＋ｚ＝７∧ｘ＋ｙ≧１∧ｘ≧０∧ｙ≧０∧ｚ≧０という条件を満たすｓを求めるという問題に変換する。これによって、ｓ、すなわち目的関数−ｘ−２ｙ−５ｚの実行可能領域を解く問題となる。なお、図９ＢのＱＥ問題をＱＥツール３００で解けば、２ｓ＋７≦０が得られる。この実行可能領域の中で最も大きい値を最適解として採用する。
【００４０】
上で述べた７つの設計パラメータｘ1乃至ｘ7で表されるＦ１１及びＦ１２の例は、図１０に示すような制約付き最適化問題として把握される。ここで、目的関数ｍｉｎ（Ｆ１１，Ｆ１２）については、ＳＮＭとＷＭの両方が悪くない部分を求めるということである。但し、代数的にｍｉｎを直接表すことができないので、新たな変数ｚを導入する。そして、ｚ≦Ｆ１１∧ｚ≦Ｆ１２と変形することで、ｚはＦ１１及びＦ１２両方よりも大きくない変数となる。すなわち、ｚ≦ｍｉｎ（Ｆ１１，Ｆ１２）と同じ意味を有する。具体的には、図１１（縦軸はｚを表し、横軸は１つの設計パラメータの値を表す）に示すように、直線Ｆ１１が直線Ｆ１２より値が小さい範囲では直線Ｆ１１以下の部分、直線Ｆ１２が直線Ｆ１１より値が小さい範囲では直線Ｆ１２以下の部分が、実行可能領域となる。
【００４１】
従って、ステップＳ３１では、以下のようなＱＥ問題が生成される。
∃ｘ1∃ｘ2∃ｘ3∃ｘ4∃ｘ5∃ｘ6∃ｘ7（０≦ｘ1≦１∧０≦ｘ2≦１∧０≦ｘ3≦１∧０≦ｘ4≦１∧０≦ｘ5≦１∧０≦ｘ6≦１∧０≦ｘ7≦１∧ｚ≦Ｆ１１∧ｚ≦Ｆ１２）
【００４２】
そして、第１ＱＥ処理部５は、ＱＥツール３００に、ステップＳ３１で生成されたＱＥ問題を解くように要求し、ＱＥツール３００から目的関数の最適解を取得し、処理結果格納部８に格納する（ステップＳ３３）。ＱＥツール３００の具体的処理については、限定子除去法としてよく知られた処理であるから、ここでは説明を省略する。なお、付録で処理の具体例について説明しておく。
【００４３】
上で述べたようなＱＥ問題の場合には、以下のような結果が得られる。
1274223392000000000*ｚ−10521725891745634157≦０
【００４４】
これによって変数ｚの実行可能領域が特定される。このような変数ｚの実行可能領域が得られれば、変数ｚの最大値が得られる。この変数ｚの最大値を、目的関数の最適解として特定する。上の例では、ｚ＝10521725891745634157／1274223392000000000である。
【００４５】
従って、第１ＱＥ処理部５は、目的関数の最適解を実現する設計パラメータの値を求めるためのＱＥ問題を生成して、ＱＥツール３００に、当該ＱＥ問題を解くように要求し、ＱＥツール３００から設計パラメータの値を取得し、処理結果格納部８に格納する（ステップＳ３５）。
【００４６】
具体的には以下のような手順を行う。
１）ｘ7を消去したＱＥ問題を作成し、ｘ7の値を求める。
∃ｘ1∃ｘ2∃ｘ3∃ｘ4∃ｘ5∃ｘ6∃ｚ（０≦ｘ1≦１∧０≦ｘ2≦１∧０≦ｘ3≦１∧０≦ｘ4≦１∧０≦ｘ5≦１∧０≦ｘ6≦１∧０≦ｘ7≦１∧ｚ≦Ｆ１１∧ｚ≦Ｆ１２∧1274223392000000000*ｚ−10521725891745634157＝０）
２）ｘ7の結果を条件に反映し、ｘ6を消去したＱＥ問題を作成し、ｘ6の値を求める。
∃ｘ1∃ｘ2∃ｘ3∃ｘ4∃ｘ5∃ｘ7∃ｚ（０≦ｘ1≦１∧０≦ｘ2≦１∧０≦ｘ3≦１∧０≦ｘ4≦１∧０≦ｘ5≦１∧０≦ｘ6≦１∧ｘ7＝１∧ｚ≦Ｆ１１∧ｚ≦Ｆ１２∧1274223392000000000*ｚ−10521725891745634157＝０）
３）ｘ6，ｘ7の結果を条件に反映し、ｘ5を消去したＱＥ問題を作成し、ｘ5の値を求める。
∃ｘ1∃ｘ2∃ｘ3∃ｘ4∃ｘ6∃ｘ7∃ｚ（０≦ｘ1≦１∧０≦ｘ2≦１∧０≦ｘ3≦１∧０≦ｘ4≦１∧０≦ｘ5≦１∧ｘ6＝１∧ｘ7＝１∧ｚ≦Ｆ１１∧ｚ≦Ｆ１２∧1274223392000000000*ｚ−10521725891745634157＝０）
４）ｘ5，ｘ6，ｘ7の結果を条件に反映し、ｘ4を消去したＱＥ問題を作成し、ｘ4の値を求める。
∃ｘ1∃ｘ2∃ｘ3∃ｘ5∃ｘ6∃ｘ7∃ｚ（０≦ｘ1≦１∧０≦ｘ2≦１∧０≦ｘ3≦１∧０≦ｘ4≦１∧ｘ5＝１∧ｘ6＝１∧ｘ7＝１∧ｚ≦Ｆ１１∧ｚ≦Ｆ１２∧1274223392000000000*ｚ−10521725891745634157＝０）
５）ｘ4，ｘ5，ｘ6，ｘ7の結果を条件に反映し、ｘ3を消去したＱＥ問題を作成し、ｘ3の値を求める。
∃ｘ1∃ｘ2∃ｘ4∃ｘ5∃ｘ6∃ｘ7∃ｚ（０≦ｘ1≦１∧０≦ｘ2≦１∧０≦ｘ3≦１∧ｘ4＝１∧ｘ5＝１∧ｘ6＝１∧ｘ7＝１∧ｚ≦Ｆ１１∧ｚ≦Ｆ１２∧1274223392000000000*ｚ−10521725891745634157＝０）
６）ｘ3，ｘ4，ｘ5，ｘ6，ｘ7の結果を条件に反映し、ｘ2を消去したＱＥ問題を作成し、ｘ2の値を求める。
∃ｘ1∃ｘ3∃ｘ4∃ｘ5∃ｘ6∃ｘ7∃ｚ（０≦ｘ1≦１∧０≦ｘ2≦１∧ｘ3＝１∧ｘ4＝１∧ｘ5＝１∧ｘ6＝１∧ｘ7＝１∧ｚ≦Ｆ１１∧ｚ≦Ｆ１２∧1274223392000000000*ｚ−10521725891745634157＝０）
７）ｘ2，ｘ3，ｘ4，ｘ5，ｘ6，ｘ7の結果を条件に反映し、ｘ1を消去したＱＥ問題を作成し、ｘ1の値を求める。
∃ｘ2∃ｘ3∃ｘ4∃ｘ5∃ｘ6∃ｘ7∃ｚ（０≦ｘ1≦１∧ｘ2＝１∧ｘ3＝１∧ｘ4＝１∧ｘ5＝１∧ｘ6＝１∧ｘ7＝１∧ｚ≦Ｆ１１∧ｚ≦Ｆ１２∧1274223392000000000*ｚ−10521725891745634157＝０）
【００４７】
このように、ステップＳ３３で得られた変数ｚの実行可能領域のうちの最大値を条件として、ステップＳ３１で生成されたＱＥ問題の条件にＡＮＤでさらに連結する。また、変数ｚについても存在を表す記号「∃」を付与して、他の設計パラメータと同じように列記する。すなわち、０≦ｘ1≦１∧０≦ｘ2≦１∧０≦ｘ3≦１∧０≦ｘ4≦１∧０≦ｘ5≦１∧０≦ｘ6≦１∧０≦ｘ7≦１∧ｚ≦Ｆ１１∧ｚ≦Ｆ１２∧1274223392000000000*ｚ−10521725891745634157＝０という条件を満たすような設計パラメータｘ1乃至ｘ7及び変数ｚの値を求める問題にする。変数ｚについては、既に求められているので、そのまま出力される。
【００４８】
そうすると、ＱＥツール３００は、よく知られた限定子除去法によりＱＥ問題を解いて、上で述べたような条件を満たすような設計パラメータの値を出力する。
【００４９】
上で述べた例では、以下のような結果が得られる。
ｘ1＝7013720457/14016457312＝0.5003918，
ｘ2＝１，
ｘ3＝１，
ｘ4＝１，
ｘ5＝１，
ｘ6＝１，
ｘ7＝１，
ｚ＝10521725891745634157/1274223392000000000
【００５０】
このように、低次数のモデル式に含まれる設計パラメータの値が得られるようになる。上でも述べたように、多くの設計パラメータの値が、上限値になっていることが分かる。但し、Ｆ１１及びＦ１２の内容によって、下限値になるかもしれないので、第１ＱＥ処理によってどの設計パラメータが上限値又は下限値になるのかを確認している。
【００５１】
図８の処理の説明から図２の処理の説明に戻って、第２ＱＥ処理部６は、処理結果格納部８と問題設定データ格納部２とモデル式データ格納部４とに格納されているデータを用いて、第２ＱＥ処理を実施し、処理結果を処理結果格納部８に格納する（ステップＳ７）。この第２ＱＥ処理については、図１２及び図１３を用いて説明する。
【００５２】
第２ＱＥ処理部６は、処理結果格納部８に格納されており且つ第１ＱＥ処理で得られた設計パラメータの値のうち上限値又は下限値である設計パラメータについて、モデル式データ格納部４に格納されている高次数モデル式に対して、得られた上限値又は下限値を代入して、高次数モデル式を変形し、例えばメインメモリなどの記憶装置に格納する（ステップＳ４１）。
【００５３】
上で述べた例では、ｘ1以外のｘ2乃至ｘ7は、上限値「１」となっているので、高次数のモデル式Ｆ２１及びＦ２２においてｘ2乃至ｘ7に「１」を代入する。そうすると、以下のような簡略化された式が得られる。
Ｆ２１ｂ＝8.500756371−0.8407133034*ｘ1＋0.1922736364*ｘ12
Ｆ２２ｂ＝7.953391257＋1.351922165*ｘ1＋0.3143480967*ｘ12
【００５４】
そして、第２ＱＥ処理部６は、変形後の高次数モデル式と、問題設定データ格納部２に格納されている制約条件及び目的関数とでＱＥ問題を生成し、例えばメインメモリなどの記憶装置に格納する（ステップＳ４３）。
【００５５】
ステップＳ４３では、基本的にはステップＳ３１と同様の処理を実施する。但し、ｍｉｎ（Ｆ２１ｂ，Ｆ２２ｂ）が目的関数となる。また、設計パラメータは値が上限値又は下限値ではないｘ1のみになっているので、制約条件もｘ1についての制約条件のみが選択される。また、解くことになる設計パラメータもｘ1だけになる。従って、ステップＳ４３で生成されるＱＥ問題は、以下のようになる。
∃ｘ1（０≦ｘ1≦１∧ｚ≦Ｆ２１ｂ∧ｚ≦Ｆ２２ｂ）
【００５６】
その後、第２ＱＥ処理部６は、ＱＥツール３００に、ステップＳ４３で生成されたＱＥ問題を解くように要求し、ＱＥツール３００から目的関数の最適解を取得し、処理結果格納部８に格納する（ステップＳ４５）。
【００５７】
ステップＳ４５では、基本的にはステップＳ３３と同様の処理を実施する。そうすると、以下のような変数ｚの値が得られる。
【００５８】
【数４】
2011154439.tif 000006
【００５９】
これはさらに整理されて以下のような変数ｚの式が得られる。
238618787270928516302097379198561373969109372528*ｚ2−3948898513981542665325272158255992498641993331585*ｚ＋16337501656369998932875768265187359652159276835066≦０ or 
61093111211285133307320208872464185567392*ｚ−505514462704138254311579799314432635828595＜０
最終的には、変数ｚの実行可能領域は、z≦8.29074…となる。従って、変数ｚの最大値は、８．２９０７４…となる。なお、本願で小数点以下の数字を「…」を含む形で表した場合、実際にはルート√を含む形で出力されるが、表記の都合上近似値を用いていることを表している。
【００６０】
さらに、第２ＱＥ処理部６は、目的関数の最適解を実現する設計パラメータの値を求めるためのＱＥ問題を生成して、ＱＥツール３００に、当該ＱＥ問題を解くように要求し、ＱＥツール３００から設計パラメータの値を取得し、処理結果格納部８に格納する（ステップＳ４７）。
【００６１】
上で述べた例では、以下のようなＱＥ問題を生成する。
∃ｘ1∃ｚ（０≦ｘ1≦１∧ｚ≦Ｆ２１ｂ∧ｚ≦Ｆ２２ｂ∧238618787270928516302097379198561373969109372528*ｚ2−3948898513981542665325272158255992498641993331585*ｚ＋16337501656369998932875768265187359652159276835066＝０ or 
61093111211285133307320208872464185567392*ｚ−505514462704138254311579799314432635828595＞０）
なお、この式においても表記の都合上近似値が用いられている。
【００６２】
従って、０≦ｘ1≦１∧ｚ≦Ｆ２１ｂ∧ｚ≦Ｆ２２ｂ∧ｚ＝８．２９０４といった条件を満たす設計パラメータｘ1の値及び変数ｚの値を求める問題となる。なお、変数ｚの値は既に求まっているので、変数ｚの値についてはそのまま出力される。
【００６３】
ＱＥツール３００は、よく知られた限定子除去法によりＱＥ問題を解いて、上で述べたような条件を満たすような設計パラメータの値を出力する。
【００６４】
上で述べた例では、以下のような結果が得られる。
147369062865673278681489897354299172230888310212951405753448549687*ｘ14−1267585231880821011490655336656612299953463686527769426803057971300*ｘ13＋3026832164187229605677018935740423336948896624044750813252776489960*ｘ12−1294814954233025589235990288953847635054037925349792811665028977000*ｘ1＋153374672525527731144963940745339046776486276154608383375827336700≧０ and
13783646935592814416188923068045742305401334162815422297006892092*ｘ14−120537537699802114369719508264578689747806603680459929386166019204*ｘ13＋295964917461532064463036717507200901977755721564516665233454151547*ｘ12−141846512456883797861995180769761248346815031482078133627654338810*ｘ1＋18989383858381045985849754233804905380729776996135581477310597575≧０ and
1835405414309906452852689890486911373094821422542*ｘ12−8025279897097359340954146906679274179148864319177*ｘ1＋2159873695219589023157307374252815016052936539755≧０ and
545582478146275943640962608991635504887081954057*ｘ12−2346395772026885507191646225202102006739498467150*ｘ1＋557302446970863503723288521839833928729371673530≦０ and
ｘ1−１≦０ and
ｘ1≧０
【００６５】
これをさらに整理すれば以下のような設計パラメータｘ1の実行可能領域が得られる。
ｘ1−１＜０ and 
184630436769134077176252*ｘ12−799072005181775017876755*ｘ1＋199478730104451626416796＝０
【００６６】
これから最大値を与えるｘ1＝0.2659847156…が得られる。
【００６７】
上で示したＦ２１ｂ及びＦ２２ｂについて図示すると図１３に示すようになる。すなわち、ｘ軸は設計パラメータｘ1を表し、ｙ軸は変数ｚを表す。このグラフからすると、ｚの最適値は、曲線Ｆ２１ｂ及びＦ２２ｂの交点における８．２９０７４…であり、その際の設計パラメータｘ1の値は、0.2659847156…となることが分かる。
【００６８】
このように、第１ＱＥ処理で得られた設計パラメータｘ1の値とは異なる値が第２ＱＥ処理で得られている。すなわち、第２ＱＥ処理を実施することによって、設計パラメータｘ1について誤差の小さい値を得ることができる。
【００６９】
図２の処理フローの説明に戻って、例えば第３ＱＥ処理部７は、目的関数に対して感度又は寄与度が高い変数について計算をやり直すか判断する（ステップＳ９）。例えば設計者による指示がなされているか否か、又は最適化処理装置１００への設定として第３ＱＥ処理部７が処理を行うように設定されているか否かを判断する。
【００７０】
目的関数に対して感度又は寄与度が高い変数について計算をやり直すことになっていない場合には、処理はステップＳ１３に移行する。
【００７１】
一方、目的関数に対して感度又は寄与度が高い変数について計算をやり直すことになっている場合には、第３ＱＥ処理部７は、処理結果格納部８と問題設定データ格納部２とモデル式データ格納部４に格納されているデータを用いて、第３ＱＥ処理を実施し、処理結果を処理結果格納部８に格納する（ステップＳ１１）。第３ＱＥ処理については、図１４を用いて説明する。
【００７２】
設計パラメータの値が上限値又は下限値になるような場合が多いという特性を用いて、第２ＱＥ処理においては、第１ＱＥ処理で得られた設計パラメータの上限値又は下限値をそのまま採用して設計パラメータの数を減らしている。しかしながら、第１ＱＥ処理は低次数のモデル式でＱＥ処理を実施しているので、精度の高い計算を行った場合には例えばｘ7＝０．９５だが、誤差で上限値「１」と算出されている可能性がある。従って、目的関数に対して影響が大きい設計パラメータについて、第３ＱＥ処理で確認を行う。
【００７３】
なお、目的関数に対する感度又は寄与度というのは、設計パラメータを変化させたときの目的関数への影響度を表す。例えば、目的関数における係数の絶対値が大きければ、影響度が高く、感度又は寄与度が高いと判断できる。
【００７４】
まず、第３ＱＥ処理部７は、モデル式データ格納部４に格納されている低次数モデル式において、上限値は下限値が求められた設計パラメータのうち、感度又は寄与度が高い設計パラメータを特定する（ステップＳ５１）。
【００７５】
例えば、Ｆ１１及びＦ１２で、最も絶対値が大きい係数はｘ7の係数である。従って、ｘ7を特定する。複数の設計パラメータを特定しても良いが、高次数のモデル式で高次の項が複数残ることになるので、ＱＥ処理の処理時間が長くなる。ここでは、１つ選択することとする。
【００７６】
次に、第３ＱＥ処理部７は、ステップＳ５１で特定された設計パラメータ及び第１ＱＥ処理で上限値又は下限値でない値が得られた設計パラメータ以外については、処理結果格納部８に格納されており且つ第１ＱＥ処理で得られた値を、モデル式データ格納部４に格納されている高次数モデル式に代入することによって、高次数モデル式の変形を行って、変形後の高次数モデル式を例えばメインメモリなどの記憶装置に格納する（ステップＳ５３）。
【００７７】
上で述べた例では、設計パラメータｘ2乃至ｘ6について上限値「１」を代入するので、以下のような変形後の高次数モデル式が得られる。
Ｆ２１ｃ＝-2.464051045*ｘ7＋10.92366518−0.7848741460*ｘ1＋0.1922736364*ｘ12＋0.4114223556×10-1*ｘ72−0.5583915742×10-1*ｘ7*ｘ1
Ｆ２２ｃ＝4.739436358*ｘ7＋3.052324427＋1.279031039*ｘ1−0.3143480967*ｘ12+0.1616304724*ｘ72+0.7289112590×10-1*ｘ7*ｘ1
【００７８】
第３ＱＥ処理部７は、変形後の高次数モデル式と、問題設定データ格納部２に格納されている制約条件及び目的関数とでＱＥ問題を生成し、例えばメインメモリなどの記憶装置に格納する（ステップＳ５５）。
【００７９】
ステップＳ５５では、基本的にはステップＳ３１と同様の処理を実施する。但し、ｍｉｎ（Ｆ２１ｃ，Ｆ２２ｃ）が目的関数となる。また、設計パラメータは値が上限値又は下限値ではないｘ1及びｘ7のみになっているので、制約条件もｘ1及びｘ7についての制約条件のみが選択される。また、解くことになる設計パラメータもｘ1及びｘ7だけになる。従って、ステップＳ５５で生成されるＱＥ問題は、以下のようになる。
∃ｘ1∃ｘ7（０≦ｘ1≦１∧０≦ｘ7≦１∧ｚ≦Ｆ２１ｃ∧ｚ≦Ｆ２２ｃ）
【００８０】
その後、第３ＱＥ処理部７は、ＱＥツール３００に、ステップＳ５５で生成されたＱＥ問題を解くように要求し、ＱＥツール３００から目的関数の最適解を取得し、処理結果格納部８に格納する（ステップＳ５７）。
【００８１】
ステップＳ５７では、基本的にはステップＳ３３と同様の処理を実施する。そうすると、以下のような変数ｚの値が得られる。
76521692628371604200094665888089031213570348775719997908381149434130894497838804645345122280727232499000550400*ｚ2−1266356274402535285733613562992528809428335713014481227199628488088920626515945478646176290112631818545299010496*ｚ＋5239207254170329463799573892494718766285329013399382293501296580397159499617737745543801847759123880991116365945≦０  and
463443635747785967425472797218181077323632916075879549238739474499290774293298730400*ｚ−3834760678983826041395849039351295208012618621640274564860057389386590727945878723723＜０
【００８２】
最終的には、変数ｚの実行可能領域は、z≦8.290742434…となる。従って、変数ｚの最大値は、８．２９０７４２４３４…となる。これは、第２ＱＥ処理部６で算出された値とほぼ同じである。
【００８３】
さらに、第３ＱＥ処理部７は、目的関数の最適解を実現する設計パラメータの値を求めるためのＱＥ問題を生成して、ＱＥツール３００に、当該ＱＥ問題を解くように要求し、ＱＥツール３００から設計パラメータの値を取得し、処理結果格納部８に格納する（ステップＳ５９）。
【００８４】
ステップＳ５９では、基本的にはステップＳ３５と同様の処理を実施する。そうすると、上で述べた例では、以下のようなＱＥ問題を生成する。
∃ｘ1∃ｘ7∃ｚ（０≦ｘ1≦１∧０≦ｘ7≦１∧ｚ≦Ｆ２１ｃ∧ｚ≦Ｆ２２ｃ∧ｚ＝８．２９０７４２４３４）
【００８５】
従って、０≦ｘ1≦１∧０≦ｘ7≦１∧ｚ≦Ｆ２１ｃ∧ｚ≦Ｆ２２ｃ∧ｚ＝８．２９０７４２４３４といった条件を満たす設計パラメータｘ1及びｘ7の値及び変数ｚの値を求める問題となる。なお、変数ｚの値は既に求まっているので、変数ｚの値についてはそのまま出力される。
【００８６】
ＱＥツール３００は、よく知られた限定子除去法によりＱＥ問題を解いて、上で述べたような条件を満たすような設計パラメータの値を出力する。
【００８７】
上で述べた例では、以下のような結果が得られる。
ｘ1＝0.2659847199，
ｘ7＝0.9999999988
【００８８】
このように、第２ＱＥ処理部６で算出されたものとほぼ同じ値が得られる。この例ではほぼ同じ結果が得られているが、そうでない場合もある。従って、設計者は第２ＱＥ処理部６の処理結果と第３ＱＥ処理部７の処理結果とを比較しつつ、いずれの値を採用するか決定すればよい。
【００８９】
図２の処理の説明に戻って、出力部９は、処理結果格納部８に格納されている目的関数の最適値及び各設計パラメータの値を、出力装置（例えばプリンタや表示装置など。場合によってはネットワークに接続されている他のコンピュータや同一又は他のコンピュータで実行されている他のプログラム）に出力する（ステップＳ１３）。これによって、設計者は、採用すべき設計パラメータの値を取得することができる。なお、第３ＱＥ処理を実施している場合には、第２ＱＥ処理で得られた目的関数の最適値及び各設計パラメータの値と第３ＱＥ処理で得られた目的関数の最適値及び各設計パラメータの値とを出力する。これによって、設計者は第１ＱＥ処理の処理結果の妥当性を判断することもできる。
【００９０】
以上本技術の実施の形態について説明したが、本技術はこれに限定されるものではない。例えば、図１の機能ブロック図は一例であって、必ずしも実際のプログラムモジュール構成と一致するわけではない。
【００９１】
また、処理フローについても処理結果が変わらない限り、実行順序を入れ替えたり、並列実施するようにしても良い。例えば、第３ＱＥ処理を必ず実施するのであれば、第２ＱＥ処理と第３ＱＥ処理については並列実施可能である。さらに、第２ＱＥ処理の処理結果を出力した後に、設計者がその出力を考慮の上、第３ＱＥ処理を実施するか否かを指示するようにしても良い。
【００９２】
なお、ＱＥツール３００は、複数設けられる場合もある。例えば、低次数モデル式と高次数モデル式とで異なるＱＥツール３００を用いるようにしても良い。より具体的には、低次数モデルには、Virtual Substitutionというアルゴリズムを採用したＱＥツールを適用し、高次数モデルには、ＣＡＤ（Cylindrical Algebraic Decomposition）というアルゴリズムを採用したＱＥツールを適用するようにしても良い。
【００９３】
また、スタンドアロン型コンピュータで最適化処理装置を実施する例を示したが、コンピュータネットワークに接続させて、当該コンピュータネットワークに接続されている複数のコンピュータと連携して上記の処理を実施するようにしても良い。
【００９４】
なお、上で述べた最適化処理装置は、コンピュータ装置であって、図１５に示すように、メモリ２５０１とＣＰＵ２５０３（プロセッサ、処理部若しくは処理装置とも呼ぶ）とハードディスク・ドライブ（ＨＤＤ）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。必要に応じてＣＰＵ２５０３は、表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ２５０１に格納され、必要があればＨＤＤ２５０５に格納される。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【００９５】
［付録：実行可能領域の算出方法の具体例］
以下、ＱＥツール３００により実施される実行可能領域の算出処理について具体例を用いて説明する。
【００９６】
まず、入力変数をＸ及びＹとし、出力変数をＺとし、入出力関係を表すモデル式をＺ＝Ｘ2＋Ｙ2−１とする。さらに、制約条件をＺ＜０且つＸ3−Ｙ2＝０とする。
【００９７】
（１）計算手順１
（１−１）関数Ｆ及びＧを以下のように設定する。
Ｆ（Ｘ，Ｙ）＝Ｘ2＋Ｙ2−１
Ｇ（Ｘ，Ｙ）＝Ｘ3−Ｙ2
（１−２）判別式dircriminant（Ｆ，Ｙ）＝−４ｘ2＋４＝０を計算する。
Ｘ＝−１，１
（１−３）判別式dircriminant（Ｇ，Ｙ）＝４ｘ3＝０を計算する。
Ｘ＝０
（１−４）終結式resultant（Ｆ，Ｇ，Ｙ）＝（ｘ3＋ｘ2−１）＝０を計算する。
この式を満たすＸの値をＡとする。
Ｘ＝Ａ
【００９８】
（２）計算手順２
（２−１）計算手順１で計算したＸの値を整理する。
Ｘ＝｛−１，０，Ａ，１｝
（２−２）Ｘの最小値より小さい値と、Ｘの計算値と計算値の間の値、Ｘの最大値より大きい値を追加する。
Ｘ＝｛Ｘ１，Ｘ２＝−１，Ｘ３，Ｘ４＝０，Ｘ５，Ｘ６＝Ａ，Ｘ７，Ｘ８＝１，Ｘ９｝
【００９９】
（３）計算手順３
Ｘの各々の値の場合について、Ｆ（Ｘ，Ｙ）＝０又はＧ（Ｘ，Ｙ）＝０となるＹを計算する。
Ｘ＝Ｘ１・・・該当無し
Ｘ＝Ｘ２・・・Ｙ＝｛Ｙ２１＝０｝
Ｘ＝Ｘ３・・・Ｙ＝｛Ｙ３１，Ｙ３２｝
Ｘ＝Ｘ４・・・Ｙ＝｛Ｙ４１＝−１，Ｙ４２＝０，Ｙ４３＝１｝
Ｘ＝Ｘ５・・・Ｙ＝｛Ｙ５１，Ｙ５２，Ｙ５３，Ｙ５４｝
Ｘ＝Ｘ６・・・Ｙ＝｛Ｙ６１＝−Ａ3/2，Ｙ６２＝Ａ3/2｝
Ｘ＝Ｘ７・・・Ｙ＝｛Ｙ７１，Ｙ７２，Ｙ７３，Ｙ７４｝
Ｘ＝Ｘ８・・・Ｙ＝｛Ｙ８１＝−１，Ｙ８２＝０，Ｙ８３＝１｝
Ｘ＝Ｘ９・・・Ｙ＝｛Ｙ９１，Ｙ９２｝
【０１００】
（４）計算手順４
Ｙの最小値より小さい値、Ｙの計算値と計算値の間の値、Ｙの最大値より大きい値を追加する。該当無しの場合には０を設定する。
Ｘ＝Ｘ１・・・Ｙ＝｛ＹＹ１１＝０｝
Ｘ＝Ｘ２・・・Ｙ＝｛ＹＹ２１，ＹＹ２２＝Ｙ２１，ＹＹ２３｝
Ｘ＝Ｘ３・・・Ｙ＝｛ＹＹ３１，ＹＹ３２＝Ｙ３１，ＹＹ３３，ＹＹ３４＝Ｙ３２，ＹＹ３５｝
Ｘ＝Ｘ４・・・Ｙ＝｛ＹＹ４１，ＹＹ４２＝Ｙ４１，ＹＹ４３，ＹＹ４４＝Ｙ４２，ＹＹ４５，ＹＹ４６＝Ｙ４３，ＹＹ４７｝
Ｘ＝Ｘ５・・・Ｙ＝｛ＹＹ５１，ＹＹ５２＝Ｙ５１，ＹＹ５３，ＹＹ５４＝Ｙ５２，ＹＹ５５，ＹＹ５６＝Ｙ５３，ＹＹ５７，ＹＹ５８＝Ｙ５４，ＹＹ５９｝
Ｘ＝Ｘ６・・・Ｙ＝｛ＹＹ６１，ＹＹ６２＝Ｙ６１，ＹＹ６３，ＹＹ６４＝Ｙ６２，ＹＹ６５｝
Ｘ＝Ｘ７・・・Ｙ＝｛ＹＹ７１，ＹＹ７２＝Ｙ７１，ＹＹ７３，ＹＹ７４＝Ｙ７２，ＹＹ７５，ＹＹ７６＝Ｙ７３，ＹＹ７７，ＹＹ７８＝Ｙ７４，ＹＹ７９｝
Ｘ＝Ｘ８・・・Ｙ＝｛ＹＹ８１，ＹＹ８２＝Ｙ８１，ＹＹ８３，ＹＹ８４＝Ｙ８２，ＹＹ８５，ＹＹ８６＝Ｙ８３，ＹＹ８７｝
Ｘ＝Ｘ９・・・Ｙ＝｛ＹＹ９１，ＹＹ９２＝Ｙ９１，ＹＹ９３，ＹＹ９４＝Ｙ９２，ＹＹ９５｝
【０１０１】
（５）計算手順５
（５−１）計算手順４で算出された、ＸとＹの組み合わせについて、Ｆ（Ｘ，Ｙ）とＧ（Ｘ，Ｙ）の符号を計算する。
（Ｘ，Ｙ）＝（Ｘ１，ＹＹ１１）−＞（Ｆ，Ｇ）＝（＋，−）
というような計算を全ての組み合わせについて実施する。
図１６に示すように、ＸＹ平面において、Ｆ（Ｘ，Ｙ）＝０は原点を中心とした半径１の円であり、Ｇ（Ｘ，Ｙ）＝０はＧで表す曲線である。Ｘ１は−１より小さい値であり、Ｘ＝Ｘ１は点線で表す直線となる。ＹＹ１１＝０であるので、Ｘ＝Ｘ１とＹ＝０の交点が（Ｘ１，ＹＹ１１）である。Ｆ及びＧの定義から、（Ｆ，Ｇ）＝（＋，−）となる。
【０１０２】
さらに、図１７にＸ＝Ｘ２＝−１における状態を示す。Ｘ２＝−１であるので、Ｘ＝Ｘ２はＦ（Ｘ，Ｙ）＝０に接する直線となる。そして、ＹＹ２２＝０であって、ＹＹ２１は正の値であり、ＹＹ２３は負の値となる。このことから、以下のような計算結果が得られる。
（Ｘ，Ｙ）＝（Ｘ２，ＹＹ２３）−＞（Ｆ，Ｇ）＝（＋，−）
（Ｘ，Ｙ）＝（Ｘ２，ＹＹ２２）−＞（Ｆ，Ｇ）＝（０，−）
（Ｘ，Ｙ）＝（Ｘ２，ＹＹ２１）−＞（Ｆ，Ｇ）＝（＋，−）
【０１０３】
また、図１８にＸ＝Ｘ３における状態を示す。Ｘ３は−１より大きく０より小さい値である。一方、ＹＹ３２＝Ｙ３１、ＹＹ３４＝Ｙ３２であり、Ｙ３１及びＹ３２は、Ｆ（Ｘ，Ｙ）＝０上の点である。また、ＹＹ３３＝０とする。さらに、ＹＹ３５は、ＹＹ３４より大きい値であり、ＹＹ３１はＹＹ３２より小さい値である。そうすると、以下のような計算結果が得られる。
（Ｘ，Ｙ）＝（Ｘ３，ＹＹ３５）−＞（Ｆ，Ｇ）＝（＋，−）
（Ｘ，Ｙ）＝（Ｘ３，ＹＹ３４）−＞（Ｆ，Ｇ）＝（０，−）
（Ｘ，Ｙ）＝（Ｘ３，ＹＹ３３）−＞（Ｆ，Ｇ）＝（−，−）
（Ｘ，Ｙ）＝（Ｘ３，ＹＹ３２）−＞（Ｆ，Ｇ）＝（０，−）
（Ｘ，Ｙ）＝（Ｘ３，ＹＹ３１）−＞（Ｆ，Ｇ）＝（＋，−）
【０１０４】
さらに、図１９にＸ＝Ｘ４＝０における状態を示す。ＹＹ４２＝Ｙ４１＝−１であり、ＹＹ４４＝Ｙ４２＝０であり、ＹＹ４６＝Ｙ４３＝１である。従って、ＹＹ４１は−１より小さい値であり、ＹＹ４３は−１より大きく０未満であり、ＹＹ４５は０より大きく１未満であり、ＹＹ４７は１より大きい値である。そうすると、以下のような計算結果が得られる。
（Ｘ，Ｙ）＝（Ｘ４，ＹＹ４７）−＞（Ｆ，Ｇ）＝（＋，−）
（Ｘ，Ｙ）＝（Ｘ４，ＹＹ４６）−＞（Ｆ，Ｇ）＝（０，−）
（Ｘ，Ｙ）＝（Ｘ４，ＹＹ４５）−＞（Ｆ，Ｇ）＝（−，−）
（Ｘ，Ｙ）＝（Ｘ４，ＹＹ４４）−＞（Ｆ，Ｇ）＝（−，０）
（Ｘ，Ｙ）＝（Ｘ４，ＹＹ４３）−＞（Ｆ，Ｇ）＝（−，−）
（Ｘ，Ｙ）＝（Ｘ４，ＹＹ４２）−＞（Ｆ，Ｇ）＝（０，−）
（Ｘ，Ｙ）＝（Ｘ４，ＹＹ４１）−＞（Ｆ，Ｇ）＝（＋，−）
【０１０５】
また、図２０にＸ＝Ｘ５における状態を示す。Ｘ５は、０より大きく、Ｘ3＋Ｘ2−１＝０を満たすＸの値Ａより小さい値である。さらに、Ｙ５１，Ｙ５２，Ｙ５３，Ｙ５４はＦ（Ｘ，Ｙ）＝０又はＧ（Ｘ，Ｙ）＝０となる値であり、ＹＹ５２＝Ｙ５１，ＹＹ５４＝Ｙ５２，ＹＹ５６＝Ｙ５３，ＹＹ５８＝Ｙ５４であるから、（Ｘ５，ＹＹ５２）はＦ（Ｘ，Ｙ）＝０とＸ＝Ｘ５との交点のうちＹが負の値の点となり、（Ｘ５，ＹＹ５４）はＧ（Ｘ，Ｙ）＝０とＸ＝Ｘ５との交点のうちＹが負の値の点となり、（Ｘ５，ＹＹ５６）はＧ（Ｘ，Ｙ）＝０とＸ＝Ｘ５の交点のうちＹが正の値の点となり、（Ｘ５，ＹＹ５８）はＦ（Ｘ，Ｙ）＝０とＸ＝Ｘ５との交点のうちＹが正の値の点となる。さらに、ＹＹ５５は、ＹＹ５６とＹＹ５４の間の点であるがここではＹＹ５５＝０とする。なお、ＹＹ５１は、ＹＹ５２より小さい値であり、ＹＹ５９は、ＹＹ５８より大きい値である。そうすると、以下のような計算結果が得られる。
（Ｘ，Ｙ）＝（Ｘ５，ＹＹ５９）−＞（Ｆ，Ｇ）＝（＋，−）
（Ｘ，Ｙ）＝（Ｘ５，ＹＹ５８）−＞（Ｆ，Ｇ）＝（０，−）
（Ｘ，Ｙ）＝（Ｘ５，ＹＹ５７）−＞（Ｆ，Ｇ）＝（−，−）
（Ｘ，Ｙ）＝（Ｘ５，ＹＹ５６）−＞（Ｆ，Ｇ）＝（−，０）
（Ｘ，Ｙ）＝（Ｘ５，ＹＹ５５）−＞（Ｆ，Ｇ）＝（−，＋）
（Ｘ，Ｙ）＝（Ｘ５，ＹＹ５４）−＞（Ｆ，Ｇ）＝（−，０）
（Ｘ，Ｙ）＝（Ｘ５，ＹＹ５３）−＞（Ｆ，Ｇ）＝（−，−）
（Ｘ，Ｙ）＝（Ｘ５，ＹＹ５２）−＞（Ｆ，Ｇ）＝（０，−）
（Ｘ，Ｙ）＝（Ｘ５，ＹＹ５１）−＞（Ｆ，Ｇ）＝（＋，−）
【０１０６】
また、図２１にＸ＝Ｘ６における状態を示す。Ｘ６は、Ｘ3＋Ｘ2−１＝０を満たすＸの値Ａである。すなわち、Ｘ＝Ｘ６はＦ（Ｘ，Ｙ）＝０とＧ（Ｘ，Ｙ）＝０の交点を通る直線となる。なお、ＹＹ６２＝Ｙ６１＝−Ａ3/2，ＹＹ６４＝Ｙ６２＝Ａ3/2であり、（Ｘ６，ＹＹ６２）はＦ（Ｘ，Ｙ）＝０とＧ（Ｘ，Ｙ）＝０の交点のうちＹが負の値となる点に対応し、（Ｘ６，ＹＹ６４）はＦ（Ｘ，Ｙ）＝０とＧ（Ｘ，Ｙ）＝０の交点のうちＹが正の値となる点に対応する。ＹＹ６３はＹＹ６２とＹＹ６４の間の値であるが、ここではＹＹ６３＝０とする。ＹＹ６５はＹＹ６４より大きい値であり、ＹＹ６１はＹＹ６２より小さい値である。そうすると、以下のような計算結果が得られる。
（Ｘ，Ｙ）＝（Ｘ６，ＹＹ６５）−＞（Ｆ，Ｇ）＝（＋，−）
（Ｘ，Ｙ）＝（Ｘ６，ＹＹ６４）−＞（Ｆ，Ｇ）＝（０，０）
（Ｘ，Ｙ）＝（Ｘ６，ＹＹ６３）−＞（Ｆ，Ｇ）＝（−，＋）
（Ｘ，Ｙ）＝（Ｘ６，ＹＹ６２）−＞（Ｆ，Ｇ）＝（０，０）
（Ｘ，Ｙ）＝（Ｘ６，ＹＹ６１）−＞（Ｆ，Ｇ）＝（＋，−）
【０１０７】
さらに、図２２にＸ＝Ｘ７における状態を示す。Ｘ７は、Ｘ６とＸ＝１との間の値である。また、（Ｘ７，ＹＹ７２＝Ｙ７１）は、Ｘ＝Ｘ７とＧ（Ｘ，Ｙ）＝０の交点のうちＹが負の値の点であり、（Ｘ７，ＹＹ７４＝Ｙ７２）は、Ｘ＝Ｘ７とＦ（Ｘ，Ｙ）＝０の交点のうちＹが負の値の点であり、（Ｘ７，ＹＹ７６＝Ｙ７３）は、Ｘ＝Ｘ７とＦ（Ｘ，Ｙ）＝０の交点のうちＹが正の値の点であり、（Ｘ７，ＹＹ７８＝Ｙ７４）はＸ＝Ｘ７とＧ（Ｘ，Ｙ）＝０の交点のうちＹが正の値の点である。ＹＹ７１は、ＹＹ７２より小さい値であり、ＹＹ７３は、ＹＹ７２とＹＹ７４との間の値であり、ＹＹ７５は、ＹＹ７４とＹＹ７６との間の値であるが、ここではＹＹ７５＝０である。また、ＹＹ７７は、ＹＹ７６とＹＹ７８との間の値であり、ＹＹ７９は、ＹＹ７８より大きい値である。そうすると、以下のような計算結果が得られる。
（Ｘ，Ｙ）＝（Ｘ７，ＹＹ７９）−＞（Ｆ，Ｇ）＝（＋，−）
（Ｘ，Ｙ）＝（Ｘ７，ＹＹ７８）−＞（Ｆ，Ｇ）＝（＋，０）
（Ｘ，Ｙ）＝（Ｘ７，ＹＹ７７）−＞（Ｆ，Ｇ）＝（＋，＋）
（Ｘ，Ｙ）＝（Ｘ７，ＹＹ７６）−＞（Ｆ，Ｇ）＝（０，＋）
（Ｘ，Ｙ）＝（Ｘ７，ＹＹ７５）−＞（Ｆ，Ｇ）＝（−，＋）
（Ｘ，Ｙ）＝（Ｘ７，ＹＹ７４）−＞（Ｆ，Ｇ）＝（０，＋）
（Ｘ，Ｙ）＝（Ｘ７，ＹＹ７３）−＞（Ｆ，Ｇ）＝（＋，＋）
（Ｘ，Ｙ）＝（Ｘ７，ＹＹ７２）−＞（Ｆ，Ｇ）＝（＋，０）
（Ｘ，Ｙ）＝（Ｘ７，ＹＹ７１）−＞（Ｆ，Ｇ）＝（＋，−）
【０１０８】
また、図２３にＸ＝Ｘ８＝１における状態を示す。ＹＹ８２＝Ｙ８１＝−１であり、ＹＹ８４＝Ｙ８２＝０であり、ＹＹ８６＝Ｙ８３＝１である。従って、ＹＹ８１は−１より小さい値であり、ＹＹ８３は−１より大きく０未満であり、ＹＹ８５は０より大きく１未満であり、ＹＹ８７は１より大きい値である。そうすると、以下のような計算結果が得られる。
（Ｘ，Ｙ）＝（Ｘ８，ＹＹ８７）−＞（Ｆ，Ｇ）＝（＋，−）
（Ｘ，Ｙ）＝（Ｘ８，ＹＹ８６）−＞（Ｆ，Ｇ）＝（＋，０）
（Ｘ，Ｙ）＝（Ｘ８，ＹＹ８５）−＞（Ｆ，Ｇ）＝（＋，＋）
（Ｘ，Ｙ）＝（Ｘ８，ＹＹ８４）−＞（Ｆ，Ｇ）＝（０，＋）
（Ｘ，Ｙ）＝（Ｘ８，ＹＹ８３）−＞（Ｆ，Ｇ）＝（＋，＋）
（Ｘ，Ｙ）＝（Ｘ８，ＹＹ８２）−＞（Ｆ，Ｇ）＝（＋，０）
（Ｘ，Ｙ）＝（Ｘ８，ＹＹ８１）−＞（Ｆ，Ｇ）＝（＋，−）
【０１０９】
さらに、図２４にＸ＝Ｘ９＞１における状態を示す。（Ｘ９，ＹＹ９２＝Ｙ９１）はＸ＝Ｘ９とＧ（Ｘ，Ｙ）＝０との交点のうちＹが負の値の点であり、（Ｘ９，ＹＹ９４＝Ｙ９２）はＸ＝Ｘ９とＧ（Ｘ，Ｙ）＝０との交点のうちＹが正の値の点である。また、ＹＹ９１は、ＹＹ９２より小さい値であり、ＹＹ９５は、ＹＹ９４より大きい値である。ＹＹ９３は、ＹＹ９２とＹＹ９４との間の点であるが、ここではＹＹ９３＝０である。そうすると、以下のような計算結果が得られる。
（Ｘ，Ｙ）＝（Ｘ９，ＹＹ９５）−＞（Ｆ，Ｇ）＝（＋，−）
（Ｘ，Ｙ）＝（Ｘ９，ＹＹ９４）−＞（Ｆ，Ｇ）＝（＋，０）
（Ｘ，Ｙ）＝（Ｘ９，ＹＹ９３）−＞（Ｆ，Ｇ）＝（＋，＋）
（Ｘ，Ｙ）＝（Ｘ９，ＹＹ９２）−＞（Ｆ，Ｇ）＝（＋，０）
（Ｘ，Ｙ）＝（Ｘ９，ＹＹ９１）−＞（Ｆ，Ｇ）＝（＋，−）
【０１１０】
（５−２）（Ｆ，Ｇ）＝（−，０）のものを選択する。
これは、制約条件としてＧ（Ｘ，Ｙ）＝０であり、Ｆ（Ｘ，Ｙ）＝Ｚ＜０であるためである。
（Ｘ，Ｙ）＝（Ｘ４，ＹＹ４４），（Ｘ５，ＹＹ５４），（Ｘ５，ＹＹ５６）
【０１１１】
（６）計算手順６
（６−１）（Ｘ，Ｙ）＝（Ｘ４，ＹＹ４４）を満足する条件を計算する。
図１９及び上で述べた説明から分かるように、（Ｘ，Ｙ）＝（Ｘ４，ＹＹ４４）＝（０，０）である。
（６−２）（Ｘ，Ｙ）＝（Ｘ５，ＹＹ５４）を満足する条件を計算する。
図２０及び上で述べた説明から分かるように、Ｘ５は０＜Ｘ＜Ａを満たす。また、Ｙ＜ＹＹ５５＝０である。さらに、Ｇ（Ｘ，Ｙ）＝０上の点であるから、Ｘ3−Ｙ2＝０である。
（６−３）（Ｘ，Ｙ）＝（Ｘ５，ＹＹ５６）を満足する条件を計算する。
図２０及び上で述べた説明から分かるように、Ｘ５は０＜Ｘ＜Ａを満たす。また、Ｙ＞ＹＹ５５＝０である。さらに、Ｇ（Ｘ，Ｙ）＝０上の点であるから、Ｘ3−Ｙ2＝０である。
【０１１２】
（７）計算手順７
（Ｘ，Ｙ）＝（Ｘ４，ＹＹ４４）、（Ｘ，Ｙ）＝（Ｘ５，ＹＹ５４）又は（Ｘ，Ｙ）＝（Ｘ５，ＹＹ５６）を満足し且つ計算手順６で算出された条件を整理する。
この例では、（Ｘ，Ｙ）＝（Ｘ４，Ｙ４４）があるので（Ｘ，Ｙ）＝（０，０）が含まれる。従って、Ｘ3−Ｙ2＝０且つ０≦Ｘ＜Ａとなる。すなわち、図２５に示すように、Ｇ（Ｘ，Ｙ）＝０曲線上の一部分が実行可能領域となる。
【０１１３】
以上述べた本実施の形態をまとめると、以下のようになる。
【０１１４】
本最適化処理方法は、（Ａ）予め定められた設計パラメータの値を複数セット生成して各セットについてシミュレーションを実行させることにより、予め定められた評価指標の値を取得し、評価指標と設計パラメータとの関係を表し且つ第１の次数についての第１のモデル式と、評価指標と設計パラメータとの関係を表し且つ第１の次数より高次の第２のモデル式とを生成し、モデル式格納部に格納するステップと、（Ｂ）モデル式格納部に格納されている第１のモデル式と予め定められた制約条件とから限定子除去法により第１のモデル式の最適解を実現する設計パラメータの値を算出させ、設計パラメータ値格納部に格納するステップと、（Ｃ）設計パラメータ値格納部に格納されている値が制約条件に含まれる上限値又は下限値となった設計パラメータを特定し、モデル式格納部に格納されている第２のモデル式に対して、特定された設計パラメータの値として上限値又は下限値を代入して第２のモデル式を変形する変形ステップと、（Ｄ）変形後の第２のモデル式と制約条件の該当部分とから限定子除去法により、変形後の第２のモデル式の最適解を実現する、変形後の第２のモデル式内の設計パラメータの値を算出させ、設計パラメータ値格納部に格納するステップとを含む。
【０１１５】
設計パラメータの値の多くが上限値又は下限値になるという特性を用いれば、第１のモデル式で、どの設計パラメータが上限値又は下限値になり、どの設計パラメータがそうでないのかが高速に特定される。この結果を第２のモデル式に適用して、第２のモデル式が簡略化できれば、第２のモデル式を高速に処理することができるようになる。すなわち、全体として精度を保持しつつ、処理速度が高速化される。
【０１１６】
また、本最適化処理方法は、（Ｅ）設計パラメータ値格納部に格納されている設計パラメータの値のうち値が制約条件に含まれる上限値又は下限値となった設計パラメータの中から、モデル式格納部に格納されている第１のモデル式に対する影響度の条件を満たす設計パラメータを抽出するステップと、（Ｆ）設計パラメータ値格納部に格納されている設計パラメータの値が制約条件に含まれる上限値又は下限値となった設計パラメータのうち、抽出された設計パラメータ以外の設計パラメータの値として上限値又は下限値を、モデル式格納部に格納されている第２のモデル式に代入して第２のモデル式の第２の変形式を生成するステップと、（Ｇ）第２のモデル式の第２の変形式と制約条件の該当部分とから限定子除去法により第２の変形式の最適解を実現する、第２の変形式内の設計パラメータの値を算出し、設計パラメータ値格納部に格納するステップとをさらに含むようにしても良い。
【０１１７】
このようにすれば、第１のモデル式から得られた設計パラメータの値の妥当性を評価することができるようになる。
【０１１８】
また、本最適化処理装置（図２６）は、（Ａ）予め定められた設計パラメータの値を複数セット生成して各セットについてシミュレーションを実行させることにより、予め定められた評価指標の値を取得し、評価指標と設計パラメータとの関係を表し且つ第１の次数についての第１のモデル式と、評価指標と設計パラメータとの関係を表し且つ第１の次数より高次の第２のモデル式とを生成し、モデル式データ格納部（図２６：３００２）に格納するモデル式生成部（図２６：３００１）と、（Ｂ）モデル式データ格納部に格納されている第１のモデル式と予め定められた制約条件とから限定子除去法により第１のモデル式の最適解を実現する設計パラメータの値を算出させ、設計パラメータ値格納部（図２６：３００５）に格納する第１設計パラメータ値生成部（図２６：３００３）と、（Ｃ）設計パラメータ値格納部に格納されている設計パラメータの値が制約条件に含まれる上限値又は下限値となった設計パラメータを特定し、モデル式データ格納部に格納されている第２のモデル式に対して、特定された前記設計パラメータの値として上限値又は下限値を代入して第２のモデル式を変形し、変形後の第２のモデル式と制約条件の該当部分とから限定子除去法により変形後の第２のモデル式の最適解を実現する、変形後の第２のモデル式内の設計パラメータの値を算出させ、設計パラメータ値格納部に格納する第２設計パラメータ値生成部（図２６：３００４）とを有する。
【０１１９】
なお、上で述べたような処理をコンピュータに実施させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ（例えばＲＯＭ）、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。なお、処理途中のデータについては、ＲＡＭ等の記憶装置に一時保管される。
【０１２０】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１２１】
（付記１）
予め定められた設計パラメータの値を複数セット生成して各セットについてシミュレーションを実行させることにより、予め定められた評価指標の値を取得し、前記評価指標と前記設計パラメータとの関係を表し且つ第１の次数についての第１のモデル式と、前記評価指標と前記設計パラメータとの関係を表し且つ前記第１の次数より高次の第２のモデル式とを生成し、モデル式データ格納部に格納するステップと、
前記モデル式データ格納部に格納されている前記第１のモデル式と予め定められた制約条件とから限定子除去法により前記第１のモデル式の最適解を実現する前記設計パラメータの値を算出させ、設計パラメータ値格納部に格納するステップと、
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータを特定し、前記モデル式データ格納部に格納されている前記第２のモデル式に対して、特定された前記設計パラメータの値として前記上限値又は下限値を代入して前記第２のモデル式を変形する変形ステップと、
変形後の第２のモデル式と前記制約条件の該当部分とから前記限定子除去法により前記変形後の第２のモデル式の最適解を実現する、前記変形後の第２のモデル式内の設計パラメータの値を算出させ、前記設計パラメータ値格納部に格納するステップと、
を、コンピュータにより実行させるための最適化処理プログラム。
【０１２２】
（付記２）
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータの中から、前記モデル式データ格納部に格納されている前記第１のモデル式に対する影響度の条件を満たす設計パラメータを抽出するステップと、
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータのうち、抽出された前記設計パラメータ以外の設計パラメータの値として前記上限値又は下限値を、前記モデル式データ格納部に格納されている前記第２のモデル式に代入して前記第２のモデル式の第２の変形式を生成するステップと、
前記第２のモデル式の第２の変形式と前記制約条件の該当部分とから前記限定子除去法により前記第２の変形式の最適解を実現する、前記第２の変形式内の設計パラメータの値を算出し、前記設計パラメータ値格納部に格納するステップと、
をさらに前記コンピュータに実行させるための付記１記載の最適化処理プログラム。
【０１２３】
（付記３）
予め定められた設計パラメータの値を複数セット生成して各セットについてシミュレーションを実行させることにより、予め定められた評価指標の値を取得し、前記評価指標と前記設計パラメータとの関係を表し且つ第１の次数についての第１のモデル式と、前記評価指標と前記設計パラメータとの関係を表し且つ前記第１の次数より高次の第２のモデル式とを生成し、モデル式データ格納部に格納するステップと、
前記モデル式データ格納部に格納されている前記第１のモデル式と予め定められた制約条件とから限定子除去法により前記第１のモデル式の最適解を実現する前記設計パラメータの値を算出させ、設計パラメータ値格納部に格納するステップと、
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータを特定し、前記モデル式データ格納部に格納されている前記第２のモデル式に対して、特定された前記設計パラメータの値として前記上限値又は下限値を代入して前記第２のモデル式を変形する変形ステップと、
変形後の第２のモデル式と前記制約条件の該当部分とから前記限定子除去法により前記変形後の第２のモデル式の最適解を実現する、前記変形後の第２のモデル式内の設計パラメータの値を算出させ、前記設計パラメータ値格納部に格納するステップと、
を含み、コンピュータに実行される最適化処理方法。
【０１２４】
（付記４）
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータの中から、前記モデル式データ格納部に格納されている前記第１のモデル式に対する影響度の条件を満たす設計パラメータを抽出するステップと、
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータのうち、抽出された前記設計パラメータ以外の設計パラメータの値として前記上限値又は下限値を、前記モデル式データ格納部に格納されている前記第２のモデル式に代入して前記第２のモデル式の第２の変形式を生成するステップと、
前記第２のモデル式の第２の変形式と前記制約条件の該当部分とから前記限定子除去法により前記第２の変形式の最適解を実現する、前記第２の変形式内の設計パラメータの値を算出し、前記設計パラメータ値格納部に格納するステップと、
をさらに含む付記３記載の最適化処理方法。
【０１２５】
（付記５）
予め定められた設計パラメータの値を複数セット生成して各セットについてシミュレーションを実行させることにより、予め定められた評価指標の値を取得し、前記評価指標と前記設計パラメータとの関係を表し且つ第１の次数についての第１のモデル式と、前記評価指標と前記設計パラメータとの関係を表し且つ前記第１の次数より高次の第２のモデル式とを生成し、モデル式データ格納部に格納するモデル式生成部と、
前記モデル式データ格納部に格納されている前記第１のモデル式と予め定められた制約条件とから限定子除去法により前記第１のモデル式の最適解を実現する前記設計パラメータの値を算出させ、設計パラメータ値格納部に格納する第１設計パラメータ値生成部と、
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータを特定し、前記モデル式データ格納部に格納されている前記第２のモデル式に対して、特定された前記設計パラメータの値として前記上限値又は下限値を代入して前記第２のモデル式を変形し、変形後の第２のモデル式と前記制約条件の該当部分とから前記限定子除去法により前記変形後の第２のモデル式の最適解を実現する、前記変形後の第２のモデル式内の設計パラメータの値を算出させ、前記設計パラメータ値格納部に格納する第２設計パラメータ値生成部と、
を有する最適化処理装置。
【０１２６】
（付記６）
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータの中から、前記モデル式データ格納部に格納されている前記第１のモデル式に対する影響度の条件を満たす設計パラメータを抽出し、
前記設計パラメータ値格納部に格納されている前記設計パラメータの値が前記制約条件に含まれる上限値又は下限値となった前記設計パラメータのうち、抽出された前記設計パラメータ以外の設計パラメータの値として前記上限値又は下限値を、前記モデル式データ格納部に格納されている前記第２のモデル式に代入して前記第２のモデル式の第２の変形式を生成し、
前記第２のモデル式の第２の変形式と前記制約条件の該当部分とから前記限定子除去法により前記第２の変形式の最適解を実現する、前記第２の変形式内の設計パラメータの値を算出し、前記設計パラメータ値格納部に格納する
第３設計パラメータ値生成部
をさらに有する付記５記載の最適化処理装置。
【符号の説明】
【０１２７】
１  入力部    ２  問題設定データ格納部
３  モデル式生成部    ４  モデル式データ格納部
５  第１ＱＥ処理部    ６  第２ＱＥ処理部    ７  第３ＱＥ処理部
８  処理結果格納部    ９  出力部
【図１】
2011154439.tif 000007
【図２】
2011154439.tif 000008
【図３】
2011154439.tif 000009
【図４】
2011154439.tif 000010
【図５】
2011154439.tif 000011
【図６】
2011154439.tif 000012
【図７】
2011154439.tif 000013
【図８】
2011154439.tif 000014
【図９Ａ】
2011154439.tif 000015
【図９Ｂ】
2011154439.tif 000016
【図１０】
2011154439.tif 000017
【図１１】
2011154439.tif 000018
【図１２】
2011154439.tif 000019
【図１３】
2011154439.tif 000020
【図１４】
2011154439.tif 000021
【図１５】
2011154439.tif 000022
【図１６】
2011154439.tif 000023
【図１７】
2011154439.tif 000024
【図１８】
2011154439.tif 000025
【図１９】
2011154439.tif 000026
【図２０】
2011154439.tif 000027
【図２１】
2011154439.tif 000028
【図２２】
2011154439.tif 000029
【図２３】
2011154439.tif 000030
【図２４】
2011154439.tif 000031
【図２５】
2011154439.tif 000032
【図２６】
2011154439.tif 000033