(57)【要約】【課題】本発明は、損失数が何個で統計的に有効かの具体的な決定方法を提供することを目的とする。【解決手段】本発明は、シミュレーション中に損失が発生する度に、それまでの損失に関する統計量を計算し、統計的に有効と判定された時点で、損失率を出力し、シミュレーションを終了する、ことを行う。ここで、シミュレーション中に、損失が発生する度に、ランダムに発生する損失とランダムに発生する損失に引き続く損失に分類することを行う。また、前記ランダムな損失に分類された損失の発生時間間隔の平均値を計算し、当該平均値を用いて理論的な指数分布を想定し、該分布とそれまでに発生した損失の発生時間間隔を用いて、χ２検定を行うことにより統計的に有効かどうかを判定する、ことを行う。【選択図】図２
2013192005.tif 000002
【特許請求の範囲】
【請求項１】
モンテカルロシミュレーションにおいて、得られた標本を分類する手順と、
分類された標本の分布と分類された標本に想定される母集団の分布とを用いてχ２検定を行うことにより統計的に有効かどうかを判定する手順と、
統計的に有効と判定された時点でシミュレーションを終了する手順と、
を順に有することを特徴とするシミュレーション方法。
【請求項２】
モンテカルロシミュレーション中にデータグラムの損失が発生したことを検出する損失検出手順と、
前記損失検出手順において損失が発生する度に、直前に発生した損失との発生時間間隔を測定する時間間隔測定手順と、
前記時間間隔測定手順で測定した発生時間間隔と予め設定した発生時間間隔と比較することにより、ランダムに発生する損失とランダムに発生する損失に引き続く損失に分類する時間間隔判定手順と、
ランダムに発生する損失に分類された損失の発生時間間隔の平均値から求められる理論的な指数分布と前記時間間隔測定手順で測定したランダムな損失の全ての発生時間間隔をと用いて、χ２検定を行うことにより統計的に有効かどうかを判定する統計量判定手順と、
統計的に有効と判定された時点で、全データグラム数と前記損失検出手順で検出した全損失数を用いて損失率を算出して出力し、シミュレーションを終了するシミュレーション終了手順と、
を順に有することを特徴とするシミュレーション方法。
【請求項３】
請求項１又は２で行うχ２検定において、実度数を計数する区間数を４とする、
ことを特徴とするシミュレーション方法。
【請求項４】
請求項３で行うχ２検定において、実度数を計数する４つの区間の各境界の値を、前記想定された理論的な指数分布の累積確率分布が等しく０．２５ずつになる値とする、
ことを行うことを特徴とするシミュレーション方法。
【請求項５】
モンテカルロシミュレーションにおいて、得られた標本を分類する手段と、
分類された標本の分布と分類された標本に想定される母集団の分布とを用いてχ２検定を行うことにより統計的に有効かどうかを判定する手段と、
統計的に有効と判定された時点でシミュレーションを終了する手段と、
を備えることを特徴とするシミュレーション装置。
【請求項６】
モンテカルロシミュレーションにおいてデータグラムの損失が発生したことを検出する損失検出部と、
前記損失検出部が損失を検出すると、直前に発生した損失との発生時間間隔を測定する時間間隔測定部と、
前記時間間隔測定部の測定した発生時間間隔を予め設定した発生時間間隔と比較し、前記予め設定した発生時間間隔よりも時間間隔の長い発生時間間隔をランダム損失発生時間間隔として出力することにより、ランダムに発生する損失とランダムに発生する損失に引き続く損失に分類する時間間隔判定部と、
前記時間間隔判定部の出力したランダム損失発生時間間隔の平均値から求められる理論的な指数分布と前記時間間隔測定部の測定したランダムな損失の全ての発生時間間隔を用いて、χ２検定を行うことにより統計的に有効かどうかを判定するχ２検定部と、
前記統計量判定部が統計的に有効と判定すると、全データグラム数及び前記損失検出部の検出した全損失数を用いて損失率を算出し、シミュレーションを終了させる損失率算出部と、
を備えるシミュレーション装置。
【請求項７】
前記χ２検定部は、
前記時間間隔判定部からのランダム損失発生時間間隔の平均値を計算し、これを用いて想定される母集団の理論的な分布を決定し、χ２検定のための分布の４つの区間の境目となる３つの臨界値を計算し、前記時間間隔判定部の出力した発生時間間隔を用いて各区間の実度数を計数する実度数計数部と、
前記実度数計数部の計数した実度数と前記指数分布の各区間の理論度数を用いて統計量χ２を算出する統計量算出部と、
前記統計量算出部の算出した統計量χ２を予め求められている臨界値と比較し、統計量が臨界値以下である場合に、統計的に有効であると判定する統計量判定部と、
を備えることを特徴とする請求項６に記載のシミュレーション装置。
【請求項８】
モンテカルロシミュレーションにおいて、得られた標本を分類する手順と、
分類された標本の分布と分類された標本に想定される母集団の分布とを用いてχ２検定を行うことにより統計的に有効かどうかを判定する統計量判定手順と、
統計的に有効と判定された時点でシミュレーションを終了するシミュレーション終了手順と、
を順にコンピュータに実行させることを特徴とするシミュレーションプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モンテカルロシミュレーション（以下、シミュレーションと略す。）において、統計的に有効な標本が得られた時点でシミュレーションを終了する方法ならびに装置に関する。
【背景技術】
【０００２】
例えば、インターネットにおいて、動画配信が盛んに行われており、また、社内ＩＰネットワーク等のプライベートネットワークをはじめとして、研修や訓示や講演等の映像や音声を同時に各社員の受信装置（ＰＣ等）に多地点配信（マルチキャスト）することが普及しつつある。
【０００３】
多地点配信を行うマルチキャストサーバからネットワークを介して送られる映像や音声等のマルチキャストパケットはＵＤＰであり、ＴＣＰによる再送処理がされないため、映像アプリケーションによるＦＥＣ等の保護が働くとしても、パケット損失の影響が映像や音声の品質に表れてしまうことがある。このため、様々なトラヒック形態やトラヒック量によってネットワーク内で発生するパケット損失率の特性を、把握しておくことは重要である。また、損失率以外にスイッチ等のバッファでの待ち合わせ時間や入出力トラヒックのバースト度なども同様である。
【０００４】
損失率やバッファでの待ち合わせ時間などの特性を把握するために、これまで様々な近似計算式が提案されているが、トラヒック形態やトラヒック量によってどの程度の誤差があるか不明な場合が大半であるため、実際にはシミュレーションも行い、それを用いて近似計算式の誤差を確認する必要がある。このように、トラヒックシミュレーションは現在でも重要な手段である。
【０００５】
シミュレーションを行って損失率を求める場合、バッファ長が長くなるにつれて、すなわち、損失率が極めて小さくなるにつれて、１個の損失を得られるまでの平均シミュレーション時間が長くなる。そこで、シミュレーション時間を短くするために、できるだけ少ない損失数で損失率を得たいが、損失数が何個であればよいのか、損失数の具体的な決定方法は無く、非特許文献１や非特許文献２に書かれているように、経験に基づいてシミュレーションが行われていた。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】村田正幸、大崎博之、原井洋明、宮原秀夫、“通信トラヒック理論とその応用〔ＶＩ〕−シミュレーション技法とその適用例−、”信学誌、ｖｏｌ．７８、ｎｏ．３、ｐｐ．２６４−２７０、Ｍａｒ．１９９５．
【非特許文献２】小川耕司、中川健治、“インポータンスサンプリングシミュレーション法における最適シミュレーション分布、”信学総大、通信（２）、Ｂ−６４６、ｐ．７８、Ｍａｒ．１９９６．
【非特許文献３】Ｒ．Ｓ．バーリントン・Ｄ．Ｃ．メイ著、林知己夫・脇本和昌監訳、「確率・統計解析ハンドブック」、森北出版、１９７５．
【発明の概要】
【発明が解決しようとする課題】
【０００７】
シミュレーション時間を短くするために、できるだけ少ない損失数で損失率を得たいが、損失数が何個であれば得られた損失率が有効か、具体的な決定方法はこれまで無かった。
【０００８】
そこで、本発明は、有効な損失率を得るために最低限必要な損失数を決定することが可能なシミュレーション方法、シミュレーション装置及びシミュレーションプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明は、シミュレーション時間を短くする、即ち、できるだけ少ない損失数で、統計的に有効な損失率を得る方法であり、シミュレーション中に損失が発生する度に、それまでの損失に関する統計量を計算し、統計的に有効と判定された時点で、損失率を計算して出力し、シミュレーションを終了する、ことを行う。
【００１０】
即ち、まず、シミュレーション中に、損失が発生する度に、その直前の損失との発生時間間隔を計算し、事前に設定した発生時間間隔の基準値と比較することにより、ランダムな損失と引き続く損失に分類する、ことを行う。
【００１１】
次に、前記ランダムな損失に分類された損失の発生時間間隔の平均値を計算し、当該平均値を用いて理論的な指数分布を想定し、該分布とそれまでに発生した損失の発生時間間隔を用いて、χ２（カイ二乗）検定を行うことにより統計的に有効かどうかを判定する、ことを行う。
【００１２】
具体的には、本発明のシミュレーション方法は、シミュレーションにおいて、得られた標本を分類する手順と、分類された標本の分布と分類された標本に想定される母集団の分布とを用いてχ２検定を行うことにより、分類された標本の分布が想定される母集団の分布と見なせるかどうか、即ち、分類された標本が統計的に有効かどうかを判定する手順と、統計的に有効と判定された時点でシミュレーションを終了する手順と、を順に有する。
【００１３】
具体的には、本発明のシミュレーション方法は、シミュレーション中にデータグラムの損失が発生したことを検出する損失検出手順と、前記損失検出手順において損失が発生する度に、直前に発生した損失との発生時間間隔を測定する時間間隔測定手順と、前記時間間隔測定手順で測定した発生時間間隔と予め設定した発生時間間隔と比較することにより、ランダムな損失と引き続く損失に分類する時間間隔判定手順と、ランダムな損失に分類された損失の発生時間間隔の平均値から求められる理論的な指数分布と前記時間間隔測定手順で測定したランダムな損失の全ての発生時間間隔をと用いて、χ２検定を行うことにより統計的に有効かどうかを判定する統計量判定手順と、統計的に有効と判定された時点で、それまでに生成した全データグラム数と前記損失検出手順で検出した全損失数を用いて損失率を算出して出力し、シミュレーションを終了するシミュレーション終了手順と、を順に有する。
【００１４】
本発明のシミュレーション方法では、χ２検定において、実度数を計数する区間数を４としてもよい。
【００１５】
本発明のシミュレーション方法では、χ２検定において、実度数を計数する４つの区間の各境界の値（３つ）を、前記想定された理論的な指数分布の累積確率分布が等しく０．２５ずつになる値としてもよい。
【００１６】
具体的には、本発明のシミュレーション装置はシミュレーションにおいて、得られた標本を分類する手段と、分類された標本の分布と分類された標本に想定される母集団の分布とを用いてχ２検定を行うことにより統計的に有効かどうかを判定する手段と、統計的に有効と判定された時点でシミュレーションを終了する手段と、を備える。
【００１７】
具体的には、本発明のシミュレーション装置は、シミュレーションにおいてデータグラムの損失が発生したことを検出する損失検出部と、前記損失検出部が損失を検出すると、直前に発生した損失との発生時間間隔を測定する時間間隔測定部と、前記時間間隔測定部の測定した発生時間間隔を予め設定した発生時間間隔と比較し、前記予め設定した発生時間間隔よりも時間間隔の長い発生時間間隔をランダム損失発生時間間隔として出力することにより、ランダムな損失と引き続く損失に分類する時間間隔判定部と、前記時間間隔判定部の出力したランダム損失発生時間間隔の平均値から求められる理論的な指数分布と前記時間間隔測定部で測定したランダムな損失の全ての発生時間間隔を用いて、χ２検定を行うことにより統計的に有効かどうかを判定するχ２検定部と、前記統計量判定部が統計的に有効と判定すると、全生成データグラム数及び前記損失検出部の検出した全損失数を用いて損失率を算出し、シミュレーションを終了させる損失率算出部と、を備える。
【００１８】
本発明のシミュレーション装置では、前記χ２検定部は、前記時間間隔判定部からのランダム損失発生時間間隔の平均値を計算し、これを用いて想定される母集団の理論的な分布（指数分布）を決定し、χ２検定のための分布の４つの区間の境目となる３つの臨界値を計算し、前記時間間隔判定部の出力した発生時間間隔を用いて各区間の実度数を計数する実度数計数部と、前記実度数計数部の計数した実度数と前記指数分布の各区間の理論度数を用いて統計量χ２を算出する統計量算出部と、前記統計量算出部の算出した統計量χ２を予め求められている臨界値と比較し、統計量が臨界値以下である場合に、統計的に有効であると判定する統計量判定部と、を備えてもよい。
【００１９】
具体的には、本発明のシミュレーションプログラムは、シミュレーションにおいて、得られた標本を分類する手順と、分類された標本の分布と分類された標本に想定される母集団の分布とを用いてχ２検定を行うことにより統計的に有効かどうかを判定する統計量判定手順と、統計的に有効と判定された時点でシミュレーションを終了するシミュレーション終了手順と、を順にコンピュータに実行させる。
【００２０】
なお、上記各発明は、可能な限り組み合わせることができる。
【発明の効果】
【００２１】
本発明により、統計的に有効と判断された時点でシミュレーションを終了させることができ、得られたシミュレーション結果（例えば、損失率や平均待ち合わせ時間など）の終了条件を明確にすることができる。また、必要がないシミュレーションを行わずに済ますことができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の第１の実施の形態におけるシミュレーション装置のブロック図である。
【図２】本発明の第１の実施の形態におけるシミュレーションのフローチャートである。
【図３】データグラムのトラヒックを発生させる２状態のＭＭＰＰ（Ｍａｒｋｏｖ  Ｍｏｄｕｌａｔｅｄ  Ｐｏｉｓｓｏｎ  Ｐｒｏｃｅｓｓ）の遷移図である。
【発明を実施するための形態】
【００２３】
添付の図面を参照して本発明の実施形態を説明する。以下に説明する実施形態は本発明の実施の例であり、本発明は、以下の実施形態に制限されるものではない。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。
【００２４】
図１に、本実施形態に係るシミュレーション装置の一例を示す。本実施形態に係るシミュレーション装置は、初期値記憶部１１と、データグラム生成部１２と、バッファ部１３と、損失検出部１４と、時間間隔測定部１５と、時間間隔判定部１６と、χ２検定部１７と、損失率算出部１８と、発生回数判定部１９と、を備える。χ２検定部１７は、実度数計数部２１と、実度数判定部２２と、統計量算出部２３と、統計量判定部２４と、を備える。
【００２５】
本実施形態に係るシミュレーション方法は、シミュレーションにおいて、得られた標本を分類する手順と、分類された標本の分布と分類された標本に想定される母集団の分布とを用いてχ２検定を行うことにより、分類された標本の分布が想定される母集団の分布と見なせるかどうか、即ち、分類された標本が統計的に有効かどうかを判定する手順と、統計的に有効と判定された時点で、シミュレーションを終了する手順と、を順に有する。得られた標本を分類する手順は、シミュレーションによってはスキップすることも可能である。
【００２６】
本実施形態に係るシミュレーション方法について、一例として、ケンドールの記法（または記号）によるＭＭＰＰ／Ｄ／１／Ｋのシミュレーションで実施する場合の動作について、図２に示すフローチャートを参照しながら説明する。本実施形態に係るシミュレーション方法は、損失検出手順と、時間間隔測定手順と、統計量判定手順と、シミュレーション終了手順を順に有する。損失検出手順では、ステップＳ１０１〜ステップＳ１０３を実行する。時間間隔測定手順では、ステップＳ１０４〜Ｓ１０５を実行する。統計量判定手順では、ステップＳ１０６〜Ｓ１１０を実行する。シミュレーション終了手順では、ステップＳ１１１〜Ｓ１１２を実行する。
【００２７】
本発明を使用する場合には、以下に述べる動作をシミュレーション中に行う。
ステップＳ１００では、シミュレーションに先立ち、初期値記憶部１１が、設定された初期値を記憶する（詳しくは後述）。
ステップＳ１０１では、データグラム生成部１２が、データグラムを生成してトラヒックを発生させる。本実施形態の場合、データグラムは固定長であり、以下、これを単位長とする。データグラムの生成方法は、任意であるが、例えば、コンピュータで擬似乱数を用いて生成する。本実施形態では、データグラム生成部１２は、初期値記憶部１１に設定されたＭＭＰＰパラメータを取得し、当該パラメータに従って、データグラムを生成する。
【００２８】
ステップＳ１０２では、データグラム生成部１２が、生成したデータグラムをバッファ部１３に出力する。これにより、バッファ部１３にデータグラムが書き込まれ、状況が損失検出部１４に通知される。バッファ部１３に書き込まれたデータグラムは、本実施形態の場合、１単位時間に１単位長（＝１データーグラム）が読み出される。尚、バッファ部１３は、生成したデータグラムをバッファに実際に書き込んでもよいが、少なくとも、空き又は使用中のバッファ量を管理でき、バッファに空きがないために損失が発生したことを把握できればよい。
【００２９】
ステップＳ１０３では、損失検出部１４が、バッファ部１３からの通知により、損失が発生したか否かを判定し、損失を検出する。
【００３０】
損失が発生した場合、損失検出部１４は、損失が発生した時刻を時間間隔測定部１５へ出力し、ステップＳ１０４へ移行する。一方、損失が発生しない場合、損失検出部１４は、次のデータグラムを生成する旨をデータグラム生成部１２へ通知し、ステップＳ１０１へ移行する。
ステップＳ１０４では、時間間隔測定部１５が、損失検出部１４から取得した時刻を用いて、損失が発生した時間間隔ｔを測定する。
【００３１】
ステップＳ１０５では、時間間隔判定部１６が、時間間隔測定部１５の測定した時間間隔ｔが閾値ＴＨ以上であるか否かを判定する。これにより、損失の発生時間間隔により、ランダムな損失（ランダムに発生する損失）と引き続く損失（ランダムに発生する損失に引き続く損失）に分類する。時間間隔が閾値ＴＨ以上である場合、すなわちランダムな損失である場合、時間間隔判定部１６は、時間間隔ｔを実度数計数部２１へ通知してステップＳ１０６へ移行し、以下χ２検定を行う。一方、ステップＳ１０５において時間間隔ｔが閾値ＴＨ未満である場合、すなわちランダムな損失でない場合、時間間隔判定部１６は、次のデータグラムを生成する旨をデータグラム生成部１２へ通知し、ステップＳ１０１のデータグラム生成に戻る。
【００３２】
ステップＳ１０６では、実度数計数部２１が、通知されたランダムな損失の発生時間間隔を記憶し、ランダムな損失の発生回数ｍを１つインクリメントする。
ステップＳ１０７では、実度数計数部２１が、それまでに記憶したランダムな損失の発生時間間隔を用いて、平均発生時間間隔を計算する。
次に、実度数計数部２１が、計算した平均発生時間間隔を用いて、χ２検定のためのＬ個の区間の境目となる（Ｌ−１）個の境界値を計算する。
次に、実度数計数部２１が、記憶しているランダムな損失の発生時間間隔を使って各区間ｉ（ｉ＝１，２，・・・，Ｌ）の実度数ｆｉを計数する。
【００３３】
ステップＳ１０８では、実度数判定部２２が、各区間ｉの実度数ｆｉがすべてｆｍｉｎ以上であるか否かを判定する。
すべての区間において実度数ｆｉがｆｍｉｎ以上である場合、実度数判定部２２は、各区間ｉの実度数ｆｉを統計量算出部２３へ出力してステップＳ１０９へ移行する。
一方、実度数ｆｉが５未満の区間がある場合、実度数判定部２２は、次のデータグラムを生成する旨をデータグラム生成部１２へ通知し、ステップＳ１０１のデータグラム生成に戻る。
【００３４】
ステップＳ１０９では、統計量算出部２３が、各区間ｉの実度数ｆｉからχ２検定用の統計量χ２を計算する。
【００３５】
ステップＳ１１０では、統計量判定部２４が、統計量χ２が臨界値χ０２よりも大きいか否かを判定する。統計量χ２≦臨界値χ０２の場合、統計量判定部２４は、その旨を損失率算出部１８へ通知してステップＳ１１１へ移行する。一方、統計量χ２＞臨界値χ０２の場合、統計量判定部２４は、ランダムな損失の発生回数ｍを発生回数判定部１９へ出力してステップＳ１１３へ移行する。
【００３６】
ステップＳ１１１では、損失率算出部１８が、損失検出部１４の検出した全損失数と、生成された全データグラムの数から、損失率を計算する。
ステップＳ１１２では、損失率算出部１８が、計算結果である損失率を出力する。
【００３７】
ステップＳ１１３では、発生回数判定部１９は、これまで発生したランダムな損失の発生回数ｍが最大発生回数Ｍよりも多いか否かを判定する。
ｍ≦Ｍの場合、発生回数判定部１９は、次のデータグラムを生成する旨をデータグラム生成部１２へ通知し、ステップＳ１０１へ移行してデータグラム生成に戻る。
ｍ＞Ｍの場合、発生回数判定部１９は、ステップＳ１１４を実行し、その旨を出力する。
【００３８】
ＭＭＰＰ／Ｄ／１／Ｋのシミュレーションの例の場合の、ステップＳ１００で設定する初期値、即ち、図２のフローチャートの初期設定部分の各項目について、初期値をどのような値に設定するのか等を、以下に説明する。
【００３９】
（ａ）ＭＭＰＰパラメータ値
ＭＭＰＰは、トラヒック発生形態の一つであるＭａｒｋｏｖ  Ｍｏｄｕｌａｔｅｄ  Ｐｏｉｓｓｏｎ  Ｐｒｏｃｅｓｓのことであり、図３に示すような、ランダムに切り替わる複数の異なる密度でトラヒックが発生するモデルである。ＭＭＰＰは複数の異なる密度のトラヒック発生状態を持つことができるが、図３の最も簡単な２状態を例に説明する。
・λ０とλ１は、状態０と状態１のそれぞれの状態で発生するデータグラムの平均到着率であり、通常、０以上１以下の値である。
・γ０１とγ１０は、それぞれ、ＭＭＰＰの状態０から状態１への遷移確率と、状態１から状態０への遷移確率であり、０以上１以下の値である。同様に、１−γ０１と１−γ１０は、それぞれ、状態０と状態１が続く確率である。
【００４０】
（ｂ）バッファサイズ（Ｋ−１）
発生したＭＭＰＰトラヒックが流入するバッファ部１３の大きさである。
【００４１】
（ｃ）しきい値ＴＨ
損失が発生する度に、その直前の損失との発生時間間隔ｔを計算する。しきい値ＴＨは、事前に設定した発生時間間隔ｔの基準値であり、これと比較することにより、ランダムな損失と引き続く損失に分類する。
【００４２】
（ｄ）臨界値χ０２
臨界値χ０２を設定するためには、まず、有意水準αを設定する必要がある。有意水準αは、それまでに得られた標本が指数分布に従っている場合に、標本から得られた統計量χ２が臨界値χ０２を超える確率（第１種過誤）がαである、という意味である。本実施形態では、標本にランダムな損失の発生時間間隔を用いる。
αの値は、通常５％または１％が用いられる。本実施形態では、後述する様に、自由度ｄ＝１としており、臨界値χ０２は統計量χ２の分布の統計数値表より、
α＝５％の時，χ０２＝３．８４１
α＝１％の時，χ０２＝６．６３５
である。
【００４３】
（ｅ）ランダムな損失数の最大値Ｍ
統計量χ２は損失数が増加すると増減しつつ次第に大きくなる傾向があるため、ランダムな損失数ｍが数百個程度までに終了しない場合には、統計量χ２≦臨界値χ０２にならない可能性も考えられる。この場合に対応するために、シミュレーションを終了させるランダムな損失数ｍの最大値Ｍを設定しておく（ランダムな損失数ｍが最大値Ｍを超えたら終了（ステップＳ１１３〜Ｓ１１４））。
なお、Ｌとｆｍｉｎについては後述する。
【００４４】
シミュレーション中に行う動作（ステップＳ１０５）で述べているランダムな損失と引き続く損失について説明する。
空きが大きい状態のバッファ部１３にＭＭＰＰトラヒックが入力することによって稀に損失が発生する場合には、損失はランダムに発生すると考えられる（ランダムな損失）。しかし、一度損失が発生した状態のバッファ部１３にＭＭＰＰトラヒックが入力することによって損失が発生する場合には、バッファ部１３内の空きがほとんど無いため、ゼロまたは極めて近い間隔で損失が発生することが多くなる（引き続く損失）。よって、前述のトラヒックモデルで発生する損失には、ランダムな損失と引き続く損失の２種類の損失が混在すると考えられる。
【００４５】
ランダムな損失の発生時間間隔は指数分布に従うと考えられ、ＭＭＰＰ／Ｄ／１／ＫのＤの出力時間すなわちバッファ部１３からのデータグラムの読み出し時間を１［単位時間］とすると、通常、発生時間間隔は数十万［単位時間］になり、発生時間間隔の存在確率は薄く広く分布する。一方、引き続く損失の発生時間間隔はゼロまたはゼロに近い値、例えば１００［単位時間］以下になることから、厳密ではないが、しきい値ＴＨにより分離できる。
【００４６】
シミュレーション中に行う動作（ステップＳ１０６〜Ｓ１１０）のχ２検定について概要を説明する。
シミュレーションで発生するランダムな損失の発生時間間隔（以下、ランダム損失発生時間間隔と記す）が指数分布に従っているかどうかの一致度合い（適合度）を数値的に評価し判定する方法として、χ２検定がある。χ２検定は、標本の分布が母集団（理論）分布にどの程度一致しているかの検定によく用いられる方法である。ランダムに発生する事象の生起間隔は指数分布になることが知られており、このような場合は母集団の分布として指数分布を想定する。これ以外に、対象となる事象により、二項分布や正規分布など様々な分布が想定される。
【００４７】
χ２検定では、まず、標本と母集団の分布の違いを統計量χ２として求める。ここでは、標本はランダム損失発生時間間隔ｗｊ（ｊ＝１，２，…，ｎ）であり、その集合をＷｎとする。また、母集団分布は指数分布である。統計量χ２は、一般に標本の分布が母集団分布に近づくほど値が小さくなる傾向がある。
【００４８】
次に、統計量χ２と予め求められている臨界値χ０２を比較し、統計量χ２が臨界値χ０２以下であれば、標本は有意水準α％で母集団分布であるとされる。具体的には、シミュレーションで順次ランダム損失発生時間間隔ｗｊを得る度にその集合Ｗｎに対してχ２検定を行い、指数分布であると判定された場合には、その時点の損失数とバッファ部１３への入力数から損失率を計算し、シミュレーションを終了する。尚、臨界値χ０２は、自由度ｄと有意水準α％を用いて、複雑な計算により求めることができるが、よく使われる値は非特許文献３などに統計数値表として示されている。
【００４９】
シミュレーション中に行う動作（ステップＳ１０７）のχ２検定の具体的な実装方法（４つの区間や境目となる３つの境界値など）について説明する。
【００５０】
・母集団分布のパラメータ
本実施形態では、母集団分布を指数分布とするが、そのパラメータ（平均と分散）は不明である。
そこで、標本からランダムな損失の平均発生時間間隔１／τを算出し、これを用いて母集団分布を推定する。指数分布では、平均値が１／τの時、分散は１／τ２である。そこで、新たな“ランダムな損失”の発生による新たな発生時間間隔のデータを得られる度に平均値を計算し、平均値から分散を計算し、母集団分布のパラメータとする。
【００５１】
・χ２検定の区間（カテゴリー）数Ｌ
χ２検定では、シミュレーションで得られたランダムな損失の各発生時間間隔ｗｊをその値により複数の区間の中のいずれかに分類し、実度数を計数する。このため、区間の数と各区間の範囲を決定する必要がある。
区間の数は、実際の検定では数個から数十個が使われているようであるが、計算時間の短縮及び計算負荷の軽減のためにできるだけ少ないことが要求される。
χ２検定では、自由度をｄ、区間数をＬ、標本から最尤推定したパラメータ数をｓとするとき、
（数１）
ｄ＝Ｌ−１−ｓ≧１    （１）
である。上述したように、母集団分布のパラメータは標本から推定した平均及び分散であるためｓ＝２である。ゆえに、式（１）から
（数２）
Ｌ≧４    （２）
となる。よって、区間数Ｌ＝４とする。
【００５２】
・区間の最小実度数ｆｍｉｎ
χ２検定では、各区間の標本数も自由に設定できる。ただし、χ２検定が成立する標本数は一般には５以上とされているため、本実施形態では、各区間の最小実度数ｆｍｉｎを５とする。これにより、本実施形態に必要な最低損失数は２０である。
【００５３】
・各区間の範囲
標本数が少ない場合、標本の値には偏りが生じていることが多い。しかし、標本数が多くなると指数分布に一致することが示されているため、指数分布を想定して各区間の範囲を決定することにする。
χ２検定を行うための区間数が４で、各区間の最小実度数ｆｍｉｎが５と等しいことから、区間の範囲は、指数分布における４区間の各累積確率分布が等しくなる、すなわち、０．２５になる範囲とすることが妥当と考えられる。
【００５４】
４区間を指数分布（ｗ≧０）の左側から区間ｉ（ｉ＝１，…，４）と呼ぶことにし、区間ｉと区間ｉ＋１との境界の値を境界値ｙｉ（但し、ｉ＝１，２，３）と呼ぶことにする。各境界値ｙｉは、式（１）から、
（数３）
０．２５×ｉ＝１−ｅｘｐ（−τｙｉ）    （３）
これを解いて、
（数４）
ｙｉ＝−ｌｏｇｅ（１−０．２５×ｉ）／τ    （４）
となる。
【００５５】
・χ２検定の統計量χ２
χ２検定を行うために、それまでに得られた標本の各ランダム損失発生時間間隔ｗｊを、式（４）で得られた３つの境界値を用いて４つの区間に分類する。もし、いずれかの区間の実度数ｆｉ（＝損失数）が最小実度数ｆｍｉｎである５未満のときは、再度、次のランダム損失発生までシミュレーションを進める（ステップＳ１０８）。
【００５６】
そして、全区間の実度数ｆｉが最小実度数ｆｍｉｎである５以上になった場合には、以下の式（５）の統計量χ２を計算する（ステップＳ１０９）。
【数５】
2013192005.tif 000003
ただし、Ｆｉは理論度数（実数）で、本実施形態では、
【数６】
2013192005.tif 000004
で表される。
【００５７】
このようにして求められた統計量χ２を用いて、χ２検定の臨界値χ０２と比較する（ステップＳ１１０）。
【００５８】
もし、統計量χ２＞臨界値χ０２の場合は、それまでに得られた標本値が有意水準αで統計的に指数分布に従っていないと判定されたことになるので、再度、次のランダム損失発生までシミュレーションを進める。
【００５９】
もし、統計量χ２≦臨界値χ０２となった場合には、ランダム損失については指数分布に従っていると判定されたことになり、損失率の計算（ステップＳ１１１）に進む。ステップＳ１１１では、それまでの全損失数を全入力数で割って損失率を計算し、シミュレーションを終了する。
【００６０】
なお、前述の動作を行う電子回路をハードウェア上に実装し、シミュレーションを行うことも可能である。ハードウェアとしては、論理素子を結合させた電子回路であり、ロジックＩＣ等を基板上に実装して実現してもよいし、ＦＰＧＡやＰＡＬ等で実現してもよいし、カスタムＬＳＩ中に実現してもよい。また、本発明の装置は、コンピュータとプログラムによっても実現でき、プログラムを記録媒体に記録することも、ネットワークを通して提供することも可能である。
【００６１】
以上、ＭＭＰＰ／Ｄ／１／Ｋのシミュレーションを行う場合について、本発明に係るシミュレーション方法、シミュレーション装置及びシミュレーションプログラムについて説明したが、本発明はＭＭＰＰ／Ｄ／１／Ｋのシミュレーションに限定されない。例えば、データグラムはＭＭＰＰ／Ｄ／１／Ｋ以外のＭ／Ｍ／１／Ｋ、Ｍ／Ｇ／１／Ｋ等のトラヒックシミュレーションにおいて用いられる任意の送受信データを用いることも可能である。尚、Ｋが有限の値の場合は有限バッファであり、Ｋを無限の値とする場合は無限バッファを意味する（無限バッファの場合は、Ｋが省略されて記される場合もある）。本発明は、ＩＰパケット、イーサネット（登録商標）フレーム、ＡＴＭセル、Ｘ．２５パケットなどの任意のデータグラムを使用した任意の通信システムのシミュレーションに適用され得る。
【産業上の利用可能性】
【００６２】
本発明は、統計的に有効と判断した時点でシミュレーションを終了させることができるため、必要がないシミュレーションを行わずに済ますことができ、得られたシミュレーション結果の終了条件を明確にすることができる。このため、様々なトラヒック形態やトラヒック量に対する損失率や平均待ち合わせ時間などのシミュレーションに利用することができる。
【００６３】
実施の形態では、インターネットにおけるコンサート等のライブインターネット配信や、今後の社内ＩＰネットワーク等のプライベートネットワークをはじめとした、研修や訓示や講演等の映像や音声を各社員の受信装置（ＰＣ等）に多地点配信（ＵＤＰを用いたマルチキャスト）する状況において必要となるＭＭＰＰ／Ｄ／１／Ｋの様々なトラヒック形態やトラヒック量における損失率を求めることを示したが、他の様々なトラヒック形態のシミュレーションにも適用できる。
【００６４】
さらに、通信分野のみならず、シミュレーションが最初に用いられた物理分野や交通システムや金融システムなどにおいても、本発明を用いることができる。
【符号の説明】
【００６５】
１１：初期値記憶部
１２：データグラム生成部
１３：バッファ部
１４：損失検出部
１５：時間間隔測定部
１６：時間間隔判定部
１７：χ２検定部
１８：損失率算出部
１９：発生回数判定部
２１：実度数計数部
２２：実度数判定部
２３：統計量算出部
２４：統計量判定部
【図１】
2013192005.tif 000005
【図２】
2013192005.tif 000006
【図３】
2013192005.tif 000007