Implementing Autonomous Driving Behaviors Using a Message Driven Petri Net Framework

Most autonomous car control frameworks are based on a middleware layer with several independent modules that are connected by an inter-process communication mechanism. These modules implement basic actions and report events about their state by subscribing and publishing messages. Here, we propose an executive module that coordinates the activity of these modules. This executive module uses hierarchical interpreted binary Petri nets (PNs) to define the behavior expected from the car in different scenarios according to the traffic rules. The module commands actions by sending messages to other modules and evolves its internal state according to the events (messages) received. A programming environment named RoboGraph (RG) is introduced with this architecture. RG includes a graphical interface that allows the edition, execution, tracing, and maintenance of the PNs. For the execution, a dispatcher loads these PNs and executes the different behaviors. The RG monitor that shows the state of all the running nets has proven to be very useful for debugging and tracing purposes. The whole system has been applied to an autonomous car designed for elderly or disabled people.

[1]  Peter Stone,et al.  Multiagent interactions in urban driving , 2008 .

[2]  Kailun Yang,et al.  Bridging the Day and Night Domain Gap for Semantic Segmentation , 2019, 2019 IEEE Intelligent Vehicles Symposium (IV).

[3]  Joaquín Lopez Fernández,et al.  Improving collision avoidance for mobile robots in partially known environments: the beam curvature method , 2004, Robotics Auton. Syst..

[4]  Luis Miguel Bergasa,et al.  Real-Time Semantic Segmentation for Fisheye Urban Driving Images Based on ERFNet † , 2019, Sensors.

[5]  Eduardo Romera,et al.  ERFNet: Efficient Residual Factorized ConvNet for Real-Time Semantic Segmentation , 2018, IEEE Transactions on Intelligent Transportation Systems.

[6]  Emilio Frazzoli,et al.  A Survey of Motion Planning and Control Techniques for Self-Driving Urban Vehicles , 2016, IEEE Transactions on Intelligent Vehicles.

[7]  William Whittaker,et al.  Tartan Racing: A multi-modal approach to the DARPA Urban Challenge , 2007 .

[8]  K. Shadan,et al.  Available online: , 2012 .

[9]  Joaquín Lopez Fernández,et al.  Using hierarchical binary Petri nets to build robust mobile robot applications: RoboGraph , 2008, 2008 IEEE International Conference on Robotics and Automation.

[10]  J. López,et al.  A new approach to local navigation for autonomous driving vehicles based on the curvature velocity method , 2019, 2019 International Conference on Robotics and Automation (ICRA).

[11]  Homayoun Najjaran,et al.  Autonomous vehicle perception: The technology of today and tomorrow , 2018 .

[12]  Oliver Brock,et al.  SARSOP: Efficient Point-Based POMDP Planning by Approximating Optimally Reachable Belief Spaces , 2009 .

[13]  Jonathan P. How,et al.  Probabilistically safe motion planning to avoid dynamic obstacles with uncertain motion patterns , 2013, Auton. Robots.

[14]  Takeo Kanade,et al.  Vision and Navigation for the Carnegie-Mellon Navlab , 1987 .

[15]  Luis Miguel Bergasa,et al.  Positioning System for an Electric Autonomous Vehicle Based on the Fusion of Multi-GNSS RTK and Odometry by Using an Extented Kalman Filter , 2018, WAF.

[16]  Petter Ögren,et al.  Increasing Modularity of UAV Control Systems using Computer Game Behavior Trees , 2012 .

[17]  David Hsu,et al.  SARSOP: Efficient Point-Based POMDP Planning by Approximating Optimally Reachable Belief Spaces , 2008, Robotics: Science and Systems.

[18]  Taxonomy and definitions for terms related to driving automation systems for on-road motor vehicles , 2022 .

[19]  Reza Langari,et al.  A human-like game theory-based controller for automatic lane changing , 2018 .

[20]  Shankar Kumar,et al.  Intersection Collision Avoidance For Autonomous Vehicles Using Petri Nets , 2019 .

[21]  Lisa M. Jackson,et al.  Automated guided vehicle mission reliability modelling using a combined fault tree and Petri net approach , 2017 .

[22]  Julius Ziegler,et al.  Lanelets: Efficient map representation for autonomous driving , 2014, 2014 IEEE Intelligent Vehicles Symposium Proceedings.

[23]  Umit Ozguner,et al.  Hierarchical finite state machines for autonomous mobile systems , 2013 .

[24]  Beom Hee Lee,et al.  Analytic collision anticipation technology considering agents' future behavior , 2010, 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[25]  Eduardo Zalama Casanova,et al.  A framework for building mobile single and multi-robot applications , 2011, Robotics Auton. Syst..

