(57)【要約】【課題】歩行者の不確実さを含む認知活動を反映する。【解決手段】実施形態のシミュレーションプログラムは、コンピュータに、仮想空間に、それぞれの状態情報に基づき行動するエージェントを配置する処理を実行させる。また、シミュレーションプログラムは、コンピュータに、エージェントの仮想空間内の配置位置と、配置位置に対応して確率的に作用する仮想空間内の作用物の作用情報と、に基づき、状態情報を更新する処理を実行させる。【選択図】図１
2017224201.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
仮想空間に、それぞれの状態情報に基づき行動するエージェントを配置し、
前記エージェントの前記仮想空間内の配置位置と、前記配置位置に対応して確率的に作用する前記仮想空間内の作用物の作用情報と、に基づき、前記状態情報を更新する
処理を実行させることを特徴とするシミュレーションプログラム。
【請求項２】
前記作用情報は、前記作用物の前記仮想空間内の配置位置と、前記エージェントの前記仮想空間内の配置位置との相対的な位置関係に対応して確率的に作用する
ことを特徴とする請求項１に記載のシミュレーションプログラム。
【請求項３】
前記作用情報は、さらに、前記エージェントの状態情報に対応して確率的に作用する
ことを特徴とする請求項１または２に記載のシミュレーションプログラム。
【請求項４】
前記エージェントの状態情報は、当該エージェントの疲労度を含み、
前記作用情報は、前記エージェントの疲労度に応じて確率的に作用する
ことを特徴とする請求項３に記載のシミュレーションプログラム。
【請求項５】
コンピュータが、
仮想空間に、それぞれの状態情報に基づき行動するエージェントを配置し、
前記エージェントの前記仮想空間内の配置位置と、前記配置位置に対応して確率的に作用する前記仮想空間内の作用物の作用情報と、に基づき、前記状態情報を更新する
処理を実行することを特徴とするシミュレーション方法。
【請求項６】
仮想空間に、それぞれの状態情報に基づき行動するエージェントを配置し、
前記エージェントの前記仮想空間内の配置位置と、前記配置位置に対応して確率的に作用する前記仮想空間内の作用物の作用情報と、に基づき、前記状態情報を更新する
各処理を実行する処理部を有することを特徴とするシミュレーション装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、シミュレーションプログラム、シミュレーション方法およびシミュレーション装置に関する。
【背景技術】
【０００２】
従来、防災や防犯にかかる各種設備の設置計画の検討に人流シミュレーションが活用されている。この人流シミュレーションでは、防災や防犯の評価対象とする仮想空間に、計画に従った設備と、歩行者を模した歩行者エージェント（以下、エージェントとも呼ぶ）とを配置する。そして、仮想空間に配置された設備を取得（認知）した情報に基づく歩行者エージェントの行動をシミュレーションする。そして、シミュレーションにより得られた歩行者エージェントの行動を確認することで、各種設備の設置計画を評価する。
【０００３】
例えば、歩行者エージェントは、移動中のあるノードについて、次に移動するリンクが混雑や事故などの要因により通行不能であった場合には通行不能であることを認知し、経路を再探索する。そして、歩行者エージェントは、通行不能のリンクを回避する、再探索された経路で移動する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−６９１６０号公報
【特許文献２】特開２００１−３４９７３５号公報
【特許文献３】特開２００９−１９９２０号公報
【特許文献４】特開２００３−１４８９９１号公報
【非特許文献】
【０００５】
【非特許文献１】石井健太郎，「重要伝統的建造物群保存地域における災害時避難に関する研究」，２０１４年度修士論文，立命館大学大学院理工学研究科
【非特許文献２】堀口真実，「大規模地下空間の避難シミュレーション−危機迫る梅田地下街からの脱出−」，２０１３年度卒業論文，同志社大学文化情報学部文化情報学科
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記の従来技術は、混雑や事故などによる事象の変化により通行不能となるリンクに遭遇した場合に歩行者エージェントは確実に反応し、事象の変化に対する歩行者エージェントの行動を見るものである。
【０００７】
しかしながら、現実の世界においては、混雑や事故などによる事象の変化により通行不能となることに気づくか否かについては個人差があるものであり、人の認知活動は不確実なものである。上記の従来技術では、このような人の不確実な認知活動に対応する、歩行者エージェントの不確実な認知活動を再現することは困難である。
【０００８】
１つの側面では、歩行者の不確実さを含む認知活動を反映することができるシミュレーションプログラム、シミュレーション方法およびシミュレーション装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
第１の案では、シミュレーションプログラムは、コンピュータに、仮想空間に、それぞれの状態情報に基づき行動するエージェントを配置する処理を実行させる。また、シミュレーションプログラムは、コンピュータに、エージェントの仮想空間内の配置位置と、配置位置に対応して確率的に作用する仮想空間内の作用物の作用情報と、に基づき、状態情報を更新する処理を実行させる。
【発明の効果】
【００１０】
本発明の１実施態様によれば、歩行者の不確実さを含む認知活動を反映することができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、実施形態にかかるシミュレーション装置の構成を例示するブロック図である。
【図２】図２は、空間情報を説明する説明図である。
【図３】図３は、設備設置計画を説明する説明図である。
【図４】図４は、歩行者情報を説明する説明図である。
【図５】図５は、シミュレーション装置の動作例を示すフローチャートである。
【図６】図６は、仮想空間を説明する説明図である。
【図７】図７は、意思決定の処理例を示すフローチャートである。
【図８】図８は、経路の再選択を行う場合を説明する説明図である。
【図９】図９は、経路の再選択を行わない場合を説明する説明図である。
【図１０】図１０は、疲労度による認知係数の変化を説明する説明図である。
【図１１】図１１は、距離と角度による被認知係数の変化を説明する説明図である。
【図１２】図１２は、実施形態にかかるシミュレーション装置のハードウエア構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照して、実施形態にかかるシミュレーションプログラム、シミュレーション方法およびシミュレーション装置を説明する。実施形態において同一の機能を有する構成には同一の符号を付し、重複する説明は省略する。なお、以下の実施形態で説明するシミュレーションプログラム、シミュレーション方法およびシミュレーション装置は、一例を示すに過ぎず、実施形態を限定するものではない。また、以下の各実施形態は、矛盾しない範囲内で適宜組みあわせてもよい。
【００１３】
図１は、実施形態にかかるシミュレーション装置の構成を例示するブロック図である。図１に示すシミュレーション装置１は、例えばＰＣ（パーソナルコンピュータ）等の情報処理装置である。シミュレーション装置１は、入力された情報に基づいて、仮想空間における歩行者エージェントの行動をシミュレーションし、歩行者の流れを模した人流シミュレーションを実施する。
【００１４】
なお、本実施形態では、一般の歩行者の他に、所定の目的地で犯罪行動を起こそうとする犯罪実施準備者を含む歩行者エージェントについての人流シミュレーションを例示する。この人流シミュレーションを実施することで、犯罪実施準備者に対する警備員、防犯カメラ等の設備についての設置計画を評価することができる。なお、人流シミュレーションにおける歩行者エージェントは、犯罪実施準備者に限定するものではなく、例えば車いすを使用する車いす使用者であってもよい。車いす使用者を含む歩行者エージェントについての人流シミュレーションでは、一例として、車いす使用者に対するスロープ、エレベータ等の設備についての設置計画を評価することができる。
【００１５】
図１に示すように、シミュレーション装置１は、入力部１０、入力情報格納部２０、シミュレーション管理部３０、歩行者行動実行部４０、シミュレーション結果出力部５０およびエージェント情報格納部６０を有する。
【００１６】
入力部１０は、例えばマウスやキーボードなどの入力装置より、空間情報１１、設備設置計画１２および歩行者情報１３等のシミュレーションにかかる入力情報を受け付ける。
【００１７】
入力情報格納部２０は、入力部１０より入力された空間情報１１、設備設置計画１２および歩行者情報１３等の入力情報をＲＡＭ（Random  Access  Memory）、ＨＤＤ（Hard  Disk  Drive）等の記憶装置に格納する。
【００１８】
空間情報１１は、例えばショッピングモールや空港等のシミュレーションにかかる仮想空間の構造を示す情報である。具体的には、空間情報１１には、シミュレーションにおける歩行者エージェントが回遊する仮想空間（広さ、フロア数、壁、通路および施設の位置等）についてのセル環境および空間内のノード（通路、施設等）の接続についてのネットワーク環境が記述されている。ユーザは、シミュレーションの検討対象とする仮想空間の空間情報１１をシミュレーション装置１に入力する。
【００１９】
図２は、空間情報１１を説明する説明図である。図２に示すように、空間情報１１には、仮想空間の広さ、フロア数、歩行者エージェントの進入不可能なセル（壁）を示す壁番号、壁の位置等のセル環境が記述されている。また、空間情報１１には、ノードを示すノード番号ごとに、ノードの座標、歩行目標（Ｗａｙｐｏｉｎｔ）、施設（Ｆａｃｉｌｉｔｙ）などのノードの種類等のネットワーク環境が記述されている。また、ネットワーク環境には、移動可能なノード間のエッジごとに、エッジ番号と、互いに接続されているノードを示すノード番号とが記述されている。
【００２０】
設備設置計画１２は、ショッピングモールや空港等の仮想空間に設置される各種設備の配置や内容を示す情報である。例えば、本実施形態では、犯罪実施準備者に対応する警備員、防犯カメラ等の防犯設備の配置や内容が設備設置計画１２に記述される。
【００２１】
具体的には、設備設置計画１２には、各設備について特徴となる属性（位置、設備種別、影響範囲、被認知係数）が記述されている。ユーザは、シミュレーションの検討対象とする設備設置計画１２をシミュレーション装置１に入力する。
【００２２】
図３は、設備設置計画１２を説明する説明図である。図３に示すように、設備設置計画１２は、設備を識別する設備番号ごとに、各設備の特徴となる属性（位置、設備種別、影響範囲、被認知係数）が記述されている。
【００２３】
「位置」は、仮想空間における設備の設置位置である。「設備種別」は、警備員、防犯カメラなどの防犯設備の種別である。「影響範囲」は、歩行者エージェント（本実施形態では犯罪実施準備者）に対して影響を及ぼす範囲である。例えば、「影響範囲」は、警備員における視野範囲や、防犯カメラにおける撮像範囲が対応する。
【００２４】
「被認知係数」は、歩行者エージェントの視野に対象設備が捉えられた場合の認知のされやすさを示す指標値である。例えば、「被認知係数」が「１」である場合は、対象設備が１０回視野に捉えられた際に、１０回中１０回の割合で確率的に認知されることを示す（ただし、後述する認知係数を考慮しないものとする）。同様に、「被認知係数」が「０．６」である場合は、対象設備が１０回視野に捉えられた場合、１０回中６回の割合で確率的に認知されることを示す。
【００２５】
設備設置計画１２における各設備の特徴となる属性については、設置を計画している各設備の内容などをもとに評価された値が入力される。例えば、「被認知係数」については、気づかれやすい対象設備には高く、気づかれにくい対象設備には低い値が設定される。一例として、警備員と比較して防犯カメラには低い値が設定される。また、警備員においては、制服の警備員よりも私服の警備員の方が低い値が設定される。
【００２６】
歩行者情報１３は、仮想空間における歩行者エージェントを示す情報である。具体的には、歩行者情報１３には、仮想空間における出入口などに対応した出現ポイントにおいて歩行者エージェントが発生する発生確率や、発生する歩行者エージェントの種類（属性）についての情報である。また、シミュレーション開始時において予め歩行者エージェントを配置しておく場合は、歩行者エージェントの配置位置を歩行者情報１３に含めてもよい。なお、歩行者エージェントの種類については、例えば、一般の歩行者の他に、所定の目的地で犯罪行動を起こそうとする犯罪実施準備者がある。ユーザは、シミュレーションの検討対象とする歩行者についての歩行者情報１３をシミュレーション装置１に入力する。
【００２７】
図４は、歩行者情報１３を説明する説明図である。図４に示すように、歩行者情報１３は、歩行者エージェントの発生確率と、歩行者種類を示す番号ごとの、発生する歩行者エージェントの特徴とが記述されている。歩行者エージェントの特徴には、「発生割合」、「視認距離」、「視野角」、「状態」、「目的地」などがある。また、「状態」における「犯罪実施準備」／「犯罪中止」については、それぞれの「障害要因」と、「認知係数」とが記述されている。
【００２８】
「発生割合」は、各歩行者エージェントの発生する割合を示す。「視認距離」および「視野角」は各歩行者エージェントが仮想空間内で視認できる距離と角度を示す。「状態」は、発生時における歩行者エージェントの状態を示すものであり、「通常」または「犯罪実施準備」がある。「通常」は、特に犯罪行動を起こそうという意図のない一般的な歩行者であることを示す。「犯罪実施準備」は、所定の目的地において犯罪行動を起こそうとする歩行者であることを示す。「目的地」は、各歩行者エージェントの行動の目的地を示す。
【００２９】
「障害要因」は、所定の状態である歩行者エージェントにおいて、障害となる要因（設備）、すなわち歩行者エージェントに作用する作用物を示す。例えば、「状態」が「犯罪実施準備」である歩行者エージェントにおいては、「防犯カメラ」と「警備員」を障害となる設備（作用物）とする。また、「状態」が「犯罪実施準備」から「犯罪中止」に移行した歩行者エージェントにおいては、障害となる設備がないものとする。
【００３０】
「認知係数」は、歩行者エージェントが障害要因を認知する、認知のしやすさを示す指標値である。例えば、「認知係数」が「１」である場合、歩行者エージェントが障害要因を１０回視野に捉えた際に、１０回中１０回の割合で確率的に障害要因を認知する（ただし、上記の被認知係数を考慮しないものとする）。同様に、「認知係数」が「０．６」である場合は、歩行者エージェントが障害要因を１０回視野に捉えた場合、１０回中６回の割合で確率的に障害要因を認知する。一例として、「状態」が「犯罪実施準備」である歩行者エージェントにおいては、防犯カメラに対する認知係数が「０．６」、警備員に対する認知係数が「０．９」であるものとする。
【００３１】
歩行者情報１３の内容については、ショッピングモールや空港等のシミュレーションにかかる仮想空間を訪れる歩行者を想定した値が入力される。一例として、「状態」が「犯罪実施準備」である歩行者エージェントにおいては、防犯カメラに対する認知係数が「０．６」、警備員に対する認知係数が「０．９」であるものとする。
【００３２】
シミュレーション管理部３０は、入力情報格納部２０に格納された入力情報（空間情報１１、設備設置計画１２および歩行者情報１３）に基づいて歩行者行動実行部４０において行われる、仮想空間における歩行者エージェントの行動をシミュレーションする処理を管理する。具体的には、シミュレーション管理部３０は、入力情報格納部２０に格納された入力情報と、エージェント情報格納部６０に格納された歩行者エージェントの行動を逐次シミュレーションをした結果（歩行者エージェントの位置情報、経路情報および状態）とを読み出して歩行者行動実行部４０へ出力する。
【００３３】
また、シミュレーション管理部３０は、歩行者行動実行部４０が歩行者エージェントの行動を逐次シミュレーションした結果（歩行者エージェントの位置情報、経路情報および状態）をシミュレーション結果出力部５０へ出力する。
【００３４】
歩行者行動実行部４０は、入力情報（空間情報１１、設備設置計画１２および歩行者情報１３）を初期条件として、歩行者エージェントの行動を逐次シミュレーションする。具体的には、歩行者行動実行部４０は、入力情報を初期条件として、次の時刻（ステップ）まで歩行者エージェントの行動をシミュレーションして次の時刻におけるシミュレーション結果（歩行者エージェントの位置情報、経路情報および状態）を得る。以下同様に、歩行者行動実行部４０は、前の時刻まで歩行者エージェントの行動をシミュレーションした結果（歩行者エージェントの位置情報、経路情報および状態）をもとに、次の時刻における歩行者エージェントの行動をシミュレーションする。歩行者行動実行部４０は、逐次シミュレーションした結果をシミュレーション管理部３０へ出力する。
【００３５】
シミュレーション結果出力部５０は、歩行者エージェントの行動を逐次シミュレーションした結果（歩行者エージェントの位置情報、経路情報および状態）をエージェント情報格納部６０へ格納する。また、シミュレーション結果出力部５０は、エージェント情報格納部６０に格納されたシミュレーション結果を表示装置への表示や印刷装置への印字により出力する。このシミュレーション結果の出力は、逐次シミュレーションした結果を逐次出力してもよい。また、所定時間にわたってシミュレーションした結果の集計結果を出力してもよい。
【００３６】
エージェント情報格納部６０は、逐次シミュレーションした結果である歩行者エージェントの情報（位置情報、経路情報および状態）等のシミュレーション結果をＲＡＭ、ＨＤＤ等の記憶装置に格納する。
【００３７】
次に、シミュレーション装置１の動作の詳細について説明する。図５は、シミュレーション装置１の動作例を示すフローチャートである。
【００３８】
図５に示すように、処理が開始されると、入力部１０は、空間情報１１、歩行者情報１３および設備設置計画１２の入力を受け付けて入力情報格納部２０へ格納する（Ｓ１）。次いで、シミュレーション管理部３０は、入力された空間情報１１および設備設置計画１２をもとに、仮想空間の生成および仮想空間内における設備の配置を行う（Ｓ２）。
【００３９】
図６は、仮想空間を説明する説明図である。図６に示すように、シミュレーション管理部３０は、空間情報１１のセル環境（空間の広さ、フロア数、壁の位置）に基づいた仮想空間２００を生成する。そして、シミュレーション管理部３０は、設備設置計画１２をもとに各設備を仮想空間２００内に配置する。具体的には警備員２１０および防犯カメラ２２０を仮想空間２００内の所定の位置に配置する。なお、警備員２１０において隣接する周囲８セルは、設備設置計画１２をもとにした警備員２１０の影響範囲２１１である。また、防犯カメラ２２０において下方向の横３×縦７セルは、設備設置計画１２をもとにした防犯カメラ２２０の影響範囲２２１である。
【００４０】
次いで、シミュレーション管理部３０は、シミュレーションの開始時刻に対応するステップ数の初期値（Ｓｔｅｐ＝０）を設定する（Ｓ３）。以後、シミュレーション管理部３０は、Ｓ４〜Ｓ１０の処理を繰り返す際に、設定されたステップをインクリメントすることで、シミュレーションの時刻を進める。これにより、シミュレーション管理部３０は、Ｓ４〜Ｓ１０の処理において、ステップに対応して進行する時刻ごとに歩行者行動実行部４０でのシミュレーションを実行させる。なお、ステップのインクリメントにより進むシミュレーションの時間幅は、任意に設定してよく、例えば数秒から数十秒単位でユーザが事前に設定する。
【００４１】
次いで、シミュレーション管理部３０は、歩行者情報１３の発生確率および歩行者種類ごとの発生割合をもとに、所定の出現ポイントにおいて歩行者エージェントを生成する（Ｓ４）。
【００４２】
具体的には、シミュレーション管理部３０は、生成した乱数をもとに、設定された発生確率および発生割合で歩行者エージェントの生成の有無を検証する。そして、シミュレーション管理部３０は、検証結果をもとに、発生有りとする種類の歩行者エージェントを生成する。なお、シミュレーション開始時において予め歩行者エージェントを配置しておく場合は、歩行者情報１３において発生割合の代わりに予め設定された配置位置にしたがって歩行者エージェントを生成する。
【００４３】
また、シミュレーション管理部３０は、生成した歩行者エージェントごとに、ＩＤ（Identification  Data）等の識別情報を割り当て、歩行者エージェントの位置および各種状態を示す情報をエージェント情報格納部６０に格納する。図６の例では、仮想空間２００の左下において歩行者エージェント２０１が生成されている。この歩行者エージェント２０１は、例えば、目的地２０２において犯罪行動を起こそうとする犯罪実施準備者であるものとする。
【００４４】
なお、歩行者エージェントにおける各種状態には、歩行者情報１３に記述された視認距離、視野角、状態、目的地などの他、歩行者エージェントの現在位置から目的地に到達するまでの経路を示す経路情報、移動などの行動に伴って増加する疲労度などが含まれる。各種状態のうち、視認距離、視野角、状態、目的地などの値は、シミュレーションの開始時点（Ｓｔｅｐ＝０）において、歩行者情報１３に記述された値がそのままエージェント情報格納部６０に格納される。また、経路情報および疲労度については、シミュレーションの開始時点おいて０またはＮＵＬＬデータがエージェント情報格納部６０に格納される。そして、歩行者エージェントにおける一部の状態情報（例えば状態、経路情報および疲労度）については、以後の処理で適宜新たな値に更新される。
【００４５】
次いで、シミュレーション管理部３０は、仮想空間２００内に生成されている歩行者エージェント２０１における各種情報をエージェント情報格納部６０より読み出して更新する更新処理を行う（Ｓ５）。なお、シミュレーション管理部３０は、仮想空間２００内に生成されているすべての歩行者エージェント２０１に対して更新処理を行う。この更新処理において、シミュレーション管理部３０は、経路情報が０またはＮＵＬＬデータである場合、空間情報１１のネットワーク環境において歩行者エージェント２０１の現在位置から目的地に至る最短の経路を経路情報とする。
【００４６】
また、シミュレーション管理部３０は、歩行者エージェント２０１の現在位置から目的地に至る経路の距離値が所定の閾値以上である場合、歩行者エージェント２０１における現在の状態を別の状態に移行させる。例えば、「犯罪実施準備」から「犯罪中止」に歩行者エージェント２０１の状態を移行させる。このように、歩行者エージェント２０１の現在位置から目的地に至る経路が長く、犯罪が容易でない場合には、歩行者エージェント２０１の状態を「犯罪実施準備」から「犯罪中止」としてもよい。
【００４７】
なお、歩行者エージェント２０１の状態を移行させるための閾値は、歩行者エージェント２０１の疲労度に基づいて設定される値であってもよい。例えば、歩行者エージェント２０１の状態を移行させるための閾値は、歩行者エージェント２０１の疲労度の上昇に応じて減少させてもよい。このように、歩行者エージェント２０１の現在位置から目的地に至る経路が長く、歩行者エージェント２０１の疲労度が上昇している場合には、歩行者エージェント２０１の状態を「犯罪実施準備」から「犯罪中止」としてもよい。
【００４８】
次いで、シミュレーション管理部３０は、更新処理後の歩行者エージェント２０１における各種情報をもとに、仮想空間２００内に生成されている歩行者エージェント２０１の意思決定を行う（Ｓ６）。図７は、意思決定の処理例を示すフローチャートである。なお、図７の例では一人の歩行者エージェント２０１についての意思決定の処理を例示しているが、シミュレーション管理部３０は、仮想空間２００内に生成されている全ての歩行者エージェント２０１に対して図７の処理を行う。
【００４９】
図７に示すように、処理が開始されると、シミュレーション管理部３０は、歩行者エージェント２０１に設定されている視認距離および視野角をもとに、歩行者エージェント２０１の視野内にあるセル集合（Ｃ）を算出する（Ｓ２０）。具体的には、シミュレーション管理部３０は、歩行者エージェント２０１における経路情報に沿った向きに歩行者エージェント２０１の視野方向を設定し、歩行者エージェント２０１の視認距離および視野角の範囲にある仮想空間２００内のセルを求める。
【００５０】
次いで、シミュレーション管理部３０は、設備設置計画１２をもとに、セル集合（Ｃ）に含まれる障害要因（設備）の集合（Ｂ）を算出する（Ｓ２１）。具体的には、シミュレーション管理部３０は、セル集合（Ｃ）内に位置する設備を設備設置計画１２より抽出して集合（Ｂ）を求める。
【００５１】
次いで、シミュレーション管理部３０は、処理にかかる変数ｉの値を初期化（ｉ←０）する（Ｓ２２）。次いで、シミュレーション管理部３０は、変数ｉの値が集合（Ｂ）の要素数（｜Ｂ｜）未満であるか否かを判定する（Ｓ２３）。
【００５２】
変数ｉの値が要素数（｜Ｂ｜）未満である場合（Ｓ２３：ＹＥＳ）、シミュレーション管理部３０は、集合（Ｂ）のｉ番目の要素（ｂｉ）が現在の歩行者エージェント２０１の状態における障害要因であるか否かを判定する（Ｓ２４）。
【００５３】
具体的には、シミュレーション管理部３０は、更新処理後の歩行者エージェント２０１における各種情報をもとに、歩行者エージェント２０１の状態が「犯罪実施準備」、「犯罪中止」、「通常」のいずれの状態であるかを確認する。次いで、シミュレーション管理部３０は、歩行者情報１３を参照して歩行者エージェント２０１の状態に対応する障害要因を求め、集合（Ｂ）のｉ番目の要素（ｂｉ）が障害要因に該当するか否かを判定する。
【００５４】
例えば、歩行者エージェント２０１の状態が「犯罪実施準備」である場合の障害要因は、「防犯カメラ、警備員」である（図４参照）。よって、集合（Ｂ）のｉ番目の要素（ｂｉ）が防犯カメラまたは警備員である場合は、現在の歩行者エージェント２０１の状態における障害要因であるものと判定する。また、歩行者エージェント２０１の状態が「犯罪中止」や「通常」である場合の障害要因は「なし」である。よって、歩行者エージェント２０１の状態が「犯罪中止」や「通常」である場合には、障害要因に該当しないものと判定する。
【００５５】
障害要因でない場合（Ｓ２４：ＮＯ）、シミュレーション管理部３０は、Ｓ２９へ処理を進める。障害要因である場合（Ｓ２４：ＹＥＳ）、シミュレーション管理部３０は、歩行者情報１３に設定されている障害要因に対する認知係数と、設備設置計画１２に設定されている歩行者エージェント２０１への被認知係数とを求める。次いで、シミュレーション管理部３０は、認知係数と被認知係数から、歩行者エージェント２０１が集合（Ｂ）のｉ番目の要素（ｂｉ）である障害要因を認知する認知確率ｐ（ｂｉ）を計算する（Ｓ２５）。
【００５６】
例えば、シミュレーション管理部３０は、認知係数が０．５、被認知係数が０．６である場合、０．５×０．６＝０．３を認知確率ｐ（ｂｉ）とする。
【００５７】
次いで、シミュレーション管理部３０は、０以上１未満の範囲の乱数（ｒ）を生成し（Ｓ２６）、生成した乱数（ｒ）と認知確率ｐ（ｂｉ）とを比較して歩行者エージェント２０１が障害要因を認知したか否かを判定する（Ｓ２７）。例えば、シミュレーション管理部３０は、生成した乱数（ｒ）が認知確率ｐ（ｂｉ）よりも小さい場合（Ｓ２７：ＹＥＳ）は障害要因を認知したものと判定する。
【００５８】
障害要因を認知しない場合（Ｓ２７：ＮＯ）、シミュレーション管理部３０は、Ｓ２９へ処理を進める。障害要因を認知した場合（Ｓ２７：ＹＥＳ）、シミュレーション管理部３０は、集合（Ｂ）のｉ番目の要素（ｂｉ）である障害要因について設備設置計画１２で設定されている影響範囲を通行不能箇所とする（Ｓ２８）。
【００５９】
次いで、シミュレーション管理部３０は、変数ｉをインクリメント（ｉ←ｉ＋１）し（Ｓ２９）、Ｓ２３へ処理を戻す。
【００６０】
変数ｉの値が要素数（｜Ｂ｜）未満でない場合（Ｓ２３：ＮＯ）、シミュレーション管理部３０はＳ２４〜Ｓ２９の処理を抜けてＳ３０へ処理を進める。Ｓ３０において、シミュレーション管理部３０は、Ｓ２８において通行不能箇所としたところをもとに、空間情報１１に示される仮想空間２００のネットワーク環境を再構成する（Ｓ３０）。具体的には、シミュレーション管理部３０は、Ｓ２８において通行不能箇所のリンクを消去する。
【００６１】
次いで、シミュレーション管理部３０は、歩行者エージェント２０１における経路情報が示す、歩行者エージェント２０１の目的地に至る経路が通行不能である場合、再構成されたネットワーク環境をもとに歩行者エージェント２０１の経路を再選択する（Ｓ３１）。そして、シミュレーション管理部３０は、歩行者エージェント２０１の経路情報を、再選択された経路に対応する経路情報に更新する。
【００６２】
図８は、経路２０３の再選択を行う場合を説明する説明図である。図８に示すように、シミュレーション開始後の所定の時点において、経路２０３に沿って移動している歩行者エージェント２０１が、視野範囲２０４に含まれる警備員２１０を認知したものとする。この場合、警備員２１０の影響範囲２１１が通行不能となることから、歩行者エージェント２０１の目的地２０２に至る経路２０３が通行不能となる。よって、通行不能箇所のリンクを消去して再構成された仮想空間２００のネットワーク環境をもとに、歩行者エージェント２０１の経路２０３が再選択される。具体的には、警備員２１０の影響範囲２１１を回避して目的地２０２へ至る新たな経路２０３が選択される。
【００６３】
図９は、経路２０３の再選択を行わない場合を説明する説明図である。図９に示すように、シミュレーション開始後の所定の時点において、経路２０３に沿って移動している歩行者エージェント２０１が、視野範囲２０４に含まれる防犯カメラ２２０を認知しなかったものとする。この場合、防犯カメラ２２０の影響範囲２２１が通行不能とはならず、歩行者エージェント２０１の目的地２０２に至る経路２０３は通行不能とはならない。よって、経路２０３の再選択は行われないこととなる。
【００６４】
図５に戻り、歩行者行動実行部４０は、Ｓ６で決定された意思（経路２０３）をもとに、各歩行者エージェント２０１の歩行行動をシミュレーションする（Ｓ７）。具体的には、歩行者行動実行部４０は、各歩行者エージェント２０１についてＳ４で決定された意思（経路）に従い、ステップ内に歩行する方向および歩行量を算出する。このＳ７のシミュレーション結果は、シミュレーション管理部３０に出力されてエージェント情報格納部６０に格納される。例えば、歩行者エージェント２０１の現在位置は、経路に沿って歩行する歩行量に応じた位置に更新されて、エージェント情報格納部６０に格納される。また、歩行者エージェント２０１の疲労度は、経路に沿って歩行する歩行量に応じた値が蓄積（増加）されて、エージェント情報格納部６０に格納される。
【００６５】
次いで、シミュレーション結果出力部５０は、エージェント情報格納部６０に格納されたシミュレーション結果をもとに、仮想空間２００および仮想空間２００内の各歩行者エージェント２０１を表示装置の画面に描画する（Ｓ８）。
【００６６】
例えば、シミュレーション結果出力部５０は、ステップごとに算出されたシミュレーション結果をもとに、仮想空間２００内における各歩行者エージェント２０１の現在位置および移動した経路を描画する。このとき、シミュレーション結果出力部５０は、「通常」、「犯罪実施準備」、「犯罪中止」などの歩行者エージェント２０１の状態に応じて表示態様（例えば色）を変えてもよい。また、シミュレーション結果出力部５０は、ステップごとに算出されたシミュレーション結果をもとに、仮想空間２００全体の状態（例えば「通常」の人数、「犯罪実施準備」の人数、「犯罪中止」の人数）をステップごとに集計して描画してもよい。これにより、ユーザは、ステップごとの各歩行者エージェント２０１の動きを容易に認識できる。
【００６７】
次いで、シミュレーション管理部３０は、予め設定された最終ステップ（シミュレーションを終了する時刻）まで処理が終了したか否かを判定する（Ｓ９）。処理が終了していない場合（Ｓ９：ＮＯ）、シミュレーション管理部３０は、ステップ数をインクリメントし（Ｓ１０）、Ｓ４へ処理を戻す。
【００６８】
処理が終了した場合（Ｓ９：ＹＥＳ）、エージェント情報格納部６０は、エージェント情報格納部６０のシミュレーション結果を集計した集計結果を、例えば表示装置の画面に出力する（Ｓ１１）。これにより、ユーザは、シミュレーションの集計結果を容易に認識できる。
【００６９】
以上のように、シミュレーション装置１は、仮想空間２００に、それぞれの状態情報に基づき行動する歩行者エージェント２０１を配置する。そして、シミュレーション装置１は、歩行者エージェント２０１の仮想空間２００内の配置位置、および、配置位置に対応して確率的に作用する歩行者エージェント２０１内の作用物（警備員２１０、防犯カメラ２２０）の作用情報に基づき、状態情報（例えば経路情報）を更新する。これにより、シミュレーション装置１は、人流シミュレーションにおいて、歩行者エージェント２０１の不確実な認知活動を再現することができる。
【００７０】
なお、歩行者エージェント２０１の障害要因に対する認知係数は、歩行者エージェント２０１の疲労度に応じて変化させてもよい。具体的には、シミュレーション管理部３０は、歩行者エージェント２０１の認知係数について、歩行者エージェント２０１の障害要因に対する距離（ｄ）と疲労度との関数より求める。一例として、シミュレーション管理部３０は、（１／（１＋疲労度））×（１／ｄ）より認知係数を求めてもよい。
【００７１】
図１０は、疲労度による認知係数の変化を説明する説明図である。図１０の上の例では、所定の時刻における歩行者エージェント２０１の疲労度を０．２、障害要因である防犯カメラ２２０と歩行者エージェント２０１との距離（ｄ）を７とする。また上述した時刻から所定の時間（ｔ＝２）経過した場合の下の例では、疲労度を０．８、距離（ｄ）を３とする。
【００７２】
上の例において、認知係数は、（１／（１＋疲労度））×（１／ｄ）より、０．１８５…となる。同様に、下の例では、認知係数は０．１１９…となる。このように、時間的に変化する疲労度に応じて歩行者エージェント２０１の認知係数を設定してもよい。この場合は、歩行者エージェント２０１の疲労による歩行者エージェント２０１の不確実な認知活動を再現することができる。
【００７３】
また、障害要因の歩行者エージェント２０１に対する被認知係数は、障害要因の歩行者エージェント２０１に対する距離と角度に応じて変化させてもよい。具体的には、シミュレーション管理部３０は、障害要因の被認知係数について、障害要因の歩行者エージェント２０１に対する距離（ｄ）と角度（θ）との関数により求める。一例として、シミュレーション管理部３０は、（１／ｄ）×（１＋ｃｏｓθ）／２より被認知係数を求めてもよい。
【００７４】
図１１は、距離と角度による被認知係数の変化を説明する説明図である。図１１のケースＣ１では、障害要因である防犯カメラ２２０に対する歩行者エージェント２０１を正面とし、防犯カメラ２２０と歩行者エージェント２０１との距離（ｄ）を３とする。また、ケースＣ２では、防犯カメラ２２０に対して歩行者エージェント２０１が角度（θ）を有し、距離（ｄ）を５とする。
【００７５】
ケースＣ１において、被認知係数は、（１／ｄ）×（１＋ｃｏｓθ）／２より、０．３３３３…となる。同様に、ケースＣ２では、被認知係数は０．１６となる。このように、歩行者エージェント２０１と防犯カメラ２２０との角度および距離によって防犯カメラ２２０の被認知係数を設定してもよい。この場合は、障害要因に対する歩行者エージェント２０１の角度、距離による歩行者エージェント２０１の不確実な認知活動を再現することができる。
【００７６】
シミュレーション装置１で行われる各種処理機能は、ＣＰＵ（またはＭＰＵ、ＭＣＵ（Micro  Controller  Unit）等のマイクロ・コンピュータ）上で、その全部または任意の一部を実行するようにしてもよい。また、各種処理機能は、ＣＰＵ（またはＭＰＵ、ＭＣＵ等のマイクロ・コンピュータ）で解析実行されるプログラム上、またはワイヤードロジックによるハードウエア上で、その全部または任意の一部を実行するようにしてもよいことは言うまでもない。
【００７７】
ところで、上記の実施形態で説明した各種の処理は、予め用意されたプログラムをコンピュータで実行することで実現できる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータ（ハードウエア）の一例を説明する。図１２は、実施形態にかかるシミュレーション装置１のハードウエア構成の一例を示すブロック図である。
【００７８】
図１２に示すように、シミュレーション装置１は、各種演算処理を実行するＣＰＵ１０１と、データ入力を受け付ける入力装置１０２と、モニタ１０３と、スピーカ１０４とを有する。また、シミュレーション装置１は、記憶媒体からプログラム等を読み取る媒体読取装置１０５と、各種装置と接続するためのインタフェース装置１０６と、有線または無線により外部機器と通信接続するための通信装置１０７とを有する。また、シミュレーション装置１は、各種情報を一時記憶するＲＡＭ１０８と、ハードディスク装置１０９とを有する。また、シミュレーション装置１内の各部（１０１〜１０９）は、バス１１０に接続される。
【００７９】
ハードディスク装置１０９には、上記の実施形態で説明した各種の処理を実行するためのプログラム１１１が記憶される。また、ハードディスク装置１０９には、プログラム１１１が参照する各種データ１１２が記憶される。入力装置１０２は、例えば、シミュレーション装置１の操作者から操作情報の入力を受け付ける。モニタ１０３は、例えば、操作者が操作する各種画面を表示する。インタフェース装置１０６は、例えば印刷装置等が接続される。通信装置１０７は、ＬＡＮ（Local  Area  Network）等の通信ネットワークと接続され、通信ネットワークを介した外部機器との間で各種情報をやりとりする。
【００８０】
ＣＰＵ１０１は、ハードディスク装置１０９に記憶されたプログラム１１１を読み出して、ＲＡＭ１０８に展開して実行することで、各種の処理を行う。なお、プログラム１１１は、ハードディスク装置１０９に記憶されていなくてもよい。例えば、シミュレーション装置１が読み取り可能な記憶媒体に記憶されたプログラム１１１を、シミュレーション装置１が読み出して実行するようにしてもよい。シミュレーション装置１が読み取り可能な記憶媒体は、例えば、ＣＤ−ＲＯＭやＤＶＤディスク、ＵＳＢ（Universal  Serial  Bus）メモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ、ハードディスクドライブ等が対応する。また、公衆回線、インターネット、ＬＡＮ等に接続された装置にこのプログラムを記憶させておき、シミュレーション装置１がこれらからプログラムを読み出して実行するようにしてもよい。
【符号の説明】
【００８１】
１…シミュレーション装置
１０…入力部
１１…空間情報
１２…設備設置計画
１３…歩行者情報
２０…入力情報格納部
３０…シミュレーション管理部
４０…歩行者行動実行部
５０…シミュレーション結果出力部
６０…エージェント情報格納部
１０１…ＣＰＵ
１０２…入力装置
１０３…モニタ
１０４…スピーカ
１０５…媒体読取装置
１０６…インタフェース装置
１０７…通信装置
１０８…ＲＡＭ
１０９…ハードディスク装置
１１０…バス
１１１…プログラム
１１２…各種データ
２００…仮想空間
２０１…歩行者エージェント
２０２…目的地
２０３…経路
２０４…視野範囲
２１０…警備員
２１１…影響範囲
２２０…防犯カメラ
２２１…影響範囲
【図１】
2017224201.tif 000003
【図２】
2017224201.tif 000004
【図３】
2017224201.tif 000005
【図４】
2017224201.tif 000006
【図５】
2017224201.tif 000007
【図６】
2017224201.tif 000008
【図７】
2017224201.tif 000009
【図８】
2017224201.tif 000010
【図９】
2017224201.tif 000011
【図１０】
2017224201.tif 000012
【図１１】
2017224201.tif 000013
【図１２】
2017224201.tif 000014