(57)【要約】【課題】車線内における幅方向の位置を好適に決定すること。【解決手段】自車両１０に搭載されたＣＰＵは、後続車１０ｋが存在するかを判定する。後続車１０ｋとは、自車両１０と同一車線を走行すること、自車両１０の後方を走行すること、及び自車両１０との車間距離が距離Ｌ２未満であることを満たす車両である。後続車１０ｋが存在する場合、ＣＰＵは、相対車速が速度Ｖ１未満であるかを判定する。相対車速は、自車両１０の車速から、他車両の車速を引いた値として定義される。速度Ｖ１は、負値である。つまり、相対車速が速度Ｖ１未満である場合は、自車両１０の車速よりも後続車の車速の方が速く、且つ、相対車速の絶対値が速度Ｖ１の絶対値よりも大きい場合である。相対車速が速度Ｖ１未満である場合、ＣＰＵは、路肩方向へのずれ量として距離Ｄ２を仮決定する。【選択図】図７
2019169012.tif 000002
【特許請求の範囲】
【請求項１】
自車両（１０）としての自動運転車の車線内における幅方向の位置である走行位置を決定する走行位置決定装置（３０）であって、
前記自車両が走行中の車線についての他車両による走行履歴、並びに前記自車両付近かつ前記走行中の車線内に存在し、接触を回避すべき物体の少なくとも何れかの有無を判定する判定部（３１ａ）と、
前記判定部によって前記走行履歴が有りと判定された場合は前記走行履歴を用い、前記判定部によって前記物体が有ると判定された場合は当該物体の位置情報を用い、前記走行位置を決定する決定部（３１ｂ）と、
を備える走行位置決定装置。
【請求項２】
前記走行履歴は、走行経路ごとに分類されており、
前記決定部は、前記判定部によって前記走行履歴が有りと判定された場合、前記自車両の予定走行経路に対応する前記走行履歴を用いる
請求項１に記載の走行位置決定装置。
【請求項３】
前記決定部は、前記物体が後続車である場合、路肩に近づくように前記走行位置を決定する
請求項１から請求項２までの何れか一項に記載の走行位置決定装置。
【請求項４】
前記決定部は、前記物体が先行車である場合、当該先行車に追従するときは、前記先行車の走行位置に近づくように前記走行位置を決定する
請求項１から請求項３までの何れか一項に記載の走行位置決定装置。
【請求項５】
前記決定部は、前記物体が先行車である場合、当該先行車を追い越すときは、前記先行車の走行位置から遠ざかるように前記走行位置を決定する
請求項１から請求項４までの何れか一項に記載の走行位置決定装置。
【請求項６】
前記決定部は、前記物体が先行車である場合、当該先行車がウインカーを点滅させているときは、前記ウインカーによって示される前記先行車の進行方向から遠ざかるように前記走行位置を決定する
請求項１から請求項５までの何れか一項に記載の走行位置決定装置。
【請求項７】
前記決定部は、前記物体が障害物である場合、前記障害物に接触しないように前記走行位置を決定する
請求項１から請求項６までの何れか一項に記載の走行位置決定装置。
【請求項８】
前記決定部は、前記物体が、同一車線内で前記自車両と並走する車両である場合、前記並走する車両の走行位置から遠ざかるように前記走行位置を決定する
請求項１から請求項７までの何れか一項に記載の走行位置決定装置。
【請求項９】
前記決定部は、前記走行履歴が有り且つ前記物体が有ると前記判定部によって判定された場合、前記走行履歴によって定まる走行位置と、前記物体の位置情報によって定まる走行位置とを統合して、前記走行位置を決定する
請求項１から請求項８までの何れか一項に記載の走行位置決定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、自動車の走行位置の決定に関する。
【背景技術】
【０００２】
特許文献１は、自車両の自動運転を行うにあたり、自車両の周囲における交通環境に応じた走行制御を行うことにより、自車両の周囲における交通環境の妨げを防止することについて開示している。具体的には、自動運転装置における自動制御は、走行中の道路に対して道なりに走行させる自動運転制御を行うにあたり、自車両が走行する車線の状態を検出し、検出した車線の状態に基づいて、自動運転制御を行う。例えば、自車両が走行する道路に自車走行車線が道なり走行可能である道なり車線があるにも係わらず、自車両が道なり車線でない車線を走行している場合には、自車両を道なり車線に移動させる進路を生成する。また、自車両が走行する道路に道なり車線が複数ある場合には、道なり走行に好適となる道なり車線に自車両を移動させる進路を生成する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１６２１３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記先行技術の場合、車線を選択するのみであり、車線内における位置を制御することについては考慮されていない。本開示は、上記を踏まえ、車線内における幅方向の位置を好適に決定することを解決課題とする。
【課題を解決するための手段】
【０００５】
本開示の一形態は、自車両（１０）としての自動運転車の車線内における幅方向の位置である走行位置を決定する走行位置決定装置（３０）であって；前記自車両が走行中の車線についての他車両による走行履歴、並びに前記自車両付近かつ前記走行中の車線内に存在し、接触を回避すべき物体の少なくとも何れかの有無を判定する判定部（３１ａ）と；前記判定部によって前記走行履歴が有りと判定された場合は前記走行履歴を用い、前記判定部によって前記物体が有ると判定された場合は当該物体の位置情報を用い、前記走行位置を決定する決定部（３１ｂ）と；を備える走行位置決定装置である。この形態によれば、走行履歴、並びに上記物体の少なくとも何れかに基づき走行位置を決定するので、好適に走行位置を決定できる。
【図面の簡単な説明】
【０００６】
【図１】自動運転車の内部構成を示すブロック図。
【図２】走行位置決定処理を示すフローチャート。
【図３】走行履歴に関する第１処理を示すフローチャート。
【図４】交差点付近における基準位置を示す図。
【図５】走行履歴に基づくずれ量を示す図。
【図６】後続車に関する第２処理を示すフローチャート。
【図７】後続車が存在する場合のずれ量を示す図。
【図８】先行車に関する第３処理を示すフローチャート。
【図９】先行車が存在する場合のずれ量を示す図。
【図１０】先行車が存在する場合のずれ量を示す図。
【図１１】障害物に関する第４処理を示すフローチャート。
【図１２】障害物が存在する場合のずれ量を示す図。
【図１３】障害物が存在する場合のずれ量を示す図。
【図１４】並走車に関する第５処理を示すフローチャート。
【図１５】並走車が存在する場合のずれ量を示す図。
【図１６】並走車が存在する場合のずれ量を示す図。
【発明を実施するための形態】
【０００７】
図１に示す自動運転車１０は、レベル２ないし４の自動運転機能を有するものである。自動運転車１０は、情報取得装置類２０と、走行位置決定装置３０と、動力発生機構４１と、操舵機構４２と、制動機構４３とを備える。情報取得装置類２０は、通信機２１と、カメラ２３と、超音波センサ２４と、ミリ波レーダ２５と、ＬＩＤＡＲ２７と、ＧＮＳＳ受信機２８と、車速センサ２９ａと、ＩＭＵ２９ｂとを含む。情報取得装置類２０に含まれる各要素によって取得された情報は、走行位置決定装置３０に入力される。なお、後述するように、通信機２１は、走行履歴を取得する取得部２０ａとして機能する。通信機２１、カメラ２３、超音波センサ２４、ミリ波レーダ２５及びＬＩＤＡＲ２７は、走行中の車線内に存在し、接触を回避すべき物体の有無を検出する検出部２０ｂとして機能する。
【０００８】
通信機２１は、車車間通信および路車間通信を実行する。路車間通信は、走行履歴を集約して管理する外部装置との通信のために実行される。走行履歴については後述する。
【０００９】
ＧＮＳＳ受信機２８は、航法衛星から受信した航法信号に基づき、自動運転車１０の現在位置としての経度および緯度を測位する。ＩＭＵ２９ｂは、慣性計測装置であり、３軸の角度、角速度、加速度などを検出する装置である。
【００１０】
カメラ２３は、自動運転車１０の周囲を撮像するカメラである。カメラ２３は、単眼カメラでもステレオカメラでもよい。超音波センサ２４は、超音波を用いた測距装置である。ミリ波レーダ２５は、ミリ波帯を使ったレーダである。ＬＩＤＡＲ２７は、レーザを用いた測距装置である。本実施形態におけるカメラ２３の撮像範囲、並びに超音波センサ２４、ミリ波レーダ２５及びＬＩＤＡＲ２７のセンシング範囲は、何れも３６０度、つまり水平方向の全方向をカバーする。カメラ２３、超音波センサ２４、ミリ波レーダ２５及びＬＩＤＡＲ２７の各々は、単一のモジュールで構成されていてもよいし、複数のモジュールで構成されていてもよい。複数のモジュールで構成される場合、単一のモジュールの撮像範囲またはセンシング範囲が３６０度未満でも、相互に補完することによって、全体の範囲としては３６０度をカバーすることができる。
【００１１】
動力発生機構４１は、内燃機関および電動モータの少なくとも何れかによって構成される。操舵機構４２は、自動運転車１０の前輪及び後輪の少なくとも何れかを操舵するための機構である。制動機構４３は、自動運転車１０を減速させるための機構である。
【００１２】
走行位置決定装置３０は、１つ又は複数のＥＣＵによって構成される。走行位置決定装置３０は、ＣＰＵ３１及び記憶媒体３２を備える。記憶媒体３２は、例えば、半導体メモリなどの非遷移的実体的記憶媒体によって構成される。
【００１３】
記憶媒体３２は、地図データＭＰと、データベースＤＢと、プログラムＰとを記憶する。地図データＭＰは、自動運転が実行される際に、走行経路の計画に用いられる。ここでいう走行経路は、目的地に到達するために、どの道路を走行するかを示す情報であり、後述する走行位置とは異なる。プログラムＰは、後述する走行位置決定処理を実現するためのプログラムである。なお、ＣＰＵ３１は、走行位置決定処理を実行することによって、判定部３１ａ及び決定部３１ｂとして機能する。判定部３１ａ及び決定部３１ｂと、走行位置決定処理の各ステップとの関係は、実施形態の説明の後に述べる。
【００１４】
データベースＤＢは、走行位置の履歴によって構成される。本実施形態における走行位置とは、車両の中心が辿った位置のことである。走行位置決定装置３０は、ＧＮＳＳ受信機２８による測位結果、車速センサ２９ａの測定結果、及びＩＭＵ２９ｂの検出結果に基づく自己位置推定結果を用い、自動運転車１０の中心位置を示す走行位置情報を検出して、上記した外部装置に通信機２１を用いて定期的に送信する。なお、自己位置推定の手法は、検出部２０ｂに含まれる外界センサ（例えばカメラ２３やＬＩＤＡＲ２７等）を用いて、高精度地図とマッチングすることで推定する手法でもよい。本実施形態における走行位置は、車線の幅に対して十分に小さい点によって定義される。このため、走行位置は、車線内における幅方向の位置を示す。走行位置が連なったものは、走行履歴となる。
【００１５】
このような走行位置情報の送信は、自動運転車１０だけでなく、走行位置を取得可能であり、且つ、外部装置と通信する機能を有する多数の自動車によって実行される。このような自動車には、自動運転車１０と同様な自動運転車に加え、レベル２以下の自動運転機能を有する自動車、及び自動運転機能を有さない自動車が含まれる。以下、走行位置情報の送信を実行する自動車を総称する場合、情報送信車両という。以下、自動運転車１０、及び自動運転車１０と同様な自動運転車を総称する場合、対象車両という。さらに、走行位置情報は、路側機によっても送信される。路側機は、車両を相手に路車間通信を実行する通信機として、道路に設置されている。路側機は、路車間通信によって走行位置情報を取得し、外部装置に送信する。路側機には、センシング機能があっても良く、路側機に設置される具体的なセンサは、カメラ、Lidar、ミリ波レーダ等から選定されてもよい。
【００１６】
外部装置は、取得した走行位置情報を対象に平均化等の統計処理を施すことによって、走行位置のデータベースを作成する。外部装置は、データベースにおいて、交差点付近の走行位置を、走行経路ごとに分類する。例えば、十字路の場合、外部装置は、対象車両から取得した走行位置を、左折、直進、右折の３パターンに分類した上で、各々について統計処理を実行する。そして、統計処理した結果を、左折、直進、右折それぞれに対応付けてデータベースに格納する。
【００１７】
外部装置は、作成したデータベースを、対象車両に送信する。走行位置決定装置３０は、受信したデータベースを、データベースＤＢとして記憶媒体３２に記憶する。
【００１８】
外部装置は、上記のようにしてデータベースを対象車両に配信した後も、継続して情報送信車両から走行位置情報を取得し、既存のデータベースの情報を含めて統計処理を実行することによって、データベースを更新する。外部装置は、更新したデータベースを、定期的に対象車両に送信する。走行位置決定装置３０は、外部装置からデータベースを受信する度に、記憶媒体３２に記憶するデータベースＤＢを更新する。
【００１９】
ＣＰＵ３１は、図２に示す走行位置決定処理を繰り返し実行する。以下、自動運転車１０を適宜、自車両１０ともいう。
【００２０】
ＣＰＵ３１は、まず、Ｓ１００に進み、図３に示す第１処理を実行する。ＣＰＵ３１は、Ｓ１１０に進み、データベースＤＢに、現在地付近についての走行履歴が含まれているかを判定する。現在地付近についての走行履歴が含まれていない場合、ＣＰＵ３１は、Ｓ１１０でＮＯと判定して第１処理を終える。
【００２１】
一方、現在地付近についての走行履歴が含まれている場合、ＣＰＵ３１は、Ｓ１１０でＹＥＳと判定してＳ１２０に進み、自車両１０の予定走行経路を判定する。予定走行経路が左折の場合、Ｓ１３０に進み、左折の走行履歴に基づき、ずれ量を仮決定して、第１処理を終える。「予定走行経路が左折である」とは、現在地から、左折する予定の位置までの走行距離が、所定距離以内である状態を意味する。右折の場合も同様である。
【００２２】
なお、ずれ量が仮決定されても、直ちに、そのずれ量に従った走行制御が実行されるわけではなく、ずれ量の本決定は、後述するＳ６００で実行される。
【００２３】
ここで、ずれ量の基準となる基準位置について、図４を用いて説明する。図４には、交差点に進入するまでの経路と、交差点を退出する際の経路とが示されている。交差点を退出する経路として、左折する場合、直進する場合、右折する場合のそれぞれについて示されている。なお、図４に示すように、本実施形態においては、左側通行の場合を例にとって説明する。右側通行の場合は、実施形態における左右を読み替えて理解される内容で実施すればよい。
【００２４】
図４に示すように、基準位置は、車線の中央である。つまり、自車両１０は、基準位置に沿って走行すると、車線の中央を走行することになる。図４では、交差点に進入するまでの経路において、車線の幅がＤである場合を示している。このため、車線の右端である中央線Ｃから車両中心までの距離はＤ／２であり、車線の左端である端線Ｈから車両中心までの距離もＤ／２である。
【００２５】
ずれ量は、図５に示すように、基準位置Ｋから車両中心までの距離として定義される。図５は、左折の場合に、交差点への進入前のずれ量として距離Ｄ２Ｌが示されている。距離Ｄ２Ｌは、基準位置から左へのずれ量である。つまり、Ｓ１４０では、基準位置から左へのずれ量として距離Ｄ２Ｌが仮決定される。
【００２６】
上記のように、交差点への進入前に基準位置Ｋからずれた位置が走行位置として仮決定されるのは、図５に示される車線の幅が実質的に２車線分の幅を有し、且つ、多くの情報送信車両が、交差点に進入する前に、左折の準備として左に幅寄せしたからである。
【００２７】
一方、自車両１０の予定走行経路が直進の場合、Ｓ１４０に進み、直進の走行履歴に基づき、ずれ量を仮決定して、第１処理を終える。当該交差点においては、直進の場合、及び右折の場合のずれ量として距離Ｄ２Ｒが対応付けられている。距離Ｄ２Ｒは、基準位置Ｋから右へのずれ量である。従って、自車両１０の予定走行経路が直進の場合、基準位置から右へのずれ量として距離Ｄ２Ｒが仮決定される。直進の場合に、右へのずれ量が仮決定されるのは、多くの情報送信車両が、左折する車両を避けようとしたからである。
【００２８】
同様に、自車両１０の予定走行経路が右折の場合、ＣＰＵ３１は、Ｓ１５０に進み、基準位置Ｋから右へのずれ量として距離Ｄ２Ｒを仮決定し、第１処理を終える。右折の場合に、右へのずれ量が仮決定されるのは、多くの情報送信車両が、交差点に進入する前に、右折の準備として右に幅寄せしたからである。なお、直進の場合と、右折の場合とでずれ量が同じであるとは限らず、ずれ量が異なっていてもよい。
【００２９】
第１処理を終えると、ＣＰＵ３１は、図２に示すように第２処理を実行する。第２処理は、後続車１０ｋに追い越しをさせるか否かを判定し、追い越しをさせる場合には、路肩へのずれ量を仮決定するための処理である。追い越しをさせない場合には、ずれ量の仮決定は実行されない。
【００３０】
図６に示すように、ＣＰＵ３１は、第２処理を開始すると、Ｓ２１０に進み、後続車１０ｋが存在するかを判定する。後続車１０ｋは、図７に示されている。後続車１０ｋとは、自車両１０と同一車線を走行すること、自車両１０の後方を走行すること、及び自車両１０との車間距離が距離Ｌ２未満であることを満たす車両である。距離Ｌ２は、後述する距離Ｌ１よりも長い距離である。
【００３１】
本実施形態において、後続車１０ｋの有無および車間距離は、車車間通信、路車間通信、カメラ２３、超音波センサ２４、ミリ波レーダ２５及びＬＩＤＡＲ２７などによって取得される情報の少なくとも何れか１つに基づき判定される。以下、これらの情報の少なくとも何れか１つのことを、検出部２０ｂによる検出結果ともいう。本実施形態においては、検出部２０ｂによる検出結果は、上記した全ての情報を意味する。他の実施形態においては、上記した全ての情報のうち任意のものを用いてもよい。後続車１０ｋが存在しない場合、ＣＰＵ３１は、Ｓ２１０でＮＯと判定して、第２処理を終える。
【００３２】
一方、後続車１０ｋが存在する場合、ＣＰＵ３１は、Ｓ２１０でＹＥＳと判定してＳ２２０に進み、相対車速が速度Ｖ１未満であるかを判定する。本実施形態において、相対車速は、自車両１０の車速から、他車両の車速を引いた値として定義される。後続車１０ｋの車速は、検出部２０ｂによる検出結果に基づき取得される。
【００３３】
速度Ｖ１は、負値である。つまり、相対車速が速度Ｖ１未満である場合は、自車両１０の車速よりも後続車の車速の方が速く、且つ、相対車速の絶対値が速度Ｖ１の絶対値よりも大きい場合である。
【００３４】
相対車速が速度Ｖ１未満である場合、ＣＰＵ３１は、Ｓ２２０でＹＥＳと判定してＳ２７０に進み、図７に示すように、路肩方向へのずれ量として距離Ｄ２を仮決定し、第２処理を終える。距離Ｄ２は、下記の式（１）によって決定される。
Ｄ２＝Ｄ／２−Ｗ／２−Ｍ…（１）
Ｗは、自車両１０の車幅である。従って、Ｗ／２は、車幅の半分である。Ｍは、車線を規定する外側の端線Ｈまでのマージンとして予め定められた距離である。式（１）によって決定される距離Ｄ２は、自車両１０の車体と、路肩側の端線Ｈとの距離がマージンＭになるように決定される。
【００３５】
一方、相対車速が速度Ｖ１以上の場合、ＣＰＵ３１は、Ｓ２２０でＮＯと判定してＳ２３０に進み、相対車速が速度Ｖ２未満であるかを判定する。速度Ｖ２は、負値である。速度Ｖ２の絶対値は、速度Ｖ１の絶対値よりも小さい。
【００３６】
相対車速が速度Ｖ２未満である場合、ＣＰＵ３１は、Ｓ２３０でＹＥＳと判定してＳ２４０に進み、Ｖ１≦相対車速＜Ｖ２の継続時間が時間Ｔ１よりも長いかを判定する。当該継続時間がＴ１よりも長い場合、ＣＰＵ３１は、Ｓ２４０でＹＥＳと判定してＳ２７０に進む。
【００３７】
一方、相対車速が速度Ｖ２以上の場合、Ｓ２３０でＮＯと判定してＳ２５０に進む。Ｖ１≦相対車速＜Ｖ２の継続時間が時間Ｔ１以下の場合、Ｓ２４０でＮＯと判定してＳ２５０に進む。
【００３８】
Ｓ２５０に進むと、ＣＰＵ３１は、後続車１０ｋと自動運転車１０との車間距離がＬ１未満であるかを判定する。当該車間距離がＬ１未満である場合、Ｓ２５０でＹＥＳと判定してＳ２６０に進み、車間距離が距離Ｌ１未満である状態の継続時間が時間Ｔ２よりも長いかを判定する。時間Ｔ２は、時間Ｔ１より長くても短くても同じでもよい。
【００３９】
車間距離が距離Ｌ１未満である状態の継続時間が時間Ｔ２よりも長い場合、ＣＰＵ３１は、Ｓ２６０でＹＥＳと判定してＳ２７０に進む。
【００４０】
一方、Ｌ１≦車間距離である場合、ＣＰＵ３１は、Ｓ２５０でＮＯと判定して、ずれ量を仮決定することなく、第２処理を終える。車間距離が距離Ｌ１未満である状態の継続時間がＴ２以下の場合、ＣＰＵ３１は、Ｓ２６０でＮＯと判定して、ずれ量を仮決定することなく第２処理を終える。
【００４１】
ＣＰＵ３１は、第２処理を終えると、図３に示すように第３処理を実行する。図８に示すように、ＣＰＵ３１は、第３処理を開始すると、Ｓ３１０に進み、先行車１０ｓが存在するかを判定する。先行車１０ｓは、図９，図１０に示されている。先行車１０ｓとは、自車両１０の前方を走行する車両であって、自車両１０との車間距離が所定距離未満の車両である。
【００４２】
本実施形態において、先行車１０ｓの有無および車間距離は、検出部２０ｂによる検出結果に基づき判定される。
【００４３】
先行車１０ｓが存在しない場合、ＣＰＵ３１は、Ｓ３１０でＮＯと判定して、第３処理を終える。一方、先行車１０ｓが存在する場合、Ｓ３１０でＹＥＳと判定してＳ３２０に進み、先行車１０ｓとの相対車速が速度Ｖ３よりも大きいかを判定する。速度Ｖ３は、正値である。つまり、相対車速が速度Ｖ３よりも大きい場合は、先行車１０ｓの車速よりも自車両１０の車速の方が速く、且つ、相対車速の絶対値が速度Ｖ３の絶対値よりも大きい場合である。なお、先行車１０ｓは、停車している場合もあり得る。
【００４４】
先行車１０ｓとの相対車速が速度Ｖ３よりも大きい場合、ＣＰＵ３１は、Ｓ３２０でＮＯと判定してＳ３３０に進み、先行車１０ｓを追い越すためのスペースがあるかを判定する。例えば、図９に示すように、先行車１０ｓが路肩寄りの位置を走行している場合、対向車線との境界となる中央線Ｃ側に、追い越しが可能となるスペースができる。Ｓ３２０では、このようなスペースの有無が判定される。追い越しのためのスペースがある場合、ＣＰＵ３１は、Ｓ３３０でＹＥＳと判定してＳ３４０に進み、走行位置を先行車１０ｓから遠ざけるために、中央線Ｃ側へのずれ量として距離Ｄ３Ｒを仮決定する。
【００４５】
一方、追い越しのためのスペースが無い場合、ＣＰＵ３１は、Ｓ３３０でＮＯと判定してＳ３５０に進む。先行車１０ｓとの相対車速が速度Ｖ３以下の場合、ＣＰＵ３１は、Ｓ３２０でＮＯと判定してＳ３５０に進む。
【００４６】
Ｓ３５０に進むと、ＣＰＵ３１は、検出部２０ｂによる検出結果に基づき、先行車１０ｓのウインカーの点滅状況を判定する。
【００４７】
ウインカーが点滅していない場合、ＣＰＵ３１は、Ｓ３６０に進み、図１０に示すように、先行車１０ｓの真後ろに位置するためのずれ量として距離Ｄ３Ｃを仮決定して、第３処理を終える。Ｓ３６０は、先行車１０ｓに追従することを目的として実行される。
【００４８】
ウインカーが両方点滅している場合、つまりハザードランプが付いている場合、ＣＰＵ３１は、Ｓ３７０に進み、先行車１０ｓと反対側へのずれ量を仮決定する。つまり、先行車１０ｓの走行位置が右寄りである場合は左へのずれ量を決定し、先行車１０ｓの走行位置が左寄りである場合は右へのずれ量を決定する。
【００４９】
ずれ量としての具体的な距離は、図７と共に説明した式（１）の考え方で決定される。つまり、先行車１０ｓが中央線Ｃ側に位置する場合は、端線Ｈ側にずれることになるので、端線ＨとのマージンがＭになるように決定される。先行車１０ｓが端線Ｈ側に位置する場合は、中央線Ｃ側にすれることになるので、中央線ＣとのマージンがＭになるように決定される。
【００５０】
左のウインカーが点滅している場合、ＣＰＵ３１は、Ｓ３８０に進み、右側へのずれ量を仮決定して、第３処理を終える。ずれ量としての具体的な距離は、Ｓ３７０の場合に右側にずれる場合と同じである。Ｓ３８０は、左折する先行車１０ｓに追突する可能性を低減することを目的として、先行車１０ｓの進行方向から遠ざかるために実行される。
【００５１】
右のウインカーが点滅している場合、ＣＰＵ３１は、Ｓ３９０に進み、左側へのずれ量を仮決定して、第３処理を終える。ずれ量としての具体的な距離は、Ｓ３７０の場合に左側にずれる場合と同じである。Ｓ３９０は、右折する先行車１０ｓに追突する可能性を低減することを目的として、先行車１０ｓの進行方向から遠ざかるために実行される。
【００５２】
第３処理を終えると、ＣＰＵ３１は、図２に示すように第４処理を実行する。図１１に示すように、ＣＰＵ３１は、第４処理を開始すると、Ｓ４１０に進み、進行方向に障害物Ｂが有るかを判定する。障害物Ｂは、図１２，図１３に示されている。障害物Ｂは、例えば落下物や故障車など、停止している物体である。
【００５３】
障害物Ｂの有無は、検出部２０ｂによる検出結果に基づき判定される。障害物Ｂが無い場合、ＣＰＵ３１は、Ｓ４１０でＮＯと判定して、第４処理を終える。
【００５４】
一方、障害物Ｂが有る場合、ＣＰＵ３１は、Ｓ４１０でＮＯと判定してＳ４２０に進み、障害物Ｂに塞がれていない空きスペースが大きいのは、障害物Ｂの左なのか右なのかを判定する。障害物Ｂの左の方が空きスペースが大きい場合、ＣＰＵ３１は、Ｓ４３０に進み、左側へのずれ量を仮決定して、第４処理を終える。図１２には、左側へのずれ量として、距離Ｄ４Ｌが示されている。距離Ｄ４Ｌについても、式（１）と同じ考え方で決定される。Ｓ４３０及び後述ずるＳ４４０は、自車両１０が障害物Ｂに接触しないようにすることを目的として実行される。
【００５５】
障害物Ｂの右の方が空きスペースが大きい場合、ＣＰＵ３１は、Ｓ４４０に進み、右側へのずれ量を仮決定して、第４処理を終える。図１３には、右側へのずれ量として、距離Ｄ４Ｒが示されている。距離Ｄ４Ｒについても、式（１）と同じ考え方で決定される。
【００５６】
ＣＰＵ３１は、第４処理を終えると、図３に示すように第５処理を実行する。図１４に示すように、ＣＰＵ３１は、第５処理を開始すると、Ｓ５１０に進み、並走車１０ｒが存在するかを判定する。並走車１０ｒは、図１５，図１６に示されている。並走車１０ｒとは、自車両１０と同じ車線を走行する車両であって、車両を横から見た場合に、車体の前後方向の少なくとも一部が重なり合っている車両である。
【００５７】
並走車１０ｒが存在しない場合、ＣＰＵ３１は、Ｓ５１０でＹＥＳと判定して、第５処理を終える。一方、並走車１０ｒが存在する場合、ＣＰＵ３１は、Ｓ５１０でＹＥＳと判定して、横方向距離が距離Ｌ３未満であるかを判定する。横方向距離とは、並走車１０ｒとの間隔のことである。距離Ｌ３は、予め定められている。横方向距離は、検出部２０ｂによる検出結果に基づき判定される。
【００５８】
横方向距離が距離Ｌ３以上の場合、ＣＰＵ３１は、Ｓ５２０でＮＯと判定してＳ５３０に進み、ずれ量をゼロに仮決定して、第５処理を終える。図１５は、横方向距離が距離Ｌ４の場合を示す。距離Ｌ４は、距離Ｌ３よりも大きい。このため、図１５には、ずれ量がゼロに仮決定された様子が示される。
【００５９】
一方、横方向距離が距離Ｌ３未満の場合、ＣＰＵ３１は、Ｓ５２０でＮＯと判定してＳ５４０に進み、並走車１０ｒから遠ざかる向きへのずれ量を仮決定して、第５処理を終える。図１６に示されたずれ量としての具体的な距離Ｄ５は、図７と共に説明した式（１）の考え方で決定される。
【００６０】
第５処理を終えると、ＣＰＵ３１は、図２に示すように、Ｓ６００に進み、ずれ量を本決定する。例えば、仮決定されたずれ量が１つだった場合、そのずれ量がそのまま本決定される。
【００６１】
仮決定されたずれ量が複数だった場合、ＣＰＵ３１は、各々のずれ量の重み付けに従って、関数等を用いて統合することによって、ずれ量を本決定する。例えば、安全性に大きく影響するずれ量は、重い重み付けが設定されている。例えば、第４処理のＳ４３０及びＳ４４０、並びに第５処理のＳ５４０は、第１処理のＳ１３０，Ｓ１４０及びＳ１５０よりも重い重み付けが設定されている。例えば、Ｓ１５０によって車線の中央から右寄りへのずれ量が仮決定され、且つ、Ｓ４３０において左側へのずれ量が仮決定された場合、Ｓ６００で本決定されるずれ量は、Ｓ４３０で仮決定されたずれ量とほぼ同じ値になる。
【００６２】
以上に説明した本実施形態によれば、１車線の幅が２車線分ある道路を走行する場合に、好適に走行位置を決定することができる。
【００６３】
実施形態と請求項との対応関係を説明する。Ｓ１１０，Ｓ２１０，Ｓ３１０，Ｓ４１０及びＳ５１０は、判定部３１ａに対応する。Ｓ１３０，Ｓ１４０，Ｓ１５０，Ｓ２７０，Ｓ３６０，Ｓ３７０，Ｓ３８０，Ｓ３９０，Ｓ４３０，Ｓ４４０，Ｓ５３０，Ｓ５４０及びＳ６００は、決定部３１ｂに対応する。
【００６４】
本開示は、本明細書の実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の構成で実現できる。例えば、発明の概要の欄に記載した各形態中の技術的特徴に対応する実施形態中の技術的特徴は、先述の課題の一部又は全部を解決するために、或いは、先述の効果の一部又は全部を達成するために、適宜、差し替えや、組み合わせができる。その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除できる。例えば、以下の実施形態が例示される。
【００６５】
データベースは、自動運転車が記憶していなくてもよい。この場合、例えば、自動運転車が必要に応じて都度、外部装置に要求して、外部装置が要求に応じて送信してもよい。このように要求に応じた送受信をする場合、自動運転車の現在地付近のみのデータベースを送受信すればよいので、送受信されるデータ量を削減できる。
【００６６】
基準位置は、車線の中心でなくてもよい。例えば、中心から少し端よりを基準位置にしてもよい。
【００６７】
上記した実施形態の内容は、実質的に２車線分の幅を有する道路以外に適用してもよい。例えば、通常の１車線分の幅の車線において、他車両が２輪車の場合に、適用してもよい。
【００６８】
上記実施形態において、ソフトウエアによって実現された機能及び処理の一部又は全部は、ハードウエアによって実現されてもよい。また、ハードウエアによって実現された機能及び処理の一部又は全部は、ソフトウエアによって実現されてもよい。ハードウエアとしては、例えば、集積回路、ディスクリート回路、または、それらの回路を組み合わせた回路モジュールなど、各種回路を用いてもよい。
【符号の説明】
【００６９】
１０  自動運転車、３０  走行位置決定装置、３１ａ  判定部、３１ｂ  決定部
【図１】
2019169012.tif 000003
【図２】
2019169012.tif 000004
【図３】
2019169012.tif 000005
【図４】
2019169012.tif 000006
【図５】
2019169012.tif 000007
【図６】
2019169012.tif 000008
【図７】
2019169012.tif 000009
【図８】
2019169012.tif 000010
【図９】
2019169012.tif 000011
【図１０】
2019169012.tif 000012
【図１１】
2019169012.tif 000013
【図１２】
2019169012.tif 000014
【図１３】
2019169012.tif 000015
【図１４】
2019169012.tif 000016
【図１５】
2019169012.tif 000017
【図１６】
2019169012.tif 000018