説明

デザイン最適化のための自由形状変形(FreeFormDeformation)表現の進化的直接操作(EvolutionaryDirectManipulation)

【課題】デザインの物体点の直接操作に基づく、デザインを最適化するための改善された方法を提供することである。
【解決手段】デザインを最適化するためのコンピュータで実行される方法が、モデルおよびグリッドを使ってデザインを表現するステップを含み、モデルが物体点を含み、グリッドが制御点を含み、グリッドの表現が、可変かつ適応的であり、1つまたは複数の物体点を選ぶステップと、物体点を適応させるステップと、物体点に基づいてグリッドを適応させることによってデザインを最適化するステップとを含む。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、デザイン最適化技術に関する。
【背景技術】
【0002】
最適化アルゴリズムをデザイン最適化問題に適用するためには、最適化アルゴリズムによって改変することのできる1組のパラメータによってデザインの形状を描く方法を見つけることが不可欠である。よく知られた方法では、たとえば、2次元デザインではスプライン線、あるいは3次元デザインでは最適化されるべき物体の曲面を描くスプライン曲面を定義する。このケースでは、最適化アルゴリズムによって改変されるパラメータは、制御点(control points)およびノット点であり、NURBS(非有理Bスプライン)のケースではさらに、制御点の重みが加わる。所与のデザインを表現する別の方法では、基本デザインが与えられる空間を変換する変換関数を定義する。このケースでは、形状の変化を、変換関数のパラメータを改変することによって実現することができる。これらの方法は、制約付き変形(constrained Deformation)という語で、まとめて言い表すことができる。
【0003】
先行技術:制約付き変形
制約付き変形それ自体は、先行技術で知られており、それについて以下で簡単に説明する。
【0004】
制約付き変形(constrained Deformation)
この原理は、BorrelおよびBechmann[2]によって公式化されている。彼らは、任意の数のユーザ指定点変位制約(user-specified point displacement constraints)によって変形が定義される、一般的な変形方式を開発した。図1に示されているBorrelおよびBechmannによる変形方法は、元の空間および変形された空間Rが、より高い次元の空間Rの2つの投射である、という原理に基づいている。したがって、その変形は、元の空間Rの点をRの点に変換する関数f:R→RとRからR上に戻る投射Tの合成によって定義される。その投射マトリックスは、元の空間の(制約点と呼ばれる)所与の点の(制約と呼ばれる)所与の変位を実現するように計算される。
【0005】
数学的に述べると、Rの任意の点の変換を表す変形関数dが、関数f:R→R(m>n)と線形変換T:R→Rの合成として表現される。U∈Rであり、かつMがTの対応するマトリックスである場合、以下が得られる。
d(U)=Mf(U)
【0006】
異なる関数fによって、異なるタイプの、たとえば、大域的または局所的変形が得られる。具体的な変形は、マトリックスMにのみ依存する。対応する変換Tは、1組の潜在的な変形から「適切な」変形を選択する。nに対してmが大きい程、可能な変形の範囲が大きくなる。
【0007】
一般に、このモデルは、可能な変形の大きなファミリーをまとめるものである。すなわち、たとえば、fが線形の場合、線形空間変換が得られ、あるいはfがテンソル積ベルンシュタイン多項式であり、かつMが制御点の変位ベクトルで構築される場合、FFDが得られる。
【0008】
fおよびmが指定された後、適切なMの選択と、その結果として、任意の点U∈Rの変換が、n個の制約点Vを使って、次の3つのステップで行われる。
【0009】
1.n個の制約点V、i∈[1,n]の所望の変位を選択する。これらの点は基本的に、デザイン最適化での自由度を確立する。
【0010】
2.投射マトリックスMが、それぞれMの1行を構成するm個の未知数をもつ、n個のシステムのn個の方程式(n systems of nequations)を解くことによって得られる。このシステムは、次のn×n個の方程式から導出される。
d(V)=Mf(V) ∀i∈[1,n
【0011】
遺憾ながら、この連立方程式は、どんな場合も一意に解決可能ではなく、本明細書に記載される技法の主な欠点となっている。次の3つの状況を区別することができる。
【0012】
a)mがnより大きくかつすべてのf(V)ベクトルが線形独立である場合、無限個の解が存在する。ユーザが1つのMを選ぶことにより、変形が確定する。そうするための複数の方法が、BorrelおよびBechmannによって論じられている。
【0013】
b)m=nの場合、ただ1つの解Mが存在する。
【0014】
c)その他の場合、その制約を満たす変形を見いだすことはできない。このケースでは、最良の近似解が使用される。
【0015】
3.任意の点Uの変位が、d(U)=Mf(U)によって計算される。
【0016】
再変換Mが、制約点Vにのみ依存するので、初期物体U(1組の点U)の変形を、非常に効率的に行うことができる。値f(U)は、1回だけ計算すればよく、その後、制約のいくつかのセットによって定義される複数の変形に使用することができる。したがって、デザイン最適化では、追加、削除、または変更された制約に対してのみ、f(V)の値の再計算を必要とし、物体点(object points)Uに対してはその必要がない。
【0017】
既に指摘したように、Mの選択プロセスは、実際上、ユーザ対話を要求し、またそれを必要とする。さらに、変形の形状が、制約と強く相関してなく、そのために、この技法は直観的ではない。こうした欠点を回避するために、BorrelおよびRappoport[3]が、一般的制約変形概念を簡略化しており、それをここでは、簡略化制約変形(Simplified Constraint Deformation)、略して「Scodef」と呼ぶ。Scodef手法の中心的な考えは、再変換Mの統一化と、したがって、全プロセスの簡略化である。これは、fをBスプライン基底関数のテンソル積として選択することによって実現され、それらの関数はそれぞれ、制約点を中心とし、その場合、各点が、変形プロセスに影響を与える。さらに、各n個の制約点ごとに、各Bスプラインの範囲に影響を与える半径が導入され、すなわち、各基底関数が、対応する制約点の半径を超えてゼロになる。したがって、変形プロセスの微調整のために、異なる半径を使用してもよい。したがって、「Scodef変形は、その空間にわたる任意の数の可能なオーバラップするBスプライン形状の「バンプ(bumps)」を作成することによって得られる変形と見なすことができる。バンプの場所および高さは、制約によって定義され、その幅は、影響の制約半径によって定義される」。
【0018】
ESを用いたデザイン最適化では、制約および/または制約の変位が、ES標準の遺伝的演算子を使って改変されてもよい自由パラメータを構成する。単純な制約変形のケースでは、n個の制約点Vに関連する半径が、追加のデザインパラメータとして使用されてもよい。その結果、3つの群のデザインパラメータが利用可能となり、それらにより、その技法が、デザインパラメータ数において非常にフレキシブルになる。最良のケースでは、3次元物体の変形に、4つの制約点しか必要とされない。さらに、基礎となるシステムのn個の方程式により、3倍の、制約点、それらの変位、および半径を、他のデザインパラメータに影響を与えずに、容易に追加または削除することができる。もちろん、そのような適応プロセスは、変換マトリックスMの構造、したがって、得られるデザインを、変化させ得る。これは、たとえば、対照的に制御点の再計算を強いる、加法演算子を保存する曲線または曲面が存在するBスプラインまたはNURBSとは、対照的である。
【0019】
自由形状変形(Free Form Deformation ,FFD)
前に開発されてはいるが、自由形状変形(FFD)手法[9](添付の図2も参照のこと)は、前述の制約変形手法(constraint deformation approach)の特別なケースである。これは、変換関数fがベルンシュタイン多項式(または、簡略化制約変形のケースではBスプライン基底関数)のテンソル積であり、かつMが制御点の変位ベクトルで構築される場合に、当てはまる。制約変形とほぼ同様に、FFDは、より一般的な対話式形状編集概念の公式化に焦点を当てている。SederbergおよびParry[9]は、ベジエ、Bスプライン、およびNURBSで構築された曲線または曲面の改変を精密に指定するには、ほとんどの状況で手間がかかりすぎると考えた。「知覚的に単純な変更が、多くの制御点の調整を必要とすることがある」[5]。
【0020】
SederbergおよびParryは、立方体や円柱など、何らかの標準幾何学形状のグリッド点の格子に物体を埋め込むことによって、立体の通常の変形(つまり、RからRへのマッピング)に対するBarr[1]の手法を一般化した。3変量テンソル積ベルンシュタイン多項式を使って、グリッドのノードを操作すると、グリッド内の空間が変形する。こうした変形により、その物体を形成する、基礎となるグラフィックス・プリミティブが変形する。SederbergおよびParryは、FFDとの良い物理的類似性を示した。「変形したい1つの物体または複数の物体がその中に埋め込まれる、透明でフレキシブルなプラスチックの平行六面体を考える。その物体も、それを囲むプラスチックとともに類似物を変形させるように、フレキシブルであると仮定する」[9]。
【0021】
既に指摘したように、FFDの第1のステップは、囲んでいる平行六面体領域の局所的座標系S、T、Uの確定である。いくつかの基本的線形代数を使って、その平行六面体内の各点Xを、次のような新しい座標系で表してもよい。
X=X+sS+tT+uU
【0022】
FFDの考えでは、囲んでいるボリュームの変形が、ボリューム内の空間を変形させるので、次のステップは、平行六面体上の制御点Pijkのグリッドの公式化である。S方向のl個のグリッド点、T方向のm個の点、およびU方向のn個の点により、その制御点がグリッド点である3変量テンソル積ベルンシュタイン多項式を使って変形された囲んでいるボリュームの公式化が可能になる。可能性のあるデザイン最適化のための自由パラメータを基本的に構築し制御点の変形は、Pijkをそれらの非変位の格子位置から移動することによって、簡単に指定される。任意の点Xの変形された位置Xffdは、まず局所座標系内のその(s,t,u)座標を計算し、次にベクトル値の3変量ベルンシュタイン多項式を評価することによって、見いだされる。
【数1】

