Classificação de cenários de condução — funcional, lógico, concreto
Os testes baseados em cenários de sistemas avançados de assistência ao motorista (ADAS) e de condução automatizada (AD) baseiam-se em uma abstração de três níveis herdada do projeto de pesquisa PEGASUS e agora prática padrão nos pipelines de teste ADAS / AV:
- Cenário funcional — qualitativo, em linguagem natural.
- Cenário lógico — paramétrico, com intervalos para cada parâmetro.
- Cenário concreto — totalmente instanciado, com cada parâmetro fixado a um valor.
Esta página é um guia neutro sobre o que cada nível é, como se relaciona ao ODD e a formatos como o OpenSCENARIO, e onde o drawtonomy se encaixa.
Os três níveis de abstração
Seção intitulada “Os três níveis de abstração”Cenário funcional
Seção intitulada “Cenário funcional”Um cenário funcional é uma descrição qualitativa em linguagem natural de uma situação de condução. Nomeia os atores, o layout viário e as manobras, mas não se compromete com números.
Exemplo: “Em uma rodovia de duas faixas, um veículo mais rápido na faixa da esquerda corta à frente do veículo ego vindo da faixa da direita após ultrapassá-lo.”
Cenários funcionais vivem em planos de teste, documentos de revisão de design, apresentações, figuras de artigos e narrativas de casos de segurança. É como os humanos comunicam o cenário uns aos outros.
Cenário lógico
Seção intitulada “Cenário lógico”Um cenário lógico transforma a descrição funcional em uma forma estruturada com intervalos de parâmetros. Cada variável (velocidades iniciais, distâncias, TTC, deslocamento lateral, clima, curvatura da pista) recebe um domínio em vez de um único valor.
Exemplo: “Velocidade do ego ∈ [70, 130] km/h, velocidade relativa do veículo que corta ∈ [+10, +30] km/h, tempo até colisão no início do corte ∈ [1,5, 4,0] s, …”
Cenários lógicos são o que é amostrado, varrido ou pesquisado durante campanhas de teste. Ferramentas e DSLs que têm como alvo este nível incluem Scenic, scenariogeneration (pyoscx / pyodrx) e OpenSCENARIO 2.0 / DSL.
Cenário concreto
Seção intitulada “Cenário concreto”Um cenário concreto é uma instância específica — cada parâmetro fixado a um único valor. É o que é executado em um simulador ou em um teste em pista fechada.
Exemplo: “Ego a 90 km/h, veículo que corta a +20 km/h relativo, TTC = 2,5 s no início do corte, asfalto seco, …”
Cenários concretos são o nível em que o XML OpenSCENARIO 1.x, a reprodução no esmini e a maioria das ferramentas de replay operam.
Como os níveis se relacionam ao ODD
Seção intitulada “Como os níveis se relacionam ao ODD”O Domínio Operacional de Projeto (ODD) é o conjunto de condições nas quais uma função de condução se destina a operar (tipos de estrada, clima, horário do dia, região geográfica, etc.). A classificação de cenários e o ODD interagem em todos os níveis:
- Cenários funcionais são escritos dentro do ODD (“condução em rodovia em dia ensolarado”).
- Cenários lógicos restringem intervalos de parâmetros para respeitar o ODD (por exemplo, intervalos de velocidade que se encaixam na restrição apenas de rodovia do ODD).
- Cenários concretos são instâncias que devem cair dentro do ODD, além de casos extremos deliberadamente escolhidos que testam seu limite.
Classificação de cenários nos padrões
Seção intitulada “Classificação de cenários nos padrões”- PEGASUS — o projeto de pesquisa alemão que cristalizou o vocabulário funcional / lógico / concreto usado aqui.
- ISO 21448 (SOTIF) — segurança da funcionalidade pretendida; usa a classificação de cenários como espinha dorsal de seu argumento de que a função se comporta corretamente em todo o ODD.
- ASAM OpenSCENARIO — 1.x tem como alvo cenários concretos; 2.0 / DSL tem como alvo cenários lógicos.
- ASAM OpenDRIVE — fornece a camada de mundo estático que todos os três níveis de cenário referenciam.
Onde o drawtonomy se encaixa
Seção intitulada “Onde o drawtonomy se encaixa”O drawtonomy não é um amostrador de cenários lógicos ou um executor de cenários concretos. É um quadro branco no navegador ajustado para cenários de condução. Os lugares específicos onde ele se encaixa na classificação:
- Figuras de cenários funcionais. Os diagramas que vão em planos de teste, revisões de design, documentos de casos de segurança, apresentações e figuras de artigos são cenários funcionais em forma visual. O drawtonomy é razoável para isso.
- Ilustração de cenários lógicos. A “forma” de um cenário lógico (a geometria, os atores, o movimento aproximado) é o que os leitores precisam compreender antes que a tabela de parâmetros faça sentido. O drawtonomy é razoável para a figura; a tabela de parâmetros em si vive no DSL ou planilha.
- Esboço de cenário concreto antes da autoria. Se você está prestes a escrever um XML OpenSCENARIO 1.x específico à mão, o drawtonomy pode produzir um esboço 2D e um
.xoscinicial do qual iterar. Veja Caso de uso: Esboço antes da autoria de OpenSCENARIO.
Para a autoria real de cenários lógicos / concretos em escala — varreduras de parâmetros, triggers condicionais, storyboards complexos — use Scenic, scenariogeneration, XML OpenSCENARIO escrito à mão ou OpenSCENARIO 2.0 / DSL. O drawtonomy é para a imagem, não para a lógica de teste.
No mesmo ecossistema de testes de cenário
Seção intitulada “No mesmo ecossistema de testes de cenário”- O que é OpenSCENARIO?
- O que é OpenDRIVE?
- O que é esmini?
- Ecossistema: Scenic
- drawtonomy vs scenariogeneration
- drawtonomy vs OpenSCENARIO XML escrito à mão
Leitura relacionada
Seção intitulada “Leitura relacionada”- Caso de uso: Esboço de cenários de teste ADAS — o fluxo de trabalho para figuras de teste de corte / mesclagem de faixa / travessia de pedestres.
- Caso de uso: Esboço antes da autoria de OpenSCENARIO — esboço visual → XML.
- Caso de uso: Figuras para artigos de condução autônoma — figuras de cenário de qualidade para publicação.