Перейти к содержимому

drawtonomy и Scenic

drawtonomy и Scenic — не конкурирующие инструменты. Они находятся на разных слоях:

  • Scenic — вероятностный язык программирования для задания сценариев как ограничений на пространство и поведение и сэмплирования множества конкретных сцен из одной абстрактной спецификации. Разработан в Калифорнийском университете в Беркли.
  • drawtonomy — 2D браузерная доска для визуальной зарисовки одной конкретной сцены.

Scenic отвечает на вопрос «какое пространство сценариев я хочу протестировать?». drawtonomy отвечает на вопрос «как выглядит одна конкретная сцена?».

Согласно официальной документации, репозиторию GitHub и оригинальной статье PLDI 2019:

  • Предметно-ориентированный язык для задания сценариев как вероятностных ограничений.
  • Сэмплирование сценариев — генерация множества конкретных сцен из одной абстрактной спецификации.
  • Интерфейсы к симуляторам с задокументированной интеграцией CARLA.
  • Используется в академических бенчмарках для оценки систем автономного вождения.
  • Открытый исходный код под лицензией BSD.

Для тестирования сценариев в масштабе — генерации массивов граничных случаев из небольшой спецификации — Scenic является одним из устоявшихся инструментов.

В drawtonomy нет DSL, нет сэмплирования, нет вероятностной генерации. Он предназначен для одной конкретной сцены за раз, нарисованной вручную.

Два инструмента могут существовать рядом в разных ролях:

  • Scenic генерирует спектр сценариев для тестирования.
  • drawtonomy создаёт визуальную фигуру одной репрезентативной конкретной сцены для статьи, слайда или плана тестирования — рядом с данными, сгенерированными Scenic.

Если вы используете Scenic для генерации сценариев, drawtonomy его не заменяет. Если вы зарисовываете одну сцену вручную и не нуждаетесь в вероятностном сэмплировании, Scenic тоже не является подходящим инструментом.

Scenic — один из наиболее активных исследовательских вкладов в задание сценариев, и он сформировал то, как академическое сообщество AV-тестирования думает о вероятностных сценариях. drawtonomy работает в гораздо более узкой роли — визуальная зарисовка одной сцены — но выдаёт тот же формат OpenSCENARIO, в который Scenic может конвертировать, и нацелен на те же downstream-плееры. Оба инструмента, наряду с CARLA + ScenarioRunner, esmini, scenariogeneration и другими, вносят вклад в одно открытое сообщество тестирования сценариев с разных сторон.