コンテンツにスキップ

なぜ drawtonomy なのか — 自動運転シナリオ専用のホワイトボード

drawtonomy は運転シナリオ専用に作られたホワイトボードである。多くのチームは今もこの種の図を汎用作図ツールやスライドで描いているが、それらはレーンが何かを知らない。道路が曲がるたび、交差点に進入路が増えるたび、横断歩道を道路に揃えるたびにジオメトリを描き直すことになる。

このページでは、「シミュレータへのエクスポートツール」ではなく「運転シナリオ用ホワイトボード」を出発点に選んだことから生まれる設計判断を説明する。

実際の自動運転コミュニケーションのほとんどは図を介して行われる — 論文、設計レビュー、計画ミーティング、インシデント報告、教材、スライドの中で。図こそが人々が見て、議論し、記憶する成果物だ。

そのレベルで汎用作図ツールが提供するのは汎用図形だけである。レーンは道路が曲がるたびに描き直す矩形になり、横断歩道は手動で揃え続ける矩形の積み重ねになり、交差点は 30 分の試行錯誤になる。さらに道路ジオメトリが変わった瞬間に — AV の作業ではこれが頻繁に起こる — 一からやり直しになる。

drawtonomy はこのループを高速にするために存在する。ドメインに実在する構成要素 — レーン、交差点、横断歩道、信号機、道路標示、車両、歩行者 — を第一級の図形として扱うので、編集を繰り返しても図が崩れない。

運転シナリオの作業はいくつかの異なるレベルで行われる:

  1. 図表。 論文、スライド、ホワイトボードスケッチ、設計書の図、教材。原理的には素早く済むはずだが、汎用ツールでは何かが動くたびに道路ジオメトリを再構築することになる。
  2. 作成ツール。 OpenSCENARIO エディタ、道路ネットワークエディタ、CAD 系パッケージ。精緻だが、遅く習得コストが高い。
  3. シミュレータ。 esmini、CARLA、社内ツールなど。シナリオを実行してデータを生成する。

drawtonomy はレベル 1 に位置し、必要に応じてレベル 2 にも踏み込む — Lanelet2 地図のインポート、変更スケッチ、OpenDRIVE/OpenSCENARIO のエクスポート、esmini への受け渡しなど。

比較対象は CAD ツールではなく、ホワイトボードやスライドの素早いスケッチだ。これがフリクションの基準を決める: URL を開く、描く、共有する。インストール不要、アカウント不要、プロジェクトファイル形式不要。素早いスケッチより重く感じさせる要素はすべて削ぎ落とす。

道路はポリラインの寄せ集めではない。drawtonomy はレーンの接続 (Next / Previous / Left / Right) をモデル化しているため、境界を動かすと隣接レーンも自動的に更新される。境界を共有する 2 本のレーンは同じ境界点を共有 — 1 回ドラッグすれば両方が動く。詳しくは レーン接続モデル を参照。

車両 (セダン、バス、トラック、バイクなど)、歩行者 (Walking、Simple)、車両用・歩行者用信号機、横断歩道、道路標示、標識、交差点テンプレート。汎用矩形で近似するのではなく、ビルトイン図形として備わっている。カスタム SVG テンプレートも PR で追加できる。

drawtonomy が生成するすべての出力形式は、再編集に十分な状態を保持している。drawtonomy.svg がロスレスな正規形式だ: あらゆる場所 (ブラウザ、GitHub、スライド、論文の図) でプレビューできる通常の SVG であり、drawtonomy で再オープンすれば接続情報や重なり関係がすべて元のまま開かれる。読み戻せない形式に閉じ込められるものはない。

エクスポータとパーサーのコードは @drawtonomy/sdk の一部であり、エディタなしで動作する。CI パイプライン、ブラウザエクステンション、AI ツールからシーンをプログラム的に生成・検証できる。

ワークフローの他の部分への橋渡し

Section titled “ワークフローの他の部分への橋渡し”

図ができたら、たいていそれを使って何かをしたくなる。drawtonomy には図がエディタの中に閉じ込められないよう、いくつかの橋渡し機能がある:

  • drawtonomy.svg — デフォルト。論文、スライド、Markdown ドキュメントに埋め込み、後で再オープンして編集を続けられる。
  • Lanelet2 ラウンドトリップ — Lanelet2 OSM 地図 (Autoware サンプル地図を含む) を開いて編集し、書き戻せる。既存 HD マップへの変更スケッチに有用。
  • ASAM エクスポート — OpenDRIVE 1.8 + OpenSCENARIO 1.3、必要に応じて esmini 対応 zip にバンドル。
  • AI シーン生成 — 自然言語でシナリオを記述するか、OpenSCENARIO XML を貼り付けると、編集可能なキャンバスが返る。

これらの橋渡しは便利だが、drawtonomy が存在する理由は図そのものだ。drawtonomy 内の図は図として既に価値があり、必要なときにこれらの形式を使ってワークフローの次の段階へ流せばよい。

  • シミュレータではない。 シナリオを実行することはない。それには esmini、CARLA、自前ツールなどへエクスポートしてほしい。
  • CAD ツールではない。 工学的な精度 (クロソイドスプライン、バンク角、勾配) を強制しない。ジオメトリはシンプルな 2D だ。
  • リアルタイム共同編集ツールではない。 単一ユーザー向けのエディタである。保存、共有、再オープン、というモデルだ。