We have tested our Agent-based development of Autonomous Vehicle Platooning on Jaguar Rovers. We have tested the joining scenario for a platoon of size 3. Initially, the platoon consists of two vehicles, the leader (front rover in the video) and only one follower (middle rover in the video). We have shown that the last rover in the video, controlled by an agent, successfully joins the platoon.
This work is a joint work between the Universities of Liverpool and Sheffield and the Virtual Engineering Centre, University of Liverpool (David Bowman, Ken Lai and Konstantin Vikhorev).
An automotive platoon, enabling road vehicles to travel as a group, is led by a vehicle which is driven by a professional driver. We employ a hybrid agent architecture for development of automotive platoon. Our agent-based development of automotive platoon where the discrete decision-making component of the system is separated from the continuous control system as sketched below:
Real-time continuous control of the vehicle is managed by feedback controllers, implemented in MATLAB, and observing the environment through its sensory input. This is called the Physical Engine. The Physical Engine, in turn, communicates with an Abstraction Agentthat extracts discrete information from streams of continuous data and passes this on a Decision-Making Agent. The Decision-Making Agent is a rational agent which directs the Physical Engine by passing it instructions through the Abstraction Agent. Instructions from the Decision-Making Agent to the Abstraction Agent are interpreted into meaningful instructions for Physical Engine.
To provide the complex environment necessary for effective simulation and testing, we use an automotive simulator, TORCS, to implement the environment component of the architecture. The Physical Engine is implemented in MATLAB, while both Abstraction and Decision-Making Agents are programmed in an agent-based programming language called GWENDOLEN. . An interface between TORCS and MATLAB/Simulink has been developed that provides a means to control vehicles from MATLAB and Simulink, which can be found here.
The full model can be found at:
A video of our agent-based development of autonomous vehicle platooning can be found at: