《シミュレーションモデルの検証》
【しみゅれーしょんもでるのけんしょう (validation and verification of simulation models) 】
オペレーションズ・リサーチ(OR)やマネジメントサイエンス(MS)の分野では, 実際問題を直接扱うというより, 問題を抽象化した数理的・論理的なモデルを構築した上でモデルを操作することが多い. このことは, 正確な表現を欠いたモデルを使い, そのモデルから得られた結果に基づいて重要な決定をしようとすると, 間違った結果を生ずることを意味する [1] [2] [4].
構築したモデルに基づいてシミュレーションを行う場合, モデルが実際の問題を適切に反映しており, その処理が正しく行われていることを検証して, モデルならびにモデルから得られる結果の信頼性を保証しなければならない. 妥当性の検証は対象とする問題および分析目的にてらしたときの「モデルの動作的な正確さ」を扱うのに対して, 正当性の検証は「モデルのある形から他の形への変換の正確さ」を扱うことになる. モデルを誤りなく有効に活用するためには, モデルの検証を系統立てて行うことによってモデルとモデルから得られる出力結果の信頼性を高めることが重要である.
モデルの妥当性の検証(model validation)
一般に, モデルは, システム, 概念, あるいは現象等を抽象化して, 論理的あるいは数学的に表現したものである. システムのモデルは, 通常, 入力, パラメータおよび出力を持つ. システムの入出力の組とモデルから得られる入出力の組とは1対1に対応することが望ましい. システムとそのモデルの振る舞いを比較するにあたって, 出力変数が複数存在する場合, 出力変数間の相関がありうるために個々の変数を1つずつ比較するのではなく, 複数の出力変数を同時に考慮すべきである [2] [4].
シミュレーションモデルの妥当性の検証は, 数学モデルのシミュレーション出力が, 実際の問題に現実的にどれだけ一致しているかを決定するための過程である. 妥当性の検証では, モデルで用いている仮定をチェックしたりデータを調べたりして, 実世界に精通する人によって結果を批評してもらう. 妥当性の検証は, 適切なモデルが構築されているか否かをチェックするものであり, 現実のシステムと同一の入力を与えてモデルを実行して出力結果を比較したり, モデルの振る舞いと現実のシステムの振る舞いを比較することによって検証作業が行われる. 妥当性の検証では, シミュレーションモデルの仮定やパラメータの値を変更することによって, システムの出力とコンピュータモデルの出力の差を出来る限り小さくすることを目指す.
モデルの正当性の検証(model verification)
数学的モデル, 特にコンピュータによる処理を行うモデルに対して, その正当性の検証は計算手続き(プログラミング)がデバック済みでエラーがなく, 計算やソフトウェアによって表現されるモデルが, モデル作成者の意図どおりに表現されているかどうかをチェックするための過程である. モデルが意図する計算を正しく実行していると確認された時には, その正当性が検証されたといわれる. また, 対象とする問題の定式化が正しくモデルの仕様に変換されているか, あるいはモデル表現を実行可能な形で正確にプログラミングされているかを評価する. したがって, 正当性の検証は, 作成者が意図する出力とコンピュータモデルの出力の差がなくなるように, プログラムを修正する過程と考えられる [3].
離散型シミュレーションの場合, 発生した事象の履歴を示すトレースやアニメーションが正当性の検証に役立つ.
妥当性の検証と正当性の検証はモデルに基づく分析や研究における3つの主要なタイプのエラーの発生を防止する [2]. タイプIのエラーは, モデルが十分に信頼できるときにもかかわらず, そのモデルの信頼性を否定するエラーである. タイプIIのエラーは, モデルが十分に信頼できないときに, 誤ってそのモデルが信頼できると判断するエラーである. タイプIIIのエラーは, 間違った問題を解くエラーである. タイプIのエラーを犯す確率は, モデル構築者のリスクと呼ばれ, タイプIIのエラーを犯す確率は, モデルユーザのリスクと呼ばれる.
モデルの妥当性と正当性の検証の結果は, そのモデルが絶対に正しいとか, 絶対に間違っているというように二元的に扱うべきものではない. モデルはシステムの抽象化の産物であるので, 完全な表現を期待してはならない. モデルは特定の目的のために構築され, その信頼性はモデルの目的にてらして判定される. モデル分析の目的はモデルをどのように表現すべきかを示唆することが多い. モデル分析の目的によっては, モデルが現実問題を大雑把に反映していれば十分な場合もあれば, きわめて忠実に現実を反映していなければモデルとして使いものにならない場合もある [2] [4].
参考文献
[1] 電子情報通信学会編, 『電子情報通信ハンドブック』, オーム社, 1998.
[2] S. I. Gass and C. M. Hariss, eds., Encyclopedia of Operations Research and Management Science, Kluwer Academic Publishers, 1996. 森村英典, 刀根薫, 伊理正夫監訳, 『経営科学OR用語大事典』, 朝倉書店, 1999.
[3] M. F. Aburdene, Computer Simulation of Dynamic Systems, Wm. C. Brown Publishers, 1988.
[4] O. Balci, "Verification, Validation, and Testing," in Handbook of Simulation, J. Banks, ed., John Wiley & Sons, 1998.