初めに、一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。
一実施形態に係る津波浸水予測システムは、複数の管理センター100と、データ処理サーバ101と、を含む(図1参照)。複数の管理センター100のそれぞれは、複数の計算ノードによりジョブを並列に実行する並列計算機システムを有する。データ処理サーバ101は、地震発生に伴い生成された地震情報に応じて、津波浸水予測の実行を、複数の管理センター100のうち少なくとも1以上の管理センター100に依頼する。その際、データ処理サーバ101は、管理センター100における地震の影響度を示す地震影響度に基づき、津波浸水予測に係る実行の依頼先を決定する。並列計算機システムによる津波浸水予測の結果は、所定の送信先に送信される。
データ処理サーバ101は、各地に散在する並列計算機システムの利用が可能である。その際、データ処理サーバ101は、津波浸水予測に係るシミュレーションの実行を、並列計算機システムに依頼する際、依頼先の並列計算機システムが設置されている管理センター100における地震の影響度を算出し、当該算出された地震影響度に基づいて、津波浸水予測の実行を依頼する管理センター100の決定を行う。津波浸水予測を行う原因となった地震の影響が少ない管理センター100であれば、より確実に津波浸水予測を実行できると考えられるためである。その結果、津波浸水予測に係る災害情報を、地震発生からリアルタイムにて生成する津波浸水予測システムの信頼性を高めることができる。
以下に具体的な実施の形態について、図面を参照してさらに詳しく説明する。なお、各実施形態において同一構成要素には同一の符号を付し、その説明を省略する。
[第1の実施形態]
第1の実施形態について、図面を用いてより詳細に説明する。
[システム構成]
図2は、第1の実施形態に係る津波浸水予測システムの全体構成の一例を示す図である。図2を参照すると、津波浸水予測システムは、複数の管理センター2−1〜2−n(nは正の整数、以下同じ)と、複数の自治体端末10−1〜10−5と、気象庁計算機20と、研究所計算機30と、データ処理サーバ40と、を含んで構成される。管理センター2−1〜2−nのそれぞれは、所謂スーパーコンピュータの管理サイトであり、制御装置50、並列計算機システム60及びデータベース(DB;Data Base)サーバ70と、を含む。管理センター2−1〜2−nは、日本全国に分散されて設置される。なお、以降の説明において、管理センター2−1〜2−nを区別する特段の理由が無い場合には、単に「管理センター2」と表記する。同様に、自治体端末10−1〜10−5を区別する特段の理由がない場合には、単に「自治体端末10」と表記する。
自治体端末10、気象庁計算機20、研究所計算機30、データ処理サーバ40及び管理センター2のそれぞれは、ネットワークを介して相互に接続されている。各管理センター2にはイントラネットが敷設され、制御装置50、並列計算機システム60及びデータベースサーバ70が相互に通信可能に構成されている。各管理センター2に含まれる制御装置50は、並列計算機システム60の外部インターフェイスとして機能し、並列計算機システム60を利用しようとするユーザは、制御装置50にアクセスし、必要な情報の授受を行う。
[システム動作概略]
次に、図2を参照しつつ、第1の実施形態に係る津波浸水予測システムの動作の概略について説明する。
地震が発生すると、気象庁計算機20は、緊急地震速報を生成し、生成した緊急地震速報を配信する。研究所計算機30は、地震発生による断層の動き(地殻変動)を解析し、解析結果を「断層パラメータ」としてデータ処理サーバ40に向けて送信する。
データ処理サーバ40は、緊急地震速報を受信すると共に、当該緊急地震速報に含まれる情報に基づいて、管理センター2に発生した地震に応じた津波浸水予測に係るシミュレーション(津波浸水予測シミュレーション)の実行を要求するか否かの判定を行う。なお、以降の説明において、データ処理サーバ40から、管理センター2(より正しくは制御装置50)に向けて送信する津波浸水予測シミュレーションの実行要求を、「浸水予測要求」と表記する。データ処理サーバ40は、浸水予測要求を行う場合には、研究所計算機30から受信した断層パラメータ等を添えて、管理センター2に対して当該要求を行う。
各管理センター2に含まれる制御装置50は、データ処理サーバ40からの浸水予測要求を受信し、当該浸水予測要求を処理する。具体的には、制御装置50は、当該データ処理サーバ40からの浸水予測要求の正当性の検証を行う。制御装置50は、当該要求が正当と判断した場合に、津波浸水予測に係るシミュレーションの実行を並列計算機システム60に対して指示する(津波浸水予測に係るジョブ投入を指示する)。その際、制御装置50は、並列計算機システム60にて上記シミュレーションを行うための要件等を、スクリプトファイル(ジョブスクリプトファイル)に記載し、当該スクリプトファイルを並列計算機システム60に提供する。
並列計算機システム60は、スクリプトファイルと、データベースサーバ70に格納された地形データと、を用いて、要求された津波浸水予測に係るシミュレーションを実行する。並列計算機システム60は、シミュレーション結果をデータベースサーバ70に格納すると共に、制御装置50にシミュレーション終了通知を行う。
制御装置50は、データベースサーバ70に格納されたシミュレーション結果を、上記浸水予測要求に係る応答として送信する(浸水予測結果を送信する)。データ処理サーバ40は、当該浸水予測結果を、当該情報を必要とする各自治体端末10に向けて、リアルタイム津波浸水予測として送信する。
[各種装置の概略]
次に、津波浸水予測システムをなす各種計算機等を説明する。
自治体端末10は、各自治体に設置される端末である。各自治体の防災担当者等は、自治体端末10を用いて、データ処理サーバ40が送信するリアルタイム津波浸水予測を取得する。また、防災担当者は、当該端末を用いて、リアルタイム津波浸水予測に応じた行動(関係機関への連絡、住民への避難喚起等)をとることが望ましい。
気象庁計算機20は、気象庁に設置される端末である。気象庁計算機20は、各地に配置された地震計の観測データから地震発生を検出すると共に、その震源地やマグニチュードを推定し、緊急地震速報として各種機関に配信する。緊急地震速報を受信する機関の1つが、データ処理サーバ40を有する機関である。データ処理サーバ40は、例えば、図3に示すような内容の緊急地震速報を受信する。
研究所計算機30は、地震や津波等の研究を主業務とする研究機関等に設置される端末である。研究所計算機30は、気象庁から提供されるデータ(例えば、地震計が発するデータや緊急地震速報)や、独自に収集したデータ等に基づいて、発生した地震に対応する断層パラメータを算出する。なお、研究所計算機30が算出する断層パラメータには、断層の1つの頂点(南北方向の座標X、東西方向の座標Y、深さ方向の座標Z)、断層の上辺の長さ(断層長さL)、側辺の長さ(断層幅W)、上辺の方位角である走向Φ、水平面に対してなす角度である傾斜角θ、断層の滑り角λ、断層の平均滑り量Dと、が含まれる(図4参照)。
図2に示すデータ処理サーバ40は、気象庁等が配信するデータを処理するサーバ(計算機)であって、各自治体からリアルタイム津波浸水予測の提供を委託された機関(例えば、大学の研究機関等)に配置される。データ処理サーバ40は、気象庁が配信する緊急地震速報、研究所等が送信する断層パラメータ等に基づいて、津波浸水予測シミュレーションの実行を管理センター2に依頼する。なお、詳細は後述するが、データ処理サーバ40は、発生した地震の各管理センター2に対する影響度(以下、地震影響度と表記する)に基づいて、上記津波浸水予測シミュレーションの実行依頼先となる管理センター2を決定する(浸水予測要求の送信先を決定する)。また、データ処理サーバ40は、津波浸水予測シミュレーションにより生成されたリアルタイム津波浸水予測を、各自治体に提供する装置である。データ処理サーバ40の詳細は後述する。
制御装置50は、並列計算機システム60を制御し、管理する装置である。制御装置50は、並列計算機システム60を利用しようとするユーザの認証を行う認証装置としての機能や、外部からの不正なアクセスを遮断するファイアーウォールとしての機能を有している。
並列計算機システム60に対するアクセスは、制御装置50を介して行われ、管理センター2の外部から並列計算機システム60に直接アクセスすることはできない。並列計算機システム60は、所謂スーパーコンピュータと称される計算機であり、例えば、データ処理サーバ40等が有するデータ処理能力を遙かに超える処理能力を有する。並列計算機システム60には、複数の計算機(後述する計算ノード)が含まれ、当該複数の計算機にてプログラムを並列に実行することで、高いデータ処理能力を得ている。
データベースサーバ70は、並列計算機システム60でのプログラム実行に必要なデータ(例えば、地形データ)を記憶する。あるいは、データベースサーバ70は、制御装置50と並列計算機システム60間にてデータ授受を行う際の記憶装置として利用される。
[津波浸水予測に係るプログラム]
次に、並列計算機システム60にて実行される津波浸水予測に係るプログラム(アルゴリズム)について概説する。津波浸水予測シミュレーションは、上記プログラムにより実行される。
並列計算機システム60は、例えば、津波浸水予測に係るプログラムとして、非特許文献2に開示されたアルゴリズムが実装されたプログラムを用いることができる。津波浸水予測に係るプログラムは、
(1)断層パラメータに基づき、地上及び海底の地殻変動を計算するステップと、
(2)地殻変動に基づく初期水位(海面の変化)を計算するステップと、
(3)波の伝搬に基づく水位の経時変化を計算するステップと、
を順次実行する。
津波浸水予測に係るプログラムは、シミュレーション対象範囲及びそのメッシュサイズ、浸水予測範囲及びそのメッシュサイズ、現象再現時間、断層パラメータ等の各種情報を入力パラメータとして必要とする。
シミュレーション対象範囲とは、地震発生に伴う波の伝搬と浸水を計算する領域である。浸水予測範囲とは、地震発生に伴う津波による浸水(海水の高さ)を予測する領域である。浸水予測範囲ごとに、シミュレーション対象範囲が定められている。特定のシミュレーション対象範囲内にて地震が発生すると、当該シミュレーション対象範囲に対応する浸水予測範囲における津波浸水予測シミュレーションが実行される。例えば、図5(a)を参照すると、浸水予測範囲201に対応してシミュレーション対象範囲211が、浸水予測範囲202に対応してシミュレーション対象範囲212が、それぞれ設定されている。但し、1つの浸水予測範囲に対して1つのシミュレーション対象範囲が設定されている必要はなく、図5(a)に示すように、複数の浸水予測範囲203〜205に対応して1つのシミュレーション対象範囲213が設定されてもよい。
例えば、図5(a)において、震源位置221にて地震が発生すると、シミュレーション対象範囲211に対応する浸水予測範囲201における津波浸水予測シミュレーションが実行される。また、震源位置222にて地震が発生すると、震源位置222は、シミュレーション対象範囲213の領域内であるので、対応する浸水予測範囲203〜205における津波浸水予測シミュレーションが実行される。また、震源位置223にて地震が発生すると、震源位置223は、シミュレーション対象範囲212及び213の領域内にあるので、対応する浸水予測範囲202と浸水予測範囲203〜205における津波浸水予測シミュレーションが実行される。なお、震源位置224にて地震が発生したとしても、震源位置224はいずれのシミュレーション対象範囲にも含まれないので、津波浸水予測シミュレーションも実行されない。
シミュレーション対象範囲のメッシュサイズとは津波の伝播を計算する際の単位(メッシュ)の大きさである(図5(a)のシミュレーション対象範囲211参照)。また、浸水予測範囲のメッシュサイズとは、津波による浸水予測を行う際の単位の大きさである(図5(b)参照)。例えば、浸水予測範囲のメッシュサイズとして、10m×10m程度の解像度(格子サイズ)にて、浸水予測を行うことが望まれている。
現象再現時間とは、地震発生から津波浸水予測を行う期間を規定する情報である。例えば、地震発生から6時間経過後までの浸水予測範囲における浸水高をシミュレーション(予測)する場合には、現象再現時間として6時間が設定される。
断層パラメータに関しては、上述のとおりである。
津波浸水予測に係るプログラムは、上記パラメータを用いて、浸水予測範囲をなす単位領域(メッシュ;格子)ごとに、浸水高(水面の高さ)の経時変化に係るデータを出力する。例えば、津波浸水予測に係るプログラムは、図6に示すような情報を、津波浸水予測に係るシミュレーション結果として出力する。例えば、図6を参照すると、メッシュ位置(1、1)では、時間経過とともに浸水高がA1、A2、A3、A4と変化していくことが分かる。また、メッシュ位置における浸水高の経時変化が得られると、津波到達時間、最大浸水深、最大水位等の情報が生成可能となる。
また、上記シミュレーション結果を利用して、津波による被害推定も可能である。例えば、各メッシュ位置における浸水高と、当該メッシュ位置の人口分布や建物情報等を重ね合わせることで、津波による被害が推定できる。
[データ処理サーバ]
次に、データ処理サーバ40の詳細について説明する。
図7は、データ処理サーバ40の内部構成の一例を示す図である。図7(a)を参照すると、データ処理サーバ40は、通信制御部301と、浸水予測要求部302と、検証要求処理部303と、浸水予測結果管理部304と、記憶部305と、を含んで構成される。
通信制御部301は、ネットワークを介した各種装置(自治体端末10、気象庁計算機20、研究所計算機30、制御装置50)との間の通信を制御する手段である。通信制御部301は、緊急地震速報を受信すると、当該緊急地震速報の内容をログとして記憶部305に登録する。
通信制御部301は、外部装置が並列計算機システム60を利用する際に求められる認証手続を行う。具体的には、通信制御部301は、制御装置50との間でパスワードや電子証明書を用いたユーザ認証及びサーバ認証に係る処理を行う。
通信制御部301は、緊急地震速報や断層パラメータを受信すると、これらのデータを浸水予測要求部302に引き渡す。また、通信制御部301は、制御装置50から後述する検証要求を受信すると、当該検証要求を検証要求処理部303に引き渡す。
浸水予測要求部302は、緊急地震速報に基づいて、浸水予測要求を、管理センター2(制御装置50)に対して送信するか否かを判定し、所定の条件を満たす場合に津波浸水予測に係るシミュレーションの実行を管理センター2に依頼する手段である。浸水予測要求部302は、複数の管理センター2−1〜2−nの中から、津波浸水予測シミュレーションの実行を依頼する管理センター2を選択する。浸水予測要求部302は、通信制御部301を介して、浸水予測要求を、選択した管理センター2の制御装置50に向けて送信する。但し、浸水予測要求には断層パラメータを含める必要があるため、浸水予測要求部302は、研究所計算機30から断層パラメータを受信した後に浸水予測要求を送信する。なお、浸水予測要求は、浸水予測範囲ごとに生成され、管理センター2に送信される。
浸水予測要求には、例えば、図8に示すような情報が含まれる。図8を参照すると、浸水予測要求には少なくとも、地震詳細情報と、断層パラメータと、シミュレーション条件と、が含まれる。
浸水予測要求部302は、緊急地震速報に含まれる情報から必要な情報(例えば、地震発生日時、震源地、マグニチュード等)を選択し、地震詳細情報とする。
浸水予測要求部302は、緊急地震速報から得られる情報や予め定められた値等を用いてシミュレーション条件を生成する。具体的には、浸水予測要求部302は、記憶部305に格納されたテーブル情報に基づき、シミュレーション対象範囲及び浸水予測範囲を定める。例えば、図9を参照すると、図5を用いて説明したシミュレーション対象範囲と浸水予測範囲との関係が、テーブル情報として記憶部305に格納されている。浸水予測要求部302は、上記テーブル情報を参照することで、緊急地震速報から得られる震源地を含むシミュレーション対象範囲を特定する。次に、浸水予測要求部302は、当該特定したシミュレーション対象範囲に対応する浸水予測範囲を特定する。例えば、図9の例では、震源地がシミュレーション対象範囲211に含まれていれば、シミュレーション対象範囲211とその対応する浸水予測範囲201が、浸水予測要求に含ませるシミュレーション条件として選択される。なお、シミュレーション対象範囲や浸水予測範囲の指定には、これらの範囲をなす4つの頂点の座標(緯度、経度)を用いることができる。
また、浸水予測要求に含ませるシミュレーション条件のうち予め定めた値の例としては、現象再現時間が上げられる。例えば、現象再現時間として地震発生後から6時間経過後までの現象を再現させることが津波浸水予測システムの仕様(スペック)として予め定まっている場合には、浸水予測要求部302は、6時間を現象再現時間としてシミュレーション条件に設定する。なお、シミュレーション条件を決定するために必要なテーブル情報は、記憶部305に格納されていなくとも、外部のデータベースサーバ(図示せず)に格納されていてもよい。即ち、浸水予測要求部302は、外部のデータベースサーバからシミュレーション条件を取得してもよい。なお、シミュレーション条件に含まれる必要リソース量に関しては、後述する。
図7(b)を参照すると、浸水予測要求部302は、要求要否判定部311と、依頼先管理部312と、リソース決定部313と、依頼先決定部314と、浸水予測要求送信部315と、を含んで構成される。
要求要否判定部311は、緊急地震速報に含まれるマグニチュード、震源地、震源の深さ等のデータに基づいて、浸水予測要求を管理センター2に向けて送信するか否か判断する。例えば、発生した地震のマグニチュードが所定値よりも大きく、震源地が海域であって、その震源の深さが所定値よりも浅い等の条件を、要求要否判定部311による浸水予測要求の送信条件とすることが考えられる。
依頼先管理部312は、管理センター2それぞれに関する情報を管理する手段である。具体的には、依頼先管理部312は、依頼先管理テーブルの作成、更新等を行い管理センター2の情報を管理する。なお、依頼先管理テーブルは記憶部305に格納される。
図10は、依頼先管理テーブルの一例を示す図である。図10を参照すると、依頼先管理テーブルには、少なくとも、各管理センター2が設置された場所(緯度、経度)と、各管理センターの稼働状況と、利用可能リソース量と、が含まれる。なお、利用可能リソース量とは、並列計算機システム60を構成する計算ノードのうち、実際にジョブの実行に利用可能な計算ノードの台数である。例えば、並列計算機システム60が200台の計算ノードにより構成され、200台のうち100台の計算ノードがメンテナンス中であれば、利用可能リソース量は100(100台の計算ノード)となる。また、管理センター2全体のメンテナンス等の理由により、並列計算機システム60にジョブを実行させることができない場合には、管理センターの稼働状況は「休止」となる。管理センター2が休止であれば、利用可能リソース量は当然「0」である。
システム管理者は、システム運用前に、各管理センター2の場所に関する情報を依頼先管理テーブルに登録する。また、依頼先管理部312は、予め定めた時刻又は定期的に、各管理センター2の制御装置50に対して、各制御装置50が管理する並列計算機システム60に関する情報(稼働状況、利用可能リソース量)を問い合わせる。依頼先管理部312は、問い合わせの結果を用いて依頼先管理テーブルを更新する。なお、依頼先管理部312は、各制御装置50から上記の問い合わせの応答があった管理センター2の稼働状況を「稼働」に設定する。一方、依頼先管理部312は、上記の問い合わせに対する応答が得られない場合には、当該応答のない管理センター2の稼働状況を「休止」に設定する。
また、依頼先管理部312は、要求要否判定部311が浸水予測要求を送信すると決定した場合には、各管理センター2の制御装置50に対して上記問い合わせを行い、管理センター2それぞれに関する最新情報を取得し、依頼先管理テーブルに反映する。より具体的には、上述のように浸水予測要求には断層パラメータを含ませる必要があるため、依頼先管理部312は、研究所計算機30が断層パラメータの算出を行っている期間(緊急地震速報の取得後、且つ、浸水予測要求の送信前の期間)に、上記の問い合わせと依頼先管理テーブルの更新を行う。
リソース決定部313は、シミュレーション実行依頼先の管理センター2(正しくは、並列計算機システム60)にて、津波浸水予測シミュレーションを実行する際のリソース量(計算ノードの台数)を決定する手段である。具体的には、リソース決定部313は、依頼する津波浸水予測シミュレーション(プログラム)の実行を、予め定められた所定時間(例えば、数分)以内に終了させるために必要な並列計算機システム60のリソース量を決定する。
ここで、並列計算機システム60にて実行する津波浸水予測シミュレーションは、シミュレーション条件に応じて、その演算量(処理時間)が異なることが発明者らの検討の結果分かっている。具体的には、シミュレーション対象範囲や浸水予測範囲の広さ(面積)及びそのメッシュサイズ等により、津波浸水予測シミュレーションに要する時間が変化する事が分かっている。そのため、並列計算機システム60に入力するシミュレーション条件によっては、予め定められた所定時間以内に津波浸水予測シミュレーションが終了しない可能性がある。
そこで、リソース決定部313は、並列計算機システム60に依頼する津波浸水予測シミュレーションの内容に応じて、並列計算機システム60にて確保すべきリソースを決定する。リソース決定部313は、例えば、図11に示すリソース決定テーブルを参照することで、浸水予測要求に係るシミュレーションを、所定時間以内にて終了させるために必要なリソース量を決定する。
図11に示すリソース決定テーブルは、浸水予測範囲と、浸水予測要求の結果を所定時間内に得るために必要なリソース量(計算ノードの台数)との関係を規定する。リソース決定テーブルは、記憶部305に登録されている。
なお、システム管理者には、図2に示す津波浸水予測システムを運用する前に図11に示すリソース決定テーブルを、データ処理サーバ40に設定しておくことが望まれる。例えば、システム管理者は、種々のシミュレーション条件に関し、並列計算機システム60(あるいは、同等の並列計算機システム)にて津波浸水予測に係るシミュレーションを実行させ、使用したリソースと処理時間の関係から図11に示すテーブル情報を作成し、データ処理サーバ40に設定する。
依頼先決定部314は、津波浸水予測シミュレーションの実行を依頼する管理センター2を決定する手段である。具体的には、依頼先決定部314は、発生した地震の各管理センター2に対する影響度(地震影響度)を算出する。次に、依頼先決定部314は、地震影響度が小さい管理センター2を優先して津波浸水予測シミュレーションの依頼先候補に選定する。但し、シミュレーションの実行依頼先候補として選定される管理センター2は稼働していることが必要となる。
なお、第1の実施形態では、上記地震影響度として、震源と管理センター2の間の距離を、地震影響度を測る指標として算出する。具体的には、依頼先決定部314は、依頼先管理テーブルにて管理される情報(管理センター2の場所)と震源位置に基づいて、両者の間の距離を算出し、地震影響度とする。この場合、震源と管理センター2の間の距離が離れているほど、地震影響度は小さいと扱われる。
さらに、依頼先決定部314は、依頼先候補に選定した管理センター2(並列計算機システム60)における津波浸水予測シミュレーションの実行余力を計算し、余力があれば、当該選定した管理センター2を津波浸水予測シミュレーションの実行依頼先に決定する。また、依頼先決定部314は、依頼先候補に選定した管理センター2では、津波浸水予測シミュレーションを処理しきれない(実行余力がない)と判断した場合には、先にシミュレーションの依頼先となった管理センター2の次に地震影響度の小さい(震源から次に遠い)管理センター2を津波浸水予測シミュレーションの実行依頼先の候補に選定する。
例えば、図12(a)に示すように、震源位置222(図5(a)参照)にて地震が発生したとする。震源位置222は、シミュレーション対象範囲213に含まれるので、浸水予測範囲203〜205が浸水予測範囲となる。なお、以降の説明において、浸水予測範囲203における津波浸水予測シミュレーションを、津波浸水予測シミュレーション1(あるいは、単にシミュレーション1)と表記する。同様に、浸水予測範囲204における津波浸水予測シミュレーションを津波浸水予測シミュレーション2、浸水予測範囲205における津波浸水予測シミュレーションを津波浸水予測シミュレーション3、とそれぞれ表記する。
また、上述のように、各浸水予測範囲には、津波浸水予測シミュレーションを所定時間内にて実行するために必要なリソース量(必要リソース量;計算ノード数)が定められている。ここでは、図12(b)に示すようにリソース量が定められているものとする。さらに、震源位置が定まると、依頼先管理テーブルに格納された各管理センター2の場所(座標)から、震源と管理センター2の間の距離が算出できる。ここでは、図12(c)に示すような距離が算出されたものとする。さらに、各管理センター2に関する最新情報が図12(c)のように登録されているとする。なお、図12に示す各種情報は例示であって、シミュレーションの実行に必要なリソース量等を限定する趣旨ではない。
図12に示される種々の条件の下、依頼先決定部314による津波浸水予測シミュレーションの実行依頼先の決定を説明する。なお、図12の例では、浸水予測範囲203〜205について津波浸水予測シミュレーションが実行されるため、3つの浸水予測要求が生成され、依頼先決定部314により決定された管理センター2に送信される。
初めに、依頼先決定部314は、震源から最も遠い位置に存在し、且つ稼働中の管理センター2−1を、シミュレーションの実行依頼先の候補に選定する。次に、依頼先決定部314は、津波浸水予測シミュレーション1の実行に要求されるリソース量と、選定した管理センター2−1の利用可能リソース量と、を比較する。比較の結果、管理センター2−1の利用可能リソース量の方が大きいので、依頼先決定部314は、当該選定した管理センター2−1を津波浸水予測シミュレーション1の実行依頼先とする。なお、依頼先決定部314は、津波浸水予測シミュレーションの実行依頼先を決定した場合には、その旨を依頼先管理部312に通知し、依頼先管理部312を介して利用可能リソース量の更新を行う。図12の例では、津波浸水予測シミュレーション1が管理センター2−1にて実行されることで、管理センター2−1の利用可能リソース量は100に更新される。
次に、依頼先決定部314は、津波浸水予測シミュレーション2(浸水予測範囲204に対応)の実行依頼先を決定する。この場合、依頼先決定部314は、既にシミュレーションの実行依頼先候補に選定されている管理センター2−1に、浸水予測シミュレーション2の実行余力があるか否かを判定し、その結果により管理センター2−1を実行依頼先とするか否かを決める。図12の例では、津波浸水予測シミュレーション2の実行に必要なリソース量は50であり、管理センター2−1の利用可能リソース量は100である。従って、管理センター2−1には、津波浸水予測シミュレーション2を実行する余力があるので、依頼先決定部314は、津波浸水予測シミュレーション2の実行依頼先を管理センター2−1に決定する。なお、その結果、管理センター2−1の利用可能リソース量は50となる。
次に、依頼先決定部314は、津波浸水予測シミュレーション3(浸水予測範囲205に対応)の実行依頼先を決定する。この場合についても、依頼先決定部314は、管理センター2−1の実行余力に応じて、当該管理センター2−1を実行依頼先とするか否かを決める。図12の例では、津波浸水予測シミュレーション3の実行に必要なリソース量は100であり、管理センター2−1の利用可能リソース量は50である。従って、管理センター2−1には津波浸水予測シミュレーション3の実行余力がないので、依頼先決定部314は、津波浸水予測シミュレーション3の実行依頼先として管理センター2−1を選択しない。
次に、依頼先決定部314は、シミュレーションの実行余力が無くなった管理センター2−1の次に震源位置から遠い管理センター2を選択する。図12の例では、管理センター2−2が該当する。しかし、管理センター2−2の稼働状況は休止中であるので、依頼先決定部314は、当該管理センター2−2をシミュレーションの実行依頼先候補としない。管理センター2−2の次に震源位置から遠い管理センター2−3は稼働中であるので、依頼先決定部314は、管理センター2−3をシミュレーションの実行依頼先候補に選定する。次に、依頼先決定部314は、既に説明したように、選定した管理センター2−3の利用可能リソース量と、津波浸水予測シミュレーション3の実行に必要なリソース量と、に基づいて、津波浸水予測シミュレーション3の実行依頼先を決定する。図12の例では、管理センター2−3は津波浸水予測シミュレーション3の実行が可能であるので、管理センター2−3が津波浸水予測シミュレーション3の実行依頼先として決定される。
このように、依頼先決定部314は、震源から遠い位置に存在する管理センター2を優先して、津波浸水予測シミュレーションの実行依頼先に選択する(図13参照)。また、仮に、震源位置から遠い管理センター2が存在するとしても、当該管理センター2が稼働していなければ、依頼先決定部314は、当該管理センター2をシミュレーションの実行依頼先として選択することはない。
依頼先決定部314の動作のまとめると図14に示すフローチャートのようになる。
依頼先決定部314は、各管理センター2について地震影響度を算出し、津波浸水予測シミュレーションの実行依頼先候補を選定する(ステップS101)。具体的には、依頼先決定部314は、稼働中の管理センター2であって、震源から遠い位置に存在する管理センター2を優先して実行依頼先の候補に選定する。
次に、依頼先決定部314は、選定した管理センター2に津波浸水予測シミュレーションの実行余力があるか否かを判定する(ステップS102)。実行余力がなければ(ステップS102、No分岐)、ステップS101に遷移し、新たなシミュレーション実行依頼先候補の選定がなされる。実行余力があれば(ステップS102、Yes分岐)、依頼先決定部314は、選定された管理センター2を、シミュレーションの実行依頼先として決定する(ステップS103)。
次に、依頼先決定部314は、依頼先が未決定な津波浸水予測シミュレーションの存在を確認する(ステップS104)。全ての津波浸水予測シミュレーションの実行依頼先が決定されていれば(ステップS104、Yes分岐)、依頼先決定部314は処理を終了する。依頼先を決定する必要のある津波浸水予測シミュレーションが残っていれば(ステップS104、No分岐)、依頼先決定部314は、ステップS102以降の処理を継続する。
図7(b)に示す浸水予測要求送信部315は、リソース決定部313により決定された必要リソース量を含む浸水予測要求(図8参照)を生成する。浸水予測要求送信部315は、生成した浸水予測要求を、通信制御部301を介して、依頼先決定部314により決定された管理センター2に向けて送信する。
浸水予測要求部302の動作をまとめると図15に示すフローチャートのようになる。
浸水予測要求部302は、緊急地震速報を、通信制御部301を介して取得する(ステップS201)。
浸水予測要求部302は、発生した地震が、所定の条件を満たすか否かを判定する(ステップS202)。
所定の条件を満たさない場合には、浸水予測要求部302は、処理を終了する(ステップS202、No分岐)。
所定の条件を満たす場合(ステップS202、Yes分岐)には、浸水予測要求部302は、通信制御部301を介して断層パラメータが取得できるまで待機(ステップS203)し、その後、断層パラメータを取得する(ステップS204)。
断層パラメータが取得できると、浸水予測要求部302は、浸水予測要求を生成する(ステップS205)。
浸水予測要求部302は、通信制御部301を介して浸水予測要求を、制御装置50に向けて送信する(ステップS206)。
図7に示す検証要求処理部303は、制御装置50が送信する検証要求を処理する手段である。
ここで、制御装置50は、データ処理サーバ40から浸水予測要求を受信すると、パスワード等を用いた通常のユーザ認証とは異なるある種の認証手続を行う。具体的には、制御装置50は、浸水予測要求を受信すると、当該要求が真に正当な要求であるか否かをデータ処理サーバ40に問い合わせる。
このような問い合わせが必要となる理由は以下のとおりである。詳細は後述するが、並列計算機システム60が、津波浸水予測に係るシミュレーションを実行する際、既に並列計算機システム60にて実行中のジョブは停止され、津波浸水予測に係るシミュレーションのジョブが優先的に実行される。そのため、浸水予測要求が、データ処理サーバ40の管理者による誤操作等によって送信され、当該要求が並列計算機システム60にて処理されてしまうと深刻な事態を引き起こす可能性がある。例えば、データ処理サーバ40の動作を試験する目的で、データ処理サーバ40に実装されるプログラムの動作テスト(デバッグ)が行われることがある。その際、管理者等の誤操作等により、制御装置50に対して津波浸水予測シミュレーションの実行が依頼されてしまうことがあり得る。データ処理サーバ40以外の多くのユーザが、並列計算機システム60を利用しており、このような一般ユーザのジョブをデータ処理サーバ40の誤操作等が原因で停止することは許容されない。
そこで、並列計算機システム60に実行させるジョブを管理する制御装置50は、受信した浸水予測要求の正当性を、データ処理サーバ40に問い合わせる。このような問い合わせが、上述の制御装置50からの検証要求である。
なお、制御装置50が送信する検証要求には、データ処理サーバ40が送信した浸水予測要求を、データ処理サーバ40自身が特定できる程度の情報が含まれる。例えば、地震発生の日時やマグニチュード等の地震詳細情報が、制御装置50が送信する検証要求には含まれる。
検証要求処理部303は、制御装置50からの検証要求を取得すると、記憶部305にアクセスする。検証要求処理部303は、記憶部305に格納された緊急地震速報のログと、制御装置50から取得した検証要求の内容と、に基づいて、自装置(データ処理サーバ40)から制御装置50に送信された浸水予測要求の正当性を判定する。
例えば、検証要求処理部303は、取得した検証要求に含まれる情報(例えば、地震発生日時)に合致する情報が、記憶部305に緊急地震速報のログとして登録されているか否かを確認する。検証要求処理部303は、検証要求に含まれる情報が緊急地震速報のログとして登録されていれば、データ処理サーバ40(浸水予測要求部302)から送信した浸水予測要求は正当(適切)であったと判定する。一方、検証要求処理部303は、検証要求に含まれる情報が緊急地震速報のログとして登録されていなければ、データ処理サーバ40から送信した浸水予測要求は誤って送信されたもの(要求は不適切)であったと判定する。
このように、検証要求処理部303は、データ処理サーバ40から送信した浸水予測要求に対応する地震が現実に発生したか否か(データ処理サーバ40が当該地震に対応した緊急地震速報を受信したか否か)に応じて、浸水予測要求の正当性を判定する。検証要求処理部303は、通信制御部301を介して、判定結果(要求は適切、要求は不適切)を、制御装置50に応答する。
検証要求処理部303の動作をまとめると図16に示すフローチャートのようになる。
検証要求処理部303は、検証要求を、通信制御部301を介して取得する(ステップS301)。
検証要求処理部303は、検証要求に含まれる地震情報と、記憶部305に格納された緊急地震速報のログと、を比較し、当該地震情報に対応する緊急地震速報のログが存在するか否かを確認する(ステップS302)。
検証要求の地震情報と緊急地震速報のログの内容が一致すれば(ステップS302、Yes分岐)、検証要求処理部303は、自装置からの浸水予測要求は適切と判定する(ステップS303)。
検証要求の地震情報と緊急地震速報のログの内容が不一致であれば(ステップS302、No分岐)、検証要求処理部303は、自装置からの浸水予測要求は不適切と判定する(ステップS304)。
検証要求処理部303は、判定結果を、制御装置50に送信する(ステップS305)。
図7の浸水予測結果管理部304は、浸水予測要求に対する結果(浸水予測結果;並列計算機システム60によるシミュレーション結果)を管理する(取り扱う)手段である。
浸水予測結果管理部304は、通信制御部301を介して、浸水予測結果を自治体端末10に送信する。具体的には、浸水予測結果管理部304は、制御装置50から浸水予測結果を受信すると、当該浸水予測結果をそのまま、あるいは、加工して、当該情報を必要とする自治体端末10に、リアルタイム津波浸水予測として送信する。
例えば、図5(a)を参照すると、浸水予測結果管理部304は、浸水予測範囲203における津波浸水予測が行われた場合には、浸水予測範囲203の自治体に設置された自治体端末10に、リアルタイム津波浸水予測を送信する。
なお、浸水予測結果管理部304が行う浸水予測結果の加工には、例えば、各メッシュ位置における浸水高の最大値に応じて、各メッシュを色分けするような可視化処理等が含まれる。
なお、データ処理サーバ40に搭載されたコンピュータに、そのハードウェアを用いて、図14〜16を参照して説明した処理を実行させるコンピュータプログラムにより、データ処理サーバ40の機能は実現することができる。
[制御装置]
次に、制御装置50の詳細について説明する。
図17は、制御装置50の内部構成の一例を示す図である。図17を参照すると、制御装置50は、第1通信制御部401と、第2通信制御部402と、浸水予測要求検証部403と、シミュレーション指示部404と、シミュレーション結果管理部405と、記憶部406と、を含んで構成される。
第1通信制御部401は、ネットワークを介したデータ処理サーバ40を含む各種計算機との間の通信を制御する手段である。第1通信制御部401は、インターネットのような開域網との通信を制御する手段である。また、第1通信制御部401は、データ処理サーバ40との間でパスワードや電子証明書を用いたユーザ認証及びサーバ認証に係る処理を行う手段である。第1通信制御部401は、外部から受信したデータ(例えば、浸水予測要求)を浸水予測要求検証部403に引き渡す。また、第1通信制御部401は、データ処理サーバ40から、管理センター2の情報に関する問い合わせを受信した場合には、当該問い合わせを受信した旨を、第2通信制御部402を介して、後述するジョブ管理ノード61に通知する。第1通信制御部401は、当該通知に対するジョブ管理ノード61からの応答(返信)を受信し、受信したジョブ管理ノード61からの応答をデータ処理サーバ40へ送信する。即ち、制御装置50は、データ処理サーバ40とジョブ管理ノード61間の通信を中継する機能を有する。
第2通信制御部402は、並列計算機システム60及びデータベースサーバ70との間の通信を制御する手段である。第2通信制御部402は、並列計算機システム60及びデータベースサーバ70が接続されたイントラネット(閉域網)における通信を制御する手段である。
浸水予測要求検証部403は、データ処理サーバ40が送信する浸水予測要求の正当性を検証する手段である。具体的には、浸水予測要求検証部403は、データ処理サーバ40から浸水予測要求を受信すると、第1通信制御部401を介して、データ処理サーバ40に向けて検証要求を送信する。例えば、浸水予測要求検証部403は、データ処理サーバ40から受信した浸水予測要求に含まれる内容の全て又は一部を、データ処理サーバ40に向けて送信する。より具体的には、地震発生の日時やマグニチュード等、少なくともデータ処理サーバ40が送信した浸水予測要求を、データ処理サーバ40自身が特定できる事項を含む検証要求を、浸水予測要求検証部403は、データ処理サーバ40に送信する。
上述のように、当該検証要求を受信したデータ処理サーバ40は、浸水予測要求の正当性を判定し、その判定結果(要求は適切、要求は不適切)を制御装置50に応答する。浸水予測要求検証部403は、当該判定結果を、第1通信制御部401を介して取得する。その際、判定結果が「要求は不適切」であれば、浸水予測要求検証部403は、受信した浸水予測要求を破棄し、さらなる処理を行わない。一方、判定結果が「要求は適切」であれば、浸水予測要求検証部403は、浸水予測要求をシミュレーション指示部404に引き渡す。
シミュレーション指示部404は、並列計算機システム60に対してシミュレーションの実行を指示する手段である。シミュレーション指示部404は、浸水予測要求を取得すると、後述する緊急ジョブキューの活性化を並列計算機システム60に指示する。また、シミュレーション指示部404は、並列計算機システム60が津波浸水予測に係るシミュレーションを実行する際の要件を記載したスクリプトファイルを生成し、当該スクリプトファイルを、第2通信制御部402を介して並列計算機システム60に送信する。あるいは、シミュレーション指示部404は、生成したスクリプトファイルをデータベースサーバ70に格納し、その旨を並列計算機システム60に通知してもよい。即ち、シミュレーション指示部404は、並列計算機システム60にて浸水予測要求に対する浸水予測結果を得るために実行する津波浸水予測シミュレーションのシミュレーション要件をスクリプトファイルに記載し、当該シミュレーションの実行を並列計算機システム60に指示する。
例えば、シミュレーション指示部404は、図18に示すような情報が含まれるスクリプトファイルを生成する。シミュレーション指示部404は、取得した浸水予測要求に、津波浸水予測に係るシミュレーションの優先度を付加して、スクリプトファイルを生成する。図18を参照すると、津波浸水予測に係るシミュレーションの優先度として「緊急」が設定されている。このように、シミュレーション指示部404は、浸水予測要求を取得すると、当該津波浸水予測に係るシミュレーションの優先度(ジョブの優先度)を「緊急」に設定する。優先度が「緊急」に設定された場合の扱いは後述する。
また、シミュレーション指示部404は、浸水予測要求に含まれるシミュレーション条件に、シミュレーション対象範囲や浸水予測範囲の地形データを指定する情報を追加する。上述のように、並列計算機システム60にて津波浸水予測に係るシミュレーションを実行する際には、地形データが必要となるので、当該地形データの指定がスクリプトファイルを用いて行われる。なお、津波浸水予測に係るシミュレーションの実行には、シミュレーション対象範囲や浸水予測範囲のメッシュサイズに係る情報も必要となる。しかし、これらの情報は予め定められているものとし、図18に例示するスクリプトファイルのシミュレーション条件には含まれていない。但し、スクリプトファイルのシミュレーション条件にメッシュサイズに関する情報を含ませてもよいことは勿論である。
なお、上述のように、浸水予測範囲ごとに津波浸水予測シミュレーションが実行される。そのため、各管理センター2の制御装置50は、それぞれが制御、管理する並列計算機システム60に、複数の津波浸水予測シミュレーションを並列実行させることがある。この場合、シミュレーション指示部404は、各浸水予測範囲に対応したスクリプトファイルを生成し、並列計算機システム60にシミュレーションの実行を指示する。
シミュレーション結果管理部405は、並列計算機システム60から津波浸水予測に係るシミュレーションの実行が終了した旨の通知を受信すると、シミュレーション結果を、第2通信制御部402を介して取得する。シミュレーション結果管理部405は、取得した津波浸水予測に係るシミュレーション結果を、第1通信制御部401を介して、データ処理サーバ40に送信する。なお、1つの並列計算機システム60にて複数の津波浸水予測シミュレーションが実行された場合には、シミュレーション結果管理部405は、シミュレーションの実行が終了した順に、あるいは、一括して、シミュレーション結果をデータ処理サーバ40に送信する。
制御装置50の動作をまとめると図19に示すフローチャートのようになる。
浸水予測要求検証部403は、浸水予測要求を取得する(ステップS401)。
次に、浸水予測要求検証部403は、浸水予測要求の正当性を判定する(ステップS402)。浸水予測要求が正当でなければ(ステップS402、No分岐)、制御装置50は浸水予測要求を破棄して、処理を終了する。浸水予測要求が正当であれば(ステップS402、Yes分岐)、シミュレーション指示部404は、スクリプトファイルを生成して、並列計算機システム60に津波浸水予測シミュレーションの実行を指示する(ステップS403)。その際、シミュレーション指示部404は、津波浸水予測に係るシミュレーションの優先度を「緊急」に設定する。
並列計算機システム60によるシミュレーションが終了すると、シミュレーション結果管理部405は、第1通信制御部401を介して、シミュレーション結果をデータ処理サーバ40に送信(転送)する(ステップS404)。
なお、制御装置50に搭載されたコンピュータに、そのハードウェアを用いて、図19を参照して説明した処理を実行させるコンピュータプログラムにより、制御装置50の機能は実現することができる。
[並列計算機システム]
次に、並列計算機システム60の詳細について説明する。
図20は、並列計算機システム60の概略構成の一例を示す図である。図20を参照すると、並列計算機システム60は、ジョブ管理ノード61と、複数の計算ノード62−1〜62−m(但し、mは2以上の整数)と、を含んで構成される。なお、以降の説明において、計算ノード62−1〜62−mを区別する特段の理由がない場合には、単に「計算ノード62」と表記する。
ジョブ管理ノード61は、並列計算機システム60をなすリソース(計算ノード62)を管理する装置である。ジョブ管理ノード61は、スクリプトファイルの受け付け、計算ノード62に投入するジョブのスケジューリング、計算ノード62におけるジョブ実行状況の監視等を行う。また、ジョブ管理ノード61は、制御装置50を介して、管理センター2の情報に関する問い合わせを受信した場合には、当該問い合わせに対する応答(利用可能な計算ノード62の台数)を生成し、データ処理サーバ40に返信する。
計算ノード62のそれぞれは、ジョブ(プログラム)を実行するための資源(リソース)を有している。具体的には、計算ノード62は、CPU(Central Processing Unit)等の演算装置501と、RAM(Random Access Memory)等のメモリ装置502と、HDD(Hard Disc Drive)等のストレージ装置503と、を含んで構成される。さらに、計算ノード62は、ジョブ管理ノード61やデータベースサーバ70と通信するためのネットワーク資源(図示せず)を有する。
上述のように、ジョブ管理ノード61は、計算ノード62にて実行するジョブを管理する。図21は、ジョブ管理ノード61の内部構成の一例示す図である。図21を参照すると、ジョブ管理ノード61は、通信制御部601と、ジョブキュー管理部602と、ジョブ制御部603と、ジョブキュー611と、緊急ジョブキュー612と、を含んで構成される。
通信制御部601は、制御装置50、計算ノード62、データベースサーバ70等との間の通信を制御する手段である。
ジョブキュー管理部602は、制御装置50から取得するスクリプトファイルに従って、ジョブを投入するキュー(ジョブキュー611、緊急ジョブキュー612)の選択及び管理を行う手段である。ジョブキュー管理部602は、計算ノード62に実行させるジョブの順序を、ジョブキュー611を用いて管理する。ジョブがジョブキュー611に追加されると、追加されたジョブの順番(過去にジョブキュー611にジョブが追加された順番)にて、計算ノード62にジョブが投入される(図22(a)参照)。
ジョブキュー管理部602は、どの順番でジョブキューにジョブを投入するかと、どの計算ノード62にどのようなジョブを投入するかを、スケジューリングテーブルを用いて管理する(図22(b)参照)。図22(b)に示す例では、JOB1、JOB2の順番でジョブキューに投入され、JOB1の割当先計算ノードは計算ノード62−1となっている。また、図22(b)に示すJOB3のように、1つのジョブが複数の計算ノード62に投入されてもよい。
このように、通常のジョブ(並列計算機システム60の一般ユーザによるジョブ)は、図22に示すスケジューリングテーブルにより管理される。
また、ジョブ管理ノード61は、緊急ジョブキュー612という、通常のジョブキュー(ジョブキュー611)とは異なるジョブキューを備えている。ジョブキュー管理部602は、制御装置50から緊急ジョブキューの活性化指示を受信すると、緊急ジョブキュー612を活性化する。緊急ジョブキュー612が活性化され、当該緊急ジョブキュー612にジョブが追加されると、他のジョブ(ジョブキュー611に蓄積されたジョブ)に優先して、緊急ジョブキュー612のジョブが優先的に計算ノード62に投入される(図23参照)。
ジョブキュー管理部602は、制御装置50から津波浸水予測に係るスクリプトファイルを取得すると、当該スクリプトファイルに係るジョブを緊急ジョブキュー612に追加する。より具体的には、ジョブキュー管理部602は、取得したスクリプトファイルの優先度を確認し、当該優先度が「緊急」であれば、当該スクリプトファイルのジョブを緊急ジョブキュー612に追加する。つまり、データ処理サーバ40による浸水予測要求に起因して実行されるジョブ(津波浸水予測に係るシミュレーション)は、図22に示すジョブキュー611、スケジューリングテーブルを用いたジョブの管理とは異なる方法にて管理される。また、スクリプトファイルに記載された津波浸水予測に係るシミュレーションは、最優先するジョブとして扱われる。
ジョブ制御部603は、ジョブキュー(ジョブキュー611、緊急ジョブキュー612)に追加されたジョブを計算ノード62に実行させる手段である。ジョブ制御部603は、緊急ジョブキュー612に何らのジョブが存在しない場合には、ジョブキュー611に格納された順番にて、スケジューリングテーブルの割当先計算ノードにジョブ実行を指示する。
一方、ジョブ制御部603は、緊急ジョブキュー612にジョブ(具体的には、津波浸水予測に係るジョブ)が存在すれば、当該ジョブを優先的に計算ノード62に実行させる。その際、ジョブ制御部603は、制御装置50から送信されるスクリプトファイルの必要リソース量を確認し、当該必要リソース量に応じた数の計算ノード62にジョブを実行させる。
より具体的には、ジョブ制御部603は、必要な数の計算ノード62に対して、現在実行中のジョブを停止するように指示する。次に、ジョブ制御部603は、当該計算ノード62に対して、緊急ジョブキュー612のジョブ(津波浸水予測に係るジョブ)の実行を指示する。次に、ジョブ制御部603は、各計算ノード62にて津波浸水予測に係るジョブが終了すると、先に停止したジョブの再開を指示する。また、ジョブ制御部603は、津波浸水予測に係るジョブが終了したことを確認すると、その旨を制御装置50に通知する。
なお、緊急ジョブキュー612に複数のジョブが投入された場合には(複数のジョブを並列実行する場合には)、ジョブ制御部603は、各スクリプトファイルの「必要リソース量」に係る情報に基づき、必要な計算ノード62を確保する。例えば、図12に示す例では、浸水予測範囲203及び204のシミュレーションが1つの並列計算機システム60にて並列実行される。その際、ジョブ制御部603は、浸水予測範囲203に対応するシミュレーションを実行するために100台の計算ノード62を、浸水予測範囲204に対応するシミュレーションを実行するために50台の計算ノード62を、それぞれ確保し、シミュレーションの実行を指示する。
なお、各計算ノード62は、通常のジョブを実行するための第1メモリ領域と、緊急のジョブ(津波浸水予測に係るジョブ)を実行するための第2メモリ領域と、を備えている。ジョブ制御部603から実行中のジョブを停止するように指示された計算ノード62は、第1メモリ領域へのアクセスを停止する。また、停止したジョブの再開を指示された計算ノード62は、第1メモリ領域のデータを用いて、停止していたジョブの実行を再開する。
並列計算機システム60の動作をまとめると図24に示すフローチャートのようになる。
初めに、ジョブ管理ノード61は、制御装置50からジョブ実行に係るスクリプトファイルを取得する(ステップS501)。
次に、ジョブ管理ノード61のジョブキュー管理部602は、スクリプトファイルに記載されたジョブの優先度が、「緊急」に設定されているか否かを判定する(ステップS502)。
「緊急」に設定されていなければ(ステップS502、No分岐)、ジョブキュー管理部602は、当該スクリプトファイルに係るジョブをジョブキュー611に追加する(ステップS503)。ジョブキュー611に追加されたジョブは、スケジューリングテーブルに従い実行される。
一方、「緊急」に設定されていれば(ステップS502、Yes分岐)、ジョブキュー管理部602は、スクリプトファイルに係るジョブ(津波浸水予測に係るジョブ)を緊急ジョブキュー612に追加する(ステップS504)。
次に、ジョブ制御部603は、津波浸水予測に係るスクリプトファイルの「必要リソース量」に係る情報に基づき、必要な計算ノード62を選択する(ステップS505)。例えば、スクリプトファイルに記載された必要リソース量がA1個であれば、ジョブ制御部603は、A1個の計算ノード62を津波浸水予測に係るジョブを実行する計算ノードとして選択する。
ジョブ制御部603は、選択した計算ノード62に対して、実行中のジョブを停止する指示を行う(ステップS506)。
その後、ジョブ制御部603は、緊急ジョブキュー612に追加された津波浸水予測に係るジョブの実行を、各計算ノード62に指示する(ステップS507)。選択された計算ノード62では、津波浸水予測に係るジョブを実行する。その際、計算ノード62は、データベースサーバ70から、津波浸水予測に必要な地形データを取得する。また、計算ノード62は、スクリプトファイルに記載されたシミュレーション条件にて、津波浸水予測に係るシミュレーションを実行する。シミュレーションの実行が終了した計算ノード62は、その結果をデータベースサーバ70に格納する。
ジョブ制御部603は、シミュレーションが終了した各計算ノード62に対して、停止したジョブの実行再開を指示する(ステップS508)。
ジョブ制御部603は、シミュレーション終了を制御装置50に通知する(ステップS509)。
[システム動作]
次に、図25を参照しつつ、第1の実施形態に係る津波浸水予測システムの動作について説明する。
地震が発生すると、気象庁の気象庁計算機20は、緊急地震速報を配信する(ステップS01)。
データ処理サーバ40は、緊急地震速報を受信し、発生した地震による津波浸水予測の要否を判断する(ステップS02)。例えば、データ処理サーバ40は、先に発生した地震のマグニチュードが7以上、且つ、震源地が海域であって深さが70kmより浅い等の条件に合致する地震が発生したか否かを判定し、浸水予測の要否を決定する。
また、地震が発生すると、研究所計算機30は、当該地震による断層の動きを解析し、断層パラメータをデータ処理サーバ40に送信する(ステップS03)。
研究所計算機30から断層パラメータを取得し、且つ、浸水予測が必要と判断したデータ処理サーバ40は、発生した地震の影響が少ないと思われる管理センター2を優先して津波浸水予測に係るシミュレーションの依頼先を決定する(ステップS04)。より具体的には、データ処理サーバ40は、震源から遠い位置に存在する管理センター2を優先して津波浸水予測シミュレーションの実行依頼先とする。
その後、データ処理サーバ40は、研究所計算機30から取得した断層パラメータ及び津波浸水予測に係るシミュレーションを行う際の条件(シミュレーション条件)を伴った浸水予測要求を制御装置50に行う(ステップS05)。
浸水予測要求を受信した制御装置50は、データ処理サーバ40に問い合せるなどして、受信した浸水予測要求の正当性を判定する(ステップS06)。
浸水予測要求が正当(浸水予測要求は適切)であれば、制御装置50は、浸水予測に係るシミュレーションの優先度を「緊急」に設定しつつ、スクリプトファイルを並列計算機システム60に送信する(ステップS07)。
当該スクリプトファイルを受信した並列計算機システム60(ジョブ管理ノード61)は、津波浸水予測に係るジョブを緊急ジョブキュー612に投入(ステップS08)する。
また、並列計算機システム60は、スクリプトファイルに記載された台数の計算ノード62に津波浸水予測に係るジョブを実行させる(ステップS09)。
シミュレーションが終了すると、浸水予測結果(シミュレーション結果)は制御装置50を介して、データ処理サーバ40に送信される(ステップS10、S11)。
データ処理サーバ40は、自治体端末10に対して、浸水予測結果をリアルタイム津波浸水予測として送信する(ステップS12)。
以上のように、第1の実施形態に係るデータ処理サーバ40は、緊急地震速報という現実に発生した地震により生成される情報に基づいて、津波浸水予測に係る一連のプロセスを開始する。また、第1の実施形態に係る津波浸水予測システムでは、地震発生からリアルタイム津波浸水予測の送信(図25のステップS01からステップS12まで)までのプロセスが、人手を介さず進行するため、人的要因等によって津波浸水予測の結果の送信が遅れる、止まる等の問題が生じない。
さらに、第1の実施形態に係る津波浸水予測システムでは、一般の計算機よりも遙かに演算能力が高い並列計算機システム60(スーパーコンピュータ)を利用して、津波浸水予測に係るシミュレーションを実行する。そのため、例えば、浸水予測範囲のメッシュサイズが10m×10mのような高い解像度による陸域の津波浸水予測(陸上の津波遡上予測)が、地震発生から短時間(例えば、数十分)で各自治体に提供可能となる。
並列計算機システム60は、全国の研究者等が利用する計算機であって、これらのユーザによる多くのジョブが並列計算機システム60では実行されている。そのため、誤って送信された浸水予測要求に応じて、制御装置50が、並列計算機システム60に津波浸水予測に係るジョブを実行させたとすれば、多くのユーザのジョブを一時的にとは言え停止することになり大きな問題となり得る。そこで、並列計算機システム60を制御、管理する制御装置50は、データ処理サーバ40からの依頼(浸水予測要求)が、現実に発生した地震に応じて発行されたものか否かを検証(図25のステップS06)し、並列計算機システム60にて実行中の一般ジョブを停止することが許容されると判断した時に、津波浸水予測に係るジョブの実行を並列計算機システム60に命じる。即ち、制御装置50は、巨大地震発生に伴い巨大津波が発生するかもしれないという特殊な状況の下、津波浸水予測というある種の公共目的なシミュレーションを迅速に実行するため、並列計算機システム60のリソース(計算ノード)を一時的に占有する。
また、制御装置50は、単に並列計算機システム60に津波浸水予測に係るジョブの実行を命じるだけでなく、当該津波浸水予測に係るジョブが所定時間以内(例えば、10分以内)に終了するためのリソースを確保した上で、当該ジョブの実行を命じる。そのため、シミュレーション対象範囲や浸水予測範囲の面積やそのメッシュサイズ、水深等に応じて演算量(処理時間)が変化したとしても、所定時間以内にシミュレーション結果が得られる。
さらに、第1の実施形態に係る津波浸水予測システムは、全国各地に散在する並列計算機システム60(管理センター2)を、津波浸水予測シミュレーションの実行依頼先の候補として備える。つまり、津波浸水予測システムは、全国各地に管理センター2を分散配置し、シミュレーションの実行依頼先を冗長化している。データ処理サーバ40は、これら冗長化された複数の管理センター2のいずれかに対して、津波浸水予測シミュレーションの実行依頼をする。その際、データ処理サーバ40は、震源から遠い位置に設置された管理センター2を優先する。つまり、震源から遠い位置に存在する管理センター2ほど、津波浸水予測を行う原因となった地震の影響が少ないと考えられ、そのような管理センター2であればより確実に津波浸水予測シミュレーションを実行できるからである。換言するならば、震源に近い管理センター2及びその内部の並列計算機システム60は、地震の影響により正常動作が困難な状況にある可能性がある。そこで、データ処理サーバ40は、震源に近い管理センター2を避けて、シミュレーションが確実に実行可能と考えられる管理センター2にシミュレーションの実行を依頼する。
また、たとえ、震源から遠い位置に存在する管理センター2であっても、定期メンテナンス等の理由により、シミュレーションが実行できない状況も考えられる。そこで、データ処理サーバ40は、管理センター2の稼働状況も考慮して、シミュレーションの実行依頼先を決定する。その結果、より確実に津波浸水予測シミュレーションが実行される。
また、並列計算機システム60(所謂、スーパーコンピュータ)のリソースは有限であるので、1つの並列計算機システム60にて同時に処理できる(並列して実行できる)ジョブには限界がある。そこで、データ処理サーバ40は、シミュレーション実行依頼先の利用可能リソース量と実行を依頼しようとするシミュレーションに要するリソース量を比較し、実行余力のある管理センター2にシミュレーションの実行を依頼する。このような対応により、浸水予測要求の受信により直ちにシミュレーションが実行されないジョブを無くすことができる。例えば、1つの並列計算機システム60に5個の津波浸水予測シミュレーションの実行が依頼され、当該並列計算機システム60では3個の津波浸水予測シミュレーションしか同時に処理できず、残りの2個の津波浸水予測シミュレーションは、先に実行中のシミュレーションが終了した後に実行されるという事態を回避できる。このような事態が生じると、地震発生から短時間でリアルタイム津波浸水予測をユーザ(自治体の防災担当者等)に提供するという目的が達成できない。
以上、第1の実施形態に係る津波浸水予測システムは、津波浸水予測に係る災害情報を、高精度且つ地震発生からリアルタイムにて生成し、ユーザに発信できる。また、第1の実施形態に係る津波浸水予測システムは、地震の影響を考慮して、津波浸水予測シミュレーションの実行を並列計算機システム60に依頼するので、高い信頼性を備える。
なお、第1の実施形態にて説明した津波浸水予測システムの構成(図2)は例示であって、システムの構成を限定する趣旨ではない。例えば、5つの自治体端末10を示しているが、リアルタイム津波浸水予測を取得する自治体端末の数を限定する趣旨ではない。あるいは、データ処理サーバ40は気象庁から直接緊急地震速報を受信しているが、第三者機関を経由して緊急地震速報を受信してもよいし、緊急地震速報に類する情報を気象庁以外から取得してもよい。さらに、断層パラメータの提供先は1つの機関に限定されない。例えば、データ処理サーバ40を有する事業者は、複数の研究機関等と断層パラメータ提供に係る契約を結び、最も速く提供された断層パラメータを用いて浸水予測要求が発行されてもよい。
また、第1の実施形態では、データ処理サーバ40から自治体端末10にリアルタイム津波浸水予測を送信している。しかし、図26に示すように、制御装置50は、シミュレーション結果を転送サーバ80に向けて送信し、当該転送サーバ80から自治体端末10に向けてリアルタイム津波浸水予測を送信してもよい。即ち、制御装置50が、シミュレーション結果を送信する先は、データ処理サーバ40に限定されず、制御装置50は、所定の送付先にシミュレーション結果を送信することができる。
第1の実施形態では、各地の管理センター2に対する地震の影響度(地震影響度)を測る指標として、震源と各管理センター2の間の距離を用いた。しかし、地震影響度を測る指標は、上記距離に限定されず、各管理センター2での震度であってもよい。例えば、データ処理サーバ40(依頼先決定部314)は、気象庁から提供される緊急地震速報や地震情報(各地の震度に関する情報)から、各地に散在する管理センター2の震度を取得し、地震影響度としてもよい。あるいは、データ処理サーバ40は、気象庁等の各種機関から提供されるデータに基づいて、各地の管理センター2における震度を予測し、地震影響度としてもよい。データ処理サーバ40は、震度の小さい管理センター2を、地震影響度の小さい管理センター2とし、優先的に津波浸水予測シミュレーションの実行を依頼する。
あるいは、データ処理サーバ40は、震源と管理センター2間の距離と、管理センター2における震度と、を組み合わせて、地震影響度を算出してもよい。例えば、データ処理サーバ40は、同じ震度であっても、震源地から遠い管理センター2の地震影響度を低くしてもよい。あるいは、データ処理サーバ40は、震源と管理センター2間の距離と、管理センター2の設置された場所と、管理センター2における震度と、を組み合わせて地震影響度を算出してもよい。例えば、データ処理サーバ40は、同じ震度、震源までの距離が同じであっても、より地盤が安定している場所に設置された管理センター2の地震影響度を低くしてもよい。
第1の実施形態では、図12を参照しつつ、依頼先決定部314の動作を説明した。その際、管理センター2に依頼するシミュレーションの数は3であるものとした。しかし、依頼するシミュレーションの数は1つであっても良いのは勿論である。あるいは、3以上の数、例えば、日本全国の海岸線を網羅するように、多数の津波浸水予測シミュレーションの実行が、各管理センター2に依頼されてもよい。また、第1の実施形態では、シミュレーション対象範囲内にある全ての浸水予測範囲について、津波浸水予測シミュレーションを実行することを前提としたが、シミュレーションを実行する浸水予測範囲を制限してもよい。例えば、震源に近い浸水予測範囲のシミュレーションが優先して実行されるようにしてもよい。例えば、上述のように、全国に渡る浸水予測範囲がシミュレーションの対象となる場合を考える。この場合、太平洋側にて地震が発生した場合には、日本海側の浸水予測範囲のシミュレーションを行わない、あるいは、優先度を低くする等の対応を行ってもよい。
第1の実施形態では、管理センター2に関する情報を、管理センター2から直接データ処理サーバ40に提供している。しかし、データ処理サーバ40は、管理センター2の情報を一括して管理するデータベースサーバ等を介して、上記情報を取得してもよい。
また、第1の実施形態では、依頼先管理テーブルに管理センター2の緯度、経度を登録することで、管理センター2の設置場所を管理している。しかし、管理センター2の設置場所の管理は、例えば、管理センター2が設置されている住所等であってもよい。例えば、A市に管理センター2が設置されていれば、A市を代表する住所(例えば、A市の中心点や市役所等の住所)を管理センター2の設置場所としてもよい。
あるいは、全ての管理センター2に関し、設置場所を管理しなくともよい。例えば、全国に配置されている管理センター2をグループ分けして、各グループの設置場所の代表を依頼先管理テーブルに登録してもよい。例えば、東北地方に存在する管理センター2、関東地方に存在する管理センター2、のようにグループ分けし、各グループの設置場所を「東北地方」、「関東地方」のように管理してもよい。
また、データ処理サーバ40は、受信した緊急地震速報のログを内部の記憶部305に格納しているが、外部のデータベースサーバ(図示せず)に格納してもよい。この場合、検証要求処理部303は、外部のデータベースサーバにアクセスし、制御装置50から受信した検証要求に関する判定を行う。
第1の実施形態では、浸水予測要求部302が生成する浸水予測要求のシミュレーション条件のなかに、シミュレーション対象範囲、浸水予測範囲、現象再現時間等を含めているが、これらの情報は必ずしも浸水予測要求に含まれていなくともよい。データ処理サーバ40と並列計算機システム60の間で予め取り決めた値を用いることで、現象再現時間等の情報を浸水予測要求に含める必要がなくなる。
第1の実施形態では、データ処理サーバ40のリソース決定部313は、記憶部305に登録されたテーブル情報(図11に示すリソース決定テーブル)に基づいて、必要なリソース量を決定している。しかし、リソースの決定は、テーブル情報の参照に限定されない。例えば、リソース決定部313は、浸水予測範囲のサイズ(面積)に基づいて、必要なリソース量を計算してもよい。
第1の実施形態では、制御装置50の浸水予測要求検証部403は、データ処理サーバ40自身に浸水予測要求の正当性を検証させている。しかし、制御装置50自身が、緊急地震速報を受信し、浸水予測要求の正当性を検証してもよい。つまり、浸水予測要求検証部403は、データ処理サーバ40から取得した浸水予測要求に含まれる情報の少なくとも一部と、緊急地震速報(地震情報)に含まれる情報の少なくとも一部と、が一致する場合(例えば、地震発生の日時が一致する場合)に、浸水予測要求が正当であると判定してもよい。
あるいは、データ処理サーバ40が緊急地震速報のログを外部のデータベースサーバに格納する場合には、制御装置50は、当該データサーバから緊急地震速報に関する情報を取得し、浸水予測要求の正当性を検証してもよい。即ち、制御装置50による浸水予測要求の正当性に関する検証は、データ処理サーバ40に問い合わせることに限定されない。
第1の実施形態では、制御装置50はスクリプトファイルに、津波浸水予測シミュレーションの優先度を設定しているが、制御装置50と並列計算機システム60との間で、津波浸水予測シミュレーションは最優先のジョブとして取り決めておけば、上記優先度の設定は不要である。
第1の実施形態では、データ処理サーバ40は、並列計算機システム60に対して、「津波浸水予測」に係る要求を行っているが、データ処理サーバ40は、並列計算機システム60に対して「津波被害予測」に係る要求を行ってもよい。この場合、並列計算機システム60は、津波浸水予測に係るシミュレーション結果と、浸水予測範囲における人口分布や建物情報等と、を利用することで、津波による被害が大きいと思われる地域を予測できる。例えば、浸水高が高く、且つ、人口密度が高い地域は津波による被害が大きい等の予測が行える。なお、この場合には、並列計算機システム60の演算量が増えるため、データ処理サーバ40のリソース決定部313は、並列計算機システム60の演算量増加を加味して、並列計算機システム60が確保する計算ノード62の台数を決定するのが望ましい。
第1の実施形態にて説明したデータ処理サーバ40、制御装置50、並列計算機システム60の機能分担は、例示であって、その内容を限定する趣旨ではない。
また、上述の説明で用いた各フローチャートでは、複数のステップ(工程、処理)が順番に記載されているが、実行されるステップの実行順序は、その記載の順番に制限されない。例えば、各処理を並行して実行する等、図示されるステップの順番を内容的に支障のない範囲で変更することができる。
上記の実施形態の一部又は全部は、例えば、以下の付記のようにも記載され得るが、以下には限られない。
[付記1]
第1の視点に係る津波浸水予測システムであって、
前記データ処理サーバは、
前記管理センターに関する情報と、震源地に関する情報と、に基づき、前記地震影響度を算出する、津波浸水予測システム。
[付記2]
前記データ処理サーバは、
前記管理センターと震源地の間の距離に基づき前記地震影響度を決定する、付記1の津波浸水予測システム。
[付記3]
前記管理センターに関する情報には、少なくとも、前記管理センターの設置場所に関する情報が含まれ、
前記データ処理サーバは、前記管理センターと震源地の間の距離を前記地震影響度として算出する、付記1又は2の津波浸水予測システム。
[付記4]
前記管理センターに関する情報には、少なくとも、前記管理センターの設置場所に関する情報が含まれ、
前記データ処理サーバは、前記管理センターにおける震度を外部から取得する、又は、前記管理センターにおける震度を外部から取得したデータに基づき予測し、前記取得した震度又は前記予測した震度を前記地震影響度とする、付記1の津波浸水予測システム。
[付記5]
第2の視点に係るデータ処理サーバであって、
前記複数の管理センターのうち、対応する前記地震影響度が小さい管理センターを優先して、前記津波浸水予測に係る実行の依頼先とする、データ処理サーバ。
[付記6]
前記管理センターに関する情報と、震源地に関する情報と、に基づき、前記地震影響度を算出する、付記5のデータ処理サーバ。
[付記7]
前記管理センターに含まれる前記並列計算機システムの利用可能な第1リソース量を取得し、
前記第1リソース量と、前記並列計算機システムにて前記津波浸水予測を所定の時間以内に終了させるために必要な第2リソース量と、から前記管理センターに含まれる前記並列計算機システムにおけるジョブの実行余力を計算し、
前記実行余力のある並列計算機システムを含む前記管理センターに、前記津波浸水予測の実行を依頼する、付記5又は6のデータ処理サーバ。
[付記8]
一回の地震発生に応じて、複数の前記津波浸水予測の実行を依頼する場合は、
前記複数の管理センターのうち、前記地震影響度が最も小さく、且つ、前記実行余力を有する管理センターを、前記津波浸水予測の実行依頼先とし、
前記実行依頼先となった管理センターにおける前記実行余力が無くなった場合には、
前記実行依頼先となった管理センターの次に前記地震影響度が小さく、且つ、前記実行余力を有する管理センターを、前記津波浸水予測の実行依頼先とする、付記7のデータ処理サーバ。
なお、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。