Simple Science

La science de pointe expliquée simplement

# Informatique# Langages de programmation

Scenic 3.0 : Faire avancer la modélisation environnementale

Scenic 3.0 améliore la modélisation pour des systèmes comme les voitures autonomes avec des capacités 3D.

― 5 min lire


Scenic 3.0 : LaScenic 3.0 : LaRévolution de lamodélisation 3Dintelligents.environnementale pour des systèmes plusTransformer la modélisation
Table des matières

Scenic 3.0 est une nouvelle version d'un langage de programmation utilisé pour modéliser des environnements dans des systèmes qui mélangent ordinateurs et objets physiques, comme les voitures autonomes. L'ancienne version, Scenic 2, ne pouvait gérer que des espaces en deux dimensions, ce qui la rendait limitée pour décrire des situations réelles. La nouvelle version permet la modélisation en trois dimensions, ce qui permet de représenter des environnements plus complexes avec précision.

Pourquoi le 3D est important

La plupart des environnements réels sont en trois dimensions. Par exemple, une voiture autonome doit comprendre non seulement la route mais aussi les bâtiments, les piétons et d'autres véhicules autour d'elle. Dans la modélisation traditionnelle en deux dimensions, les objets étaient simplifiés à l'extrême, souvent représentés par des boîtes. Ça a causé des problèmes, comme montrer incorrectement qu'un robot aspirateur heurtait des meubles alors qu'il était en fait sous une table.

Avec Scenic 3.0, on peut maintenant décrire les objets de manière plus précise en utilisant des formes complexes. Ça permet de mieux vérifier la visibilité, c'est-à-dire qu'on peut déterminer si un objet peut voir un autre en tenant compte de ce qui pourrait bloquer la vue.

Caractéristiques clés de Scenic 3.0

Syntaxe 3D

Scenic 3.0 introduit une nouvelle syntaxe spécialement conçue pour la géométrie tridimensionnelle. Ça signifie que les utilisateurs peuvent facilement définir des scénarios 3D complexes, comme positionner un objet à un point spécifique dans l’espace et l’orienter correctement. Par exemple, au lieu de juste dire qu’un objet fait face à une certaine direction, les utilisateurs peuvent préciser combien l'incliner vers le haut ou vers le bas.

Formes précises

Au lieu de juste utiliser des boîtes pour représenter des objets, Scenic 3.0 permet d’utiliser des formes 3D détaillées. Ça veut dire qu’il peut vérifier avec précision si deux objets se heurtent ou s’emboîtent sans faire d’associations qui mènent à des erreurs. Par exemple, une chaise peut être glissée sous une table sans que le système ne prétende à tort qu'ils se heurtent.

Meilleures vérifications de visibilité

Dans la nouvelle version, les vérifications de visibilité sont beaucoup mieux, grâce au ray tracing. Cette technique simule comment la lumière se déplace et permet de vérifier si un objet peut voir un autre en tenant compte de ce qui bloque la vue. Par exemple, si une voiture est derrière un bâtiment, le système verra correctement que la voiture n'est pas visible.

Exigences temporelles

Scenic 3.0 introduit un nouveau moyen de définir comment les choses changent au fil du temps. Les utilisateurs peuvent spécifier des conditions qui décrivent comment une situation doit évoluer. Par exemple, ils peuvent créer des règles qui expliquent quand une voiture doit céder la priorité à un carrefour et quand elle doit être visible par la voiture autonome.

Améliorations du parseur

Le parseur dans Scenic 3.0 a été repensé pour être plus convivial. Ça veut dire qu'il est plus facile d'écrire du code dans ce langage sans tomber sur des erreurs confusantes. Le nouveau parseur fonctionne mieux avec les bibliothèques Python, ce qui permet plus de flexibilité pour créer et analyser des programmes.

Applications de Scenic 3.0

Test des robots aspirateurs

