実践編 | アポロレーンチェンジの詳しい説明

実践編 | アポロレーンチェンジの詳しい説明

この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転載したものです。転載については出典元にお問い合わせください。

1. はじめに

1.1. 車線変更機能

簡単に言えば、車線変更の役割は、計画の後続のモジュールで使用するために、候補参照線から参照線の 1 つを選択することです。

注意すべき点は、Apollo がリリースした車線変更コードは削減されすぎていて、シンプルなフレームワークしかないことです。能動的な車線変更、障害物による受動的な車線変更、比較的完成度の高いステート マシン、車線変更ウィンドウとギャップ選択など、多くの機能が欠けています。この技術記事では、既存のフレームワークの内容のみを示しています。他の車線変更機能については、後続のコンテンツにご期待ください。

1.2. 車線変更ステートマシン

Apollo の現在の車線変更ステート マシンは次のとおりです。

ステート マシンに関して注目すべき点がいくつかあります。

  • ここで、IN_CHANGE_LANE には、車線変更実行と車線変更準備の両方が含まれます。通常は、これらを区別する必要があります。Apollo は、まず基準線を切り替えてから車線変更アクションを実行する方法を採用しています。他の競合他社の中には、まず車線変更アクションを実行してから基準線を切り替える方法を採用しているものもあります (基準線が切り替わるフレームでは、車両の横方向距離が 0 に近くなるという利点があります)。
  • 現在のコードでは、車線変更に失敗した場合、反映されません。これは、関連するコードを削除したことが原因であると考えられる理由もあります。
  • 完全な車線変更ステータスには、少なくとも車線変更準備、車線変更実行、車線変更保留、車線変更キャンセル、車線変更完了などの状態が含まれる必要があります。

2. コード分析

2.1. 全体的なプロセス

関連コードパス: modules/planning/tasks/deciders/lane_change_decider/http://lane_change_decider.cc

  1. reference_line_infoが空である異常なケースを処理します。
  2. reckless_change_lanetrueに設定されている場合、参照線は直接更新されます。
  3. 前のフレームの車線変更ステータスprev_statusを取得します。プログラムを初めて実行したときは、 prev_statusにステータス情報がない ( !prev_status->has_status() ) 可能性があるため、そのまま車線変更完了状態であるとみなします。
  4. reference_line_infoの数が 1 の場合( has_change_lanefalse )、車両がパトロール状態にあり、車両が現在いる車線には固有の車線線があり、周囲に変更可能な車線がないため、車線変更状態を直接更新できることを意味します。
  5. レーン変更ステートマシンの切り替え
  • 前フレームが車線変更状態ChangeLaneStatus::IN_CHANGE_LANE場合:前フレームで自車両がいた車線が、このフレームの車線と同じであれば、自車両がまだ目標車線に向かって移動中であることを意味します。逆に、前フレームで自車両がいた車線が、このフレームの車線と異なる場合は、自車両がすでに目標車線にいて、切り替えが完了していることを意味します。
  • 前のフレームは車線変更失敗状態ChangeLaneStatus::CHANGE_LANE_FAILEDでした。車線変更に失敗した場合は、しばらく状態がフリーズし、その後、次の車線変更に備えて車線変更状態に切り替わります。
  • 前のフレームは車線変更完了状態ChangeLaneStatus::CHANGE_LANE_FINISHEDでした。車線変更が成功した後も一定時間フリーズし、その後、次の車線変更に備えるために車線変更状態に切り替わります。ここでのフリーズ時間は、頻繁な車線変更を避けるためです。

2.2. セキュリティチェック

IsClearToChangeLane 、車線変更が安全かどうかを判断します。

  1. この安全判断方法では、仮想障害物や静的障害物は考慮されません。
  2. 参照線上の動的障害物の投影を計算します。投影の幾何学的意味は次の図に示されています。

  1. 車両が車線変更中の場合IsChangeLanePath 、上記で計算した投影関係を使用して、ターゲット参照線の車線外の障害物を無視します。
  2. 障害物の走行方向が車両のsame_directionと同じかどうかを判断します。障害物と車両の走行方向および速度の関係に基づいて、前方安全距離と後方安全距離を計算します。
  3. 車両と障害物との距離が上記で計算した安全距離よりも大きい場合は、車線変更しても安全であるとみなされます。   HysteresisFilter 、安全性の判断結果の安定性を高めることを目的とした Open Close ロジックです (前のフレームの判断結果が安全であると見なされた場合、このフレームでも安全であると判断される可能性が高くなり、その逆も同様です)。

