設計・シミュレーションJanuary 6, 2016

【デザインとシミュレーションを語る】20 : 安易に使うと誤解を招く言葉“最適化

  第3章設計探索とトレードオフ -安易に使うと誤解を招く言葉“最適化”  
header
Avatar 工藤 啓治 (Keiji Kudo)
【デザインとシミュレーションを語る】

第3章設計探索とトレードオフ -安易に使うと誤解を招く言葉“最適化”

“最適化”という言葉は分野を問わずよく使われるので、あたかも世の中の人々が同じ意味を共有しているかの錯覚に陥ります。この機能は「最適化」されています、と言われればそれだけでなんだか、分かったような気になって安心してしまうとことがありますけれど、実はこれほど危ない曖昧言葉もありません。端的なのは、“みんなが最適設計技術を使うようになったら、同じ製品ができてしまう。”という実際に聞いた技術マネージャの言葉で、とてもショックを受けた覚えがあります。同じ製品になるということにではなくて、同じ製品を設計してしまうと思われている最適化技術への理解のなさに対して、ショックを受けたのです。言ったかたは、人間の設計は柔軟で発想に富むけども、最適化アルゴリズムで探索した結果は同じになるに決まっているという前提で、述べたのだと思われます。かなり限定された問題設定の状況ではそういうこともありえるかもしれませんが、実際の複雑な問題においては、アルゴリズムだけで解が決まってしまうことはなく、まさしく人間の意図が入らないと決まらないのが、最適化問題なのです。

では、これを読んでいる皆様、“最適”って、どういうことをいうのか、しっかり定義できますでしょうか?何をもって最適化していると言えるのでしょうか? 最小や最大なら、対象とする量を想定しているはずなので、はっきり定義できますが、最適という言葉だけでは、何をどうしたいのかがまったく定義されていないので、どうとでも解釈されてしまうのです。本来、最適探索というのは、何等かの条件が与えられて、かつどの量を最大もしくは最小にするかを決めて初めて成り立つのですね。何を定義しないといけないかを、例で示してみましょう。

1)シミュレーション・モデル 例:構造解析をするためのFEMモデル、機構解析モデル、流体解析モデルなどなど

2)設計空間(設計を探索するための、設計パラメータの一式とその上下限値) 例:板厚、寸法、位置、材料定数といった設計上試してみることのできる値

3)制約条件(設計上、これ以上もしくはこれ以下は許容できない値) 例:応力や変位の許容値=最大制約もしくは最小制約

4)目的値(最大もしくは最小にしたい量) 例:重量最小、燃費最大などの性能

一つの問題を解くのに、こういう設定をしないといけないのです。冒頭の技術マネージャが云わんとしていることは、上述のすべてがまったく同じ、すなわち、数学的に、まったく同じモデルで、同じ設計空間で、同じ条件で、同じアルゴリズムを使えば、同じような最適解に集約するだろうということですが、それは数学的に決まる話ですから、むしろ当然同じにならなければならない話で、そういう問題を解く場合には、設計者が考える必要なく同じ答えを自動的に確実に出してくれる方がありがたいはずです。以上、終了!となります。

しかし、一般的には、設計意図に基づいて問題定義をするわけですから、設計パラメータに何を選択するかという時点で、設計者の経験や意図によって変わります。制約条件と目的値の設定もしかりで、重量を増やさず(制約)安全を考えて応力を最小にしたいという設計方針もありえます。したがって、仮に同じモデルがあったとしても、同じ設計解に収斂していくということはないのです。問題が複雑になればなおのことです。ですから、冒頭に例として掲げた“みんなが最適設計技術を使うようになったら、同じ製品ができてしまう。”という状況は、ほぼありえないことがわかります。かならず、エンジニアの経験やスキルが個性として出てくるのです。