Une application de Scenic 3.0 est le test des robots aspirateurs. Dans un cas, un robot aspirateur a été évalué en fonction de sa capacité à nettoyer une pièce remplie de meubles et de jouets. Le système a généré divers aménagements de pièces et a vérifié si le robot pouvait nettoyer efficacement. La possibilité de modéliser la pièce avec précision a conduit à des résultats plus fiables prouvant l'efficacité du robot.

Simulation des véhicules autonomes

Une autre application importante concerne les voitures autonomes. Scenic 3.0 peut créer différents scénarios de conduite pour tester comment un véhicule autonome doit réagir. Par exemple, le système peut simuler une voiture traversant un carrefour pendant que la voiture autonome doit céder. C’est vital pour développer de meilleurs systèmes de perception qui aident les voitures à "voir" leur environnement.

Défis dans les systèmes cyber-physiques

Concevoir des systèmes qui combinent ordinateurs et environnements physiques pose plusieurs défis. Des environnements complexes et variés rendent difficile la création de prévisions fiables sur le comportement des systèmes. Scenic 3.0 vise à remédier à cela en fournissant un meilleur moyen de représenter et de simuler des situations réelles, permettant ainsi des tests et des validations améliorés.

Directions futures

À l’avenir, les développeurs de Scenic 3.0 prévoient d’améliorer encore le système. Cela inclut la création de techniques d’optimisation qui facilitent la génération des meilleurs scénarios pour les tests. Ils veulent aussi élargir les types d’applications pour Scenic 3.0, comme inclure les opérations de drones dans les capacités de modélisation.

Les améliorations du parseur permettront également aux utilisateurs de créer leurs propres commandes et règles personnalisées pour la modélisation, offrant ainsi une flexibilité encore plus grande dans les applications.

Conclusion

En résumé, Scenic 3.0 représente une avancée significative dans la modélisation des environnements pour les systèmes cyber-physiques. En permettant des représentations tridimensionnelles précises et en améliorant la façon dont la visibilité et les changements au fil du temps sont gérés, Scenic 3.0 offre un outil puissant pour tester et valider des technologies comme les véhicules autonomes et la robotique. À mesure que le système continue d’évoluer, il promet de rendre le test et la vérification plus efficaces, fiables et plus faciles à mettre en œuvre dans diverses applications.

Source originale

Titre: 3D Environment Modeling for Falsification and Beyond with Scenic 3.0

Résumé: We present a major new version of Scenic, a probabilistic programming language for writing formal models of the environments of cyber-physical systems. Scenic has been successfully used for the design and analysis of CPS in a variety of domains, but earlier versions are limited to environments which are essentially two-dimensional. In this paper, we extend Scenic with native support for 3D geometry, introducing new syntax which provides expressive ways to describe 3D configurations while preserving the simplicity and readability of the language. We replace Scenic's simplistic representation of objects as boxes with precise modeling of complex shapes, including a ray tracing-based visibility system that accounts for object occlusion. We also extend the language to support arbitrary temporal requirements expressed in LTL, and build an extensible Scenic parser generated from a formal grammar of the language. Finally, we illustrate the new application domains these features enable with case studies that would have been impossible to accurately model in Scenic 2.

Auteurs: Eric Vin, Shun Kashiwa, Matthew Rhea, Daniel J. Fremont, Edward Kim, Tommaso Dreossi, Shromona Ghosh, Xiangyu Yue, Alberto L. Sangiovanni-Vincentelli, Sanjit A. Seshia

Dernière mise à jour: 2023-07-06 00:00:00

Langue: English

Source URL: https://arxiv.org/abs/2307.03325

Source PDF: https://arxiv.org/pdf/2307.03325

Licence: https://creativecommons.org/licenses/by/4.0/

Changements: Ce résumé a été créé avec l'aide de l'IA et peut contenir des inexactitudes. Pour obtenir des informations précises, veuillez vous référer aux documents sources originaux dont les liens figurent ici.

Merci à arxiv pour l'utilisation de son interopérabilité en libre accès.

Plus d'auteurs

Articles similaires