(57)【要約】【課題】人の行動を模擬する行動シミュレーションシステムを提供する。【解決手段】行動データベース１５は、環境模擬手段１１が環境シナリオに従って生成する仮想空間においてバーチャルヒューマンに可能な複数種類の行動と各行動を起動する環境条件とを対応付けた行動ルールを格納する。行動決定手段１３は、センサ手段１２が検出した環境条件を行動データベース１５に照合して行動の種類を決定し、さらにバーチャルヒューマンの行動の向きを含む行動ベクトルを決定する。バーチャルヒューマンは、行動決定手段１３が決定した行動の種類および行動ベクトルに従うように行動し、環境模擬手段１１で生成した仮想空間とともに表示手段２２の画面上に表示される。バーチャルヒューマンが指示された行動を実行しセンサ手段１２で環境条件を検出する動作はバーチャルヒューマンが最終位置に到達するまで単位時間毎に繰り返される。【選択図】        図１
2005215801.tif 000002
【特許請求の範囲】
【請求項１】
バーチャルヒューマンが行動する仮想空間の環境をあらかじめ与えられた環境シナリオに従って生成する環境模擬手段と、バーチャルヒューマンの初期位置および目標となる最終位置を指定する位置指定手段と、環境模擬手段が生成する仮想空間においてバーチャルヒューマンに可能な複数種類の行動と各行動を起動する環境条件とを対応付けた行動ルールが格納された行動データベースと、環境条件を検出するセンサ手段と、センサ手段が検出する環境条件を行動データベースに照合することにより行動の種類を決定しかつバーチャルヒューマンの現在位置と位置指定手段により指定された最終位置とセンサ手段により検出された環境条件とからバーチャルヒューマンの行動の向きを含む行動ベクトルを決定する行動決定手段と、行動決定手段で決定された行動の種類および行動ベクトルに従う行動の実行をバーチャルヒューマンに指示する行動指示手段と、行動指示手段で指示された行動を実行するバーチャルヒューマンを環境模擬手段で生成した仮想空間とともに表示手段の画面上に表示する出力手段とを備え、バーチャルヒューマンが行動指示手段で指示された行動を実行しセンサ手段で環境条件を検出する動作をバーチャルヒューマンが最終位置に到達するまで単位時間毎に繰り返すことを特徴とする行動シミュレーションシステム。
【請求項２】
前記環境模擬手段が生成する仮想空間は三次元であって、仮想空間を二次元の仮想平面にマッピングするマッピング手段が付加され、前記行動決定手段はマッピング手段により得られる仮想平面内で行動ベクトルを決定することを特徴とする請求項１記載の行動シミュレーションシステム。
【請求項３】
前記センサ手段は、バーチャルヒューマンが最終位置に向かう際に障害となる物体の存否を知覚する機能と、バーチャルヒューマンが最終位置に向かう際に共に行動する他人の存否を知覚する機能とを少なくとも備え、前記行動決定手段は、バーチャルヒューマンの現在位置から最終位置に向かうベクトルと、センサ手段により検出される物体を回避する向きのベクトルに物体との距離が近いほど大きくなる重み係数を乗じたベクトルと、センサ手段により検出される他人に近付く向きのベクトルに他人との距離が遠いほど大きくなる重み係数を乗じたベクトルとを合成することにより行動ベクトルを決定することを特徴とする請求項１または請求項２記載の行動シミュレーションシステム。
【請求項４】
前記センサ手段は、バーチャルヒューマンの行動目標を規定する特定の環境条件を知覚する機能を少なくとも備え、前記行動決定手段は、センサ手段が前記環境条件の存在を検出したときに当該環境条件に対応する行動目標が達成されるまで他の行動を禁止することを特徴とする請求項１ないし請求項３のいずれか１項に記載の行動シミュレーションシステム。
【請求項５】
前記環境模擬手段は、仮想空間内に火災時の環境を生成するとともに火災時における仮想空間内の煙の濃度分布の時間変化を模擬する機能を有し、前記センサ手段は煙濃度を検出する機能を有し、前記行動データベースは、バーチャルヒューマンの現在位置を中心とする規定の範囲内の煙濃度が規定の閾値以上になるという環境条件に対して煙濃度の低い方に移動するという行動を対応付けた行動ルールを格納していることを特徴とする請求項１ないし請求項３のいずれか１項に記載の行動シミュレーションシステム。
【請求項６】
前記環境模擬手段は、仮想空間内に地震時の環境を生成する機能を有し、前記センサ手段はバーチャルヒューマンの行動目標を規定する特定の環境条件として机を検出する機能を有し、前記行動データベースは、机の存在という環境条件に対して机の下に入るという行動を対応付けた行動ルールを格納しており、前記行動決定手段はセンサ手段が机の存在を検出したときに机の下に入るという行動目標が達成されるまで他の行動を禁止することを特徴とする請求項１ないし請求項３のいずれか１項に記載の行動シミュレーションシステム。
【請求項７】
前記環境模擬手段により生成する仮想空間を編集する仮想空間エディタと、前記環境模擬手段により生成する仮想空間の環境シナリオを編集する環境シナリオエディタと、前記出力手段において表示手段に表示するバーチャルヒューマンの属性を編集するバーチャルヒューマンエディタと、前記行動データベースに格納する行動の種類および行動ルールを編集する行動エディタとを備えることを特徴とする請求項１ないし請求項６のいずれか１項に記載の行動シミュレーションシステム。
【請求項８】
前記バーチャルヒューマンエディタは、環境模擬手段により生成する仮想空間に複数のバーチャルヒューマンを配置可能であって、バーチャルヒューマンの属性として他のバーチャルヒューマンの行動を誘導する誘導者を選択可能であることを特徴とする請求項７記載の行動シミュレーションシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、災害時などにおける人の行動を仮想空間において模擬する行動シミュレーションシステムに関するものである。
【背景技術】
【０００２】
従来から、コンピュータにより生成される仮想空間において人の行動を模擬するシステムが種々提案されている。この種のシステムとしては、たとえば、初期状態と目標状態とを与え、「ｉｆ（条件）ｔｈｅｎ（行動）」という形式のルールを格納した知識ベースを用いることによって、初期状態から目標状態に向かう行動の系列であるプランを生成するためのルールを知識ベースから探索するプランナを備えるものが知られている（たとえば、特許文献１参照）。特許文献１には、想定シナリオに対して、プランナが出した行動の候補を実世界シミュレータ（すなわち、仮想空間）に適用することによって、実世界の状態が行動の候補によってどのように変化するかを評価している。すなわち、想定シナリオにおいて、知識ベースに記述されていない内容を実世界シミュレータに問い合わせることにより、知識ベースのルールからは導き出せないプランを生成するようにしてある。
【特許文献１】特開２００３−２４２４３４号公報（第００７３−００８９段落）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、上述した特許文献１に記載されたシステムは、災害時などにおいて人がとるべき行動の系列をプランとして生成することはできるものの、目標状態に到達するために効果が高いと考えられる行動の系列を生成するものであるから、災害時などにおいて刻々と変化する環境条件に対して人がどのように振る舞うかを模擬することはできない。たとえば、災害時における種々の環境条件の変化に対して人がどのように避難するかを検証するような目的には用いることができない。
【０００４】
本発明は上記事由に鑑みて為されたものであり、その目的は、刻々と変化する環境条件に対応して行動を修正するバーチャルヒューマンを用いることによって、環境条件の変化に対する人の振る舞いを模擬することができるようにした行動シミュレーションシステムを提供することにある。
【課題を解決するための手段】
【０００５】
請求項１の発明は、バーチャルヒューマンが行動する仮想空間の環境をあらかじめ与えられた環境シナリオに従って生成する環境模擬手段と、バーチャルヒューマンの初期位置および目標となる最終位置を指定する位置指定手段と、環境模擬手段が生成する仮想空間においてバーチャルヒューマンに可能な複数種類の行動と各行動を起動する環境条件とを対応付けた行動ルールが格納された行動データベースと、環境条件を検出するセンサ手段と、センサ手段が検出する環境条件を行動データベースに照合することにより行動の種類を決定しかつバーチャルヒューマンの現在位置と位置指定手段により指定された最終位置とセンサ手段により検出された環境条件とからバーチャルヒューマンの行動の向きを含む行動ベクトルを決定する行動決定手段と、行動決定手段で決定された行動の種類および行動ベクトルに従う行動の実行をバーチャルヒューマンに指示する行動指示手段と、行動指示手段で指示された行動を実行するバーチャルヒューマンを環境模擬手段で生成した仮想空間とともに表示手段の画面上に表示する出力手段とを備え、バーチャルヒューマンが行動指示手段で指示された行動を実行しセンサ手段で環境条件を検出する動作をバーチャルヒューマンが最終位置に到達するまで単位時間毎に繰り返すことを特徴とする。
【０００６】
この構成によれば、センサ手段で検出した環境条件に応じた行動をバーチャルヒューマンが実行し、さらに単位時間後にセンサ手段で検出した環境条件に応じた行動をバーチャルヒューマンが実行するという動作を、バーチャルヒューマンが最終位置に到達するまで単位時間毎に繰り返すから、単位時間毎にバーチャルヒューマンの行動が見直されることになり、災害時のように時間経過に伴ってバーチャルヒューマンの周囲環境が変化する場合でも、周囲環境の変化に応じてバーチャルヒューマンの行動を修正することができ、仮想空間内のバーチャルヒューマンを自律的に行動させることができる。すなわち、バーチャルヒューマンは周囲環境の変化に対応するように自律的に行動するから、バーチャルヒューマンによって実空間における人の行動を精度よく模擬することができる。また、バーチャルヒューマンの行動の種類がセンサ手段により検出される環境条件に応じて決定され、バーチャルヒューマンの現在位置と最終位置と環境条件とを用いて行動の向きを含む行動ベクトルが決定されるから、バーチャルヒューマンが現在位置から最終位置に到達するまでの経路上に障害物が存在しているときに回避することを行動ルールとして規定している場合や、仮想空間内に複数のバーチャルヒューマンが存在しており他のバーチャルヒューマンに追い付くと追従して行動することを行動ルールを規定している場合などでは、障害物の回避行動や他人に対する追従行動などを、行動の向きを含む行動ベクトルを用いて簡単に表すことができ、行動の種類と行動ベクトルとの簡単な情報でバーチャルヒューマンの行動を規定することができる。
【０００７】
請求項２の発明では、請求項１の発明において、前記環境模擬手段が生成する仮想空間は三次元であって、仮想空間を二次元の仮想平面にマッピングするマッピング手段が付加され、前記行動決定手段はマッピング手段により得られる仮想平面内で行動ベクトルを決定することを特徴とする。
【０００８】
この構成によれば、行動ベクトルの決定に関しては二次元の仮想平面内で処理を行っており、室内などでの人の移動は通常は二次元の平面内で行われるから、人の行動の模擬に十分な情報を用いながらも三次元の情報を用いて移動ベクトルを決定する場合に比較すると処理負荷が小さくなり、結果的に行動ベクトルの決定に要する時間が短くなる。すなわち、センサ手段による環境条件の検出から行動ベクトルの決定までの処理を実時間で行うことが可能になり、表示手段の画面上でバーチャルヒューマンを滑らかに行動させることが可能になる。
【０００９】
請求項３の発明では、請求項１または請求項２の発明において、前記センサ手段は、バーチャルヒューマンが最終位置に向かう際に障害となる物体の存否を知覚する機能と、バーチャルヒューマンが最終位置に向かう際に共に行動する他人の存否を知覚する機能とを少なくとも備え、前記行動決定手段は、バーチャルヒューマンの現在位置から最終位置に向かうベクトルと、センサ手段により検出される物体を回避する向きのベクトルに物体との距離が近いほど大きくなる重み係数を乗じたベクトルと、センサ手段により検出される他人に近付く向きのベクトルに他人との距離が遠いほど大きくなる重み係数を乗じたベクトルとを合成することにより行動ベクトルを決定することを特徴とする。
【００１０】
この構成によれば、障害物に対する回避行動と他人に対する追従行動とをベクトルで表し、これらのベクトルに重み係数を乗じて合成することによって行動ベクトルで表しているから、障害物の回避行動と他人に対する追従行動とを行動ベクトルに反映させることができる。すなわち、障害物に近付くほど障害物を回避するベクトルに対する重み係数が大きくなるから、行動ベクトルは障害物を回避するように向きが設定され、一方、他人からの距離が遠いほど他人に近付く向きのベクトルに対する重み係数が大きくなるから、行動ベクトルは他人に短時間で接近するように設定されることになる。このように、バーチャルヒューマンが移動する向きを表す行動ベクトルを用いるだけで、最終位置に到達するという目標だけではなく、障害物の回避行動と他人に対する追従行動とを実現することが可能になる。
【００１１】
請求項４の発明では、請求項１ないし請求項３の発明において、前記センサ手段は、バーチャルヒューマンの行動目標を規定する特定の環境条件を知覚する機能を少なくとも備え、前記行動決定手段は、センサ手段が前記環境条件の存在を検出したときに当該環境条件に対応する行動目標が達成されるまで他の行動を禁止することを特徴とする。
【００１２】
この構成によれば、特定の環境条件が生じたときにバーチャルヒューマンの行動目標を規定することができ、最終位置に到達するという行動目標を他の行動目標に切り換えることが可能になる。たとえば、仮想空間において地震を模擬する場合であって、最終位置として避難口に到達することが通常の目標であるときに、バーチャルヒューマンの近傍に机が存在するという特定の環境条件のもとで、落下物を避けるために机の下に入る行動を行動目標として起動することが可能になる。この場合、机の下に入るという行動が完了するまでは避難口に移動するという行動は禁止される。なお、机の下に入るという行動が完了することによって、落下物を避けている間に地震が収まれば避難口に移動するという目標は不要になるから、センサ手段により地震が検出されなくなれば避難口に移動するという目標を解除することが可能である。あるいはまた、地震によって火災が生じるように環境シナリオが設定されている場合には、センサ手段による火災の検出により避難口に移動するという行動を再び起動すればよい。上述の動作から明らかなように、最終目標を達成するまでに中間目標を設定し、バーチャルヒューマンに中間目標を達成させた後に最終目標に近付くように行動させることが可能になる。
【００１３】
請求項５の発明では、請求項１ないし請求項３の発明において、前記環境模擬手段は、仮想空間内に火災時の環境を生成するとともに火災時における仮想空間内の煙の濃度分布の時間変化を模擬する機能を有し、前記センサ手段は煙濃度を検出する機能を有し、前記行動データベースは、バーチャルヒューマンの現在位置を中心とする規定の範囲内の煙濃度が規定の閾値以上になるという環境条件に対して煙濃度の低い方に移動するという行動を対応付けた行動ルールを格納していることを特徴とする。
【００１４】
この構成によれば、仮想空間において火災を模擬する場合に煙濃度の分布に着目し、バーチャルヒューマンの周囲の煙濃度が規定の閾値以上になったときには、煙濃度の低いほうに避難するように行動を規定しているから、火災時における煙を回避する行動を模擬することができる。
【００１５】
請求項６の発明では、請求項１ないし請求項３の発明において、前記環境模擬手段は、仮想空間内に地震時の環境を生成する機能を有し、前記センサ手段はバーチャルヒューマンの行動目標を規定する特定の環境条件として机を検出する機能を有し、前記行動データベースは、机の存在という環境条件に対して机の下に入るという行動を対応付けた行動ルールを格納しており、前記行動決定手段はセンサ手段が机の存在を検出したときに机の下に入るという行動目標が達成されるまで他の行動を禁止することを特徴とする。
【００１６】
この構成によれば、仮想空間において地震を模擬する場合であってバーチャルヒューマンの近傍に机が存在する場合には、落下物を避けるために机の下に入るように行動を規定しているから、地震時において落下物を回避する行動を模擬することができる。しかも、机の下に入るという行動が完了するまでは他の行動を禁止しているから、机の下に入る行動と他の行動とが競合することがなく、机の下に入るという行動が完了した後には、センサ手段で検出される環境条件に応じて避難口に移動するというような他の行動が可能になる。
【００１７】
請求項７の発明では、請求項１ないし請求項６の発明において、前記環境模擬手段により生成する仮想空間を編集する仮想空間エディタと、前記環境模擬手段により生成する仮想空間の環境シナリオを編集する環境シナリオエディタと、前記出力手段において表示手段に表示するバーチャルヒューマンの属性を編集するバーチャルヒューマンエディタと、前記行動データベースに格納する行動の種類および行動ルールを編集する行動エディタとを備えることを特徴とする。
【００１８】
この構成によれば、仮想空間と環境シナリオとを編集可能であるから、たとえばビル設計などの際に設計するビルを仮想空間としてユーザによる仮想空間の編集が可能であるとともに、火災や地震などビルにおいて想定される環境をユーザが仮想空間内に表現することができ、これらの環境下でのバーチャルヒューマンの行動を監視することによって、設計の改善などに用いることができる情報を得ることができる。また、バーチャルヒューマンの属性と行動ルールとを編集可能であるから、バーチャルヒューマンの属性として他のバーチャルヒューマンを誘導する誘導者としての属性を付与したり、逆に誘導者により誘導される被誘導者としての属性を付与したりすることによって、避難誘導の模擬を行った有り、避難行動の模擬を行ったりすることが可能になる。また、行動ルールについても、老人を想定して走ることを行動の種類に含まないようにするなど環境条件に応じて起動される行動の種類を制限あるいは強化したり、環境シナリオに応じて行動ベクトルの求め方を調節したりするなど、種々の条件での模擬が可能になる。
【００１９】
請求項８の発明では、請求項７の発明において、前記バーチャルヒューマンエディタは、環境模擬手段により生成する仮想空間に複数のバーチャルヒューマンを配置可能であって、バーチャルヒューマンの属性として他のバーチャルヒューマンの行動を誘導する誘導者を選択可能であることを特徴とする。
【００２０】
この構成によれば、仮想空間に存在する複数のバーチャルヒューマンに誘導者としての属性を設定することによって、避難誘導などの模擬が可能になる。
【発明の効果】
【００２１】
本発明の構成によれば、センサ手段で検出した環境条件に応じた行動をバーチャルヒューマンが実行し、さらに単位時間後にセンサ手段で検出した環境条件に応じた行動をバーチャルヒューマンが実行するという動作を、バーチャルヒューマンが最終位置に到達するまで単位時間毎に繰り返すから、単位時間毎にバーチャルヒューマンの行動が見直されることになり、災害時のように時間経過に伴ってバーチャルヒューマンの周囲環境が変化する場合でも、周囲環境の変化に応じてバーチャルヒューマンの行動を修正することができ、仮想空間内のバーチャルヒューマンを自律的に行動させることができる。その結果、バーチャルヒューマンは周囲環境の変化に対応するように自律的に行動するから、バーチャルヒューマンによって実空間における人の行動を精度よく模擬することができるという利点がある。また、バーチャルヒューマンの行動の種類がセンサ手段により検出される環境条件に応じて決定され、バーチャルヒューマンの現在位置と最終位置と環境条件とを用いて行動の向きを含む行動ベクトルが決定されるから、バーチャルヒューマンが現在位置から最終位置に到達するまでの経路上に障害物が存在しているときに回避することを行動ルールとして規定している場合や、仮想空間内に複数のバーチャルヒューマンが存在しており他のバーチャルヒューマンに追い付くと追従して行動することを行動ルールを規定している場合などでは、障害物の回避行動や他人に対する追従行動などを、行動の向きを含む行動ベクトルを用いて簡単に表すことができ、行動の種類と行動ベクトルとの簡単な情報でバーチャルヒューマンの行動を規定することができるという効果がある。
【発明を実施するための最良の形態】
【００２２】
本実施形態は、コンピュータを主構成とするものであって、図１に示すように、三次元の仮想空間の環境をあらかじめ与えられた環境シナリオに従って生成する環境模擬手段１１と、環境模擬手段１１が生成した仮想空間内において行動するバーチャルヒューマンの感覚器としてのセンサ手段１２と、バーチャルヒューマンが仮想空間において行動する間にセンサ手段１２が検出する環境条件に応じてバーチャルヒューマンの行動の種類および行動の向きを含む行動ベクトルを決定する行動決定手段１３と、行動決定手段１３で決定した行動の種類および行動ベクトルに従う行動の実行をバーチャルヒューマンに指示する行動指示手段１４とを備えた模擬装置１を設けてある。
【００２３】
また、模擬装置１に設けた行動指示手段１４から指示される行動を実行するバーチャルヒューマンを環境模擬手段１１で生成した仮想空間とともに表示手段２２の画面上に表示する出力手段２１を備えた映像化装置２を設けてある。出力手段２１は、使用者が選択した外観を有するバーチャルヒューマンに行動指示手段１４から指示された行動のための動きを付与する機能を有している。バーチャルヒューマンの外観や動きに関するデータは、映像化装置２に設けたモーションデータベース２３に格納されており、出力手段２１は行動指示手段１４から指示された行動に対応する動きに必要なデータをモーションデータベース２３から取得することによって、バーチャルヒューマンを表示手段２２に表示する。表示手段２２は、画面上に動画像を表示することができるものであればよく、ＣＲＴや液晶表示器など周知のものを用いることができる。また、視差を利用して立体視を可能とする表示手段２２を用いれば臨場感を高めることができ、半球状の凹面の画面を有し人の視野よりも広い範囲の画像を画面に表示する表示手段２２を用いて立体視を行うようにすれば没入感が得られ臨場感を一層高めることができる。
【００２４】
模擬装置１について、さらに詳しく説明する。本実施形態は、主として火災、地震、洪水、交通渋滞などの異常状態における人の行動をバーチャルヒューマンによって模擬するものであり、環境模擬手段１１が生成する仮想空間の環境をバーチャルヒューマンが検出することによって、バーチャルヒューマンが行動を自律的に決定する機能を模擬装置１によって実現している。このような環境化ではバーチャルヒューマンの行動の目的は、現在位置から目標位置まで短時間で移動すること、あるいは安全を確保することであるから、人の行動を模擬するための初期条件として、初期位置と最初の行動の種類と最初の行動の向きとが与えられている。また、通常は目標として到達すべき最終位置が設定されている。換言すれば、初期位置から最終位置に移動することが主目標になる。このような初期条件や最終位置は、キーボードやマウスを用いた入力手段を備える位置指定手段１６により与えられる。
【００２５】
環境模擬手段１１は、三次元の仮想空間の場所や範囲を特定するほか、仮想空間に存在する物体の種類と位置とを規定し、さらに物体がバーチャルヒューマンの行動に及ぼす影響を考慮した物体の属性を規定する。また、異常状態においては時間経過に伴って環境が変化することが多いから、環境模擬手段１１は環境の時間変化を環境シナリオに従って実現する機能も備えている。環境シナリオで想定する環境の時間変化には、たとえば火災時において生じるバーチャルヒューマンの周囲の煙濃度の分布の時間変化、地震時において家具が倒れるなどしてバーチャルヒューマンの行動経路における障害物の位置に生じる時間変化などを含む。環境シナリオは、模擬しようとする異常状態や場所に応じて適宜に設定される。
【００２６】
上述したように、バーチャルヒューマンの行動範囲である仮想空間の環境はバーチャルヒューマンが行動しなくとも時間経過に伴って変化する場合があり、またバーチャルヒューマンが仮想空間内を移動すれば物体との距離のようにバーチャルヒューマンの行動に影響する条件が変化する。このように、仮想空間においてバーチャルヒューマンの行動を変化させる条件を、環境シナリオにより生成される環境であるかバーチャルヒューマンの行動に伴って生成される環境であるかにかかわらず、以下では環境条件と呼ぶ。
【００２７】
環境模擬手段１１で生成される仮想空間に含まれる物体は、オブジェクト名とオブジェクト名に付随する属性とによって表される。オブジェクト名により表されるノードには、親子関係で階層化された複合ノードと、階層化されていない孤立ノードとがある。複合ノードにおける階層化とは、たとえば「キッチン」を親ノードに持ち、「ドア」「収納棚」「流し台」などを子ノードに持つような場合を意味する。つまり、親ノードは部屋や場所のような空間の名称をオブジェクト名とし、親ノードの属性には子ノードのオブジェクト名が対応付けられる。また、子ノードは親ノードのオブジェクト名で表される空間に存在する設備や道具のような物体の名称をオブジェクト名とする。このように、ノードを階層化することによって、バーチャルヒューマンの存在場所を親ノードのオブジェクト名で表すだけで、どのような物体が周囲に存在しているかを認識することが可能になり、環境条件の設定が容易になる。
【００２８】
子ノードおよび孤立ノードの属性は、オブジェクト名で表される個々の物体の位置、占有領域（サイズ）、物体の向きを少なくとも含む。孤立ノードおよび子ノードの属性である位置は、オブジェクト名により表される物体の代表点の位置を表す。位置については三次元の位置情報を保有しており、たとえば（Ｘ，Ｙ，Ｚ）の三次元座標で表される。後述するように、バーチャルヒューマンは通常は高さ情報（Ｚ）を認識せず、移動の際にはＸＹ平面である仮想平面に関する情報を用いる。また、物体の占有領域は二次元の仮想平面における矩形領域で表され、仮想平面に沿った互いに直交する二方向（Ｘ方向とＹ方向）の寸法で表される。ここに、椅子などは人が持ち上げて移動させることがあり、大型の什器などは転倒することがあるから、椅子や什器の移動ないし転倒を伴うような環境を模擬する場合には、物体の向きや高さ情報を用い物体の占有領域を変化させることにより、物体の移動や転倒に伴う環境の変化を仮想空間に折り込むことが可能になっている。
【００２９】
しかして、上述した環境条件を知覚するために、模擬装置１にはセンサ手段１２が設けられている。センサ手段１２は、人の複数種類の感覚をそれぞれ模擬することができるように複数種類のセンサ１２ａ，１２ｂ，……を備え、各センサ１２ａ，１２ｂ，……は知覚結果をそれぞれ感覚データとして出力する。センサ１２ａ，１２ｂ，……の種類は対象とする環境に応じて設定される。したがって、センサ手段１２が出力する環境条件は複数個の感覚データの組になる。センサ手段１２での環境条件の検出は単位時間（たとえば、１秒）毎に行われる。各センサ１２ａ，１２ｂ，……で得られる感覚データの具体例は後述する。
【００３０】
センサ手段１２で検出された環境条件は行動決定手段１３に与えられ、行動決定手段１３は環境条件を行動データベース１５に照合することによって行動の種類を決定する。すなわち、行動データベース１５には、環境模擬手段１１で生成された仮想空間においてバーチャルヒューマンに可能な複数種類の行動と、各行動を起動する環境条件とを対応付けた行動ルールが格納されており、行動決定手段１３では、センサ手段１２から環境条件が与えられると行動データベース１５の行動ルールに照合して行動の種類を決定する。行動決定手段１３は、センサ手段１２から与えられた環境条件に対してバーチャルヒューマンが初期位置から最終位置までの移動に対して優先的に達成すべき行動目標が生じるか否かを検出する行動目標検出部１３ａと、センサ手段１２から与えられた環境条件に対してバーチャルヒューマンが行動する向きを含む行動ベクトルを決定する行動演算部１３ｂとを備える。行動目標検出部１３ａが検出する行動目標と、行動演算部１３ｂにおいて演算される行動ベクトルとについては後述する。
【００３１】
行動決定手段１３では、単位時間毎にセンサ手段１２で検出される環境条件を行動目標検出部１３ａが行動データベース１５に照合しても行動目標が検出されなければ行動の種類を変更せずに行動演算部１３ｂで行動ベクトルの演算のみを行う。また、センサ手段１２からの環境条件を行動データベース１５に照合したときに最終位置に達成するまでに優先的に行うべき行動目標が検出されたときには、当該行動目標を達成するように行動データベース１５の照合結果により行動の種類を決定し、行動演算部１３ｂでは当該行動に対して行動ベクトルの演算を行う。初期位置から最終位置に到達することを主目標とするとき、主目標に優先して達成する目標は中間目標ということができる。行動決定手段１３では、行動目標検出部１３ａにおいて中間目標の達成が要求されると、中間目標が達成されるまでは他の行動を禁止するようにしてある。たとえば、地震を想定する場合であって、バーチャルヒューマンの存在する室内に机が存在しているときには、落下物を避けるために机の下に入ることを中間目標（行動目標）とすることができる。この場合、地震の環境シナリオにおいて、バーチャルヒューマンが室内に存在し、かつ当該室内に下に人の入ることのできる机が存在しているという環境条件があるときに、机の下に入るという行動目標が起動される。
【００３２】
ところで、行動演算部１３ｂでは、センサ１２ａ，１２ｂ，……から得られた感覚データを参考に用いて、バーチャルヒューマンの移動の向きおよび速度を決めるベクトルを加算（合成）することで行動ベクトルを求める。すなわち、センサ１２ａ，１２ｂ，……から得られる感覚データに基づいて重み係数を決定し、センサ１２ａ，１２ｂ，……が検出する環境にそれぞれ関係付けて規定される複数のベクトルにそれぞれ重み係数を乗じて加算することにより、行動ベクトルを決定するようになっている。行動ベクトルを求めるためのベクトルはセンサ１２ａ，１２ｂ，……で検出する環境に関係しているから、これらのベクトルについてはセンサ１２ａ，１２ｂ，……の種類とともに後述する。
【００３３】
上述のようにして行動決定手段１３において行動の種類と行動ベクトルとが決定されると、行動指示手段１４は行動の種類と行動ベクトルとを用いてバーチャルヒューマンに対して行動を指示する。たとえば、行動指示手段１４では、行動の種類を関数名とし、行動ベクトルをパラメータとする関数を設定し、行動ベクトルで指定された向きおよび速度で関数名に対応する行動をバーチャルヒューマンに行わせる。ここに、移動のための関数名としては、「歩く」と「走る」との２種類を選択可能としてあり、「歩く」と「走る」とは速度の相違のみではなく、表示手段２２に表示するバーチャルヒューマンの形態を変化させるための情報として用いられる。すなわち、「歩く」姿勢で「走る」のは不自然であるから、「走る」ときには出力手段２１においてモーションデータベース２３から「走る」姿勢が抽出される。ここに、「歩く」か「走る」かは速度の情報を含むから、行動演算部１３ｂで求めた行動ベクトルの大きさに応じて選択する。
【００３４】
行動決定手段１３において行動の種類および行動ベクトルが決定され、バーチャルヒューマンに対して行動指示手段１４が行動の内容を指示することによってバーチャルヒューマンが行動を実行すると、センサ１２ａ，１２ｂ，……が検出する環境に変化が生じる。
【００３５】
たとえば、バーチャルヒューマンの行動する室内に簡単には動かすことのできない机が存在しており、バーチャルヒューマンが初期位置から最終位置に向かって直進しようとすると机が障害物となるような場合に、机に接近するまでは最終位置に向かって直進すればよいが、机の近傍では障害物である机を避けるように移動する向きを変更しなければならない。そこで、センサ手段１２に設けるセンサ１２ａでは机のような障害物を検出するものが必要になる。いま、センサ１２ａがバーチャルヒューマンの現在位置から障害物までの距離を検出するものとする。行動目標検出部１３ａではセンサ１２ａで検出する距離に閾値が規定され、センサ１２ａで検出する距離が閾値以内である場合には、行動を起動する環境条件が存在すると判断し、センサ１２ａで検出した距離に対応付けた重み係数を用いて行動ベクトルの演算を行わせる。ただし、センサ１２ａで検出した距離が閾値を越える場合には、センサ１２ａの出力は行動ベクトルの演算に対しては無効になる。すなわち、図２（ａ）に示すように、距離について閾値Ｔｈ１が設定され、距離が閾値Ｔｈ１以内であるときには距離が小さくなるほど大きくなる重み係数ｗ１（０≦ｗ１≦１）を設定する。距離が閾値Ｔｈ１を越える範囲では重み係数ｗ１は０であって、障害物までの距離が遠いときには障害物までの距離はバーチャルヒューマンが移動する向きとは無関係になる。閾値Ｔｈ１は重み係数ｗ１が０．６〜０．８の範囲で選択できる距離に設定される。
【００３６】
また、災害などの避難行動では近くに他人がいるときには他人に追従して避難することが多いから、センサ手段１２には他人の存否を検出するセンサ１２ｂも必要である。センサ１２ｂは、互いに他のバーチャルヒューマンまでの距離を検出する機能を有する。また、仮想空間内に３以上のバーチャルヒューマンが存在するときには、もっとも近いバーチャルヒューマンまでの距離を採用する。距離には閾値が設定されており、センサ１２ｂで検出する距離が閾値以上である場合には、行動を起動する環境条件が存在すると判断し、センサ１２ｂで検出した距離に対応付けた重み係数を用いて行動ベクトルの演算を行わせる。ただし、センサ１２ｂで検出した距離が閾値より小さい場合は、センサ１２ｂの出力は行動ベクトルの演算に対しては無効になる。すなわち、図２（ｂ）に示すように、距離について閾値Ｔｈ２が設定され、距離が閾値Ｔｈ２以上であるときには距離が大きくなるほど大きくなる重み係数ｗ２（０≦ｗ２≦１）を設定する。距離が閾値Ｔｈ２より小さい範囲では重み係数ｗ２は０であって、他のバーチャルヒューマンまでの距離が近いときには他のバーチャルヒューマンとの距離はバーチャルヒューマンが移動する向きとは無関係になる。ただし、閾値Ｔｈ２よりも距離が近いときには、隣接するバーチャルヒューマンのうちで最終位置にもっとも近いバーチャルヒューマンに追従して移動するという行動ルールが採用される。閾値Ｔｈ２は重み係数ｗ２が０．１〜０．３の範囲で選択できる距離に設定される。
【００３７】
ところで、火災時の環境を模擬する場合を想定すると煙濃度もバーチャルヒューマンの行動に影響を与える。センサ手段１２に煙濃度を検出するセンサ１２ｃを設ける場合には、図３に示すようにバーチャルヒューマンが移動する仮想平面内において、バーチャルヒューマンの現在位置Ｐ１を中心とする適宜形状（図示例では正方形）の近傍領域ＤＡを設定し、さらに近傍領域ＤＡを複数個（図示例では９個）の単位領域Ｄ１１〜Ｄ１３，Ｄ２１〜Ｄ２３，Ｄ３１〜Ｄ３３に分割する。一般に仮想空間での位置は直交座標系を用いて表すから、図示例では処理を単純化するために単位領域Ｄ１１〜Ｄ１３，Ｄ２１〜Ｄ２３，Ｄ３１〜Ｄ３３の形状として正方形を採用している。ただし、１つの単位領域Ｄ１１〜Ｄ１３，Ｄ２１〜Ｄ２３，Ｄ３１〜Ｄ３３の大きさや形状は模擬する環境に応じて適宜に設定することができる。
【００３８】
センサ１２ｃでは煙濃度を各単位領域Ｄ１１〜Ｄ１３，Ｄ２１〜Ｄ２３，Ｄ３１〜Ｄ３３ごとに検出する。すべての単位領域Ｄ１１〜Ｄ１３，Ｄ２１〜Ｄ２３，Ｄ３１〜Ｄ３３の煙濃度が規定した閾値以下であれば現在位置Ｐ１からすべての向きに移動可能であり、単位領域Ｄ１１〜Ｄ１３，Ｄ２１〜Ｄ２３，Ｄ３１〜Ｄ３３のうちのいずれかの煙濃度が閾値を越えるときには煙濃度が最小である向きに移動可能になる。このような煙濃度に対する行動ルールは行動データベースに格納されており、行動目標検出部１３ａにおいて、単位領域Ｄ１１〜Ｄ１３，Ｄ２１〜Ｄ２３，Ｄ３１〜Ｄ３３のうちのいずれか１つでも煙濃度が閾値を越えていると判断したときには、上述のようにして煙濃度の分布により決まる移動向きのベクトルを大きくするように重み係数ｗ３が１に設定され、いずれも煙濃度が閾値以下であると判断したときには重み係数ｗ３が０に設定される。ここでは、重み係数ｗ３として０と１との２値を採用しているが、重み係数ｗ３を煙濃度に応じて変化させてもよい。
【００３９】
障害物までの距離に関する閾値Ｔｈ１、他のバーチャルヒューマンまでの距離に関する閾値Ｔｈ２、煙濃度に関する閾値はいずれも行動ルールの切換点であり、閾値Ｔｈ１は障害物を回避するという行動目標の行動ルールを起動する切換点、閾値Ｔｈ２は他のバーチャルヒューマンに近付くという行動目標の行動ルールを起動する切換点、煙濃度に対する閾値は煙から逃れるという行動目標の行動ルールを起動する切換点になる。たとえば、閾値Ｔｈ２よりも距離が大きい区間は、他のバーチャルヒューマンに近付くという行動ルールが採用されるが、距離が閾値Ｔｈ２以下である区間は、他のバーチャルヒューマンに追従するという行動ルールが採用され、区間に応じて異なる行動ルールが採用される。つまり、他のバーチャルヒューマンに追従するという行動ルールが採用されるときには、他のバーチャルヒューマンに近付くという行動ルールに対するベクトルは０になるが、他のバーチャルヒューマンに追従するという行動ルールでのベクトルは０ではなく、他のバーチャルヒューマンと同じ行動ベクトルになる。
【００４０】
いま、障害物を回避する向きのベクトルをＶ１、他のバーチャルヒューマンに近付く向きのベクトルをＶ２、煙濃度の分布により決まるベクトルをＶ３として、これらのベクトルＶ１〜Ｖ３を用いてバーチャルヒューマンの行動ベクトルＶを決定するものとすれば、行動演算部１３ｂではベクトルＶ１〜Ｖ３を以下の演算式によって合成する。
Ｖ＝ｗ１・Ｖ１＋ｗ２・Ｖ２＋ｗ３・Ｖ３
このような行動ベクトルＶを用いてバーチャルヒューマンの移動の向きおよび速度を規定することにより、障害物を回避し、他のバーチャルヒューマンに追従し、煙から逃れるという条件を満たすようにバーチャルヒューマンの行動を決定することができる。
【００４１】
なお、上述した行動ベクトルＶを二次元の仮想平面内で決定できるから、上述した３条件のみでバーチャルヒューマンの行動を決定する場合には、バーチャルヒューマンが行動する三次元の仮想空間のうちバーチャルヒューマンが行動する二次元の仮想平面の情報のみを抽出するマッピング手段１７を設けてあり、マッピング手段１７により得られる仮想平面で行動ベクトルＶを決定する。このような処理によって、三次元の仮想空間を用いて上述の演算を行う場合に比較すると計算量を大幅に低減することができ、実時間で行動ベクトルを決定することができる。
【００４２】
上述のようにして行動の種類（火災時には基本的には「走る」と「歩く」との２種類の行動が選択される）と行動ベクトルとを決定し、行動指示手段１４を通してバーチャルヒューマンに行動を指示すると、バーチャルヒューマンは行動ベクトルにより指示された向きに指示された速度で移動する。本発明は、単位時間ごとにセンサ手段１２が環境条件を検出しているから、バーチャルヒューマンはセンサ手段１２が検出した環境条件により決定された行動を単位時間だけ行い、行動の後に、センサ手段１２が再び検出した環境条件により決定された行動を単位時間だけ行うという動作を繰り返す。すなわち、単位時間毎に環境条件の検出と行動とを繰り返すのであって、環境シナリオあるいはバーチャルヒューマンの行動を原因としてセンサ手段１２により検出される環境条件が変化すれば、環境条件の変化に対応するように行動を変化させることができる。このような、環境条件の知覚と知覚した環境条件に応じた行動の修正という行為は、人が実際に行動する際の脳での処理を高い精度で模擬しており、仮想空間でのバーチャルヒューマンの行動によって実空間での人の行動を正確に模擬することが可能になる。
【００４３】
上述の例では火災時の行動を模擬する場合を想定して説明したが、本発明は、火災以外にも地震、洪水、交通渋滞などの異常状態での人の行動を模擬することが可能であって、たとえば地震に際しては、家具が倒れるなどして障害物の位置が変化したり、あるいは火災時には避難経路における障害物となる机を避難場所に利用したりすることが可能になる。また、机の下を避難場所にできるのは室内だけであって、自動車内などでは机が存在しないから室内とは異なる行動ルールを適用することが必要になる。室内か自動車内かの相違は環境シナリオによって決まるから、この相違は環境シナリオに応じた行動ルールのセットを行動データベース１５に設定しておくことで対応する。したがって、地震を模擬する場合には、センサ手段１２に設けるセンサ１２ａ，１２ｂ，……として、設置されている家具だけではなく転倒した家具などを避けるべき障害物として検出できるもの、下に入ることができる机の存在を検出するもの、火災時と同様に他のバーチャルヒューマンの存在を検出するものなどが必要になる。また、地震時には、「ガス栓を止める」、「ブレーカを落とす」というような行動が必要になる場合があるから、この種の行動の対象物の存在を検出することが必要になる場合もある。さらに、地震時には火災も生じることが多いから、火災時と同様に煙濃度の分布を検出することも必要になることがある。
【００４４】
いま、地震時において「机の下に入る」という行動ルールが規定されており、下に入ることのできる机が室内に存在するか否かをセンサ手段１２により探索し、存在が検出され、かつ環境シナリオにより設定された地震の震度が閾値以上であることがセンサ手段１２により検出されると、行動目標検出部１３ａがこの行動ルールを起動する（発火させる）ものとする。この行動ルールが起動された場合には、行動目標は「机の下に入る」ことであるから、「机の下に入る」という行動目標が達成されるまでは他の種類の行動は起動されず、机に近付くように行動ベクトルが設定される。「机の下に入る」という行動目標は、机の下に入った状態で地震の振動がなくなれば完了する。行動目標の完了後には通常の行動に戻り、バーチャルヒューマンが最終位置に移動できるように行動ベクトルが生成される。
【００４５】
地震時には、転倒した家具や落下物が障害物になることがあるが、これらの障害物は既知ではなく地震が発生することによって生じるものである。したがって、これらの障害物の位置に関する知識をバーチャルヒューマンがあらかじめ持つことはできず、障害物が生じてから知覚することになる。そこで、この種の障害物を検出するセンサは、通常の障害物を検出するセンサ１２ａに比較すると行動ルールの切換点となる距離を小さくしてある。つまり、実空間において人がこの種の障害物を認識するのは障害物に近付いてからであるから、通常の障害物を認識する場合よりも近い距離をこの種の障害物に対する行動ルールの切換点に設定しているのである。
【００４６】
なお、環境模擬手段１１が生成する環境はバーチャルヒューマンが知識として保有しており、バーチャルヒューマンは現在位置に対する相対的な環境（距離など）をセンサ手段１２によって知覚するようにしてある。また、煙濃度のように仮想空間内で時間変化する環境については、模擬する時間範囲で仮想空間内の各場所ごとの単位時間毎の環境があらかじめ演算されており、演算済のデータからバーチャルヒューマンの現在位置に応じた領域のデータがセンサ手段１２により抽出されることになる。
【００４７】
模擬装置１において模擬する環境や行動を使用者が設定できるように、模擬装置１にはユーザインタフェース３が接続される。ユーザインターフェース３には、環境模擬手段１１が生成する仮想空間の作成および編集を可能とする仮想空間エディタ３１および環境模擬手段１１に設定する環境シナリオの作成および編集を可能とする環境シナリオエディタ３２が設けられる。仮想空間や環境シナリオは、別途のアプリケーション３０から提供してもよく、たとえば、インターネットのウェブサイトで提供されている仮想空間のデータを流用することも可能である。また、バーチャルヒューマンの属性であるセンサ手段１２の機能はセンサエディタ３３により選択および編集が可能であり、バーチャルヒューマンの属性であるモーションデータベース２３の内容はモーションエディタ３４によって作成および編集が可能になっている。すなわち、センサエディタ３３およびモーションエディタ３４は、バーチャルヒューマンエディタ（図示せず）の一部を構成する。バーチャルヒューマンエディタは、仮想空間に複数のバーチャルヒューマンを配置する機能も備え、複数のバーチャルヒューマンを配置した場合には、各バーチャルヒューマンごとに属性を付与することができる。バーチャルヒューマンの属性としては、他のバーチャルヒューマンの行動を誘導する誘導者を選択することができる。ここに、誘導者は、仮想空間において他のバーチャルヒューマンに行動経路を指示する役割を持ち、他のバーチャルヒューマンは誘導者からの指示があれば、他の行動に優先して指示された行動を行う。また、バーチャルヒューマンエディタでは、複数のバーチャルヒューマンを仮想空間に配置したときには、着目するバーチャルヒューマンを特定する機能、複数のバーチャルヒューマンが接近したときに他のバーチャルヒューマンに追従するか他のバーチャルヒューマンを従えるかを選択する機能も備える。さらに、ユーザインターフェース３には、行動データベース１５における行動の種類および行動ルールの作成と編集とを行うための行動エディタ３５が設けられる。
【００４８】
上述のように模擬装置１および映像化装置２の各部について、外部からデータを与えたりデータを編集したりすることが可能であるから、模擬装置１と映像化装置２とユーザインターフェース３とを実現するプログラムを提供し、仮想空間、環境シナリオ、行動の種類および行動ルール、バーチャルヒューマンの属性を使用者自身に設定させるようにしてもよい。たとえば、建築会社において火災時の避難経路が確保されているか否かを検証するために用いる場合には、建物を設計した図面データを作成したＣＡＤのようなアプリケーション３０から図面データを環境模擬手段１１に取り込むことで仮想空間を設定し、ユーザインターフェース３を用いて火災の模擬に必要なデータを設定すれば、当該建物における避難行動を模擬することが可能になる。したがって、避難行動の問題点を容易に見出すことができ、避難経路を確保する設計や誘導者の配置を適正化するのに役立つことになる。
【００４９】
また、模擬装置１と映像化装置２のうちの表示手段２２を除く部分とユーザインターフェース３を実現するプログラムとをネットワークサーバに持たせ、ネットワークサーバに接続される端末に表示手段２２を設けるとともに端末からユーザインターフェース３の操作を可能とすれば、インターネットなどのネットワークを用いたアプリケーションサービスプロバイダ（ＡＳＰ）として、バーチャルヒューマンによる行動シミュレーションシステムのサービスを提供することが可能になる。
【図面の簡単な説明】
【００５０】
【図１】本発明の実施形態を示すブロック図である。
【図２】同上の動作説明図である。
【図３】同上における煙濃度の知覚に関する原理説明図である。
【符号の説明】
【００５１】
１  模擬装置
２  映像化装置
３  ユーザインターフェース
１１  環境模擬手段
１２  センサ手段
１２ａ，１２ｂ，……センサ
１３  行動決定手段
１３ａ  行動目標検出部
１３ｂ  行動演算部
１４  行動指示手段
１５  行動データベース
１６  位置指定手段
１７  マッピング手段
２１  出力手段
３１  仮想空間エディタ
３２  環境シナリオエディタ
３３  センサエディタ
３４  モーションエディタ
３５  行動エディタ
【図１】
2005215801.tif 000003
【図２】
2005215801.tif 000004
【図３】
2005215801.tif 000005