ただし、Xffdは、変位点のデカルト座標を含むベクトルであり、各Pijkは、制御点のデカルト座標を含むベクトルである。変形技法では、基礎となる幾何学的表現と無関係である形状改変ツールが、主な関心事である。
【0023】
拡張自由形状変形(Extended Free Form Deformation ,EFFD)
より高度な柔軟性に関して、Sederbergらによって導入された基本的な自由形状変形概念を改善するために、Coquillartが、拡張自由形状変形と呼ばれる方法を開発した[4]。この方法により、標準的な自由形状変形における制御点の平行六面体ボリュームの制限要件とは対照的に、任意のコントロールボリューム(control volume)の使用が可能となる。この方法は主に、以下に簡潔に説明する3つのステップとなる。
【0024】
最初に、改変される対象の物体全体または物体の一部を囲む、制御点の格子を構築する必要がある。第2のステップで、幾何学座標(geometry coordinates)をスプライン座標系に移す必要があり、これは「凍結(freezing)」とも呼ばれる。物体座標を凍結させることにより、スプライン・パラメータ空間内の幾何学形状のu、v、およびw座標が計算される。これは通常は、最速の手法となることが見込まれるニュートン近似によって行われるが、類似の勾配ベースの方法によって、または進化的最適化(evolutionary optimisation)によっても、行うこともできる。u、v、およびw座標がうまく計算された後、制御点を所望の位置に移動することによって、変形を適用することができる。曲面または立体のx、y、およびz座標は、物体点をスプライン座標系から当初使用される座標系に再変換することによって、計算することができる。したがって、Bスプライン方程式は、制御点の新しい空間座標を使って解く必要がある。この方法はまた、幾何学形状モデルが、立体に等しい、あるいは助変数方程式または陰方程式によって定義される場合にも有効である。
【0025】
EFFDは、インプレッション、レリーフ、およびFFDでは実現するのが普通なら困難なその他のかなり単純な変形を作り出すのに、かなり有効である。しかし、ユーザは、モデル化を開始する前に、変形の一般的な形状を知っていなければならず、インターフェースはまだ、基礎となる数学の直接表現である。
【0026】
より一般には、制御点の移動により、その結果得られる変形表示が得られるが、形状が、形において直観的でないものもある。複雑な変形動作ではしばしば、多数の制御点を変形させる必要がある。
【0027】
自由形状変形の直接操作(DIRECT MANIPULATION OF FREEFORM DEFORMATIONS,DFFD)
こうした問題に鑑みて、Hsuらによって、自由形状変形に対する直接手法が導入されている(Direct Manipulation of Free-Form Deformations、Computer Graphics、26、2、1992年7月)。基本的な考えは、ユーザが、(何らかの種類のポインタで)物体の点を選択し、次に、そのポインタを、その物体点があるべき場所に移動するものである。次に、この変更を引き起こすことになるFFDスプラインの制御点に対する必要な変更が、自動的に計算される。一般に、この問題は究明中であり、Hsuら(上記参照)は、最小2乗法を使用して特定の変更を選択する。
【0028】
この手法は、自由形状の所望の直接操作が、制御点の現グリッドでは実現できなく、それ自体の構造に対して最適化されたグリッド表現でのみ実現できる限り、問題がある。そのような構造最適化は、最小2乗法を使って実現することができない。
【0029】
物体点の直接操作および最小2乗法の適用ではうまく構築されないコントロールボリュームの問題は、デザインでのループおよび無効な曲面を回避したい場合に、特に重要である。制御点の変更が最小2乗的に計算される場合、制御点の順序が変わり、無効な曲面またはボリュームをもたらすという問題が、しばしば発生する。
【非特許文献1】W.M. Hsu, J.F. Hughes and H. Kaufman, “Direct Manipulation of Free-Form Deformations”Computer Graphics, 26(2):177-184, July 1992.
【非特許文献2】A.H. Barr, “Global and Local Deformation of Solid Primitives”Computer Graphics, 18(3):21-30, 1984.
【非特許文献3】P. Borrel and D. Bechmann, “Deformation of n-dimensional objects” International Journal of Computational Geometry Applications, 1(4):427-453, 1991.
【非特許文献4】P. Borrel and A. Rappoport, “Simple Constrained Deformations for Geometric Modeling and Interactive Design” ACM Transactions on Graphics, 13(2):137-155, April 1994.
【非特許文献5】S. Coquillart, “Free-Form Deformation: A Sculpturing Tool for 3D Geometric Modeling” Computer Graphics, 24(4):187-196, August 1990.
【非特許文献6】S. Gibson and B.Mirtich, “A Survey of Deformable Modeling in Computer Graphics”Tech. Report No. TR-97-19, Mitsubishi Electric Research Lab., Cambridge, November 1997
【非特許文献7】Markus Olhofer, Yaochu Jin and Bernhard Sendhoff, “Adaptive encoding for aerodynamic shape optimization using evolutionary strategies” Congress on Evolutionary Computation (CEC), volume 2, pages 576-583, Seoul, Korea, May 2001. IEEE Press.
【非特許文献8】L. Piegl and W. Tiller, “The NURBS BOOK”Springer-Verlag Berlin Heidelberg 1995 and 1997.
【非特許文献9】T.W. Sederberg, D.L. Cardon, G.T. Finnigan, N.S. North, J. Zheng and T. Lyche,“T-spline Simplification and Local Refinement”ACM Transactions on Graphics, 23(3):276-283, August 2004.
【非特許文献10】T.W. Sederberg and S.R. Parry, “Free-Form Deformation of Solid Geometric Models”Computer Graphics, 20(4):151-160, August 1986.
【非特許文献11】T.W. Sederberg, J. Zheng, A. Bakenov and A. Nasri, “T-splines and TNURCCs”ACM Transactions on Graphics, 22(3):477-484, July 2003.
【発明の開示】
【発明が解決しようとする課題】
【0030】
したがって、本発明の目的は、デザインの物体点の直接操作に基づく、デザインを最適化するための改善された方法を発明することである。本発明のもう1つの目的は、目標とされる物体点の移動を実現しながら、制御点の数および改変を最小限に抑えること、ならびに、物体点を所望の位置に移動することを可能にする、変形用の1組の制御点の自動適応および生成である。
【0031】
この意味で、本発明の目的、一態様は、制御点を変化させることによって、物体パラメータの所望の変更を実現することが可能なように最適化される、変換関数fを生成することである。この最適化は、デザインの元の座標系とスプライン座標系の間のマッピングが変更されず、したがって、追加の「凍結」プロセス(座標系間のマッピングの発生)が必要とされずに、実現することができる。
【課題を解決するための手段】
【0032】
本発明は、デザインを最適化するためのコンピュータで実行される方法であって、モデルおよびグリッドを使って前記デザインを表現するステップを含み、前記モデルが物体点を含み、前記グリッドが制御点を含み、前記グリッドの前記表現が、可変かつ適応的であり、1つまたは複数の物体点を選ぶステップと、前記物体点を適応させるステップと、前記物体点に基づいて前記グリッドを適応させることによって前記デザインを最適化するステップとを含む方法である。
【0033】
本発明の上記およびその他の態様および利点は、添付の図とともに、下記の詳細な説明を読むと、より明らかになろう。
【発明を実施するための最良の形態】
【0034】
進化的計算での(拡張)自由形状変形
進化的最適化に関しては、自由形状変形技法の適用は、特に、最適化される必要のある形状の幾何学的定義がかなり複雑で、かつ/または高コストの計算流体力学(CFD)もしくは有限要素法(FEM)の計算を行う必要のある場合に、多くの利点を特徴としている。自由形状変形を統合すると、最適化される対象のパラメータが、幾何学形状それ自体によって定義されず、1つまたは複数の格子の制御点によって定義される。その結果、デザイン者は、大域的または局所的形状変更の程度を自由に選べる。
【0035】
一般に、最適化ループを開始できる前に、初期形状を1つまたは複数の格子に埋め込み、その幾何学形状を凍結して、パラメータ空間内のu、v、およびw座標を得る必要がある。これらの座標は、進化的最適化におけるデザイン評価ステップの前の遺伝子型−表現型マッピング(genotype-phenotype mapping)において、大きな役割を果たす。パラメータとしての制御点に基づいて、突然変異を適用し、適応度評価のためのシステムを用意することができる。したがって、新しい制御点と組み合わされた凍結済みu、v、w座標に基づいて、BスプラインまたはNurbs方程式によって、新しいデザインが計算される。その後、デザインを評価することができ、その適応度値がそれぞれ個々に割り当てられる。最後に、新しいパラメータが選択され、選ばれた進化的アルゴリズムに従って、次の生成用の親が決定される。
【0036】
CFDまたはFEM評価と組み合わされた(拡張)自由形状変形の効果
CFDまたはFEMと組み合わせた自由形状変形の利点を理解するには、制御点の位置の改変が、その格子のある空間領域に対して強い影響を有することを、考慮する必要がある。たとえば、スプラインのタイプ、スプラインの次数、制御点の数、ノット・ベクトルなどによってそのサイズが定義されるこのボリューム全体が、すなわち、このボリューム内の形状デザインだけでなくその周囲全体までもが、変形される。その結果、CFD計算に関して、このボリューム内に位置するすべてのグリッド点も、変形される。したがって、複雑な形状において、自由形状変形が適用されるときは、グリッドが変形された形状に直接適応されるので、計算的に高コストのメッシュ生成プロセスを省くことができる。第2に、CFDに関しては、時間のかかるCFD計算全体を繰り返す代わりに、既に解に収束した先行の結果を使用することも可能である。
【0037】
(拡張)自由形状変形のパラメータ適応性
自由形状変形のこの拡張は、本発明のさらなる開発に、特に有利である。どんな種類の最適化でも、適用される表現が高度に柔軟であることは、有利である。デザイン者は常に、探索空間とパラメータ最小化の間の適切なトレードオフを見いだすことを強いられる。一方では、できるだけ多くのデザインを表現する必要があり、他方では、少ない数のパラメータを使用して、最適化プロセスを高速化する必要がある。柔軟性に対する良い代替物が、適応的な表現によって提供される。その結果、最適化の初めは、少数のパラメータだけを最適化すればよく、収束の過程で、パラメータ数を増やすことができる。
【0038】
自由形状変形では、デザインプロセスにおいて実際の形状を変化させずに、制御点をさらに追加することによって、ノット・ベクトルを拡張することが可能になる。このことは、進化的デザイン最適化(evolutionary design optimisation)において非常に重要である。かなり少ないパラメータ数だけで最適化を開始することができ、必要なときはいつでも、実際の最良のデザインを失わずに、新しい制御点を追加して、形状に対する影響を拡張することができる。この表現のこうした非常にプラスの特徴に加えて、制御点挿入は、大きな1つの欠点も伴う。新しい制御点を挿入する必要のあるときはいつでも、2次元の場合は制御点の新しい行または列全体を、あるいは3次元の場合は制御点の平面を、制御点グリッドに導入することだけが可能である。したがって遺憾ながら、幾何学的理由で直接必要とされるただ1つの制御点を挿入することは可能でなく、その結果、多くの余分な点を考慮に入れる必要がある。この影響を最小限に抑えるために、以下ではTスプラインの概念について大きく取りあげる。このTスプラインは、特別な種類の点ベースのBスプラインであり、制御点の一部の行または列だけを制御メッシュに挿入することを可能にする。
【0039】
Tスプライン(T-SPLINES)
Tスプラインという概念それ自体は、たとえばコンピュータグラフィックスでは、既に知られている表現である。
【0040】
先行技術から知られているTスプラインの概説
Tスプラインの概念は、グラフィカルなデザインのプロセスにおける柔軟性を高めるために、Sederbergら[1、10]によって導入されている。Tスプラインは、基礎となるメッシュでの制御点の配置の指定に関して莫大な利益をもたらす、非一様なBスプライン曲面の一般化である。水平および垂直線の各交差で定義される制御点の長方形のグリッドを必要とするBスプライン曲面とは対照的に、Tメッシュ(T-mesh)における線は、グリッドの縁部で開始および終了する必要はなく、T分岐(T-junction)(図4参照)で終了することができる。その結果、制御点の合計数が、大幅に低減される。このことは、1つまたは複数の追加の制御点を挿入して、よりフレキシブルで効率的な曲面デザインを可能にする必要がある場合に、より一層重要になる。Bスプライン曲面では、制御点の新しい列および/または行全体を提供する必要があるが、Tメッシュでは、ほとんどの場合、少数の新しい点だけを追加すればよい。
【0041】
ノット挿入の手順については、Sederbergらが、局所的な細分化アルゴリズムを開発した。これについて、後でより詳細に説明し、次に、「Tスプライン簡略化」と呼ばれる、余分な制御点を除去するための概念について、後でより詳細に説明することにする。その除去アルゴリズム適用することにより、デザインされる形状がBスプラインによって定義される場合に必要になるであろう制御点の合計数を、低減することが可能である。
【0042】
図5は、NURBSモデルをTスプラインに変換することの効果を示す。モデル化される頭の制御点の合計数が、4712から1109に、女性では、10305から3955に、それぞれ低減されている。その結果、デザイン者は、モデルをより効率的に制御することができるようになり、単独制御点の位置の移動が、その形状に密接な影響を与える。さらに、Tスプラインの概念は、2次元での曲面モデリングに対してのみ有効なだけでなく、その他の次元に、またTスプライン[1、8、10]の任意のトポロジバージョンであるT−NURCC(非一様有理キャットマル−クラーク(Catmull−Clark)曲面)に、容易に拡張することもできる。
【0043】
Tスプラインについての数学的定義および規則
Tスプラインは、Sederbergら[10]が導入する、いわゆる点ベースのBスプライン(point-based B-splines,PBスプライン)から導出することができる。PBスプラインは、1組の制御点、および2次元では各制御点ごとの1対のノット・ベクトルによって定義される。その結果得られる曲面点を計算するために、次の方程式を解く必要がある。
【数2】

