(57)【要約】【課題】実測データとシミュレーション結果との差異を少なくする調整の際に調整の負担を抑えつつ、応答時間の再現性を低下させることなくユーザの操作に対して柔軟な応答を得る。【解決手段】シミュレータ１０は、コンピュータを用いて現象の解析を行うシミュレータであり、シミュレーションを実行するシミュレーション実行手段１８と、センサから取得される実測データとシミュレーション実行手段１８がシミュレーションを実行して得た当該実測データに対応するシミュレーション結果との差異が設定した範囲内に収まるように、前記実測データに基づいてソースプログラム内のモデル式を修正する補正モード実行手段１５とを具備する。【選択図】  図１
2014002290.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを用いて現象の解析を行うシミュレータであり、
シミュレーションを実行するシミュレーション実行手段と、
センサから取得される実測データと前記シミュレーション実行手段がシミュレーションを実行して得た当該実測データに対応するシミュレーション結果との差異が設定した範囲内に収まるように、前記実測データに基づいてソースプログラム内のモデル式を修正する補正モード実行手段とを具備することを特徴とするシミュレータ。
【請求項２】
前記補正モード実行手段は、前記実測データと前記シミュレーション実行手段がシミュレーションを実行して得た当該実測データに対応するシミュレーション結果とを比較する比較器の出力に基づいて、前記実測データと前記シミュレーション実行手段がシミュレーションを実行して得た当該実測データに対応するシミュレーション結果との差異が前記設定した範囲内に収まっているかを判定する差異センサ値判断部と、
前記差異センサ値判断部が前記実測データと前記シミュレーション実行手段がシミュレーションを実行して得た当該実測データに対応するシミュレーション結果との差異が前記設定した範囲内に収まっていないと判定した場合に、記憶手段に保持されるセンサ値と変数とを対応付けたセンサ値／変数対応データベースを参照し、当該差異が発生しているセンサのセンサ値と対応付けられた変数を抽出して当該差異が発生している変数を同定する差異発生変数同定部と、
記憶手段に保持される現象を模擬する計算を実行するソースプログラムを格納するソースプログラムデータベースから前記差異発生変数同定部が同定した変数を含むモデル式の計算を実行するソースプログラムを抽出するソースプログラム検索部と、
前記ソースプログラム検索部が抽出したソースプログラムから前記差異発生変数同定部が同定した変数を含む前記モデル式を抽出するモデル式抽出部と、
前記モデル式抽出部が抽出した前記モデル式から構成要素を抽出するとともに、抽出した前記モデル式の構成要素に対応する実測データが存在するか否かを確認する不具合要素抽出部と、
前記不具合要素抽出部が存在すると判断した前記モデル式の構成要素に対応する前記実測データの近似式を算出することができる場合に当該近似式を算出する近似式算出部と、
前記ソースプログラムデータベースに格納される前記ソースプログラムを修正するソースプログラム修正部と、を備えることを特徴とする請求項１記載のシミュレータ。
【請求項３】
前記補正モード実行手段は、前記実測データに含まれるユーザの操作に係る情報を抽出する操作制御部をさらに備えることを特徴とする請求項２記載のシミュレータ。
【請求項４】
前記補正モード実行手段は、前記モデル式抽出部が抽出した前記モデル式から抽出した前記モデル式の構成要素に対応する実測データが存在しない場合、前記モデル式抽出部が抽出した前記モデル式を表示手段に表示させるように構成され、前記不具合要素抽出部が存在すると判断した前記モデル式の構成要素に対応する前記実測データの近似式を算出することができない場合には、前記不具合要素抽出部が存在すると判断した前記モデル式の構成要素を表示手段に表示させるように構成されることを特徴とする請求項２または３記載のシミュレータ。
【請求項５】
前記補正モード実行手段は、前記近似式算出部が算出した近似式と整合するように、前記ソースプログラム修正部が前記ソースプログラムデータベースに格納される前記ソースプログラムの前記モデル式の係数を調整する自動補正モードと、ユーザの入力操作を受け付けて前記ソースプログラムデータベースに格納される前記ソースプログラムを修正する手動補正モードとを有することを特徴とする請求項２から４のいずれか１項に記載のシミュレータ。
【請求項６】
前記シミュレーションを前記シミュレーション実行手段が実行する際のシミュレーションパラメータを調整する手段であり、計算精度よりも実行速度の再現精度を高めることを優先させて前記シミュレーションパラメータの調整を行う訓練モード実行手段をさらに具備することを特徴とする請求項１から５のいずれか１項に記載のシミュレータ。
【請求項７】
前記訓練モード実行手段は、ｎ＞１の場合において、前記シミュレーションをｎ倍速で実行するか否かを判定するｎ倍速実行判定部と、
前記ｎ倍速でシミュレーションを実行する系統が訓練の対象となる系統であるか否かを判断する系統判断部と、
前記訓練の対象となる系統のモデルの精度を変更することが可能か否かを判定するモデル精度変更可否判定部と、
前記モデル精度変更可否判定部が前記訓練の対象となる系統のモデルの精度を変更することが可能と判定した場合に、前記訓練の対象となる系統のモデルの精度を変更するモデル精度変更部と、
前記シミュレーションを実行する際に前記訓練の対象とならない系統のモデルの時間ステップを変更することが可能であるか否かを判定する時間ステップ変更可否判定部と、
前記時間ステップ変更可否判定部が前記シミュレーションを実行する際に前記訓練の対象とならない系統のモデルの時間ステップを変更することが可能であると判定した場合に、当該時間ステップを変更する時間ステップ変更部とを備えることを特徴とする請求項６に記載のシミュレータ。
【請求項８】
前記シミュレーション実行手段は、前記モデル精度変更部が、前記訓練の対象となる系統のモデルの精度を変更する場合、記憶手段に保持される実測データから前記訓練の対象となる系統の実測データを読み出して適用するように構成されることを特徴とする請求項７に記載のシミュレータ。
【請求項９】
前記シミュレーション実行手段は、前記時間ステップ変更可否判定部が前記訓練の対象とならない系統のモデルの時間ステップを変更することができないと判定した場合、前記訓練の対象とならない系統のモデルについては、シミュレーションの実行を停止するとともに、記憶手段に保持される実測データから前記訓練の対象とならない系統のモデルの実測データを読み出して適用するように構成されることを特徴とする請求項７または８記載のシミュレータ。
【請求項１０】
前記シミュレーションを前記シミュレーション実行手段が実行する際のシミュレーションパラメータを調整する手段であり、実行速度よりも計算精度を高めることを優先させて前記シミュレーションパラメータの調整を行う解析モード実行手段をさらに具備することを特徴とする請求項１から９のいずれか１項に記載のシミュレータ。
【請求項１１】
前記解析モード実行手段は、シミュレーションを実行する系統が解析の対象となる系統であるか否かを判断する系統判断部と、
前記解析の対象となる系統のモデルの精度を変更することが可能か否かを判定するモデル精度変更可否判定部と、
前記モデル精度変更可否判定部が前記解析の対象となる系統のモデルの精度を変更することが可能と判定した場合に、前記解析の対象となる系統のモデルの精度を変更するモデル精度変更部と、
前記シミュレーションを実行する際に前記解析の対象とならない系統のモデルの時間ステップを変更することが可能であるか否かを判定する時間ステップ変更可否判定部と、
前記時間ステップ変更可否判定部が前記シミュレーションを実行する際に前記解析の対象とならない系統のモデルの時間ステップを変更することが可能であると判定した場合に、当該時間ステップを変更する時間ステップ変更部と、を備えることを特徴とする請求項１０記載のシミュレータ。
【請求項１２】
前記解析モード実行手段は、前記実行速度よりも前記計算精度を高めることを優先させた前記シミュレーションパラメータによって実行される前記シミュレーションの結果を収集するデータ収集部をさらに備えることを特徴とする請求項１１記載のシミュレータ。
【請求項１３】
シミュレーションを実行する手段と、前記シミュレーションを実行するためのシミュレーションパラメータを調整する手段とを具備するシミュレータに適用されるシミュレーション実行方法であり、
前記シミュレーションパラメータを調整する手段が、センサから取得される実測データと前記シミュレーションを実行する手段が前記シミュレーションを実行して得た当該実測データに対応するシミュレーション結果との差異が設定した範囲内に収まっているか否かを判定するステップと、
前記シミュレーションパラメータを調整する手段が、前記判定するステップにおいて、前記実測データと前記シミュレーションを実行して得た当該実測データに対応するシミュレーション結果との差異が設定した範囲内に収まっていないと判定した場合に、記憶手段に保持されるセンサ値と変数とを対応付けたセンサ値／変数対応データベースを参照し、前記差異が発生しているセンサのセンサ値と対応付けられた変数を抽出して前記差異が発生している変数を同定するステップと、
前記シミュレーションパラメータを調整する手段が、記憶手段に保持される現象を模擬する計算を実行するソースプログラムを格納するソースプログラムデータベースから前記差異が発生している変数を同定するステップにおいて同定された変数を含むモデル式の計算を実行するソースプログラムを抽出し、当該ソースプログラムから前記差異が発生している変数を同定するステップにおいて同定された変数を含むモデル式を抽出するステップと、を具備することを特徴とするシミュレーション実行方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シミュレータおよびシミュレーション実行方法に関する。
【背景技術】
【０００２】
原子力プラントや化学プラントなどを対象としたシミュレータは、プラントの系統を構成している機器をモデル式などで模擬しており、このモデル式は全ての物理現象をモデル化しているわけではなく、主要なパラメータを対象としているのが一般的である。例えば、計算時間や計算精度などを考慮して仕様を決定したり、設計／構造データから定格値などを抽出し、この値に基づいてモデル式などを構築したりしている。そのため、モデル化の対象から外れた部分では、シミュレータの挙動が実機と異なる場合があり、実機を運用している運転員にとっては違和感が残ることもある。
【０００３】
シミュレータの挙動が実機との間で発生する差異について、流量を模擬したモデル式を具体例（図１５）として説明する。
【０００４】
図１５は、ポンプ回転数に対するポンプ流量を、実測データ１とシミュレーション結果２とを対比して示した説明図（グラフ）である。なお、図１５に示されるグラフにおいて、横軸はポンプ回転数（％）、縦軸はポンプ流量（ｍ３／ｈｒ）である。また、符号３は実測データ１とシミュレーション結果２との差異を示している。
【０００５】
ポンプ流量Ｆは、定格時におけるポンプ流量（定格流量）Ｆｃとポンプ回転数（定格に対する割合：％）Ｐｖを用いて次の式（１）のように表される。
Ｆ ＝ Ｆｃ ＊ Ｐｖ  ・・・（１）
【０００６】
上記式（１）は、いわいる比例関係をモデル化したものであり、定格流量Ｆｃにポンプ回転数Ｐｖを掛けてポンプ流量Ｆを算出するモデル式である。このようなモデル式では、ポンプ回転数１００％の場合、定格流量Ｆｃとなるので実機と差異はほぼゼロである。しかしながら、例えば、ポンプ回転数４０％や６０％等の中間の回転数では、実測データ１とシミュレーション結果２との差異３が大きくなる場合がある。差異３が大きく生じる要因としては、機器の特性、配管の形状などモデル式に反映していない要素が影響していると考えられる。
【０００７】
もちろん、機器の特性、配管の形状等の要素を全てモデル式に反映すれば、模擬精度が向上し、差異３を小さくすることはできるものの、モデル化の負荷、考慮すべき要素の確認等、実際には、ポンプ流量Ｆに影響する要素の全てをモデル式に反映することは、手間と時間がかかりすぎる。また、計算式の増加は、計算時間の増大にもつながり、倍速計算はもとより、実時間の計算にも影響がでる。さらに、計算式の増加は、バグの発生要因を増やすことにもなる。
【０００８】
そこで、上述した事情を考慮して、例えば、モデル式に予め変更可能な調整係数を設定したり、収集した実測データ１と置換したりするなどして、実測データ１とシミュレーション結果２との差異３を少なくするための調整手段を備えるシミュレータがある。このような差異３を少なくするための調整手段を備えるシミュレータの一例としては、例えば、特開２０１１−１２３１８７号公報（特許文献１）に記載されるものがある。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１１−１２３１８７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
上述したような調整手段を備える従来のシミュレータにおいて、例えば、調整係数による調整によって実測データとシミュレーション結果との差異を少なくするように調整する場合、調整係数の係数値を決めるためにシミュレーション結果と実機データを人間が比較し、机上検討でその数値を決め、再度シミュレーションで結果を確認する等の作業を行っている。この作業でも、調整後の結果を確認するために、シミュレータを目的とする状態にするため、操作および長時間の応答待ちを要する場合がある。これは化学プラントシミュレータでは、化学反応を模擬しているため、顕著に発生している。
【００１１】
また、シミュレータの主な用途の１つに運転訓練がある。運転訓練には、プラントの起動／停止、通常時の定格時運転などの他、異常時、事故時の訓練も行われる。特に、異常時、事故時の訓練は実機を使用することができないため、シミュレータによる訓練が不可欠である。この場合、精度良くシミュレーションを行おうとすれば、モデル式などを詳細に設計する必要があるため、応答時間の再現性（実時間性）が低下する場合があるという課題がある。
【００１２】
一方、実測データをそのまま用いる調整手段の場合、特定の条件下であれば、応答時間の再現性を低下させることなく実測データとシミュレーション結果との差異を少なくすることができるかもしれない。
【００１３】
しかしながら、実測データを得た場面と異なる条件下（例えば、実測データを得た場面とは異なる操作を行った場合等）においては、応答が不適切となる場合がある。すなわち、実測データを得た場面に応じたデータやシミュレーション結果を出力することはできるとしても、実測データを得た場面とは異なる操作などを行う（想定したシナリオから外れる）と、シミュレーション結果に矛盾が生じる場合がある。
【００１４】
故に、実測データをそのまま用いる調整手段を備える従来のシミュレータでは、ユーザの操作に対して柔軟な応答を得ることができないという課題がある。例えば、運転訓練装置等の運転訓練を主な用途の１つとするシミュレータでは、訓練シナリオを限定しない様々な場面を想定した訓練を行えることが望まれるため、ユーザの操作に対して柔軟な応答を得るという要請に応えることは重要である。
【００１５】
本発明は、上述した事情を考慮してなされたものであり、実測データとシミュレーション結果との差異を少なくする調整の際に調整の負担を抑えつつ、応答時間の再現性を低下させることなくユーザの操作に対して柔軟な応答を得るシミュレータおよびシミュレーション実行方法を提供することを目的とする。
【課題を解決するための手段】
【００１６】
本発明の実施形態に係るシミュレータは、上述した課題を解決するため、コンピュータを用いて現象の解析を行うシミュレータであり、シミュレーションを実行するシミュレーション実行手段と、センサから取得される実測データと前記シミュレーション実行手段がシミュレーションを実行して得た当該実測データに対応するシミュレーション結果との差異が設定した範囲内に収まるように、前記実測データに基づいてソースプログラム内のモデル式を修正する補正モード実行手段とを具備することを特徴とする。
【００１７】
本発明の実施形態に係るシミュレーション実行方法は、上述した課題を解決するため、シミュレーションを実行する手段と、前記シミュレーションを実行するためのシミュレーションパラメータを調整する手段とを具備するシミュレータに適用されるシミュレーション実行方法であり、前記シミュレーションパラメータを調整する手段が、センサから取得される実測データと前記シミュレーションを実行する手段が前記シミュレーションを実行して得た当該実測データに対応するシミュレーション結果との差異が設定した範囲内に収まっているか否かを判定するステップと、前記シミュレーションパラメータを調整する手段が、前記判定するステップにおいて、前記実測データと前記シミュレーションを実行して得た当該実測データに対応するシミュレーション結果との差異が設定した範囲内に収まっていないと判定した場合に、記憶手段に保持されるセンサ値と変数とを対応付けたセンサ値／変数対応データベースを参照し、前記差異が発生しているセンサのセンサ値と対応付けられた変数を抽出して前記差異が発生している変数を同定するステップと、前記シミュレーションパラメータを調整する手段が、記憶手段に保持される現象を模擬する計算を実行するソースプログラムを格納するソースプログラムデータベースから前記差異が発生している変数を同定するステップにおいて同定された変数を含むモデル式の計算を実行するソースプログラムを抽出し、当該ソースプログラムから前記差異が発生している変数を同定するステップにおいて同定された変数を含むモデル式を抽出するステップと、を具備することを特徴とする。
【発明の効果】
【００１８】
本発明によれば、実測データとシミュレーション結果との差異を少なくする調整の際に調整の負担を抑えつつ、応答時間の再現性を低下させることなくユーザの操作に対して柔軟な応答を得ることができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の実施形態に係るシミュレータの構成を概略的に示したブロック図。
【図２】本発明の実施形態に係るシミュレータに入出力されるデータの流れを概略的に示すブロック図。
【図３】本発明の実施形態に係るシミュレータが実行するシミュレーションモード決定手順の処理ステップを示す処理フロー図。
【図４】本発明の実施形態に係るシミュレータが具備する補正モード実行手段の構成を概略的に示したブロック図。
【図５】本発明の実施形態に係るシミュレータが実行する第１の補正モード実行手順の処理ステップを示す処理フロー図。
【図６】本発明の実施形態に係るシミュレータが実行する第１の補正モード実行手順における不具合判定工程の処理ステップを示す処理フロー図。
【図７】本発明の実施形態に係るシミュレータが実行する第１の補正モード実行手順における不具合修正工程の処理ステップを示す処理フロー図。
【図８】本発明の実施形態に係るシミュレータの補正モードにおいて、補正に使用する実測データが一次の近似式として近似できる場合の例を示す説明図。
【図９】本発明の実施形態に係るシミュレータの補正モードにおいて、補正に使用する実測データが多項式の近似式として近似できる場合の例を示す説明図。
【図１０】本発明の実施形態に係るシミュレータが実行する第２の補正モード実行手順の処理ステップを示す処理フロー図。
【図１１】本発明の実施形態に係るシミュレータが具備する訓練モード実行手段の構成を概略的に示したブロック図。
【図１２】本発明の実施形態に係るシミュレータが実行する訓練モード実行手順の処理ステップを示す処理フロー図。
【図１３】本発明の実施形態に係るシミュレータが具備する解析モード実行手段の構成を概略的に示したブロック図。
【図１４】本発明の実施形態に係るシミュレータが実行する解析モード実行手順の処理ステップを示す処理フロー図。
【図１５】ポンプ回転数に対するポンプ流量を、実測データとシミュレーション結果とを対比して示した説明図（グラフ）。
【発明を実施するための形態】
【００２０】
以下、本発明の実施形態に係るシミュレータおよびシミュレーション実行方法について、添付の図面を参照して説明する。なお、以下に説明する本発明の実施形態に係るシミュレータは、プラントの現象を模擬するシミュレータの例である。
【００２１】
図１は、本発明の実施形態に係るシミュレータの一例であるシミュレータ１０の構成を概略的に示したブロック図である。
【００２２】
シミュレータ１０は、現象を模擬するモデル式などをコンピュータ等の演算処理装置を用いて計算することによって、例えばプラントの系統を構成している機器等で生じる現象を模擬した装置である。シミュレータ１０は、例えば、シミュレータ１０の各手段である入力手段１１、出力手段１２、通信手段１３、モード選択手段１４、補正モード実行手段１５、訓練モード実行手段１６、解析モード実行手段１７、シミュレーション実行手段１８、表示処理手段１９、記憶手段２１および制御手段２２として機能させるシミュレータプログラム（以下、プログラムをＰＧと省略する。）２４をコンピュータに実行させることによって、ハードウェア資源であるコンピュータとソフトウェア資源であるプログラムとが協働して実現される。
【００２３】
また、シミュレータ１０では、シミュレータ１０の各手段がアクセスする各種のデータの一例として、シミュレータＰＧ２４、実測データデータベース（以下、データベースをＤＢと省略する。）２５、センサ値／変数対応ＤＢ２６、ソースＰＧ２７、初期値ＤＢ２８、解析結果情報２９が記憶手段２１に保持される。
【００２４】
入力手段１１は、例えば、コンピュータとインターフェイスを介して接続される入力装置またはコンピュータ自身が備えるキーボードやマウス等の入力デバイスによって実現される。入力手段１１は、入力された情報を制御手段２２へ与える。
【００２５】
出力手段１２は、例えば、コンピュータとインターフェイスを介して接続される表示装置またはコンピュータ自身が備えるディスプレイ等の表示手段、コンピュータとインターフェイスを介して接続されるプリンタ等の印字手段等によって実現される。出力手段１２は、表示要求を受け取ると、当該表示要求に応じた内容を画面表示する。また、出力手段１２は、印字要求を受け取ると、当該印字要求に応じた内容を印字出力する。
【００２６】
通信手段１３は、外部機器とデータを送受信する機能を有する。通信手段１３は、制御手段２２から受け取ったデータを外部機器に送信する一方、外部機器から送られてきたデータを制御手段２２へ与える。
【００２７】
モード選択手段１４は、シミュレータ１０に設定される補正モード、訓練モードおよび解析モードのうち、何れのモードが選択されたか認識し、選択されたモードによるシミュレーションを実行するようにモードを切り替える機能を有する。シミュレータ１０では、例えば、ユーザが入力手段１１から実行したいモードの要求に応じて、モード選択手段１４が補正モード、訓練モードおよび解析モードから実行する１つのモードを選択する。
【００２８】
補正モード実行手段１５は、実測データとシミュレーション結果との差異を設定した範囲（所望の範囲）内に収めるようにソースＰＧ２７を自動的に修正したり、手動による修正を促したりする補正モードを実行する手段であり、例えば、後述する図５および図１０に示される補正モード実行手順を実行する。
【００２９】
訓練モード実行手段１６は、シミュレーションを実行する際に、運転員の運転訓練に適するモード（訓練モード）となるように、シミュレーションを実行する際の各種パラメータ（シミュレーションパラメータ）を調整する手段であり、例えば、後述する図１２に示される訓練モード実行手順を実行する。訓練モードでは、計算精度よりも実行速度が優先される。すなわち、訓練モードでは、計算精度を落としてでも実行速度の再現精度を高めてシミュレーションを実行させる。シミュレータ１０では、低下した計算精度を補完するため、実測データおよび解析モードの計算結果を用いる。
【００３０】
解析モード実行手段１７は、シミュレーションを実行する際に、現象の解析に適するモード（解析モード）となるように、シミュレーションを実行する際の各種パラメータ（シミュレーションパラメータ）を調整する手段であり、例えば、後述する図１４に示される解析モード実行手順を実行する。解析モードでは、実行速度よりも計算精度が優先される。すなわち、解析モードでは、計算精度を向上させて、事象を詳細に模擬する。
【００３１】
シミュレーション実行手段１８は、現象を模擬するモデル式などを計算するソースＰＧ２７を実行することによって、シミュレーションを実行する手段である。シミュレーション実行手段１８がシミュレーションを実行する際は、モード選択手段１４によって選択された補正モード、訓練モードおよび解析モードの何れかのモードでシミュレーションを実行する。
【００３２】
表示処理手段１９は、情報をディスプレイ等の表示手段に表示するための表示情報を生成する機能を有する。表示処理手段１９は、例えば、シミュレーション実行手段１８が行ったシミュレーション結果や補正モード実行手段１５が判断した不具合のあるモデル式またはモデル式の要素等の情報を受け取ると、受け取った情報の内容を表示するための表示情報を生成し、生成した表示情報を制御手段２２へ与える。どのように表示するかは、初期設定しておいても良いし、その都度、入力手段１１から設定しても良い。
【００３３】
記憶手段２１は、データの読み出し（リード）および書き込み（ライト）が可能な記憶領域を備え、当該記憶領域にデータを保持する機能を有する。記憶手段２１にはシミュレータ１０の各手段がアクセスすることができ、記憶手段２１に保持される情報は、必要に応じて参照される。
【００３４】
制御手段２２は、シミュレータ１０の装置全体の処理を制御する手段であり、入力手段１１、出力手段１２、通信手段１３、モード選択手段１４、補正モード実行手段１５、訓練モード実行手段１６、解析モード実行手段１７、シミュレーション実行手段１８、表示処理手段１９および記憶手段２１と相互にデータを授受し、これらを制御する機能を有する。
【００３５】
制御手段２２は、入力手段１１から情報を受け取ると、入力手段１１が受け付けた情報の種類に応じて、出力手段１２、通信手段１３、モード選択手段１４、補正モード実行手段１５、訓練モード実行手段１６、解析モード実行手段１７、シミュレーション実行手段１８、表示処理手段１９および記憶手段２１の何れかに入力を受け付けた情報に基づいて要求を与える。
【００３６】
制御手段２２は、通信手段１３から情報を受け取ると、通信手段１３から受け取る情報の種類に応じて、出力手段１２、モード選択手段１４、補正モード実行手段１５、訓練モード実行手段１６、解析モード実行手段１７、シミュレーション実行手段１８、表示処理手段１９および記憶手段２１の何れかに受け取った情報を与える。
【００３７】
制御手段２２は、モード選択手段１４が選択したモードやシミュレーション実行手段１８が実行するシミュレーション結果等を表示させる受け取った場合には、受け取った表示要求に対応する情報を受け取り、受け取った情報を表示処理手段１９に与えて当該情報を表示する表示情報を生成させる。
【００３８】
制御手段２２は、モード選択手段１４が選択したモードの情報のほか、補正モードを選択している場合に、ソースＰＧ２７のモデル式を自動修正する自動補正モードであるか、ユーザの入力内容に従ってソースＰＧ２７のモデル式を修正する手動補正モードであるかを認識している。制御手段２２は、自動補正モードが選択されているか手動補正モードが選択されているか、すなわち、自動補正モードが入（ＯＮ）か切（ＯＦＦ）かに応じて、補正モード実行手段１５を制御する。
【００３９】
制御手段２２は、表示処理手段１９が生成した表示情報を受け取ると、受け取った表示情報を表示要求とともに表示手段としての出力手段１２に与える。出力手段１２では、与えられた表示情報に基づく表示内容が表示される。
【００４０】
シミュレータＰＧ２４は、コンピュータをシミュレータ１０として機能させるためのプログラムである。換言すれば、シミュレータＰＧ２４は、後述する補正モード実行手順等の処理手順をコンピュータに実行させるプログラムである。
【００４１】
実測データＤＢ２５は、プラントを構成している各系統の各機器で取得される実測データである。実測データは、例えば、系統毎に付される系統番号や系統名称、機器毎に付される機器番号や機器名称等のプラントを構成する機器を一義に特定する情報と関連付けて保存される。従って、系統番号および機器番号等のプラントを構成する機器を一義に特定する情報を検索キーとして与えれば、与えられた検索キーに対応する実測データを検索し抽出することができる。
【００４２】
また、実測データＤＢ２５は、任意の情報として実測データを保存した日時の情報を有する。これは、ユーザの利便性向上の観点からであり、例えば、ユーザが必要とする実測データを検索する際に、実測データを保存した日時の情報を参考情報として提供するためである。
【００４３】
センサ値／変数対応ＤＢ２６は、模擬するプラントにおけるセンサ値とこのセンサ値を取得するセンサをモデル化したモデル式に用いられる変数とを対応付けた情報を有する。従って、センサ値を検索キーとすれば、当該センサ値と対応付けられた変数の情報を検索し抽出することができる。
【００４４】
ソースＰＧ２７は、現象を模擬する計算を実行するプログラムである。プラントを模擬するシミュレータの場合には、プラントを構成する弁、ポンプなどの部品単位でモジュール化されていることが多く、プラントを模擬するシミュレータでは、例えば弁等の構成部品を模擬したソースＰＧ２７がある。なお、式（２）で表されるソースＰＧ２７は、弁単体で構成される流路の流量を求める場合の例であり、Ｆは流路の流量、Ｆｃは弁の定格流量、Ｚｖは弁の開度である。
Ｆ ＝ Ｆｃ ＊ Ｚｖ  ・・・（２）
【００４５】
初期値ＤＢ２８は、プラント内で実測される流量、圧力等のプラントの状態を表す物理量と、当該物理量の初期値とを関連付けた情報を有する。従って、プラントの状態量から当該プラント状態量の初期値を特定することができる。
【００４６】
解析結果情報２９は、解析シミュレーションの実行日時または実行条件等の実行する解析シミュレーションを一義に特定する情報と当該解析シミュレーションの解析結果とを関連付けた情報を有する。従って、解析シミュレーションの実行日時または実行条件等を検索キーとすれば、当該検索キーと対応付けられた解析シミュレーション結果を検索し抽出することができる。
【００４７】
このように構成されるシミュレータ１０は、実測データとシミュレーション結果との差異が予め設定された範囲を超えるセンサに着目して不具合の原因を特定する。実測データとシミュレーション結果との差異が予め設定された範囲を超えるセンサに着目して不具合の原因を特定するのは、従来のプラントを対象としたシミュレータの検証では、プラントの起動、停止および定常運転の他、異常事象、事故事象など模擬対象としている動作について開発者、有識者などで応答の妥当性を人間系で確認していたが、この確認作業で見つかる不具合は、センサとして模擬している値から判断できることが多い点に鑑みたものである。
【００４８】
なお、上述したシミュレータ１０は、一例として、入力手段１１、出力手段１２、通信手段１３、モード選択手段１４、補正モード実行手段１５、訓練モード実行手段１６、解析モード実行手段１７、シミュレーション実行手段１８、表示処理手段１９、記憶手段２１および制御手段２２を具備すると説明したが、必ずしも、上述した各手段１１〜１９，２１，２２の全てを具備する必要はない。
【００４９】
例えば、外部との通信を行わないのであれば、通信手段１３を具備しないシミュレータ１０を構成することもできる。また、シミュレータ１０の用途として運転訓練を排除できるのであれば、訓練モード実行手段１６を具備しないシミュレータ１０を構成することもできるし、シミュレータ１０の用途としてより詳細な現象の解析（解析モードでのシミュレーション実行）を排除できるのであれば、解析モード実行手段１７を具備しないシミュレータ１０を構成することもできる。さらに、訓練モード実行手段１６および解析モード実行手段１７を具備しないシミュレータ１０においては、シミュレーションの実行モードが１つとなるので、この場合には、モード選択手段１４を省略することもできる。
【００５０】
図２は、シミュレータ１０に入出力されるデータの流れを概略的に示すブロック図である。
【００５１】
シミュレータ１０には、プラント実機のセンサや機器等に相当する実測データ出力部３０へ与えられる入力（ＩＮＰＵＴ）と、この入力に基づいて得られた実測データ出力部３０からの出力（ＯＵＴＰＵＴ）とが与えられる。また、実測データ出力部３０の出力は実測データＤＢ２５へ所望の検索キーと関連付けられて記憶される。
【００５２】
シミュレータ１０では、プラントで生じる現象を模擬するシミュレーション実行手段１８に実測データ出力部３０へ与えられる入力と同じ入力が与えられる。シミュレーション実行手段１８は、与えられた入力に基づいて計算した結果を比較器３１に出力する。一方、比較器３１には、シミュレーション実行手段１８の計算結果の他にも実測データ出力部３０の出力も与えられる。
【００５３】
比較器３１は、実測データ出力部３０の出力とシミュレーション実行手段１８の計算結果とを比較し、比較結果を補正モード実行手段１５に与える。補正モード実行手段１５は、比較器３１の出力（比較結果）に基づいて、実測データとシミュレーション結果との差異が設定の範囲内に収まっているか否かを判断する。
【００５４】
図３は、シミュレータ１０が実行するシミュレーションモード決定手順の処理ステップ（ステップＳ１〜ステップＳ６）を示す処理フロー図である。
【００５５】
シミュレータ１０では、どのシミュレーションモードを選択するかを示すモード選択指令が与えられると、モード選択手段１４が、当該指令が補正モード、訓練モードおよび解析モードの何れのモードを選択する指令かを判定し、判定結果に係るモードを、シミュレーションの実行モードとして決定する。すなわち、モード選択手段１４が判定したモードでシミュレーションが実行される。
【００５６】
シミュレーションモード決定手順（ステップＳ１〜ステップＳ６）は、まず、どのシミュレーションモードを選択するかを示すモード選択指令が与えられると（ステップＳ１でＹＥＳの場合）、続いて、モード選択手段１４が、与えられたモード選択指令が補正モードの選択指令か否かを判定する（ステップＳ２）。
【００５７】
ここで、与えられたモード選択指令が補正モードの選択指令である場合（ステップＳ２でＹＥＳの場合）、モード選択手段１４は与えられたモード選択指令が補正モードの選択指令と判定し、判定結果が制御手段２２に与えられる。制御手段２２は、シミュレーションの実行指令を生成してシミュレーション実行手段１８に与えるとともに、モード選択指令の判定結果として得た補正モードの実行指令を生成して補正モード実行手段１５に与えることによって、シミュレータ１０では、補正モードでシミュレーションが実行される（ステップＳ３）。シミュレーションを実行するモードが補正モードであると判定されると、シミュレーションモード決定手順は終了する（ＥＮＤ）。
【００５８】
一方、与えられたモード選択指令が補正モードの選択指令ではない場合（ステップＳ２でＮＯの場合）、続いて、与えられたモード選択指令が訓練モードの選択指令であるか否かを判定する（ステップＳ４）。ここで、与えられたモード選択指令が訓練モードの選択指令である場合（ステップＳ４でＹＥＳの場合）、モード選択手段１４は与えられたモード選択指令が訓練モードの選択指令と判定し、判定結果が制御手段２２に与えられる。
【００５９】
制御手段２２は、シミュレーションの実行指令を生成してシミュレーション実行手段１８に与えるとともに、モード選択指令の判定結果として得た訓練モードの実行指令を生成して訓練モード実行手段１６に与えることによって、シミュレータ１０では、訓練モードでシミュレーションが実行される（ステップＳ５）。シミュレーションを実行するモードが訓練モードであると判定されると、シミュレーションモード決定手順は終了する（ＥＮＤ）。
【００６０】
また、与えられたモード選択指令が補正モードの選択指令でも訓練モードの選択指令でもない場合（ステップＳ２でＮＯ→ステップＳ４でＮＯの場合）、モード選択手段１４は与えられたモード選択指令が解析モードの選択指令と判定し、判定結果が制御手段２２に与えられる。
【００６１】
制御手段２２は、シミュレーションの実行指令を生成してシミュレーション実行手段１８に与えるとともに、モード選択指令の判定結果として得た解析モードの実行指令を生成して解析モード実行手段１７に与えることによって、シミュレータ１０では、解析モードでシミュレーションが実行される（ステップＳ６）。シミュレーションを実行するモードが解析モードであると判定されると、シミュレーションモード決定手順は終了する（ＥＮＤ）。
【００６２】
なお、図３に示される処理フローは一例であり、モードを判定する順番は図３に示される順番に限定されない。シミュレータ１０が実行するシミュレーションモード決定手順では、選択され得る３つのモードのうち、任意の２つに対して選択されたか否かを判定しさえすれば、その手順は任意である。
【００６３】
例えば、シミュレーションモード決定手順において、補正モードまたは訓練モードが選択されたか否かを判定する処理ステップ（ステップＳ２またはステップＳ４）の代わりに、図３には示されない解析モードに対して選択されたか否かを判定する処理ステップを備えていても良い。また、補正モードが選択されたか否かの判定よりも先に訓練モードが選択されたか否かの判定を行うようにしても良い。
【００６４】
図４は、シミュレータ１０が具備する補正モード実行手段１５の構成を概略的に示したブロック図である。
【００６５】
補正モード実行手段１５は、差異センサ値判断部３３と、差異発生変数同定部３４と、ソースＰＧ検索部３５と、モデル式抽出部３６と、不具合要素抽出部３７と、近似式算出部３８と、ソースＰＧ修正部３９と、操作制御部４０とを備える。
【００６６】
差異センサ値判断部３３は、比較器３１（図２）から各機器について取得した実測データとシミュレーション結果との差異が設定した範囲（所望の範囲）内にあるか否かを判定する機能を有し、判断結果を制御手段２２に与える。制御手段２２は、差異センサ値判断部３３が所望の範囲を超えて実測データとシミュレーション結果との差異が生じていると判断した場合、不具合が発生していると判断し、シミュレータ１０による自動修正またはユーザに不具合が発生している旨を提示して修正を促す。
【００６７】
差異発生変数同定部３４は、差異センサ値判断部３３が実測データとシミュレーション結果との差異が設定した所望の範囲（許容値）を超えていると判断した場合に、当該差異が発生している変数を同定する機能を有する。差異発生変数同定部３４は、センサ値／変数対応ＤＢ２６を参照し、当該差異が発生しているセンサ値と対応付けられた変数を抽出することによって当該差異が発生している変数を同定する。差異発生変数同定部３４が同定した変数の情報は制御手段２２に与えられる。
【００６８】
ソースＰＧ検索部３５は、変数を検索キーとして、検索キーとして与えられる変数を含むモデル式の計算を実行するソースＰＧ２７を検索する機能を有する。ソースＰＧ検索部３５は、差異発生変数同定部３４が同定した変数の情報を制御手段２２から受け取り、受け取った変数を含むモデル式の計算を実行するソースＰＧ２７を検索する。ソースＰＧ検索部３５が検索した結果の情報は制御手段２２に与えられる。
【００６９】
モデル式抽出部３６は、ソースＰＧ検索部３５の検索結果として得られたソースＰＧ２７内から差異発生変数同定部３４が同定した変数を含むモデル式を抽出する機能を有する。モデル式抽出部３６が抽出したモデル式の情報は、制御手段２２に与えられ、出力手段１２を構成するディスプレイ等の表示手段に表示させることができ、ユーザは表示手段を介してモデル式抽出部３６が抽出したモデル式の内容を確認することができる。
【００７０】
不具合要素抽出部３７は、モデル式抽出部３６が抽出したモデル式の構成要素を抽出する機能と、モデル式抽出部３６が抽出したモデル式の構成要素に対応する実測データが存在するか否かを確認する機能とを有する。
【００７１】
不具合要素抽出部３７は、モデル式抽出部３６が抽出したモデル式から構成要素を抽出し、抽出したモデル式の構成要素に対応する実測データが存在するか否かを確認する。不具合要素抽出部３７が抽出したモデル式の構成要素および当該構成要素に対応する実測データが存在するか否かの確認結果の情報は制御手段２２に与えられる。
【００７２】
ここで、構成要素に対応する実測データが存在するか否かは、例えば、ソースＰＧ検索部３５の検索結果として得られたソースＰＧ２７が模擬する部品に対応する系統番号や機器番号等の情報を検索キーとして実測データＤＢ２５から抽出することができる。また、操作者が抽出したモデル式の構成要素を一旦確認した上で、対応する系統番号や機器番号等の情報を手動で与えることもできる。
【００７３】
近似式算出部３８は、不具合要素抽出部３７が存在すると判断したモデル式抽出部３６が抽出したモデル式の構成要素に対応する実測データに対して、一次式（ｙ＝ａｘ＋ｂ）または二次以上の多項式（例えば、ｙ＝ａｘ３＋ｂｘ２＋ｃｘ＋ｄ）で近似できるか否かを判定する機能と、当該実測データを一次式または二次以上の多項式で近似できる場合に近似式を算出する機能とを有する。
【００７４】
近似式算出部３８が有する近似式を算出する機能は、例えば、最小自乗法を用いた多項近似式を計算するプログラム等、公知のプログラムを活用することで実現できる。近似式算出部３８が近似式を得られるか否かの判定結果および近似式を算出した結果の情報は、制御手段２２に与えられる。
【００７５】
ソースＰＧ修正部３９は、ソースＰＧ２７を修正する機能を有する。ソースＰＧ２７の修正は、ユーザの入力操作に基づく修正指令（手動補正モードの場合）または制御手段２２から与えられる実測データを示す近似式への修正指令（自動補正モードの場合）に応じて行われる。
【００７６】
操作制御部４０は、実測データからユーザの操作に係る情報（操作情報）を抽出する機能を有する。操作制御部４０で抽出された操作情報は制御手段２２に与えられる。制御手段２２に与えられた操作情報は、後述する第２の補正モード実行手順（図１０）を実行する際に操作情報としてシミュレーション実行手段１８へ与えられる。
【００７７】
なお、図４に示される補正モード実行手段１５は、一例であり、必ずしも、上述した差異センサ値判断部３３、差異発生変数同定部３４、ソースＰＧ検索部３５、モデル式抽出部３６、不具合要素抽出部３７、近似式算出部３８、ソースＰＧ修正部３９および操作制御部４０の全てを備えている必要はない。例えば、補正モード実行手順として、後述する第２の補正モード実行手順（図１０）を実行しないのであれば、操作制御部４０を備えない補正モード実行手段１５を構成することもできる。
【００７８】
図５はシミュレータ１０が実行する第１の補正モード実行手順の処理ステップ（ステップＳ１１およびステップＳ１２）を示す処理フロー図、図６は不具合判定工程（ステップＳ１１）の処理ステップ（ステップＳ１１ａ〜ステップＳ１１ｃ）を示す処理フロー図、図７は不具合修正工程（ステップＳ１２）の処理ステップ（ステップＳ１２ａ〜ステップＳ１２ｊ）を示す処理フロー図である。
【００７９】
第１の補正モード実行手順は、本発明の実施形態に係るシミュレーション実行方法の一例であり、例えば、図５に示されるように、シミュレータ１０に不具合が生じているか否かを判定する不具合判定工程（ステップＳ１１）と、不具合判定工程で判定された不具合を修正する不具合修正工程（ステップＳ１２）とを具備する。
【００８０】
第１の補正モード実行手順は、その処理ステップの実行が開始されると（ＳＴＡＲＴ）、まず、不具合判定工程（ステップＳ１１）が実行され、続いて、不具合修正工程（ステップＳ１２）が実行される（ＥＮＤ）。不具合判定工程および不具合判定工程は、補正モード実行手段１５によって実行される。
【００８１】
第１の補正モード実行手順の不具合判定工程（ステップＳ１１）では、例えば、図６に示されるように、まず、不具合判定工程の処理ステップが開始されると（ＥＮＴＥＲ）、ステップＳ１１ａが実行される。
【００８２】
ステップＳ１１ａでは、差異センサ値判断部３３が各機器について取得した実測データとシミュレーション結果との差異が設定した範囲内にあるか否かを判定する。判定の結果、差異が設定した許容値を超えている場合、差異が設定した許容値を超えるセンサが有ると判断し（ステップＳ１１ａでＹＥＳの場合）、続いて、ステップＳ１１ｂが実行される。
【００８３】
ステップＳ１１ｂでは、差異発生変数同定部３４が設定した範囲（許容値）を超える差異が生じていると判断したセンサから当該差異が発生している変数を同定する。当該差異が生じている変数が同定されると、続いて、ステップＳ１１ｃが実行される。
【００８４】
ステップＳ１１ｃでは、まず、ソースＰＧ検索部３５が、ステップＳ１１ｂで同定された変数を含むモデル式の計算を実行するソースＰＧ２７内から検索する。そして、ソースＰＧ検索部３５の検索結果を受けて、モデル式抽出部３６が検索結果として得られたソースＰＧ２７内から差異発生変数同定部３４が同定した変数を含むモデル式を抽出する。ステップＳ１１ｃが完了すると、第１の補正モード実行手順の不具合判定工程（ステップＳ１１）は完了する（ＲＥＴＵＲＮ）。
【００８５】
一方、差異センサ値判断部３３が各機器について取得した実測データとシミュレーション結果との差異が設定した範囲内にあるか否かを判定した結果、差異が設定した許容値を超えていない場合には、差異が設定した許容値を超えるセンサは存在しないと判断し（ステップＳ１１ａでＮＯの場合）、ステップＳ１１ａに戻り、ステップＳ１１ａ以降の処理ステップを実行する。
【００８６】
第１の補正モード実行手順では、不具合判定工程（ステップＳ１１）が完了すると、続いて、不具合修正工程（ステップＳ１２）が実行される。不具合修正工程（ステップＳ１２）は、より詳細には、例えば、図７に示されるように、まず、処理ステップが開始されると（ＥＮＴＥＲ）、ステップＳ１２ａが実行される。
【００８７】
ステップＳ１２ａでは、不具合要素抽出部３７が、不具合判定工程（ステップＳ１１）において抽出されたモデル式から構成要素を抽出し、抽出したモデル式の構成要素に対応する実測データが存在するか否かを確認する。確認の結果、抽出したモデル式の構成要素に対応する実測データが存在する場合（ステップＳ１２ａでＹＥＳの場合）、続いて、ステップＳ１２ｂが実行される。
【００８８】
ステップＳ１２ｂでは、ステップＳ１２ａで存在すると判断されたモデル式の構成要素に対応する実測データに対して、近似式算出部３８が近似式を算出可能であるか否かを判定する。
【００８９】
近似式算出部３８が近似式を算出可能であるか否かを判定した結果、近似式を算出可能である場合（ステップＳ１２ｂでＹＥＳの場合）、自動補正モードが選択されているのであれば（ステップＳ１２ｃでＹＥＳの場合）、引き続き、ソースＰＧ修正部３９がステップＳ１２ｂにおいて算出された式が近似式となるように、モデル式を補正（修正）する（ステップＳ１２ｄ）。そして、ステップＳ１２ｄが完了すると、不具合修正工程は完了する（ＲＥＴＵＲＮ）。
【００９０】
一方、ステップＳ１２ａにおいて、抽出したモデル式の構成要素に対応する実測データが存在しない場合（ステップＳ１２ａでＮＯの場合）、ステップＳ１２ｅが実行される。ステップＳ１２ｅでは、不具合判定工程（ステップＳ１１）において抽出されたモデル式をディスプレイ等の表示手段に表示し、ユーザにモデル式抽出部３６が抽出したモデル式の内容を提示する。
【００９１】
モデル式の提示が完了すると、続いて、不具合修正工程の処理ステップは、ステップＳ１２ｅからステップＳ１２ｆに進み、ソースＰＧ２７を修正する入力操作を受け付ける（ステップＳ１２ｆ）。そして、ソースＰＧ２７の修正作業が完了すると（ステップＳ１２ｇでＹＥＳの場合）、ソースＰＧ修正部３９がソースＰＧ２７の修正内容を反映する（ステップＳ１２ｈ）。ステップＳ１２ｈが完了すると、不具合修正工程は完了する（ＲＥＴＵＲＮ）。
【００９２】
また、ステップＳ１２ｂにおいて、近似式算出部３８が近似式を算出可能であるか否かを判定した結果、近似式を算出することができない場合（ステップＳ１２ｂでＮＯの場合）、ステップＳ１２ｉが実行される。ステップＳ１２ｉでは、不具合要素抽出部３７がステップＳ１２ａにおいてモデル式から抽出した構成要素をディスプレイ等の表示手段に表示し、ユーザにモデル式から抽出されたモデル式の構成要素の内容を提示する。ステップＳ１２ｉが完了すると、不具合修正工程の処理ステップは、ステップＳ１２ｉからステップＳ１２ｆに進み、その後、ステップＳ１２ｆ以降の処理ステップが実行される。
【００９３】
さらにまた、ステップＳ１２ｃにおいて、手動補正モードが選択されているのであれば（ステップＳ１２ｃでＮＯの場合）、ステップＳ１２ｊが実行される。ステップＳ１２ｊでは、近似式算出部３８が算出した近似式をディスプレイ等の表示手段に表示し、ユーザに算出した近似式の内容を提示する。ステップＳ１２ｊが完了すると、不具合修正工程の処理ステップは、ステップＳ１２ｊからステップＳ１２ｆに進み、その後、ステップＳ１２ｆ以降の処理ステップが実行される。
【００９４】
なお、上述した第１の補正モード実行手順は、不具合判定工程（ステップＳ１１）および不具合修正工程（ステップＳ１２）を具備しているが、必ずしも両工程（ステップＳ１１およびステップＳ１２）を具備している必要はない。例えば、不具合の修正は、ユーザが別途行うことが前提であれば、第１の補正モード実行手順を不具合の特定のみに止めても良い。すなわち、シミュレータ１０を適用して、不具合修正工程（ステップＳ１２）を具備しない補正モード実行手順を本発明の実施形態に係るシミュレーション実行方法の一例として実行することもできる。
【００９５】
図８および図９は、シミュレータ１０の補正モードにおいて、補正に使用する実測データが近似できる場合の例であり、図８は実測データを一次の近似式として近似できる場合の例を示す説明図（グラフ）であり、図９は実測データを多項式の近似式として近似できる場合の例を示す説明図（グラフ）である。
【００９６】
例えば、図８に示される例では、実測データ１（実線）がｙ＝０．３ｘの関係が成立する直線であり、シミュレーション結果２（破線）がｙ＝０．２ｘの関係が成立する直線である。この場合、ソースＰＧ修正部３９は、ｙ＝ａｘの比例係数ａを０．２から０．３に変更する（調整を行う）ことで実測データ１とシミュレーション結果２との間に生じた誤差を調整する。
【００９７】
一方、図９に示される例では、実測データ１（実線）がｙ＝８Ｅ−０６ｘ３−０．００２４ｘ２＋０．３５４９ｘ＋０．３４９７の関係が成立する曲線であり、シミュレーション結果２（破線）がｙ＝０．２ｘの関係が成立する直線である。
【００９８】
この場合において、ソースＰＧ修正部３９は、例えば、ｙ＝ａｘ３＋ｂｘ２＋ｃｘ＋ｄ等のように、修正対象となる二次以上の多項式としてソースＰＧ２７が作成されている場合、それぞれの調整係数ａ，ｂ，ｃ，ｄを、ａ＝０から８Ｅ−０６に、ｂ＝０から−０．００２４に、ｃ＝０．２から０．３５４９に、ｄ＝０から０．３４９７に変更することで実測データ１とシミュレーション結果２との間に生じた誤差を調整する。
【００９９】
なお、ソースＰＧ２７において、例えば一次式等の実測データ２の近似式よりも低い次数で修正対象となるモデル式が作成（モデル化）されており、修正対象となるモデル式の調整係数を変更するのみでは対応できない場合には、ソースＰＧ２７自体の修正が必要となる。この場合、近似式算出部３８は近似式が得られないものとして判断し、不具合修正工程において、ユーザ（手動入力）によるソースＰＧ２７を受け付けるようにする。
【０１００】
図１０は、シミュレータ１０が実行する第２の補正モード実行手順の処理ステップ（ステップＳ２１，Ｓ２２，Ｓ１１，Ｓ１２）を示す処理フロー図である。
【０１０１】
本発明の実施形態に係るシミュレーション実行方法の一例である第２の補正モード実行手順は、第１の補正モード実行手順に対して、ステップＳ２１とステップＳ２２とをさらに具備する点で相違するが、その他の点では実質的に相違しない。そこで、第２の補正モード実行手順の説明では、第１の補正モード実行手順に対する相違点を中心に説明し、同じ処理内容の処理ステップについては同じステップ番号を付して説明を省略する。
【０１０２】
第２の補正モード実行手順は、第２の補正モード実行手順の実行開始要求を受け取ると、その処理ステップが開始される（ＳＴＡＲＴ）。
【０１０３】
処理ステップが開始されると、まず、ステップＳ２１が実行される。ステップＳ２１では、操作制御部４０が実測データＤＢ２５に格納される実測データに含まれる操作情報を抽出する。抽出した操作情報はシミュレーション実行手段１８へ与えられる。ステップＳ２１が完了すると、続いて、ステップＳ２２が実行される。
【０１０４】
ステップＳ２２では、シミュレーション実行手段１８が、ステップＳ２１で抽出された操作情報を受け取るとともに、実測データＤＢ２５から読み出した実測データに含まれるプラント情報を取得してシミュレーションを実行する。シミュレーションを実行するにあたっては、初期値を設定する必要がある。
【０１０５】
初期値の設定は、シミュレーション実行手段１８が、初期値ＤＢ２８を参照し、実測データＤＢ２５から読み出した実測データに含まれるプラント情報（時系列データ）と対応する初期値を特定し、特定した初期値を設定することで行われる。初期値の特定は、まず、プラント情報（時系列データ）時系列データのうち、最も時刻が早い値を初期値として抽出し、抽出した初期値と初期値ＤＢ２８の各初期値とのマッチング率を計算し、最もマッチング率の高い初期値を選定することで行われる。
【０１０６】
シミュレーション実行手段１８がシミュレーションを実行した結果は、図２に示されるように、比較器３１に与えられ、シミュレーション実行手段１８の実行結果と比較される。比較器３１が比較した結果は、補正モード実行手段１５に与えられる。シミュレーションの実行が開始されると、続いて、ステップＳ１１に進み、ステップＳ１１以降は、第１の補正モード実行手順と同様の処理ステップが実行され、ステップＳ１２が完了すると、第２の補正モード実行手順は終了する（ＥＮＤ）。
【０１０７】
このように、第２の補正モード実行手順は、実測データＤＢ２５を参照して実測データに含まれる操作情報およびプラント情報を抽出するとともに、抽出したプラント情報に対応する物理量の初期値を初期値ＤＢ２８から読み出して、取得した操作情報およびプラント情報と抽出したプラント情報に対応する物理量の初期値とに基づいてシミュレーションを実行して得られた結果と実測データとを用いて不具合の有無を判断する。従って、例えば、ある時点までは妥当なシミュレーション結果であったが、その後、センサ値に不具合が発生した等、長時間動作させた後に不具合が出た場合に有効である。
【０１０８】
図１１は、シミュレータ１０が具備する訓練モード実行手段１６の構成を概略的に示したブロック図である。
【０１０９】
訓練モード実行手段１６は、ｎ倍速実行判定部４１と、系統判断部４３と、モデル精度変更可否判定部４５と、時間ステップ変更可否判定部４６と、モデル精度変更部４７と、時間ステップ変更部４８とを備える。
【０１１０】
ｎ倍速実行判定部４１は、ｎ（ｎ＞１）倍速、すなわち、等速（１倍速）よりも速いスピードでシミュレーションを実行する必要があるか否かを判定する機能を有する。ｎ倍速でプログラムを実行するものであるか否かは、例えば、予め設定されるまたは事後的に入力手段１１から与えられる情報に基づいて判断される。
【０１１１】
ここで、ｎ倍速でプログラムを実行することが有効である場合の例としては、実際の操作後の待ち時間が長く、実際と同じ時間でシミュレーション（再現）を行うと訓練時間を有効に活用できない等の事情がある場合である。なお、シミュレーションのｎ倍速は、単位時間当たりの実行回数を増やす、または、タイムステップを変更することによって実現することができる。
【０１１２】
ｎ倍速実行判定部４１は、ｎ倍速でシミュレーションを実行する必要があるか否かを判定した結果を制御手段２２に通知する。ｎ倍速でプログラムを実行する際に、例えば、単位時間当たりの実行回数を増やす、または、タイムステップを変更する等の選択は、ｎ倍速でプログラムを実行するものであるか否かの設定とは別途行われる設定の内容に従う。
【０１１３】
系統判断部４３は、ｎ倍速でシミュレーションを実行する系統が訓練の対象となる系統であるか否かを判断する機能を有する。訓練対象の系統であるか否かは、シミュレーション実行時の初期値で判断することができる。系統判断部４３が訓練対象の系統であるか否かを判断した結果の情報は制御手段２２に与えられる。
【０１１４】
モデル精度変更可否判定部４５は、シミュレーションを実行する際に現象を模擬するモデルの精度を変更することが可能か否かを判定する機能を有する。モデル精度を変更可能か否かは、例えば、計算ノード数や領域分割数を少なくすること等によって対応できるか否かを判断することによって判定する。モデル精度変更可否判定部４５がシミュレーションを実行する際に現象を模擬するモデルの精度を変更することが可能か否かの判定結果の情報は制御手段２２に与えられる。
【０１１５】
時間ステップ変更可否判定部４６は、シミュレーションを実行する際に時間ステップの変更が可能か否かを判定する機能を有する。時間ステップの変更が可能か否かは、例えば、パラメータの種類で判定される。時間ステップ変更可否判定部４６がシミュレーションを実行する際に時間ステップの変更が可能か否かを判定した結果の情報は制御手段２２に与えられる。
【０１１６】
モデル精度変更部４７は、モデル精度変更可否判定部４５がシミュレーションを実行する際に現象を模擬するモデルの精度を変更することが可能と判定した場合、モデルの精度を変更する機能を有する。モデル精度変更部４７は、入力手段１１から受け付けた変更後のモデル精度、または、予め設定された内容に従ってモデル精度を変更し、変更後のモデル精度の情報を制御手段２２に与える。
【０１１７】
時間ステップ変更部４８は、時間ステップ変更可否判定部４６がシミュレーションを実行する際に時間ステップの変更が可能と判定した場合、時間ステップを変更する機能を有する。時間ステップ変更部４８は、入力手段１１から受け付けた変更後の時間ステップ、または、予め設定された内容に従って時間ステップを変更し、変更後のモデル精度の情報を制御手段２２に与える。
【０１１８】
図１２は、シミュレータ１０が実行する訓練モード実行手順の処理ステップ（ステップＳ３１〜ステップＳ４０）を示す処理フロー図である。
【０１１９】
訓練モード実行手順は、本発明の実施形態に係るシミュレーション実行方法の一例であり、訓練モード実行手順の実行開始要求を受け取ると、その処理ステップが開始される（ＳＴＡＲＴ）。処理ステップが開始されると、まず、ステップＳ３１が実行される。ステップＳ３１では、ｎ倍速実行判定部４１がｎ倍速で実行するか否かを判定する。ｎ倍速で実行するか否かを判定した結果、ｎ倍速で実行する場合（ステップＳ３１でＹＥＳの場合）には、続いてステップＳ３２が実行される。
【０１２０】
ステップＳ３２では、系統判断部４３がｎ倍速でシミュレーションを実行する系統が訓練の対象となる系統であるか否かを判断し、ｎ倍速でシミュレーションを実行する系統が訓練対象となる系統である場合（ステップＳ３２でＹＥＳの場合）、続いてステップＳ３３が実行される。
【０１２１】
ステップＳ３３では、モデル精度変更可否判定部４５がｎ倍速でシミュレーションを実行する系統、すなわち、訓練対象となる系統のモデルの精度を変更することが可能か否かを判定する。
【０１２２】
訓練対象となる系統のモデルの精度を変更することが可能な場合（ステップＳ３３でＹＥＳの場合）、モデル精度変更部４７が訓練対象となる系統のモデルの精度、すなわち、シミュレータの精度を変更する（低下させる）（ステップＳ３４）とともに、シミュレーション実行手段１８が実測データ、または、例えば後述する解析モードでのシミュレーション実行結果等の詳細な計算結果を適用して低下したシミュレータの精度を補完する（ステップＳ３５）。
【０１２３】
シミュレータの精度変更および実測データ等によるシミュレータの精度補完が完了すると、シミュレーション実行手段１８がｎ倍速でシミュレーションを開始する。その後、訓練終了要求の受信またはシミュレーションの実行の完了をもって訓練モード実行手順は終了する（ＥＮＤ）。
【０１２４】
一方、ステップＳ３１において、ｎ倍速実行判定部４１がｎ倍速で実行するか否かを判定した結果、ｎ倍速で実行しない場合（ステップＳ３１でＮＯの場合）には、訓練モード実行手順の処理ステップは、ステップＳ３６に進み、シミュレーション実行手段１８が系統モデルの精度を維持して、通常通り、すなわち、等倍（１倍速）でシミュレーションの実行を開始する。その後、訓練終了要求の受信またはシミュレーションの実行の完了をもって訓練モード実行手順は終了する（ＥＮＤ）。
【０１２５】
また、ステップＳ３２において、系統判断部４３がｎ倍速でシミュレーションを実行する系統が訓練の対象となる系統ではないと判断した場合（ステップＳ３２でＮＯの場合）、訓練モード実行手順の処理ステップは、ステップＳ３７に進む。ステップＳ３７では、時間ステップ変更可否判定部４６がシミュレーションを実行する際に時間ステップの変更が可能か否かを判定する。
【０１２６】
時間ステップ変更可否判定部４６がシミュレーションを実行する際に時間ステップの変更が可能と判定した場合（ステップＳ３７でＹＥＳの場合）、時間ステップ変更部４８が、シミュレーションを実行する系統モデルの時間ステップを変更する（ステップＳ３８）。そして、シミュレーション実行手段１８が時間ステップを変更した状態でｎ倍速のシミュレーションを開始する。訓練終了要求の受信またはシミュレーションの実行の完了をもって訓練モード実行手順は終了する（ＥＮＤ）。
【０１２７】
さらに、ステップＳ３３において、モデル精度変更可否判定部４５が訓練対象となる系統のモデルの精度を変更することができないと判定した場合（ステップＳ３３でＮＯの場合）、訓練モード実行手順の処理ステップは、ステップＳ３６に進み、ステップＳ３６以降の処理ステップを実行する。
【０１２８】
さらにまた、ステップＳ３７において、時間ステップ変更可否判定部４６がシミュレーションを実行する際に時間ステップの変更ができないと判定した場合（ステップＳ３７でＮＯの場合）、シミュレーション実行手段１８が系統モデルを停止するとともに（ステップＳ３９）、実測データ、または、例えば後述する解析モードでのシミュレーション実行結果等の詳細な計算結果を適用して低下したシミュレータの精度を補完する（ステップＳ４０）。
【０１２９】
シミュレータの精度変更および実測データ等によるシミュレータの精度補完が完了すると、シミュレーション実行手段１８がｎ倍速でシミュレーションを開始する。その後、訓練終了要求の受信またはシミュレーションの実行の完了をもって訓練モード実行手順は終了する（ＥＮＤ）。
【０１３０】
このように、訓練モード実行手段１６および訓練モード実行手順によれば、訓練に影響しない範囲で計算精度を低下させる一方で低下した計算精度を補完するために実測データ等を用いることで、ｎ倍速実行時においても、計算負荷を増加させることなく、従来よりも高い訓練精度を実現することができる。すなわち、従来ではトレードオフの関係にある訓練精度と計算負荷とを両立させることができる。
【０１３１】
図１３は、シミュレータ１０が具備する解析モード実行手段１７の構成を概略的に示したブロック図である。
【０１３２】
解析モード実行手段１７は、系統判断部４３と、モデル精度変更可否判定部４５と、時間ステップ変更可否判定部４６と、モデル精度変更部４７と、時間ステップ変更部４８と、データ収集部５１とを備える。ここで、系統判断部４３、モデル精度変更可否判定部４５、時間ステップ変更可否判定部４６、モデル精度変更部４７および時間ステップ変更部４８は、訓練モード実行手段１６が備える系統判断部４３、モデル精度変更可否判定部４５、時間ステップ変更可否判定部４６、モデル精度変更部４７および時間ステップ変更部４８と実質的に同様である。
【０１３３】
データ収集部５１は、解析モードによるシミュレーション実行結果を解析結果情報２９として収集する機能を有する。データ収集部５１は、解析モードによるシミュレーション実行結果を解析結果情報２９として、例えば、記憶手段２１に保存することができる。
【０１３４】
シミュレータ１０では、データ収集部５１が収集の困難な実測データに相当するシミュレーション結果を収集することで、より精度の高いシミュレーション実行結果を、収集が困難な実測データの代わりに使用することができる。すなわち、シミュレータ１０では、データ収集部５１が、例えば、事故時等の正常でない状態（異常時）における実測データ等の基本的には収集できないと考えられる実測データに相当する収集したより精度の高いシミュレーション実行結果をシミュレータ１０の精度向上のために活用することができる。
【０１３５】
なお、上述した解析モード実行手段１７は、データ収集部５１を備えている例であるが、データ収集部５１を備えない解析モード実行手段１７であっても、解析モードでシミュレーションを実行することができる。すなわち、データ収集部５１の有無は、解析モードによるシミュレーションの実行に影響を与えない。
【０１３６】
図１４は、シミュレータ１０が実行する解析モード実行手順の処理ステップ（ステップＳ５１〜ステップＳ５７）を示す処理フロー図である。
【０１３７】
解析モード実行手順は、本発明の実施形態に係るシミュレーション実行方法の一例であり、解析モード実行手順の実行開始要求を受け取ると、その処理ステップが開始される（ＳＴＡＲＴ）。処理ステップが開始されると、まず、ステップＳ５１が実行される。ステップＳ５１では、系統判断部４３が解析モードでシミュレーションを実行する系統が解析対象となる系統であるか否かを判断し、解析モードでシミュレーションを実行する系統と判断した場合（ステップＳ５１でＹＥＳの場合）、続いてステップＳ５２が実行される。
【０１３８】
ステップＳ５２では、モデル精度変更可否判定部４５が解析モードでシミュレーションを実行する系統のモデルについてモデル精度を変更することが可能か否かを判定する。解析モードでシミュレーションを実行する系統のモデルについてモデル精度を変更することが可能と判定した場合（ステップＳ５２でＹＥＳの場合）、モデル精度変更部４７が解析モードでシミュレーションを実行する系統のモデルのモデル精度を変更（向上）させる（ステップＳ５３）。
【０１３９】
続いて、モデル精度変更部４７が解析モードでシミュレーションを実行する系統のモデルのモデル精度を向上させると、シミュレーション実行手段１８がシミュレーションを開始し、データ収集部５１がシミュレーションの実行結果を収集する（ステップＳ５４）。その後、解析終了要求の受信またはシミュレーションの実行完了をもって解析モード実行手順は終了する（ＥＮＤ）。
【０１４０】
一方、ステップＳ５１において、系統判断部４３が解析モードでシミュレーションを実行する系統が解析対象となる系統ではないと判断した場合（ステップＳ５１でＮＯの場合）、解析モード実行手順の処理ステップは、ステップＳ５５に進む。ステップＳ５５では、時間ステップ変更可否判定部４６がシミュレーションを実行する際に時間ステップの変更が可能か否かを判定する。
【０１４１】
時間ステップ変更可否判定部４６がシミュレーションを実行する際に時間ステップの変更が可能と判定した場合（ステップＳ５５でＹＥＳの場合）、時間ステップ変更部４８が、シミュレーションを実行する系統モデルの時間ステップをより細かな時間ステップに変更する（ステップＳ５６）。そして、シミュレーション実行手段１８が時間ステップを変更した状態でシミュレーションを開始し、データ収集部５１がシミュレーションの実行結果を収集する（ステップＳ５４）。その後、解析終了要求の受信またはシミュレーションの実行完了をもって解析モード実行手順は終了する（ＥＮＤ）。
【０１４２】
また、ステップＳ５２において、モデル精度変更可否判定部４５が解析モードでシミュレーションを実行する系統のモデルについてモデル精度を変更することができないと判定した場合（ステップＳ５２でＮＯの場合）、解析モード実行手順の処理ステップは、ステップＳ５７に進み、シミュレーション実行手段１８が系統モデルの精度を維持して（ステップＳ５７）、通常通り、すなわち、等倍（１倍速）でシミュレーションの実行を開始し、データ収集部５１がシミュレーションの実行結果を収集する（ステップＳ５４）。その後、解析終了要求の受信またはシミュレーションの実行完了をもって解析モード実行手順は終了する（ＥＮＤ）。
【０１４３】
さらにまた、ステップＳ５５において、時間ステップ変更可否判定部４６がシミュレーションを実行する際に時間ステップの変更ができないと判定した場合（ステップＳ５５でＮＯの場合）、解析モード実行手順の処理ステップは、ステップＳ５７に進み、ステップＳ５７以降の処理ステップが実行される。
【０１４４】
このように、解析モード実行手段１７および解析モード実行手順によれば、実行速度よりも計算精度を優先し、時間ステップを可能な範囲で最大限細かく（短く）し、領域分割も可能な範囲で最大限細かくして計算精度を向上させてシミュレーションを実行することができるので、得られたシミュレーション実行結果を、例えば、事故時等の異常時における実測データ等の収集が困難な実測データの代わりに使用することができる。すなわち、収集が不十分な実測データをシミュレーション実行結果で補うことができ、例えば、補正モード実行手順の不具合修正工程で抽出したモデル式を構成する要素に対応する実測データが存在しないとしても、解析モードで収集されたシミュレーション実行結果が存在するのであれば、当該シミュレーション実行結果を代用して不具合修正工程を実行することができる。
【０１４５】
以上、シミュレータ１０並びにシミュレーション実行方法としての補正モード実行手順、訓練実行モード実行手順および解析モード実行手順によれば、実測データとシミュレーション結果との差異が予め設定された範囲よりも大きくなると、実測データ等を用いて誤差を補正することができる。
【０１４６】
プラントを対象としたシミュレータの検証は、従来、プラントの起動、停止および定常運転の他、異常事象、事故事象など模擬対象としている動作について応答の妥当性を人間系で確認していたが、この確認作業に相当する作業をシミュレータ１０が行うため、実測データとシミュレーション結果との差異を少なくする調整（誤差補正）の際に調整の負担を抑えることができる。また、実測データをそのまま再生するのではなく、モデル式の調整に利用するので、応答時間の再現性を低下させることなくユーザの操作に対して柔軟な応答を得ることもできる。
【０１４７】
また、訓練実行モード実行手順では、訓練に影響しない範囲で計算精度を低下させる一方で低下した計算精度を補完するために実測データ等を用いることで、ｎ倍速実行時においても、計算負荷を増加させることなく、従来よりも高い訓練精度を実現することができる。すなわち、訓練精度と計算負荷とを両立させることができる。
【０１４８】
さらに、解析モード実行手順では、実行速度よりも計算精度を優先し、計算精度を向上させてシミュレーションを実行することができるので、得られたシミュレーション実行結果を収集が不十分な実測データをシミュレーション実行結果で補うことができる。例えば、補正モード実行手順の不具合修正工程で抽出したモデル式を構成する要素に対応する実測データが存在しないとしても、解析モードで収集されたシミュレーション実行結果が存在するのであれば、当該シミュレーション実行結果を代用して不具合修正工程を実行することができる。
【０１４９】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階では、上述した実施例以外にも様々な形態で実施することが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、追加、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【０１５０】
また、上述した実施形態において記載した手法は、コンピュータに実行させることのできるプログラムとして、例えば、磁気ディスク、光ディスク、半導体メモリなどの記憶媒体に書き込んで各種装置に適用したり、通信媒体により伝送して各種装置に適用したりすることもできる。本装置を実現するコンピュータは、記憶媒体に記録されたプログラムを読み込み、このプログラムによって動作が制御されることにより、上述した処理を実行する。
【符号の説明】
【０１５１】
１…実測データ、２…シミュレーション結果、３…実測データとシミュレーション結果との差異、１０…シミュレータ、１１…入力手段、１２…出力手段、１３…通信手段、１４…モード選択手段、１５…補正モード実行手段、１６…訓練モード実行手段、１７…解析モード実行手段、１８…シミュレーション実行手段、１９…表示処理手段、２１…記憶手段、２２…制御手段、２４…シミュレータＰＧ、２５…実測データＤＢ、２６…センサ値／変数対応ＤＢ、２７…ソースＰＧ、２８…初期値ＤＢ、２９…解析結果情報、３０…実測データ出力部、３１…比較器、３３…差異センサ値判断部、３４…差異発生変数同定部、３５…ソースＰＧ検索部、３６…モデル式抽出部、３７…不具合要素抽出部、３８…近似式算出部、３９…ソースＰＧ修正部、４０…操作制御部、４１…ｎ倍速実行判定部、４３…系統判断部、４５…モデル精度変更可否判定部、４６…時間ステップ変更可否判定部、４７…モデル精度変更部、４８…時間ステップ変更部、５１…データ収集部。
【図１】
2014002290.tif 000003
【図２】
2014002290.tif 000004
【図３】
2014002290.tif 000005
【図４】
2014002290.tif 000006
【図５】
2014002290.tif 000007
【図６】
2014002290.tif 000008
【図７】
2014002290.tif 000009
【図８】
2014002290.tif 000010
【図９】
2014002290.tif 000011
【図１０】
2014002290.tif 000012
【図１１】
2014002290.tif 000013
【図１２】
2014002290.tif 000014
【図１３】
2014002290.tif 000015
【図１４】
2014002290.tif 000016
【図１５】
2014002290.tif 000017