(57)【要約】【課題】  信頼性の高いシミュレーションシステムを提供する。【解決手段】  シミュレーションシステム１は、同一の対象システム９００に関するシミュレーションを複数のシミュレータ４（シミュレーション処理の内容が異なる）で並行して実施し、所定の評価タイミングまでにそれぞれのシミュレータ４で生成されたシミュレート結果の中から、この評価タイミングにおけるユーザの要求に合致したシミュレート結果を選択し、このシミュレート結果に応じた最適化処理を対象システム９００に施す。【選択図】図１４
2006235983.tif 000002
【特許請求の範囲】
【請求項１】
シミュレーション管理装置と複数のシミュレータとを含むシミュレーションシステムであって、
前記複数のシミュレータそれぞれは、対象システムに関するシミュレーション処理を行って、シミュレート結果をそれぞれ生成し、
前記シミュレーション管理装置は、
前記複数のシミュレータのいずれかにより所定の評価タイミングまでに生成されたシミュレート結果を取得する結果取得手段と、
前記結果取得手段により取得されたシミュレート結果を評価するシミュレータ評価手段と、
前記シミュレータ評価手段による評価結果に応じて、前記評価タイミングまでに取得されたシミュレート結果の中から、適用すべきシミュレート結果を選択する選択手段と
を有する
シミュレーションシステム。
【請求項２】
前記選択手段は、前記評価結果が既定の条件を満たさない場合に、適用すべきシミュレート結果を選択しない
請求項１に記載のシミュレーションシステム。
【請求項３】
前記複数のシミュレータは、第１および第２のシミュレータを含み、
前記第１のシミュレータは、第１のシミュレーション処理を行い、
前記第２のシミュレータは、前記第１のシミュレーション処理とは異なる第２のシミュレーション処理を行う
請求項１に記載のシミュレーションシステム。
【請求項４】
前記第１のシミュレータは、対象システムに含まれる第１の領域についてシミュレーション処理を行い、
前記第２のシミュレータは、前記第１の領域の一部が含まれる第２の領域についてシミュレーション処理を行う
請求項３に記載のシミュレーションシステム。
【請求項５】
前記第１のシミュレータは、前記対象システムに含まれる第１の領域についてシミュレーション処理を行い、
前記第２のシミュレータは、前記第１の領域よりも広い第２の領域についてシミュレーション処理を行う
請求項３に記載のシミュレーションシステム。
【請求項６】
前記第１のシミュレーション処理に要する処理時間は、前記第２のシミュレーション処理に要する処理時間よりも短い
請求項３に記載のシミュレーションシステム。
【請求項７】
前記第１のシミュレータは、既定の時点までに、前記第１のシミュレーション処理を繰り返し、
前記シミュレーション管理装置は、繰り返しなされた第１のシミュレーション処理のシミュレーション結果と、前記第２のシミュレーション処理のシミュレーション結果とに基づいて、適用すべきシミュレーション結果を決定する
請求項６に記載のシミュレーションシステム。
【請求項８】
前記第１のシミュレータは、第１の時点における前記対象システムの状況を初期値として、シミュレーション処理を行い、
前記第２のシミュレータは、前記第１の時点とは異なる第２の時点における前記対象システムの状況を初期値として、シミュレーション処理を行う
請求項３に記載のシミュレーションシステム。
【請求項９】
前記第１のシミュレータは、第１のパラメータを最適化する前記第１のシミュレーション処理を行い、
前記第２のシミュレータは、前記第１のパラメータとは異なる第２のパラメータを最適化する前記第２のシミュレーション処理を行う
請求項３に記載のシミュレーションシステム。
【請求項１０】
前記第１のシミュレータは、前記対象システムに含まれる複数の領域それぞれに対するシミュレート結果に基づいて、前記対象システムに関する第１のシミュレーション処理を行い、
前記第２のシミュレータは、前記対象システムに関する単一のシミュレーション処理を行う
請求項３に記載のシミュレーションシステム。
【請求項１１】
前記複数のシミュレータそれぞれは、前記対象システムと並行して、シミュレーション処理を行う
請求項１〜１０のいずれかに記載のシミュレーションシステム。
【請求項１２】
前記シミュレータ評価手段は、ユーザから入力される評価基準に応じて、前記シミュレート結果を評価する
請求項１に記載のシミュレーションシステム。
【請求項１３】
前記シミュレータ評価手段は、
ユーザから入力される複数の評価基準それぞれについて、前記シミュレート結果から評価値を抽出する評価値抽出手段と、
前記評価値抽出手段により複数の評価基準それぞれについて抽出された評価値に対して、所定の重み付けを行って、最終評価値を生成する重み付け手段と
を有する
請求項１２に記載のシミュレーションシステム。
【請求項１４】
前記シミュレータ評価手段は、ユーザから入力されるユーザの主観評価値に基づいて、前記シミュレート結果を評価する
請求項１に記載のシミュレーションシステム。
【請求項１５】
前記結果取得手段は、複数の前記評価タイミングそれぞれで、いずれかのシミュレータにより生成されたシミュレート結果を取得し、
前記シミュレータ評価手段は、前記複数の評価タイミングそれぞれにおいて、取得されたシミュレート結果を評価し、
前記選択手段は、前記複数の評価タイミングそれぞれについて、適用すべきシミュレート結果を選択し、
前記シミュレーション管理装置は、
前記選択手段により選択されたシミュレート結果に基づいて、前記対象システムの調整を指示するシステム調整手段
をさらに有する
請求項１に記載のシミュレーションシステム。
【請求項１６】
前記シミュレーション管理装置は、
前記システム調整手段により指示された調整の影響を評価する影響評価手段
をさらに有し、
前記シミュレータ評価手段は、前記影響評価手段により評価された影響に基づいて、前記シミュレート結果を評価する
請求項１５に記載のシミュレーションシステム。
【請求項１７】
前記シミュレーション管理装置は、
前記影響評価手段により前記複数のタイミングそれぞれで評価された影響の評価値を記憶する影響評価値記憶手段
をさらに有し、
前記シミュレータ評価手段は、前記影響評価値記憶手段により記憶されている影響の評価値を用いて、前記シミュレート結果を評価する
請求項１６に記載のシミュレーションシステム。
【請求項１８】
対象システムのシミュレーションを管理するシミュレーション管理装置であって、
所定の評価タイミングまでに、複数のシミュレート結果を取得する結果取得手段と、
前記結果取得手段により取得された複数のシミュレート結果を評価するシミュレータ評価手段と、
前記シミュレータ評価手段による評価結果に応じて、適用すべきシミュレート結果を選択する選択手段と
を有するシミュレーション管理装置。
【請求項１９】
前記結果取得手段は、複数の前記評価タイミングそれぞれまでに、複数のシミュレート結果をそれぞれ取得し、
前記シミュレータ評価手段は、前記複数の評価タイミングそれぞれにおいて、それぞれの評価タイミングまでに取得された前記シミュレート結果を評価し、
前記選択手段は、前記複数の評価タイミングそれぞれについて、適用すべきシミュレート結果を選択し、
前記複数の評価タイミングに対応するタイミングで、前記選択手段により選択されたシミュレート結果それぞれに基づいて、前記対象システムを調整するシステム調整手段
をさらに有する請求項１８に記載のシミュレーション管理装置。
【請求項２０】
互いに並行して前記対象システムのシミュレーション処理を行い、それぞれシミュレート結果を生成する複数のシミュレート手段
をさらに有し、
前記結果取得手段は、前記複数のシミュレート手段のいずれかにより生成されるシミュレート結果を前記評価タイミングまでに取得する
請求項１８に記載のシミュレーション管理装置。
【請求項２１】
対象システムのシミュレーションを行うシミュレーション方法であって、
前記対象システムに関する第１のシミュレーション処理を行って、第１のシミュレート結果を生成し、
前記対象システムに関する第２のシミュレーション処理を行って、第２のシミュレート結果を生成し、
前記第１および第２のシミュレート結果のうち、所定の評価タイミングまでに生成されたシミュレート結果を取得し、
取得された少なくとも１つのシミュレート結果を評価し、
評価結果に応じて、前記評価タイミングまでに取得されたシミュレート結果の中から、適用すべきシミュレート結果を選択する
シミュレーション方法。
【請求項２２】
コンピュータを含むシミュレーション管理装置において、
所定の評価タイミングまでに生成されたシミュレート結果を取得するステップと、
取得された少なくとも１つのシミュレート結果を評価するステップと、
評価結果に応じて、前記評価タイミングまでに取得されたシミュレート結果の中から、適用すべきシミュレート結果を選択するステップと
を前記シミュレーション管理装置に実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のシミュレータを用いて対象システムをシミュレートするシミュレーションシステムおよびその方法に関する。
【背景技術】
【０００２】
例えば、非特許文献１および非特許文献２には、１つのシミュレーションを複数の分散シミュレータで分担し、部分的なシミュレーションの結果を統合する並列分散シミュレーション技術が開示されている。
【非特許文献１】http://www.icot.or.jp/
【非特許文献２】http://www.cc.gatech.edu/computing/compass/pdns/
【発明の開示】
【発明が解決しようとする課題】
【０００３】
本発明は、上述のような背景からなされたものであり、信頼性の高いシミュレーションシステムおよびその方法を提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記目的を達成するために、本発明に係るシミュレーションシステムは、シミュレーション管理装置と複数のシミュレータとを含むシミュレーションシステムであって、前記複数のシミュレータそれぞれは、対象システムに関するシミュレーション処理を行って、シミュレート結果をそれぞれ生成し、前記シミュレーション管理装置は、前記複数のシミュレータのいずれかにより所定の評価タイミングまでに生成されたシミュレート結果を取得する結果取得手段と、前記結果取得手段により取得されたシミュレート結果を評価するシミュレータ評価手段と、前記シミュレータ評価手段による評価結果に応じて、前記評価タイミングまでに取得されたシミュレート結果の中から、適用すべきシミュレート結果を選択する選択手段とを有する。
【０００５】
好適には、前記選択手段は、前記評価結果が既定の条件を満たさない場合に、適用すべきシミュレート結果を選択しない。
【０００６】
好適には、前記複数のシミュレータは、第１および第２のシミュレータを含み、前記第１のシミュレータは、第１のシミュレーション処理を行い、前記第２のシミュレータは、前記第１のシミュレーション処理とは異なる第２のシミュレーション処理を行う。
【０００７】
好適には、前記第１のシミュレータは、対象システムに含まれる第１の領域についてシミュレーション処理を行い、前記第２のシミュレータは、前記第１の領域の一部が含まれる第２の領域についてシミュレーション処理を行う。
好適には、前記第１のシミュレータは、前記対象システムに含まれる第１の領域についてシミュレーション処理を行い、前記第２のシミュレータは、前記第１の領域よりも広い第２の領域についてシミュレーション処理を行う。
【０００８】
好適には、前記第１のシミュレーション処理に要する処理時間は、前記第２のシミュレーション処理に要する処理時間よりも短い。
【０００９】
好適には、前記第１のシミュレータは、既定の時点までに、前記第１のシミュレーション処理を繰り返し、前記シミュレーション管理装置は、繰り返しなされた第１のシミュレーション処理のシミュレーション結果と、前記第２のシミュレーション処理のシミュレーション結果とに基づいて、適用すべきシミュレーション結果を決定する。
【００１０】
好適には、前記第１のシミュレータは、第１の時点における前記対象システムの状況を初期値として、シミュレーション処理を行い、前記第２のシミュレータは、前記第１の時点とは異なる第２の時点における前記対象システムの状況を初期値として、シミュレーション処理を行う。
【００１１】
好適には、前記第１のシミュレータは、第１のパラメータを最適化する前記第１のシミュレーション処理を行い、前記第２のシミュレータは、前記第１のパラメータとは異なる第２のパラメータを最適化する前記第２のシミュレーション処理を行う。
【００１２】
好適には、前記第１のシミュレータは、前記対象システムに含まれる複数の領域それぞれに対するシミュレート結果に基づいて、前記対象システムに関する第１のシミュレーション処理を行い、前記第２のシミュレータは、前記対象システムに関する単一のシミュレーション処理を行う。
【００１３】
好適には、前記複数のシミュレータそれぞれは、前記対象システムと並行して、シミュレーション処理を行う。
【００１４】
好適には、前記シミュレータ評価手段は、ユーザから入力される評価基準に応じて、前記シミュレート結果を評価する。
【００１５】
好適には、前記シミュレータ評価手段は、ユーザから入力される複数の評価基準それぞれについて、前記シミュレート結果から評価値を抽出する評価値抽出手段と、前記評価値抽出手段により複数の評価基準それぞれについて抽出された評価値に対して、所定の重み付けを行って、最終評価値を生成する重み付け手段とを有する。
【００１６】
好適には、前記シミュレータ評価手段は、ユーザから入力されるユーザの主観評価値に基づいて、前記シミュレート結果を評価する。
【００１７】
好適には、前記結果取得手段は、複数の前記評価タイミングそれぞれで、いずれかのシミュレータにより生成されたシミュレート結果を取得し、前記シミュレータ評価手段は、前記複数の評価タイミングそれぞれにおいて、取得されたシミュレート結果を評価し、前記選択手段は、前記複数の評価タイミングそれぞれについて、適用すべきシミュレート結果を選択し、前記シミュレーション管理装置は、前記選択手段により選択されたシミュレート結果に基づいて、前記対象システムの調整を指示するシステム調整手段をさらに有する。
【００１８】
好適には、前記シミュレーション管理装置は、前記システム調整手段により指示された調整の影響を評価する影響評価手段をさらに有し、前記シミュレータ評価手段は、前記影響評価手段により評価された影響に基づいて、前記シミュレート結果を評価する。
【００１９】
好適には、前記シミュレーション管理装置は、前記影響評価手段により前記複数のタイミングそれぞれで評価された影響の評価値を記憶する影響評価値記憶手段をさらに有し、前記シミュレータ評価手段は、前記影響評価値記憶手段により記憶されている影響の評価値を用いて、前記シミュレート結果を評価する。
【００２０】
また、本発明にかかるシミュレーション管理装置は、対象システムのシミュレーションを管理するシミュレーション管理装置であって、所定の評価タイミングまでに、複数のシミュレート結果を取得する結果取得手段と、前記結果取得手段により取得された複数のシミュレート結果を評価するシミュレータ評価手段と、前記シミュレータ評価手段による評価結果に応じて、適用すべきシミュレート結果を選択する選択手段とを有する。
【００２１】
好適には、前記結果取得手段は、複数の前記評価タイミングそれぞれまでに、複数のシミュレート結果をそれぞれ取得し、前記シミュレータ評価手段は、前記複数の評価タイミングそれぞれにおいて、それぞれの評価タイミングまでに取得された前記シミュレート結果を評価し、前記選択手段は、前記複数の評価タイミングそれぞれについて、適用すべきシミュレート結果を選択し、前記複数の評価タイミングに対応するタイミングで、前記選択手段により選択されたシミュレート結果それぞれに基づいて、前記対象システムを調整するシステム調整手段をさらに有する。
【００２２】
好適には、互いに並行して前記対象システムのシミュレーション処理を行い、それぞれシミュレート結果を生成する複数のシミュレート手段をさらに有し、前記結果取得手段は、前記複数のシミュレート手段のいずれかにより生成されるシミュレート結果を前記評価タイミングまでに取得する。
【００２３】
また、本発明にかかるシミュレーション方法は、対象システムのシミュレーションを行うシミュレーション方法であって、前記対象システムに関する第１のシミュレーション処理を行って、第１のシミュレート結果を生成し、前記対象システムに関する第２のシミュレーション処理を行って、第２のシミュレート結果を生成し、前記第１および第２のシミュレート結果のうち、所定の評価タイミングまでに生成されたシミュレート結果を取得し、取得された少なくとも１つのシミュレート結果を評価し、評価結果に応じて、前記評価タイミングまでに取得されたシミュレート結果の中から、適用すべきシミュレート結果を選択する。
【００２４】
また、本発明にかかるプログラムは、コンピュータを含むシミュレーション管理装置において、所定の評価タイミングまでに生成されたシミュレート結果を取得するステップと、取得された少なくとも１つのシミュレート結果を評価するステップと、評価結果に応じて、前記評価タイミングまでに取得されたシミュレート結果の中から、適用すべきシミュレート結果を選択するステップとを前記シミュレーション管理装置に実行させる。
【発明の効果】
【００２５】
本発明によれば、特に変動する環境下において信頼性の高いシステムを提供することができる。
【発明を実施するための最良の形態】
【００２６】
［システムの概要］
図１は、本実施形態における第１のシミュレーションシステム１の概要を説明する図である。
図１に例示するように、第１のシミュレーションシステム１は、シミュレーション管理装置２、および、複数のシミュレータ４を含む。
複数のシミュレータ４は、対象システム９００から現状データを取得し、取得された現状データに基づいて、この対象システム９００のシミュレーションを行って、シミュレート結果をシミュレーション管理装置２に送信する。ここで、現状データとは、対象システム９００における所定の時点（現時点など）における構成または機能等を示すデータであり、例えば、対象システム９００で計測される実測データである。
例えば、各シミュレータ４は、ＩＥＥＥ１５１６ＨＬＡ／ＲＴＩに準拠したコンピュータ装置であり、対象システム９００の動作と並行して、この対象システムの少なくとも一部についてのシミュレーションを行い、この対象システムを最適化するためのパラメータを算出する。
これらのシミュレータ４は、互いに異なるシミュレーション処理を行う。
【００２７】
シミュレーション管理装置２は、例えば、ＩＥＥＥ１５１６ＨＬＡ／ＲＴＩに準拠したコンピュータ装置である。
シミュレーション管理装置２は、複数のシミュレータ４により生成された複数のシミュレート結果の中から、所望のシミュレート結果を選択し、選択されたシミュレート結果に応じて、対象システムの調整パラメータを生成する。
生成される調整パラメータは、対象システム９００の調整処理に用いられる。
なお、シミュレータ４およびシミュレーション管理装置２は、それぞれ、複数のコンピュータ装置で構成された分散処理システムで実現されてもよい。
【００２８】
図２は、対象システム９００（図１）を例示する図である。
図２に例示するように、対象システム９００は、複数の情報提供装置９０２、および、複数のデータベースシステム（ＤＢシステム）９０４からなり、これらの情報装置９０２およびＤＢシステム９０４は、ネットワークを介して相互に接続している。
これらの情報提供装置９０２は、分散処理システムを構成しており、複数の情報入力源から供給される部品コンテンツを互いに共有する。
そして、情報提供装置９０２は、これらの部品コンテンツ群から、ユーザが要求する部品コンテンツを収集し、レンダリングしてそれぞれのユーザ端末に提供する。
【００２９】
このような対象システム９００においては、ユーザ端末からの要求をいずれの情報提供装置９０２に振り分けるか（負荷分散）、いずれのネットワーク経路を経由して部品コンテンツを収集し配信するか（ネットワーク経路）、および、情報入力源から提供される部品コンテンツをいずれのＤＢシステム９０４に格納するか（格納領域の割り当て）が重要になってくる。
特に、ユーザ端末からの要求数、および個々に要求されるサービス品質、ネットワーク経路上の輻輳状況、ならびに、情報入力源から提供される部品コンテンツのデータ量などは、時間変動するため、静的なシミュレーションでは、適切な最適化を図ることができない。
また、このような対象システム９００の性能に対する要求も種々存在し、変化することがある。例えば、ある時間帯では、多数のアクセスが集中するために、サービス提供に要する時間を最小にしたいという要求が最優先となり、また、ある時間帯では、通信費用をできるだけ抑えたいという要求が最優先となることもある。
【００３０】
なお、本例では、分散処理システムを対象システム９００の一例としたが、これに限定されるものではなく、例えば、以下のシステムも対象システム９００となりうる。
（１）コンテンツの記憶場所またはデータキャッシングの方針を動的に変更してコンテンツの配信を最適化するシステム
（２）移動端末の無線通信方式パラメータを最適化するシステム
（３）アドホックネットワークにおける通信経路を最適化するシステム
（４）クラスタ化またはグリッド化された処理システムにおける負荷分散を最適化するシステム
（５）株取引を最適化するシステム
（６）ハイブリッドカーにおける動力源の切替えを最適化するシステム
（７）ＩＥＥＥ１５１６ＨＬＡ／ＲＴＩなどの分散シミュレーション基盤におけるデータ配信および処理ノードのトポロジーの最適化を図るシステム
【００３１】
図３および図４は、シミュレーションシステム１による最適化処理の概要を説明する図である。
図３は、互いに異なる最適化アルゴリズムを適用して複数のシミュレーションが並行して実施される場合を説明する。なお、本図および図４において、対象システムに含まれるノード（図中の丸）は、情報提供装置９０２またはＤＢシステム９０４に相当し、これらのノードを結ぶ直線は、通信経路に相当する。
図３に例示するように、第１のシミュレータ４Ａ（図１）は、処理速度に関するパラメータを最適化すべく、対象システムのシミュレーション処理を行い、シミュレート結果Ａを生成する。
また、第２のシミュレータ４Ｂは、通信費用に関するパラメータを最適化すべく、対象システムのシミュレーション処理を行い、シミュレート結果Ｂを生成する。
また、第３のシミュレータ４Ｃは、処理速度および通信費用を同じ比率で最適化すべく、対象システムのシミュレーション処理を行い、シミュレート結果Ｃを生成する。
すなわち、これらのシミュレータ４は、互いに異なる最適化アルゴリズムを適用して、対象システムの最適化を行い、それぞれ最適化条件を提出する。
【００３２】
例えば、評価タイミングＡでは、対象システム９００に対して、通信費用を抑えることが要求されている。
この場合に、シミュレーション管理装置２は、評価タイミングＡまでにシミュレータ４から提出されたシミュレート結果の中から、通信費用を最も抑えることができるシミュレート結果（本例では、シミュレート結果Ｂ）を選択し、選択されたシミュレート結果に対応する調整パラメータを対象システム９００に送信する。
これにより、対象システム９００は、評価タイミングＡの後に、通信費用を最も抑える状態に調整される。
【００３３】
また、時間と共に対象システム９００に対する要求が変化する場合がある。
そして、評価タイミングＢでは、通信費用を抑えることに加えて、処理速度を目標値以上にすることが要求されている。
この場合に、シミュレーション管理装置２は、評価タイミングＢまでにシミュレータ４から提出されたシミュレート結果の中から、通信費用を最も抑えると共に、処理速度を目標値以上に維持することができるシミュレート結果（本例では、シミュレート結果Ｃ）を選択し、選択されたシミュレート結果に対応する調整パラメータを対象システム９００に送信する。
これにより、対象システム９００は、評価タイミングＢの後に、通信費用を最も抑えると共に、処理速度を目標値以上に維持するように調整される。
【００３４】
このように、本シミュレーションシステム１は、それぞれの評価タイミングまでに提出されたシミュレート結果の中から、それぞれの評価タイミングにおける要求に応じて、最適なシミュレート結果を選択し、対象システム９００を調整する。
これにより、対象システム９００に対する要求が変化する場合にも、それぞれの時点における要求にマッチした最適化処理が実現される。
また、複数のシミュレータ４で適用される最適化アルゴリズムのバリエーションが十分に豊富である場合には、対象システム９００の構成が少し更新されたとしても、この更新後の対象システム９００に適合した最適化アルゴリズムが、いずれかのシミュレータ４で適用されている可能性もある。
したがって、本シミュレーションシステム１は、対象システム９００が時間変動する場合にも、適切な最適化処理を行うことが期待できる。
【００３５】
図４は、互いに異なる領域単位で複数のシミュレーションが並行して実施される場合を説明する。
図４に例示するように、第１のシミュレータ４Ａ（図１）は、対象システムに含まれる対象領域１のみをシミュレーション処理を行い、シミュレート結果Ａ１およびシミュレート結果Ａ２を生成する。
また、第２のシミュレータ４Ｂは、対象システムに含まれる対象領域１および対象領域２のシミュレート結果に基づいて、対象システム全体のシミュレート結果Ｂを生成する。なお、第２のシミュレータ４Ｂは、対象領域１または対象領域２のシミュレート結果を、他のシミュレータから取得してもよいし、自ら生成してもよい。
また、第３のシミュレータ４Ｃは、対象システム全体を対象として単一のシミュレーションを行い、シミュレート結果Ｃを生成する。
【００３６】
このような場合に、対象領域１のみを対象とする第１のシミュレータ４Ａの処理時間は、第２のシミュレータ４Ｂおよび第３のシミュレータ４Ｃの処理時間よりも短い場合が多い。
また、対象領域１および対象領域２のシミュレート結果を統合する第２のシミュレータ４Ｂの処理時間は、対象システム全体を対象とする第３のシミュレータの処理時間よりも短い場合が多い。
したがって、本例では、評価タイミングＢまでの期間に、第１のシミュレータ４Ａは、シミュレーション処理を２回繰り返すことができる。
そして、２回目のシミュレーションは、１回目のシミュレーション（初期値Ｐ１に基づいてなされる）の後で行われるため、より遅い時点における対象システムの現状データ（初期値Ｐ２）に基づいてなされる。
【００３７】
例えば、評価タイミングＡでは、シミュレート結果Ｃが採用される。
これは、例えば、シミュレーションの対象領域が広いほど、それぞれの領域の相互作用を考慮して、より正確なシミュレーションがなされる場合が多いからである。
これにより、対象システム９００には、評価タイミングＡの後に、シミュレート結果Ｃに応じた最適化処理が施される。
【００３８】
そして、評価タイミングＢでは、シミュレート結果Ａ２が採用される。
これは、シミュレート結果Ａ２は、シミュレート結果Ｃに基づく最適化処理が対象システム９００に適用された後の現状データ（初期値Ｐ２）に基づいて生成されたものであり、対象システム９００の変化に対応した最適化処理だからである。
また、このような対象システム９００の変化の影響が局所的である場合などには、対象システム９００の一部（対象領域１）のみを対象としたシミュレーションであっても十分な最適化が期待できるからである。
【００３９】
このように、本シミュレーションシステム１は、シミュレート結果が生成されるまでの時間（処理時間）が異なる複数のシミュレーション処理を並行して実施し、評価タイミングにおける最良なシミュレート結果を採用する。
これにより、本シミュレーションシステム１は、種々の時間間隔で対象システム９００の最適化を行うことが可能となり、変動周期の短い対象システムおよび変動周期の長い対象システムのいずれにも対応できる。
【００４０】
また、本例では、対象システム全体を対象としたシミュレーションのシミュレート結果Ｃを採用した後に、この採用後の初期値Ｐ２を用いたシミュレート結果Ａ２を採用することにより、シミュレート結果Ｃとシミュレート結果Ａ２との統合が実現されている。
すなわち、シミュレーションシステム１は、対象領域の範囲が異なる複数のシミュレーション（処理時間が異なる）を並行して実施し、処理時間の短いシミュレーション（すなわち、対象領域の狭いシミュレーション）を繰り返すことにより、対象領域の広さが異なる複数のシミュレーションの結果を統合することができる。
【００４１】
また、本シミュレーションシステム１に含まれるシミュレータ４は、それぞれ独自のタイミングでシミュレーション処理を行い、シミュレート結果をシミュレーション管理装置２に提出するだけでよい。
すなわち、各シミュレータ４は独立性が高く、いずれかのシミュレータ４が停止した場合、シミュレータ４が追加された場合、または、いずれかのシミュレータ４に対して更新作業が施された場合でも、シミュレーションシステム１全体で実現される最適化処理に対する影響はそれほど大きくない。
したがって、本シミュレーションシステム１は、高い耐障害性およびスケーラビリティを有する。
【００４２】
［ハードウェア構成］
図５は、図１に示したシミュレーション管理装置２およびシミュレータ４のハードウェア構成を例示する図である。
図５に示すように、シミュレーション管理装置２およびシミュレータ４は、ＣＰＵ２０２およびメモリ２０４およびこれらの周辺回路などを含む本体２００、表示装置、キーボードおよびマウスなどを含む入出力装置２０６、ネットワークを介して他のシステム構成要素（シミュレーション管理装置２、シミュレータ４または対象システム９００）との間の通信を行う通信装置２１０、および、ＦＤ装置、ＣＤ装置およびＨＤＤ装置などの記録装置２１２から構成される。
つまり、シミュレーション管理装置２およびシミュレータ４は、ネットワークを介して互いに通信が可能な一般的なコンピュータとしての構成部分を有している。
【００４３】
図６は、図５に示したシミュレーション管理装置２上で実行される第１のシミュレーション管理プログラム５の構成を示す図である。
図６に示すように、シミュレーション管理プログラム５は、結果取得部５００、シミュレータ評価部５１０、選択部５２０およびシステム調整部５３０から構成される。
また、シミュレータ評価部５１０は、評価値抽出部５１２および重み付け部５１４を含む。
【００４４】
シミュレーション管理プログラム５は、記録媒体２１４（図５）あるいは通信装置２１０（図５）などを介してシミュレーション管理装置２に供給され、メモリ２０４にロードされて実行される。
【００４５】
シミュレーション管理プログラム５において、結果取得部５００は、所定の評価タイミングまでにシミュレータ４（図１）により生成されたシミュレート結果を取得し、取得されたシミュレート結果をシミュレータに対応付けてシミュレータ評価部５１０に出力する。
本例の結果取得部５００は、所定の評価タイミングに対応する時点まで、シミュレータ４から提出されるシミュレート結果を逐次取得するが、これに限定されるものではなく、例えば、評価タイミングに対応するタイミングで、複数のシミュレータ４にシミュレート結果を要求してもよい。
また、本例の評価タイミングは、予め設定された周期的なタイミングであるが、例えば、ユーザから対象システムの最適化を要求されたタイミング、または、対象システムに既定のイベントが発生したタイミング（システムの更新動作など）であってもよい。
【００４６】
シミュレータ評価部５１０は、それぞれの評価タイミングまでに取得されたシミュレート結果に対して評価を行い、評価値を生成する。
本例の評価値は、シミュレート結果から抽出されるデータに基づいて生成される客観評価値と、ユーザから入力されたユーザの主観評価値とを含む。
【００４７】
より具体的には、評価値抽出部５１２は、取得されたシミュレート結果の中から、最適化後の状況を示す予測データ（例えば、処理速度、通信費用）を抽出する。
また、評価値抽出部５１２は、ユーザから指定された評価基準に応じて、抽出された予測データを評価し、客観評価値を生成する。
また、評価値抽出部５１２は、ユーザから、各シミュレータ４に対する主観評価値の入力を受けつける。
ここで、主観評価値とは、予め定められた評価基準に基づく客観評価値とは別個の評価値であって、ユーザによって入力される評価値である。主観評価値は、客観評価値による判定に対して、システムのユーザが介入するための評価値であり、ユーザの好み、経験、その他の情報をシミュレート結果の評価に反映させることを可能にする。
例えば、ユーザは、たとえ優れた実績を有するシミュレータ４であっても、このシミュレータ４を信頼できないという疑いを抱いた場合には、このシミュレータ４の評価値を下げるような主観評価値を評価値抽出部５１２（シミュレーション管理装置２）に入力することができる。
また、主観評価値は、客観評価値の評価基準では想定されていない事態が突発的に発生した場合にユーザが介入するための評価値であってもよく、このような想定外の事態に対するユーザの予測結果（影響の大きさ、および、影響が及ぶ範囲など）を、シミュレート結果の評価に反映させることを可能にする。
例えば、ある社会的な事件が起こったためにネットワーク上のトラフィックが急増することがあるが、客観評価値の評価基準がこのような事態を想定していない場合もある。このような場合に、ユーザは、トラフィックの急増を予測して、必要な地域での許容トラフィックを大きくすることに高い評価を与えるように、主観評価値を入力するか、あるいはシミュレート結果をユーザがレビューして、所要地域の許容トラフィックが大きくなるシミュレート結果に対して高い主観評価値を付与することができる。
【００４８】
重み付け部５１４は、生成された客観評価値、および、入力された主観評価値に対して重み付け係数をかけて合算し、この合算値を最終評価値として選択部５２０に出力する。
【００４９】
選択部５２０は、シミュレータ評価部５１０から入力された最終評価値に基づいて、評価タイミングまでに生成されたシミュレート結果の中から、適用すべきシミュレート結果を選択する。
本例の選択部５２０は、入力された最終評価値が最も大きい１つのシミュレート結果（すなわち、最も確からしいと判断されたシミュレート結果）を選択し、選択されたシミュレート結果をシステム調整部５３０に出力する。
また、選択部５２０は、シミュレータ評価部５１０から入力された最終評価値が既定の条件を満たすことを条件として、適用すべきシミュレート結果を選択する。換言すると、選択部５２０は、入力された最終評価値が既定の条件を満たさない場合に、適用すべきシミュレート結果を選択しない。
例えば、選択部５２０は、シミュレータ評価部５１０から入力された最終評価値が既定の閾値以下である場合に、シミュレート結果を選択しない。
すなわち、各シミュレータ４から提供されたシミュレート結果について、適用する効果がいずれも薄いと判断される場合に、シミュレート結果に応じた調整処理を対象システム９００に対して施さない。
【００５０】
システム調整部５３０は、選択部５２０により選択されたシミュレート結果に応じた調整処理（最適化処理）を、評価タイミングに対応するタイミングで対象システム９００（図１）に施す。
調整処理が施されるタイミングは、次の評価タイミングよりも前であることが望ましい。
なお、本例のシステム調整部５３０は、選択されたシミュレート結果に対応する調整パラメータを対象システム９００に送信することにより、対象システム９００の調整処理を行う。
【００５１】
図７（Ａ）は、結果取得部５００により取得されるシミュレート結果を例示し、図７（Ｂ）は、評価値抽出部５１２に入力される評価基準を例示する図である。
図７（Ａ）に例示するように、結果取得部５００は、各シミュレーションによる最適化処理後の対象システムを規制する構成パラメータと、この最適化処理後の対象システムの性能を示す予測データ（処理速度、通信費用、応答時間等）とを、それぞれのシミュレーション（すなわち、シミュレータの識別情報およびこのシミュレータで適用された最適化アルゴリズムの組合せ）に対応付けて取得する。
本例の構成パラメータは、対象システム９００のネットワークに関するパラメータ（ネットワーク経路を指定する情報など）と、対象システム９００のデータキャッシングに関するパラメータ（データキャッシングの方針を指定する情報など）とを含む。
なお、結果取得部５００は、上記構成パラメータおよび予測データに加えて、それぞれのシミュレーションの開始時刻（あるいは開始時点での現状データ全体またはその要約）、ならびにシミュレーションが対象とした領域の範囲を示す対象領域情報を取得してもよい。この場合に、シミュレータ評価部５１０は、必要に応じてこれらの情報（開始時刻または対象領域情報）を利用して、シミュレート結果を評価することができる。例えば、シミュレーションの開始時刻が遅いほど、あるいはシミュレーションに用いられる現状データが現在の対象システムの現状データと近似するほど、シミュレータ評価部５１０は、このシミュレーションのシミュレート結果をより高く評価する。
【００５２】
図７（Ｂ）に例示するように、評価値抽出部５１２は、評価項目、各評価項目に対する目標値（基準値）、および、各評価項目に対する重み付け係数を評価基準として、ユーザから取得する。
本例の評価項目は、通信費用、処理速度および応答時間等であり、これらに対してそれぞれ目標値（２００００、２５００および２０００）が対応付けられている。
また、それぞれの評価項目に重み付け係数（０．４、０．１、および、０．１）が対応付けられている。
評価値抽出部５１２は、図７（Ａ）に例示したシミュレート結果から、それぞれのシミュレーション毎に予測データ（処理速度、通信費用、応答時間等）を抽出し、抽出された予測データと、対応する目標値とに基づいて、各評価項目毎に目標達成率（予測データ／目標値）を算出する。
次に、重み付け部５１４は、各評価項目毎に算出された目標達成率に対して、それぞれの評価項目に対応する重み付け係数をかけて合算し、この合算値を客観評価値とする。
【００５３】
図８（Ａ）は、ユーザから入力される主観評価値を例示し、図８（Ｂ）は、最終評価値の算出式を例示する図である。
図８（Ａ）に例示するように、シミュレータ評価部５１０は、ユーザから、それぞれのシミュレーション（すなわち、シミュレータとこのシミュレータで適用された最適化アルゴリズムとの組合せ）に対する主観的な評価値（すなわち、主観評価値）を取得する。
本例のシミュレータ評価部５１０は、複数のユーザから、複数の主観評価値を取得し、取得された複数の主観評価値に基づいて、平均主観評価値を算出する。
【００５４】
図８（Ｂ）に例示するように、重み付け部５１４は、客観評価値（各評価項目の目標達成率に重み付け係数をかけて合算した値）と、平均主観評価値とを合算して、最終評価値を算出する。
【００５５】
なお、本例のシミュレータ評価部５１０は、客観評価値および主観評価値の両方を加味して、最終評価値を生成しているが、これに限定されるものではなく、例えば、客観評価値または主観評価値の一方を最終評価値としてもよい。
【００５６】
［動作］
次に、シミュレーション管理装置２の動作を説明する。
図９は、シミュレーション管理プログラム５（図６）による結果選択処理（Ｓ１０）を示すフローチャートである。
図９に示すように、ステップ１００（Ｓ１００）において、結果取得部５００（図６）は、既定の評価タイミングになるまで、複数のシミュレータ４（図１）から対象システム９００（図１）に関するシミュレート結果（図７（Ａ））を取得し、取得されたシミュレート結果をシミュレータ評価部５１０に出力する。
シミュレーション管理プログラム５は、既定の評価タイミングになった場合に、Ｓ１０５の処理に移行し、これ以外の場合に、シミュレート結果の受け入れを継続して評価タイミングになるまで、シミュレート結果の受け入れを継続する。
すなわち、評価タイミングまでにシミュレータ４から提出されたシミュレート結果が、以下に説明する評価処理の対象となる。
【００５７】
ステップ１０５（Ｓ１０５）において、シミュレータ評価部５１０は、ユーザから入力された評価基準（図７（Ｂ））にしたがって、評価タイミングまでに入力されたシミュレート結果を評価する。
より具体的には、評価値抽出部５１２は、評価基準に示された評価項目について、各シミュレート結果から、最適化後の性能等を示す予測データ（処理速度等）を抽出し、抽出された予測データと、各評価項目に対して設定された目標値とに基づいて、各評価項目の目標達成率を算出する。
次に、重み付け部５１４は、評価値抽出部５１２により算出された各評価項目の目標達成率に対して、評価基準に示された重み付け係数をかけて合算し、客観評価値を算出する。
【００５８】
ステップ１１０（Ｓ１１０）において、重み付け部５１４（図６）は、各シミュレーションについて、ユーザから入力された複数の主観評価値の平均値を算出し、この平均主観評価値と、算出された客観評価値とを合算して、この合算値を最終評価値として選択部５２０に出力する。
【００５９】
ステップ１１３（Ｓ１１３）において、選択部５２０は、シミュレータ評価部５１０から入力された各シミュレーションの最終評価値と既定の閾値とを比較して、いずれかの最終評価値がこの閾値よりも大きいか否かを判定する。
シミュレーション管理プログラム５は、いずれかの最終評価値が既定の閾値を超える場合に、Ｓ１１５の処理に移行し、いずれの最終評価値も既定の閾値以下である場合に、Ｓ１００の処理に戻って、次の評価タイミングになるまで、シミュレート結果の受け入れを継続する。
すなわち、いずれのシミュレート結果も十分な評価を得られない場合には、これらのシミュレート結果に応じたシステムの調整が禁止され、現状維持が図られる。
【００６０】
ステップ１１５（Ｓ１１５）において、選択部５２０は、シミュレータ評価部５１０から入力された各シミュレーションの最終評価値を互いに比較して、最大の最終評価値を有するシミュレート結果を選択し、選択されたシミュレート結果をシステム調整部５３０に出力する。
すなわち、評価タイミングにおけるユーザの要求（評価基準）に最も合致したシミュレート結果が選択される。
【００６１】
ステップ１２０（Ｓ１２０）において、システム調整部５３０は、選択部５２０から入力されたシミュレート結果（図７（Ａ））の中から、対象システムの構成等を規定する構成パラメータを抽出する。
【００６２】
ステップ１２５（Ｓ１２５）において、システム調整部５３０（図６）は、通信装置２１０（図５）を制御して、抽出された構成パラメータを対象システム９００（図１）に送信する。
対象システム９００は、シミュレーション管理装置２（システム調整部５３０）から受信した構成パラメータに応じて、システム構成等を変更し、選択されたシミュレート結果に応じた最適化を行う。
【００６３】
以上説明したように、本実施形態におけるシミュレーションシステム１は、同一の対象システム９００に関するシミュレーションを複数のシミュレータ４（シミュレーション処理の内容が異なる）で並行して実施し、所定の評価タイミングまでにそれぞれのシミュレータ４で生成されたシミュレート結果の中から、この評価タイミングにおけるユーザの要求に合致したシミュレート結果を選択し、このシミュレート結果に応じた最適化処理を対象システム９００に施す。
【００６４】
これにより、各シミュレータ４におけるシミュレーション処理が開始された後に、ユーザの要求（すなわち、評価基準）が変化した場合でも、この要求の変化を評価基準に反映させた後に評価タイミングを生成することにより、要求の変化に対応した最適化を対象システム９００に施すことができる。
また、複数のシミュレータ４は、互いに異なる最適化アルゴリズムを適用して、並行してシミュレーションを行っているため、各シミュレータ４でシミュレーションが開始された後に対象システム９００の構成に変化があった場合でも、構成変更後の対象システム９００に合致した最適化アルゴリズムが、いずれかのシミュレータ４で適用されている可能性があり、構成変更後の対象システム９００に合致した最適化処理がなされる可能性がある。
【００６５】
また、複数のシミュレータ４は、それぞれ独立して対象システム９００のシミュレーションを行い、そのシミュレート結果をシミュレーション管理装置２に提出し、シミュレーション管理装置２は、提出されたシミュレート結果の中から、最適なシミュレート結果を選択するものであるから、いずれかのシミュレータ４が停止したり、変更されたり、新規に追加された場合でも、対象システム９００に対する最適化処理に対する影響は少ない。
すなわち、本シミュレーションシステム１は、システムの可用性およびスケーラビリティに優れている。
【００６６】
［変形例］
次に、上記実施形態の変形例を説明する。
図１０は、第２のシミュレーションシステム１２の概要を説明する図である。なお、本図に示された各構成のうち、図１に示されたものと実質的に同一のものには同一の符号が付されている。
図１０に例示するように、第２のシミュレーションシステム１２は、第１のシミュレーションシステム１と実質的に同一の構成をとるが、シミュレーション管理装置２が対象システム９００からフィードバックを受ける点で異なる。
より具体的には、対象システム９００は、シミュレーション管理装置２から受信した調整パラメータ（例えば構成パラメータ）に応じて、システム構成等の変更を行うと、この構成変更による影響（影響評価実測値）をシミュレーション管理装置２に送信する。
本変形例のシミュレーション管理装置２は、対象システム９００から受信した影響評価実測値に基づいて、選択されたシミュレート結果を評価して、以後に提出されるシミュレート結果に対する評価の時に参酌する。
【００６７】
図１１は、第２のシミュレーションシステム１２による最適化処理の概要を説明する図である。なお、本図において、対象システムに含まれるノード（図中の丸）は、情報提供装置９０２またはＤＢシステム９０４に相当し、これらのノードを結ぶ直線は、通信経路に相当する。また、部分シミュレーションは、対象システムの一部を対象としたシミュレーションであり、全体シミュレーションは、対象システム全体を対象としたシミュレーションである。また、合成シミュレーションは、複数の部分シミュレーションの結果を統合して対象システム全体をシミュレートする手法である。
図１１に例示するように、最適化方式Ａを適用した部分シミュレーションＡ、最適化方式Ｂを適用した部分シミュレーションＢ、最適化方式Ｄを適用した全体シミュレーション、および、最適化方式ＡおよびＣを適用した合成シミュレーションが、並行して実施されている。
評価タイミングＡでは、部分シミュレーションＡおよび部分シミュレーションＢのシミュレート結果のみが提出されており、本例では、部分シミュレーションＢのシミュレート結果が採用され、対象システムの構成が変更される。
構成変更がなされた対象システムは、しばらくの間、実際に運用を行い、実際の処理速度および通信費用などの実測データ（影響評価実測値）をシミュレーション管理装置２に送信する。
シミュレーション管理装置２は、対象システムから受信した実測データ（影響評価実測値）に基づいて、評価タイミングＡで採用されたシミュレート結果（本例では、部分シミュレーションＢのシミュレート結果）を評価する。
【００６８】
評価タイミングＢでは、部分シミュレーションＡ、部分シミュレーションＢおよび全体シミュレーションのシミュレート結果が提出されている。
本例では、部分シミュレーションＢの影響評価実測値に基づく評価が低かったために、部分シミュレーションＢのシミュレート結果は採用されず、全体シミュレーションのシミュレート結果が採用される。
このように、本変形例におけるシミュレーションシステム１２は、以前に採用されたシミュレート結果の実績（実測データに対する評価）に基づいて、次に採用すべきシミュレート結果を選択する。
これにより、過去の実績を参酌して、信頼性の高いシミュレータ４から提出されるシミュレート結果を優先的に適用することが可能になる。
【００６９】
図１２は、第２のシミュレーション管理プログラム５２の構成を示す図である。なお、本図に示された各構成のうち、図６に示されたものと実質的に同一のものには同一の符号が付されている。
図１２に示すように、第２のシミュレーション管理プログラム５２は、第１のシミュレーション管理プログラム５に、影響評価値データベース（影響評価値ＤＢ）５１６、および、影響評価部５４０を追加した構成をとる。
【００７０】
シミュレーション管理プログラム５２において、影響評価部５４０（図１２）は、対象システム９００（図１０）から入力される影響評価実測値（実測データ）に基づいて、以前に選択されたシミュレート結果による影響を評価し、評価された影響評価値を影響評価値ＤＢ５１６に出力する。
例えば、影響評価部５４０は、最適化処理後の実測データ（実際の処理速度等）と、この最適化処理に対応するシミュレータ結果（すなわち、最適化処理の原因となったシミュレート結果）に含まれていた予測データ（シミュレーションにより算出された処理速度等）とに基づいて、シミュレーション確度（実測データ／予測データ）を算出する。
すなわち、影響評価部５４０は、システム調整部５３０によりなされたシステムの調整処理の影響（実測データ）に基づいて、シミュレータから提供されるシミュレート結果の信頼性を評価する。
なお、本例のシミュレーション確度は、正の値に正規化されているが、これに限定されるものではなく、例えば、正負にまたがって正規化された値であってもよい。例えば、正負にまたがって正規化された場合に、シミュレーション確度が負の値をとることは、シミュレート結果に応じたシステム調整の結果が目標を達成できないばかりか対象システム全体に重大な悪影響を与えるものであったことを意味する。
【００７１】
影響評価値ＤＢ５１６は、影響評価部５３０から入力された影響評価値を、シミュレータ（または、シミュレータと、適用された最適化アルゴリズムとの組合せ）に対応付けて記憶する。
なお、影響評価値ＤＢ５１６は、影響評価部５３０から入力された影響評価値を、この影響評価値に対応するシミュレータおよび評価タイミングに対応付けて記憶してもよい。この場合に、システム評価部５１０は、評価するタイミングに応じて、影響評価値を参酌することができる。
【００７２】
本変形例では、重み付け部５１４は、上記客観評価値および主観評価値に加えて、影響評価値ＤＢ５１６から読み出された影響評価値を加味して、最終評価値を算出することができる。
本例の重み付け部５１４は、客観評価値、平均主観評価値、および、影響評価値に対して、既定の重み付け係数をかけて合算し、この合算値を最終評価値とする。
なお、影響評価値は、過去の実績等を評価するという点で、主観評価値と共通する性質を有するが、ユーザの任意入力により生成されるものではなく、既定の評価アルゴリズムを用いて影響評価実測値から生成される点で、主観評価値と異なる。すなわち、主観評価値は、ユーザの介入を可能にするための評価値であるが、影響評価値は、システムにより既定の手順で生成される評価値である。
【００７３】
［動作］
次に、第２のシミュレーションシステム１２の全体動作を説明する。
図１３は、第２のシミュレーション管理プログラム５２（図１２）による結果選択処理（Ｓ２０）を示すフローチャートである。なお、本図に示された各処理のうち、図９に示された処理と実質的に同一のものには同一の符号が付されている。
図１２に示すように、Ｓ１００において、シミュレーション管理プログラム５２（図１２）は、既定の評価タイミングになるまで、シミュレート結果の受け入れを継続して評価タイミングになるまで、各シミュレータ４（図１０）から提出されるシミュレート結果の受け入れを行う。
Ｓ１０５において、シミュレータ評価部５１０は、ユーザから入力された評価基準（図７（Ｂ））にしたがって、客観評価値を算出する。
Ｓ１１０において、重み付け部５１４は、各シミュレーションについて平均主観評価値を算出する。
【００７４】
ステップ２００（Ｓ２００）において、重み付け部５１４（図１２）は、影響評価値ＤＢ５１６から、各シミュレータに対応する影響評価値を読み出す。
より具体的には、重み付け部５１４は、評価タイミングまでにシミュレート結果を提出したシミュレータの影響評価値を影響評価値ＤＢ５１６から読み出し、読み出された影響評価値に基づいて、各シミュレータの平均影響評価値を算出する。この場合の平均影響評価値は、例えば、シミュレータそれぞれに関する全部または一部の影響評価値（本例では、シミュレーション確度）の平均値（本例では、平均確度）である。これにより、各シミュレータの一定期間における実績が評価できる。
【００７５】
ステップ２０５（Ｓ２０５）において、重み付け部５１４は、算出された客観評価値、平均主観評価値および平均影響評価値に対して、既定の重み付け係数をかけて、合算し、この合算値を最終評価値として選択部５２０に出力する。
なお、このときに用いられる重み付け係数により、シミュレート結果として提出された予測データ、ユーザの主観評価、および、各シミュレータの過去の実績、に対する比重を調整することができる。
【００７６】
Ｓ１１３において、選択部５２０は、シミュレータ評価部５１０から入力された各シミュレーションの最終評価値と既定の閾値とを比較し、いずれかの最終評価値が既定の閾値を超える場合に、Ｓ１１５の処理に移行し、いずれの最終評価値も既定の閾値以下である場合に、Ｓ１００の処理に戻る。
Ｓ１１５において、選択部５２０は、シミュレータ評価部５１０から入力された各シミュレーションの最終評価値を互いに比較して、最大の最終評価値を有するシミュレート結果を選択し、選択されたシミュレート結果をシステム調整部５３０に出力する。
Ｓ１２０において、システム調整部５３０は、選択部５２０から入力されたシミュレート結果の中から、対象システムの構成等を規定する構成パラメータを抽出する。
Ｓ１２５において、システム調整部５３０は、抽出された構成パラメータを対象システム９００に送信する。
対象システム９００は、システム調整部５３０から受信した構成パラメータに応じて、システム構成等を変更し、選択されたシミュレート結果に応じた最適化を行う。
【００７７】
図１４は、図１０に示したシミュレーションシステム１２の全体的な動作（Ｓ３０）を示すシーケンス図である。なお、本例では、シミュレーションシステム１２に２つのシミュレータ（シミュレータＡおよびシミュレータＢ）が含まれている形態を具体例として説明するが、シミュレータの数はこれに限定されるものではない。
図１４に示すように、ステップ３００（Ｓ３００）において、対象システム９００は、この自身の現状を示す第１の現状データ（例えば、構成パラメータ、ネットワークの輻輳状況、各ノードの負荷状況など）をシミュレータＡおよびシミュレータＢに送信する。
【００７８】
ステップ３０２（Ｓ３０２）において、シミュレータＡは、対象システム９００から受信した第１の現状データを初期値として、この対象システム９００に関するシミュレーションＡ１を開始する。
また、ステップ３０４（Ｓ３０４）において、シミュレータＢは、対象システム９００から受信した第１の現状データを初期値として、この対象システム９００に関するシミュレーションＢ１を開始する。
シミュレーションＡ１は、シミュレーションＢ１と異なる最適化アルゴリズムを適用するものであり、シミュレーションＢ１よりも早くシミュレート結果を生成できる。
【００７９】
ステップ３０６（Ｓ３０６）において、シミュレータＡは、シミュレーションＡ１を終えて、シミュレート結果Ａ１を生成すると、生成されたシミュレート結果Ａ１をシミュレーション管理装置２に送信する。
ステップ３０８（Ｓ３０８）において、対象システム９００は、シミュレータＡの要求に応じて、この時点における第２の現状データを生成し、生成された第２の現状データをシミュレータＡに送信する。
ステップ３１０（Ｓ３１０）において、シミュレータＡは、対象システム９００から受信した第２の現状データを初期値として、この対象システム９００に関するシミュレーションＡ２を開始する。
このように、シミュレーションＡは、シミュレーションＢとは異なる時点の現状データを初期値としてシミュレーションＡ２を行う。
【００８０】
ステップ３１２（Ｓ３１２）において、シミュレータＢは、シミュレーションＢ１を終えて、シミュレート結果Ｂ１を生成すると、生成されたシミュレート結果Ｂ１をシミュレーション管理装置２に送信する。
また、ステップ３１４（Ｓ３１４）において、シミュレータＡは、シミュレーションＡ２を終えて、シミュレート結果Ａ２を生成すると、生成されたシミュレート結果Ａ２をシミュレーション管理装置２に送信する。
【００８１】
ステップ１２（Ｓ１２）において、シミュレーション管理装置２は、評価タイミングＡになるまで、シミュレータＡおよびシミュレータＢから送信されるシミュレート結果（本例では、シミュレート結果Ａ１、Ａ２、Ｂ１）を受信して格納し、評価タイミングＡになった時点で、これまでに受信したシミュレート結果を評価し、評価結果に応じて、受信したシミュレート結果Ａ１、Ａ２、Ｂ１の中から、適用すべきシミュレート結果を選択する（第１の結果選択処理）。
ステップ１２５（Ｓ１２５）において、シミュレーション管理装置２は、選択されたシミュレート結果から、対象システム９００を最適化する構成パラメータを抽出し、抽出された構成パラメータを対象システム９００に送信する。
【００８２】
ステップ３１２（Ｓ３１２）において、対象システム９００は、シミュレーション管理装置２から受信した構成パラメータに応じて、システムの構成および動作方法を変更する。
【００８３】
ステップ３１４（Ｓ３１４）において、対象システム９００は、この時点における第３の現状データを生成し、生成された第３の現状データをシミュレータＡ、シミュレータＢおよびシミュレーション管理装置２に送信する。
なお、この第３の現状データは、Ｓ３１２における対象システム９００の調整が施された状態での実測データである。
【００８４】
ステップ３１６（Ｓ３１６）において、シミュレータＡは、対象システム９００から受信した第３の現状データを初期値として、この対象システム９００に関するシミュレーションＡ３を開始する。
また、ステップ３１８（Ｓ３１８）において、シミュレータＢは、対象システム９００から受信した第３の現状データを初期値として、この対象システム９００に関するシミュレーションＢ２を開始する。
【００８５】
ステップ３２０（Ｓ３２０）において、シミュレーション管理装置２は、対象システム９００から受信した第３の現状データに基づいて、Ｓ３１２における対象システムの調整の影響評価値を生成し、生成された影響評価値を、採用されたシミュレート結果を生成したシミュレータに対応付けて影響評価値ＤＢ５１６（図１２）に格納する。
【００８６】
ステップ３２２（Ｓ３２２）において、シミュレータＡは、シミュレーションＡ３を終えて、シミュレート結果Ａ３を生成すると、生成されたシミュレート結果Ａ３をシミュレーション管理装置２に送信する。
また、ステップ３２４（Ｓ３２４）において、シミュレータＢは、シミュレーションＢ２を終えて、シミュレート結果Ｂ２を生成すると、生成されたシミュレート結果Ｂ２をシミュレーション管理装置２に送信する。
【００８７】
ステップ１２（Ｓ１２）において、シミュレーション管理装置２は、評価タイミングＢになるまで、シミュレータＡおよびシミュレータＢから送信されるシミュレート結果（本例では、シミュレート結果Ａ１、Ａ２、Ｂ１）を受信して格納する。
なお、本例のシミュレーション管理装置２は、各シミュレータから受信したシミュレート結果を既定の期間だけ保持し、古くなったシミュレート結果を削除していく。そのため、本例では、評価タイミングＢの時点で、シミュレート結果Ａ１、Ａ２およびＢ１は削除されおり、シミュレート結果Ａ３およびＢ２がシミュレーション管理装置２に保持されている。
シミュレート管理装置２は、評価タイミングＢになった時点で、これまでに受信したシミュレート結果を評価して客観評価値を生成すると共に、主観評価値および影響評価値（影響評価値ＤＢ５１６に格納されている影響評価値）を加味して、最終評価値を算出し、算出された最終評価値に応じて、受信したシミュレート結果Ａ３、Ｂ２の中から、適用すべきシミュレート結果を選択する（第２の結果選択処理）。
ステップ１２５（Ｓ１２５）において、シミュレーション管理装置２は、選択されたシミュレート結果から、対象システム９００を最適化する構成パラメータを抽出し、抽出された構成パラメータを対象システム９００に送信する。
【００８８】
ステップ３２６（Ｓ３２６）において、対象システム９００は、シミュレーション管理装置２から受信した構成パラメータに応じて、システムの構成および動作方法を変更する。
【００８９】
なお、シミュレータＡおよびシミュレータＢは、対象システム９００およびシミュレーション管理装置２から独立したタイミングでシミュレーションを行う。また、シミュレータＡおよびシミュレータＢは、互いに独立したタイミングでシミュレーションを行ってもよい。
例えば、ステップ３２８（Ｓ３２８）において、対象システム９００は、シミュレータＡからの要求に応じて、現状データをシミュレータＡに送信する。
ステップ３３０（Ｓ３３０）において、シミュレータＡは、たとえ対象システムにおいてシステム調整（Ｓ３２６）が実施されている最中であっても、対象システム９００から受信した現状データを初期値としてシミュレーションＡ４を実施することができる。
ステップ３３２（Ｓ３３２）において、シミュレータＡは、シミュレーションＡ４を終えて、シミュレート結果Ａ４を生成すると、生成されたシミュレート結果Ａ４をシミュレーション管理装置２に送信することができる。
このように、本例のシミュレータＡは、対象システム９００におけるシステム調整（Ｓ３２６）やシミュレーション管理装置２における結果選択処理（Ｓ１２）の影響を受けることなく、独立したタイミングで、シミュレーションを実施し、シミュレート結果をシミュレーション管理装置２に送信する。
【００９０】
このように、本変形例におけるシミュレーションシステム１２は、過去に採用されたシミュレート結果の実績に基づいて、以後に採用すべきシミュレート結果を選択するため、十分に実績のないシミュレータからのシミュレート結果に振り回されることを防止することができる。
例えば、運用を開始して間もないシミュレータ（または、最適化方式）は、何らかの欠陥を有する場合が多く、このような信頼性の低いシミュレータによるシミュレート結果の影響を小さくすることは、対象システム９００を安定的に最適化することに資する。
【００９１】
また、上記実施形態では、物理的に独立した複数のシミュレータ４を用いて、複数のシミュレーションを行っているが、これに限定されるものではなく、例えば、シミュレーション管理装置２が、複数のシミュレーションを並行して行い、これらのシミュレート結果の中から、ユーザの要求に合致したシミュレート結果を選択し、対象システムに適用してもよい。
また、対象システム９００が分散システムである場合には、この分散システム上で、複数のシミュレーションを行ってもよい。この場合、対象システム９００を構成する構成要素と、シミュレーションを行うシミュレートとが、同一のインタフェースを持つコンピュータ装置上で実現されるため、実測データの送受信が容易になる。
【図面の簡単な説明】
【００９２】
【図１】第１のシミュレーションシステム１の概要を説明する図である。
【図２】対象システム９００（図１）を例示する図である。
【図３】互いに異なる最適化アルゴリズムを適用して複数のシミュレーションを並行して実施する場合の最適化処理を説明する図である。
【図４】互いに異なる領域単位で複数のシミュレーションを並行して実施する場合の最適化処理を説明する図である。
【図５】図１に示したシミュレーション管理装置２およびシミュレータ４のハードウェア構成を例示する図である。
【図６】図５に示したシミュレーション管理装置２上で実行される第１のシミュレーション管理プログラム５の構成を示す図である。
【図７】（Ａ）は、結果取得部５００により取得されるシミュレート結果を例示し、（Ｂ）は、評価値抽出部５１２に入力される評価基準を例示する図である。
【図８】（Ａ）は、ユーザから入力される主観評価値を例示し、（Ｂ）は、最終評価値の算出式を例示する図である。
【図９】シミュレーション管理プログラム５（図６）による結果選択処理（Ｓ１０）を示すフローチャートである。
【図１０】第２のシミュレーションシステム１２の概要を説明する図である。
【図１１】第２のシミュレーションシステム１２による最適化処理の概要を説明する図である。
【図１２】第２のシミュレーション管理プログラム５２の構成を示す図である。
【図１３】第２のシミュレーション管理プログラム５２（図１２）による結果選択処理（Ｓ２０）を示すフローチャートである。
【図１４】図１０に示したシミュレーションシステム１２の全体的な動作（Ｓ３０）を示すシーケンス図である。
【符号の説明】
【００９３】
１，１２・・・シミュレーションシステム、
２・・・シミュレーション管理装置、
２００・・・本体、
２０２・・・ＣＰＵ、
２０４・・・メモリ、
２０６・・・入出力装置、
２１０・・・通信装置、
２１２・・・記録装置、
２１４・・・記録媒体、
５・・・シミュレーション管理プログラム、
５００・・・結果取得部、
５１０・・・シミュレータ評価部、
５１２・・・評価値抽出部
５１４・・・重み付け部
５１６・・・影響評価値データベース
５２０・・・選択部、
５３０・・・システム調整部、
５４０・・・影響評価部、
４・・・シミュレータ、
９００・・・対象システム、
【図１】
2006235983.tif 000003
【図２】
2006235983.tif 000004
【図３】
2006235983.tif 000005
【図４】
2006235983.tif 000006
【図５】
2006235983.tif 000007
【図６】
2006235983.tif 000008
【図７】
2006235983.tif 000009
【図８】
2006235983.tif 000010
【図９】
2006235983.tif 000011
【図１０】
2006235983.tif 000012
【図１１】
2006235983.tif 000013
【図１２】
2006235983.tif 000014
【図１３】
2006235983.tif 000015
【図１４】
2006235983.tif 000016