(58)【調査した分野】(Int.Cl.,DB名)
前記推定部は、前記時間差算出部により算出された時間差の各値の最大公約数を算出する最大公約数算出部を備え、前記算出された時間差の最大公約数である旨の条件が成立しない場合、前記最大公約数算出部によって算出された最大公約数を前記サイクル長とする請求項6記載の信号機のサイクル長推定装置。
【発明の概要】
【発明が解決しようとする課題】
【0004】
ただし、上記装置では、信号機の表示色が毎回青になるタイミングで発進する車両があることを前提としているため、交通量の少ない交差点においては、サイクル長を推定することができない。
【0005】
本発明は、そうした実情に鑑みてなされたものであり、その目的は、交通量が少ない交差点であっても、信号機のサイクル長を推定することができる信号機のサイクル長推定装置を提供することにある。
【課題を解決するための手段】
【0006】
以下、上記課題を解決するための手段およびその作用効果について記載する。
なお、特許請求の範囲に記載した請求項1は、技術的思想1+2に対応し、請求項2は、技術的思想1+3に対応し、請求項3は、技術的思想1+6に対応し、新請求項4は、技術的思想1+7に対応し、請求項5は、技術的思想1+8に対応し、請求項6は、技術的思想4にかかる事項を有した従属項であり、請求項7は、技術的思想5にかかる事項を有した従属項である。
技術的思想1:信号機が設けられた交差点を対象交差点とし、1の対象交差点において停止した車両が発進するタイミング情報を取得するタイミング取得部と、前記タイミング取得部によって取得されたタイミング情報に基づき、前記発進するタイミングのうち互いに隣接するタイミング同士の間の時間差を算出する時間差算出部と、前記時間差算出部によって算出された時間差についての複数の値に基づき、前記対象交差点に設けられた信号機のサイクル長を推定する推定部とを備え、前記発進するタイミングは、前記1の対象交差点における複数の発進方向のそれぞれに発進するタイミングを含む信号機のサイクル長推定装置。
【0007】
1の交差点に設けられた複数の信号機は、互いのサイクル長が同一である。この点に鑑み、上記装置では、発進するタイミング間の時間差に基づきサイクル長を推定するに際し、複数の発進方向のそれぞれに発進するタイミングを用いる。換言すれば、1の交差点に設けられた2つ以上の信号機の表示色のそれぞれが青に切り替わることによる発進タイミングを用いる。これにより、サイクル長の推定に用いる発進タイミング間のサンプリング数を増加させることができ、ひいては、交通量が少ない交差点であっても、サイクル長を推定することが可能となる。
【0008】
技術的思想2:前記時間差算出部によって算出された時間差について、互いに同一の値のそれぞれの相対的なサンプリング数の大小情報を生成する相対頻度生成部を備え、前記推定部は、前記時間差算出部によって算出された時間差のうち特定の値が、最もサンプリング数の多い値であることを条件に、前記特定の値を前記サイクル長と推定する技術的思想1記載の信号機のサイクル長推定装置。
【0009】
過度に交通量が少ない交差点でない限り、上記時間差のうちサンプリング数が最も多い値は、交差点に設けられた信号機のサイクル長に近似する傾向が発明者によって見出された。上記装置では、この点に鑑み、特定の値のサンプリング数が最も多い値であることを条件に、特定の値をサイクル長と推定する。
【0010】
技術的思想3:前記推定部は、前記時間差算出部によって算出された時間差のうち特定の値が、最小値であることを条件に、前記特定の値を前記サイクル長と推定する技術的思想1記載の信号機のサイクル長推定装置。
【0011】
時間差のうち、最小値でないものは、サイクル長の倍数であると考えられる。上記装置では、この点に鑑み、特定の値が最小値であることを条件に、特定の値をサイクル長と推定する。
【0012】
技術的思想4:前記推定部は、前記特定の値が、前記算出された時間差のそれぞれの値の最大公約数であることを条件に、前記サイクル長と推定する技術的思想2または3記載の信号機のサイクル長推定装置。
【0013】
隣接する発進タイミング間の時間差は、サイクル長またはその整数倍となると考えられる。上記装置では、この点に鑑み、特定の値をサイクル長と推定する条件を、特定の値が算出された時間差の最大公約数であることとすることで、特定の値をサイクル長と推定する精度を向上させることができる。
【0014】
技術的思想5:前記推定部は、前記時間差算出部により算出された時間差の各値の最大公約数を算出する最大公約数算出部を備え、前記算出された時間差の最大公約数である旨の条件が成立しない場合、前記最大公約数算出部によって算出された最大公約数を前記サイクル長とする技術的思想4記載の信号機のサイクル長推定装置。
【0015】
上記装置では、最大公約数算出部を備えることで、特定の値をサイクル長と推定することが適切でないと考えられる場合に、特定の値よりも適切な値をサイクル長と推定することができる。
【0016】
技術的思想6:前記推定部は、前記時間差算出部により算出された時間差の各値の最大公約数を算出する最大公約数算出部を備え、前記最大公約数算出部によって算出された最大公約数を前記サイクル長とする技術的思想1記載の信号機のサイクル長推定装置。
【0017】
隣接する発進タイミング間の時間差は、サイクル長またはその整数倍となると考えられる。このため、時間差の各値の最大公約数は、サイクル長となる可能性が高い。上記装置では、この点に鑑み、最大公約数算出部を備えることで、サイクル長を高精度に推定することができる。
【0018】
技術的思想7:前記時間差算出部は、前記タイミング同士の間の時間差を算出する生データ生成部と、前記生データ生成部によって生成された時間差のうち互いの差が所定以下のものに基づき、代表値を算出する代表値算出処理部を備え、前記代表値算出処理部によって算出された代表値を前記算出された時間差として出力する技術的思想1〜6のいずれか1項に記載の信号機のサイクル長推定装置。
【0019】
隣接する発進タイミング間の時間差は、信号機の表示色が青に切り替わってから再度青に切り替わるまでの時間であるサイクル長の整数倍に応じた値となると考えられるものの、信号機の表示色が青に切り替わるタイミングに対する発進タイミングの遅延時間には、ばらつきが生じる。このため、時間差は、サイクル長の整数倍付近で分布する。上記装置では、この点に鑑み、代表値算出部によって代表値を定めることで、サイクル長を特定の値に推定することが容易となる。
【0020】
技術的思想8:前記タイミング取得部は、進行方向を同一とする複数の車両が前記交差点において停止状態から発進する場合、先頭車両の発進タイミングを選択的に取得する技術的思想1〜7のいずれか1項に記載の信号機のサイクル長推定装置。
【0021】
進行方向を同一とする複数の車両が交差点において停止状態から発進する場合、先頭車両の発進タイミングよりも2台目以降の車両の発進タイミングが遅れ、先頭の車両の発進タイミングが、信号機の表示色が青に切り替わるタイミングに最も近似する傾向がある。上記装置では、この点に鑑み、先頭車両の発進タイミングを選択的に取得することで、青に切り替わるタイミングについての精度のよい情報を取得することができる。
【発明を実施するための形態】
【0023】
<第1の実施形態>
以下、信号機のサイクル長推定装置の第1の実施形態について図面を参照しつつ説明する。
【0024】
図1に、本実施形態にかかるシステム構成を示す。図示されるシステムは、道路上を走行する車両PCと、センター20とが通信をするものである。
ここで、センター20と通信可能な車両PCは、処理装置10と、通信機12とを備えている。ここで、処理装置10は、各種演算処理を実行する電子機器である。処理装置10としては、ナビゲーションシステム等を備える電子機器を想定している。通信機12は、センター20の備える通信部22と無線通信をする電子機器である。
【0025】
一方、センター20は、通信機12と無線通信を行う通信部22と、各種演算を行う演算部24と、地図・交差点データベース26と、車両情報データベース28とを備えている。
【0026】
ここで、地図・交差点データベース26は、交差点情報を含む道路地図情報を記憶したものである。車両情報データベース28は、車両PCから送信され、通信部22により受信された車両PCに関する情報を記憶したものである。演算部24は、地図・交差点データベース26および車両情報データベース28に記憶された情報に基づき、信号サイクル長を推定する。
【0027】
以下、信号サイクル長の推定処理について詳述する。
図2(a)は、車両PCの走行方向に、信号機TLA〜TLFのそれぞれが設けられた交差点が出現する例を示している。ただし、車両PCが直進する際に参照すべきは、信号機TLB,TLD,TLFである。たとえば交差点CL1において、信号機TLAは、
図2に示した車両PCとは反対方向を走行する車両が交差点CL1に差し掛かる際に参照すべきものである。
【0028】
車両PCは、道路を走行するに際し、走行に関する情報をセンター20に送信する。ここで、走行に関する情報は、車両PCの走行速度(車速Vpc)、位置情報、リンク情報(図中、リンクナンバーNLaを例示)、車速Vpcや位置情報、リンク情報に紐付けられた時刻情報(タイムスタンプ)、車両PCの走行予定経路を示すルート情報である。ただし、ルート情報は、ナビゲーションシステムを利用して車両PCのドライバが予め目的地を設定している場合に限り得られる情報であり、目的地の設定がなされていない場合には、走行に関する情報にルート情報は含まれない。なお、走行に関する情報としては、他に、ブレーキ操作の時系列に関する情報(ブレーキ情報)や、アクセル操作の時系列に関する情報(アクセル情報)を含めてもよい。
【0029】
上記位置情報は、車両PCの位置を特定するための情報であり、具体的には、GPS衛星40からの信号を受信することで得られる情報(緯度情報および経度情報)である。また、リンク情報は、進行方向を特定するための情報であり、具体的には、処理装置10内蔵のナビゲーションシステムが保持するリンクナンバーのうち該当するものが特定された情報である。
図2(b)に、リンク情報を模式的に示す。図示されるように、ナビゲーションシステムは、交差点で区分された各道路についてリンクナンバーNLa1〜NLa4,NLb1〜NLb4等が付与されている。ここで、リンクナンバーNLa1〜NLa4は、信号機TLBが設けられた交差点側から信号機TLFが設けられた交差点側へと進む方向を走行方向とする車線を指定する。一方、リンクナンバーNLb1〜NLb4は、信号機TLEが設けられた交差点側から信号機TLAが設けられた交差点側へと進む方向を走行方向とする車線を指定する。
【0030】
処理装置10内蔵のナビゲーションシステムでは、上記位置情報と、ナビゲーションシステム内に保持された道路情報とに基づき、リンクナンバーを特定する。具体的には、ナビゲーションシステムは、たとえば位置情報に基づき、車両PCが信号機TLAが設けられた交差点の手前に位置することが判明した場合、リンクナンバーNLa1,NLb1を正しいナンバーの候補に絞り込む。次に位置情報の変化に基づき、車両の進行方向を特定することで、
図2(a)に示した例ではリンクナンバーNLa1を特定する。なお、車両の進行方向に代えて、ルート情報を用いてリンクナンバーを特定してもよい。もっとも、ルート情報は、リンク情報を用いることなく車両の走行方向を特定する情報として利用することもできる。
【0031】
センター20では、上記車両PCの走行に関する情報に基づき、車両情報データベース28を生成し、これに基づき、各交差点の信号サイクル長を推定する。
図3に、信号サイクル長を推定するためのデータである時間差データの集計処理の手順を示す。この処理は、演算部24によって実行される。
【0032】
図3に示す一連の処理において、演算部24は、上記車両情報データベースに基づき、信号サイクル長の推定対象となる対象交差点について、特定の進行方向に走行する車両PCの発進時刻のサンプリング値を取得する(S10)。たとえば、
図2(a)に示す交差点CL1を対象交差点とする場合、交差点CL1において信号機TLA,TLB,TLa,TLbのいずれか特定のものを参照すべき車両について、交差点CL1の発進時刻のサンプリング値を取得する。ここで、発進時刻のサンプリング値は、車両PCの走行に関する情報に基づき特定される。すなわち、交差点CL1の手前で車速Vpcがゼロとなることで、車両PCが交差点CL1で停止したと判断し、その後、車速Vpcがゼロよりも大きい値となるタイミングを発進時刻に特定することができる。なお、車両PCの停止や発進の判断処理は、車速Vpcのみならず、ブレーキ情報やアクセル情報を入力として実行してもよい。この場合、たとえば、車速Vpcがゼロとなることとブレーキが踏まれていることとの論理積が真となることで車両PCが停止したと判断すればよい。またたとえば、アクセルが踏まれ車速Vpcがゼロからゼロよりも大きい値に変化する場合に車両PCが発進していると判断すればよい。
【0033】
ここで、1つの交差点の手前で同一の進行方向に走行する車両が複数台停止している場合、本実施形態では、先頭の車両のみ発進時刻を取得することとする。これは、信号機の表示色が赤から青に切り替わるタイミングに対する2台目以降の車両が発進するタイミングの遅延時間よりも、同切り替わるタイミングに対する先頭車両の発進タイミングの遅延時間の方が、変動量が少ないと考えられるためである。なお、先頭車両は、同一時刻において同一の交差点の付近で停止している車両の中から、位置情報に基づき特定することができる。
【0034】
次に、演算部24は、特定の進行方向に走行する車両について、隣接する発進時刻間の間隔(発進間隔)を算出する処理を実行する(S12)。
図4に、この処理の詳細を示す。
【0035】
図4に示す一連の処理において、演算部24は、まず、隣接する発進時刻間の時間差x(i)を算出する算出処理を実行する(S20)。すなわち、たとえばある特定の日にちにおけるサンプリング値に「12時19分」と「12時21分」とが含まれ、これら2つのサンプリング値間にはサンプリング値が存在しない場合、時間差が「120s」と算出される。
【0036】
次に演算部24は、時間差x(i)同士の差が所定値(たとえば、2〜5s)以下となるグループにグループ分けする(S22)。この処理は、時間差x(i)が、サイクル長に対応するもののみならず、サイクル長の倍数に対応するものとなりうることに鑑み、各グループに含まれる時間差x(i)を、サイクル長についての互いに同一の倍数に対応するもののみとするためのものである。たとえば
図2(a)における交差点CL1において、信号機TLBが赤であるために停止した車両が、信号機TLBの表示色が青に切り替わることで発進した後、信号機TLBが再度赤になってもこれにより停止する車両が存在せず、その後、信号機TLBの表示色が青になった後赤になっているときに停止する車両が現れる場合を考える。この場合、隣接する発進時刻の時間差x(i)は、信号機の表示色が青から再度青に切り替わる時間(サイクル長)の2倍程度となる。このように、時間差x(i)は、サイクル長に様々な整数を乗算したものに対応したものとなっているため、これらをグループ分けする。
【0037】
この処理は、中央値に対して上下に上記所定値だけ離間した値を境界とする領域、および中央値を整数倍したものに対して上下に上記所定値だけ離間した値を境界とする領域のそれぞれに入るサンプリング値の数が最も多くなるように中央値を選択することで実行することができる。すなわち、この中央値によって定まる各領域に入るサンプリング値を、同一のグループとすることができる。なお、この処理において、いずれの領域にも入らないサンプリング値(外れ値)は除去される。
【0038】
続いて演算部24は、各グループの代表値を算出する(S24)。本実施形態では、代表値を、同一グループ内のサンプリング値の単純移動平均値とする。そして、演算部24は、算出した代表値のそれぞれを、発進間隔Xj(j=1,2,3,…)とし(S26)、
図3のステップS12の処理を完了する。これにより、ステップS22において特定されたグループの数だけ、発進間隔Xjが算出されたこととなる。
【0039】
次に演算部24は、互いに相違する発進間隔Xjのそれぞれと、サンプリング数とを対応付けるヒストグラムを生成する(S14)。ここで、発進間隔Xjのそれぞれのサンプリング数は、発進間隔Xjの算出に用いた時間差x(i)のサンプリング数とする。そして、演算部24は、発進方向の全てについて、ステップS14において生成したヒストグラムを合成することで、全方向でのヒストグラムを生成する(S16)。たとえば
図2(a)に示した交差点CL1を発進する場合、信号機TLAを参照する車両に関するヒストグラムと、信号機TLBを参照する車両に関するヒストグラムと、信号機TLaを参照する車両に関するヒストグラムと、信号機TLbを参照する車両に関するヒストグラムとを合成する。
【0040】
ここで、各方向のヒストグラム中の発進間隔同士に相違するものがあって且つ、それらの差が所定値(たとえば2〜5s)以下であるものについては、同一グループの発進間隔と見なし、移動平均処理によって合成後の発進間隔を算出する。たとえば、1の方向において、発進間隔「119s」のサンプリング数が「M」個であり、別の方向において、発進間隔「120s」のサンプリング数が「L」個である場合、ステップS16のヒストグラムにおいては、発進間隔が「(M・119+L・120)/(M+L)」のサンプリング数を「M+N」とする。そして、演算部24は、ステップS16の処理が完了する場合、
図3に示す一連の処理を一旦終了する。
【0041】
ここで、全方向のヒストグラムを合成するねらいについて説明する。
図5(a)に示すように、特定の交差点において、特定の方向(進行方向1)に発進する場合を考える。ここで、この交差点の信号のサイクル長は、「120s」であるとする。交通量の少ない交差点の場合、
図5(b)に示すように、サイクル長となる発進間隔は生じることなく、その倍数のみが発進間隔となるおそれがある。
【0042】
これに対し、
図6に示すように、進行方向1、進行方向2、進行方向3、および進行方向4の全てのヒストグラムを合成するなら、発進間隔Xjにサイクル長に対応したものが出現する蓋然性を高めることができる。
【0043】
図7に、信号サイクル長の推定処理の手順を示す。この処理は、演算部24によって実行される。
この一連の処理において、演算部24は、まず、
図3のステップS16の処理によって生成されたヒストグラムのうち、サンプリング数が最大となる発進間隔を抽出する(S30)。この処理は、サンプリング数が最大となる発進間隔が、サイクル長に対応した値となる蓋然性が高いことに鑑みたものである。ちなみに、
図6には、サンプリング数が最大となる発進間隔がサイクル長と等しい「120s」となる例を模式的に示した。
【0044】
続いて演算部24は、サンプリング数が最大の発進間隔が、
図3のステップS16において生成されたヒストグラム中の最小の発進間隔であるか否かを判断する(S32)。この処理は、サンプリング数が最大の発進間隔をサイクル長とする条件が成立するか否かを判断するためのものである。すなわち、サイクル長よりも短い発進間隔は存在しないと考えられるため、サンプリング数が最大の発進間隔をサイクル長と推定するうえでは、これよりも発進間隔が短いものが存在しないことを条件とすることが妥当である。
【0045】
演算部24は、サンプリング数が最大の発進間隔がヒストグラム中の最小の発進間隔であると判断する場合(S32:YES)、サンプリング数最大の発進間隔が、
図3のステップS16の処理によって生成されたヒストグラム中の発進間隔Xj(j=1,2,3,…)の最大公約数となっているか否かを判断する(S34)。この処理は、サンプリング数が最大の発進間隔をサイクル長とする条件が成立するか否かを判断するためのものである。すなわち、ヒストグラム中の発進間隔Xjは、全てサイクル長の倍数となっているはずであるため、サンプリング数が最大の発進間隔をサイクル長と推定するうえでは、サンプリング数が最大の発進間隔がヒストグラム中の全ての発進間隔Xjの最大公約数であることを条件とすることが妥当である。なお、ここで最大公約数であると判断する条件は、ヒストグラム中の発進間隔のそれぞれに、サンプリング数が最大の発進間隔の倍数が一致する条件よりも緩い条件とする。これは、信号機TLAの表示色が赤から青に切り替わるタイミングに対して車両PCの発進タイミングには遅延時間が生じ、この遅延時間は、ユーザの運転性向や周囲の状況に応じて変動しうることに鑑みたものである。すなわち、遅延時間が変動するものである以上、
図3の処理によって算出される発進間隔と、サイクル長の倍数との間にはずれが生じうる。このため、本実施形態では、サンプリング数が最大の発進間隔の倍数と、ヒストグラム中の発進間隔との差が所定値(たとえば、2〜5s)以下である場合、サンプリング数最大の発進間隔がヒストグラム中の発進間隔の最大公約数であると判断する。
【0046】
演算部24は、サンプリング数最大の発進間隔がヒストグラム中の発進間隔の最大公約数であると判断する場合(S34:YES)、サンプリング数最大の発進間隔をサイクル長と推定する(S36)。
【0047】
一方、演算部24は、サンプリング数最大の発進間隔がヒストグラム中の最小発進間隔ではないと判断する場合(S32:NO)、最小発進間隔が最大公約数であるか否かを判断する(S38)。この処理は、最小発進間隔をサイクル長とする条件が成立するか否かを判断するためのものである。なお、ここで、最大公約数であると判断する手法は、ステップS34の処理と同様である。そして演算部24は、最小発進間隔が最大公約数であると判断する場合(S38:YES)、最小発進間隔をサイクル長と推定する(S40)。
【0048】
これに対し、演算部24は、最小発進間隔が最大公約数でないと判断する場合(S38:NO)、
図3のステップS16において生成されたヒストグラム中の全発進間隔Xj(J=1,2,3,…)の最大公約数を算出する(S42)。
図8に、この処理の手順を示す。
【0049】
この一連の処理において、演算部24は、まず、ヒストグラム中の発進間隔X1,X2,…のうちの隣接するもの同士の時間差ΔXkを算出する(S50)。これについて、
図9を用いて具体的に説明する。
図9は、
図3のステップS16において生成されたヒストグラムの例である。ここでは、全方向の合成後の発進間隔X1,X2,…,X7が、「239,359,480,720,839,1080,1200」の7個となる場合を例示した。ステップS50の処理においては、時間差ΔX1として発進間隔X1と「0」との差を算出し、時間差ΔX2として発進間隔X2と発進間隔X1との差を算出するというように、全部で7個の時間差ΔX1〜ΔX7を算出する。これら時間差ΔX1〜ΔX7は、最大公約数の候補として算出されるものである。なお、時間差ΔX1については、上述したように、例外的に「0」との差を算出する。
【0050】
次に、演算部24は、最大公約数として、個数最大の時間差ΔXkを最大公約数と推定する(S52)。すなわち、
図9に示した例では、時間差ΔXkのうち、値が「120」となるものが2個あり、最大の個数を占めるため、「120s」を最大公約数と推定する。演算部24は、ステップS52の処理を完了することで、
図7のステップS42の処理を完了する。そして演算部24は、ステップS42において算出された最大公約数をサイクル長と推定する(S44)。なお、演算部24は、ステップ36,S40,S44の処理が完了する場合、
図7に示す一連の処理を一旦終了する。
【0051】
ここで、
図10を用いて、本実施形態の作用について説明する。
図10(a)は、
図3のステップS16によって生成されたヒストグラムにおいて、最小の発進間隔(ここでは、120sを例示)が最大のサンプリング数となる例を示す。この場合、演算部24は、
図7のステップS32において肯定判断するため、ステップS34の条件を満たすなら、ステップS36において、この発進間隔をサイクル長と推定する。
【0052】
図10(b)は、最小の発進間隔(ここでは、120sを例示)のサンプリング数が最大とならない例を示す。この場合、演算部24は、ステップS38の条件を満たすなら、ステップS40において、最小の発進間隔をサイクル長と推定する。
【0053】
図10(c)は、ステップS38において演算部24が否定判断することとなる例を示す。この場合、演算部24は、
図8のステップS52の処理によって最大公約数を算出し、これをサイクル長と推定する。
【0054】
こうして推定されたサイクル長は、センター20から車両PCに提供するサービスなどに用いられる。このサービスとしては、たとえば、信号機の表示色が青になるタイミングを予測し、予測を提供するものがある。青となるタイミングの予測結果を提供する具体的なサービスとしては、たとえば、交差点で停止している車両に対し、青に切り替わるタイミングにおいて信号機を見るように注意を喚起したり、青に切り替わるタイミングを過ぎても停車している場合に、注意を喚起したりするものが考えられる。
【0055】
以上説明した本実施形態によれば、以下に記載する効果が得られるようになる。
(1)サイクル長の推定対象となる交差点における発進タイミングについての隣接するサンプリング値同士の時間差を、発進方向全てで合成した(
図3のステップS16)。これにより、サイクル長の推定に用いる発進タイミング間の時間差のサンプリング数を増加させることができ、ひいては、交通量が少ない交差点であっても、サイクル長を推定することが可能となる。
【0056】
(2)
図3のステップS16の処理によって生成されたヒストグラム中の発進間隔のうちの特定の値が、サンプリング数が最大となることを条件に、サイクル長と推定した(S36)。ここで、過度に交通量が少ない交差点でない限り、上記発進間隔のうちサンプリング数が最も多い値は、交差点に設けられた信号機のサイクル長に近似すると考えられる。このため、サンプリング数が最大となるものをサイクル長の候補とすることで、サイクル長を適切に推定することができる。
【0057】
(3)
図3のステップS16の処理によって生成されたヒストグラム中の発進間隔のうちの特定の値が、最小値であることを条件に、サイクル長と推定した(S40)。ここで、上記発進間隔のうち、最小値でないものは、サイクル長の倍数に対応すると考えられる。このため、最小値をサイクル長の候補とすることで、サイクル長を適切に推定することができる。
【0058】
(4)
図3のステップS16の処理によって生成されたヒストグラム中の発進間隔のうちの特定の値が、全ての発進間隔の最大公約数であることを条件に、サイクル長と推定した(S36,S40)。これにより、発進間隔の全てがサイクル長の整数倍になることに鑑み、サイクル長の推定精度を向上させることができる。
【0059】
(5)最小の発進間隔がサイクル長でないと考えられる場合(S38:NO)、発進間隔全ての最大公約数をサイクル長とした(S44)。これにより、発進間隔のサンプリング値の中に、サイクル長に対応するものがない場合であっても、サイクル長を推定することができる。
【0060】
(6)発進間隔Xjを、時間差x(i)のサンプリング値の移動平均処理によって算出した。これにより、サイクル長の同一の倍数に対応する時間差同士にばらつきが生じたとしても、サイクル長の所定数倍に対応する発進間隔Xjを一義的に定めることができる。
【0061】
(7)同一の交差点に停止していた複数の車両が発進する場合、先頭車両の発進タイミングを選択的に用いて、発進間隔Xjを算出した(
図3のステップS10)。これにより、青に切り替わるタイミングについての精度のよい情報に基づき、発進間隔Xjを算出することができる。
【0062】
<第2の実施形態>
以下、第2の実施形態について、第1の実施形態との相違点を中心に、図面を参照しつつ説明する。
【0063】
本実施形態では、
図7のステップS42の処理を、
図8の処理に代えて、
図11の処理とする。なお、
図11において、
図8に示した処理に対応するものについては、便宜上、同一のステップ番号を付している。
【0064】
図11に示す処理において、演算部24は、ステップS50の処理が完了する場合、
図3のステップS16の処理によって生成されたヒストグラム中の発進間隔を入力とし、最小2乗法によって、最大公約数を算出する(S52a)。すなわち、発進間隔X1,X2,X3,…のそれぞれと、変数Δの整数倍の値(n1・Δ,n2・Δ,n3・Δ,…)のそれぞれとの差の2乗の和を最小とする変数Δを、最大公約数とする。ここで、整数n1,n2,n3,…は、様々な値をランダムに試してみればよい。ただし、「X1<X2<X3<…」の関係があるなら、「n1<n2<n3<…」の条件を付与することが演算負荷の低減に役立つ。
【0065】
<技術的思想と実施形態との対応>
以下、上記「課題を解決するための手段」に記載された技術的思想と、実施形態との代表的な対応関係を記載する。
【0066】
[技術的思想1:タイミング取得部…S10、時間差算出部…S12、推定部…
図7の処理、複数の発進方向…S16および
図6参照][技術的思想2:相対頻度生成部…S14、S16、最もサンプリング数が多い値である旨の条件…S32][技術的思想3:S32,S38の処理][技術的思想4:S34,S38の処理][技術的思想5:最大公約数算出部…S42,S44][技術的思想6:最大公約数算出部…S42,S44][技術的思想7:生データ生成部…S20、代表値算出処理部…S24][技術的思想8:S10の処理]
<その他の実施形態>
なお、上記各実施形態は、以下のように変更して実施してもよい。
【0067】
・「サンプリング数が最大の発進間隔Xjをサイクル長と推定する処理について」
図7に示した処理において、サンプリング数が最大となる発進間隔を抽出すると(S30)、ステップS32の処理に移行することなく、直ちに、ステップS34の処理に移行してもよい。
【0068】
また、これにも限らず、たとえば、ある交差点について、サイクル長として想定できる値の下限値の2倍よりも低い規定値(たとえば、1.5倍の値)を定めておき、サンプリング数が最大となる発進間隔が上記規定値以下である場合、ステップS34の処理を実行することなく、これをサイクル長と推定してもよい。
【0069】
またたとえば、ステップS34の処理の後に、サンプリング数が最も多い発進間隔を補正することで最終的なサイクル長を算出してもよい。これはたとえば、
図11のステップS52aの処理と同様の最小2乗法を用いて行うことができる。すなわち、サンプリング数が最も多い発進間隔と、この発進間隔との差が所定値(たとえば、2〜5s)以下となるいくつかの値との中から、最小2乗法により、最もサイクル長に近いと想定される値を割り出し、これがステップS30の処理によって抽出された値と相違する場合、割り出された値を補正後の値とすればよい。
【0070】
・「発進間隔Xjの最小値をサイクル長と推定する処理について」
たとえば、発進間隔Xjが最小となるもののサンプリング数に下限値を設けておき、サンプリング数が下限値以上であることを、ステップS38の処理を実行する条件としてもよい。この際、たとえば、
図7の処理において、ステップS30〜S36の処理を削除してもよい。
【0071】
たとえば、ある交差点について、サイクル長として想定できる値の下限値の2倍よりも低い規定値(たとえば、1.5倍の値)を定めておき、発進間隔Xjの最小値が上記規定値以下である場合、ステップS38の処理を実行することなく、これをサイクル長と推定してもよい。
【0072】
またたとえば、ステップS38の処理の後に、発進間隔の最小値を補正することで最終的なサイクル長を算出してもよい。これはたとえば、
図11のステップS52aの処理と同様の最小2乗法を用いて行うことができる。すなわち、発進間隔の最小値と、最小値との差が所定値(たとえば、2〜5s)以下となるいくつかの値との中から、最小2乗法により、最もサイクル長に近いと想定される値を割り出し、これが最小値と相違する場合、割り出された値を補正後の値とすればよい。
【0073】
・「最大公約数算出部について」
たとえば、
図8のステップS52の処理に代えて、時間差ΔXkを算出することとなった発進間隔Xk,Xk−1のそれぞれのサンプリング数の平均値を時間差ΔXkを評価した定量値(評価点)とし、時間差ΔXkのなかで、評価点が最も高い値を最大公約数としてもよい。ここで、時間差ΔXkの中に同一の値がある場合、その値の評価点は、同一の値となるそれぞれの時間差ΔXkのそれぞれの評価点の合計値とすればよい。
【0074】
・「代表値算出処理部について」
上記実施形態では、時間差x(i)同士の差が所定値以下となるものの単純移動平均処理によって、代表値を算出したがこれに限らない。たとえば、
図4に例示した処理によって、ある程度のサンプリング値を算出した後は、ステップS22において外れ値を除去する処理を停止し、都度算出される時間差x(i)について、最も近い代表値との加重移動平均処理を施したものによって、代表値を更新してもよい。ここで、都度算出される時間差x(i)の重み係数は、代表値の重み係数よりも十分小さくする。
【0075】
移動平均処理によって代表値を算出するものに限らない。たとえば、時間差x(i)同士の差が所定値以下となるグループ内で、最もサンプリング数の多い値を代表値とするものであってもよい。
【0076】
・「相対頻度生成部について」
発進間隔Xj毎に、サンプリング数を関連づける処理(S14,S16)に限らない。たとえば、各発進間隔Xjについて、全発進間隔Xjに対する割合(百分率)を、相対的なサンプリング数の大小情報として生成するものであってもよい。
【0077】
・「タイミング取得部について」
交差点に同一方向に発進する複数の車両が停止している場合、先頭車両の発進タイミングを用いるものに限らない。たとえば、2台目以降の車両の発進タイミングについては、適宜補正を加えたものを発進タイミングとし、停止している車両すべての発進タイミングのそれぞれをサンプリング値として採用したり、これらの平均値を1つの発進タイミングのサンプリング値としたりしてもよい。
【0078】
・「サイクル長の値について」
たとえば
図7のステップS36,S40,S44の処理によって算出されるサイクル長が整数とならない場合、四捨五入演算等によって、整数値としたものを最終的なサイクル長としてもよい。
【0079】
・「複数の方向について」
全方向に限らない。たとえば、互いに逆方向となる2つの方向や、互いに交差する2つの方向であってもよく、また、3つの方向であってもよい。
【0080】
なお、単一の方向の発進タイミングを用いたとしても、
図7に例示した処理等を実行することで、サイクル長を推定することはできる。