for a Fleet of Driverless Vehicles Olivier Mehani olivier.mehani@inria.fr La Route Automatisée A -Mines Paris/INRIA Rocquencourt- Joint Research Unit February 14, 2007 Eurocast 2007
Plan 1 2 3 Solution proposal : reservation system 4 and results 5 and future works 6 and discussion
Automated transportation service Going to point B A Cybercar-based transportation system with the goal to go from point A to point B as efficiently as possible : quickest way.
Automated transportation service Going to point B A Cybercar-based transportation system with the goal to go from point A to point B as efficiently as possible : quickest way ; shortest way.
Automated transportation service Going to point B A Cybercar-based transportation system with the goal to go from point A to point B as efficiently as possible : quickest way ; shortest way ; no collision!
Automated transportation service Going to point B A Cybercar-based transportation system with the goal to go from point A to point B as efficiently as possible : quickest way ; shortest way ; no collision ; no deadlock.
A layered approach The problem is split into 3 levels Three levels to reduce the complexity : the macroscopic level a path is computed to reach the goal choosing from the network a set of edges (i.e. roads) to use.
A layered approach The problem is split into 3 levels Three levels to reduce the complexity : the macroscopic level a path is computed to reach the goal choosing from the network a set of edges (i.e. roads) to use ; the mesoscopic level a trajectory is determined taking into account the controllability constraint of the vehicle.
A layered approach The problem is split into 3 levels Three levels to reduce the complexity : the macroscopic level a path is computed to reach the goal choosing from the network a set of edges (i.e. roads) to use ; the mesoscopic level a trajectory is determined taking into account the controllability constraint of the vehicle ; the microscopic level the trajectory is followed while ensuring no unforeseen collision occurs.
A layered approach The mesoscopic level The mesoscopic level is in charge of generating trajectories on the road as commands for the microscopic level to match the orders of the macroscopic one.
A layered approach The mesoscopic level The mesoscopic level is in charge of generating trajectories on the road as commands for the microscopic level to match the orders of the macroscopic one. A trajectory is the combination of a two-dimensional trace on the road and timing information.
A layered approach The mesoscopic level The mesoscopic level is in charge of generating trajectories on the road as commands for the microscopic level to match the orders of the macroscopic one. A trajectory is the combination of a two-dimensional trace on the road and timing information. We focus on this level.
The mesoscopic level Requirements The mesoscopic level generates instructions for the microscopic level. There are requirements on the type of instructions given for the system to work correctly : quickest way ; no collision ; no deadlock.
The mesoscopic level Requirements The mesoscopic level generates instructions for the microscopic level. There are requirements on the type of instructions given for the system to work correctly : quickest way ; no collision ; no deadlock ; respect of the controllability constraints (speed, steering possibilities, etc.) of the vehicle.
A simple crossroads We focus on a regular crossroads : 2 two-laned roads intersecting at a right angle.
A simple crossroads We focus on a regular crossroads : 2 two-laned roads intersecting at a right angle. The crossroads being fixed it is possible to determine a priori 2D traces for the vehicles to follow. These traces are generated using clothoids in order to ensure the attainability of the movement to the steering vehicles.
A reservation system Previous works Dresner and Stone proposed a reservation-based multiagent system [1, 2] : the vehicles reserve a number of squares on the crossroads.
A reservation system Previous works Dresner and Stone proposed a reservation-based multiagent system [1, 2] : the vehicles reserve a number of squares on the crossroads. Depending on the granularity of the crossroads, this may represent a large number of tiles to reserve.
A reservation system Previous works Dresner and Stone proposed a reservation-based multiagent system [1, 2] : the vehicles reserve a number of squares on the crossroads. Depending on the granularity of the crossroads, this may represent a large number of tiles to reserve. We want to reserve only the relevant parts of the road i.e. those where collisions can happen.
A reservation system Identifying the resource to reserve We already know where the vehicles are to pass.
A reservation system Identifying the resource to reserve We already know where the vehicles are to pass. Thus, we know where the traces intersect, which is where the collision risk is present.
A reservation system Identifying the resource to reserve We already know where the vehicles are to pass. Thus, we know where the traces intersect, which is where the collision risk is present. These critical points will be the resource to share among the vehicles by using a reservation system.
A reservation system Algorithm 1 A vehicle arrives close to the crossroads and requests the crossroads geometry from the superviser (i.e. the 2D traces and critical points).
A reservation system Algorithm 1 A vehicle arrives close to the crossroads and requests the crossroads geometry from the superviser (i.e. the 2D traces and critical points) ; 2 According to its speed, it builds a reservation request which is sent back to the superviser.
A reservation system Algorithm 1 A vehicle arrives close to the crossroads and requests the crossroads geometry from the superviser (i.e. the 2D traces and critical points) ; 2 According to its speed, it builds a reservation request which is sent back to the superviser ; 3 The superviser decides whether the request is acceptable or not.
A reservation system Algorithm 1 A vehicle arrives close to the crossroads and requests the crossroads geometry from the superviser (i.e. the 2D traces and critical points) ; 2 According to its speed, it builds a reservation request which is sent back to the superviser ; 3 The superviser decides whether the request is acceptable or not : the reservation is refused the vehicle slows down to stop before the first critical point while continuing to try and obtain a reservation ; the reservation is accepted the vehicle remains at a constant speed or tries to place new reservations at higher speeds.
A reservation system Architecture Two types of actors : a superviser (i.e. infrastructure) which knows the geometry (traces and critical points) of the crossroads and keeps track of the reservations ; communicant vehicles running software agents able to build and place reservations to the superviser.
A reservation system Architecture Two types of actors : a superviser (i.e. infrastructure) which knows the geometry (traces and critical points) of the crossroads and keeps track of the reservations ; communicant vehicles running software agents able to build and place reservations to the superviser. Information contained in a reservation item : the critical point ; the time when the reservation begins ; the time when the reservation stops.
of the algorithm Simplifying assumptions Several simplifying assumptions are made in the simulator : perfect communication. A screenshot of the simulator.
of the algorithm Simplifying assumptions Several simplifying assumptions are made in the simulator : perfect communication ; perfect microscopic level. A screenshot of the simulator.
of the algorithm Simplifying assumptions Several simplifying assumptions are made in the simulator : perfect communication ; perfect microscopic level ; homogeneous traffic (i.e. CyberCars only). A screenshot of the simulator.
of the algorithm Quick example of the simulator A vehicle arrives and places its reservation.
of the algorithm Quick example of the simulator A second vehicule arrives but its reservation is not acceptable.
of the algorithm Quick example of the simulator The second vehicle has slowed down and now can place its reservation.
of the algorithm Quick example of the simulator The vehicle can go on with its journey, or even accelerate.
of the algorithm 1 Compared results Time (s) Collisions Vehicles min max avg None 5.28 10.80 6.21 458 422 Polling 5.28 92.02 47.37 0 108 5.28 16.82 9.79 0 134 1 100s simulation with 0.02s discrete timestep
This reservation-based approach gives encouraging results.
This reservation-based approach gives encouraging results. But : parameters need to be adjusted.
This reservation-based approach gives encouraging results. But : parameters need to be adjusted ; many assumptions which were made at first now have to be removed.
This reservation-based approach gives encouraging results. But : parameters need to be adjusted ; many assumptions which were made at first now have to be removed ; the algorithm only takes care of the collision handling in the crossroads (i.e. not just before or after).
This reservation-based approach gives encouraging results. But : parameters need to be adjusted ; many assumptions which were made at first now have to be removed ; the algorithm only takes care of the collision handling in the crossroads (i.e. not just before or after) ; the deadlock-freedom of the algorithm still has to be formally proven.
Thanks Kurt Dresner and Peter Stone. Multiagent traffic management : A reservation-based intersection control mechanism. In The Third International Joint Conference on Autonomous Agents and Multiagent Systems, pages 530 537, New York, New York, USA, July 2004. Kurt Dresner and Peter Stone. Multiagent traffic management : An improved intersection control mechanism. In The Fourth International Joint Conference on Autonomous Agents and Multiagent Systems, pages 471 477, Utrecht, The Netherlands, July 2005. Questions?