IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日産自動車株式会社の特許一覧

<>
  • 特開-走行制御方法及び走行制御装置 図1
  • 特開-走行制御方法及び走行制御装置 図2
  • 特開-走行制御方法及び走行制御装置 図3
  • 特開-走行制御方法及び走行制御装置 図4
  • 特開-走行制御方法及び走行制御装置 図5
  • 特開-走行制御方法及び走行制御装置 図6
  • 特開-走行制御方法及び走行制御装置 図7
  • 特開-走行制御方法及び走行制御装置 図8
  • 特開-走行制御方法及び走行制御装置 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024170092
(43)【公開日】2024-12-06
(54)【発明の名称】走行制御方法及び走行制御装置
(51)【国際特許分類】
   B60W 30/10 20060101AFI20241129BHJP
【FI】
B60W30/10
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2023087059
(22)【出願日】2023-05-26
(71)【出願人】
【識別番号】000003997
【氏名又は名称】日産自動車株式会社
(74)【代理人】
【識別番号】100103850
【弁理士】
【氏名又は名称】田中 秀▲てつ▼
(74)【代理人】
【識別番号】100114177
【弁理士】
【氏名又は名称】小林 龍
(74)【代理人】
【識別番号】100066980
【弁理士】
【氏名又は名称】森 哲也
(72)【発明者】
【氏名】韓 京達
(72)【発明者】
【氏名】塩澤 裕樹
(72)【発明者】
【氏名】西田 雪徳
【テーマコード(参考)】
3D241
【Fターム(参考)】
3D241BA15
3D241CC01
3D241CC08
3D241CC17
3D241DA13Z
3D241DA39Z
3D241DA52Z
3D241DB01Z
3D241DB02Z
3D241DB05Z
3D241DB12Z
(57)【要約】
【課題】過去に車両が走行した走行軌跡に基づいて生成された目標走行軌道の利点を生かしつつ、より滑らかな目標走行軌道を生成する。
【解決手段】走行制御方法では、自車両が走行する走行車線の自車両前方の車線形状を検出し(S1)、過去に車両が走行した走行軌跡に基づいて、自車両前方の走行車線における第1目標走行軌道を生成し(S2)、第1目標走行軌道に基づいて、自車両前方の走行車線における自車両が走行する走行領域を設定し(S3)、走行領域内を走行する第2目標走行軌道を、第2目標走行軌道の曲率及び曲率変化の少なくとも一方について予め設定した制約条件を満足するように生成し(S4)、第2目標走行軌道に沿って走行するように自車両を制御する(S5)。
【選択図】図4
【特許請求の範囲】
【請求項1】
自車両が走行する走行車線の前記自車両前方の車線形状を検出し、
過去に車両が走行した走行軌跡に基づいて、前記自車両前方の前記走行車線における第1目標走行軌道を生成し、
前記第1目標走行軌道に基づいて、前記自車両前方の前記走行車線における前記自車両が走行する走行領域を設定し、
前記走行領域内を走行する第2目標走行軌道を、前記第2目標走行軌道の曲率及び曲率変化の少なくとも一方について予め設定した制約条件を満足するように生成し、
前記第2目標走行軌道に沿って走行するように前記自車両を制御する、
ことを特徴とする走行制御方法。
【請求項2】
前記制約条件として、前記第2目標走行軌道の曲率及び曲率変化の少なくとも一方を変数に含んだ評価関数が最小又は閾値未満になるように前記第2目標走行軌道を生成する、ことを特徴とする請求項1に記載の走行制御方法。
【請求項3】
車線幅方向の前記走行領域の幅である走行領域幅を、前記第1目標走行軌道の形状に基づいて設定することを特徴とする請求項1に記載の走行制御方法。
【請求項4】
前記第1目標走行軌道上の複数の点の近似直線を生成し、
前記第1目標走行軌道上の点から前記近似直線までの距離に基づいて前記走行領域幅を設定する、
ことを特徴とする請求項3に記載の走行制御方法。
【請求項5】
前記第1目標走行軌道上の隣接する3つの点を含むグループを複数個設定し、
前記隣接する3つの点のうち第1点と第3点との間に挟まれる第2点から前記第1点と前記第3点とを結んだ直線までの距離を前記グループ毎に算出し、
前記第2点から前記第1点と前記第3点とを結んだ直線までの前記距離の最大値に基づいて前記走行領域幅を設定する、
ことを特徴とする請求項4に記載の走行制御方法。
【請求項6】
前記第1目標走行軌道上の少なくとも3つの点の近似直線を生成し、
前記少なくとも3つの点の各々を、これらの点から前記近似直線へ向かうそれぞれの方向へ、前記車線幅方向に沿って前記走行領域幅だけ移動させた点を、前記走行領域の境界点として設定する、
ことを特徴とする請求項3に記載の走行制御方法。
【請求項7】
前記走行領域の前記車線幅方向の両端の境界点のうちの何れか一方である第1境界点として、前記第1目標走行軌道上の点を設定し、
前記両端の境界点のうち他方である第2境界点として、前記少なくとも3つの点の各々を、これらの点から前記近似直線へ向かうそれぞれの方向へ、前記車線幅方向に沿って前記走行領域幅だけ移動させた点を設定する、
ことを特徴とする請求項6に記載の走行制御方法。
【請求項8】
前記少なくとも3つの点のうち何れか点を、前記何れかの点から前記近似直線へ向かうそれぞれの方向へ、前記車線幅方向に沿って前記走行領域幅だけ移動させた点が、前記走行車線の外に出た場合には、前記移動させた点を通って前記車線幅方向に延びる直線と、車線境界線との交点に前記境界点を設定することを特徴とする請求項7に記載の走行制御方法。
【請求項9】
前記第1目標走行軌道上の点が前記走行車線の外に出ている場合、前記走行車線の外に出ている前記第1目標走行軌道上の点を通って前記車線幅方向に延びる直線と車線境界線との交点に前記第1境界点を設定することを特徴とする請求項7に記載の走行制御方法。
【請求項10】
前記第1目標走行軌道上の複数の点の近似直線を生成し、
前記第1目標走行軌道上の点から前記近似直線までの距離が閾値以上である第1区間と、前記距離が閾値未満である第2区間とを設定し、
前記第1区間では前記走行領域内に前記第2目標走行軌道を生成し、
前記第2区間では前記第1目標走行軌道上の点を通過する前記第2目標走行軌道を生成する、
ことを特徴とする請求項1に記載の走行制御方法。
【請求項11】
自車両が走行する走行車線の前記自車両前方の車線形状を検出するセンサと、
過去に車両が走行した走行軌跡に基づいて、前記自車両前方の前記走行車線における第1目標走行軌道を生成し、前記第1目標走行軌道に基づいて、前記自車両前方の前記走行車線における前記自車両が走行する走行領域を設定し、前記走行領域内を走行する第2目標走行軌道を、前記第2目標走行軌道の曲率及び曲率変化の少なくとも一方について予め設定した制約条件を満足するように生成し、前記第2目標走行軌道に沿って走行するように前記自車両を制御するコントローラと、
を備えることを特徴とする走行制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、走行制御方法及び走行制御装置に関する。
【背景技術】
【0002】
下記特許文献1には、過去の手動運転時の走行軌跡を学習して、自動走行時に目標軌道を生成する車両走行制御装置が提案されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2018-022353号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
過去に車両が手動運転で走行した走行軌跡を学習した学習モデルを用いて自車両の目標走行軌道を生成することにより、乗員が意図する軌道に近い目標走行軌道を生成できる。しかしながら、学習モデルを用いて生成された目標走行軌道が必ずしも滑らかな軌道になるとは限らない。
本発明は、過去に車両が走行した走行軌跡に基づいて生成された目標走行軌道の利点を生かしつつ、より滑らかな目標走行軌道を生成することを目的とする。
【課題を解決するための手段】
【0005】
本発明の一態様による走行制御方法では、自車両が走行する走行車線の自車両前方の車線形状を検出し、過去に車両が走行した走行軌跡に基づいて、自車両前方の走行車線における第1目標走行軌道を生成し、第1目標走行軌道に基づいて、自車両前方の走行車線における自車両が走行する走行領域を設定し、走行領域内を走行する第2目標走行軌道を、第2目標走行軌道の曲率及び曲率変化の少なくとも一方について予め設定した制約条件を満足するように生成し、第2目標走行軌道に沿って走行するように自車両を制御する。
【発明の効果】
【0006】
本発明によれば、過去に車両が走行した走行軌跡に基づいて生成された目標走行軌道の利点を生かしつつ、より滑らかな目標走行軌道を生成することができる。
【図面の簡単な説明】
【0007】
図1】実施形態の走行制御装置の一例の概略構成図である。
図2】第1実施形態のコントローラの機能構成の一例のブロック図である。
図3】(a)は第1目標走行軌道の一例の模式図であり、(b)は走行領域及び第2目標走行軌道の一例の模式図である。
図4】第1実施形態の走行制御方法の一例のフローチャートである。
図5】第2実施形態のコントローラの機能構成の一例のブロック図である。
図6】(a)は学習モデルの学習データの一例を説明する模式図であり、(b)は走行車線の車線形状のデータと第1目標走行軌道の一例の模式図である。
図7】(a)~(c)は、第2実施形態の走行制御方法の一例を説明する模式図である。
図8】第2実施形態の走行制御方法の一例のフローチャートである。
図9】第3実施形態の走行制御方法の一例を説明する模式図である。
【発明を実施するための形態】
【0008】
以下、本発明の実施形態について、図面を参照しつつ説明する。なお、各図面は模式的なものであって、現実のものとは異なる場合がある。また、以下に示す本発明の実施形態は、本発明の技術的思想を具体化するための装置や方法を例示するものであって、本発明の技術的思想は、構成部品の構造、配置等を下記のものに特定するものではない。本発明の技術的思想は、特許請求の範囲に記載された請求項が規定する技術的範囲内において、種々の変更を加えることができる。
【0009】
(第1実施形態)
(構成)
図1は、実施形態の走行制御装置の例の概略構成図である。自車両1は、自車両1の走行を制御する走行制御装置10を備える。走行制御装置10による走行制御は、自車両1が走行する車線である走行車線の車線形状に基づいて目標走行軌道を設定し、自車両1が目標走行軌道に沿って走行するように操舵機構を制御する自動制御を含む。例えば、走行制御装置10による走行制御は、自車両1の周辺の走行環境に基づいて、運転者が関与せずに自車両1を自動で運転する自律運転制御であってよい。
【0010】
走行制御装置10は、外界センサ11と、車両センサ12と、測位装置13と、地図データベース(地図DB)14と、ナビゲーション装置15、アクチュエータ17と、コントローラ18とを備える。
外界センサ11は、自車両1に搭載されたレーザレーダやミリ波レーダ、カメラ、LIDAR(Light Detection and Ranging、Laser Imaging Detection and Ranging)など、自車両1の周辺の物体を検出する複数の異なる種類の物体検出センサを備える。
【0011】
車両センサ12は、自車両1に搭載され、自車両1から得られる様々な情報(車両信号)を検出する。車両センサ12には、例えば、自車両1の車速を検出する車速センサ、自車両1のタイヤの回転速度を検出する車輪速センサ、自車両1の横加速度Gy及び縦加速度Gxを検出する加速度センサ、ステアリングホイールの操舵角を検出する操舵角センサ、操向輪の転舵角を検出する転舵角センサ、自車両1の角速度を検出するジャイロセンサ、ヨーレートを検出するヨーレートセンサ、自車両のアクセル開度を検出するアクセルセンサと、運転者によるブレーキ操作量を検出するブレーキセンサが含まれる。
【0012】
測位装置13は、全地球型測位システム(GNSS)受信機を備え、複数の航法衛星から電波を受信して自車両1の現在位置を測定する。GNSS受信機は、例えば地球測位システム(GPS)受信機等であってよい。測位装置13は、例えば慣性航法装置であってもよい。
地図データベース14は、道路地図データを記憶している。例えば地図データベース14は、自動運転用の地図情報として好適な高精度地図データ(以下、単に「高精度地図」という)を記憶してよい。地図データベース14は、ナビゲーション用の地図データ(以下、単に「ナビ地図」という)を記憶してもよい。
【0013】
ナビゲーション装置15は、測位装置13により自車両1の現在位置を認識し、その現在位置における地図情報を地図データベース14から取得する。ナビゲーション装置15は、乗員が入力した目的地までの目標経路を設定し、この目標経路に従って乗員に経路案内を行う。また、ナビゲーション装置15は、設定した目標経路の情報をコントローラ18へ出力する。自律運転制御を実行する場合に、コントローラ18はナビゲーション装置15が設定した目標経路に沿って走行するように自車両1を自動で運転する。
【0014】
アクチュエータ17は、コントローラ18からの制御信号に応じて、自車両のステアリングホイール、アクセル開度及びブレーキ装置を操作して、自車両の車両挙動を発生させる。アクチュエータ17は、ステアリングアクチュエータと、アクセル開度アクチュエータと、ブレーキ制御アクチュエータを備える。ステアリングアクチュエータは、自車両のステアリングの操舵方向及び操舵量を制御する。アクセル開度アクチュエータは、自車両のアクセル開度を制御する。ブレーキ制御アクチュエータは、自車両のブレーキ装置の制動動作を制御する。
【0015】
コントローラ18は、自車両1の走行制御を行う電子制御ユニットである。コントローラ18は、プロセッサ18aと、記憶装置18b等の周辺部品とを含む。プロセッサ18aは、例えばCPUやMPUであってよい。
記憶装置18bは、半導体記憶装置や、磁気記憶装置、光学記憶装置等を備えてよい。記憶装置18bは、レジスタ、キャッシュメモリ、主記憶装置として使用されるROM及びRAM等のメモリを含んでよい。
【0016】
以下に説明するコントローラ18の機能は、例えばプロセッサ18aが、記憶装置18bに格納されたコンピュータプログラムを実行することにより実現される。
なお、コントローラ18を、以下に説明する各情報処理を実行するための専用のハードウエアにより形成してもよい。例えば、コントローラ18は、汎用の半導体集積回路中に設定される機能的な論理回路を備えてもよい。例えばコントローラ18はFPGA等のPLD等を有していてもよい。
【0017】
図2は、第1実施形態のコントローラ18の機能構成の一例のブロック図である。コントローラ18は、車線境界検出部30と、第1目標走行軌道生成部31と、走行領域設定部32と、第2目標走行軌道生成部33と、車両制御部34と、を備える。
車線境界検出部30は、自車両1が走行する走行車線の自車両1前方の車線形状を検出する。
【0018】
図3(a)を参照する。例えば車線境界検出部30は、自車両1前方の走行車線の車線形状として、右側の車線境界線上の車線境界点PR0~PR8の位置と、左側の車線境界線上の車線境界点PL0~PL8の位置とを検出してよい。車線境界検出部30は、例えば外界センサ11のカメラによる撮像画像や、レーザレーダやミリ波レーダ、LIDAR等の測距装置による測距データに基づいて、車線境界点PR0~PR8、PL0~PL8の位置を検出してよい。なお、車線境界検出部30が検出する車線境界線上の車線境界点の数は、左右の片側に対して8個に限定されず、8個より多い数でも少ない数でもよい。
【0019】
図2を参照する。第1目標走行軌道生成部31は、自車両1前方の走行車線における第1目標走行軌道T1を生成する。
例えば第1目標走行軌道生成部31は、過去に車両が手動運転で走行した車線の車線形状、車速、車両の横加速度及び縦加速度と、走行軌跡とを学習した学習モデル31aを有してもよい。
【0020】
例えば学習モデル31aは、少なくとも入力層と出力層とを含む多階層のニューラルネットワークであってよい。例えば、車線境界検出部30が検出した走行車線の車線形状と、車両センサ12が検出した自車両1の車速、横加速度Gy及び縦加速度Gxとを入力層に入力すると、学習モデル31aは、学習した走行軌跡を、第1目標走行軌道T1として出力層から出力する。
例えば入力層には、自車両1前方の所定の区間(例えば70m)において略等間隔に検出した左右30個の車線境界点のX座標(車線方向の座標)及びY座標(車線幅方向の座標)と、車速、横加速度Gy及び縦加速度Gxとを入力する。また出力層は、自車両1前方の走行車線70mの区間における走行軌跡上の略等間隔の30個の通過点のX座標及びY座標を出力する。
【0021】
このような学習モデル31aを用いて走行軌跡を生成する場合には、特に過去に走行したことの無いルートを走る場合や、過去に走行したことがあっても学習時の入力と走行時の入力が大きく異なる場合に、走行軌跡がギザギザになるという課題が発生することがある。
なお、学習モデル31aに学習させる過去の手動運転のデータ(車線形状、車速、横加速度、縦加速度、走行軌跡)としては、基本的に曲率が所定値以上を有するカーブ路の所定の区間(例えば70m)ごとの自車両1の走行データを用いてよい。
【0022】
また例えば第1目標走行軌道生成部31は、過去に車両が走行した走行軌跡をそのまま第1目標走行軌道T1として生成してもよい。過去に車両が走行した走行軌跡は、例えば手動運転により走行した場合の走行軌跡であってもよく、車両の操舵制御を支援する走行支援により走行した場合の走行軌跡であってもよい。
【0023】
図3(a)の二点鎖線Taは、過去に車両が手動運転で走行した際に学習モデル31aが学習した車両の走行軌跡を示し、丸プロットP0、P1a~P8aを結ぶ実線T1は、自車両1の現在位置P0を基点として自車両1の前方に形成された第1目標走行軌道を表している。
学習モデル31aの学習データとして使用される車線形状と走行軌跡のデータは、自車両1を手動運転で走行させたときの車線形状と走行軌跡のデータであってもよく、自車両1以外の他の車両を手動運転で走行させたときの車線形状と走行軌跡のデータであってもよい。
【0024】
図2を参照する。走行領域設定部32は、第1目標走行軌道生成部31が設定した第1目標走行軌道T1に基づいて、自車両1前方の走行車線における自車両1が走行する走行領域Rtを設定する。
図3(b)を参照する。ハッチングを施された領域が走行領域Rtを模式的に表している。破線BR及びBLは、それぞれ走行領域Rtの右側の境界線である右側境界線BRと走行領域Rtの左側の境界線である左側境界線RLを示している。
【0025】
例えば走行領域設定部32は、第1目標走行軌道T1上の点P0、P1a~P8aを交互に右側境界線BRと左側境界線RLとに割り振って、右側境界線BRと左側境界線RLとを形成する点列を設定してもよい。また例えば走行領域設定部32は、第1目標走行軌道T1上の点P0、P1a~P8aのうち実際の走行軌跡Taよりも右側に位置する点を右側境界線BRに割り振り、右側に位置する点を左側境界線RLに割り振ることにより、右側境界線BRと左側境界線RLとを形成する点列を設定してもよい。
【0026】
そして走行領域設定部32は、右側境界線BRに割り振った第1目標走行軌道T1上の点に基づいて右側境界線BRを生成し、左側境界線RLに割り振った第1目標走行軌道T1上の点に基づいて左側境界線RLを生成してもよい。例えば右側境界線BRに割り振った点同士を直線で接続することにより右側境界線BRを生成し、左側境界線RLに割り振った点同士を直線で接続することにより左側境界線RLを生成してもよい。また、右側境界線BRに割り振った点に基づいて近似曲線や近似直線を形成して右側境界線BRを生成し、左側境界線RLに割り振った点に基づいて近似曲線や近似直線を形成して左側境界線RLを生成してもよい。
【0027】
図2を参照する。第2目標走行軌道生成部33は、走行領域設定部32が設定した走行領域Rt内に第2目標走行軌道T2を生成する。このとき、第2目標走行軌道生成部33は、第2目標走行軌道T2の曲率及び曲率変化の少なくとも一方が、予め設定された制約条件を満足するように第2目標走行軌道T2を生成する。
図3(b)の一点鎖線は、走行領域Rt内に生成された第2目標走行軌道T2を表している。
車両制御部34は、第2目標走行軌道T2に沿って自車両1が走行するようにアクチュエータ17の制御信号を生成し、生成した制御信号をアクチュエータ17に出力する。
【0028】
このように、第1目標走行軌道T1に基づいて設定された走行領域Rt内に第2目標走行軌道T2を生成することにより、過去に車両が手動運転で走行した走行軌跡Taを学習した学習モデル31aにより生成された第1目標走行軌道T1の利点を、第2目標走行軌道T2に生かすことができる。例えば乗員が意図する軌道に近い目標走行軌道を生成できる。
また、第2目標走行軌道T2の曲率及び曲率変化の少なくとも一方が、予め設定された制約条件を満足するように第2目標走行軌道T2を生成することにより、滑らかな第2目標走行軌道T2を生成できる。
【0029】
(動作)
図4は、第1実施形態の走行制御方法の一例のフローチャートである。
ステップS1において車線境界検出部30は、自車両1が走行する走行車線の自車両1前方の車線形状を検出する。
ステップS2において第1目標走行軌道生成部31は、過去に車両が手動運転で走行した車線の車線形状と走行軌跡とを学習した学習モデル31aに、車線境界検出部30が検出した走行車線の車線形状を入力することにより、第1目標走行軌道T1を生成する。
【0030】
ステップS3において走行領域設定部32は、第1目標走行軌道T1に基づいて走行領域Rtを設定する。
ステップS4において第2目標走行軌道生成部33は、走行領域Rt内を走行する第2目標走行軌道T2を、第2目標走行軌道T2の曲率及び曲率変化の少なくとも一方について予め設定した制約条件を満足するように生成する。
ステップS5において車両制御部34は、第2目標走行軌道T2に沿って走行するように自車両1を制御する。その後に処理は終了する。
【0031】
(第2実施形態)
図5は、第2実施形態のコントローラ18の機能構成の一例のブロック図である。第2実施形態のコントローラ18は、第1実施形態のコントローラ18に類似する構成を有しており同一又は類似の構成要素には同じ参照符号を付与して、重複する説明を省略する。
第2実施形態の第1目標走行軌道生成部31は、学習モデル31aと、予測軌道算出部31bを備える。
【0032】
上記のとおり学習モデル31aは、過去に車両が手動運転で走行した車線の車線形状と走行軌跡とを学習した学習モデルである。学習モデル31aは、例えばニューラルネットワーク、ランダムフォレスト、サポートベクタマシン等により構成してよい。
学習モデル31aに車線形状を学習させるための学習データとして、例えば図3(a)に示した車線境界点PR0~PR8及びPL0~PL8と同様に、車線境界線上の車線境界点の位置データを用いてよい。
【0033】
図6(a)は、学習モデル31aの学習データの一例を説明する模式図である。例えば過去に車両Vが手動運転で走行した際に、車両Vが走行した車線の所定長の区間をN個(Nは2以上の整数)の分割区間に分割する。
図6の例では分割数Nは「8」であり、車両Vの前方の車線が8個の分割区間S1~S8に分割される。分割数Nは「8」に限定されず「8」よりも多くても少なくてもよい。
【0034】
そして、分割区間S1の始点における右側及び左側の車線境界線上のそれぞれの車線境界点p00及びp10の位置データと、各分割区間S1~S8の終点における右側及び左側の車線境界線上のそれぞれの車線境界点p01~p08及びp11~p18の位置データとを、車線形状の学習データとして学習モデル31aに学習させる。
【0035】
一方で、走行軌跡Taの学習データとしては、右側の車線境界点p00~p08と左側の車線境界点p10~p18とをそれぞれ結ぶ直線である区間線Lsと、走行軌跡Taと、の交点の位置データを学習モデル31aに学習させてよい。
区間線Lsは、車線幅方向に延びる直線であり、分割区間S1~S8のうち互いに隣接する分割区間の間を区分する。
【0036】
例えば区間線Lsと走行軌跡Taとの交点の位置データとして、区間線Lsの全長(すなわち右側及び左側の車線境界線の間の距離)Ldに対する、左側の車線境界線から交点までの距離Lnの比率(Ln/Ld)を、学習モデル31aに学習させてよい。
区間線Lsと走行軌跡Taとの交点が左側の車線境界線上に位置する場合には比率(Ln/Ld)は「0」となり、右側の車線境界線上に位置する場合には比率(Ln/Ld)は「1」となる。
【0037】
図5を参照する。車線境界検出部30は、自車両1が走行する走行車線の自車両1前方の車線形状を検出し、車線形状のデータを第1目標走行軌道生成部31と走行領域設定部32へ出力する。
例えば車線境界検出部30は、自車両1が走行する走行車線の車線形状のデータを、学習モデル31aに学習させる車線形状の学習データと同様の形式で生成してよい。
図6(b)を参照する。例えば車線境界検出部30は、自車両1の現在位置P0から所定長だけ前方の地点までの範囲の車線をN個の分割区間(図6(b)の例では8個)に分割してよい。
【0038】
車線境界検出部30は、自車両1の現在位置P0における右側及び左側の車線境界線上のそれぞれの車線境界点PR0及びRL0の位置と、各分割区間の終点における右側及び左側の車線境界線上のそれぞれの車線境界点PR1~PR8及びPL1~PL8の位置データとを、走行車線の車線形状のデータとして出力してよい。
図6(b)の細い実線Lsは、右側の車線境界点PR0~PR8と左側の車線境界点PL0~PL8とをそれぞれ直線で結んだ区間線Lsであり、区間線Lsは、N個の分割区間のうち互いに隣接する分割区間の間を区分する。
【0039】
第1目標走行軌道生成部31は、車線境界検出部30から出力された車線形状のデータを学習モデル31aに入力する。
学習モデル31aは、入力された車線形状のデータに基づいて自車両1前方の走行車線における第1目標走行軌道T1を生成する。図6(b)の実線T1は、第1目標走行軌道T1を示している。
【0040】
例えば学習モデル31aは、第1目標走行軌道T1を表現するデータとして、図6(b)の丸プロットのように、各区間線Ls上における第1目標走行軌道T1のそれぞれ位置を出力してよい。すなわち、区間線Lsのそれぞれと第1目標走行軌道T1との交点を出力してよい。例えば学習モデル31aは、区間線Lsと第1目標走行軌道T1との交点を表すデータとして、区間線Lsの全長(すなわち右側及び左側の車線境界線の間の距離)Ldに対する、左側の車線境界線から交点までの距離Lnの比率(Ln/Ld)を出力してよい。
区間線Lsと第1目標走行軌道T1との交点が左側の車線境界線上に位置する場合には比率(Ln/Ld)は「0」となり、右側の車線境界線上に位置する場合には比率(Ln/Ld)は「1」となる。
【0041】
図5を参照する。予測軌道算出部31bは、車線境界検出部30が検出した車線境界点PR0~PR8と左側の車線境界点PL0~PL8の位置情報と、学習モデル31aから出力される比率(Ln/Ld)のデータと、に基づいて、各区間線Lsと第1目標走行軌道T1とのそれぞれの交点の位置を算出し、交点の点列の位置データを第1目標走行軌道T1のデータとして生成する。
【0042】
走行領域設定部32は、第1目標走行軌道生成部31が設定した第1目標走行軌道T1に基づいて、自車両1前方の走行車線における自車両1が走行する走行領域Rtを設定する。第2実施形態の走行領域設定部32は、領域幅設定部32aと、領域境界設定部32bを備える。
領域幅設定部32aは、第1目標走行軌道T1の形状に基づいて、走行領域Rtの幅である走行領域幅Wを設定する。例えば領域幅設定部32aは、第1目標走行軌道T1の滑らかさに基づいて走行領域幅Wを設定してよい。例えば第1目標走行軌道T1の形状がより滑らかな場合における走行領域幅Wに比べて、より滑らかでない場合における走行領域幅Wを大きくしてもよい。
【0043】
例えば領域幅設定部32aは、第1目標走行軌道T1上の複数の点を選択して、これら複数の点の近似直線を生成する。そして第1目標走行軌道T1上の点から近似直線までの距離に基づいて走行領域幅Wを設定してよい。例えば第1目標走行軌道T1上の点から近似直線までの距離の統計値(最大値、平均値、中間値など)に基づいて走行領域幅Wを設定してよい
【0044】
図7(a)は、第1目標走行軌道T1上の複数の点の近似直線に基づく走行領域幅Wの設定方法の一例を説明する模式図である。
例えば、領域幅設定部32aは、第1目標走行軌道T1上の隣接する3つの点を含むグループを複数個設定する。以下の説明において、第1目標走行軌道T1上の点を「軌道点」と表記することがある。図7(a)では図面の簡単のため、軌道点の複数のグループのうち、軌道点P0、P1a及びP2aからなるグループとP1a、P2a及びP3aからなるグループのみを例示しているが、他のグループについても同様に設定する。
【0045】
領域幅設定部32aは、隣接する3つの軌道点のうち両端の第1点と第3点とを結んだ直線を算出し、第1点と第3点との間に挟まれる第2点から第1点と第3点とを結んだ直線までの距離を算出する。
図7(a)の例では、軌道点P0、P1a及びP2aからなるグループに関して、第1点P0と第3点P2aとを結んだ直線La1を算出し、第2点P1aから直線La1までの距離D1を算出する。
【0046】
また、軌道点P1a、P2a及びP3aからなるグループに関して、第1点P1aと第3点P3aとを結んだ直線La2を算出し、第2点P2aから直線La2までの距離D2を算出する。他の軌道点のグループについても同様に、第2点から第1点と第3点とを結んだ直線までの距離を算出する
領域幅設定部32aは、複数の軌道点のグループについてそれぞれ算出した距離の統計値(最大値、平均値、中間値など)に基づいて走行領域幅Wを設定する。
【0047】
領域境界設定部32bは、領域幅設定部32aが設定した走行領域幅Wと、第1目標走行軌道T1とに基づいて、車線幅方向に走行領域幅Wを有する走行領域Rtを設定する。
図7(b)は、走行領域Rtの右側境界線BR及び左側境界線BLを形成する境界点の設定方法の一例を説明する模式図である。
まず領域境界設定部32bは、走行領域Rtの車線幅方向の両端の境界を画定する境界点(すなわち右側境界線BRを形成する境界点と左側境界線BLを形成する境界点)のうちの何れか一方である第1境界点として、第1目標走行軌道T1上の各軌道点P1a~P8a(丸プロット)を設定する。
【0048】
次に領域境界設定部32bは、第1目標走行軌道T1上の少なくとも3つの軌道点(丸プロット)のグループを設定して、グループに含まれる少なくとも3つの軌道点の近似直線(破線)を生成する。
領域境界設定部32bは、少なくとも3つの軌道点の各々を、これらの軌道点から近似直線へ向かうそれぞれの方向へ、車線幅方向に沿って走行領域幅Wだけ移動させた点(四角プロット)を、走行領域Rtの車線幅方向の両端の境界を画定する境界点のうちの他方である第2境界点として設定する。
【0049】
図7(b)の例では、3つの軌道点P0、P1a及びP2aのグループに対して、軌道点P0、P1a及びP2aの近似直線Lb1を算出する。例えば領域境界設定部32bは、最小二乗法に基づいて近似直線Lb1を算出してよい。領域境界設定部32bは、軌道点P1aを、軌道点P1aから近似直線Lb1へ向かう方向へ、車線幅方向に沿って(すなわち区間線Lsに沿って)走行領域幅Wだけ移動させた点P1b(四角プロット)を、第2境界点として設定する。
また領域境界設定部32bは、軌道点P2aを、軌道点P2aから近似直線Lb1へ向かう方向へ、車線幅方向に沿って走行領域幅Wだけ移動させた点P2bを、第2境界点として設定する。
なお、自車両1の現在位置P0については、現在位置P0を車線幅方向に沿って左右に走行領域幅W/2だけそれぞれ移動させた点P0b及びP0cを、走行領域Rtの車線幅方向の両端の第1境界点及び第2境界点として設定してよい。
【0050】
同様に、3つの軌道点P3a、P4a及びP5aのグループに対して、軌道点P3a、P4a及びP5aの近似直線Lb2を算出する。領域境界設定部32bは、軌道点P3aを、軌道点P3aから近似直線Lb2へ向かう方向へ、車線幅方向に沿って走行領域幅Wだけ移動させた点P3bを、第2境界点として設定する。
【0051】
軌道点P4aを、軌道点P4aから近似直線Lb2へ向かう方向へ、車線幅方向に沿って走行領域幅Wだけ移動させた点P4bを、第2境界点として設定する。
軌道点P5aを、軌道点P5aから近似直線Lb2へ向かう方向へ、車線幅方向に沿って走行領域幅Wだけ移動させた点P5bを、第2境界点として設定する。
【0052】
同様に、3つの軌道点P6a、P7a及びP8aのグループに対して、軌道点P6a、P7a及びP8aの近似直線Lb3を算出する。領域境界設定部32bは、軌道点P6aを、軌道点P6aから近似直線Lb3へ向かう方向へ、車線幅方向に沿って走行領域幅Wだけ移動させた点P6bを、第2境界点として設定する。
【0053】
軌道点P7aを、軌道点P7aから近似直線Lb3へ向かう方向へ、車線幅方向に沿って走行領域幅Wだけ移動させた点P7bを、第2境界点として設定する。
軌道点P8aを、軌道点P8aから近似直線Lb3へ向かう方向へ、車線幅方向に沿って走行領域幅Wだけ移動させた点P8bを、第2境界点として設定する。
【0054】
なお、第1目標走行軌道T1上の軌道点P1a~P8aや、上記のように軌道点P1a~P8aを走行領域幅Wだけ移動させた点P1b~P8bが、自車両1の走行車線の外に出ている場合がある。
図7(c)は、軌道点P3aが自車両1の走行車線の外に出ている場合の例を示している。このような場合に領域境界設定部32bは、軌道点P3aを通って車線幅方向に延びる直線Lwと、車線境界線と、の交点(三角プロット)に第1境界点P3cを設定してよい。
軌道点P1a~P8aを走行領域幅Wだけ移動させた点P1b~P8bのいずれかが、自車両1の走行車線の外に出ている場合も同様に、この点を通って車線幅方向に延びる直線Lwと、車線境界線と、の交点に第2境界点を設定してよい。
【0055】
領域境界設定部32bは、第1境界点と、第1境界点を移動させて設定した第2境界点とのうち、より右側にある一方の点を、走行領域Rtの右側境界線BRを形成する右側境界点として設定し、より左側にある他方の点を、走行領域Rtの左側境界線BLを形成する左側境界点として設定する。
領域境界設定部32bは、右側境界点同士を接続して右側境界線BRを設定するとともに、左側境界点同士を接続して左側境界線BLを設定することにより、図3(b)に示すような走行領域Rtを設定する。
【0056】
図5を参照する。第2目標走行軌道生成部33は、走行領域設定部32が設定した走行領域Rt内に第2目標走行軌道T2を生成する。
例えば、第2目標走行軌道生成部33は、第2目標走行軌道T2の曲率及び曲率変化の少なくとも一方が予め設定された制約条件を満足するか、又は曲率及び曲率変化のそれぞれについて予め設定された制約条件の両方を満足する第2目標走行軌道T2を生成してよい。
【0057】
曲率に関する制約条件は、例えば第2目標走行軌道T2の曲率を変数に含んだ評価関数が最小値になることであってもよく、所定の許容範囲内の値になることであってもよい。同様に、曲率変化に関する制約条件は、例えば第2目標走行軌道T2の曲率変化を変数に含んだ評価関数が最小値になることであってもよく、所定の許容範囲内の値になることであってもよい。
第2目標走行軌道生成部33は、制約条件を満足する第2目標走行軌道T2を、例えば最適化計算手法により生成してもよい。例えば第2目標走行軌道生成部33は、最適化計算手法により第2目標走行軌道T2の曲率及び曲率変化を変数に含んだ評価関数が最小になるように第2目標走行軌道T2を生成してよい。
また例えば第2目標走行軌道生成部33は、ニューラルネットワーク、ランダムフォレスト、サポートベクタマシン等の学習モデルを用いて、制約条件を満足する第2目標走行軌道T2を生成してもよい。
【0058】
図8は、第2実施形態の走行制御方法の一例のフローチャートである。
ステップS11において車線境界検出部30は、自車両1が走行する走行車線の自車両1前方の車線形状を検出する。
ステップS12において第1目標走行軌道生成部31は、第1目標走行軌道T1を生成する。
【0059】
ステップS13において走行領域設定部32の領域幅設定部32aは、走行領域幅Wを設定する。
ステップS14において領域境界設定部32bは、第1目標走行軌道T1と走行領域幅Wに基づいて走行領域Rtの境界点を設定することにより、走行領域Rtを設定する。
ステップS15において第2目標走行軌道生成部33は、第2目標走行軌道T2を生成する。
ステップS16において車両制御部34は、第2目標走行軌道T2に沿って走行するように自車両1を制御する。その後に処理は終了する。
【0060】
(第3実施形態)
第3実施形態のコントローラ18は、第1目標走行軌道生成部31が生成した第1目標走行軌道T1が滑らかでない区間においては、走行領域Rt内を走行するように第2目標走行軌道T2を生成し、第1目標走行軌道T1が滑らかな区間おいては、第1目標走行軌道T1上の点を通過するように第2目標走行軌道T2を生成する。
第3実施形態のコントローラ18は、第1実施形態及び第2実施形態のコントローラ18に類似する構成を有しており同一又は類似の構成要素には同じ参照符号を付与して、重複する説明を省略する。
【0061】
走行領域設定部32は、第1目標走行軌道T1上の複数の軌道点の近似直線を生成し、第1目標走行軌道上の軌道点から近似直線までの距離が閾値以上である第1区間と、閾値未満である第2区間とを設定する。第1区間においては、第1目標走行軌道T1が比較的滑らかでない形状を有し、第2区間においては、第1目標走行軌道T1が比較的滑らかな形状を有する。
図9を参照する。例えば走行領域設定部32は、第1目標走行軌道T1上の少なくとも3つの軌道点のグループを設定して、グループに含まれる少なくとも3つの軌道点の近似直線(破線)を生成する。
【0062】
図9の例では、隣接する3つの軌道点P0、P1a及びP2aのグループと、軌道点P2a、P3a及びP4aのグループと、軌道点P4a、P5a及びP6aのグループと、軌道点P6a、P7a及びP8aのグループとを設定する。
軌道点P0、P1a及びP2aのグループに関して、両端の第1点P0と第3点P2aとを結んだ直線Lc1を算出し、第1点P0と第3点P2aの間に挟まれる第2点P1aから直線Lc1までの距離D1を算出する。
【0063】
同様に、軌道点P2a、P3a及びP4aのグループに関して、第1点P2aと第3点P4aとを結んだ直線Lc2を算出し、第2点P3aから直線Lc2までの距離D2を算出する。
軌道点P4a、P5a及びP6aのグループに関して、第1点P4aと第3点P6aとを結んだ直線Lc3を算出し、第2点P5aから直線Lc3までの距離D3を算出する。
【0064】
軌道点P6a、P7a及びP8aのグループに関して、第1点P6aと第3点P8aとを結んだ直線Lc4を算出し、第2点P7aから直線Lc4までの距離D4を算出する。
走行領域設定部32は、距離D1及びD2が閾値以上である区間Saを第1区間として設定し、距離D3及びD4が閾値未満である区間Sbを第2区間として設定する。
【0065】
第2目標走行軌道生成部33は、第1区間Saでは走行領域Rt内を走行するように第2目標走行軌道T2を生成し、第2区間Sbでは第1目標走行軌道T1上の点を通過するように第2目標走行軌道T2を生成する。なお、走行領域設定部32は、第2区間Sbにおいて走行領域Rtの設定を省略してもよい。
【0066】
(実施形態の効果)
(1)外界センサ11は、自車両1が走行する走行車線の自車両1前方の車線形状を検出する。コントローラ18は、過去に車両が走行した走行軌跡に基づいて、自車両1前方の前記走行車線における第1目標走行軌道T1を生成し、第1目標走行軌道T1に基づいて、自車両1前方の走行車線における自車両1が走行する走行領域Rtを設定し、走行領域Rt内を走行する第2目標走行軌道T2を、第2目標走行軌道T2の曲率及び曲率変化の少なくとも一方について予め設定した制約条件を満足するように生成し、第2目標走行軌道T2に沿って走行するように自車両1を制御する。
例えば、コントローラ18は、過去に車両が手動運転で走行した車線の車線形状と走行軌跡とを学習した学習モデル31aに走行車線の車線形状を入力することにより、第1目標走行軌道T1を生成してよい。
【0067】
このように、第1目標走行軌道T1に基づいて設定された走行領域Rt内に第2目標走行軌道T2を生成することにより、過去に車両が手動運転で走行した走行軌跡を学習した学習モデル31aにより生成された第1目標走行軌道T1の利点を、第2目標走行軌道T2に生かすことができる。例えば乗員が意図する軌道に近い第2目標走行軌道T2を生成できる。
また、第2目標走行軌道T2の曲率及び曲率変化の少なくとも一方が予め設定された制約条件を満足するように第2目標走行軌道T2を生成することにより、滑らかな第2目標走行軌道T2を生成できる。
【0068】
(2)コントローラ18は、制約条件として、第2目標走行軌道T2の曲率及び曲率変化の少なくとも一方を変数に含んだ評価関数が最小又は閾値未満になるように第2目標走行軌道T2を生成してよい。
これにより、滑らかな第2目標走行軌道T2を生成できる。
【0069】
(3)コントローラ18は、車線幅方向の走行領域Rtの幅である走行領域幅Wを、第1目標走行軌道T1の形状に基づいて設定してよい。
例えば、コントローラ18は、第1目標走行軌道T1上の複数の点の近似直線を生成し、第1目標走行軌道T1上の点から近似直線までの距離に基づいて走行領域幅Wを設定してよい。
【0070】
例えばコントローラ18は、第1目標走行軌道T1上の隣接する3つの点を含むグループを複数個設定し、隣接する3つの点のうち第1点と第3点との間に挟まれる第2点から第1点と第3点とを結んだ直線までの距離をグループ毎に算出し、第2点から第1点と第3点とを結んだ直線までの距離の最大値に基づいて走行領域幅Wを設定してよい。
これにより、第1目標走行軌道T1が滑らかでない場合ほど走行領域Rtの幅をより広く設定することができ、この結果、第2目標走行軌道T2の通過点の自由度が大きくして滑らかな第2目標走行軌道T2を生成できる。
【0071】
(4)コントローラ18は、第1目標走行軌道T1上の少なくとも3つの点の近似直線を生成し、少なくとも3つの点の各々を、これらの点から近似直線へ向かうそれぞれの方向へ、車線幅方向に沿って走行領域幅Wだけ移動させた点を、走行領域Rtの境界点として設定してよい。
例えばコントローラ18は、走行領域Rtの車線幅方向の両端の境界点のうちの何れか一方である第1境界点として、第1目標走行軌道T1上の点を設定し、両端の境界点のうち他方である第2境界点として、少なくとも3つの点の各々を、これらの点から近似直線へ向かうそれぞれの方向へ、車線幅方向に沿って走行領域幅Wだけ移動させた点を設定してよい。
これにより、第1目標走行軌道T1の形状と概略的に類似する特徴を有する形状の走行領域Rtを設定できる。また、走行領域Rtの走行領域幅Wを第1目標走行軌道T1の滑らかさに応じて調整できる。
【0072】
(5)コントローラ18は、少なくとも3つの点のうち何れか点を、何れかの点から近似直線へ向かうそれぞれの方向へ、車線幅方向に沿って走行領域幅Wだけ移動させた点が、走行車線の外に出た場合には、移動させた点を通って車線幅方向に延びる直線と、車線境界線との交点に境界点を設定してもよい。
またコントローラ18は、第1目標走行軌道T1上の点が走行車線の外に出ている場合、走行車線の外に出ている第1目標走行軌道T1上の点を通って車線幅方向に延びる直線と車線境界線との交点に第1境界点を設定してよい。
これにより、走行車線の外側を通るような第2目標走行軌道T2の生成を防止できる。
【0073】
(6)コントローラ18は、第1目標走行軌道T1上の複数の点の近似直線を生成し、第1目標走行軌道T1上の点から近似直線までの距離が閾値以上である第1区間と、距離が閾値未満である第2区間とを設定し、第1区間では走行領域Rt内に第2目標走行軌道T2を生成し、第2区間では第1目標走行軌道T1上の点を通過する第2目標走行軌道T2を生成してよい。
これにより、第1目標走行軌道T1が滑らかである区間では、より第1目標走行軌道T1に近い軌道を第2目標走行軌道T2として生成するので、より乗員の意図に合致した軌道に沿って自車両を走行させることができる。また、第1目標走行軌道T1が滑らかである区間では、走行領域Rtの算出を省略できるので、コントローラ18の演算負荷を低減できる。
【0074】
(7)学習モデル31aは、過去に車両が手動運転で走行した車線の車線形状と、走行軌跡と、車速と、車両の横加速度及び縦加速度とを学習したニューラルネットワークであってよい、コントローラ18は、走行車線の車線形状と、自車両1の速度と横加速度と縦加速度と、をニューラルネットワークに入力することにより第1目標走行軌道T1を生成してよい。
これにより、乗員が意図する走行軌道を予測して、第1目標走行軌道T1として生成できる。
【符号の説明】
【0075】
1…自車両、10…走行制御装置、11…外界センサ、12…車両センサ、13…測位装置、14…地図データベース、15…ナビゲーション装置、17…アクチュエータ、18…コントローラ、18a…プロセッサ、18b…記憶装置、30…車線境界検出部、31…第1目標走行軌道生成部、31a…学習モデル、31b…予測軌道算出部、32…走行領域設定部、32a…領域幅設定部、32b…領域境界設定部、33…第2目標走行軌道生成部、34…車両制御部
図1
図2
図3
図4
図5
図6
図7
図8
図9