(57)【要約】【課題】梁構造のトポロジ最適化形状について、角部を丸める。【解決手段】グランドストラクチャーを設定し（Ｓ１１）、それについてのトポロジ最適化を行う（Ｓ１２）。次に、動かさない節点である不動点を設定する（Ｓ１３）と共に、トポロジ最適化形状における全要素長である全長についての減少割合を入力する（Ｓ１４）。そして、不動点以外の節点に微小攪乱を与え、全長の差分が小さくなる方向に節点を移動させて角部を円滑化する（Ｓ１５）。【選択図】図１
2007199868.tif 000002
【特許請求の範囲】
【請求項１】
節点と節点間を接続する梁要素からなる梁構造について、グランドストラクチャを用いてトポロジ最適化を行う梁構造の最適化プログラムであって、
コンピュータに、
設定された所定の条件下でトポロジ最適化計算を行わせ、トポロジ最適化された梁構造を算出させる手段と、
入力されてくるデータに基づきトポロジ最適化において移動させない節点である不動点を設定させる手段と、
入力されてくるデータに基づきトポロジ最適化実施後の梁構造の全長をどの程度減少させた全長とするかという目標全長を設定させる手段と、
前記最適化された梁構造について、前記不動点以外の節点について攪乱を与えた際の全長の変化を求めさせると共に、この処理を全長が目標全長に至るまで繰り返す手段と、
として機能させることを特徴とする梁構造の最適化プログラム。
【請求項２】
請求項１に記載の梁構造の最適化プログラムにおいて、
前記不動点以外の節点について与える攪乱はｘ，ｙ，ｚの３軸方向の攪乱であることを特徴とする梁構造の最適化プログラム。
【請求項３】
請求項１に記載の梁構造の最適化プログラムにおいて、
前記攪乱を与える節点は、不動点以外の全ての節点であることを特徴とする梁構造の最適化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
節点と節点間を接続する梁からなる梁構造について、トポロジ最適化を行う梁構造の最適化プログラムに関する。
【背景技術】
【０００２】
従来より、コンピュータを利用した構造計算が各種の構造物の設計に利用されている。その中で、構造物の骨組み構造について最適な形を求める技術があり、特許文献１などに示されている。この特許文献１では、グランドストラクチャー法と、平均コンプライアンスの最小化を利用している。すなわち、最適化問題として、部材（梁要素）の総体積を初期より少なくするという制約条件の下で、コンプライアンスを要素の設計変数（要素の断面積）を求めている。
【０００３】
ここで、最適化問題の定式化は、次式の形となる。
［数１］
Minimum［Ｃ（α）］
Subject to ：Ｗ（α）≦Ｗ，  ０≦αi≦１，（ｉ＝１，・・・，Ｎ）
ここで、αは設計変数の集合でα＝｛α1，・・・，αN｝であり、ＣはコンプライアンスでｄTＫｄと表される。また、ｄは節点変位ベクトル、Ｋは全体剛性マトリクス、Ｗは要素の総体積、Ｗは総体積の制約値である。なお、α，ｄ，Ｋは、ベクトルまたはマトリクスであり、太字体で表すべきであるが、明細書においては太字体が使用できないため通常の字体で表す。
【０００４】
グランドストラクチャー法は、設計対象領域に図１０に示すようなグランドストラクチャー（下地構造）を仮定する。この例では、グランドストラクチャーは、５×３の等間隔の節点と、節点を上下・左右・対角方向で結ぶ要素（梁要素）から構成される。なお、図における左端の３つの節点は位置が固定された拘束点であり、右上端の節点が負荷（この例では図における下方向への負荷）が印加される負荷点である。
【０００５】
そして、このグランドストラクチャーに対し、数学的手法であるトポロジ最適化手法を用いて、強度を維持しつつ不要な要素を除いていく。これによって、図１１のような最適な骨組みの形が求まることになる。
【０００６】
【特許文献１】特開２００１−１９５４４４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、上述のような最適化によると、グランドストラクチャー法を用いるために、得られた最適な骨組みの形において、角張った部分が発生する。一方、樹脂の成型など実際の構造物の製造においては、角張った部分は製作がしにくい場合が多く、また製品における角張った部分はけがをしやすく安全面での問題があり、さらに意匠的に問題となる場合も多い。
【０００８】
なお、グランドストラクチャーとして、図１２に示すように、節点をより細かく配置することも考えられる。しかしながら、細かく分割しても最適化処理後の基本的な形状については変化はなく、得られる最適な形において、角張った部分を少なくすることはできない。さらに、グランドストラクチャーとして、図１３に示すような節点間の前組み合わせに要素を配置する構成を採用することもできる。しかしこの図１３のグランドストラクチャーに基づく最適な骨組みの形は図１４のようになり、要素同士が重なる領域が多数発生し、実際に製造するのが困難である。
【０００９】
本発明では、グランドストラクチャー法を用いたトポロジ最適化において、角張った部分が減少された形状を得る。
【課題を解決するための手段】
【００１０】
本発明は、節点と節点間を接続する梁要素からなる梁構造について、グランドストラクチャを用いてトポロジ最適化を行う梁構造の最適化プログラムであって、コンピュータに、設定された所定の条件下でトポロジ最適化計算を行わせ、トポロジ最適化された梁構造を算出させる手段と、入力されてくるデータの基づきトポロジ最適化において移動させない節点である不動点を設定させる手段と、入力されてくるデータに基づきトポロジ最適化実施後の梁構造を構成する梁要素の長さの加算値である全長をどの程度減少させた全長とするかという目標全長を設定させる手段と、前記最適化された梁構造について、前記不動点以外の節点について攪乱を与えた際の全長の変化を求めさせると共に、この処理を全長が目標全長に至るまで繰り返す手段と、として機能させることを特徴とする。
【００１１】
また、前記不動点以外の節点について与える攪乱はｘ，ｙ，ｚの３軸方向の攪乱であることが好適である。
【００１２】
また、前記攪乱を与える節点は、不動点以外の全ての節点であることが好適である。
【発明の効果】
【００１３】
本発明によれば、トポロジ最適化によって得られた梁構造について、全長が減少するように節点を移動する。これによって、梁構造は角張った部分が丸くなるように変形し、製造等に好適な梁構造を容易に得ることができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施形態について、図面に基づいて説明する。
【００１５】
まず、本発明は、コンピュータプログラムに関し、具体的には当該プログラムをパーソナルコンピュータやワークステーションなどのコンピュータにインストールし、コンピュータ上で実行することで、構造物の骨組みの形状（梁構造）についての最適化計算が行える。従って、樹脂製の各種製品などの設計に利用され、得られた設計仕様に基づいて製品が製造される。従って、製品の骨組みが本発明に係る最適化計算で得られた梁構造に基づいた形状になる。なお、本発明は、当該プログラムを実行して行う設計方法でもよく、また当該プログラムがインストールされた設計装置であってもよい。
【００１６】
次に、本発明の一実施形態について、図１に基づいて説明する。
【００１７】
まず、グランドストラクチャーを設定する（Ｓ１１）。このグランドストラクチャーの設定は、従来例と同様であり、製造したい製品に基づいて間隔、形状、拘束点、負荷点などが決定される。これは、所定の条件の入力や予め設定したデータの取り込みなどによって、入力データに応じたグランドストラクチャーがコンピュータ内部に設定され、記憶される。データの入力は、予め記憶されているプログラムによって対話形式などによって行うことが好適である。
【００１８】
このＳ１１により、例えば、上述した図１０に示すようにグランドストラクチャーが、形成される。
【００１９】
このようにして、グランドストラクチャーが設定された場合には、そのグランドストラクチャーについてトポロジ最適化が行われる（Ｓ１２）。これは、目標強度を維持しつつ、総体積が設定値以下となるというような条件の下での最適化計算であり、従来からある最適化プログラムの実行によって行われる。これによって、トポロジ最適化された梁構造（骨組みの形状）が得られる。例えば、図１１に示すような最適化された梁構造が得られる。
【００２０】
最適化された梁構造が得られた場合には、その後の処理において動かしたくない節点である不動点を設定する（Ｓ１３）。不動点は、基本的に上述の拘束点および負荷点であるが、同一である必要はなく、増減させることができる。最適化された梁構造について、拘束点、負荷点を自動的に不動点に設定し、入力の手間を減らすなどの手法が好適である。
【００２１】
不動点を設定した場合には、全長の減少割合を入力する（Ｓ１４）。すなわち、得られている梁構造についての全長は決まっているため、減少割合を設定することで、目標とする全長が決定される。なお、目標全長は初期の全長より短い値とする。目標全長を入力するより、減少割合を入力する方が容易であり、また最終的形状を得るためにだいたい決まっている数十％等という値をデフォルトで表示し、ユーザの変更の入力を受け付けるようにしてもよい。
【００２２】
減少割合（目標全長）の設定を終了した場合には、これを拘束条件として、円滑化プログラムを実行することによって、角部の円滑化処理を実施する（Ｓ１５）。この円滑化処理は、Ｓ１３において設定した不動点以外の全節点に対して、ｘ，ｙ，ｚの各軸方向に攪乱を与えた際の全長の変化（差分感度）を求め、目標とする全長に至るまで節点の移動を繰り返すことによって行う。
【００２３】
次に、差分感度に基づく円滑化処理における最適化アルゴリズムについて、説明する。
【００２４】
角張った部分（角部）を円滑化するために、角張った無駄な部分を内接円（三次元的には内接する球）で置き換えるような操作を実施する。これは、水が表面張力により球形状となり、無駄な表面積を減らしていくことをイメージしている。
【００２５】
まず、目標関数として全要素（梁要素）長から初期全要素長＊係数α（α＜１）を差し引いた値の２乗を取り、この値をゼロに近づけるように節点を移動していく。この際の移動方向は、三次元方向に攪乱を与えたときの差分感度に基づいて決定していく。
【００２６】
すなわち、不動点以外の全節点に対して各ｘ，ｙ，ｚ軸方向に微小攪乱δを与え、その時の目的関数の差分を求める。
【００２７】
ここで、全要素の長さをＬ、初期の全要素長さをＬ0とした場合、目的関数Ｆ＝（全要素長：Ｌ−係数α＊初期全要素長：Ｌ0）2となる。従って、Ｘ＝（ｘ，ｙ，ｚ）とした場合、目標関数Ｆ＝Ｆ（ｘ）と表せ、ｘの全自由度に対し微小攪乱δを与えた場合の目標関数の差分ΔＦを求める。このとき、全節点自由度の中での最大値｜ΔＦ｜maxを求め、この値で差分ΔＦ正規化しておく。また、一般的な構造は対称でないため、攪乱は正方向（増加）と、負方向（減少）に与え、それぞれ場合の差分ΔＦ1、ΔＦ2を求める。すなわち、攪乱を正方向（増加）に与えた場合の、ΔＦ１＝（Ｆ（Ｘ＋δ）−Ｆ（Ｘ））／｜ΔＦ｜max、攪乱を負方向（減少）に与えた場合の、ΔＦ１＝（Ｆ（Ｘ−δ）−Ｆ（Ｘ））／｜ΔＦ｜maxを求める。目的関数Ｆは（Ｌ−α＊Ｌ0）2であり、図２のように表せる。
【００２８】
従って、
・攪乱を正方向（増加）に与えた場合、Ｘが正側の点ａでは、目的関数の差分は増加し、負側の点ｂでは目的関数の差分は減少し、
（ｂ）攪乱を負方向（減少）に与えた場合、正側の点ａでは、目的関数の差分は減少し、負側の点ｂでは目的関数の差分は増加する。
【００２９】
そこで、点ａの場合には、座標値を減少させ、点ｂの場合には座標値を増加させることで目的関数をゼロに近づけられることがわかる。
【００３０】
従って、目的関数を０に近づけるために行うべき座標更新量は、
・攪乱を正方向（増加）に与えた場合、目的関数の差分（正規化済み）ΔＦ１に反対符号を付けた上、係数ｃを掛けた値ΔＸ←ΔＸ−ΔＦ1＊ｃ、
・攪乱を負方向（減少）に与えた場合、目的関数の差分（正規化済み）ΔＦ２に同一符号を付けた上、係数ｃを掛けた値ΔＸ←ΔＸ＋ΔＦ2＊ｃ、
とすればよいことがわかる。
【００３１】
そして、このような計算を繰り替えすことによって、目標関数Ｆの差分を０とする目標関数を得ることができる。なお、係数ｃが繰り返し計算のゲインとなる。
【００３２】
図３は、図４における右下の１つの節点について左右方向に攪乱を与えた場合における目的関数の差分（正規化済み）の推移を示したものである。なお、任意の節点の任意方向の自由度に関する目的関数の差分も同様の推移となる。
【００３３】
このように、ΔＦ１、ΔＦ２、−ΔＦ１＋ΔＦ２について、繰り返しの度に減少していくことがわかる。
【００３４】
また、図４には、円滑化処理結果の梁構造を太線で示しており、このように形状的にうまく角部が円滑化されていることがわかる。
【００３５】
図５には、三次元のグランドストラクチャーおよびこれに基づくトポロジ最適化形状が示してある。グランドストラクチャーは、左図に表されるように、板厚が０．１＊半径である薄肉の円管であり、左端面の４隅の節点を拘束点とし、右端面の上辺中央の節点を負荷点とし、１００×１００×１００のボックス２つで形成している。トポロジ最適化形状は、右側に示されるようになる。
【００３６】
このような図５のトポロジ最適形状について、上述の円滑化処理を行うことで、図６に示すように、角部が円滑化された形状（図中太線で示す）が得られる。なお、図中、Ｈは高さ、Ｌは長さ、Ｗは幅方向を意味している。
【００３７】
ここで、この三次元のトポロジ最適化形状における１つの節点に任意の１つの自由度において微小攪乱を与えた場合の応答を図７〜９に示す。図７は目的関数Ｆの収束状況、図８には座標値の更新量ΔＸの収束状況、図９は目標関数の差分の収束状況を示している。これらによっても、繰り返し計算によって、目的関数が収束することがわかる。
【００３８】
このように、本実施形態のプログラムの処理は、三次元問題でもうまく角部を円滑化できる。
【図面の簡単な説明】
【００３９】
【図１】実施形態の処理の内容を示すフローチャートである。
【図２】目標関数Ｆを示す図である。
【図３】目標関数の差分の収束状況を示す図である。
【図４】攪乱の方向および円滑化の処理を説明する図である。
【図５】三次元のグランドストラクチャーおよびトポロジ最適化形状を示す図である。
【図６】円滑化した形状を示す図である。
【図７】目的関数の収束状況を示す図である。
【図８】座標値の更新量ΔＸの収束状況を示す図である。
【図９】目的関数差分の収束状況を示す図である。
【図１０】グランドストラクチャーを示す図である。
【図１１】トポロジ最適化による最適な形を示す図である。
【図１２】細かなグランドストラクチャーを示す図である。
【図１３】全組み合わせを考慮したグランドストラクチャーを示す図である。
【図１４】トポロジ最適化による最適な形を示す図である。
【図１】
2007199868.tif 000003
【図２】
2007199868.tif 000004
【図３】
2007199868.tif 000005
【図４】
2007199868.tif 000006
【図５】
2007199868.tif 000007
【図６】
2007199868.tif 000008
【図７】
2007199868.tif 000009
【図８】
2007199868.tif 000010
【図９】
2007199868.tif 000011
【図１０】
2007199868.tif 000012
【図１１】
2007199868.tif 000013
【図１２】
2007199868.tif 000014
【図１３】
2007199868.tif 000015
【図１４】
2007199868.tif 000016