2.3. 参照線の更新

LaneChangeDecider::PrioritizeChangeLane

  1. 入力:   is_prioritize_change_lane is_prioritize_change_lane trueの場合、車両が切り替えるターゲット参照レーンを検索します。そうでない場合、つまりis_prioritize_change_lanefalse場合、車両が現在位置している参照レーンを検索します。
  2. reference_line_info->splice(reference_line_info->begin(),*reference_line_info, iter) ; ステップ 1 で見つかったiterが指す参照線をリンク リストの先頭に配置します。Planning の以降のモジュールはすべてreference_line_info().front()使用するため、リンク リストの先頭は参照線が現在のフレームで使用されていることを示します。   splice使用方法の詳細については、「C++ の基礎」を参照してください。
  3. 出力:   ReferenceLineInfoリンク リスト。

オリジナルリンク: https://mp.weixin.qq.com/s/IQkBV8iadaU4Qy70F3Xs3Q

<<: 

>>:  生成AIは私たちの生活をどのように変えるのでしょうか?

ブログ    
ブログ    
ブログ    

推薦する

産業用 AI が将来、精製業界にどのような力を与えるか

[[347965]]研究によると、人工知能技術は石油精製業界に大きな利益をもたらす可能性があるそうで...

清華大学が転移学習アルゴリズムライブラリをオープンソース化:PyTorch実装に基づき、既存のアルゴリズムの簡単な呼び出しをサポート

最近、清華大学ビッグデータ研究センターの機械学習研究部門は、効率的で簡潔な転移学習アルゴリズムライブ...

オープンソース!香港中文大学、MIT、復旦大学が初のRNA基礎モデルを提案

タンパク質分野とは異なり、RNA 分野の研究では十分な注釈付きデータが不足していることがよくあります...

NVIDIA が Canvas を発表: AI を活用してシンプルな筆遣いをフォトリアリスティックな風景画に変換

[[407129]] 2年前、NVIDIAは、大雑把な落書きをリアルタイムでフォトリアリスティックな...

...

プライバシー保護における新たなブレークスルー: ガウス差分プライバシー フレームワークとディープラーニングの組み合わせ

[[324532]]人工知能におけるプライバシーの問題は、重要かつ深刻な問題として認識されています。...

AIが医療業界に参入すると、人間は看護師の仕事を失うのでしょうか?

AIに取って代わられにくい、人間の「鉄の飯碗」を探し続けていきましょう。医療業界では、AI と自動...

冬季オリンピックの AI: 氷と雪の世界における 5 つの「テクノロジーの花」

2022年2月4日、第24回冬季オリンピックが北京で正式に開幕しました。 2008年の「一つの夢」...

2018 年のベスト 6 無料オンライン人工知能コース!

人工知能 (AI)、自動化、認知システムを取り巻く原則と実践は、ビジネス分野、専門知識、専門分野に関...

トレンド検索No.1! B駅のアップマスターはAIを使って李大昭、陳延年らを笑顔にした

[[408814]]この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI...

NetEase Cloud Music 推奨システムのコールド スタート技術

1. 問題の背景: コールドスタートモデリングの必要性と重要性コンテンツプラットフォームとして、QQ...

ウィーンで無人タクシーがデビュー、時速130キロ、航続距離30分

TechXploreによると、オーストリアの首都ウィーンのゼネラリ・アリーナでは、ボーイングやエアバ...

マスク氏がai.comドメイン名を購入しました!ウルトラマンは数千万ドルを費やしてそれを購入し、4ヶ月でアイアンマンに売却した

ai.comドメイン名は、OpenAIが数千万ドルを費やしてマスク氏に購入された。これで、URL a...

必要なパラメータはわずか1%で、その効果はControlNetを上回る。新しいAI塗装制御マスターが登場

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

人工知能がサイバーセキュリティの世界に及ぼす影響

サイバーセキュリティは、今日世界中の企業が直面している戦略的な課題です。パンデミックによって加速した...