FreeWalk/Q: デジタルシティのためのマルチユーザ・マルチエージェント仮想都市空間シミュレータ
中西 英之，石田 亨
京都大学社会情報学専攻，ＪＳＴデジタルシティプロジェクト
1． はじめに

単純なやり取りであれば音声で行うことができる．

デジタルシティとは，物理空間である現実の都市社会的エージェントの行動は，あらかじめシミュと，その都市の情報が集積する情報空間との連動レーションの設計者によって記述されている．こを示す概念である 1)．この連動を実現するインタフの記述のための言語が，シナリオ記述言語 Q であェースとして，現在最も実用的に用いられている

り，エージェントの行動を，内部メカニズムを設のは地図であるが，より現実感を増すために 3 次計するというよりは，シナリオ（台本）を渡すよ

元仮想空間もしばしば用いられており，観光案内

うなアプローチで記述する 5)．などに応用されている．そのような仮想都市空間は，エンターテイメント分野ではチャットやビデオゲームなど，シミュレーション分野では，景観シミュレーションや災害シミュレーションなどに用いられている．我々は，災害シミュレーション，特に人間が参加する必要のある避難訓練に焦点をあて，以下のような特徴を持つ仮想都市空間シミ都市モデル
仮想都市空間FreeWalk

ュレータを開発した．
••

シナリオ

遠隔地にいる人間同士が集まって，都市空間での群集をシミュレートできる．

設計者

エージェント
シナリオ記述言語Q

人間に加えてエージェントが参加することで，大規模群集のシミュレーションができる．

•図１．仮想都市空間シミュレータの概念図

計算機の非専門家が群集シミュレーションを編集できる．

2． 仮想都市空間シミュレータ
図 1 に仮想都市空間シミュレータの概念図を示す．
まず，仮想都市空間 FreeWalk が都市モデルのVRML データを読み込み，そこに人間のシミュレーション参加者が，アバターとなって入る．
FreeWalk の中では，位置関係に従った音声コミュニケーションが可能である 2)．大規模群集によるシミュレーションを人間の参加者だけで行うのは困難であるため，多数のエージェントが加わる．これらのエージェントは，人間集団とのインタラクションに従事することのできる社会的エージェントである 3,4)．音声合成・認識の機能を備えており，認識機能を活用するのはまだ困難であるものの，
FreeWalk/Q: Multi-user Multi-agent Virtual CitySpace Simulator for Digital Cities
Hideyuki Nakanishi, Toru Ishida
Department of Social Informatics, Kyoto University
JST Digital City Project

人間の参加者

仮想都市空間 FreeWalk とシナリオ記述言語 Qという 2 つのソフトウェアからなる仮想都市空間
シミュレータ FreeWalk/Q を一般化すると，以下の機能群から構成されていることになる．
• 協調仮想環境（CVEs）•具現化対話エージェント（ECAs）

•仮想都市

•

群集アニメーション•

ストーリー生成FreeWalk/Q と類似のシステムは数多く研究開発されているが，これらの機能を包括するものは他に例がない．
3． エージェントの制御
エージェントの高水準の制御は Q が，低水準の制
御は FreeWalk が担当する．エージェントに与えるシナリオとは，ルールベースシステムと有限状態機械を組み合わせたものとなっている．これは，人間との社会的インタラクションの記述には，外界の観測（キュー）と外界への作用（アクション）の組み合わせであるルールが便利であり，ストー表１．FreeWalk のキューとアクション

リーの記述には，並行待ち受けするルール群を状

キューアクション態（シーン）という単位にまとめ，それらの間の?position 対象との位置関係!walk 経路に沿って歩く遷移規則を作っていくほうが簡単だからである．Q?observe 対象が実行中の!approach 対象に近づく

言語処理系はシナリオを解釈し，エージェントがアクション!turn 対象の方向を向く

実行すべきキューとアクションを次々とFreeWalk に渡す．仮想環境内の状況は刻一刻変化?see 対象が視界内か判定!point 対象を指差す?hear 聞き取る