(s,t)は、以下で定義されるブレンディング関数である。
(s,t)=N[si0,si1,si2,si3,si4](s)N[ti0,ti1,ti2,ti3,ti4](t)
【0044】
N[si0,si1,si2,si3,si4](s)およびN[ti0,ti1,ti2,ti3,ti4](t)はそれぞれ、以下の一般形で与えられる3次Bスプライン基底関数である。
【数3】

【0045】
は、ノット・ベクトルでのノットであり、pは、スプラインの次数を定義する。Bを計算するには、次の短いノット・ベクトルをそれぞれ使って、基底関数方程式(basis function equations)を評価する必要がある。
=[si0,si1,si2,si3,si4
=[ti0,ti1,ti2,ti3,ti4
これらは、制御点Pに直接接続される。重みwは、自由に選ぶことができる。すべてのwが1.0に等しい場合、PBスプライン方程式は、次のように簡略化される。
【数4】

【0046】
一般的に定義されるPBスプラインとは対照的に、Tスプラインは、制御点の位置に対する何らかの指示を定義する、いわゆるTメッシュによって構築される。Tメッシュの一例が、図6で参照することができる。
【0047】
このメッシュは、制御点Pに密接に結びつけられているノット・ベクトルの定義にとって重要である。Tメッシュが満たすべき、以下のいくつかの要件が、公式化されている。
【0048】
1.「任意の曲面の片側に沿ったすべてのノット区間の合計は、反対側のノット区間の合計に等しくなければならない」。ノット区間とは、2つのノット、したがって、たとえば図6中のdとeの差に等しい。
【0049】
2.2つのT分岐は、接続後、新しい曲面が、各反対側でノット・ベクトルの合計が等しい場合にのみ、接続される必要がある[8]。
ノット・ベクトルsおよびtの定義は、ノット区間に基づいており、Bスプライン曲面を計算するのに必要とされるであろうものとはかなり異なる。それについては、[8]に規則1として記載されている。
【0050】
「パラメータ空間R(a)=(si2+a,t)内の射線(ray)を考える。そのとき、si3およびsi4が、射線[...]によって交差される、最初の2つのs縁部(s-edge)のs座標である。s縁部は、一定のsの垂直線セグメントを意味する。sおよびtでのその他のノットも、同様に見いだされる。」
【0051】
すべてのノット・ベクトルが決定された場合、Tスプラインを計算することができる。
【表1】

【0052】
ノット挿入−局所的な細分化アルゴリズム
Tスプラインの1つの大きな利点は、制御点の新しい行または列全体を追加する必要なく、Tメッシュにおける任意の位置に新しい制御点を挿入することが可能であることである。Sederbergらは、うまくノット挿入を行うための規則およびアルゴリズムを含む手順を開発した。挿入プロセスは、トポロジおよび幾何学形状フェーズと呼ばれる2つのフェーズで行われる。トポロジ・フェーズでは、追加で挿入する必要のある制御点が識別され、幾何学形状フェーズでは、新しいTメッシュでの新しい座標および重みが計算される。
【0053】
Sederbergら[8]は、挿入プロセス中に発生する可能性があり、追加の制御点を挿入することによって訂正する必要のある、起こり得る次の3つの違反について述べている。
【0054】
「違反1:現Tメッシュにおいて、ブレンディング関数が、規則1によって指示されているノットが欠落している。
違反2:現在のTメッシュにおいて、ブレンディング関数が、規則1によって指示されていないノットをもつ。
違反3:制御点が、それに関連するブレンディング関数をもたない。」
【0055】
まず、さらに制御したい位置に、すべての制御点が挿入される。グリッド・チェックが行われ、違反が生じる場合は追加の点が挿入される。すべての違反を解決した後、線形変換によって新しい座標が計算される。
【0056】
本発明による適応表現
Tスプラインの概念と進化的最適化の組合せが、本発明のもう1つの態様である。
【0057】
進化的最適化におけるTスプライン
上記で既に指摘したように、表現の適応性は、最適化問題に関して、非常に重要である。パラメータ数をできるだけ少なく抑え、同時に多種多様な形状デザインを保証するようにすべきである。Tスプラインは、デザイン最適化におけるこの要件にとって非常に良いトレードオフをもたらす。一般に、パラメータは、Tメッシュの制御点に合わせて設定される。したがって、かなり少ない制御点の数で開始することができ、最適化の過程で制御点を任意の位置で追加して、分解能を高めることができる。したがって、この表現を適用することにより、Tスプラインの高い柔軟性を利用して、それまでで最良のデザインを保ちながら、幾何学的形状に対して最大の影響を与えるために必要な場所に、制御点を直接配置することができる。これにより、ほとんどの場合、少数の制御点しか追加されないことになるので、パラメータ数が最小限に抑えられる。これは、最適化に非常にプラスに影響する。
【0058】
変換のパラメータによって改変に対する自由度が決まるので、そのパラメータは、選択されたパラメータによって必要な変更を行えるように設定する必要がある。どんな種類の最適化のケースも、「必要な変更」はあらかじめわからず、経験にのみ基づき得る。一般に自由度を高めるために、自由形状変形のケースでは、制御点の数を単に増やすこともできる。このことによって、制御点の影響がより局所的になることになり、様々な制御点を同時に変更する必要があるので、デザインに対する大域的な変更は、実現するのがはるかに困難になる。さらに、制御点の数を、または制約付き変形のケースではマトリックスMの次元を変化させることによる、改変の自由と最適化の次元数の間のトレードオフが存在する。また、スプラインを使って曲線または曲面を表す際に、この関係を認識することもできる。
【0059】
上記で説明されているTスプラインの特性が、それらの開発の理由である。曲面を、たとえば、NURBS曲面スプラインによって表すことにより、その表現によって与えられる制約を満たすだけのために、単独制御点の追加で、追加の制御点の行および/または列全体の追加が必要となる。あるデザインから別の改変されたデザインへの変換を定義する自由形状変形方法を適用するときにも、同じことが当てはまる。
【0060】
自由形状変形の既存の方法では、デザイン間の変換関数を定義することになる制御点のメッシュを定義する必要がある。自由形状変形のこの既存の方法の拡張が、制御点の自動追加または除去である。この方法により、デザインの最適化中に変換関数を改変することが可能になる。所与の変換関数が十分に高い自由度をもたらさないケースでは、既存の1組の制御点に制御点を追加することができる。この追加により、変換関数においてより高い自由度が存在し、所与の品質尺度に関してデザインをさらに改善することのできる、より詳細な変形が可能になる。
【0061】
スプライン(たとえば、曲面スプライン)に新しい制御点を導入するとき、所与の曲面の近似のケースでは、新しい制御点の最適位置を決定するための様々な方法が存在する。その場合、新しい制御点のための最適位置を見つけるために、局所的および大域的近似方法が存在する。しかし、これらの方法は、局所的品質尺度が存在するケースでのみ、適用可能である。この局所的品質尺度が存在しないときは、この方法を適用することができない。これはたとえば、表現される本体の空気力学的特性に基づく品質尺度についてのケースである。たとえば、タービン・ブレードの最適化のケースでは、ほとんどと言っていいほど、圧力損失が品質尺度として使用される。この圧力損失は、デザインの全体に依存し、どこに追加の制御点を導入すべきかをあらかじめ決定することができない。
【0062】
このケースでは、変換関数の追加のパラメータの導入は、表現のための追加の突然変異演算子(mutation operator)によって実現することができる。変換関数を表現するスプラインに、制御点がランダムに追加される。これらの改変された表現は、次に、既知の進化プロセスを受ける。変換関数のプラスの変化を可能にするという意味で、追加の制御点が有益な場合にのみ、進化プロセス中に追加の制御点が選択される。したがって、自由形状変形の所与の方法、制御点を導入するための方法、および進化的計算の組合せにより、自由形状変形で使用される変換関数を実際の最適化の必要性に適応させるための、洗練された方法がもたらされる。
【0063】
説明した方法によって改変される、スプライン関数を変換関数として使用する前述の方法は、特別な必要性に合わせてプロセス中の最適化の自由を高めるのに、洗練された方法であるが、その表現の主要な欠点がまだ存在する。制御点の導入では、表現の制約を満たすだけのために、他のいくつかの制御点を導入する必要がある。
【0064】
既に説明したように、曲面の表現のケースにおけるこの問題を、Tスプラインが解決する。Nurbsスプラインの代わりにTスプラインを使用することにより、そのケースにおいて単独に追加の制御点の導入が可能になる。
【0065】
曲面モデリングの場合と同じ方法で、Tスプラインを使用することにより、自由形状変形での制御点追加中の問題を解決することができる。拡張自由形状変形のケースと同じ方法で、追加の突然変異演算子によって、新しい制御点の導入を実現することができる。追加の突然変異演算子は、変換のパラメータではなく、変換の表現を同じ方法で改変する。追加の制御点の導入に最適な位置の選択を可能にする機構は、既に説明したものと同じである。違いおよび利点は、その方法により、変換関数の局所的拡張が可能なことである。
【0066】
自由形状変形の直接操作への本発明の適用
以下では、Hsuら[11]によって提案されている自由形状変形の直接操作への、前述の枠組みの適用について述べる。
【0067】
図7は、左手側には、デザイン物体の簡略化された構成、ならびに物体点710および制御点720を含むグリッドを示す。図7の右手側は、選ばれた目標点(target point)および導出された制御点をもつ同じ構成が示されている。
【0068】
目標点730で示される、目標とされる物体点の移動、および物体の対応する変更が、たとえば、所望の形状に全体的に近い近似という意味で「最適」と考えられる、グリッド内の制御点740を導出することによって実現される。
【0069】
図8は、デザインを最適化するための方法の流れ図を示す。そこでは、物体点が、直接操作され、制御点が、進化的アルゴリズムを使って選ばれる。
【0070】
ステップ810で、1つまたはいくつかの物体点が選ばれる。
【0071】
ステップ820で、物体点が、直接、たとえば手動で操作される。それぞれの物体点の移動は、デザイン物体の所望の変換を示す。
【0072】
ステップ830で、最適コントロール構造(control structure)を見いだすために、所望の変換を表現するように、グリッド表現が適応または最適化される。
【0073】
本発明の一実施形態では、これは、前述のように進化的計算を使って行うことができる。制御点をランダムに挿入して、すなわち、同時に染色体を適応させ、最後に目標とされる移動に関して新しいコントロール構造またはボリュームを評価して、制御点をゲノムに符号化してもよい。
【0074】
本発明の別の実施形態では、進化的アルゴリズムの代わりに、確率的最適化を使用してもよい。
【0075】
これらの適応されたコントロール構造またはボリュームのいくつかが並行して評価される場合、いくつかの適応度関数に従ってそれらの中の「最良のもの」を選び、その後、目標とされる物体点の移動が実現されるかどうかをチェックすることができる。目標とされる物体点の移動が実現されない場合、適応が繰り返される。
【0076】
「最良の」コントロール構造を選ぶための適応度関数を定義するには、目標とされる物体点の移動を実現することがより重要であるのか、または制御点の数および移動を最小限に抑える必要があるのかの判断が、必要とされる。
【0077】
もう1つの本発明の実施形態では、「ハイブリッド」手法によって、コントロール構造またはボリュームの適応を実現してもよく、すなわち、たとえば最小2乗最適化によって局所的に補完される進化的アルゴリズムによって、大域的に導いてもよい。
【0078】
デザイン最適化のための自由形状変形表現の進化的直接操作への適用
さらなる代案として、最適化中に、表現を、すなわち符号化された物体点を、さらに変更することも可能である。物体点は推測的に定義されないので、標準DFFDでは、最適化実行の前に、ユーザがそれらを決定する必要がある。
【0079】
以下に、デザイン最適化のための自由形状変形表現の進化的直接操作に、上記の枠組みをどのように適応させることができるかを図示する。
【0080】
図9は、デザインを最適化するための方法の流れ図を示す。そこでは、コントロール構造またはボリュームが適応される前に、1組の選ばれた物体点が最適化される。ステップ910で、ユーザによって物体点が選ばれる。ステップ920で、選ばれた1組の物体点が操作される。この作業のために、進化的戦略、たとえば、進化的または遺伝的アルゴリズムを使用してもよく、その場合、そのアルゴリズムの実行では、物体点のパラメータを適応させる。その方法の可能な一実施形態では、物体点のサブセットの適応は、流れ図のように、物体点の数を変更する、すなわち増大または減少させることを含んでもよい(ステップ930)。物体点の適応後、コントロール構造またはボリューム、すなわちグリッドを、最小2乗法を使って、または前述の進化的戦略を用いる方法を使って、物体点に基づいて適応させてもよい(ステップ940)。
【0081】
したがって、上記で説明したように、物体点の操作および適応的コントロールボリュームを実現することができる。
【0082】
要約すると、図9に示されているアルゴリズムでは、DFFD手法を確率的最適化技法、たとえばEAと組み合わせる。この手法は単純明快である。ユーザによって決定された物体点がオプティマイザのパラメータ・セットに符号化され、その後、最適化が実行される。目標とされる物体点の移動をできるだけ実現しようと試みられる。いくつかの物体点が定義され、これらの物体点に対してEAが実行される。物体点に対して働くEAによって幾何学形状上に誘導される変更が実現されるように、FFDグリッドを適応させるために、EAループ内で、Hsuら[3]の最小2乗アルゴリズムまたは前述の構造最適化が実行される。表現は変更してもよく、すなわち、物体点の数を増大または減少させてもよい。進化的戦略、たとえば遺伝的アルゴリズムを使用してもよい。確率的最適化アルゴリズム、たとえばEAを使って物体点を変更する前に、各最適化ステップで表現(物体点)をリサンプリングしてもよい。物体点に対して働くEAによって幾何学形状上に誘導される変更が実現されるように、FFDグリッドを適応させるために、EAループ内で、[3]の最小2乗アルゴリズムまたは前述の構造最適化が実行されてもよい。
【0083】
その結果、目標物体点位置を実現することができるようにコントロールボリュームを改変するよう、上記で提案したようにコントロールボリュームを適応させることができる。したがって、1つの大域的最適化ループ内で働く最適化アルゴリズムが2つ存在する。一方が、パラメータ・セットに符号化された物体点を、形状を最適化するように改変し、他方(内部)の最適化アルゴリズムが、コントロールボリュームを、目標とされる形状を実現するように適応させる。
【0084】
しかし、物体点それ自体の選択および分配を最適化することもできる。したがって、デザイン上の区間(interval)またはパッチだけを選ぶものと想定することができる。次のステップで、物体点がこれらの区間/パッチ内でサンプリングされ、パラメータ・セットに符号化される。各反復ステップでは、物体点がリサンプリングされ、このリサンプリングに従ってパラメータ・セットが変更される。
【0085】
図10は、デザインを最適化するための、その方法の一実施形態を示す。そこでは、物体点が、物体の区間またはパッチから選ばれる。ステップ1010で、物体の区間またはパッチが選ばれる。次に、ステップ1020で、この方法では、各物体の区間またはパッチごとに1つの物体点をサンプリングする。上記と同様に、次いでステップ1030で、選ばれた1組の物体点が操作され、適応される。この方法の一実施形態では、ステップ1040で、適応中に、区間に対するシグマ値、すなわち標準偏差が変わってもよい。続いて、ステップ1050で、最適化された物体点に基づいて、グリッドまたはコントロールボリュームまたは構造が適応または再計算される。これは、その代わりに最小2乗近似基準または前述のグリッドを適応させるための方法を使って行ってもよい。
【0086】
図11は、図9および10に関して説明した方法によって実現される原理の、別の例示である。まず、物体の区間またはパッチが選ばれる。次に、各区間またはパッチから、1つの物体点がサンプリングされる。続いて物体点がパラメータ・セットに符号化され、そのパラメータ・セットが、適応アルゴリズム、たとえば進化的または遺伝的アルゴリズムに供給される。次に、コントロールボリュームが、目標物体点移動を実現するように改変される。コントロールボリュームまたは構造は次いで、目標とされる物体点の移動を改善するように、任意選択で適応される。改変が並行して実行される場合、最適性基準を使って、「最良の」改変を選択し、反復を再開始してもよい。
【0087】
要約すると、最適化は、DFFDで微調整するための2つのハンドル、たとえば(FFDの場合と同様な)グリッド表現および物体点の最適化−「D部分」を有する。特に、物体点の取扱いは、それらが最適化を通じて同じでなければならない推測的な理由がないので、興味深い。各最適化反復中に完全に新しい1組の制御点を選び、変更してもよく、このことは、点のベクトルが、各変更前に新しく完全にサンプリングされるようになることを示唆する。これは、最適化アルゴリズムのすべてのタイプで機能するわけではないかもしれないが、完全な枠組みを設定するための最大の自由をもたらす。
【0088】
幾何学形状は、区間またはパッチに分割してもよい。区間またはパッチの数で表現を定義してもよい。確率的最適化アルゴリズム、たとえばEAを使って物体点を変更する前に、各最適化ステップで、各区間またはパッチごとに1つの物体点をリサンプリングしてもよい。物体点に対して働くEAによって幾何学形状上に誘導される変更が実現されるようにFFDグリッドを適応させるために、EAループ内で、[3]の最小2乗アルゴリズムまたは前述の構造最適化が実行されてもよい。表現を変更しても、すなわち区間/パッチ数を増加/減少させてもよい。進化的戦略(ES)を使用して、各区間および/またはパッチごとに、1つの戦略パラメータ(strategy parameter)を自己適応させてもよい。
【0089】
さらに要約すると、説明した方法は、次に変換関数によって改変される基本的デザインを使うデザインの既知の表現に基づいている。自由形状変形技法のケースでは、デザインが定義される空間を、新しい改変されたデザインが定義される第2の空間に変換する、スプライン関数によって、変換関数が定義される。デザインプロセス中、スプライン関数のパラメータが、変換関数のパラメータを決定する。進化戦略を使いながら、スプライン関数のパラメータが同時に、最適化アルゴリズムが機能するパラメータを決定する。所与の問題および必要な改変に対して変換関数を最適に適応させるために、制御点を導入し、削除することを可能にする突然変異演算子(mutation operator)が提案される。進化戦略での標準突然変異演算子ではなく、この突然変異演算子は、問題/デザインの表現に対して機能する。
【0090】
上記方法を適用する欠点は、基礎となるスプライン記述の使用によって導入される制約、すなわち、1つの単独パラメータを導入すると、より多くの点の導入が必要になるという制約である。この問題に対する解が、スプライン曲面の表現に関して説明されており、Tスプラインと呼ばれる。ここでは、本発明者らは、この特別なスプライン・タイプの超次元拡張(hyper dimensional extension)を変換関数として使用することを提案する。それにより、この特別な変換関数のパラメータを、進化的計算の枠組み内で使用し、表現に対して直接働く新しい突然変異演算子による実際の最適化での特別な必要性に適応させることができる。
【図面の簡単な説明】
【0091】
【図1】制約変形の原理、すなわち、3次元曲線が、元の2次元曲線から計算され、異なる2つの変形された2次元曲線を得るために2回投影されているのを示す図である。
【図2】自由形状変形の原理を示す図である。
【図3】EFFDの原理、すなわち、任意のコントロールボリュームの未変位(左)および改変済み(右)の制御点を示す図である。
【図4】Bスプライン・メッシュおよびTメッシュの例を示す図である。
【図5】Tスプライン簡略化についての例を示す図である。
【図6】ブレンディング関数でのノット線(左)およびTメッシュ(右)を示す図である。
【図7】デザイン物体ならびに物体点および制御点を含むグリッドの簡略化した構成(左)と、選ばれた目標点および導出された制御点をもつ同じ構成(右)とを示す図である。
【図8】本発明による、デザインを最適化するための方法の流れ図である。
【図9】本発明による、デザインを最適化するための別の方法の流れ図である。
【図10】本発明による、デザインを最適化するためのさらに別の方法の流れ図である。
【図11】図10に示されている方法の例示を示す図である。
【符号の説明】
【0092】
710 物体点
720、740 制御点
730 目標点

【特許請求の範囲】
【請求項1】
デザインを最適化するためのコンピュータで実行される方法であって、
モデルおよびグリッドを使って前記デザインを表現するステップを含み、
前記モデルが物体点を含み、
前記グリッドが制御点を含み、
前記グリッドの前記表現が、可変かつ適応的であり、
1つまたは複数の物体点を選ぶステップと、
前記物体点を適応させるステップと、
前記物体点に基づいて前記グリッドを適応させることによって前記デザインを最適化するステップと
を含む方法。
【請求項2】
前記物体点の前記適応が、物体点の数を増加または減少させる、請求項1に記載の方法。
【請求項3】
前記物体点の前記適応が、進化的アルゴリズムまたは確率的最適化によって実現される、請求項1または2に記載の方法。
【請求項4】
前記1つまたは複数の物体点が、物体の区間(intervals)またはパッチから選ばれる、請求項1から3のいずれかに記載の方法。
【請求項5】
1つまたは複数の物体点を選ぶ前記ステップ、前記物体点を適応させる前記ステップ、および前記デザインを最適化する前記ステップが、最適性基準が満たされるまで繰り返される、請求項4に記載の方法。
【請求項6】
前記物体点を適応させる前記ステップが、物体点がそこから選ばれる前記物体の区間またはパッチを適応させるステップを含む、請求項5に記載の方法。
【請求項7】
前記物体点に基づいて前記グリッドを適応させる前記ステップが、前記グリッド内の制御点の数を増加または減少させる、請求項1から6のいずれかに記載の方法。
【請求項8】
前記物体点に基づいて前記グリッドを適応させる前記ステップが、最小2乗法を使用する、請求項1から6のいずれかに記載の方法。
【請求項9】
前記グリッドの前記適応が、進化的アルゴリズムを使用する、請求項7に記載の方法。
【請求項10】
前記グリッドの前記適応が、確率的最適化アルゴリズムを使用する、請求項7に記載の方法。
【請求項11】
前記グリッドの前記適応が、局所探索法をさらに使用する、請求項9または10に記載の方法。
【請求項12】
前記局所探索法が最小2乗法である、請求項11に記載の方法。
【請求項13】
請求項1から12のいずれかに記載の方法を実行するための計算手段を含む、システム。
【請求項14】
コンピューティング装置上で実行されるとき、請求項1から12のいずれかに記載の方法を実施する、コンピュータ・ソフトウェア・プログラム製品。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2007−265401(P2007−265401A)
【公開日】平成19年10月11日(2007.10.11)
【国際特許分類】
【出願番号】特願2007−57357(P2007−57357)
【出願日】平成19年3月7日(2007.3.7)
【出願人】(503113186)ホンダ リサーチ インスティテュート ヨーロッパ ゲーエムベーハー (50)
【氏名又は名称原語表記】Honda Research Institute Europe GmbH
【Fターム(参考)】