(57)【特許請求の範囲】
【請求項１】
プロセッサとメモリとを有する計算機によって構成される意思決定支援システムであって、
前記メモリは、意思決定に必要な複数の情勢を数値化した複数の指標値を格納し、
前記意思決定支援システムは、
前記プロセッサが、プレーヤーのアクションから次のアクションを導出するためのアクション連鎖モデルと、
前記プロセッサが、プレーヤーのアクションと前記指標値とから、次の指標値を導出するための反応モデルと、
前記プロセッサが、指標値からアクションの意思を表す選択確率をプレーヤー毎に導出するための意思モデルと、
前記プロセッサが、指標値から評価値をプレーヤー毎に導出するための評価モデルと、
前記プロセッサが、プレーヤーのアクションを選択するアクション選択部と、
前記プロセッサが、前記選択された各プレーヤーのアクションを調停して、前記各プレーヤーのアクションを決定するための調停モデルとを有し、
前記意思決定支援システムは、
前記アクション連鎖モデルを用いて、前記プレーヤーのアクションから前記プレーヤーがとり得る次のアクションを導出し、
前記反応モデルを用いて、前記プレーヤーのアクションと前記指標値とから、次の指標値を導出し、
前記意思モデルを用いて、前記導出された次の指標値から前記各プレーヤーのアクションの選択確率を計算し、
前記評価モデルを用いて、前記導出された次の指標値が前記各プレーヤーにとって望ましい程度を表す評価値を計算し、
前記アクション選択部は、前記アクション連鎖モデルを用いて導出されたアクションと、前記意思モデルを用いて計算された選択確率と、前記評価モデルを用いて計算された評価値とを用いて、前記各プレーヤーがとり得る複数のアクションを選択し、前記選択された複数のアクション及び当該アクションの確率を出力し、
前記意思決定支援システムは、前記調停モデルを用いて、前記アクション選択部が選択した前記各プレーヤーのアクションを調停して、前記各プレーヤーのアクションを決定することを特徴とする意思決定支援システム。
【請求項２】
請求項１に記載の意思決定支援システムであって、
前記アクション選択部は、前記選択された各プレーヤーのアクションを時系列に表示するための画面データを出力することを特徴とする意思決定支援システム。
【請求項３】
請求項１に記載の意思決定支援システムであって、
前記アクション選択部は、前記複数のプレーヤーのアクションの組について、前記各プレーヤーの評価を表示するための画面データを出力することを特徴とする意思決定支援システム。
【請求項４】
プロセッサとメモリとを有する計算機が実行する意思決定支援方法であって、
前記メモリは、意思決定に必要な複数の情勢を数値化した複数の指標値を格納し、
前記計算機は、プレーヤーのアクションから次のアクションを導出するためのアクション連鎖モデルと、プレーヤーのアクションと前記指標値とから、次の指標値を導出するための反応モデルと、指標値からアクションの意思を表す選択確率をプレーヤー毎に導出するための意思モデルと、指標値から評価値をプレーヤー毎に導出するための評価モデルと前記各プレーヤーのアクションを調停して、前記各プレーヤーのアクションを決定するための調停モデルを有し、
前記方法は、
前記プロセッサが、前記アクション連鎖モデルを用いて、前記プレーヤーのアクションから前記プレーヤーがとり得る次のアクションを導出し、前記メモリに格納し、
前記プロセッサが、前記反応モデルを用いて、前記プレーヤーのアクションと前記指標値とから、次の指標値を導出し、前記メモリに格納し、
前記プロセッサが、前記意思モデルを用いて、前記導出された次の指標値から前記各プレーヤーのアクションの選択確率を計算し、前記メモリに格納し、
前記プロセッサが、前記評価モデルを用いて、前記導出された次の指標値が前記各プレーヤーにとって望ましい程度を表す評価値を計算し、前記メモリに格納し、
前記プロセッサが、前記アクション連鎖モデルを用いて導出されたアクションと、前記意思モデルを用いて計算された選択確率と、前記評価モデルを用いて計算された評価値とを用いて、前記各プレーヤーのアクションを選択し、前記メモリに格納し、
前記プロセッサが、前記調停モデルを用いて、前記選択された前記各プレーヤーのアクションを調停して、前記各プレーヤーのアクションを決定することを特徴とする意思決定支援方法。
【請求項５】
請求項４に記載の意思決定支援方法であって、
前記プロセッサは、前記選択された各プレーヤーのアクションを時系列に表示するための画面データを出力することを特徴とする意思決定支援方法。
【請求項６】
請求項４に記載の意思決定支援方法であって、
前記プロセッサは、前記複数のプレーヤーのアクションの組について、前記各プレーヤーの評価を表示するための画面データを出力することを特徴とする意思決定支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、意思決定支援システムに関する。
【背景技術】
【０００２】
専門家の知見を用いて将来生じるであろう情勢や関係者の行動を予測するコンピュータシステムが提案されている。
【０００３】
例えば、特許文献１（特開平５−２０４９９１号公報）には、コンピュータと時系列データベースと登録パターンデータベースと端末装置からなるシステムにおいて、複数のパターンを登録するステップと、時系列データベースから時系列データを読み込み、既に登録されている複数のパターンとの照合をパターン毎，一定期間毎に行うステップと、登録されたパターン間の出現に関する因果関係を分析するステップと、分析結果を表示するステップとからなる時系列データ検索システムが記載されている。特許文献１に記載された時系列データ検索システムは、登録されたパターンと比較した結果に基づいて（ルールベースで）将来動向（アクション）を予測する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平５−２０４９９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１に記載されているようなルールベースの予測システムでは、連鎖モデルを用いて、多くのルールを含むモデルを作成して、次に何が生じるかをシミュレートするものである。このため、ルールベースの予測システムではモデルの作成が困難であった。すなわち、このモデルでは、全ての事象や関係者の行動を考慮しなければならず、専門家の知見を整理して、知見を統合したモデルを作成するために、専門家の知見を分類して、モデルを作成することは困難である。このため、専門家の知識を無理なくモデル化して、将来を予測するシステムが求められている。
【課題を解決するための手段】
【０００６】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、プロセッサとメモリとを有する計算機によって構成される意思決定支援システムであって、前記メモリは、意思決定に必要な複数の情勢を数値化した複数の指標値を格納し、前記意思決定支援システムは、前記プロセッサが、プレーヤーのアクションから次のアクションを導出するためのアクション連鎖モデルと、前記プロセッサが、プレーヤーのアクションと前記指標値とから、次の指標値を導出するための反応モデルと、前記プロセッサが、指標値からアクションの意思を表す選択確率をプレーヤー毎に導出するための意思モデルと、前記プロセッサが、指標値から評価値をプレーヤー毎に導出するための評価モデルと、前記プロセッサが、プレーヤーのアクションを選択するアクション選択部と、前記プロセッサが、前記選択された各プレーヤーのアクションを調停して、前記各プレーヤーのアクションを決定するための調停モデルとを有し、前記意思決定支援システムは、前記アクション連鎖モデルを用いて、前記プレーヤーのアクションから前記プレーヤーがとり得る次のアクションを導出し、前記反応モデルを用いて、前記プレーヤーのアクションと前記指標値とから、次の指標値を導出し、前記意思モデルを用いて、前記導出された次の指標値から前記各プレーヤーのアクションの選択確率を計算し、前記評価モデルを用いて、前記導出された次の指標値が前記各プレーヤーにとって望ましい程度を表す評価値を計算し、前記アクション選択部は、前記アクション連鎖モデルを用いて導出されたアクションと、前記意思モデルを用いて計算された選択確率と、前記評価モデルを用いて計算された評価値とを用いて、前記各プレーヤーがとり得る複数のアクションを選択し、前記選択された複数のアクション及び当該アクションの確率を出力し、前記意思決定支援システムは、前記調停モデルを用いて、前記アクション選択部が選択した前記各プレーヤーのアクションを調停して、前記各プレーヤーのアクションを決定する。
【発明の効果】
【０００７】
本発明の代表的な形態によれば、専門家の知見を容易に整理でき、将来生じるであろう情勢やアクションを専門家の知見に基づいて予測することができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【０００８】
【図１】第１の実施例の意思決定支援システムの物理的な構成を示すブロック図である。
【図２】第１の実施例の意思決定支援システムの論理的な構成を示すブロック図である。
【図３】第１の実施例のアクション連鎖モデルを説明する図である。
【図４】第１の実施例の反応モデルを説明する図である。
【図５】第１の実施例の意思モデルを説明する図である。
【図６】第１の実施例の評価モデルを説明する図である。
【図７】第１の実施例の意思決定支援システムによる処理のフローチャートである。
【図８】第１の実施例のシミュレーション結果出力画面の例を示す図である。
【図９】第１の実施例の変形例の意思決定支援システムによる処理のフローチャートである。
【図１０】第１の実施例の星取表出力画面の例を示す図である。
【図１１】第１の実施例の星取表を構成するためのモンテカルロ木探索を説明する図である。
【図１２】第２の実施例の意思決定支援システムの論理的な構成を示すブロック図である。
【図１３】第２の実施例の調停モデルを説明する図である。
【発明を実施するための形態】
【０００９】
図１は、第１の実施例の意思決定支援システムの物理的な構成を示すブロック図である。
【００１０】
本実施例の意思決定支援システムは、複数の計算機（ＣＡＬＣ＿ＮＯＤＥ）と、これら複数の計算機を接続する通信スイッチ（ＣＯＭ＿ＳＷ）とを有する。
【００１１】
各計算機（ＣＡＬＣ＿ＮＯＤＥ）は、プログラムを実行するプロセッサ（ＣＰＵ）と、データ及びプログラムを格納する一時記憶装置（ＲＡＭ）及び補助記憶装置（ＳＴＯＲ）と、通信スイッチ（ＣＯＭ＿ＳＷ）と接続される通信デバイス（ＣＯＭ＿ＤＥＶ）とを有する。プロセッサ（ＣＰＵ）と、一時記憶装置（ＲＡＭ）と、補助記憶装置（ＳＴＯＲ）と、通信デバイス（ＣＯＭ＿ＤＥＶ）とは、バス（ＢＵＳ）で接続されている。
【００１２】
プロセッサ（ＣＰＵ）は、一時記憶装置（ＲＡＭ）に格納されたプログラムを実行する。一時記憶装置（ＲＡＭ）は、不揮発性の記憶素子であるＲＯＭ及び揮発性の記憶素子である（ＲＡＭ）を含む。ＲＯＭは、不変のプログラム（例えば、ＢＩＯＳ）などを格納する。（ＲＡＭ）は、Ｄ（ＲＡＭ）（Dynamic Random Access Memory）のような高速かつ揮発性の記憶素子であり、プロセッサ（ＣＰＵ）が実行するプログラム及びプログラムの実行時に使用されるデータを一時的に格納する。
【００１３】
補助記憶装置（ＳＴＯＲ）は、例えば、磁気記憶装置（ＨＤＤ）、フラッシュメモリ（ＳＳＤ）等の大容量かつ不揮発性の記憶装置であり、プロセッサ（ＣＰＵ）が実行するプログラム及びプログラムの実行時に使用されるデータを格納する。すなわち、プログラムは、補助記憶装置（ＳＴＯＲ）から読み出されて、記憶装置（ＲＡＭ）にロードされて、プロセッサ（ＣＰＵ）によって実行される。
【００１４】
通信デバイス（ＣＯＭ＿ＤＥＶ）は、所定のプロトコルに従って、通信スイッチ（ＣＯＭ＿ＳＷ）を介して、他の装置との通信を制御するネットワークインターフェース装置である。
【００１５】
各計算機（ＣＡＬＣ＿ＮＯＤＥ）は、入力インターフェース及び出力インターフェースを有してもよい。入力インターフェースは、オペレータからの入力を受けるインターフェースであり、具体的には、マウス、キーボード、タッチパネル、マイクなどである。出力インターフェースは、プログラムの実行結果をオペレータが視認可能な形式で出力するインターフェースであり、ディスプレイ装置やプリンタなどである。
【００１６】
通信スイッチ（ＣＯＭ＿ＳＷ）に、入力インターフェース及び出力インターフェースを有する端末計算機が接続されてもよい。
【００１７】
プロセッサ（ＣＰＵ）が実行するプログラムは、リムーバブルメディア（ＣＤ−ＲＯＭ、フラッシュメモリなど）又はネットワークを介して各計算機（ＣＡＬＣ＿ＮＯＤＥ）に提供され、非一時的記憶媒体である不揮発性の補助記憶装置（ＳＴＯＲ）に格納される。このため、各計算機（ＣＡＬＣ＿ＮＯＤＥ）は、リムーバブルメディアからデータを読み込むインターフェースを有するとよい。
【００１８】
各計算機（ＣＡＬＣ＿ＮＯＤＥ）は、物理的に一つの計算機上で、又は、論理的又は物理的に構成された複数の計算機上で構成される計算機システムであり、同一の計算機上で別個のスレッドで動作してもよく、複数の物理的計算機資源上に構築された仮想計算機上で動作してもよい。また、各計算機（ＣＡＬＣ＿ＮＯＤＥ）の各機能部は異なる計算機上で実現されてもよい。
【００１９】
図２は、第１の実施例の意思決定支援システムの論理的な構成を示すブロック図である。
【００２０】
本実施例の意思決定支援システムは、アクション連鎖モデル１、反応モデル２、意思モデル４及び評価モデル５の四つのモデルで構成される。具体的には、図２に示す意思決定支援システムは、アクション連鎖モデル１、反応モデル２及び複数のアクション決定部３を有する。アクション決定部３は、意思モデル４、評価モデル５及びアクション選択部６を有し、プレーヤー毎に設けられる。
【００２１】
アクション連鎖モデル１は、図３に示すように、ルールベースのシミュレータであり、プレーヤーの現在のアクションから次に実行される蓋然性があるアクションを導出する。プレーヤーは、世の中で意思を決定し、行動する（アクションを実行する）主体であり、例えば、国民、行政機関（各省庁）、国会、内閣、外国政府、マスコミなどである。
【００２２】
反応モデル２は、図４に示すように、ルールベースのシミュレータであり、各プレーヤーの現在のアクション及び現在の指標値から次の指標値を導出する。指標値とは、例えば、世の中で生じている事象（情勢の変化）を数値化した指標であり、経済指標（ＧＤＰ、株価、為替レートなど）、世論調査結果（内閣支持率など）である。
【００２３】
アクション決定部３は、プレーヤー毎に設けられ、各プレーヤーの次のアクションを導出する。
【００２４】
意思モデル４は、図５に示すように、次の指標値からアクション意思を導出するシミュレータである。アクション意思は、ある情勢（指標値の組み合わせによって表される）において採用されるアクションを実行する意志の強さを表す数値である。すなわち、各プレーヤーはアクション意思の値が大きいアクションを選択する確率（期待値）が高い。評価モデル５は、図６に示すように、次の指標値から評価値を導出するシミュレータである。評価値は、ある情勢がプレーヤーにとって望ましい程度を表す数値である。
【００２５】
アクション選択部６は、当該プレーヤーの次のアクションの蓋然性、アクション意思及び評価値から当該プレーヤーの次のアクションを導出するセレクタである。アクション選択部６は、例えば、意思モデル４から出力されたアクション意思及び評価モデル５から出力された評価値でアクション連鎖モデル１から出力されたアクションに重み付けすることによって、当該プレーヤーの次のアクションを選択する。
【００２６】
アクション選択部６が導出した次のアクションは、アクション連鎖モデル１に入力され、次のアクションのシミュレーションに用いられる。また、反応モデル２が導出した次の指標値は、反応モデル２に入力され、次の指標値のシミュレーションに用いられる。
【００２７】
図３は、第１の実施例のアクション連鎖モデル１を説明する図である。アクション連鎖モデル１は、各プレーヤーのアクションをノードとしたマルコフ決定過程モデルで表されている。各ノードにはプレーヤーがアクションを選択する確率が対応付けられており、ノード間のエッジにはノード間を状態が遷移する確率が対応付けられている。
【００２８】
図３に示すアクション連鎖モデル１では、プレーヤー１がアクション１、アクション２及びアクション３を選択する確率は、それぞれ、０．３：０．５：０．２である。また、プレーヤー１がアクション１を選択した場合、プレーヤー２は０．８の確率でアクション２を選択する。つまり、プレーヤー２がアクション２を選択する確率は、式１によって表すことができる。
１−（（１−０．３）×（１−０．８））  …（式１）
【００２９】
アクション連鎖モデル１によって、プレーヤーの現在のアクションから蓋然性がある次のアクションを一つ又は複数導出することができる。
【００３０】
図４は、第１の実施例の反応モデル２を説明する図である。反応モデル２は、コーザル・ループ・ダイアグラムによって各指標間の相関関係を表すモデルである。
【００３１】
反応モデル２は、例えば図４に示すように、複数の指標をノードとして、ノード間をエッジによって連結したグラフィカルモデルによって表すことができる。各エッジの実線の矢印は正の相関を示し、破線の矢印は負の相関を示す。さらに、各エッジに係数を定めることによって、各指標の挙動を表すシステムダイナミクスモデルとすることができる。各エッジの係数は、指標の増減量との比で定義する。例えば、指標３と指標２とは正の相関があり、エッジの係数が０．５であれば、指標３が１増加したとき、指標２は０．５増加する。また、指標３と指標５とは負の相関があり、エッジの係数が１．２であれば、指標３が１増加したとき、指標５は１．２減少する。
【００３２】
なお、離散系シミュレーションを行う場合、計算機内では反応モデル２を漸化式で表すことができる。また、連続系シミュレーションを行う場合、計算機内では反応モデル２を一次微分方程式で表すことができる。
【００３３】
指標には、ストック要素とフロー要素とがある。ストック要素は、例えば、原油の備蓄量など、ある時点における量を示す。また、フロー要素は、例えば、原油の輸入量（生産量）や消費量など、時間帯における変数の流れを示す。ある指標をストック要素とするかフロー要素とするかは、世の中で、その指標が一般的にストック量及びフロー量のいずれとして使われているかによって決定するとよい。また、実際には数値で計測できない量（例えば、リスクインパクト、ナショナリズム）を指標として用いてもよい。このように、ストック要素とフロー要素とを混在させて反応モデル２を構成することによって、有識者の思考をそのままで、制約を設けることなく、モデル化することができる。
【００３４】
図５は、第１の実施例の意思モデル４を説明する図である。意思モデル４は、コーザル・ループ・ダイアグラムによって各指標間の相関関係を表し、さらに、各プレーヤーのアクションと各指標との相関関係を表すモデルである。
【００３５】
意思モデル４は、前述した反応モデル２と同様のモデルによって表すことができる。すなわち、意思モデル４は、例えば、複数の指標をノードとして、ノード間をエッジによって連結したグラフィカルモデルによって表すことができる。各エッジの実線の矢印は正の相関を示し、破線の矢印は負の相関を示す。さらに、各エッジに係数を定めることによって、各指標の挙動を表すシステムダイナミクスモデルとすることができる。各エッジの係数は、指標の増減量との比で定義する。
【００３６】
意思モデル４において、指標間は互いに相関関係を有するが、プレーヤーのアクションと指標との間は、各プレーヤーのアクションから指標へ向かうのエッジのみが定義され、逆方向のエッジは定義されない。また、各アクションの間のエッジも定義されない。意思モデル４によって、各プレーヤーのアクションの指標への影響をモデル化することができる。
【００３７】
なお、離散系シミュレーションを行う場合、計算機内では意思モデル４を漸化式で表すことができる。また、連続系シミュレーションを行う場合、計算機内では意思モデル４を一次微分方程式で表すことができる。意思モデル４は、反応モデル２と同様に、意思モデル４の指標には、ストック要素とフロー要素とがある。
【００３８】
図６は、第１の実施例の評価モデル５を説明する図である。評価モデル５は、コーザル・ループ・ダイアグラムによって各指標間の相関関係を表し、各プレーヤーのアクションと各指標との相関関係を表し、各指標と各プレーヤーの評価との相関関係を表し、さらに、各指標と各プレーヤーのアクションの意思との相関関係を表すモデルである。評価は、複数の指標の組み合わせによって表される情勢を、各プレーヤーが望ましいと思うかを示す数値である。なお、評価は、指標の数値範囲の組み合わせ毎に異なる評価値を持ってもよい。アクション意思は、各プレーヤーがとり得るアクションと各アクションを選択する確率の組によって表される。
【００３９】
評価モデル５は、前述した反応モデル２と同様のモデルによって表すことができる。すなわち、評価モデル５は、例えば、複数の指標をノードとして、ノード間をエッジによって連結したグラフィカルモデルによって表すことができる。各エッジの実線の矢印は正の相関を示し、破線の矢印は負の相関を示す。さらに、各エッジに係数を定めることによって、各指標の挙動を表すシステムダイナミクスモデルとすることができる。各エッジの係数は、指標の増減量との比で定義する。
【００４０】
評価モデル５において、指標間は互いに相関関係を有するが、プレーヤーのアクションと指標との間は、各プレーヤーのアクションから指標へ向かうのエッジのみが定義され、逆方向のエッジは定義されない。また、各アクションの間のエッジも定義されない。また、各指標と各プレーヤーの評価との間は、各指標から評価へ向かうのエッジのみが定義され、逆方向のエッジは定義されない。また、各指標と各プレーヤーのアクションの意思との間は、各指標からアクションの意思へ向かうのエッジのみが定義され、逆方向のエッジは定義されない。さらに、アクションの意思の間のエッジも定義されない。評価モデル５によって、各指標の各プレーヤーのアクションの意思の強さへの影響をモデル化することができ、各プレーヤーのアクションの評価値を定めることができる。
【００４１】
なお、離散系シミュレーションを行う場合、計算機内では意思モデル４を漸化式で表すことができる。また、連続系シミュレーションを行う場合、計算機内では意思モデル４を一次微分方程式で表すことができる。評価モデル５は、反応モデル２と同様に、評価モデル５の指標には、ストック要素とフロー要素とがある。
【００４２】
なお、評価モデル５は意思モデル４を含み、意思モデル４は反応モデル２を含む。このため、反応モデル２と意思モデル４と評価モデル５とは、一つのモデルを論理的に区分して構成してもよい。
【００４３】
反応モデル２、意思モデル４及び評価モデル５において、各ノードが表す事象は多少は関係があるので、ほとんど全てのノード間でエッジが定義できる。しかし、全てのノード間でエッジを定義するとモデルが複雑になるので、相関性が高いエッジ（例えば、係数が所定の閾値より大きいエッジ）によってモデルを構成するとよい。
【００４４】
図７は、第１の実施例の意思決定支援システムによる処理のフローチャートである。
【００４５】
まず、現在の状況及びシミュレーション期間が入力インターフェースに入力されると（Ｓ１０１）繰り返し制御パラメータｔの初期値にシミュレーション開始時を設定し、シミュレーション終了時ｔ＿ｅｎｄを設定する。入力される現在の状態は、各プレーヤーの現在のアクション及び現在の各指標値を含む。
【００４６】
次に、ｔがｔ＿ｅｎｄより小さいかを判定する（Ｓ１０２）。ｔがｔ＿ｅｎｄより小さければ、ステップＳ１０３及びＳ１０５に進む。ｔがｔ＿ｅｎｄ以上であれば、指定された期間のシミュレーション結果が得られたので、処理を終了し、シミュレーション結果出力画面（図８）を出力する。
【００４７】
ステップＳ１０３では、アクション連鎖モデル１を駆動し、プレーヤーの現在のアクションから蓋然性がある次のアクションを導出し、補助記憶装置（ＳＴＯＲ）に格納する（Ｓ１０４）。また、ステップＳ１０５では、反応モデル２を駆動し、各プレーヤーの現在のアクション及び現在の指標値から次の指標値を導出し、補助記憶装置（ＳＴＯＲ）に格納する（Ｓ１０６）。
【００４８】
ステップＳ１０３〜Ｓ１０６の処理は、並行して実行することができるが、アクション連鎖モデル１を起動する処理（Ｓ１０３）と、反応モデル２を駆動する処理（Ｓ１０５）とを順に実行してもよい。
【００４９】
次に、全てのプレーヤーについて、意思モデル４及び評価モデル５を駆動する（Ｓ１０７、Ｓ１０９）。ステップＳ１０７〜Ｓ１１０の処理は、並行して実行することができるが、意思モデル４を起動する処理（Ｓ１０７）と、評価モデル５を駆動する処理（Ｓ１０９）とを順に実行してもよい。
【００５０】
ステップＳ１０７では、意思モデル４を駆動し、次の指標値から各プレーヤーのアクション意思を導出し、補助記憶装置（ＳＴＯＲ）に格納する（Ｓ１０８）。また、ステップＳ１０９では、評価モデル５を駆動し、次の指標値から評価値を導出し、補助記憶装置（ＳＴＯＲ）に格納する（Ｓ１１０）。
【００５１】
その後、アクション選択部６が、当該プレーヤーの次のアクションの蓋然性、アクション意思及び評価値を勘案して当該プレーヤーの次のアクションを決定し、補助記憶装置（ＳＴＯＲ）に格納する（Ｓ１１１）。
【００５２】
全てのプレーヤーの次のアクションが決定した後、反応モデル２が出力した次の指標値を現在の指標値に設定して、反応モデル２の時刻を一つ進める（Ｓ１１２）。そして、繰り返し制御パラメータｔに１を加算して（Ｓ１１３）、ステップＳ１０２に戻る。なお、ｔに加算される１は、シミュレーションを実行する時間間隔を示し、オペレータが（例えば、１日を）予め設定するとよい。
【００５３】
以上の処理によって、シミュレーション期間中の各プレーヤーのアクションを導出できる。
【００５４】
図８は、第１の実施例のシミュレーション結果出力画面１０００の例を示す図である。シミュレーション結果出力画面１０００は、時間の経過に伴って各プレーヤーが選択するアクションを表し、出力インターフェース（ディスプレイ装置）に表示される。例えば、図８に示すように、縦方向にプレーヤーが列記され、横方向にシミュレーション結果の時刻が列記された表形式で、各プレーヤーの各時刻におけるアクションが表示される。シミュレーション結果出力画面１０００によって、ユーザは各プレーヤーがとるアクションを時系列に知ることができる。
【００５５】
次に、第１の実施例の変形例について説明する。以下に説明する変形例では、星取表を用いて各プレーヤーのアクションを選択する。
【００５６】
図９は、第１の実施例の変形例の意思決定支援システムによる処理のフローチャートである。
【００５７】
まず、現在の状況及びシミュレーション期間が入力インターフェースに入力されると（Ｓ１２１）、繰り返し制御パラメータｔの初期値をシミュレーション開始時に設定し、シミュレーション終了時ｔ＿ｅｎｄを設定する。入力される現在の状態には、各プレーヤーの現在のアクション及び現在の各指標値が含まれる。
【００５８】
次に、ｔがｔ＿ｅｎｄより小さいかを判定する。ｔがｔ＿ｅｎｄより小さければ、ステップＳ１０３及びＳ１０５に進む（Ｓ１２２）。ｔがｔ＿ｅｎｄ以上であれば、指定された期間のシミュレーション結果が得られたので、処理を終了し、シミュレーション結果出力画面（図８）を出力する。
【００５９】
次に、全てのプレーヤーが取り得るアクションの選択肢の全ての組み合わせを列挙し（Ｓ１２３）、列挙された全ての組み合わせについて、アクション連鎖モデル１及び反応モデル２をｔ＋αまで駆動し、各プレーヤーの次のアクション及び次の指標値を導出し、補助記憶装置（ＳＴＯＲ）に格納する（Ｓ１２４）。αは、星取表に記載される各アクションのスコアを計算するうえで、時刻ｔにおいて予測が考慮される将来の時間である。
【００６０】
その後、全てのプレーヤーについて、意思モデル４及び評価モデル５を駆動し、各プレーヤーのアクション意思及び評価値を導出し、補助記憶装置（ＳＴＯＲ）に格納する（Ｓ１２５）。
【００６１】
その後、時刻ｔ＋αでの評価値に基づいて星取表を作成し（Ｓ１２６）、星取表を用いて、時刻ｔにおけるプレーヤーのアクションを決定し、補助記憶装置（ＳＴＯＲ）に格納する（Ｓ１２７）。具体的には、星取表は自分の評価と他のプレーヤーの評価とを記載した表で、後述するように、適切なアクションを選択するために用いられる。
【００６２】
全てのプレーヤーの次のアクションが決定した後、反応モデル２が出力した次の指標値を現在の指標値に設定して、反応モデル２の時刻を一つ進める（Ｓ１２８）。そして、繰り返し制御パラメータｔに１を加算して（Ｓ１２９）、ステップＳ１２２に戻る。
【００６３】
以上の処理によって、シミュレーション期間中の各プレーヤーのアクションを、他人のアクションを考慮しつつシミュレートできる。
【００６４】
図１０は、第１の実施例の星取表出力画面１１００の例を示す図である。星取表出力画面は、シミュレーション結果出力画面１０００（図８）において、アクションの欄を選択することによって、出力インターフェース（ディスプレイ装置）に表示される。なお、星取表は、二人のプレーヤーのアクションの関係を表すので、オペレータは、シミュレーション結果出力画面１０００においてアクションの欄を選択した後に、相手方のプレーヤーを選択する。
【００６５】
なお、星取表は、計算機の内部では、図１１に示すモンテカルロ木によって構成するとよい。
【００６６】
まず、画面の内容について説明する。図１０に示す星取表出力画面１１００は、二人のプレーヤーの関係を示し、縦方向にプレーヤー１のアクションが列記され、横方向にプレーヤー２のアクションが列記された星取表１１１０を含む。また、画面の下部には「戻る」ボタン１１２０が設けられている。オペレータが「戻る」ボタン１１２０を操作することによって、シミュレーション結果出力画面１０００に戻ることができる。
【００６７】
次に、星取表の内容について説明する。図１０に示す星取表は、プレーヤー１のアクションとプレーヤー２のアクションとの組において、プレーヤー１の評価とプレーヤー２の評価とが組になって記録される。評価は、図１０に示すように記号で表してもよいし、数値で表してもよい。星取表を用いることによって、複数のプレーヤーの評価値を総合した評価したアクションを決定することができる。
【００６８】
次に、星取表を用いてアクションを選択する方法について、自分がプレーヤー１であり、相手がプレーヤー２である場合を説明する。ＭｉｎＭａｘ法を用いて、想定される最大の損害が最小になるようにアクションを決定する。
【００６９】
例えば、プレーヤーが二人の場合、星取表の各行（自分のアクションが同じ行）に着目して、相手（プレーヤー２）の評価値が最も良いアクションにおけるプレーヤー１の評価値（ＭｉｎＭａｘ評価値）が最も良いアクションを、自プレーヤーの次のアクションに決定する。図示した場合、プレーヤー１のアクションはアクション２に決定する。
【００７０】
また、プレーヤーが３人以上である場合、自分（プレーヤー１）のアクションについて、他プレーヤーのアクションを順に（そのプレーヤーの評価値が最も高いアクションを選ぶとして）固定した上で、自分の評価値が最も高いアクションに決定する。以下、具体的に説明する。
【００７１】
プレーヤーが３人の場合は、以下のステップでアクションを決める。
【００７２】
ステップ１：自分（プレーヤー１）のアクションをアクション１に設定する。
【００７３】
その状態で、プレーヤー２とプレーヤー３との２人のゲームを考える。
ステップ１−１：プレーヤー２を自プレーヤーとして、上記のプレーヤーが２人の方法（星取表によるＭｉｎＭａｘ）によって、プレーヤー２のアクションを決める。
ステップ１−２：プレーヤー３を自プレーヤーとして、上記のプレーヤーが２人の方法（星取表によるＭｉｎＭａｘ）によって、プレーヤー３のアクションを決める。
【００７４】
以上で決まった各プレーヤーのアクション（プレーヤー１＝アクション１、プレーヤー２＝ステップ１−１で決めたアクション、プレーヤー３＝ステップ１−２で決めたアクション）の組み合わせにおける、自分（プレーヤー１）の評価値を、プレーヤー１のアクション１における評価値に設定する。
【００７５】
ステップ２：自分（プレーヤー１）のアクションをアクション２に設定する。
【００７６】
また、前述と同様の方法で、プレーヤー１のアクション２における評価値を決める。
【００７７】
ステップ３：自分（プレーヤー１）のアクションの数だけ、ステップ１の計算を行い、自分（プレーヤー１）にとっての評価値が最も良いアクションを決定する。
【００７８】
さらに、プレーヤーが４人の場合は、以下のステップでアクションを決定する。
【００７９】
ステップ４：自分（プレーヤー１）のアクションを固定する。その結果、プレーヤー２〜４のプレーヤーが３人のゲームとなる。
ステップ４−１：３人のゲームにおいて、プレーヤー２を自プレーヤーとして、上記のプレーヤーが３人の方法によって、プレーヤー２のアクションを決める。
ステップ４−２：３人のゲームにおいて、プレーヤー３を自プレーヤーとして、上記のプレーヤーが３人の方法によって、プレーヤー３のアクションを決める。
ステップ４−３：３人のゲームにおいて、プレーヤー４を自プレーヤーとして、上記のプレーヤーが３人の方法によって、プレーヤー４のアクションを決める。
【００８０】
以上で決まった各プレーヤーのアクション（プレーヤー１＝アクション１、プレーヤー２〜４＝ステップ４−１〜４−３で決めたアクション）の組み合わせにおける、自分（プレーヤー１）の評価値を、プレーヤー１のアクション１における評価値に設定する。
ステップ５：自分（プレーヤー１）のアクションの数だけ、ステップ４の計算を行い、自分（プレーヤー１）にとっての評価値が最も良いアクションを決定する。
【００８１】
図１１は、第１の実施例の星取表を構成するためのモンテカルロ木探索を説明する図である。
【００８２】
すなわち、図１０を用いて前述した方法では、全プレーヤーの全てのアクションの組み合わせを計算するので、計算量が多い。このため、モンテカルロ木探索（Monte-Carlo Tree Search）を用いることで、少ない計算量で同様の処理を近似的に実行することができる。なお、モンテカルロ木の計算を無限回行うと、全プレーヤーの全てのアクションの組み合わせを計算した場合と同じ結果が得られる。
【００８３】
図１１に示すモンテカルロ木探索では、プレーヤー１〜４の４人によるゲームで、各プレーヤーが、アクション１、２のいずれかを選択可能な場合、自分（プレーヤー１）のアクション１における評価値を計算する処理を示す。
【００８４】
まず、自分（プレーヤー１）がアクション１を選択する。次に、プレーヤー２〜４のうちから１人をランダム（等確率）に選択する。以下、プレーヤー２を選択した場合を説明する。プレーヤー２は、子ノードにおいて、プレーヤー２にとって評価値の平均値が高いアクションを選択する。
【００８５】
次に、プレーヤー３又は４の１人をランダム（等確率）に選択する。以下、プレーヤー３を選択した場合を説明する。プレーヤー３は、子ノードにおいて、プレーヤー３にとって評価値の平均値が高いアクションを選択する。最後に、プレーヤー４が、子ノードにおいて、プレーヤー４にとって評価値の平均値が高いアクションを選択する。
【００８６】
以上の処理によって、時刻Ｘ＋０における、各プレーヤーのアクションの組が決定する。
【００８７】
さらに、先読みをする場合、以下の処理を実行する。
【００８８】
まず、プレーヤー１〜４の１人をランダム（等確率）に選択し、子ノードにおいて、選択されたプレーヤーにとって評価値が高いアクションを選択する。その後、残りのプレーヤーについて、前述と同様に、ランダムにプレーヤーを選択し、アクションを決定する。ある程度まで木を展開した後、ランダム・プレイアウトによって、全てのプレーヤーがランダムにアクションを選択して、時刻を進める。そして、予め定めておいた先読み回数に達したときの各プレーヤーの評価値を計算する。最後に、それまで通ってきた木の各ノードを逆に辿って、ノードに付けられている評価値に、先読み時の評価値を追加して平均値を求め、評価値を更新する。
【００８９】
以上の処理を、数百回程度行った後、ルートノードに付されているプレーヤー１の評価値が、プレーヤー１のアクション１の評価値となる。
【００９０】
以上の処理を、自分（プレーヤー１）がとり得る各アクションについて行い、最も自分（プレーヤー１）にとっての評価値が良いアクションを選択する。
【００９１】
このように、星取表によって、ユーザはアクションが導出された理由を知ることができる。
【００９２】
以上に説明したように、本発明の第１の実施例によると、アクション連鎖モデル１、反応モデル２、意思モデル４及び評価モデル５を用いて意思決定支援システムを構成するので、専門家の知見を容易に整理してモデル化することができる。このため、専門家の知見に基づいて将来生じるであろう情勢やアクションを予測することができる。特に、意思モデル４と評価モデル５を分けてモデル化するので、意思要因と抑制要因とを分けることができ、専門家の知見を加工することなくモデルに取り込むことができる。
【００９３】
＜第２の実施例＞
次に、本発明の第２の実施例について説明する。第２の実施例の意思決定支援システムは、アクション連鎖モデル１、反応モデル２、意思モデル４、評価モデル５及び調停モデル７の五つのモデルで構成される。第２の実施例では、前述した第１の実施例と同じ構成及び処理の説明は省略し、異なる構成及び処理について説明する。
【００９４】
図１２は、第２の実施例の意思決定支援システムの論理的な構成を示すブロック図である。
【００９５】
第２の実施例の意思決定支援システムは、アクション連鎖モデル１、反応モデル２、複数のアクション決定部３及び調停モデル７を有する。アクション決定部３は、意思モデル４、評価モデル５及びアクション選択部６を有し、プレーヤー毎に設けられる。
【００９６】
アクション連鎖モデル１、反応モデル２、意思モデル４、評価モデル５及びアクション選択部６は、前述した第１の実施例と同じである。なお、第２の実施例のアクション決定部３は、各プレーヤー毎に取り得る複数のアクションを、その選択率と共に出力する。
【００９７】
調停モデル７は、複数のアクション決定部３から出力されたアクションを調停して、各プレーヤーのアクションを決定する。例えば、各プレーヤーが取り得るアクションには、相反するものがある。調停モデル７は、これらの関係を用いて、同時に行うことができるアクションの組み合わせを選択し、各プレーヤーのアクションを決定する。
【００９８】
具体的には、調停モデル７は、アクション選択部６から出力された複数のアクションの選択率を計算し、各プレーヤー毎に選択率が最も高いアクションを選択し、各プレーヤーのアクションに決定する。
【００９９】
図１３は、第２の実施例の調停モデル７を説明する図である。調停モデル７は、コーザル・ループ・ダイアグラムによって各指標間（ストック要素、フロー要素、状態要素）の相関関係を表すモデルである。
【０１００】
例えば、図示した調停モデル７では、ストック要素１、２、３、４を、それぞれ、ｘ１、ｘ２、ｘ３、ｘ４とし、状態要素１、２を、それぞれ、ｙ１、ｙ２とし、各エッジの係数（ｋ１〜ｋ９）を定める。なお、状態要素は、現在の状態を表す数字であり、例えば、プレーヤー１が現在、アクション１を行っている場合に１、アクション１以外を行っている場合に０などと定めることができる。
【０１０１】
図示したように、ストック要素及び状態要素によって、ストック要素へ流入するフローの量や、ストック要素から流出するフローの量が決まり、ストック要素の量が啓示的に変化する。
【０１０２】
前述のように定義した場合、離散系シミュレーションにおいて、時刻ｔ＋１における各ストック要素の値は以下の漸化式によって計算することができる。
ｘ１（ｔ＋１）＝ｋ１×ｙ１（ｔ）＋ｋ２×ｘ４（ｔ）−ｋ３×ｘ３（ｔ）
ｘ２（ｔ＋１）＝ｘ１（ｔ）＋ｋ３×ｘ３（ｔ）−ｋ４×ｘ４（ｔ）
ｘ３（ｔ＋１）＝ｋ５×ｘ４（ｔ）−ｋ６×ｘ１（ｔ）
ｘ４（ｔ＋１）＝ｋ７×ｘ１（ｔ）−ｋ８×ｘ３（ｔ）−ｋ９×ｙ２（ｔ）
【０１０３】
また、連続系シミュレーションにおいて、各ストック要素の値は以下の微分方程式によって計算することができる。
ｄ［ｘ１（ｔ）］／ｄｔ＝ｋ１×ｙ１（ｔ）＋ｋ２×ｘ４（ｔ）−ｋ３×ｘ３（ｔ）
ｄ［ｘ２（ｔ）］／ｄｔ＝ｘ１（ｔ）＋ｋ３×ｘ３（ｔ）−ｋ４×ｘ４（ｔ）
ｄ［ｘ３（ｔ）］／ｄｔ＝ｋ５×ｘ４（ｔ）−ｋ６×ｘ１（ｔ）
ｄ［ｘ４（ｔ）］／ｄｔ＝ｋ７×ｘ１（ｔ）−ｋ８×ｘ３（ｔ）−ｋ９×ｙ２（ｔ）
【０１０４】
調停モデル７では、ストック要素及び状態要素によってフロー量を制御することによって、複数のストック要素を関連付けて制御し、各プレーヤーがアクションを選択する確率（選択率）を決定し、各プレーヤーのアクションを調停することができる。
【０１０５】
以上に説明したように、本発明の第２の実施例によると、調停モデル７が、アクション選択部６が選択した各プレーヤーのアクションを調停して、各プレーヤーのアクションを決定するので、複数プレーヤーのアクションの調停を考慮せず、モデル１、２、４、５を作成することができる。すなわち、アクションの調停と切り離してモデルを作成することができる。
【０１０６】
なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加・削除・置換をしてもよい。
【０１０７】
また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。
【０１０８】
各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、ＳＳＤ（Solid State Drive）等の記憶装置、又は、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に格納することができる。
【０１０９】
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。
【符号の説明】
【０１１０】
ＣＡＬＣ＿ＮＯＤＥ  計算機
ＣＰＵ  プロセッサ
ＲＡＭ  一時記憶装置
ＳＴＯＲ  補助記憶装置
ＣＯＭ＿ＳＷ  通信スイッチ
ＣＯＭ＿ＤＥＶ  通信デバイス
１  アクション連鎖モデル
２  反応モデル
３  アクション決定部
４  意思モデル
５  評価モデル
６  アクション選択部
７  調停モデル
【図１】
0006511333.tif 000002
【図２】
0006511333.tif 000003
【図３】
0006511333.tif 000004
【図４】
0006511333.tif 000005
【図５】
0006511333.tif 000006
【図６】
0006511333.tif 000007
【図７】
0006511333.tif 000008
【図８】
0006511333.tif 000009
【図９】
0006511333.tif 000010
【図１０】
0006511333.tif 000011
【図１１】
0006511333.tif 000012
【図１２】
0006511333.tif 000013
【図１３】
0006511333.tif 000014