UA-115498173-1

2018年08月04日

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

先週の続きです.パラメータ最適化のためのアドインについてそれぞれの違いなどを説明しようと思います.本日はHOPEアドインとSRPDアドインについて.
もっとも端的に説明するならば,これらのアドインを使えばパラメータ設計のためのJMP操作が簡単になるということでしょうか.
HOPE.png
この図(クリックで拡大表示します)に示したように,HOPEアドインの設計画面にはJMPでは赤三角から「因子グリッドのリセット」で呼び出さなければならない各種設定がGUIに実装されています.これだけで便利なので,なぜJMP標準になっていないのか不思議なくらいです.見た目だけではなく,実はこの二つのアドインは今年の1月13日の記事で言及していますように,「実はJMP単独ではスクリプトを書くでもしないと困難なことがあって」という問題に対応しています.その一つが先週お話しした範囲を目指す最適化のための満足度関数の定義であり,更にもう一つが,品質工学でいう動特性のための信号因子を設計に取り込みにくいということです.(誤差因子と信号因子は本書ではそれぞれノイズ因子と目的因子という名称で呼びましたので,以降ではこの名称を使います.)これらの因子がJMPでどのように扱われているかというと,ノイズ因子だけはグラフメニューのプロファイルを実行する際に「誤差因子」としてオプション設定でお目にかかれます.ある因子(連続量)を誤差因子に指定すると,その因子による(特性の)予測式を偏微分した関数が予測プロファイルに出現します.満足度はゼロ望目に自動で設定されていますので,「満足度の最大化」によってその因子の影響を緩和した最適化が可能となり,結果としてロバスト最適化が可能になります.この機能はもちろん便利なのですが,システムのロバスト性を点で目指してしまうためあまり実用的ではありません.例えば,予測式が二次関数になっていたとしてその頂点を満足度最大にしてしまうので制約が強すぎるのです.その因子がノイズとして動いてしまっている状況であれば,二次関数の二次係数を最小にするような最適化が実務的には望ましいはずです.このため,わたしのセミナーではこの機能に言及せず,プロファイルを弄りながら予測式の傾き(あるいは二次係数)を小さくするにはどうすれば良いかを考えてもらっています.
HOPEアドインではばらつきは範囲で定式化されます.特性の変動する範囲(Range)を最小にすることがロバスト化であると捉えるわけで,実務的にはとても扱いやすいと言えます.但し,この定式化のためにロバスト化の制約を数値で設定しなければなりません.平坦化を目指すに,真っ平らという極限ではなく,Rangeにしてどのくらい以下であれば良いかを考えなければならず,技術者の考察がとても重要になります.
ノイズ因子はまだ良いのですが,目的因子を設計に取り込み難いことの方が問題です.HOPEアドインはこのためにあるといっても過言ではなく,現在は慶應大学大学院の客員教授の高橋武則先生のHOPE理論をベースとして,その理論検証のために開発されたアドインです.実務的にも大変有効でHOPEアドインを使えば,範囲を目指す最適化も可能になりますし,目的因子(HOPEアドインでは入力)を取り込んだ柔軟な設計も可能となります.HOPEアドインを使った最適化について詳しく知りたい方は,河村・高橋(2013)『統計モデルによるロバストパラメータ設計』日科技連,を参照してください.この本にはHOPEという言葉は出て来ませんし,HOPE理論についても書かれていませんが,全ての例題はHOPEアドインを使って解かれています.
残念なことにHOPEアドインは一般公開されていません.一つにはSAS社の公式アドインでないため,どのような結果が出ても誰も責任が取れないという事情があります.といっても,最適化のライブラリはJMPの機能を呼び出しているだけですから,実務にも十分使えますが,バグがないというわけではないのでそこは利用者の責任で使うことになります.それと,最近は落ち着いて来た感がありますが,機能変更が頻繁でマニュアルの更新が全く追いついていない状況であり,一般公開して間違った使い方が広まってしまうのを危惧しているという事情もあります.とはいえ.その存在をここに明かしてしまった以上,入手方法についてもお知らせする必要があると思いますので,興味がある方はコメント欄でお知らせください.(前にも書きましたが,コメントは私のところで一度止まるので内容が公開されることはありません.)
一方,島根大学の河村先生は別の書籍,河村(2016)『製品開発のための実験計画法』近代科学社ではSRPDアドインというHOPEアドインの派生版を使っておられます.こちらはJMPの正規ライセンス保持者かつ書籍購入者であれば誰でも書籍に記載されている方法で入手できます.SRPDアドインは一言で言うとHOPEアドインのロバスト設計に特化した機能限定版と考えてください.設計やモデリングの画面等はほぼ同じであり,SN比や感度の計算なども実装されているので.品質工学によるロバスト設計をやるだけならばSRPDアドインも良い選択肢です.(因みにSRPDはSatistical Robust Parameter Designを意味しています.)
これら二つのアドインは外側直交計画という品質工学特有のデータ構造をJMPに実装しているところが大きな特徴です.JMPだけでは作成に手間がかかるL18やCCDもプルダウンで指定できます.過去に品質工学をやってうまくいかなかったけれど,JMPを使ってもう一度当時のデータを分析してみたいならば必須のアドインです.
それでは,なぜ本書でMCDAアドインというまた別の派生版を開発したかというと,上記二つのアドインがJMPの枠から少々はみ出ているところがあって,本書の対象であるJMP初心者が戸惑うことを危惧したためです.例えば,HOPEアドインではモデリングに独自のGUIが実装されていて,結果の表示や統計データの出力などがJMPとは異なっています.更にはデフォルトでは寄与率基準というJMPには実装されていない基準でステップワイズが走ります.(JMPデフォルトの最小BICc等を選択することはできます.)いわば独自の世界が展開されているので,経験者にはとても使いやすくパワフルなアドインなのですが,初心者には荷が重いところがあります.これに対し,MCDAアドインにはモデリングに独自の画面はありません.「モデルのあてはめ」で作成した予測式をそのまま指定するだけです.「JMPとの繋がりが良い」ことがMCDAアドインの特徴です.
更には,HOPEアドインもSRPDアドインもトライアルライセンスでの使用は認められていません.(例外はあります.)本書はトライアルライセンスでJMPを初めて触る技術者も対象にしたため(それにしては難しいとよく言われますけど),新たに別のアドインが必要になったのです.といっても,無制限に拡散することを避けるため(その心配はないのかもしれませんが),SAS社との取り決めで唯一「本書の購入者である」という制約は掛けざるを得ませんでした.
その他のMCDAアドインの特徴(実はこのほうが大きい)については後日改めて説明することにして本日はここまで.それでは.
タグ:JMP
posted by Tad at 19:00| Comment(0) | TrackBack(0) | 統計的問題解決

