(57)【要約】【課題】処理時間の増加を抑制しつつ、他車両の位置を道路上に推定する他車両位置推定装置を提供する。【解決手段】他車両位置推定装置は他車両マップマッチング部１１１と粒子数制御部１１２を備える。他車両位置マップマッチング部１１１は、他車両の観測位置を取得する観測位置取得部と、道路上に位置を推定する処理をしていない他車両の観測位置を取得したとき、粒子を道路上に散布する散布部と、粒子の位置を更新する更新部と、観測位置と更新部が更新した粒子の位置とを比較して、観測位置の尤度を算出する尤度算出部と、尤度に基づいて粒子を道路上に再散布するリサンプリング部と、再散布後の粒子の位置に基づいて、他車両の位置を推定する位置推定部とを備える。粒子数制御部１１２は、粒子の数を、自車両の位置と他車両の位置の相対関係、他車両の実車速、粒子の散布状態、他車両の位置と道路との関係のいずれか少なくとも一つに基づいて決定する。【選択図】図２
2019168923.tif 000002
【特許請求の範囲】
【請求項１】
車両で用いられ、他車両の位置を道路上に推定する他車両位置推定装置であって、
前記車両の走行状態を送受信する通信部（１０１）と、
他車両の位置の候補となる粒子を地図上に散布し、地図情報および前記他車両から取得した前記走行状態の少なくとも一方に基づいて前記粒子の位置を逐次更新する更新部（Ｓ１２）と、
散布済みの前記粒子の運動状態と、前記通信部が前記他車両より受信した前記走行状態とにより、前記粒子の位置の尤度を算出する尤度算出部（Ｓ１４）と、
前記粒子の位置に基づいて、前記他車両の位置を推定する位置推定部（Ｓ１６）と、
散布する前記粒子の数を決定する粒子数制御部（１１２）とを備え、
前記粒子数制御部は、複数の前記他車両の位置をそれぞれ推定するために散布する前記粒子の数を、前記他車両位置推定装置が用いられている前記車両である自車両の位置と前記他車両の位置の相対関係、前記他車両の実車速、前記粒子の散布状態、前記他車両の位置と道路との関係のいずれか少なくとも一つに基づいて決定する他車両位置推定装置。
【請求項２】
前記粒子数制御部は、前記自車両の位置と前記他車両の位置の相対関係、前記粒子の散布状態、前記他車両の位置と道路との関係のいずれか少なくとも一つに基づいて、複数の前記他車両の位置に対して要求される位置推定精度を相対評価する指標となる得点を決定し、前記得点に応じて、複数の前記他車両の位置をそれぞれ推定するために散布する前記粒子の数を決定する請求項１に記載の他車両位置推定装置。
【請求項３】
前記粒子数制御部は、前記自車両の位置と前記他車両の位置の相対関係である、前記自車両と前記他車両の距離に基づいて、前記得点を決定する、請求項２に記載の他車両位置推定装置。
【請求項４】
前記粒子数制御部は、前記自車両の位置と前記他車両の位置の相対関係である、前記自車両の道路上での位置と前記他車両の道路上での位置関係に基づいて、前記得点を決定する、請求項２または３に記載の他車両位置推定装置。
【請求項５】
前記粒子数制御部は、前記粒子の散布状態である、前記粒子の分散径に基づいて、前記得点を決定する、請求項２〜４のいずれか１項に記載の他車両位置推定装置。
【請求項６】
前記粒子数制御部は、前記粒子の散布状態である、前記粒子が散布されている道路の数に基づいて、前記得点を決定する、請求項２〜５のいずれか１項に記載の他車両位置推定装置。
【請求項７】
前記粒子数制御部は、前記粒子の散布状態である、前記粒子が散布されている道路の種別に基づいて、前記得点を決定する、請求項２〜６のいずれか１項に記載の他車両位置推定装置。
【請求項８】
前記粒子数制御部は、前記得点の初期値を、前記得点の取りうる値の最大とする請求項２〜７のいずれか１項に記載の他車両位置推定装置。
【請求項９】
前記粒子数制御部は、１つの前記粒子の位置を更新するための算出に必要な処理時間（Ｃ、Ｓ）と、複数の前記他車両にそれぞれ割り当てる前記粒子の数（Ｍｉ）とに基づいて、１台の前記他車両の位置を推定するために必要となる処理時間（Ｔｉ）を算出し、１台の前記他車両の位置を推定するために必要となる前記処理時間および位置を推定する前記他車両の数から定まる総処理時間（Ｔｎ）と、前記他車両の位置を推定するために割り当てられた時間（ＴＭＭ）とに基づいて、散布する粒子の数を決定する請求項１〜８のいずれか１項に記載の他車両位置推定装置。
【請求項１０】
前記粒子数制御部は、１台の前記他車両に対して散布する粒子の数を、予め設定した最大粒子数（Ｍｍａｘ）以下の数にする請求項１〜９のいずれか１項に記載の他車両位置推定装置。
【請求項１１】
前記粒子数制御部は、１台の前記他車両に対して散布する粒子の数を、予め設定した最小粒子数（Ｍｍｉｎ）以上の数にする請求項１〜１０のいずれか１項に記載の他車両位置推定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
他車両位置推定装置に関し、特に、他車両の位置を道路上に推定する装置に関する。
【背景技術】
【０００２】
特許文献１には、他車両から送信された座標をもとに、他車両の位置を地図データ上の道路にマッピングする技術が開示されている。他車両から送信された座標は、必ずしも、道路上に位置しているとは限らないが、他車両は道路上に位置しているはずである。そこで、他車両の位置を地図データ上の道路にマッピングするのである。他車両の位置を地図データ上の道路にマッピングすることで、他車両の位置と自車両の位置とをもとにした運転支援の精度が向上する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５０８２３４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に開示されている処理では、他車両から送信された情報をもとに他車両の走行軌跡を求める。そして、その走行軌跡と地図データ上の道路形状とを比較して、他車両の位置を地図データ上の道路にマッピングする。
【０００５】
特許文献１に開示されている処理では、走行軌跡を求める必要があるため、処理遅延時間が長くなる恐れがある。他車両の位置をもとに運転支援等を行う場合、迅速に他車両の位置を道路上に推定することが望まれる。
【０００６】
本開示は、この事情に基づいて成されたものであり、その目的とするところは、処理時間の増加を抑制しつつ、他車両の位置を道路上に推定する他車両位置推定装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的は独立請求項に記載の特徴の組み合わせにより達成され、また、下位請求項は更なる有利な具体例を規定する。特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、開示した技術的範囲を限定するものではない。
【０００８】
上記目的を達成するための１つの開示は、
車両で用いられ、他車両の位置を道路上に推定する他車両位置推定装置であって、
車両の走行状態を送受信する通信部（１０１）と、
他車両の位置の候補となる粒子を地図上に散布し、地図情報および他車両から取得した走行状態の少なくとも一方に基づいて粒子の位置を逐次更新する更新部（Ｓ１２）と、
散布済みの粒子の運動状態と、通信部が他車両より受信した走行状態とにより、粒子の位置の尤度を算出する尤度算出部（Ｓ１４）と、
粒子の位置に基づいて、他車両の位置を推定する位置推定部（Ｓ１６）と、
散布部が散布する粒子の数を決定する粒子数制御部（１１２）とを備え、
粒子数制御部は、複数の他車両の位置をそれぞれ推定するために散布する粒子の数を、他車両位置推定装置が用いられている車両である自車両の位置と他車両の位置の相対関係、他車両の実車速、粒子の散布状態、他車両の位置と道路との関係のいずれか少なくとも一つに基づいて決定する。
【０００９】
この他車両位置推定装置は、複数の他車両の位置をそれぞれ推定するために散布する粒子の数を、自車両の位置と他車両の位置の相対関係、他車両の実車速、粒子の散布状態、他車両の位置と道路との関係のいずれか少なくとも一つに基づいて決定する。自車両の位置と他車両の位置の相対関係、他車両の実車速、粒子の散布状態、他車両の位置と道路との関係は、いずれも他車両の位置推定精度を決める指標とすることができるので、自車両の位置と他車両の位置の相対関係、他車両の実車速、粒子の散布状態、他車両の位置と道路との関係のいずれか少なくとも一つに基づいて粒子の数を決定することで、精度よく位置を推定する必要がある他車両に対する位置推定精度が低下することを抑制することができる。
【００１０】
また、各他車両の位置を推定するために散布する粒子の数を動的に変化させることが可能になることから、位置を推定する他車両が増加する場合や、ある他車両が精度よく位置を推定する状況となった場合でも、処理時間の増加を抑制することができる。
【図面の簡単な説明】
【００１１】
【図１】他車両位置推定装置１００の使用状態を示す図である。
【図２】他車両位置推定装置１００の構成図である。
【図３】各部間の処理の流れを説明する図である。
【図４】他車両マップマッチング部１１１の処理を示す図である。
【図５】粒子数が更新された場合に他車両マップマッチング部１１１が実行する処理を示す図である。
【図６】粒子数制御部１１２が実行する処理を示す図である。
【図７】図６のＳ３１で実行する最大粒子数割り当て試行処理を示す図である。
【図８】図６のＳ３３で実行する粒子数の可変割り当て処理を示す図である。
【図９】ＷＴＣを決定するテーブルの一例を示す図である。
【図１０】図９のテーブルに示される他車両２ｂの位置を例示する図である。
【図１１】ＷＳＴＡＴＥを決定するテーブルの一例を示す図である。
【図１２】図１１のテーブルに示される他車両２ｂの位置を例示する図である。
【図１３】ＧＶＡＲを決定するテーブルの一例を示す図である。
【図１４】ＧＤＩＳＴを決定するテーブルの一例を示す図である。
【図１５】ＧＮＵＭＥＤＧを決定するテーブルの一例を示す図である。
【図１６】ＧＡＴＴＲを決定するテーブルの一例を示す図である。
【図１７】図８のＳ３３８で実行する尤度算出省略時の粒子数設定処理を示す図である。
【発明を実施するための形態】
【００１２】
以下、実施形態を図面に基づいて説明する。図１は、他車両位置推定装置１００の使用状態を示している。他車両位置推定装置１００は車両２で用いるために、車両２に搭載されている。ここでの車両２は、道路上を走行する車両である。４輪車、オートバイ、自転車などが車両２に含まれる。
【００１３】
他車両位置推定装置１００ａ、１００ｂは、それぞれ、自車両２ａ、他車両２ｂで用いられる。自車両２ａ、他車両２ｂは、いずれも車両２であるが、説明の便宜上、区別している。自車両２ａと他車両２ｂを区別しないときは、車両２と記載する。
【００１４】
他車両位置推定装置１００ａ、１００ｂは同じ構成である。他車両位置推定装置１００ａ、１００ｂを区別しないときは、他車両位置推定装置１００と記載する。図１には他車両位置推定装置１００を３つ示しているが、図示の便宜上であり、それよりも多い数の他車両位置推定装置１００が別々の車両２で用いられてもよい。
【００１５】
［他車両位置推定装置１００の構成］
図２に他車両位置推定装置１００の構成を示す。他車両位置推定装置１００は、通信部１０１、走行情報取得部１０２、道路地図データ記憶部１０３、制御部１１０を備えている。
【００１６】
通信部１０１は、別の車両２に搭載された他車両位置推定装置１００が備える通信部１０１との間で車車間通信パケットを送受信するための構成を備える。通信部１０１は、近距離無線通信により、車車間通信パケットを送受信することができる。近距離無線通信では、ＩＥＥＥ８０２．１１ｐ、ＳＴＤ−Ｔ１０９など、種々の通信規格を採用することができる。また、通信部１０１は、ＬＴＥなど、広域通信により、車車間通信パケットを送受信してもよい。
【００１７】
走行情報取得部１０２は、他車両位置推定装置１００が搭載された車両２の走行情報を逐次取得し、取得した走行情報を、逐次、通信部１０１へ提供する。通信部１０１は、走行情報を、逐次、周囲にブロードキャストする。
【００１８】
走行情報には、車両２の位置と速度が含まれる。本実施形態の走行情報取得部１０２は、これら車両２の位置と速度とを含む基本安全メッセージ（Basic Safety Message：以下、ＢＳＭ）を生成するために必要な情報を取得する。走行情報取得部１０２は、生成したＢＳＭを、逐次、前述の走行情報として通信部１０１へ提供する。
【００１９】
ＢＳＭは、車両２のＩＤ、車両２の位置、進行速度、進行方向、制動状態を含んでいる。また、車両サイズ、加速度など、他の情報がＢＳＭに含まれていてもよい。
【００２０】
走行情報取得部１０２は、車内ＬＡＮ等により、ＢＳＭに含まれる種々の情報を検出するセンサ類に、直接あるいは間接的に接続されている。車両２の位置は、緯度と経度を含む座標により表される。座標には、高度が含まれていてもよい。
【００２１】
車両２の位置は、たとえば、車両２に搭載されたＧＮＳＳ受信機が算出する。車両２の速度は車速センサ、あるいは、車輪速センサが検出する信号に基づいて算出される。車両２の進行方向は、たとえば、車両２の位置の変化から算出される。また、ヨーレートセンサなどの慣性センサの検出値から車両２の進行方向が算出されてもよい。
【００２２】
道路地図データ記憶部１０３は、道路地図データを記憶している記憶部である。道路地図データは、道路の形状と進行方向を車線別に表したデータである。道路の形状は線で表されていればよい。また、道路が交わる座標は点で標記されていればよい。各道路には道路ＩＤが付与され、道路ＩＤにより道路が特定される。
【００２３】
制御部１１０は、ＣＰＵ、ＲＯＭ、ＲＡＭ、Ｉ／Ｏ、およびこれらの構成を接続するバスラインなどを備えたコンピュータである。ＲＯＭには、汎用的なコンピュータを制御部１１０として機能させるためのプログラムが格納されている。ＣＰＵが、ＲＡＭの一時記憶機能を利用しつつ、ＲＯＭに記憶されたプログラムを実行することで、制御部１１０は、他車両マップマッチング部１１１、粒子数制御部１１２、対象判定部１１３として機能する。これらの機能が実行されると、プログラムに対応する方法が実行される。ＣＰＵが実行するプログラムを記憶する記憶媒体はＲＯＭに限られず、非遷移的実体的記録媒体に記憶されていればよい。たとえば、フラッシュメモリに上記プログラムが記憶されていてもよい。また、制御部１１０が備える機能の一部または全部を、一つあるいは複数のＩＣ等を用いて（換言すればハードウェアとして）実現してもよい。また、制御部１１０が備える機能の一部又は全部を、ＣＰＵによるソフトウェアの実行とハードウェア部材の組み合わせによって実現してもよい。
【００２４】
以下では、制御部１１０が実行する機能を、他車両位置推定装置１００が自車両２ａに搭載されている場合を例にして説明する。
【００２５】
他車両マップマッチング部１１１は、パーティクルフィルタを用いて、他車両２ｂの位置を、道路地図データの道路上に推定する。本実施形態では、他車両２ｂの位置を、地図データの道路上に推定することを、マップマッチングとする。
【００２６】
パーティクルフィルタは、位置の候補となる粒子を道路上に散布して、その後、各粒子の尤度Ｌを求め、その尤度Ｌに基づいて粒子をリサンプリングし、粒子の位置を更新する処理を繰り返す。そして、粒子の収束具合から他車両２ｂの位置を推定する。他車両マップマッチング部１１１が実行する処理は、図４を用いて後に詳述する。
【００２７】
粒子数制御部１１２は、他車両マップマッチング部１１１が散布する粒子の数を決定し、決定した粒子の数を他車両マップマッチング部１１１に通知する。粒子の数を決定するために、粒子数制御部１１２は、自車両２ａの位置と他車両２ｂの位置との相対関係、粒子の散布状態、他車両２ｂの位置と道路との関係の少なくとも１つを用いる。
【００２８】
対象判定部１１３は、他車両マップマッチング部１１１が推定した他車両２ｂの位置と、走行情報取得部１０２が取得した自車両２ａの位置とから、自車両２ａと他車両２ｂの道路上での相対関係を判定する。相対関係には、たとえば、他車両２ｂは自車両２ａと同じ道路を自車両２ａの前方を走行している、他車両２ｂは交差点で自車両２ａと接近する、他車両２ｂは自車両２ａとは無関係な道路を走行している、がある。対象判定部１１３は、判定した相対関係を、運転支援を行う所定の処理部へ出力する。運転支援は、たとえば、自動制動、自動操舵、ドライバへの警告などである。
【００２９】
［各部間の処理の流れ］
図３に、通信部１０１、他車両マップマッチング部１１１、粒子数制御部１１２の間での処理の流れを示す。自車両２ａに搭載された他車両位置推定装置１００ａの通信部１０１は、他車両２ｂが送信したＢＳＭを受信した場合、そのＢＳＭを他車両マップマッチング部１１１に送る。他車両マップマッチング部１１１は、そのＢＳＭが、新規にマップマッチングをする必要がある他車両２ｂ（以下、新規他車両）が送信したものである場合、粒子割り当て要求を粒子数制御部１１２へ出力する。新規他車両であるかどうかは、他車両マップマッチング部１１１が位置を推定していない他車両２ｂであるか否かで判断する。
【００３０】
粒子数制御部１１２は、粒子割り当て要求を取得すると、通信部１０１がＢＳＭを周期的に受信している全部の他車両２ｂに対して、それぞれ割り当てる粒子数を決定する。そして、新規他車両および既存の他車両２ｂに対して、それぞれ割り当てた粒子数を、他車両マップマッチング部１１１に通知する。なお、既存の他車両２ｂは、これまでにも粒子を割り当てていた他車両２ｂである。
【００３１】
他車両マップマッチング部１１１は、通知された粒子数でパーティクルフィルタを実行して、各他車両２ｂの位置を道路上に推定する。また、他車両マップマッチング部１１１は、各他車両２ｂについて最後にＢＳＭを取得してから、推定終了期間Ｔｅが経過すると、その他車両２ｂをマップマッチングの対象から除外する。これにより、マップマッチングして道路上に位置を推定する必要がある他車両２ｂの数が減少する。マップマッチングの対象から除外することは、その他車両２ｂに対して使用していた粒子を破棄することを意味する。
【００３２】
マップマッチングする他車両２ｂの数が減少した場合、他車両マップマッチング部１１１は、マップマッチングの対象から除外した他車両２ｂの位置を推定するために使用していた粒子を破棄したことを、粒子数制御部１１２に通知する。粒子数制御部１１２は、この通知を取得した場合、マップマッチングをする必要がなくなった他車両２ｂを除いて、残りの既存の他車両２ｂに対して、それぞれ割り当てる粒子数を決定する。そして、それぞれの他車両２ｂに対して割り当てた粒子数を、他車両マップマッチング部１１１に通知する。
【００３３】
他車両マップマッチング部１１１は、新たに通知された粒子数でパーティクルフィルタにより、他車両２ｂの位置を道路上に推定する。
【００３４】
［他車両マップマッチング部１１１の処理］
次に、他車両マップマッチング部１１１が実行する処理を説明する。すでに説明したように、他車両マップマッチング部１１１は通信部１０１がＢＳＭを受信した場合、通信部１０１からそのＢＳＭを取得する。
【００３５】
図４に示している処理は、そのＢＳＭが新規他車両が送信したものである場合に実行する処理を示している。ステップ（以下、ステップを省略）Ｓ１では、新規他車両が送信し通信部１０１が受信したＢＳＭを、通信部１０１から取得する。このＳ１の処理は、詳しくは、通信部１０１からＢＳＭを取得し、そのＢＳＭが、新規他車両が送信したものであると判断したことを意味する。
【００３６】
ＢＳＭには他車両２ｂの位置が含まれている。この位置は他車両２ｂが検出した位置である。以下、ＢＳＭに含まれている位置を観測位置Ｚとする。ＢＳＭは他車両２ｂからそれぞれ取得するので、観測位置Ｚも他車両２ｂからそれぞれ取得する。
【００３７】
Ｓ２では、粒子割り当て要求を粒子数制御部１１２へ出力する。この粒子割り当て要求には、新規他車両のＢＳＭが含まれている。粒子数制御部１１２は粒子割り当て要求を取得すると、各他車両２ｂに対して割り当てる粒子数を決定し、その粒子数を他車両マップマッチング部１１１に通知する。他車両マップマッチング部１１１は、Ｓ３でその通知を取得する。
【００３８】
図５は、粒子数が更新された場合に、他車両マップマッチング部１１１が実行する処理を示している。図４を実行して新規他車両に対する粒子数が通知された場合も、粒子数が更新されたことになるので、図５の処理を実行する。
【００３９】
Ｓ１１では、通知された粒子数の粒子を、ＢＳＭが示している他車両２ｂの観測位置Ｚを中心として、半径ｄｒ（ｍ）内にある道路上に散布する。半径ｄｒは予め設定しておけばよい。たとえば、半径ｄｒは、ＢＳＭに含まれる車両２の位置の平均的な誤差に一定値を加えた長さとする。半径ｄｒ内に道路が含まれるようにするためである。
【００４０】
観測位置Ｚから半径ｄｒ内に散布するそれぞれの粒子の位置は、ランダムに決定することができる。あるいは、観測位置Ｚからの距離で重み付けして散布してもよい。また、観測位置Ｚから半径ｄｒ内に複数の道路がある場合、新規他車両の進行方向と道路の進行方向との合致度に応じて、各道路に散布する粒子の比を決めてもよい。
【００４１】
Ｓ１２以下は、新規他車両だけでなく、既存の他車両２ｂについても実行する処理である。Ｓ１２は更新部に相当する。Ｓ１２では、散布済みの各粒子に対して予測更新をする。予測更新は、粒子の位置を更新する処理である。粒子は道路上に散布されているので進行方向は定まる。よって、粒子の移動速度が定まれば粒子の位置を更新することができる。粒子の移動速度は、粒子に対応する他車両２ｂから取得したＢＳＭのうち最新のものに含まれている速度を用いる。最新のＢＳＭに含まれている速度に、前回のＳ１２実行時から今回のＳ１２実行時までの時間を乗じることで、移動距離を算出する。更新前の粒子の位置から、この移動距離だけ、道路の進行方向に移動した位置に、任意に設定したシステムノイズを付加した位置を、予測更新後の粒子の位置とする。また、粒子が地図上の交差点あるいは分岐点を通過する場合には、以下の処理を行うこともできる。たとえば、ＢＳＭに含まれる位置、進行方位、ヨーレートを用いて、最も進路に合致する道路に粒子を進めることができる。また、最も進路に合致する道路に限定してしまうのではなく、交差点あるいは分岐点以降の道路と進路の合致する程度に応じて、粒子を割り振ることもできる。また、単に交差点あるいは分岐点以降の道路にランダムに複数の粒子を割り振ることもできる。
【００４２】
Ｓ１３では、新たにＢＳＭを受信したか否かを判断する。Ｓ１３の判断がＹＥＳであればＳ１４に進む。Ｓ１４は尤度算出部に相当する。Ｓ１４では、予測更新後のそれぞれの粒子の位置に対して尤度Ｌを算出する。尤度Ｌの具体的算出方法は、種々の算出方法が可能である。以下に尤度Ｌの算出の一例を示す。
【００４３】
【数１】
2019168923.tif 000003
式１において、ｔは時刻、Ｔは転置行列、Ｙは予測更新後の粒子の位置、Ｚは観測位置、Σは共分散行列である。共分散行列は、Ｚの各項目の観測性能下限値を入力することで定義できる。観測性能下限値は、ＢＳＭを通じて他車両２ｂから取得することができ、また、法規等で合意形成された値とすることもできる。
【００４４】
Ｓ１５では、各粒子のリサンプリングを実施する。リサンプリングとは、Ｓ１４で算出した尤度Ｌの大きさに応じて粒子を再配置することである。リサンプリングにより、尤度Ｌが相対的に大きい粒子の位置に、尤度Ｌが相対的に小さい粒子の位置を移動させることになり、粒子の位置ごとの粒子数が尤度に比例した数になる。
【００４５】
Ｓ１６は位置推定部に相当する。Ｓ１６では、リサンプリング後の各粒子の位置に基づいて、他車両２ｂの推定位置および他車両２ｂがどの道路に存在しているかを表す確率である存在確率を算出する。たとえば、ある道路Ｒ１に７０％の粒子が存在し、別の道路Ｒ２に３０％の粒子が存在していたとする。この場合、道路Ｒ１に存在する存在確率が７０％、道路Ｒ２に存在する存在確率が３０％である。推定位置は、それぞれの道路上に存在する粒子の位置を平均した位置とする。この位置を、道路始点からの距離により表したものが、他車両２ｂの推定位置である。なお、道路始点は、他車両２ｂの進行方向の起点となる道路上の点であり、たとえば、線で表される各道路の端点である。
【００４６】
Ｓ１７では、Ｓ１６で得た推定位置と存在確率を、運転支援を行う所定の処理部へ出力する。その後、Ｓ１２へ戻る。
【００４７】
Ｓ１３の判断結果がＮＯであればＳ１８へ進む。Ｓ１８の処理自体はＳ１６と同じであり、その時点での各粒子の位置に基づいて、他車両２ｂの推定位置および存在確率を算出する。ただし、Ｓ１８を実行する場合には、予測更新のみを実施しており、尤度Ｌに基づくリサンプリングを実施していない点はＳ１６と相違する。
【００４８】
Ｓ１９では、Ｓ１８で得た推定位置と存在確率を、運転支援を行う所定の処理部へ出力する。
【００４９】
Ｓ２０では、Ｓ１９で推定結果を出力した他車両２ｂからＢＳＭを受信していない時間が推定終了期間Ｔｅを超えたか否かを判断する。ＢＳＭを未受信の期間が推定終了期間Ｔｅを超えていなければＳ２０の判断はＮＯになる。Ｓ２０の判断がＮＯであればＳ１２へ戻る。一方、Ｓ２０の判断がＹＥＳであればＳ２１へ進む。
【００５０】
Ｓ２１では、ＢＳＭを推定終了期間Ｔｅ、未受信だった他車両２ｂの位置を推定するための粒子を破棄する。ＢＳＭを推定終了期間Ｔｅ、未受信であると、Ｓ１２の予測更新で用いる移動速度と実際の移動速度との乖離が大きくなり過ぎることが懸念され、また、他車両２ｂが電源オフになった可能性もあるため、粒子を破棄するのである。
【００５１】
Ｓ２２では、粒子を破棄したことを粒子数制御部１１２に通知する。粒子数制御部１１２は、この通知を取得した場合にも、粒子の割り当て処理を実行し、各他車両２ｂに対して割り当てる粒子数を変更する。そして、変更した粒子数を他車両マップマッチング部１１１に通知する。この通知を、他車両マップマッチング部１１１が取得した場合には、他車両マップマッチング部１１１は、図５の処理を最初から実行することになる。
【００５２】
［粒子数制御部１１２の処理］
次に、粒子数制御部１１２が実行する処理を説明する。粒子数制御部１１２は、他車両マップマッチング部１１１が図４のＳ２を実行して出力した粒子割り当て要求を取得した場合、または、図５のＳ２２を実行したことにより通知した粒子破棄を取得した場合に図６の処理を実行する。
【００５３】
Ｓ３１では、最大粒子数の割り当て試行処理を実行する。この処理は、マップマッチングをする全部の他車両２ｂに、最大粒子数Ｍｍａｘを割り当てることができるか否かを算出する処理である。
【００５４】
最大粒子数割り当て試行処理では図７に示す各処理を実行する。Ｓ３１１では、各他車両２ｂに対して割り当てる粒子数Ｍｉを最大粒子数Ｍｍａｘとする。最大粒子数Ｍｍａｘは、予め設定されている数である。パーティクルフィルタでは、粒子数が多いほど推定精度は向上するため、最大粒子数Ｍｍａｘは十分な推定精度が得られる粒子数に設定される。
【００５５】
Ｓ３１２では、マップマッチング処理で消費される総処理時間Ｔｎを算出する。総処理時間Ｔｎは式２で算出できる。式２において、ｎはマップマッチングをする他車両２ｂの数、ｉは整数であり１からｎまで変化する変数、Ｔｉは１台の他車両２ｂに対してマップマッチング処理に要する処理時間である。
【００５６】
（式２）  Ｔｎ＝ΣＴｉ
Ｔｎは式３から算出することができる。式３において、Ｃは、１つの粒子の位置を更新するための算出に必要な処理時間のうち、粒子数によらずに必要となる処理時間を意味する。Ｓは、１つの粒子の位置を更新するための算出に必要な処理時間のうち、粒子が１つ増えるごとに増加する処理時間を意味する。Ｍｉは１台の他車両２ｂに割り当てる粒子数である。
【００５７】
（式３）  Ｔｉ＝Ｃ＋Ｓ×Ｍｉ
Ｓ３１３では、Ｓ３１２で算出した総処理時間Ｔｎが、１処理周期においてマップマッチング処理に割り当てられた時間（以下、割り当て時間）ＴＭＭ以下か否かを判断する。１処理周期は、自車両２ａおよび他車両２ｂの位置を更新する周期であり、たとえば１００ｍｓである。Ｓ３１３の判断がＹＥＳであればＳ３１４に進む。割り当て時間ＴＭＭは一定時間でもよいし、他の処理に要する時間の変動に対応して、都度、決定される時間でもよい。
【００５８】
Ｓ３１４では、全部の他車両２ｂについて割り当てる粒子数をＭｍａｘとする。一方、Ｓ３１３の判断がＹＥＳであればＳ３１５に進む。Ｓ３１５では、全部の他車両２ｂに対して割り当てる粒子数Ｍｉを０にする。
【００５９】
説明を図６に戻す。Ｓ３２では、Ｍｉが０であるか否かを判断する。この判断がＮＯである場合にはＳ３４に進む。一方、Ｓ３２の判断がＹＥＳであればＳ３３に進む。Ｓ３２がＹＥＳの場合、各他車両２ｂに割り当てる粒子数を決定できていないことになる。そこで、Ｓ３３では、粒子数の可変割り当て処理を実行する。
【００６０】
粒子数の可変割り当て処理は、各他車両２ｂに割り当てる粒子数を、各他車両２ｂで個別に決定する処理である。粒子数の可変割り当て処理では、図８に示す処理を実行する。
【００６１】
図８において、Ｓ３３１では、各他車両２ｂへ割り当てる粒子数Ｍｉを最小粒子数Ｍｍｉｎとする。最小粒子数Ｍｍｉｎは、パーティクルフィルタによる他車両２ｂの位置推定精度として、最低限の精度を維持するために設定される数である。
【００６２】
Ｓ３３２では、マップマッチング処理で消費される総処理時間Ｔｎを算出する。総処理時間Ｔｎは、Ｓ３１１と同じく式２、式３から算出する。ただし、Ｓ３３１においてＭｉ＝Ｍｍｉｎとしているため、Ｓ３３２で算出する総処理時間Ｔｎは、Ｓ３１１で算出した総処理時間Ｔｎとは異なる時間となる。
【００６３】
Ｓ３３３では、Ｓ３３２で算出した総処理時間Ｔｎが、割り当て時間ＴＭＭ以下か否かを判断する。Ｓ３３３の判断がＹＥＳであればＳ３３４に進む。
【００６４】
Ｓ３３４では、追加で割り当て可能な最大粒子数Ｍａｄｄ＿ｍａｘを算出する。この最大粒子数Ｍａｄｄ＿ｍａｘは式４で算出することができる。式４において、Ｆｌｏｏｒは、切り捨てにより整数値を算出する関数である。
【００６５】
（式４）  Ｍａｄｄ＿ｍａｘ＝Ｆｌｏｏｒ（（ＴＭＭ−Ｔｎ）／Ｓ）
Ｓ３３５では、各他車両２ｂに対する得点Ｇｉを算出する。得点Ｇｉは、各他車両２ｂの位置に対して要求される位置推定精度を相対評価する指標であり、本実施形態では、式５により算出する。
【００６６】
（式５）  Ｇｉ＝ＷＴＣ×ＷＳＴＡＴＥ×（ＧＶＡＲ＋ＧＤＩＳＴ＋ＧＮＵＭＥＤＧＥ＋ＧＡＴＴＲ）
式５において、ＷＴＣは、自車両２ａと他車両２ｂの道路上での位置関係から定まる補正係数、ＷＳＴＡＴＥは他車両２ｂの位置と道路との関係から定まる補正係数である。ＧＶＡＲは粒子の分散径から定まる得点、ＧＤＩＳＴは自車両２ａと他車両２ｂとの距離から定まる得点、ＧＮＵＭＥＤＧＥは粒子が散布されている道路ＩＤの数に応じた得点、ＧＡＴＴＲは粒子が散布されている道路種別に応じた得点である。なお、粒子の分散径、粒子が散布されている道路ＩＤの数、粒子が散布されている道路種別は、粒子の散布状態を表している。これらの補正係数Ｗ、得点Ｇには、それぞれ、初期値が定められている。本実施形態では、初期値は、各補正係数Ｗ、得点Ｇの取りうる値の最大値とする。
【００６７】
ＷＴＣは、前述の通り、自車両２ａの道路上での位置と他車両２ｂの道路上での位置関係から定まる補正係数である。自車両２ａの道路上での位置と他車両２ｂの道路上での位置関係は、自車両２ａの位置と他車両２ｂの位置の相対関係ということもできる。
【００６８】
図９はＷＴＣを決定するテーブルの一例である。図９に示す例では、他車両２ｂの位置が自車両２ａの経路上である場合、ＷＴＣを１．０とする。自車両２ａの経路は、自車両２ａがこれから走行する道路を意味する。したがって、自車両２ａと同じ道路を走行していても、自車両２ａの後方を走行している場合には、自車両２ａの経路上にはならない。また、道路は車線別に区別されるので、自車両２ａが走行する車線とは反対車線を走行する他車両２ｂも、自車両２ａの経路上を走行する他車両２ｂではない。図１０において、他車両２ｂの位置が自車両２ａの経路上である例は他車両２ｂ１である。
【００６９】
他車両２ｂの位置が交差点で自車両２ａに接近する位置である場合も、ＷＴＣを１．０とする。他車両２ｂの位置が交差点で自車両２ａに接近する位置であるとは、自車両２ａと他車両２ｂが同じ交差点に向かって移動していることを意味する。加えて、交差点までの距離の差が一定値以下である、あるいは、交差点に到着するまでの時間の差が一定時間以下である場合に、他車両２ｂの位置が交差点で自車両２ａに接近する位置であるとしてもよい。図１０において、他車両２ｂの位置が交差点で自車両２ａに接近する位置の例は他車両２ｂ２である。
【００７０】
他車両２ｂの位置がその他である場合、ＷＴＣを０．５とする。その他は、他車両２ｂの位置が、自車両２ａの経路上でなく、交差点で自車両２ａに接近する位置でもない位置であることを意味する。図１０において、他車両２ｂの位置がその他である例は他車両２ｂ３である。他車両２ｂの位置がその他である場合、他車両２ｂの位置が自車両２ａの経路上である場合、および、交差点で自車両２ａに接近する位置である場合に比べて、他車両２ｂの位置推定精度は低くてもよいことから、粒子数は相対的に少なくてもよい。したがって、得点Ｇｉを相対的に低くするために、他の２つよりも小さい補正係数とするのである。
【００７１】
図１１にＷＳＴＡＴＥを決定するテーブルの一例を示す。図１１に示す例では、他車両２ｂの位置が道路上である場合、ＷＳＴＡＴＥを１．０とし、他車両２ｂの位置が道路外である場合、ＷＳＴＡＴＥを０．５とし、他車両２ｂの位置が不定である場合、ＷＳＴＡＴＥを０．２とする。図１２において、他車両２ｂ４の位置は道路上であり、他車両２ｂ５の位置は道路外であり、他車両２ｂ６の位置は不定である。図１２の例において、他車両２ｂ５は駐車場で駐車中である。
【００７２】
このＷＳＴＡＴＥを決定するために、他車両２ｂの位置として、マップマッチングをした位置ではなく、ＢＳＭに含まれている観測位置Ｚ、および、他車両マップマッチング部１１１が散布した粒子の位置を用いる。また、複数回分の位置を用いる。他車両２ｂの位置が不定かどうか、および、他車両２ｂの位置が道路外であるかどうかを判断するためである。
【００７３】
他車両２ｂの位置が不定であるとは、互いに連続する２つのＢＳＭに含まれている観測位置Ｚから移動距離および進行方向を算出し、移動距離の変化率および進行方向の変化率の一方または両方が、それぞれについて定めた変化率閾値を超える場合である。このとき、ＢＳＭに含まれている観測位置Ｚは、誤差を大きく含んでいると言える。
【００７４】
他車両２ｂの位置が道路外であるとは、具体的には、尤度Ｌが閾値Ｌｔｈ以上となる粒子が、時間閾値ＴＬｔｈ間、存在しないことを意味する。
【００７５】
他車両２ｂの位置が道路上である場合、その他車両２ｂの位置の変化に起因する運転支援を実行するかどうかを判断する必要性が高い。それに対して、他車両２ｂの位置が駐車場などの道路外である場合、他車両２ｂに起因する運転支援を実行するかを判断する必要性は相対的に低い。そのため、他車両２ｂの位置が道路上である場合、ＷＳＴＡＴＥを１．０とし、他車両２ｂの位置が道路外である場合、ＷＳＴＡＴＥを０．５としている。また、他車両２ｂの位置が不定である場合には、ＢＳＭに含まれている観測位置Ｚの精度が悪すぎることを意味する。ＢＳＭの位置精度が悪すぎるとマップマッチングが困難である。マップマッチングが困難なものに対して多くの粒子を割り当てる必要性は低いので、得点Ｇｉを低くするために、ＷＳＴＡＴＥを０．２という低い値に設定する。
【００７６】
図１３にＧＶＡＲを決定するテーブルの一例を示す。分散径は、１つの道路に散布されている粒子を全部含む円の直径を意味する。図１３に示す例では、分散径が１０ｍ以上であればＧＶＡＲを５とし、分散径が２ｍ以上１０ｍ未満であればＧＶＡＲを４とし、分散径が２ｍ未満であればＧＶＡＲを２としている。分散径が小さい場合、すでに、複数の粒子がある狭い範囲に収束していることを意味するので、今後、多くの粒子を割り当てる必要性は相対的に低い。そこで、分散径が小さいほどＧＶＡＲを小さい値にしている。
【００７７】
図１４にＧＤＩＳＴを決定するテーブルの一例を示す。図１４に示す例では、他車両２ｂの自車両２ａからの距離が５０ｍ未満であればＧＤＩＳＴを５とし、５０ｍ以上１００ｍ未満であればＧＤＩＳＴを４とし、分散径が１００ｍ以上であればＧＤＩＳＴを２とする。自車両２ａからの距離が遠いほど、精度よく他車両２ｂの位置を推定する必要性が低下する。そこで、自車両２ａからの距離が遠いほど、ＧＤＩＳＴを小さい値にしている。なお、自車両２ａと他車両２ｂの間の距離は、自車両２ａの位置と他車両２ｂの位置の相対関係を表している値の一つである。
【００７８】
図１５にＧＮＵＭＥＤＧＥを決定するテーブルの一例を示す。図１５に示す例では、粒子が散布されている道路ＩＤ数が３以上であればＧＮＵＭＥＤＧＥを３とし、粒子が散布されている道路ＩＤ数が２であればＧＮＵＭＥＤＧＥを２とし、粒子が散布されている道路ＩＤ数が１であればＧＮＵＭＥＤＧＥを１とする。粒子が散布されている道路ＩＤ数が少ないほど、すでに、複数の粒子が少ない道路に収束していることを意味するので、今後、多くの粒子を割り当てる必要性は相対的に低い。そこで、粒子が散布されている道路ＩＤ数が少ないほどＧＮＵＭＥＤＧＥを小さい値にしている。
【００７９】
図１６にＧＡＴＴＲを決定するテーブルの一例を示す。図１６に示す例では、粒子が散布されている道路の種別が高速道路であればＧＡＴＴＲを２とし、粒子が散布されている道路の種別がその他、すなわち一般道路などの高速道路以外の道路であればＧＡＴＴＲを１とする。なお、粒子が散布されている道路の種別が複数ある場合、高い側の得点のみを採用する。
【００８０】
高速道路は移動速度が速いので、自車両２ａまでの距離が近い場合と同様に考えることができる。そのため、粒子が散布されている道路の種別が高速道路である場合には、その他の道路種別よりもＧＡＴＴＲを高い値にしている。
【００８１】
Ｓ３３５では、ＷＴＣ、ＷＳＴＡＴＥ、ＧＶＡＲ、ＧＤＩＳＴ、ＧＮＵＭＥＤＧＥ、ＧＡＴＴＲを、それぞれ図９、図１１、図１３〜図１６に例示したようなテーブルを用いて決定し、決定した各値を式５に代入して、各他車両２ｂに対する得点Ｇｉを算出する。
【００８２】
Ｓ３３６では、各他車両２ｂに与える追加の粒子数Ｍｉ＿ａｄｄを設定する。そして、この追加の粒子数Ｍｉ＿ａｄｄを最小粒子数Ｍｍｉｎに加えて、各他車両２ｂに対する粒子数を決定する。このＳ３３６では、式６、式７を計算して追加の粒子数Ｍｉ＿ａｄｄを設定する。式６は、１得点当たり何個の粒子数を割り当てられるかを計算した式である。式７は、１得点あたりの粒子数に、各他車両２ｂが得た得点Ｇｉを乗じた値を、切り捨てにより整数値にする式である。
【００８３】
（式６）  Ｍｃｏｅｆ＝（Ｍａｄｄ＿ｍａｘ／ΣＧｉ）
【００８４】
（式７）  Ｍｉ＿ａｄｄ＝ｆｌｏｏｒ（Ｍｃｏｅｆ×Ｇｉ）
このようにして決定した、各他車両２ｂに対する粒子数は、位置を推定する他車両２ｂの得点Ｇｉを相対比較して決定していることになる。
【００８５】
Ｓ３３３の判断がＮＯであればＳ３３７に進む。Ｓ３３７では、Ｓ３３５と同じ処理を実行し、各他車両２ｂに対する得点Ｇｉを算出する。Ｓ３３３の判断がＮＯである場合には、すべての他車両２ｂに対して尤度を算出してリサンプリングを実行すると、すべての他車両２ｂに最小粒子数Ｍｍｉｎを割り当てることができない。
【００８６】
そこで、Ｓ３３８では、尤度算出を省略した時の粒子数設定処理を行う。Ｓ３３８では、図１７に示す処理を実行する。Ｓ３３８１では、Ｓ３３７で算出した得点Ｇｉが最も低かった他車両２ｂを選択する。
【００８７】
Ｓ３３８２では、Ｓ３３８１で選択した他車両２ｂについて、予測更新のみでの位置推定処理に要する処理時間Ｔｌｉを算出する。この処理時間Ｔｌｉは式８から算出する。式８において、Ｃｌは、予測更新のみでの位置推定において１つの粒子の位置を更新するための算出に必要な処理時間のうち、粒子数によらずに必要となる処理時間を意味する。Ｓｌは予測更新のみでの位置推定において１つの粒子の位置を更新するための算出に必要な処理時間のうち、粒子が１つ増えるごとに増加する処理時間を意味する。これらＣｌ、Ｓｌは事前に設定した値である。式８により算出される処理時間Ｔｌｉは、尤度計算およびリサンプリングを実行しないので、式３により算出される処理時間Ｔｉよりも短い時間になる。
【００８８】
（式８）  Ｔｌｉ＝Ｃｌ＋Ｓｌ×Ｍｉ
Ｓ３３８３では、Ｓ３３８２で処理時間Ｔｌｉを算出した他車両２ｂの得点Ｇｉを無限大にする。次にＳ３３８１を実行したときに、再度、この他車両２ｂが選択されないようにするためである。
【００８９】
Ｓ３３８４では、Ｓ３３８２で算出した処理時間ＴｌｉもＴｉとして扱って、式２により、総処理時間Ｔｎを再算出する。Ｓ３３８５では、Ｓ３３８４で算出した総処理時間Ｔｎが割り当て時間ＴＭＭよりも小さいか否かを判断する。この判断がＮＯであれば、総処理時間Ｔｎをさらに短くするためにＳ３３８１へ戻る。一方、Ｓ３３８５の判断がＹＥＳになればＳ３３８６へ進む。
【００９０】
Ｓ３３８６では、追加で割り当て可能な最大粒子数Ｍａｄｄ＿ｍａｘを算出する。Ｓ３３８６の処理はＳ３３４と同じであり、式４を用いてＭａｄｄ＿ｍａｘを算出する。ただし、ＴｎにはＳ３３８４で算出した値を用いる。
【００９１】
Ｓ３３８７では、各他車両２ｂに与える追加の粒子数Ｍｉ＿ａｄｄを設定し、この追加の粒子数Ｍｉ＿ａｄｄを最小粒子数Ｍｍｉｎに加えて、各他車両２ｂに対する粒子数を決定する。Ｓ３３８７の処理は、Ｓ３３６と同じであり、式６、式７からＭｉ＿ａｄｄを設定する。ただし、Ｍａｄｄ＿ｍａｘにはＳ３３８６で算出した値を用いる。図１７の処理が終了すると、図８の処理も終了する。図８の処理が終了したら、図６のＳ３４に進む。また、図６のＳ３２の判断がＮＯである場合もＳ３４に進む。
【００９２】
Ｓ３４では、これまでの処理により設定した各他車両２ｂに対する粒子数を、他車両マップマッチング部１１１に通知する。
【００９３】
［実施形態のまとめ］
以上、説明した本実施形態の他車両位置推定装置１００は、他車両２ｂの位置を道路上に推定するために、パーティクルフィルタを用いている。パーティクルフィルタは、粒子数を調整することができ、粒子数制御部１１２は、他車両２ｂの位置を推定するための総処理時間Ｔｎが割り当て時間ＴＭＭ以下になるように粒子数を制御する。これにより、処理時間の増加を抑制しつつ、他車両２ｂの位置を道路上に推定することができる。
【００９４】
また、他車両位置推定装置１００は、各他車両２ｂに割り当てる粒子数を、式５により算出した得点Ｇｉに基づいて決定している。式５に含まれるＷＴＣ、ＷＳＴＡＴＥ、ＧＶＡＲ、ＧＤＩＳＴ、ＧＮＵＭＥＤＧＥ、ＧＡＴＴＲは、自車両２ａの位置と他車両２ｂの位置の相対関係、粒子の散布状態、他車両２ｂの位置と道路との関係のいずれかをもとに定まる値である。自車両２ａの位置と他車両２ｂの位置の相対関係、粒子の散布状態、他車両２ｂの位置と道路との関係は、他車両２ｂの位置推定精度を決める指標となる。よって、式５により算出した得点Ｇｉに基づいて各他車両２ｂに割り当てる粒子数を決定することで、精度よく位置を推定する必要がある他車両２ｂに対する位置推定精度が低下することを抑制することができる。
【００９５】
また、粒子の数を動的に変化させることが可能になることから、位置を推定する他車両２ｂが増加する場合や、ある他車両２ｂが精度よく位置を推定する状況となった場合でも、総処理時間Ｔｎの増加を抑制することができる。
【００９６】
以上、実施形態を説明したが、開示した技術は上述の実施形態に限定されるものではなく、次の変形例も開示した範囲に含まれ、さらに、下記以外にも要旨を逸脱しない範囲内で種々変更して実施できる。
【００９７】
＜変形例１＞
ＢＳＭには他車両２ｂの位置だけではなく、他車両２ｂの進行方向、進行速度、加速度、ヨーレートが含まれている。これらを総称して走行状態とする。実施形態では、ＢＳＭに含まれている他車両２ｂの位置に基づいて他車両２ｂの位置を道路地図データ上の道路上に推定していた。しかし、他車両マップマッチング部１１１は、ＢＳＭに含まれている走行状態の１つ以上に基づいて他車両２ｂの位置を道路地図データの道路上に推定してもよい。
【００９８】
この場合、式１のＺを、ＢＳＭに含まれている走行状態とする。また、Ｙは、予測更新後の粒子の運動状態とする。粒子の運動状態は、Ｚとして用いる走行状態に対応するパラメータ、すなわち、粒子の位置、進行方向、進行速度、加速度、ヨーレートなどである。
【００９９】
このパラメータを求めるために、Ｓ１２において粒子の運動状態を予測更新する。粒子の運動状態は種々の方法で予測更新することができる。たとえば、速度は加速度の時間積分することで更新することができる。反対に、速度を基準として加速度を、速度の微分値として更新することもできる。
【０１００】
なお、実施形態で説明したように、粒子の位置を更新する際には、道路の進行方向を用いた。位置以外の粒子の運動状態の予測更新にも、道路地図データが持つ情報を用いることができる。たとえば、粒子の進行方向として道路の進行方向を用いることができる。また、粒子の速度として道路の制限速度を用いることができる。また、粒子の加速度を、路面傾斜を考慮して算出することができる。また、場所別の交通流から粒子の速度、加速度を算出することもできる。交通流は、道路を走行する車両の代表的な速度を意味する。交通流は、標準値として道路地図データが持ってもよいし、現在値を車両外部から通信により取得してもよい。また、道路の形状と粒子の速度からヨーレートを算出することもできる。
【０１０１】
＜変形例２＞
実施形態では、粒子を道路上に散布していた。しかし、一部の粒子を道路外領域、たとえば、駐車場、空き地、レース場、路側などに散布し、道路外に他車両２ｂが道路外に存在するか否かを判別するようにしてもよい。
【０１０２】
なお、変形例１で説明したように、式１のＺ、Ｙを車両運動情報に含まれる複数のパラメータとして式１を計算することができるが、変形例２の場合において、式１の計算に用いるパラメータに進行方位は含めないようにする。道路とは異なり、道路外領域は進行方向が地図から定まらないからである。あるいは、進行方位だけ０にするのなど、式１のＺ、Ｙの特定の要素について０として計算結果に影響がないようにしてもよい。
【０１０３】
＜変形例３＞
式５に示した補正係数Ｗおよび得点Ｇのいずれか１つ以上を省略してもよい。また、補正係数Ｗと得点Ｇとを入れ替えてもよい。
【０１０４】
＜変形例４＞
また、補正係数Ｗあるいは得点Ｇとして、実施形態で説明したもの以外を用いてもよい。たとえば、他車両２ｂの実車速から定まる補正係数ＷＶを式５に追加してもよい。他車両２ｂの実車速は、他車両２から無線通信により取得する。この補正係数ＷＶは、たとえば、他車両２ｂの実車速が１０ｋｍ／ｈ未満であれば０．１、それ以上であれば１とする。実車速が１０ｋｍ／ｈ未満であれば他車両２ｂは停車あるいはそれに近い状態であると判断できる。このような実車速であれば、自車両２ａの走行に支障を与えにくいので、割り当てる粒子数が相対的に少なくてよい。そこで、実車速が１０ｋｍ／ｈ未満であれば補正係数ＷＶを相対的に小さい値にするのである。
【０１０５】
＜変形例５＞
他車両２ｂの位置が不定になった場合、その他車両２ｂについてはマップマッチング処理を中止してもよい。
【０１０６】
＜変形例６＞
他車両位置推定装置１００は、車両２に固定的に搭載されている必要はない。可搬型となっており、車両２に持ち込まれて使用されるようになっていてもよい。
【符号の説明】
【０１０７】
２：車両    １００：他車両位置推定装置    １０１：通信部    １０２：走行情報取得部    １０３：道路地図データ記憶部    １１０：制御部    １１１：他車両マップマッチング部    １１２：粒子数制御部    １１３：対象判定部    Ｓ１２：更新部    Ｓ１４：尤度算出部    Ｓ１６：位置推定部
【図１】
2019168923.tif 000004
【図２】
2019168923.tif 000005
【図３】
2019168923.tif 000006
【図４】
2019168923.tif 000007
【図５】
2019168923.tif 000008
【図６】
2019168923.tif 000009
【図７】
2019168923.tif 000010
【図８】
2019168923.tif 000011
【図９】
2019168923.tif 000012
【図１０】
2019168923.tif 000013
【図１１】
2019168923.tif 000014
【図１２】
2019168923.tif 000015
【図１３】
2019168923.tif 000016
【図１４】
2019168923.tif 000017
【図１５】
2019168923.tif 000018
【図１６】
2019168923.tif 000019
【図１７】
2019168923.tif 000020