過去の投稿に画像リンク切れ多数ありご迷惑おかけしています.

パラメータ設計のアドイン(その1)

書籍サポート覚え書き

 パラメータ設計のアドインについて質問を受けました.私の知っている限りでは,本書のために開発したMCDAアドイン以外にも,HOPEアドインとSRPDアドインがあります.実はこの三つのアドインのベースは同じものなのですが,それぞれの機能と思想が違っています.それらの違いについてお話しする前に,本日はまずその1としてなぜアドインが必要なのかについて説明しておきます.

JMPでは「満足度の最大化」でパラメータ設計ができるのはご存じでしょう.「プロファイル」とシームレスに繋がっているので使いやすい一方で,本格的なパラメータ設計には機能面で少々物足りないことも事実です.例えば,実験計画で応答の目標を設定する場合,「最大化」「最小化」以外では「目標値に合わせる」という三つの選択肢しかありません.(厳密には「なし」という選択肢もあるわけですが.)このとき,目標値に合わせる際に下側限界と上側限界を設定します.例えば,スペックが25±5であるならば,下側限界に20,上側限界に30と入れればいいわけです.
ところが,スペックはそのままで23を狙いとする場合は,「予測プロファイル」の赤三角から「最適化と満足度>満足度の設定」で「応答目標」を設定しなければなりません.
DraggedImage.png
これが面倒だからと,満足度関数のハンドル(小さい四角)をドラッグしてもうまくいきません.細かい仕様は不明ですが,満足度関数のハンドルをドラッグするとその度に関数を新たに引き直すようです.数値的にというよりは画像処理的に満足度関数が設定されているような感じです.とにかくプロファイル上で満足度関数に微妙な修正を加えるのが困難なことはみなさんも経験あるでしょう.
とはいえ.このような点を目指す最適化のための満足度関数はまだ何とか設定可能ですが,どうしてもJMPでは設定できない最適化のケースがあります.それは点ではなく範囲を目指す最適化の場合です.どういうことかと言いますと,応答の値が例えば20から30の範囲に収まっていさえすればよいというような最適化の場合です.このような範囲を目指す最適化は,特に多目的最適化の場合は重要です.なぜかというと,多目的最適化の場合,それぞれの特性に優先順位があるのが普通なので,優先順位が低い特性に対しても点を目指すと,制約が強すぎてしまうからです.20から30の間にありさえすればよいのに25を目指してしまうと優先順位の高い特性がそれに縛られてしまい,真の最適解が得られなくなってしまうのです.
一つの手段として「満足度の設定」でデフォルトが1の「重要度」を大きく書き換えることができます.しかし,この方法で得られた解は特定範囲に収まれば良いという制約を前提としていません.そこで「満足度の設定」で満足度関数の形状を定義しようとすればこの問題が理解できるでしょう.このような最適化を実現するためには満足度関数の形状は三角形でなく台形にならなければならないことに気づくはずです.しかしながら,ハンドルが三つしかない今の仕様では実現不可能です.どうしてもという場合は,応答の範囲を二つに分割してそれぞれの領域で,ステップ形状の満足度関数を設定して満足度の最大化の際にそれを繋げるというようなことをしなかればなりません.もちろん,スクリプトを組めばこのことは実現可能です.
スクリプトを組めば実施可能といっても,自作するには敷居が高いというのが本音です.そこで上で紹介した既製のスクリプトがアドインとして存在します.これらのアドインは上述した満足度関数の定義を実現するためだけではなく,それぞれに特徴があります.本日は台風が来るということで色々家の周りのことをやらなければならず,時間がないので来週以降それぞれのアドインの違いを説明していきます.
皆様におかれましても台風の備えに怠りなきよう.ともども被害のでないことを願っています.
それではまた.

コメント