2024年末、AWS DeepRacerに参加しようと準備を始めた矢先、サービス終了のアナウンスが届きました。
実は同じことが以前にもありました。FormulaPi——小型ワンメイクロボットカーレース大会——に出ようとしたタイミングで、そちらも終了していたのです。
二度目ともなると、待つのをやめようという気になります。自分で作ることにしました。
何を作ったか
aira(Autonomous Intelligence Racing Arena)は、仮想ロボットのレースプラットフォームです。
参加者は自分でアルゴリズムを開発し、シミュレーター上の車両型ロボットを制御します。
インターフェースはシンプルに設計しました。
- 入力:224×224のRGBカメラ画像 + バッテリーSOC(State of Charge、0.0〜1.0)
- 出力:ステアリング角、前後駆動トルク
これだけです。センサーの複雑な前処理も、ROS環境構築も必要ありません。PCが一台あれば始められます。
技術構成
Unity + Python + WebSocket
シミュレーターはUnity(2022.3 LTS)で構築し、PythonのAIコードとWebSocket経由で通信しています。50msごとに画像とSOCをPython側に送り、トルク指令を受け取る構造です。
参加者はPython側だけを触ればOKです。Unityの知識は不要です。
模倣学習から始める
最初のアプローチとして、模倣学習が最も取り組みやすいと思っています。
- キーボードで手動走行しながらデータ収集(画像・SOC・トルク)
- 収集データでPyTorchモデルを学習
- 学習済みモデルでAI走行
- 走行結果を見て改善、繰り返す
コード量は少なく、制御の基礎がある方なら1日で動くものが作れます。
SOCがなぜ面白いか
多くの自律走行シミュレーターは「いかに速く走るか」だけを最適化します。airaはそこにバッテリーSOCの制約を加えました。
SOCはトルク指令に応じて消費されます。全力で走り続ければ途中でバッテリーが尽きます。
これは「速さ」と「エネルギー効率」のトレードオフを生みます。コーナーでどこまでトルクを絞るか、直線でどこまで攻めるか——純粋な速度最適化では現れない判断が必要になります。
自動車・ロボット制御の実務に近い問題設定を、仮想環境で体験できることがこのプラットフォームの核心だと思っています。
英語で躊躇しないでください
airaは最初から世界を舞台にすると決めて作っています。サイトもGitHubも英語です。
でも、GitHubには日本語のガイドも用意しています。英語が読めなくてもセットアップできます。「英語だから無理」でやめてしまうのは、一番もったいないと思っています。
世界に挑戦するのはairaだけではありません。参加者も一緒です。アルゴリズムに国境はありません。
また、現在ベータ版を公開中で、フィードバックを歓迎しています。動かない、わかりにくい、ここが気になる——どんな声でも助かります。一緒に良くしていきましょう。
まず動かしてみてください
2026年6月1日から第1回タイムアタックコンペを開催します。参加費無料、賞金も用意しました。
シミュレーターはGitHubで公開しています。ルールベース制御でも、模倣学習でも、独自のアプローチでも構いません。
まず動かしてみてください。