(57)【要約】      （修正有）【課題】移動目標位置に応じて異なる動線へ誘導される個体の行動を予測できるシミュレーター、シミュレーション方法及びシミュレーションプログラムを提供する。【解決手段】所定の空間における個体の移動を予測するシミュレーターは、空間に設定された複数の移動目標位置を含んだ空間情報を記憶している空間情報記憶手段４０と、複数の移動目標位置のいずれかへ移動する個体が誘引されるように設定された誘引領域を、移動目標位置と対応付けて記憶する誘引領域記憶手段４１と、空間における個体の位置、および個体の目標として複数の移動目標位置の中から選択された選択目標位置を少なくとも含む個体情報を記憶する個体情報記憶手段４２と、選択目標位置に対応し且つ個体の周囲に位置する誘引領域と選択目標位置との両方へ、個体を近づける移動量を設定する行動決定手段５０と、個体の位置を移動量に応じて更新する個体情報変更手段５１を備える。【選択図】図２
2019219880.tif 000002
【特許請求の範囲】
【請求項１】
所定の空間における個体の移動を予測するシミュレーターであって、
前記空間に設定された複数の移動目標位置を含んだ空間情報を記憶している空間情報記憶手段と、
前記複数の移動目標位置のいずれかへ移動する前記個体が誘引されるように設定された誘引領域を、当該移動目標位置と対応付けて記憶する誘引領域記憶手段と、
前記空間における前記個体の位置、および前記個体の目標として前記複数の移動目標位置の中から選択された選択目標位置を少なくとも含む個体情報を記憶する個体情報記憶手段と、
前記選択目標位置に対応し且つ前記個体の周囲に位置する前記誘引領域と前記選択目標位置との両方へ、前記個体を近づける移動量を設定する行動決定手段と、
前記個体の位置を前記移動量に応じて更新する個体情報変更手段と、
を備えることを特徴とするシミュレーター。
【請求項２】
前記誘引領域記憶手段は、前記誘引領域ごとに誘引し易さの度合いを表す誘引度を記憶し、
前記行動決定手段は、前記誘引度が高い前記誘引領域ほど前記個体を前記誘引領域へ近づける前記移動量を設定する、ことを特徴とする請求項１に記載のシミュレーター。
【請求項３】
前記誘引領域記憶手段は、前記誘引領域ごとに予め定められた標準速度を記憶し、
前記行動決定手段は、前記個体の前記移動量を、前記選択目標位置に対応する前記誘引領域の前記標準速度に近づけることを特徴とする請求項１又は２に記載のシミュレーター。
【請求項４】
前記個体情報記憶手段は、さらに前記個体に設定された前記移動量を記憶し、
前記行動決定手段は、前記個体情報記憶手段に記憶された前記移動量が示す前記個体の移動方向に偏って広がるように前記個体の周囲に設定された作用領域に前記誘引領域が存在する場合に、前記誘引領域と前記選択目標位置との両方へ前記個体を近づける移動量を設定し、前記作用領域に前記誘引領域が存在しない場合に前記選択目標位置へ前記個体を近づける移動量を設定する、ことを特徴とする請求項１〜３のいずれか一項に記載のシミュレーター。
【請求項５】
所定の空間における個体の移動を予測するシミュレーション方法であって、
前記空間に設定された複数の移動目標位置を含んだ空間情報と、前記複数の移動目標位置のいずれかへ移動する前記個体が誘引されるように設定された誘引領域が当該移動目標位置と対応付けられている誘引領域情報と、前記空間における前記個体の位置、および前記個体の目標として前記複数の移動目標位置の中から選択された選択目標位置を少なくとも含む個体情報と、を記憶装置に記憶しているコンピュータに、
前記選択目標位置に対応し且つ前記個体の周囲に位置する前記誘引領域と前記選択目標位置との両方へ、前記個体を近づける移動量を設定する処理と、
前記個体の位置を前記移動量に応じて更新する処理と、
を実行させることを特徴とするシミュレーション方法。
【請求項６】
所定の空間における個体の移動をコンピュータに予測させるシミュレーションプログラムであって、
前記空間に設定された複数の移動目標位置を含んだ空間情報と、前記複数の移動目標位置のいずれかへ移動する前記個体が誘引されるように設定された誘引領域が当該移動目標位置と対応付けられている誘引領域情報と、前記空間における前記個体の位置、および前記個体の目標として前記複数の移動目標位置の中から選択された選択目標位置を少なくとも含む個体情報と、を記憶装置に記憶している前記コンピュータに、
前記選択目標位置に対応し且つ前記個体の周囲に位置する前記誘引領域と前記選択目標位置との両方へ、前記個体を近づける移動量を設定する処理と、
前記個体の位置を前記移動量に応じて更新する処理と、
を実行させることを特徴とするシミュレーションプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定の空間における個体の移動を予測するシミュレーター、シミュレーション方法及びシミュレーションプログラムに関する。
【背景技術】
【０００２】
群集が円滑に移動できる空間の設計や、既存の空間における適切な群集の誘導計画などを検証するために、群集の行動を予測するシミュレーターが活用されている。
例えば特許文献１には、火災発生時の群集の移動を予測する際に、群集は避難方向の指示（避難誘導）があれば直感に逆らってでもそれに従うものと仮定し、群集に作用する力として避難誘導による誘導ポテンシャルを想定して、群集の移動速度に作用させるシミュレーターが記載されている。
【０００３】
また、例えば特許文献２には、火災時の避難者の行動を予測する際に、自力避難者は、（１）自分のいる空間に出口がある場合は自分から最も近い出口を、（２）自分のいる空間に誘導灯がある場合は自分から最も近い誘導灯が示すドアを、（３）その他の場合は自分のいる部屋にあるドアの中で自分から最も近いドアを、それぞれ短期移動目標として選択するルールに従って、自力避難者の移動を予測する避難行動予測システムが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開昭５８−１８６８９５号公報
【特許文献２】特開２００６−１０７２３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
これらの従来技術では、個体の行動を予測する際に個体を誘導する誘導情報を利用しているが、この誘導情報は単に移動目標位置を定めるものであった。このため、個体が動線に誘導されたときの行動を予測できなかった。特に、移動目標位置に応じて異なる動線に個体が誘導されたときの行動を予測できなかった。
【０００６】
例えば、駅構内の乗降客についての動線計画を立てる場合、ホームに向かう乗車客と出口に向かう降車客とが混在する。従来技術においては、ホームを移動目標位置とする個体と出口を移動目標位置とする個体のいずれに対しても同じ内容の誘導情報が作用する。このため、誘導情報によってこれらの個体を異なる動線に誘導するシミュレーションはできなかった。
本発明は、上記の問題点を鑑みてなされたものであり、移動目標位置に応じて異なる動線へ個体を誘導したときの行動を予測できるシミュレーションを実現することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一形態によれば、所定の空間における個体の移動を予測するシミュレーターが与えられる。シミュレーターは、空間に設定された複数の移動目標位置を含んだ空間情報を記憶している空間情報記憶手段と、複数の移動目標位置のいずれかへ移動する個体が誘引されるように設定された誘引領域を、当該移動目標位置と対応付けて記憶する誘引領域記憶手段と、空間における個体の位置、および個体の目標として複数の移動目標位置の中から選択された選択目標位置を少なくとも含む個体情報を記憶する個体情報記憶手段と、選択目標位置に対応し且つ個体の周囲に位置する誘引領域と選択目標位置との両方へ、個体を近づける移動量を設定する行動決定手段と、個体の位置を移動量に応じて更新する個体情報変更手段と、を備える。
【０００８】
本発明の他の形態によれば、所定の空間における個体の移動を予測するシミュレーション方法が与えられる。シミュレーション方法では、空間に設定された複数の移動目標位置を含んだ空間情報と、複数の移動目標位置のいずれかへ移動する個体が誘引されるように設定された誘引領域が当該移動目標位置と対応付けられている誘引領域情報と、空間における個体の位置、および個体の目標として複数の移動目標位置の中から選択された選択目標位置を少なくとも含む個体情報と、を記憶装置に記憶しているコンピュータに、選択目標位置に対応し且つ個体の周囲に位置する誘引領域と選択目標位置との両方へ、個体を近づける移動量を設定する処理と、個体の位置を移動量に応じて更新する処理と、を実行させる。
【０００９】
本発明のさらに他の形態によれば、所定の空間における個体の移動をコンピュータに予測させるシミュレーションプログラムが与えられる。シミュレーションプログラムは、空間に設定された複数の移動目標位置を含んだ空間情報と、複数の移動目標位置のいずれかへ移動する個体が誘引されるように設定された誘引領域が当該移動目標位置と対応付けられている誘引領域情報と、空間における個体の位置、および個体の目標として複数の移動目標位置の中から選択された選択目標位置を少なくとも含む個体情報と、を記憶装置に記憶しているコンピュータに、選択目標位置に対応し且つ個体の周囲に位置する誘引領域と選択目標位置との両方へ、個体を近づける移動量を設定する処理と、個体の位置を移動量に応じて更新する処理と、を実行させる。
【発明の効果】
【００１０】
本発明によれば、移動目標位置に応じて異なる動線へ個体を誘導した場合の個体の行動を予測できる。
【図面の簡単な説明】
【００１１】
【図１】実施形態に係るシミュレーターの一例の概略構成図である。
【図２】実施形態に係るシミュレーターの一例の機能ブロック図である。
【図３】（ａ）は対象空間内において個体が移動可能な移動可能領域の設定例を示す図であり、（ｂ）は移動目標位置の代表点及び移動目標位置への代表経路を形成するための中間目標点の設定例を示す図である。
【図４】誘引領域情報の一例を示す図である。
【図５】（ａ）〜（ｉ）は図４の誘引領域情報によりそれぞれ設定された誘引領域の例を示す図である。
【図６】（ａ）は時刻に依存しない個体情報の一例を示す図であり、（ｂ）は時刻に依存する個体情報の一例を示す図である。
【図７】作用領域の一例を示す図である。
【図８】（ａ）は選択目標位置に近付ける加速度ｅｉ（ｔ）の算出方法の一例の説明図であり、（ｂ）は誘引領域に近付ける加速度ａｉ（ｔ）の算出方法の一例の説明図である。
【図９】個体の加速度の算出方法の一例の説明図である。
【図１０】実施形態に係るシミュレーション方法の一例のフローチャートである。
【図１１】被誘引度更新処理の一例のフローチャートである。
【図１２】行動決定処理の一例のフローチャートである。
【発明を実施するための形態】
【００１２】
以下において、図面を参照して本発明の実施形態を説明する。なお、以下に示す本発明の実施形態は、本発明の技術的思想を具体化するための装置や方法を例示するものであって、本発明の技術的思想は、構成部品の構造、配置等を下記のものに特定するものではない。本発明の技術的思想は、特許請求の範囲に記載された請求項が規定する技術的範囲内において、種々の変更を加えることができる。
【００１３】
本発明の実施形態として、西側連絡口、東側連絡口、南側連絡口の３つの連絡口を有するＴ字路において複数の人のそれぞれがいずれかの連絡口に移動する行動を予測するシミュレーターの例を示す。
すなわち、本実施形態において、シミュレーションの対象となる空間（対象空間）はＴ字路であり、群集を構成する個体は人であり、各個体の目的は連絡口の先にある施設等により提供される役務などである。
【００１４】
各個体は当該個体の目的に対応する連絡口を移動目標位置とし、移動目標位置に向けた移動という手段によって目的を達成しようとしている。
また、この実施形態においては、シミュレーションの実施者（以下、利用者と称する）が、シミュレーターを用いて、Ｔ字路に右側通行で運用する施策を適用した場合の群集の行動を予測する様子を例にして説明を行う。
【００１５】
なお、本明細書において説明されるＴ字路は、あくまで対象空間の一例であり、本発明の対象はこれに限定されるものではない。例えば、複数の部屋や通路から構成される空間などより複雑な空間であってもよい。その場合、対象空間内において個体が移動可能な移動可能領域は、壁、什器等の領域を除いた複雑な形状となる。
【００１６】
（構成）
図１は、実施形態に係るシミュレーターの一例の概略構成図である。
シミュレーター１は、操作入力部２、ファイル入出力部３、記憶部４、制御部５、および表示部６からなる。これらのうちのファイル入出力部３、記憶部４および制御部５はいわゆるコンピュータで実現でき、操作入力部２および表示部６は当該コンピュータの周辺機器として実現できる。
【００１７】
操作入力部２は、キーボード、マウス等のユーザーインターフェースであり、利用者に操作されてデータの入力等に用いられる。操作入力部２は、制御部５に接続され、利用者の操作を操作信号に変換して制御部５に出力する。
【００１８】
ファイル入出力部３は、ＤＶＤ（Digital Versatile Disc）ドライブ、ＵＳＢ（Universal Serial Bus）インターフェース、ネットワークインターフェース等であり、一方が不図示の外部機器、記録メディア、ネットワーク等に接続され、他方が制御部５に接続され、データをファイルとして制御部５に入力し、およびデータをファイルとして制御部５から出力する。
【００１９】
記憶部４は、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）等のメモリ装置であり、各種プログラムや各種データを記憶する。記憶部４は、制御部５と接続されて制御部５との間でこれらの情報を入出力する。
【００２０】
制御部５は、ＣＰＵ（Central Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＭＣＵ（Micro Control Unit）等の演算装置で構成される。制御部５は、記憶部４と接続され、記憶部４からプログラムを読み出して実行することにより各種処理部として動作し、各種データを記憶部４に記憶させ、読み出す。また、制御部５は、操作入力部２、ファイル入出力部３および表示部６とも接続され、利用者が操作入力部２を操作して入力されたデータを取得し、ファイル入出力部３を介して外部からファイルとしてデータを取得および出力し、所得したデータに基づいたシミュレーションを行って群集の行動を予測し、予測結果のデータをファイルとしてファイル入出力部３から出力させ、および／または予測結果のデータを画像化して表示部６に表示させる。
【００２１】
表示部６は、液晶ディスプレイ又はＣＲＴ（Cathode Ray Tube）ディスプレイ等のディスプレイ装置であり、制御部５と接続され、制御部５による予測結果を表示する。利用者は表示された予測結果を視認して群集の行動に関する考察等を行う。
【００２２】
（シミュレーター１の機能）
図２は、実施形態に係るシミュレーター１の一例の機能ブロック図である。
操作入力部２は、条件設定手段２０の一部等として機能し、ファイル入出力部３は条件設定手段２０の一部および予測結果出力手段５２の一部等として機能する。
記憶部４は空間情報記憶手段４０、誘引領域記憶手段４１および個体情報記憶手段４２等として機能する。
制御部５は、ＣＰＵ、ＤＳＰ、ＭＣＵ等の演算装置によって記憶部４に格納されたコンピュータプログラムを実行することにより、行動決定手段５０、個体情報変更手段５１および予測結果出力手段５２の一部等として機能する。
【００２３】
条件設定手段２０は、シミュレーションに必要な各種条件の入力を受け付け、入力された条件を記憶部４に記憶させる。条件設定手段２０は、例えば、操作入力部２および制御部５が協働して実現され、利用者が操作入力部２を操作して入力した値を、制御部５が記憶部４に記憶させる。条件設定手段２０は、条件の一部または全部が記されたファイルを入力するファイル入出力部３を含んでもよく、利用者が操作入力部２を操作して指定したファイルを制御部５がファイル入出力部３を介して取得して当該ファイルに記された値を記憶部４に記憶させる。
【００２４】
本実施形態のシミュレーションは、仮想時刻を進めながら行われる。例えば、全個体が移動目標位置に到達するまで仮想時刻を０から１ずつ増加させながら仮想時刻ごとに個体の情報を更新する処理が繰り返される。なお、条件設定手段２０によって仮想時刻の上限Ｔを設定し、仮想時刻が（Ｔ−１）に達するまでの繰り返しとしてもよい。また、操作入力部２にて利用者による終了指示の入力を受け付け、終了指示が入力された時点で強制終了する処理を加えてもよい。
【００２５】
仮想時刻は、実際の時間の経過を模擬したものであるが、シミュレーターが１時刻分の演算を終えるたびに進められ、実際の時間の経過よりも高速に刻まれる。例えば、仮想時刻の１時刻を実際の１秒間に対応させ、仮想時刻を０から始まり１ずつ増加する整数で表す。
【００２６】
空間情報記憶手段４０は、対象空間内において個体が移動可能な移動可能領域、および複数の移動目標位置を含んだ空間情報を記憶する。空間情報は、条件設定手段２０を用いた利用者による入力操作により予め設定される。
図３（ａ）を参照する。空間情報は、例えば２次元ｘｙ座標系に定義された対象空間内の移動可能領域の地図１００を有している。地図１００は、ハッチングで示された移動可能領域１１０を表す座標情報を含んでおり、図３（ａ）の例では、移動可能領域１１０は、座標（０，２０）−（３０，２０）−（３０，１０）−（２０，１０）−（２０，０）−（１０，０）−（１０，１０）−（０，１０）を結ぶＴ字型の閉多角形として定義されている。
【００２７】
空間情報は、対象空間に定義された複数の移動目標位置について、各移動目標位置を識別する目標位置ＩＤと座標情報とを対応付けて有している。
例えば移動目標位置は、西側連絡口、東側連絡口及び南側連絡口の位置をそれぞれ示す線状の領域であってよい。図３（ａ）の例では、西側連絡口I、東側連絡口II及び南側連絡口IIIの目標位置ＩＤをそれぞれ「I」、「II」及び「III」とし、それぞれの位置を、線分（０，２０）−（０，１０）、線分（３０，１０）−（３０，２０）及び線分（１０，０）−（２０，０）に設定する。
【００２８】
空間情報は、移動目標位置の補助情報として、各移動目標位置の代表点も含んでよい。図３（ｂ）の例では、西側連絡口I、東側連絡口II及び南側連絡口IIIの代表点Ｐｔ１、Ｐｔ２及びＰｔ３は、それぞれ西側連絡口Iの線分の中点（０，１５）、東側連絡口IIの線分の中点（３０，１５）、及び南側連絡口IIIの線分の中点（１５，３０）である。
また、空間情報は、移動目標位置のもう一つの補助情報として、各移動目標位置への代表経路を形成するための中間目標点も記憶してよい。中間目標点は、対象空間に障害物がある場合に、障害物を回避する経路の中間点となるように適宜設定してよい。図３（ｂ）の例では、Ｐｉ１（１１，１１）及びＰｉ２（１９，１１）が中間目標点として設定されている。
【００２９】
図２を参照する。誘引領域記憶手段４１は、個体を誘導する案内によって個体が誘引されて、動線となり得る誘引領域に関する誘引領域情報を記憶する。
案内は、例えば指示、表示、サイン、空間形状、音声案内などであり、誘引は、案内によって個体が引き寄せられる作用である。誘引領域は、移動可能領域内に設定される。
【００３０】
例えば、右側通行の案内表示に係る誘引領域は、道路や通路の右側の領域である。例えば、道路上の右側にペイントされた矢印（案内）に対応して当該道路の右側に誘引領域が設定される。また例えば、複数の異なる地点のそれぞれへ誘導するために分けられたレーンに係る誘引領域は、道路や通路に設けられたレーンに対応する領域（例えばそれぞれのレーン内の領域）である。
上記例では、誘引領域内に案内が表示されたが、誘引領域は、案内が表示される場所と一致する必要はなく、さらには視覚以外で知覚される案内に対応した領域であってもよい。
【００３１】
例えば、右側通行の道路区間の手前に設置された標識や誘導灯などの案内表示または右側に導くパイロン等に対応して当該道路区間の右側に設定される誘引領域は、案内の表示や空間形状の変化が誘引領域外に設けられる場合の一例である。
また例えば、右側通行の道路区間内および／または当該道路区間付近に向けて行われる右側通行の案内放送に対応して当該道路区間の右側に設定される誘引領域は、視覚以外により知覚される指示や案内により個体が誘引される誘引領域の一例である。
【００３２】
誘引領域情報は、条件設定手段２０を用いて予め利用者により設定される。
図４を参照する。誘引領域情報１２０は、複数の誘引領域それぞれについての、誘引領域ＩＤ、移動目標位置情報、座標情報、誘引度、標準速度の情報を有する。誘引領域記憶手段４１には、誘引領域ごとに誘引領域ＩＤ、移動目標位置情報、座標情報、誘引度、標準速度が対応付けられて記憶される。
【００３３】
誘引領域ＩＤは、誘引領域の識別子である。
移動目標位置情報は、誘引領域に誘引する対象となる個体の移動目標位置を示す。すなわち、誘引領域は、特定の移動目標位置へ移動する個体を誘引するように設定されており、移動目標位置情報は、特定の移動目標位置と、この移動目標位置へ移動する個体を誘引する誘引領域との対応付けを示す。
例えば、東西に延在した右側通行の道路に対し、東に向かう人に作用する誘引領域は当該道路内の南側に設定され、西に向かう人に作用する誘引領域は当該道路内の北側に設定される。
【００３４】
誘引領域の座標情報は、移動可能領域１１０内に設定された誘引領域の位置及び形状を示す。
誘引度は、誘引領域への個体の誘引し易さの度合いを表す。
標準速度は、誘引領域における個体の標準的な速度ベクトル（単位時間当たりの移動量）を表す。
【００３５】
例えば、図４に示す誘引領域情報１２０の第１行は、誘引領域ＩＤ「i」を有する誘引領域は、移動目標位置I（すなわち西側連絡口I）に対応付けられ、座標（０，２０）−（０，１５）−（１５，１５）−（１５，２０）を結ぶ矩形領域であり、誘引度「１．０」、標準速度（−１，０）を有することを表している。
例えば第４行は、誘引領域ＩＤ「iv」を有する誘引領域は、移動目標位置II（すなわち東側連絡口II）に対応付けられ、座標（０，１５）−（０，１０）−（１５，１０）−（１５，１５）を結ぶ矩形領域であり、誘引度「１．０」、標準速度（１，０）を有することを表している。
図４に示す誘引領域情報１２０により設定された誘引領域ＩＤ「i」〜「ix」の誘引領域１２１〜１２９を、図５（ａ）〜図５（ｉ）にそれぞれ示す。なお、同一の移動目標位置に対応付けられる複数の誘引領域が、重複部分を有するように設定してもよい。
【００３６】
図２を参照する。個体情報記憶手段４２は、群集を構成する複数の個体のそれぞれに関する情報である個体情報を記憶する。
図６（ａ）及び図６（ｂ）に、それぞれ個体情報１３０及び１３１の一例を示す。図６（ａ）の個体情報１３０は時刻に依存しない情報であり、図６（ｂ）の個体情報１３１は時刻に依存する個体情報である。なお、図６（ａ）及び図６（ｂ）に示す個体情報１３０及び１３１は、あくまで一例であり、本発明の個体情報の構成はこれに限定されるものではない。
【００３７】
個体情報は、例えば、状態値と、行動パラメータとを少なくとも含んでよい。個体情報は、さらに個体ごとの被誘引度を含んでもよい。
（個体の状態値）
状態値は、各仮想時刻における各個体の状態を示す。本実施形態において状態値は、対象空間における個体の位置を示す。
各個体の位置の初期値は、条件設定手段２０を用いた利用者による入力操作により初期位置として設定される。本実施形態において各個体の位置の初期値は西側連絡口I、東側連絡口II、南側連絡口IIIのいずれかであってよい。
【００３８】
図６（ａ）の例において個体ＩＤ「０」の個体の初期位置は、南側連絡口IIIの位置（１７．７８，０）に設定されている。
初期位置の設定後、各個体の位置は、仮想時刻の経過とともに個体情報変更手段５１によって随時更新される。例えば、仮想時刻「１」において個体ＩＤ「０」の個体は、位置（１７．７８，１．３）へ移動し、仮想時刻「４６３」までに西側連絡口Iの位置（０，１５．２１）まで移動している。
【００３９】
（個体の行動パラメータ）
行動パラメータは、各仮想時刻における各個体の行動を表し、状態値に作用するパラメータである。
例えば行動パラメータは、各個体の行動の目的と、当該目的を達成するために当該個体が決定した行動の手段と、当該個体が当該行動の手段を実行することによる単位時間当たりの（１仮想時刻ごとの）状態値の変更量（状態変更量）とを含んでよい。
【００４０】
例えば、本実施形態における行動の目的はＡ駅への移動、Ｂ駅への移動、観客席への移動などであってよく、それぞれの目的に割り当てられた識別子を行動パラメータとして記憶してよい。
また例えば、本実施形態における行動の手段は移動目標位置への移動であり、行動の手段として移動目標として選択された移動目標位置の目標位置ＩＤを行動パラメータとして記憶してよい。以下、移動目標として選択された移動目標位置を「選択目標位置」と表記することがある。
【００４１】
例えば、西側連絡口が選択目標位置である個体には目標位置ＩＤ「I」が、東側連絡口が選択目標位置である個体には目標位置ＩＤ「II」が、南側連絡口が選択目標位置である個体には目標位置ＩＤ「III」が記憶される。図６（ａ）の例において個体ＩＤ「０」の個体の選択目標位置として、西側連絡口Iが指定されている。
なお、行動の手段である選択目標位置は行動の目的に応じて定められ、本実施形態のシミュレーター１は、選択目標位置が設定された後の処理に関するものであるため、以下、行動の目的に関する記述は省略する。
【００４２】
本実施形態における状態変更量は単位時間当たり（１仮想時刻あたり）の移動量であり、状態変更量としてｘ方向の増分値とｙ方向の増分値の組であるベクトルが記憶される。
例えば、北に１単位距離だけ移動する場合の移動量は（０，１）、北西に１単位距離だけ移動する場合の移動量は（０．７０７，−０．７０７）、…などと記憶される。仮想時刻ｔの位置が（５，１５）である個体の移動量が（０，１）であれば、仮想時刻（ｔ＋１）の位置は（５，１６）に更新される。
【００４３】
図６（ｂ）の例において、仮想時刻「０」では個体ＩＤ「０」及びＩＤ「１」の個体の移動量は（０，１．３）であり、個体ＩＤ「９９」の個体の移動量は（１．３，０）である。仮想時刻「４６３」における個体ＩＤ「０」の個体の移動量は（−１．０９，０）であり、仮想時刻「５７２」における個体ＩＤ「１」の個体の移動量は（１．１，０．０１）であり、仮想時刻「７８９」における個体ＩＤ「９９」の個体の移動量は（０，−１．０９）である。
【００４４】
（被誘引度）
被誘引度は個体の個性を表現するパラメータであり、各個体の誘引領域への誘引されやすさの度合いを表す値である。被誘引度が高い個体ほど誘引領域に誘引され易く、低い個体ほど誘引され難い。被誘引度の初期値は、条件設定手段２０を用いた利用者による入力操作により予め設定され、その後に個体情報変更手段５１により適宜に更新される。
なお、個体ごとの被誘引度を考慮しない実施形態では、個体情報に被誘引度を含まなくてもよい。
【００４５】
図６（ａ）の例では個体ＩＤ「０」の個体の被誘引度の初期値として値「１．０」が設定されている。図６（ｂ）の例では、仮想時刻「４６３」までに個体ＩＤ「０」の個体の被誘引度は「０．８５」へ更新されている。
例えば、被誘引度の値域は「０」以上「１」以下である。例えば、被誘引度が「０」である個体に対応する人物は、現実世界において右側通行等の案内を全く無視して行動する人物であり、被誘引度が「１」である個体に対応する人物は現実世界において右側通行等の案内を頑なに守る人物である。
【００４６】
そのほか個体情報は、個体ごとの時定数、個体ごとの作用領域、および個体ごとの生成時刻のいずれかを含んでよい。個体ごとの時定数は、当該個体の被誘引度が、周囲に存在する他の個体（以下、「周囲個体」と表記することがある）の被誘引度と同一になるまでに要する時間や、当該個体の被誘引度が周囲個体の被誘引度と同一になってから初期値に戻るまでに要する時間である。
【００４７】
時定数は、当該個体の被誘引度が変化する速さの逆数として表され、時定数が大きい個体ほど周囲個体の被誘引度と同一になるまでに長い時間を要し、時定数が小さい個体ほど短い時間で周囲個体の被誘引度と同一になる。
時定数は、条件設定手段２０を用いた利用者による入力操作により予め設定される。
例えば、時定数の値域は「１」以上「１０００」以下である。
【００４８】
時定数が「１」である個体に対応する人物は、現実世界において、周囲の人物が右側通行等の案内に従っていればすぐに自身も誘導に従って行動し、周囲の人物が案内を無視していればすぐに自身も無視して行動する人物である。時定数が「１０００」である個体に対応する人物は、現実世界において、周囲の人物が右側通行等の案内に従っているか否かによらず自身が案内に従うか否かの意思をなかなか変えない人物である。
図６（ａ）の例では、個体ＩＤ「０」の個体の時定数として値「１」が設定され、個体ＩＤ「１」の個体の時定数として値「１０００」が設定されている。
【００４９】
個体ごとの作用領域は、個体の周囲の誘引領域や周囲個体が個体に作用を及ぼす領域を示す。すなわち、ある個体を誘引する誘引領域はその個体の作用領域内に存在する誘引領域のみであり、ある個体の被誘引度に影響する他の個体は、その個体の作用領域内に存在する周囲個体のみである。
作用領域は、個体情報変更手段５１により算出され、更新される。
【００５０】
図７は、作用領域の一例を示す。例えば作用領域は、個体の周囲の誘引領域や周囲個体から作用を受ける方向に偏って広がるように個体の周囲に設定される。本実施形態では、仮想時刻ｔにおける各個体の作用領域Ｒｉを、個体の位置ｘｉ（ｔ）を中心とする中心角θ（例えば６０°）、半径Ｒ（例えば５単位距離）の扇形として定義する。
添え字ｉ（ｉ＝１，２，…，Ｍ：Ｍは全個体数）は注目する個体を表すインデックスであり、添え字ｉとして個体ＩＤを用いてもよい。以下、個体ＩＤが「ｉ」である個体を個体ｉと表記することがある。
【００５１】
本実施形態の個体情報１３１は、作用領域Ｒｉを表す作用領域情報として、扇形の中心線Ｌｃ（すなわち二本の半径の交点と弧の中央を結んだ線）の方向を示すベクトルを記憶し、当該ベクトルは同時刻・同個体の移動量と同値である。これにより作用領域は、例えば個体ｉの移動方向に偏って広がるように設定される。
図６（ｂ）の例では、仮想時刻「０」では個体ＩＤ「０」の個体の作用領域は、位置（１７．７８，０）を中心とし、中心線Ｌｃの方向が移動量と同じベクトル（０，１．３）で表される中心角６０°及び半径５単位距離の扇形の領域である。
【００５２】
個体ごとの生成時刻は、各個体の情報を生成する仮想時刻であり、対象空間に各個体が現れる仮想時刻である。
本実施形態においては、人物が時間を追って次々と連絡口経由で対象空間に現れる様子を模擬するために個体ごとの生成時刻を設定するが、仮想時刻が０の時点で全個体が存在している対象空間を模擬する場合は生成時刻の設定を省略してもよい。
図６（ａ）の例では、個体ＩＤ「０」及び「１」の個体は仮想時刻「０」で対象空間に出現し、個体ＩＤ「９９」の個体は仮想時刻「４２」で対象空間に出現する。
【００５３】
図２を参照する。行動決定手段５０は、各仮想時刻ｔにおいて、空間情報記憶手段４０が記憶している空間情報、誘引領域記憶手段４１が記憶している誘引領域情報、および個体情報記憶手段４２が記憶している個体情報を参照する。
行動決定手段５０は、これらの情報に基づいて、個体ごとの行動パラメータを決定し（すなわち個体ごとの行動を決定し）、決定した行動パラメータを個体情報変更手段５１に出力する。
【００５４】
具体的には、行動決定手段５０は各仮想時刻ｔにおける個体の移動量を決定する。
まず、行動決定手段５０は、個体ｉ（ｉ＝１，２，…，Ｍ）のそれぞれについて、仮想時刻ｔにおいて個体ｉが自身の位置を選択目標位置に近付けるための加速度ベクトルｅｉ（ｔ）を算出する。
【００５５】
行動決定手段５０は、個体情報記憶手段４２から個体ｉの位置ｘｉ（ｔ）と個体ｉの選択目標位置を読み出すとともに、空間情報記憶手段４０から選択目標位置の代表点と移動可能領域１１０と中間目標点を読み出す。
行動決定手段５０は、移動可能領域内１１０において、個体ｉの位置ｘｉ（ｔ）と選択目標位置の代表点を結ぶ経路、および任意の中間目標点を介して個体ｉの位置ｘｉ（ｔ）と代表点を結ぶ経路のうちの最短経路を選択する。このとき、行動決定手段５０は、移動可能領域１１０から逸脱する経路を選択対象から除外してもよい。
【００５６】
次に、行動決定手段５０は、選択した最短経路上の中間目標点と選択目標位置の代表点のうちの個体ｉの位置ｘｉ（ｔ）から最も近い点を短期目標点として特定する。最短経路が中間目標点を通らない場合には、選択目標位置の代表点が短期目標点として特定される。最短経路が複数の中間目標点を通る場合には、これら中間目標点のうち個体ｉの位置ｘｉ（ｔ）に最も近い中間目標点が短期目標点として特定される。
行動決定手段５０は、個体ｉの位置ｘｉ（ｔ）から短期目標点に向かう単位ベクトルを選択目標位置に近付ける加速度ｅｉ（ｔ）として算出する。
【００５７】
図８を参照する。図８（ａ）の例では、移動可能領域１１０から逸脱する経路Ｒ０を選択対象から除外した結果、個体ｉの位置ｘｉ（ｔ）と中間目標点Ｐｉ２と選択目標位置IIの代表点Ｐｔ２を結ぶ経路Ｒ１が最短経路であり、中間目標点Ｐｉ２が短期目標点として選択される。
なお、中間目標点を設定せずに、個体ｉの位置ｘｉ（ｔ）から選択目標位置の代表点に向かう単位ベクトルｅをベクトルｅｉ（ｔ）として算出してもよい。
【００５８】
次に行動決定手段５０は、個体ｉ（ｉ＝１，２，…，Ｍ）のそれぞれについて、仮想時刻ｔにおいて誘引領域から個体ｉに対して作用する誘引力により、個体ｉを誘引領域に近付けるための加速度ベクトルａｉ（ｔ）を算出する。
【００５９】
行動決定手段５０は、個体情報記憶手段４２から個体ｉの位置ｘｉ（ｔ）と個体ｉの選択目標位置と個体ｉの作用領域情報を読み出し、誘引領域記憶手段４１から誘引領域の情報を読み出す。
行動決定手段５０は、個体ｉの位置ｘｉ（ｔ）と個体ｉの作用領域情報に基づいて対象空間内における個体ｉの作用領域Ｒｉを算出する。行動決定手段５０は、誘引領域の中から、作用領域Ｒｉとの重複領域を有し且つ選択目標位置と同じ移動目標位置に対応付けられている誘引領域を検出する。
【００６０】
作用領域Ｒｉと誘引領域との重複領域を検出する際に、行動決定手段５０は、作用領域Ｒｉ内に中心角方向および放射方向に等間隔で複数のサンプル点Ｐｓを設定する。サンプル点Ｐｓのいずれかが誘引領域に含まれる場合、行動決定手段５０は、作用領域Ｒｉと誘引領域との重複領域があると判定する。
作用領域Ｒｉとの重複領域Ｒｏを有し且つ選択目標位置IIと同じ移動目標位置に対応付けられている誘引領域が検出された場合、行動決定手段５０は、個体ｉが当該誘引領域の誘引対象個体ξであると判定し、次式（１）に従い０ベクトルではないベクトルａｉ（ｔ）を算出する。
作用領域Ｒｉとの重複領域Ｒｏを有し且つ選択目標位置IIと同じ移動目標位置に対応付けられている誘引領域が検出されない場合、行動決定手段５０は、個体ｉが誘引領域の誘引対象個体ξでないと判定し、次式（２）に従ってベクトルａｉ（ｔ）を０ベクトルとする。
【００６１】
【数１】
2019219880.tif 000003
【００６２】
図８を参照する。図８（ｂ）の例では、扇形の図形Ｒｉが個体ｉの作用領域であり、作用領域Ｒｉ内に描画されている１６点がサンプル点Ｐｓである。図８（ｂ）の例では、ハッチングされた領域Ｒｏが、作用領域Ｒｉと誘引領域との重複領域である。これらのサンプル点Ｐｓのうちの１点以上をその内側に含む誘引領域１２３（ＩＤ＝iii）と誘引領域１２６（ＩＤ＝vi）のうち、選択目標位置IIと対応付けられている誘引領域１２６が検出される。
【００６３】
式（１）において添え字ｒは、誘引領域内に含まれるサンプル点のインデックスであり、Σｒは誘引領域内に含まれるサンプル点についての総和を示す。
また、ベクトルｘｒ（ｔ−１）は、仮想時刻（ｔ−１）における個体ｉの作用領域Ｒｉに設定され且つ誘引領域内に含まれたサンプル点（すなわち重複領域Ｒｏ内のサンプル点）の座標である。ベクトルｘｉ（ｔ−１）は、仮想時刻（ｔ−１）における個体ｉの位置の座標である。また、Ｎｏｒｍａｌｉｚｅ（・）はベクトルを単位ベクトル化（正規化）する演算子である。
【００６４】
ベクトルｘｒ（ｔ−１）とベクトルｘｉ（ｔ−１）の差ベクトルは、個体ｉの位置から、作用領域Ｒｉと誘引領域との重複領域Ｒｏへと向かう方向を表すベクトルを表す。
また、変数Ｓｒはサンプル点ｒを含む誘引領域に設定されている誘引度を示す。式（１）において誘引度Ｓｒは、ベクトルｘｒ（ｔ−１）とベクトルｘｉ（ｔ−１）の差ベクトルに乗じられる。
【００６５】
したがって、式（１）のベクトルａｉ（ｔ）は、個体ｉの位置から重複領域Ｒｏへと向かう方向を表す単位ベクトルを、誘引領域の誘引度で重み付けて平均した加重平均ベクトルであり、重複領域Ｒｏ内の加重平均点へと向かうベクトルとなる。
このため、式（１）に従うことにより、個体ｉの選択目標位置に対応する誘引領域へと個体ｉを近付ける方向を示すベクトルを、個体ｉを誘引領域に近付ける加速度ａｉ（ｔ）として算出できる。
【００６６】
特に、作用領域Ｒｉが個体ｉの周囲（例えば個体ｉを中心とする半径Ｒの範囲）に設定されているため、ベクトルａｉ（ｔ）は、個体ｉの周囲に位置する誘引領域へと個体ｉを近付ける方向を示すベクトルを、個体ｉを誘引領域に近付ける加速度ａｉ（ｔ）として算出できる。
すなわち、個体ｉの選択目標位置に対応する誘引領域と個体ｉとの間の距離が基準を下回る誘引対象個体を、誘引領域へと近づける加速度ａｉ（ｔ）を算出できる。
以上のように加速度ａｉ（ｔ）を算出することにより、選択目標位置の異なる個体それぞれの、選択目標位置に応じて異なる誘引の影響下での行動を予測できる。よって、複数の移動目標位置のそれぞれに応じた誘導が行われる空間における群集の行動を予測することが可能となる。
【００６７】
ベクトルａｉ（ｔ）は、重複領域Ｒｏに設定されている誘引度が高いほど大きく、誘引度が低いほど小さくなる。
さらに、重複領域Ｒｏを有する誘引領域が複数検出された場合、ベクトルａｉ（ｔ）は、各誘引領域の重複領域Ｒｏに含まれるサンプル点数についての平均となっているため、重複領域Ｒｏの面積が大きな誘引領域ほどベクトルａｉ（ｔ）に対する寄与が高くなる。
したがって、誘引度が高い誘引領域ほどより誘引対象個体を近付けやすい加速度ａｉ（ｔ）を算出でき、また、重複領域Ｒｏがより大きな誘引領域へ誘引対象個体を近付けやすい加速度ａｉ（ｔ）を算出できる。
【００６８】
なおサンプル点数についての総和の代わりに重複領域Ｒｏの面積を用いて加速度ａｉ（ｔ）を算出してもよい。この場合、例えば行動決定手段５０は、式（１）に代えて次式（３）にしたがって加速度ａｉ（ｔ）を算出してよい。
【数２】
2019219880.tif 000004
変数Ｑｒは、重複領域Ｒｏの面積を示し、ベクトルｘｃ（ｔ−１）は仮想時刻（ｔ−１）における重複領域Ｒｏの重心位置である。
【００６９】
また、個体ｉの移動量に基づいて個体ｉの作用領域Ｒｉの方位を決定する。これによって、個体の移動方向に存在する誘引領域に近付ける加速度ａｉ（ｔ）を算出できる。このため、個体ｉが影響を受けやすい方向に存在する誘引領域に近付ける加速度ａｉ（ｔ）を算出できる。したがって、個体ｉが影響を受けにくい範囲に誘引領域が設定されていても、その影響を防止して現実世界の個体の行動に近い滑らかな動きを予測できる。
なお、図７に示す扇形の作用領域Ｒｉに代えて、個体ｉの位置ｘｉ（ｔ）を中心とする半径Ｒの円形領域を作用領域Ｒｉとしてもよい。
【００７０】
さらに行動決定手段５０は、個体ｉ（ｉ＝１，２，…，Ｍ）のそれぞれについて、仮想時刻ｔにおいて個体ｉが自身の速度を誘引領域の標準速度に合わせるために要する加速度ベクトルｂｉ（ｔ）を算出する。
作用領域Ｒｉとの重複領域Ｒｏを有し且つ選択目標位置IIと同じ移動目標位置に対応付けられている誘引領域が検出された場合、個体ｉは当該誘引領域の誘引対象個体ξであると判定して、式（４）に従い０ベクトルではないベクトルｂｉ（ｔ）を算出する。
【００７１】
作用領域Ｒｉとの重複領域Ｒｏを有し且つ選択目標位置IIと同じ移動目標位置に対応付けられている誘引領域が検出されない場合、個体ｉは当該誘引領域の誘引対象個体ξでない判定として、式（５）に従ってベクトルｂｉ（ｔ）を０ベクトルとする。
【数３】
2019219880.tif 000005
式（４）中、Ａは検出された誘引領域、ΣＡは検出された誘引領域についての総和を示す。ベクトルＶＡは検出された誘引領域に設定されている標準速度であり、右辺の第一項は検出された誘引領域についてのベクトルＶＡの平均ベクトルとなる。
【００７２】
したがって、ベクトルｂｉ（ｔ）は、検出された誘引領域に設定されている標準速度（の平均）と個体ｉの速度の差ベクトルであり、個体ｉの移動量を選択目標位置IIに対応する誘引領域の標準速度に近づける加速度となる。
これにより、複数の移動目標位置のそれぞれに応じた速度規制の運用施策が行われる空間における群集の行動を予測することが可能となる。また、通路に沿った移動など現実世界の個体の行動に近い滑らかな動きを予測できる。
【００７３】
そして行動決定手段５０は、次式（６）に従って選択目標位置に近付ける加速度ｅｉ（ｔ）、誘引領域に近付ける加速度ａｉ（ｔ）、誘引領域の標準速度に近づける加速度ｂｉ（ｔ）を合成することにより仮想時刻ｔにおける個体ｉの加速度ベクトルΔｖｉ（ｔ）を算出する。
【数４】
2019219880.tif 000006
図９は式（６）のベクトル合成の説明図である。
【００７４】
式（６）中のｎｉ（ｔ）は、個体情報記憶手段４２から読み出すことにより取得される仮想時刻ｔにおける個体ｉごとの被誘引度である。
ｎｉ（ｔ）は、誘引領域に近付ける加速度ａｉ（ｔ）に乗じられている。このため、被誘引度が高いほど加速度ベクトルΔｖｉ（ｔ）に対する加速度ａｉ（ｔ）の寄与が大きくなる。
したがって、被誘引度ｎｉ（ｔ）が高い個体ｉほど誘引領域により近づける加速度Δｖｉ（ｔ）を算出できる。
なお、個体ｉごとの被誘引度ｎｉ（ｔ）を考慮しない実施形態では、式（６）からｎｉ（ｔ）を省略してもよい。
【００７５】
行動決定手段５０は、１時刻前の時刻（ｔ−１）の個体ｉの移動量に加速度Δｖｉ（ｔ）を加算して時刻ｔの個体ｉの移動量を算出する（式（７））。
【数５】
2019219880.tif 000007
【００７６】
式（７）中、ベクトルｖｉ（ｔ）は時刻ｔの個体ｉの移動量である。また、ベクトルｖｉ（ｔ−１）は、個体情報記憶手段４２から読み出して取得される１時刻前の時刻（ｔ−１）の個体ｉの移動量である。
なお、式（７）の演算の結果、ベクトルｖｉ（ｔ）が最大速さＶｍａｘを超えた場合、行動決定手段５０は、ベクトルｖｉ（ｔ）を最大速さＶｍａｘに補正する。最大速さＶｍａｘは、例えば個体や空間の種類に応じた値に予め設定してよい。
【００７７】
このように、選択目標位置に近付ける加速度ｅｉ（ｔ）と誘引領域に近付ける加速度ａｉ（ｔ）とを加えて得られる加速度Δｖｉ（ｔ）に基づいて移動量を算出することによって、誘引領域および選択目標位置の両方に個体ｉを近付ける移動量を算出できる。
また、誘引領域の標準速度に近づける加速度ｂｉ（ｔ）を加えて得られる加速度Δｖｉ（ｔ）に基づいて移動量を算出することによって、速度規制など誘引領域の標準速度に合わせようとする個体ｉの移動量を予測することができる。
【００７８】
図２を参照する。個体情報変更手段５１は個体情報の新規作成、更新及び削除を行う。
個体情報を新規作成する際、個体情報変更手段５１は、条件設定手段２０により設定された条件に従って適宜に新規の個体情報を作成し、個体情報記憶手段４２に追加記憶させる。
個体情報を更新する際、個体情報変更手段５１は、各個体の状態値を当該個体の行動パラメータにて更新する。
【００７９】
本実施形態においては、個体情報変更手段５１は、状態値のうちの位置に、行動パラメータのうちの移動量を加算することによって更新を行う。具体的には、個体情報変更手段５１は、個体情報記憶手段４２から各個体の位置と移動量とを読み出し、個体ごとに、読み出した位置に読み出した移動量を加算して加算後の位置を個体情報記憶手段４２に記憶させる。
【００８０】
また、個体情報変更手段５１は、個体ごとの被誘引度を更新する。個体情報変更手段５１は、注目する個体ｉの周囲に他の個体（周囲個体）が存在する場合は、注目する個体の被誘引度を周囲個体の被誘引度に近づける。
個体情報変更手段５１は、例えば図７に示す扇形の作用領域Ｒｉ内の個体を周囲個体として検出してよい。この場合、個体情報変更手段５１は、個体情報記憶手段４２から現存する各個体の位置と作用領域情報を読み出し、個体ｉの位置と個体ｉの作用領域情報から対象空間内における個体ｉの作用領域Ｒｉを算出し、作用領域Ｒｉ内に存在する個体ｉ以外の個体を周囲個体として検出する。
【００８１】
図７に示す扇形の作用領域Ｒｉに代えて、個体ｉの位置を中心とする半径Ｒの円形領域を作用領域Ｒｉとしてもよい。
周囲個体が存在しない場合は、個体情報変更手段５１は、注目する個体ｉの被誘引度を当該個体ｉの被誘引度の初期値に近づける更新を行う。
具体的には、個体情報変更手段５１は次式（８）及び（９）に従って被誘引度ｎｉ（ｔ）を更新する。
【００８２】
【数６】
2019219880.tif 000008
【００８３】
式（８）及び（９）において、添え字ｉは注目する個体の個体ＩＤを示し、ｔは最新の仮想時刻を示し、ｎｉ（ｔ）は仮想時刻ｔにおける個体ｉの被誘引度を示す。また、添え字ｋは個体ｉの周囲個体の個体ＩＤを示し、Σｋは周囲個体についての総和を示し、Ｋは周囲個体の総数を示し、τｉは個体ｉの時定数を示す。
【００８４】
式（８）により、注目する個体ｉに周囲個体が存在する場合は、注目する個体ｉの被誘引度を、時間の経過とともに周囲個体の被誘引度と注目する個体ｉの被誘引度の初期値との平均値に近づけることができる。この更新は、現実世界において、群集として行動することで群集内の個体が同調していくことに相当する。
式（９）により、注目する個体ｉに周囲個体が存在しない場合は、時間の経過とともに当該個体の被誘引度を初期値に戻すことができる。この更新は、現実世界において、周囲個体との同調により変化していた被誘引度が、時間の経過とともに本来の被誘引度に戻ることに相当する。
【００８５】
このようにすることで、現実世界の個体の心理に即した高精度な予測が可能となる。なお、個体ごとの被誘引度を考慮しない実施形態では、被誘引度ｎｉ（ｔ）の更新処理を省略してもよい。
個体情報変更手段５１は、移動目標位置に到達した個体を削除する。この処理は、該当する個体の個体情報を行動決定手段５０の処理対象外に設定することを意味する。
【００８６】
予測結果出力手段５２は、シミュレーションの結果である予測結果を出力する。予測結果は、個体情報記憶手段４２に記憶されている情報の一部または全部を少なくとも含み、好適には、さらに空間情報記憶手段４０に記憶されている情報の一部または全部を含む。また、予測結果出力手段５２は個体情報記憶手段４２に記憶されている情報、または該情報と空間情報記憶手段４０に記憶されている情報とを統計処理し、得られた統計量を予測結果として出力してもよい。
【００８７】
予測結果の出力タイミングは、シミュレーションを終えた時点の他に、シミュレーションの途中を含んでもよい。つまり、シミュレーションの途中までに得られた上記情報の一部または全部を中間予測結果として出力してもよい。
【００８８】
また、予測結果出力手段５２は、予測結果をデータファイルとして出力してもよいし、画像ファイルとして出力してもよいし、画像として表示してもよいし、これらのうちの１以上の形式で出力してもよい。
予測結果出力手段５２は、出口を含む対象空間の地図を画像化するとともに当該画像上の各個体の位置と対応する座標に個体を表す図形を重畳描画して予測結果の画像を生成し、生成した画像をファイルとして出力し、および／または表示部６に出力する。
【００８９】
（シミュレーター１の動作例）
図１０〜図１２のフローチャートを参照してシミュレーター１の動作例を説明する。
ステップＳ１において、条件設定手段２０が利用者からの入力を受け付けてシミュレーションの条件を設定する。すなわち、利用者が条件設定手段２０を用いて手入力することによって得られたシミュレーションの条件を、空間情報記憶手段４０、誘引領域記憶手段４１、個体情報記憶手段４２に設定する。
シミュレーションの条件は、利用者が条件設定手段２０を用いてファイルを指定しそれに応じた条件設定手段２０が該当するファイルから読み出して取得してもよい。
【００９０】
シミュレーションの条件が設定されると、ステップＳ２においてシミュレーター１は、仮想時刻を０に初期化してステップＳ２〜Ｓ９のループ処理を設定する。
仮想時刻のループ処理では、まずステップＳ３にて各個体の被誘引度を更新する被誘引度更新処理が行われる。
図１１を参照して、ステップＳ３の被誘引度更新処理を説明する。
【００９１】
ステップＳ３０において個体情報変更手段５１は、現存する個体の各々を順次処理対象の個体ｉに設定する。
ステップＳ３１において個体情報変更手段５１は、個体情報記憶手段４２から個体ｉの位置と作用領域情報を読み出し、個体ｉの位置と個体ｉの作用領域情報から個体ｉの作用領域Ｒｉを算出する。
【００９２】
ステップＳ３２において個体情報変更手段５１は、個体情報記憶手段４２から現存する個体の位置を読み出し、作用領域Ｒｉ内に存在する個体ｉ以外の個体を周囲個体として検出する。
ステップＳ３３において個体情報変更手段５１は、周囲個体が存在するか否かを判定する。周囲個体が存在する場合（Ｓ３３：Ｙ）に処理はステップＳ３４に進む。周囲個体が存在しない場合（Ｓ３３：Ｎ）に処理はステップＳ３５に進む。
【００９３】
ステップＳ３４において個体情報変更手段５１は、個体情報記憶手段４２から周囲個体の被誘引度を読み出す。個体情報変更手段５１は、式（８）に従って、処理対象の個体ｉの被誘引度を周囲個体の被誘引度に近づける。その後に処理はステップＳ３６に進む。
ステップＳ３５において個体情報変更手段５１は、個体情報記憶手段４２から個体ｉの被誘引度の初期値を読み出す。個体情報変更手段５１は、式（９）に従って、処理対象の個体ｉの被誘引度を初期値に近づける。その後に処理はステップＳ３６に進む。
【００９４】
ステップＳ３６において個体情報変更手段５１は、現存する個体の全てについて処理を完了したか否かを判定する。現存する個体の全てについて処理を完了した場合（Ｓ３６：Ｙ）に被誘引度更新処理を終了し、処理は図１０のステップＳ４へ戻る。現存する個体の全てについて処理を完了していない場合（Ｓ３６：Ｎ）に処理はＳ３１へ戻る。
【００９５】
図１０を参照する。ステップＳ４において行動決定手段５０は、各個体の移動量を算出する行動決定処理を行う。
図１２を参照してステップＳ４の行動決定処理を説明する。
ステップＳ４０において行動決定手段５０は、現存する個体の各々を順次処理対象の個体ｉに設定する。
【００９６】
ステップＳ４１において行動決定手段５０は、個体情報記憶手段４２から個体ｉの位置と選択目標位置を読み出すとともに、空間情報記憶手段４０から選択目標位置の代表点と移動可能領域と中間目標点を読み出す。行動決定手段５０は、個体ｉの位置と、選択目標位置の代表点と、移動可能領域と、中間目標点とに基づいて個体ｉを選択目標位置に近付ける加速度ｅｉ（ｔ）を算出する。
【００９７】
ステップＳ４２において行動決定手段５０は、個体情報記憶手段４２から個体ｉの位置と作用領域情報を読み出し、個体ｉの位置と個体ｉの作用領域情報から個体ｉの作用領域Ｒｉを算出する。
ステップＳ４３において行動決定手段５０は、誘引領域記憶手段４１から、全ての誘引領域の座標情報と誘引領域に対応付けられた移動目標位置とを読み出す。行動決定手段５０は、作用領域Ｒｉとの重複領域Ｒｏを有し且つ個体ｉの選択目標位置と同じ移動目標位置に対応付けられている誘引領域を検出する。誘引領域がある場合（Ｓ４３：Ｙ）に処理はＳ４４へ進む。誘引領域がない場合（Ｓ４３：Ｎ）に処理はＳ４７へ進む。
【００９８】
ステップＳ４４において行動決定手段５０は、検出した誘引領域の誘引度Ｓｒを誘引領域記憶手段４１から読み出す。行動決定手段５０は、式（１）に従って、重複領域Ｒｏに設定されているサンプル点Ｐｓの座標と、個体ｉの位置と、誘引度Ｓｒに基づいて誘引領域に近付ける加速度ａｉ（ｔ）を算出する。
ステップＳ４５において行動決定手段５０は、検出した誘引領域の標準速度を誘引領域記憶手段４１から読み出す。行動決定手段５０は、式（４）に従って、個体ｉの移動量を標準速度に近付ける加速度ｂｉ（ｔ）を算出する。
【００９９】
ステップＳ４６において行動決定手段５０は、ステップＳ３にて更新された被誘引度を用いて、式（６）にしたがって加速度ｅｉ（ｔ）、加速度ａｉ（ｔ）、及び加速度ｂｉ（ｔ）をベクトル合成することにより、個体ｉの加速度Δｖｉ（ｔ）を算出する。その後に処理はステップＳ４８に進む。
作用領域Ｒｉとの重複領域Ｒｏを有し且つ個体ｉの選択目標位置に対応付けられている誘引領域が検出されなかった場合（ステップＳ４３：Ｎ）は、ステップＳ４７において行動決定手段５０は、加速度ａｉ（ｔ）及び加速度ｂｉ（ｔ）が０ベクトルとして個体ｉの加速度Δｖｉ（ｔ）を算出する。その後に処理はステップＳ４８に進む。
【０１００】
ステップＳ４８において行動決定手段５０は、１時刻前の時刻（ｔ−１）の個体ｉの移動量に加速度Δｖｉ（ｔ）を加算して時刻ｔの個体ｉの移動量を算出する（式（７））。行動決定手段５０は、算出した個体ｉの移動量を個体情報記憶手段４２に記憶する。
ステップＳ４９において行動決定手段５０は、現存する個体の全てについて処理を完了したか否かを判定する。現存する個体の全てについて処理を完了した場合（Ｓ４９：Ｙ）に行動決定処理は終了し、処理は図１０のステップＳ５へ戻る。現存する個体の全てについて処理を完了していない場合（Ｓ４９：Ｎ）に処理はＳ４１へ戻る。
【０１０１】
図１０を参照する。ステップＳ５において個体情報変更手段５１は、現存する個体の情報量を更新する。具体的には、個体情報変更手段５１は、個体情報記憶手段４２から各個体の位置と移動量とを読み出し、個体ごとに、読み出した位置に読み出した移動量を加算し、加算後の位置を個体情報記憶手段４２に記憶させる。
【０１０２】
ステップＳ６において個体情報変更手段５１は、条件設定手段２０により設定された条件に従って、生成時期が到来した新規の個体情報を作成し、個体情報記憶手段４２に追加記憶させる。
ステップＳ７において個体情報変更手段５１は、移動目標位置に到達した個体を削除する。
【０１０３】
ステップＳ８において個体情報変更手段５１は、個体情報記憶手段４２に記憶されている全ての個体が移動目標位置に到達したか否かを判定する。全ての個体が移動目標位置に到達した場合（Ｓ８：Ｙ）に処理はステップＳ１０へ進む。移動目標位置に到達していない個体が残っている場合（Ｓ８：Ｎ）に処理はステップＳ９へ進む。
【０１０４】
ステップＳ９においてシミュレーター１は、仮想時刻を１だけ進めて処理をステップＳ３に戻す。
ステップＳ１０において予測結果出力手段５２は、シミュレーションの結果である予測結果を出力する。その後に処理は終了する。
【０１０５】
（変形例）
（１）上記の実施形態では、個体情報記憶手段４２が個体ごとに被誘引度を記憶する例を示したが、シミュレーションの目的によっては被誘引度を一律の値としてもよい。この場合、個体情報記憶手段４２が記憶する項目から被誘引度を除外し、行動決定手段５０のプログラムに被誘引度を定数として記述してもよい。
（２）上記実施形態およびその変形例では、個体情報変更手段５１が個体の被誘引度を変更する例を示したが、シミュレーションの目的によっては被誘引度を経時変化させなくてもよい。その場合、個体情報変更手段５１による被誘引度の更新処理を省略してもよい。
【０１０６】
（３）上記実施形態およびその変形例では、個体情報変更手段５１が個体の大きさを考慮せず、また個体同士の重なりを排除せずに個体の位置を更新したが、これら物理的な制約を考慮して個体の位置を更新してもよい。
この場合、例えば個体情報変更手段５１は、行動決定手段５０が決定した移動量を対象空間内で個体同士が重ならないように補正した更新を行ってよい。
【０１０７】
また例えば、行動決定手段５０が選択目標位置と誘引領域の両方へ個体を近付ける移動量または選択目標位置へ個体を近付ける移動量を算出した後に、行動決定手段５０自身が、当該移動量を個体同士が重ならないように補正し、個体情報変更手段５１が、行動決定手段５０により補正された移動量を用いて個体の位置の更新を行ってもよい。
【０１０８】
（４）上記の実施形態およびその実施例では、誘引領域記憶手段４１が誘引領域ごとに誘引度を設定する例を示したが、シミュレーションの目的によっては誘引度を一律の値としてもよい。この場合、誘引領域記憶手段４１が記憶する項目から誘引度を除外し、行動決定手段５０のプログラムに誘引度を定数として記述してもよい。
【０１０９】
（５）上記実施形態およびその実施例においては、空間情報記憶手段４０が空間の二次元地図を記憶する例を示したが三次元地図としてもよい。その場合、誘引領域記憶手段４１が記憶する誘引領域の座標情報や、個体情報記憶手段４２が記憶する個体の位置、移動量、作用領域の中心線方向も三次元の情報となる。
【０１１０】
（６）上記実施形態およびその変形例においては、シミュレーションの条件の一部をリアルタイムの対象空間の状況に応じた値とすることができる。例えば、各個体の位置として実際の人の位置を設定したシミュレーションによって近未来の状況を予測すれば、群集の誘導を適確に行うことが可能となる。
【０１１１】
（７）また、シミュレーションの対象とする個体は、人に限らず、人が制御する物体（例えば人が運転している車両）であってもよい。
【０１１２】
（８）上記実施形態およびその実施例においては、行動決定手段５０及び個体情報変更手段５１のそれぞれが、注目する個体を中心とする所定距離内の範囲である作用領域Ｒｉに存在する個体を計数して周囲個体の数を算出した。これに代えて、対象空間をブロック分割してブロックごとの個体数を計数し、注目する個体が属するブロックの個体数を周囲個体数としてもよい。
【０１１３】
（９）上記実施形態及びその変形例においては、移動方向に偏って広がる作用領域として扇形の作用領域を例示したが、扇形に代えて、個体の位置から移動方向に沿って５単位距離だけ離れた点と、個体の位置と、の間を結ぶ線分を直径とする円又は楕円を作用領域として設定してもよい。
【０１１４】
（実施形態の効果）
（１）シミュレーター１は、所定の対象空間における個体の移動を予測する。空間情報記憶手段４０は、対象空間に設定された複数の移動目標位置を含んだ空間情報を記憶する。誘引領域記憶手段４１は、複数の移動目標位置のいずれかへ移動する個体が誘引されるように設定された誘引領域を、当該移動目標位置と対応付けて記憶する。個体情報記憶手段４２は、空間における個体の位置、および個体の目標として複数の移動目標位置の中から選択された選択目標位置を少なくとも含む個体情報を記憶する。行動決定手段５０は、選択目標位置に対応し且つ個体の周囲に位置する誘引領域と選択目標位置との両方へ、個体を近づける移動量を設定する。個体情報変更手段５１は、個体の位置を移動量に応じて更新する。
【０１１５】
これにより、個体が選択した選択目標位置に対応付けられた誘引領域及び選択目標位置の両方へ近付けられる個体の移動を予測することができる。このため、選択目標位置の異なる個体それぞれの、選択目標位置ごとの誘導の影響下での行動を予測できる。よって、複数の移動目標位置のそれぞれに応じた誘導が行われる空間における群集の行動を予測することが可能となる。
また、誘引領域に誘引され選択目標位置へと移動する個体は、誘引領域内を移動する動線を形成する。したがって、本発明によれば、移動目標位置に応じて異なる動線へ個体を誘導したときの行動を予測できる。
【０１１６】
（２）誘引領域記憶手段４１は、誘引領域ごとに誘引し易さの度合いを表す誘引度を記憶する。行動決定手段５０は、誘引度が高い誘引領域ほど個体を誘引領域へ近づける移動量を設定する。
これにより、誘引領域ごとに個体を誘引し易さが異なる空間における群集の行動を予測することが可能となる。
【０１１７】
（３）誘引領域記憶手段４１は、誘引領域ごとに予め定められた標準速度を記憶する。行動決定手段５０は、個体の移動量を選択目標位置に対応する誘引領域の標準速度に近づける。誘引領域ごとに異なる速度規制の運用施策が行われる空間における群集の行動を予測することが可能となる。また、通路に沿った移動など現実世界の個体の行動に近い滑らかな動きを予測できる。
【０１１８】
（４）個体情報記憶手段４２は、個体に設定された移動量を記憶する。行動決定手段５０は、個体情報記憶手段４２に記憶された移動量が示す個体の移動方向に偏って広がるように前記個体の周囲に設定された作用領域に誘引領域が存在する場合に、誘引領域と選択目標位置との両方へ個体を近づける移動量を設定し、作用領域に誘引領域が存在しない場合に選択目標位置へ個体を近づける移動量を設定する。
これにより、個体の移動方向（すなわち個体が影響を受けやすい方向）に存在する誘引領域に近付ける移動量を設定できる。また、個体が影響を受けにくい範囲に誘引領域が設定されていても、その影響を防止して現実世界の個体の行動に近い滑らかな動きを予測できる。
【符号の説明】
【０１１９】
１…シミュレーター、２…操作入力部、３…ファイル入出力部、４…記憶部、５…制御部、６…表示部、２０…条件設定手段、４０…空間情報記憶手段、４１…誘引領域記憶手段、４２…個体情報記憶手段、５０…行動決定手段、５１…個体情報変更手段、５２…予測結果出力手段
【図１】
2019219880.tif 000009
【図２】
2019219880.tif 000010
【図３】
2019219880.tif 000011
【図４】
2019219880.tif 000012
【図５】
2019219880.tif 000013
【図６】
2019219880.tif 000014
【図７】
2019219880.tif 000015
【図８】
2019219880.tif 000016
【図９】
2019219880.tif 000017
【図１０】
2019219880.tif 000018
【図１１】
2019219880.tif 000019
【図１２】
2019219880.tif 000020