2018年07月28日

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

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

2018年07月21日

神の視点

コメントをいただいたことを受けて,本日は観察について書きます.暑いので短めにします.
計画作成に先だってシステムについての考察は必須であり,そこでは観察が重要なのはいうまでもありません.とはいえ.観察には対象を注視するというニュアンスがあるので注意が必要です.以下の考察は,ボー・ロット(2017)『脳は「ものの見方」で進化する』サンマーク出版にインスパイアされています.この本によると.脳神経科学では,私たちの脳内で生まれる可能性のある「知覚」の適応度地形モデルという概念があるようです.ここ言う「知覚」は思考や概念,行動あるいは判断と読み替えても構いません.脳内で生まれる可能性のある「知覚」は無数にあるけれど,過去の思考や行動によって実際に取りうる「知覚」は制約を受けるということ,即ち,私たちの思考や行動はいついかなる時でも常に思い込み(バイアス)に支配されているとこの本には説かれています.
この議論のアナロジーを問題解決に適用します.ちょうどセミナーでこの話をしようと図を作成しているところだったので,この図で説明します.
神の視点.001.png
この図では横軸をシステムの状態とし,縦軸をその適応度としたシステムの可能性の空間を示していると考えてください.適応度は満足度のようなものと考えても差し支えないでしょう.まず重要なことは現状は何らかの局所的な最適解にはなっているはずだということです.だからこそシステムは安定しているわけです.それが何らかの理由でより高みを目指さなければならなくなった.これが問題解決のスタートです.問題を意識しなければこの準安定状態から脱することはなかなか難しいものです.おそらく手遅れになるまで気づかないということもあるでしょう.
現状を抜け出そうと第一歩を踏み出せたとしても,このとき,「知覚」の可能性の空間の探索が過去の経験を拠り所とするように,現状のシステム状態をベースに探索することが一般的です.品質工学でL18の2列目以降の第二水準を現状値に設定せよとするのはその一例です.もちろん,現状からスタートすることは現状の改善には有効ですが,この図のように近くの高みに出ることがせいぜいであるということが問題です.
神の視点.002.png
この状況ではこの図に示したより良い最適解にたどり着くのは困難です.
神の視点.003.png
システムの場合,更に複雑な状況があります.それはこの図に示したような,ある状況下においてのみ真の最適解が出現する可能性があることです.
神の視点.004.png
真の最適解を見出すにはどうすればよいのでしょうか.
ボー・ロット(2017)の「知覚」の議論では,この状況で私たちは挑戦と失敗を繰り返しながら「可能性の空間」を探検するしかない,と書かれています.なぜならば,この図のように,人間である私たちには現状の近くまでしか見渡せないからです.多くの争いは各人が知覚している(あるいは知覚できる)最適解が異なっていて,しかもそれは互いに認知できないということにあります.実際の実験計画ではこの図のような状況であるということです.
神の視点.005.png
全ての人に共通な最適解を見出すためには神の視点が必要なのです.知覚の空間で神の視点を持つことは容易ではありませんが,問題解決では実験計画によって神の視点からシステムを眺めることが可能となります.その鳥瞰図が応答関数ということになるわけですね.
神の視点で応答関数を眺めるには,現状を実験空間の中心に据えるという制約は外し,可能な限り広い領域で応答関数を眺めることを優先すべきです.このとき,必要になるのは応答関数という地形モデルに対する仮説です.その仮説はシステムの観察から立てられるものですが,その際に固定した視点からシステムを注視するのではなく,視点を切り替えることを意識すべきです.社会学者のアルフレッド・シュッツの現象学的社会学で提唱されている「多次元的な現実」は人の視点で社会の見え方が変わってくることを意味していますが,まさに社会をシステムと捉えれば同じことが言えるのです.
視点を変えるのには,それを意識することが肝要です.他の人の見方を身に付けるのはトレーニングもが必要になるかもしれません.システムの別の部分に光をあてるという感覚も大切にしたいです.自分なりにいくつかの方法論は持っているのですが暑いので本日はここまでとします.観察は大事ですが,陥り易い罠もあります.いずれにせよ,観察という日本語からは視点を切り替えるというニュアンスが弱いので注意したいところです.
それではまた.
posted by Tad at 19:00| Comment(0) | TrackBack(0) | 統計的問題解決