こんにちは、親愛なるリスナーの皆さん!シミュレーション グランド ビュー ガーデン プログラムの時間です!今日は自動運転シミュレーション業界について簡単に紹介します。
まず、自動運転にシミュレーションが必要な理由について話しましょう。数年前、『If You Are the One』を視聴していた際、ゲストのファン・ランは国民の3分の2が自動運転を受け入れる場合にのみ自動運転を受け入れると述べたが、これは自動運転の安全性に対する一般の人々の懸念を反映していた。安全性を確保するために、自動運転アルゴリズムは実際に大規模に適用される前に、多数の路上テストを受ける必要があります。しかし、自動運転システムのテストは非常に「高価」です。時間と資本コストが膨大であるため、人々はできるだけ多くのテストをコンピュータ システムに移行し、シミュレーションを使用して自動運転システムの問題のほとんどを明らかにしたいと考えています。したがって、現場での路上試験の需要が減り、私たちの仕事が生まれました。
シミュレーション シナリオは、自動運転システムのテスト ケースです。中国自動車技術研究センターの分類によれば、自動運転テストシナリオは、[自然運転シナリオ] [危険労働条件シナリオ] [標準規制シナリオ] [パラメータ再編シナリオ]: 自然運転シナリオの 4 つの主要カテゴリに分類できます。自然な運転状態は、自動運転テスト シナリオを構築する際の最も基本的なデータ ソースであり、危険な労働条件シナリオには主に、多数の厳しい気象環境、複雑な道路交通、および典型的な交通事故が含まれます。 CIDASデータベース、自動運転の有効性を検証するために標準的な規制シナリオが使用される 基本的なテストシナリオは、自動運転車が持つべき基本的な機能をテストすることを目的として、既存の規格と評価手順を通じてテストシナリオを構築することである、パラメータの再編成シナリオとは、既存のシミュレーション シナリオをパラメータ化して完成させることです。シミュレーション シナリオのランダム生成または自動再構成には、無制限、スケーラビリティ、バッチ処理、および自動化という特徴があります。
シーンライブラリの構築プロセスは大きく分けて、実際の道路データや規制データなどの【データ収集】と、データから特徴を抽出して組み合わせる【データ加工】に分かれます。シナリオと [アプリケーション データ] を形成するため: シナリオ ライブラリのテストとフィードバック。
現時点では、自然な運転シーンの生成は基本的に自動化できます。収集車両は特定の形式に従ってデータを収集し、アルゴリズムは有用と思われる主要な断片のデータをフィルタリングし、アルゴリズムは車両の走行距離を計算します。フラグメント データの軌跡内の他の周囲の車両やその他の車両の軌跡を取得し、その軌跡を OpenScenario 形式のシーン ファイルなどのシーン記述ファイルに書き込みます。多くの既存のシミュレーション ソフトウェアは、この方法で取得したシーン ファイルをシミュレーションに直接使用できます。なお、この場合、シミュレーションソフト上で復元されるのは実際の採掘シーンの「ロジック」のみであり、シーン参加者はシミュレーションソフトの3Dモデルライブラリにある車両モデル「ベスト」を着用しています。現実生活の演出されたシーンや行動の断片。つまり、この方法で復元されたシーンは、制御アルゴリズムのテストは確実に満たすことができますが、結局のところ、前景の車両と背景は依然として 3 次元モデルによって再生されているため、当時のセンサー感知情報を復元することはできません。シミュレーションソフトのこと。センサーの感知情報を復元したい場合は、NERF を適用できます。
それでは、どのようなシミュレーション シナリオが価値があるのでしょうか?路上試験車両によって収集された自然な走行データの復元は、実際の道路状況に最も近く、ランダム性が高いと考えられていますが、現在の路上試験では走行に追いつくには時間がかかりすぎると思いませんか?そのためには、路上試験データを処理し、交通参加者の身元を抽出し、それらを再配置して組み合わせて、実際のデータに基づいたランダムなシーンを形成する必要があります。
たとえば、Baidu の 2019 年の人気論文では、同社の AADS シミュレーション システムが紹介されています。このシステムでは、ライダーと双眼カメラを備えた車が道路をスキャンするために使用され、自動運転シミュレーションのすべての情報を収集できます。取得したフッテージを取得し、入力フッテージを背景、シーンの照明、および前景のオブジェクトに自動的に分解します。ビュー合成技術により、静止した背景上で視点を変更し、任意の視点からの実画像を生成し、異なる環境を歩く車の動きをシミュレーションできます。では、これらの再編シナリオの有効性をどのように証明するのでしょうか?論文では、仮想シーンと実際のシーンにおける知覚アルゴリズムの認識効果を比較することで評価する方法について言及されているが、測定対象物の性能を測定ツールの評価に利用することも興味深い。その後、自動運転に適用される NERF 研究の一部でも、UniSim などのこの一連のアイデアが使用されました。
個人的には、自然運転データ シミュレーション シーンがどれほど効果的であっても、それは一部のアルゴリズムのテストにのみ適していると考えています。この方法がどのように使用されるかに関係なく、周囲の物体の軌跡が記録され、車の挙動に基づいてそれらを変更する方法はありません。これは映画とゲームの違いのようなもので、映画ではシーンを再生することしかできませんが、ゲームではインタラクションによってシーンを変えることができます。
おそらく近い将来、交通流シミュレーションと実際のデータを組み合わせて、ランダム シーン生成により、実際の交通状況と一致し、車両の挙動に応じて変化するシミュレーション シーンをバッチ作成できるようになるでしょう。
#先ほどお話ししたシーンライブラリは、自動運転シミュレーション用のデータを準備しているとも言えます。テストを行っている場合、シミュレーション開発作業はツールを作成または改善することです。
シミュレーション開発には、おそらく次の側面が含まれます:
最後に、より高度な要件を持つ 8 番目のポイントがあると思います。それは、「どこもクリックしない」機能です。自動運転機能フレームワークの一部についてはどうですか?オープンソースのアルゴリズムを使用して残りを埋め、「閉ループ」を実行させることはできますか?
自動運転シミュレーション テストに必要なデータとツールが揃ったら、次のステップはシミュレーション テストです。今日は主に、いくつかの一般的なシミュレーション テスト リンクを紹介します。
これまでのセクションで多くのことを述べてきましたが、それらはすべて私たちの業界の一般的な紹介であり、それらはすべて理解されています。象さん、このセクションでは私たちが日常的に行っていることについてお話します。これらの日常的なタスクは、もちろん 2 番目と 3 番目のセクションに含まれています:
もう 1 つのポイント 6. [要件分析]: シミュレーション開発エンジニアとして、あなたは自分が使用するツールを最もよく知っている人でなければなりません。そのため、顧客 (社内および社外の両方) が新しいニーズを持ったら、シミュレーション開発エンジニアは、技術的ソリューションを設計し、ニーズとテスト対象の特定の条件に基づいてソフトウェアとハードウェアの要件とプロジェクト計画を提案できなければなりません。そのため、場合によっては、製品管理作業とプロジェクト管理作業の両方を行う必要があります。
「テクノロジー スタック」という言葉は非常に異質に聞こえますが、実際にはこの位置をマスターする必要があります。何かを注文してください。昔、あるテレビシリーズを見たのですが、その中で救急科の医師が「私たちはヘビ油のようなもので、他の外科医は決して変わることができないのです」と自嘲していました。私は常々、シミュレーションエンジニアは病院の救急医のようなものだと思っていて、どのようなアルゴリズムをテストするのか、ナビゲーションや位置決め、制御計画、データ処理、パラメータの校正など、このアルゴリズム以外のすべてを準備する必要があることをすべて知っている必要があります。天文学と地理、医療占い、占星術、金彩画、グループと柳の判断...詳しい説明を求める必要はなく、アルゴリズムテストのニーズに迅速に応えることが最も重要です。
このいわゆる「全体像」はシミュレーション エンジニアの利点ですが、アルゴリズムを真に理解してのみ、真に改善に役立つシミュレーション作業を行うことができます。そうして初めて、さらに先に進むことができます。行き過ぎたので撤回します:
上記は単なる私の個人的な要約です。同僚の方はここに追加してください。
記事の完成度を高めるため、このセクションでは、市販されている一般的に使用されているシミュレーション ソフトウェアについても簡単に紹介します (広告ではありません。そのようなソフトウェアは使用しないでください)。リストには載っていません)ご遠慮ください)。
最後に、もう 1 つの lgsvl: 本来、lgsvl の利点は Apollo との統合がより優れていることですが、公式の lgsvl はそれを放棄したと聞きました。このプロジェクトでは、この罠を放棄することをお勧めします。
最初の 5 つのセクションでの私の紹介を通じて、賢い学生は自動運転シミュレーション エンジニアになるための学習プロセスをすでに体験できると思います。私の最初の 5 つのセクションの内容を批判することで、若い同僚はすでに前進する道を描くことができます。しかし、このセクションでは、この点に関する表面的な理解をまだ書き留めておきます。
これまで何度も述べてきましたが、自動運転のシミュレーションは、コンピューター/制御/ロボット工学など、さまざまな専攻の学生を受け入れることができる学際的な分野であることが誰でもわかると思います。機械/車両/パワーエレクトロニクス等
経験とテクノロジーの観点から、仕事の要件をいくつか挙げてみましょう:
現在の自動運転業界は大きな変動を経験していますが、まとめると、シミュレーションエンジニアを活用できる主な企業のタイプは次のとおりです。アプリケーションモールディングシミュレーションソフトウェアを主に統合するOEM、しかし、新興勢力 基本的には自社で研究する必要がある; 自動運転ソリューションプロバイダー、つまりアルゴリズムの Tier 1 もほとんどが自社で研究とシミュレーションを行う可能性がある; シミュレーションソフトウェア会社は中国でこの分野でスタートしたばかりであり、彼らは基本的にはスタートアップです。
このセクションの最後に、従来の機械から「切り替え」た私の経験についてお話します。私が修士号を取得して卒業した学校はトランスコーディングの文化が強く、私のクラスの機械系大学院に入学した中国人学生は10人中78人ほどが卒業後コンピュータ業界に従事していました。比較的緩やかなコース選択制度のため、学生はコンピュータサイエンス学部のコースをできるだけ多く履修することが推奨されます。そのため、その2年間は日時計を維持するために塗油が燃やされ、貧困が常態化していました。しかし、仕事を見つけるために試験に合格する必要があったのかどうかは覚えていません。一言で言えば、機械はどのようにしてコンピューターに変化するのでしょうか。コンピューター サイエンスの学位を半分取得してください。実際、当時は機械学だけでなくすべての専攻が変わりつつあり、中国人学生だけでなく世界中の人が参加していました。
しかし、後から考えると、自分は同じ状況ではなかったので、変革の最良の機会を逃してしまったことに気づきました。独学となると、さらに難しくなります。最も重要なことは、時間がないことです。そのためには、効率的な学習教材と学習方法が必要です。そのため、相対的に言えばオンライン授業の方が指導してくれる先生がいる分効率的です。 Courseraのコースは良いのですが、比較的高価なようです。近年、オープンソースのネットワークリソースが増えてきましたが、受講するコースはあまり洗練されておらず、結局のところコンピュータが最も実用的で実践しやすいと言えます。データ構造やアルゴリズム、Cの入門書など、コンピュータの古典的な本もたくさんありますが、どれも読んだことがありません。
実のところ、変革するための最も簡単な方法の 1 つは、コンピュータ関連の仕事に直接従事することだと思います。需要を増やす最も早い方法は、上で述べた学習の方向性と時間の問題を解決することです。ただし、これによってパフォーマンスが標準以下になるという問題がある場合は、それについては何も言わなかったことにしてください。
NERF には、「データ閉ループ」、「大規模モデル」、「エンドツー」が伴います。これらの新しいバズワードは共に、自動運転の分野で「波を起こしています」。わずか数年で、NERF はデビュー当時の単純な MLP ボリューム レンダリングではなくなりました。空間情報を保存するためのさまざまなキャリアがあります: ハッシュ テーブル、ボクセル グリッド、多次元ガウス関数... 新しいイメージング手法も登場しています。 U-net、CNN、ラスタライゼーション...自動運転の方向性は、NERF の小さな応用分野にすぎません。
NERF を自動運転シミュレーションの方向に適用すると、主に次のような問題に直面します。
自動運転データの収集方法により、シーンの範囲が「閉じられていない」ことになります。 : 屋外シーンには多数の遠景が含まれます。これは NERF の空間情報ストレージにとって大きな課題です。自動運転シーンには多数の動的オブジェクトが含まれており、NERF は動的オブジェクトと静的オブジェクトの分離を処理できる必要があります ( NERF モデルには一般に移行機能がなく、各シーンは個別の NERF モデルをトレーニングする必要がありますが、NERF のトレーニングはまだ比較的時間がかかるため、自動運転データに対する NERF の大規模な適用は困難です。まだ問題はあるだろう。
しかし、私は依然として NERF が自動運転シミュレーションに破壊的な開発をもたらし、最終的にはシミュレーションの知覚アルゴリズムにおけるドメイン ギャップを解消し、さらにはそれ以上のことを実現することを期待しており、同時に信じています。私が学んだ情報から判断すると、NERF は少なくとも次のブレークスルーをもたらすでしょう:
NERF の新しい透視画像合成機能は、知覚アルゴリズムのトレーニング データセットを強化できます。新しいセンサーの内部パラメーター (変更と同等) を生成できます。センサー構成)、外部パラメーター(修正された自車軌道)、写真、LIDAR 点群およびその他のデータを使用して、知覚アルゴリズムのトレーニング データをさらに提供します。この点に関しては、StreetSurf や UniSim などの研究を参照できます。動的オブジェクトが編集可能になると、将来的に NERF は、単純なドライブ テストや WorldSim の欠点を補うために、対象を絞った極端な状況やランダムな状況のシナリオを生成できるようになります。 NERF がトレーニングの再構築と都市レベルのシーンのリアルタイム レンダリングを同時に効果的に解決できれば、データ ドメイン ギャップのセンシングの問題なしに、NERF を XIL インザループ シミュレーション テストのプラットフォームとして完全に使用できます。また、エンドツーエンドのアルゴリズムの開発も促進されます。さらに、NERF のモデルはプラグインとしてゲーム エンジンに組み込むこともできるため (たとえば、3D ガウス スプラッティング用の UE プラグインがリリースされています)、NERF のストリート シーンの再構築をオリジナルの WorldSim システムに組み込むことができます。 。 AIGC 方向の大規模モデルと組み合わせると、NERF は新しいシーンを生成する可能性が高まり、照明、天候、オブジェクトの外観や動作などを任意に編集できるようになります。
したがって、シミュレーション エンジニアとして、私は同僚に NERF の進歩に細心の注意を払うことを強くお勧めします。さまざまな NERF 研究プロジェクトはまだ初期段階にありますが、ディープ ラーニングの進歩はハードウェアによって加速されています。 。
ここまで雑多に書きましたが、最後に少し思うことがあります。
シミュレーション開発の落とし穴は何ですか?技術的な落とし穴についてはここでは説明しませんが、全体的な考えをいくつか示します。それは、意味のない仕事に関わりすぎていないか注意することです。さまざまな人のために同様のプロジェクトを行うことはカウントされず、各プロジェクトを完了することが価値があるのです。既製のツールを使用せず、自分で研究しなければならない場合は、計算上、特定のツールへの依存から脱却することは価値があり、研究開発での多くの試みが後に不合理であることが判明したことは数え切れませんし、研究開発の失敗もまた価値があります。では、「意味のない」仕事とは一体何でしょうか?これは意見の問題であり、うまく要約することはできません。
この立場で他に何ができるでしょうか?仕事で計測対象についての理解が深まれば、ある方向性のアルゴリズム開発職への転向も考えられますし、ロボットやドローンのシミュレーション開発を検討することも可能です。
移動ロボットと自動運転の類似点は言うまでもありませんが、ここではドローンについて触れてみましょう。ドローン業界は確かに自動車業界ほど大きくありませんが、検査、航空写真、測量、地図作成などの着陸地点がすでに存在します。また、UAV には障害物回避や経路計画などの自動制御アルゴリズムも必要であり、UAV が使用するセンサーも無人車両と類似しているため、シミュレーション テストには、UAV にも豊かな視覚が必要であるという共通点があると言えます。画像やレーダー点群などの入力には、より洗練された動的モデルなどが必要です。
ロボットやドローンのシミュレーションについて学ぶことに興味のある学生は、Nvidia の Isaac ほど多くのコンピューティング リソースを必要としない、オープンソース シミュレーション プラットフォーム Gazebo (https://classic.gazebosim.org/) から始めることができます。とても背が高いです。
OSRF は Willow Garage から独立して今年で 11 年目となり、ロボット OS である ROS と Gazebo は 20 年以上の開発の歴史があります。 Gazebo は、大学院研究グループの科学研究ツールから独立したシミュレーション ソフトウェア ツールへと徐々に発展し、現在 11 リリース、第 2 世代点火では 7 リリースをリリースしています。
Gazebo は、ODE、Bullet などの物理エンジンをサポートしており、OGRE をレンダリング エンジンとして使用して、3 次元環境を作成し、カメラやセンサーなどのさまざまなセンサーからの情報をシミュレートできます。ロボット アームから車輪付きロボット、人型ロボットまで、豊富なロボット モデルを備えています。さらに重要なのは、Gazebo は当然、ROS プラットフォームでのアルゴリズムの包括的なサポートを提供します。結局のところ、デスクトップの完全な ROS バージョンをダウンロードしてインストールすると、Gazebo が付属します。もちろん、Gazebo はオープンソース ソフトウェアなのであくまで出発点であり、機能はバランスが取れていますが、すべての面で荒削りで奥が足りません。しかし、Taizu Changquanと同じように、Qiao FengがJuxian Villageでそれを使用すると、やはり異なります。
私は学生時代に Gazebo に出会い、その後ロボット シミュレーションの仕事に携わり、自動運転にキャリアを変えるまで Gazebo を使用していました。 Gazebo と私は同級生のようなもので、当時は若くて無知でした。仕事を終えて、私と彼女は再会し、関係を新たにすることにしました。2年以上、離れられなくなってしまいました。30歳を超えた今、私は彼女にメッセージを残しました。彼女とは別れます...さよならを言うときに私が言うのはただ一つです:お久しぶりです...
元のリンク: https://mp.weixin.qq.com/s/_bOe_g3mqoobJUbFS3SNWg
以上が自動運転シミュレーションの壮大な世界観!自動運転シミュレーション業界について語ろう!の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。