以前、設計パラメータに何を選ぶかというテーマで素晴らしい事例に出会ったことがあります。ゴルフのシャフトの剛性(強さやしなり)を最適にし、インパクト時のスピードを最大にしたいという問題があって、通常であればシャフトの板厚や半径を設計変数にとりますが、そのケースの場合製造方法が高度になったので、材料物性を長手方向に可変にできるという設計条件も与えたのですね。結果はもちろん、これまでにない、見事に面白い答えがたくさんでてきたわけです。これは、製造技術の進歩と設計者のアイデアが見事に組み合わせられた例で、そのような問題こそが、新規設計に最適化問題を適用する醍醐味だといえるでしょう。

さて、私が、最適化という言葉にとても敏感になった、一つの経験をお伝えしましょう。あるセミナーでロバスト設計手法の一つであるタグチメソッドに詳しい方と話をしていたときですが、最適化は重要だという当然の話になり、当然双方うなずいて会話をしていたわけですが、途中からどうも話が噛み合わないことに気がつきました。その当時の私が解釈していた最適化は“性能の最大化もしくは最小化”を意味していました。

一方、タグチメソッドの方法論である二段階設計の最初の手順として示されるのも“最適化”であって、これは、“性能が安定(ロバスト)であること”なのです。そのとき、私は不勉強で、そのことを知りませんでした。私からすると、それは、ロバスト性という言葉で表現すべきものでした。まさか、“最適化”が、ロバストの意味で使われているとは思いもよらなかったのです。ただ、“性能が安定であること”が、最も適していると考えるのも、それはそれとして納得できる定義であることも理解しました。(かつ、混乱に輪をかけたのは、私が意図していた“性能指標の最大化もしくは最小化”は、タグチメソッドにおける二段階設計の二段階目に相当する、チューニングという手順なのでした。二つの平易な日本語が相互に、別の意味で使われていた会話がいかに混乱していたか想像してみてください。)

というわけで、よくよく考えてみれば、何が最適なのかの定義は、考え方や人によって違って当たり前の言葉だなということに気づいて、それ以降、最適化という言葉の曖昧さと危険さ、最適化の前提を明確にすることの大切さを強く意識するようになったのです。

【SIMULIA 工藤】

バックナンバー

【デザインとシミュレーションを語る】第一回:イントロダクション 【デザインとシミュレーションを語る】第二回:シミュレーションの分類 【デザインとシミュレーションを語る】第三回:シミュレーションは実験と比べて何がいい? 【デザインとシミュレーションを語る】第四回:シミュレーションは緻密な統合技術 【デザインとシミュレーションを語る】第五回:リアルとバーチャルの垣根をなくせたら?(1) 【デザインとシミュレーションを語る】第六回:リアルとバーチャルの垣根をなくせたら?(2) 【デザインとシミュレーションを語る】第七回:3D-CADは何のため? 【デザインとシミュレーションを語る】第八回 : CAE を志す人へのメッセージ(1) 【デザインとシミュレーションを語る】第九回 : CAEを志す人へのメッセージ(2) 【デザインとシミュレーションを語る】第十回: ソフトウエア・ロボットの誕生 【デザインとシミュレーションを語る】第十一回: 作業を自動化すること、その真の価値とは 【デザインとシミュレーションを語る】第十二回: “自動化を進めると設計者が考えなくなる?"への回答 【デザインとシミュレーションを語る】第十三回 : パラメトリック性の本質は新しい組み合わせ 【デザインとシミュレーションを語る】第十四回 : Zero Design Cycle Timeの衝撃 【デザインとシミュレーションを語る】第十五回 : 「設計とは最適化」の奥深い意味を教えてくれた技術者 【デザインとシミュレーションを語る】第十六回 : スーパーコンピュータで行われていた大量の計算とは 【デザインとシミュレーションを語る】第十七回 : 最適設計支援ソフトウエアの衝撃的な登場 【デザインとシミュレーションを語る】第十八回 : サンプリングって、偵察のことです 【デザインとシミュレーションを語る】第十九回 :  設計空間でシミュレーションを考える

読者登録はこちら

ブログの更新情報を毎月お届けします

読者登録

読者登録はこちら