HOME>> 行動シミュレータ>> 衝突回避アルゴリズム   [[English]]

衝突回避アルゴリズム


    collision1
  1. 自身の視野範囲(速度ベクトルに依存)内に存在するノード群を見つける.
  2. 見つけたノード群の中から自身の行動に影響を与える(そのまま同じ行動を続けると ぶつかるような)ノードをその速度ベクトルを用いて選別する(以降,選別されたノード群を対象ノード と表記する).


  3. collision2
  4. 自身の位置,速度ベクトルと対象ノードの位置,速度ベクトルから, 対象ノードにぶつからない(一定間隔(30cm)以上距離を空けて避ける) ような速度ベクトルを求める([1]の衝突回避アルゴリズムを応用).


  5. collision1
  6. 全ての対象ノードに対して3.を実行し,それらの候補速度ベクトルの 中から最も外側(両端)の2つのうち,元の速度ベクトルに近いものを自身の 速度ベクトルとして選ぶ.


3.で求めた速度ベクトルと元の速度ベクトルとの内積が負(2ベクトルの角度が90°よりも大) の場合,速度を下げて再び1.から実行する.それでも内積が負にならない速度ベクトルが 見つからない場合,自身の速度ベクトルを(0.0, 0.0)にする.

[1]岡田公孝, 和田剛, 高橋幸雄, "個人行動をベースにした歩行モデルと歩行流シミュレーション", 日本オペレーションズ・リサーチ学会, 春季研究発表会, 2003.