Home > 解析事例・インタビュー > 最適化ツール(EOopti)の開発背景

解析事例・インタビュー

ソフトウェアクレイドル 技術一課 勝村 成貴
最適化ツール(EOopti)の開発背景

一般的に、最適な設計変数・目的関数の組み合わせを探すためには、設計者の経験と知識が必要となり、限られた期間の中でこの組み合わせを探すのは容易なことではありません。しかし、オプションツールとして開発された「最適化ツール(EOopti)」を利用することで、無駄な試行錯誤を軽減し、短時間で、より目的に適った設計変数・目的関数の組み合わせを得ることができます。今回はこのツールを開発したソフトウェアクレイドル 技術部 勝村に開発の背景などを聞きました。

ソフトウェアクレイドル

技術一課 勝村 成貴

なぜ、最適化ツールを開発しようと思ったのでしょうか?


 コンピューターの処理速度が向上するにつれ、CAE(Computer Aided Engineering)を用いた製品設計を行う設計者の方々が多く見受けられるようになりました。クレイドルが扱っている熱流体解析もCAEの一つですが、これらの解析結果を用いても、最終的な製品形状に反映されるまでには、担当される方の経験と知識、そして判断力が必要になってくるのではないでしょうか。

 例えば、熱流体解析の結果から、「より空気抵抗の少ない車体形状はどういったものなのか」あるいは、「より冷却効果の高い放熱フィンの形状や部品配置はどういったものなのか」など、最適な形状・配置を探すために試行錯誤を重ねることは、数多くあるかと思います。特に、熱流体解析は、解析形状によっては計算時間が膨大になるケースがあるため、できるだけ少ない検討数でより目的に適した形状・配置を見つけられることが理想です。しかし実際は、最適な形状・配置を見つけるために、状況によっては何百何千といった検討を行う必要があり、途方もない時間とコストがかかってしまう場合があります。

図1 Kriging法によって得られた応答曲面

 そこで、このような試行錯誤を軽減させ、短時間で、より目的に適った設計変数の値を提示してくれる最適化ツールが必要だと感じました。世の中には様々な最適化手法がありますが、クレイドルでは東北大学大林研究室から紹介されたMOGA(Multi Objective Generic Algorithm)を用いた最適化ツール、Extension Option (Optimization)(以下、EOopti)を開発、Version10からオプション機能としてご利用いただけるようになりました。

 


開発する上で苦労や発見などはありましたか


 私自身、最適化問題を扱った経験が少ないため、EOoptiの開発担当が決まったときには、どのようなGUI(Graphic User Interface)にすればよいか、イメージするのに苦労しました。この問題を解決するために、プロトタイプ製品をもとに社内スタッフとミーティングを重ね、その意見を製品へ反映させるということを繰り返し行いました。

 また、拡張性の高いGUIを作るためには、最適化アルゴリズムの理解も必須でした。GUIの仕様設計・実装と最適化アルゴリズムの理解と実装、この両方の作業を限られた期間で平行して進めなければならない点が、開発を進める上で大きなハードルとなりました。しかし、いろいろな方からの意見やアドバイス、様々な文献・情報を自分の中に取り入れることで、当初はイメージしにくかったアプリケーションのあるべき姿が見えてくるようになりました。

機能の構成や簡単な使い方を教えてください

図2 EOoptiの構成


 EOoptiは図2に表示される構成になっています。条件設定ウィザードで最適化に必要な条件を入力することで、Kriging法による応答曲面生成、MOGAによる多目的最適化を行うことができます。グラフツリーに最適化によって得られた結果グラフの項目が追加され、ドローウィンドウ上で各グラフを表示・確認できます。

 Kriging法とはデータ内挿法の一つで、既知点のデータからある地点における値を推定する手法です。最適化を行う際、理想的には最適化の対象となる各目的関数が数式化されていればよいのですが、流体のような非線形的な現象においてはこれらを数式化することは容易ではありません。そのため、各目的関数の代理モデルとして、サンプリング点からKriging法を用いることで、各目的関数の応答曲面を生成し、その応答曲面の分布を使用してMOGAによる最適解の探索を行います。

図3 EOoptiを用いた最適化の流れ


 EOoptiを用いて最適解を探索するためには、大きくわけて、次の3つの準備が必要です。
 

(1) 設計変数・目的関数の定義
(2) サンプリング点(設計変数値)の生成
(3) (2)の設計変数値に対する目的関数値の入力

図4 LEDダウンライト

 (1)、(2)はEOopti内で定義・入力することができますが、(3)については解析結果の値といった、外部情報を入力する必要があります。

 具体的な操作について、以下の例を用いて示していきます。ここでは、図4のようなLEDダウンライトの放熱用ヒートシンクの形状最適化について考えます。今回 は「フィン枚数」「フィン部高さ」「ヒートシンク軸部の厚み」「フィン部の外径」「ヒートシンク軸部の外径」の5つを設計変数に、「LEDの温度」 「LEDの体積」の2つを目的関数とし、両目的関数が最小となる設計変数の組み合わせを探す最適化問題とします。各設計変数の範囲は図5の通りです。

図5 設計変数の範囲

(1)設計変数・目的関数の定義

 EOopti の条件設定はすべて条件設定ウィザード内で行うことができます。(図6)1ページ目では、設計変数の数、目的関数の数、サンプリング点数を入力します。今回の例であれば、設計変数の数は5、目的関数の数は2と入力します。サンプリング点数は、今回は50として入力します。これは、Kriging法によって応答曲面を生成させるのに必要な既知の値の数を指し、言い換えれば、「50ケースの解析結果を用いる」という定義になります。


図6 条件設定ウィザード(1ページ目)

 

※STREAM、SCRYU/Tetraおよび熱設計PACは、日本における株式会社ソフトウェアクレイドルの登録商標です。
※その他、本インタビュー記事に記載されている会社名、製品・サービス名は、各社の商標または登録商標です。
※本インタビュー記事の内容は2013年1月現在のもので、予告なしに変更する場合があります。また、誤植または図、写真の誤りについて弊社は一切の責任を負いません。

ダウンロード

PDF

本インタビュー記事のPDF版をダウンロードできます。

ダウンロード

体験セミナー一覧

関連ソフトウェア製品

関連製品

関連製品
構造格子系汎用三次元熱流体解析システム
製品紹介ページヘ

関連製品

関連製品
電子機器筐体、放熱部品の熱解析専用パッケージ
製品紹介ページヘ

関連製品

関連製品
非構造格子系汎用三次元熱流体解析システム
製品紹介ページヘ

※お客様の個人情報の取り扱いにつきましては、弊社個人情報保護方針をお読みになり同意の上お進みください。
※頂きましたご質問は、担当部署よりご回答申し上げます。内容によっては回答までに数日かかる場合がございます。
※お問い合わせの内容によっては(例:宣伝・勧誘・売込み等)、ご返信を差し上げられない場合がございます。

基板専用リアルタイム熱解析ツール PICLS

TOP