[26]  Edwin Olson,et al.  Multipolicy decision-making for autonomous driving via changepoint-based behavior prediction: Theory and experiment , 2015, Autonomous Robots.

[27]  Hermann Winner,et al.  Autonomous Driving: Technical, Legal and Social Aspects , 2016 .

[28]  Magnus Olsson,et al.  Behavior Trees for decision-making in Autonomous Driving , 2016 .

[29]  Miguel D. Cacho,et al.  GuideBot. A Tour Guide System Based on Mobile Robots , 2013 .

[30]  John S. Bay,et al.  Navigation of an autonomous ground vehicle using the subsumption architecture , 1997, Optics East.

[31]  Petter Ögren,et al.  How Behavior Trees modularize robustness and safety in hybrid systems , 2014, 2014 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[32]  Junxuan Zhao,et al.  Detection and tracking of pedestrians and vehicles using roadside LiDAR sensors , 2019, Transportation Research Part C: Emerging Technologies.

[33]  Meixin Zhu,et al.  Human-Like Autonomous Car-Following Model with Deep Reinforcement Learning , 2018, Transportation Research Part C: Emerging Technologies.

[34]  Sebastian Thrun,et al.  Perspectives on standardization in mobile robot programming: the Carnegie Mellon Navigation (CARMEN) Toolkit , 2003, Proceedings 2003 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2003) (Cat. No.03CH37453).

[35]  Luis Miguel Bergasa,et al.  Simulating use cases for the UAH Autonomous Electric Car , 2019, 2019 IEEE Intelligent Transportation Systems Conference (ITSC).

[36]  Jana Flochova A Petri net based supervisory control implementation , 2003, SMC'03 Conference Proceedings. 2003 IEEE International Conference on Systems, Man and Cybernetics. Conference Theme - System Security and Assurance (Cat. No.03CH37483).

[37]  Ernst D. Dickmanns,et al.  An integrated spatio-temporal approach to automatic visual guidance of autonomous vehicles , 1990, IEEE Trans. Syst. Man Cybern..

[38]  Sebastian Thrun,et al.  Junior: The Stanford entry in the Urban Challenge , 2008, J. Field Robotics.

[39]  Kailun Yang,et al.  PASS: Panoramic Annular Semantic Segmentation , 2020, IEEE Transactions on Intelligent Transportation Systems.

[40]  Eduardo Zalama,et al.  BellBot - A Hotel Assistant System Using Mobile Robots , 2013 .

[41]  Mark E. Campbell,et al.  Discrete and Continuous, Probabilistic Anticipation for Autonomous Robots in Urban Environments , 2010, IEEE Transactions on Robotics.

[42]  David Hsu,et al.  QMDP-Net: Deep Learning for Planning under Partial Observability , 2017, NIPS.

[43]  Nivethitha Amudha Chandramohan Design and modeling of adaptive cruise control system using petri nets with fault tolerance capabilities , 2018 .

[44]  Fei-Yue Wang,et al.  A Petri-net coordination model for an intelligent mobile robot , 1991, IEEE Trans. Syst. Man Cybern..

[45]  William Whittaker,et al.  Autonomous driving in urban environments: Boss and the Urban Challenge , 2008, J. Field Robotics.

[46]  A. Broggi,et al.  A modular tracking system for far infrared pedestrian recognition , 2005, IEEE Proceedings. Intelligent Vehicles Symposium, 2005..

[47]  Miguel Díaz-Cacho,et al.  Formal Verification for Task Description Languages. A Petri Net Approach , 2019, Sensors.

[48]  Mauro Da Lio,et al.  Autonomous Vehicle Architecture Inspired by the Neurocognition of Human Driving , 2018, VEHITS.

[49]  MengChu Zhou,et al.  Modeling, Simulation, and Control of Flexible Manufacturing Systems - A Petri Net Approach , 1999, Series in Intelligent Control and Intelligent Automation.

[50]  Tilak Agerwala,et al.  Special Feature: Putting Petri Nets to Work , 1979, Computer.

[51]  Sebastian Thrun,et al.  Model based vehicle detection and tracking for autonomous urban driving , 2009, Auton. Robots.

[52]  Joaquín López,et al.  WatchBot: A building maintenance and surveillance system based on autonomous robots , 2013, Robotics Auton. Syst..

[53]  Rüdiger Dillmann,et al.  Learning Driver Behavior Models from Traffic Observations for Decision Making and Planning , 2015, IEEE Intelligent Transportation Systems Magazine.

[54]  MengChu Zhou,et al.  Petri Net Modeling of the Cooperation Behavior of a Driver and a Copilot in an Advanced Driving Assistance System , 2011, IEEE Transactions on Intelligent Transportation Systems.

[55]  Lukas Bulwahn,et al.  Research on an Open-Source Software Platform for Autonomous Driving Systems , 2013 .