レース走行経路オフライン最適化ツールの紹介(自動運転AIチャレンジ2023)
はじめに
こんにちは!自動運転AIチャレンジに参加しているチームb(oo)arsのM.Eguchiです。本記事では我々のチームが行っているレース走行経路のオフライン最適化について紹介していきます。この記事を参照すればwaypoint職人せずともトップレベルの記録が出せるように!?(所説あり)よろしくお願いします。
目次
1. レース走行経路に求められる要件
2. レース経路オフライン最適化ツールの紹介
最初お気持ちレベルに座学をお話いした後、我々が使っているツールの紹介とそれを自動運転AIチャレンジに組み込んだものを紹介します。
レース走行経路に求められる要件
レースを最短時間で走行することを考える際、速度と時間の関係式
しかし、レースカーには質量があるため、カーブを走行する際には、その半径の小ささと走行速度の大きさに応じて遠心力が車の横方向に作用します。この力がタイヤのグリップ力を超えると、車両は横滑りを起こし、最悪の場合コース外にスリップするリスクがあります。
逆に、横滑りを防ぐために走行距離を犠牲にして曲率の小さい経路を選択すると、図の赤線のような経路になりますが、これは極端な例です。
結論として、実際のレースカーでは、タイヤのグリップ性能などの車両パラメータに応じて、以下の2点を両立させる走行経路の最適化が求められます。
経路長の最小化:これにより、走行距離を減らし、理論上の最短時間でコースを走行できる。
経路全体の曲率の最小化:これにより、遠心力を抑え、横滑りのリスクを減らし、安定した走行を実現する。
この最適化問題では、車両の性能と物理的制約を考慮しながら、これらの目標を達成する経路を見つける必要があります。
より詳しくレース走行経路の最適化問題について知りたい方は下記の文献を見ると幸せになれます。
レース走行経路の最適化問題 参考
Braghin, Francesco, et al. "Race driver model." Computers & Structures 86.13-14 (2008): 1503-1516.
レース経路オフライン最適化ツールの紹介
本記事の本題です。我々チームb(oo)arsは自動運転AIチャレンジ2023において以下のツールを改造したもの使ってレース経路の計画を行っています。このツールでは上記の座学をベースに作成されているレース経路の最適化ツールとなります.
そしてそれを今回AIchallenge2023用に改造したのがこちら.
基本的にはREADMEを見てもらえれば動かせるようになってるはず
結果はこんな感じ
AIchallengeへの組み込み
上記のツールは出力がcsv形式なのでそれをAIchallengeで読み込めるようにしたのがこちら
詳しい実装はここでは話しませんが,ここで読み込み処理を行っています
以上!参考になれば幸いです
Discussion
こちらは今回の大会のモデルのIndyAutonomousChallengeでもよく上位チームに使われるパッケージだそうです。AIチャレンジに応用できたのはすごい成果ですね !