!speak 発話する

し，あらかじめ準備するシナリオで全ての状況を網羅するのは不可能であるため，FreeWalk は環境内の変化に合わせて，キュー・アクションの実行内容を自動的に補完する．この自動化は，以下ような低水準のエージェント制御である．
衝突回避のためのパーティクルモデル：空間を磁場として，各歩行者（エージェント，もしくはアバター）を電荷を持つ点として，歩行者間に働く斥力を計算し，歩行ルートに反映させる．
地形・ルートに合わせた歩行アニメ－ション：衝突回避等の影響で常に変化しつづける歩行ルー
トや，地形の起伏に対応できるよう，次の一歩先の位置にもとづいて，自然な歩行アニメーションを生成する．
対象指示的コミュニケーションのための視線・指差し制御：空間内でのコミュニケーションで重要

次に，シミュレーション設計者はシナリオを記述する．このシナリオを Q 言語処理系が解釈してFreeWalk に制御依頼を出すと，それに従ってエージェントが行動し，シミュレーション参加者との間に社会的インタラクションが起こる．例えば，「避難者が近づいたら出口を指差しながら歩く」というシナリオを与えると，避難者との距離の監視，出口方向への指差し，衝突回避などを，避難者・出口・群集との位置関係に合わせて実行する．
4． おわりに
FreeWalk/Q は人間参加型の群集シミュレータであり，FreeWalk は人間エージェント間の社会的インタラクションの再現を，Q はインタラクションの記述を可能にする．我々は，このシステムによる避難訓練実験を今後行っていく予定である．

謝辞
本研究は，JST CREST「デジタルシティのユニバーサルデザイン」プロジェクトの一部として進行中のもの
関係にもとづいて視線や指差しジェスチャーをです．衝突回避モデルにおける京都大学岡崎研究室の，制御する．
歩行アニメ－ション生成におけるＮＴＴサイバーソリューション研究所の御協力に感謝します．
エージェント制御の仕組みを，シミュレーショ
参考文献
ン設計者，シミュレータ開発者，シミュレーショ
1) T. Ishida. Digital City Kyoto: Social
ン参加者という立場の異なる 3 者の間のインタラ
Information Infrastructure for Everyday Life.
クションという観点からまとめると次のようにな
Communications of the ACM (CACM), Vol.45,
No.7, pp.76-81, 2002.
る．まず，シミュレーション設計者はシナリオの2)
H. Nakanishi, C. Yoshida, T. Nishimura, and T.
記述に必要な語彙（キュー・アクション）を，シIshida. FreeWalk: A 3D Virtual Space for
ミュレータ開発者と協議して決める．Q では，言Casual Meetings. IEEE MultiMedia, Vol.6,
No.2, pp.20-28, 1999.
語仕様とその語彙は独立であり，語彙の内容は各
3)
K. Isbister, H. Nakanishi, T. Ishida, and C.
シミュレータソフトウェア（実際に実装されたエNass. Helper Agent: Designing an Assistant forージェント）ごとに決められる．表 1 は FreeWalk
Human-Human Interaction in a Virtual
Meeting Space. CHI-2000, pp.57-64, 2000.の語彙の一部を抜粋したものであり，？から始ま4)
H. Nakanishi, S. Nakazawa, T. Ishida, K.
るのがキュー，！から始まるのがアクションであTakanashi, and K. Isbister. Can Software
る．シミュレータ設計者は，決められた語彙を実Agents Influence Human Relations? - Balance
Theory in Agent-mediated Communities -.
行できるようにエージェントを実装しなければな
AAMAS-2003, 2003 (to appear).
らない．エージェントの自律性が高いほど，語彙
5) T. Ishida. Q: A Scenario Description Language
は抽象的になる．この役割分担が，計算機の非専
for Interactive Agents. IEEE Computer, Vol.35,
No.11, pp.42-47, 2002.
門家によるシミュレーションの編集を可能にする．
な役割を果たす方向指示などのインタラクションを可能にするため，指示対象や聴き手との位置