Agent-Based Intelligent Traffic Simulation System

Overview 1
MATISSE 2.0 2
Traffic Network Structure 3
Vehicle Agents 4
Movement Dynamics and Route Planning 5
Simulating Unexpected Accidents 6
Intersection Controller Agent 7
Simulated Communications 8
2D and 3D Visualizations 9
Related Publications 10
Demos 11

Overview

MATISSE (Multi-Agent based TraffISafe­ty Simu­la­tion systEm) is a large-scale mul­ti-agent based sim­u­la­tion plat­form designed to spec­i­fy and exe­cute sim­u­la­tion mod­els for Agent-based Intel­li­gent Trans­porta­tion Sys­tems. It allows the sim­u­la­tion of a vari­ety of traf­fic sce­nar­ios (e.g., safe­ty improve­ment, con­ges­tion reduc­tion, urban evac­u­a­tion).

MATISSE envi­ron­ment is a com­plex traf­fic net­work and agent instances are Con­text-Aware Intel­li­gent (CAI) vehi­cles, dri­vers, inter­sec­tion con­trollers and zone man­agers.

The unique char­ac­ter­is­tics of MATISSE are:

  • It offers a com­plete set of traffic ele­ments essen­tial for the mod­el­ing of ITS (i.e., vir­tu­al dri­vers, vir­tu­al dig­i­tal traffic devices and traffic con­trol agents).
  • Each traffic ele­ment has the capa­bil­i­ty to dynam­i­cal­ly “sense” its sur­round­ings through sim­u­lat­ed sen­sors while com­mu­ni­cat­ing and/or col­lab­o­rat­ing with oth­er agents.
  • It pro­vides inte­grat­ed capa­bil­i­ties with­in the sim­u­la­tion sys­tem that allow run-time user inter­ac­tions for: a) mod­i­fy­ing prop­er­ties of sim­u­lat­ed traffic ele­ments (e.g., chang­ing vehi­cle accel­er­a­tion), b) mod­i­fy­ing prop­er­ties of the traffic envi­ron­ment (e.g., chang­ing lane direc­tions), c) trig­ger­ing exter­nal events (e.g., emer­gency siren).
  • It pro­vides the capa­bil­i­ty to change the traffic net­work topol­o­gy at run-time to sim­u­late var­i­ous emer­gency sce­nar­ios such as road dam­ages and con­traflow oper­a­tions.
  • It pro­vides the capa­bil­i­ty to dynam­i­cal­ly intro­duce acci­dents in the traffic envi­ron­ment.

MATISSE 2.0

At a high lev­el, Matisse con­tains sev­er­al sub­sys­tems. Its main con­stituent is the Sim­u­la­tion Mod­ule which con­sists of three sub­sys­tems.

The Agent Sys­tem cre­ates and man­ages sim­u­lat­ed traffic agents. Due to the com­plex­i­ty of the sim­u­lat­ed agents and to enhance future exten­si­bil­i­ty, agent types are imple­ment­ed as three sep­a­rate plat­forms: 1) the Vehi­cle Plat­form cre­ates and man­ages Con­text Aware Intel­li­gent (CAI) Vehi­cle agents; 2) the Inter­sec­tion Con­trol Agent Plat­form cre­ates and man­ages inter­sec­tion con­troller agents; and 3) the Zone Man­ag­er Plat­form cre­ates and man­ages ser­vice and traffic man­ag­er agents. Com­mu­ni­ca­tions between sim­u­lat­ed agents with­in and across plat­forms take place over the Agent-Agent Mes­sage Trans­port Ser­vice.

The Envi­ron­ment Sys­tem cre­ates and man­ages the traffic envi­ron­ment; i.e., com­plex traf­fic net­work, in which sim­u­lat­ed agents are sit­u­at­ed. Also, it stores and main­tains a detailed specifi­ca­tion of the traffic net­work topol­o­gy. Com­mu­ni­ca­tions between the Agent Sys­tem and Envi­ron­ment Sys­tem take place over the Agent-Envi­ron­ment Mes­sage Trans­port Ser­vice.

The Sim­u­la­tion Micro­ker­nel man­ages the sim­u­la­tion work-flow.

The Con­trol and Visu­al­iza­tion Mod­ule receives traffic sim­u­la­tion infor­ma­tion through the MTS. It ren­ders 2D and 3D rep­re­sen­ta­tions of the sim­u­la­tion and pro­vides mech­a­nisms for the user to inter­act with the sim­u­la­tion and mod­i­fy para­me­ters at run-time.

Traffic Network Structure

In MATISSE, a traffic net­work is rep­re­sent­ed as a direct­ed graph. Direct­ed edges in the graph rep­re­sent road seg­ments, and nodes rep­re­sent inter­sec­tions or con­nec­tions between con­sec­u­tive road seg­ments. A lane con­nec­tion specifies how lanes in the upstream road are con­nect­ed to lanes down­stream. In oth­er words, it defines the pos­si­ble traffic move­ment between lanes in two con­sec­u­tive roads.

Fig­ure (a) shows an exam­ple of a direct­ed graph that rep­re­sents a traffic net­work. In the illus­trat­ed exam­ple, node N2 is an inter­sec­tion node, while oth­er nodes are con­nec­tion nodes used to con­nect road seg­ments. Fig­ure (b) illus­trates the traffic net­work after spec­i­fy­ing detailed road attrib­ut­es.

Vehicle Agents

In MATISSE, a vehi­cle agent can be set to sim­u­late:

  • A reg­u­lar vehi­cle dri­ven by a dri­ver.
  • A smart, uncon­nect­ed vehi­cle dri­ven by a dri­ver.
  • A smart, con­nect­ed vehi­cle dri­ven by a dri­ver.
  • An autonomous, uncon­nect­ed vehi­cle.
  • An autonomous con­nect­ed vehi­cle.

The deci­sion mak­ing process for a vehi­cle agent con­sid­ers vehi­cle dynam­ics and trav­el route plan­ning. Vehi­cle dynam­ics is relat­ed to the vehi­cle agent’s tac­ti­cal deci­sions about speed and lane change that need to be applied dur­ing a sim­u­la­tion cycle. Trav­el route plan­ning refers to the long-term plan­ning relat­ed to the selec­tion of a real-time trav­el route.

MATISSE 3.0 offers algo­rithms and their imple­men­ta­tions for both vehi­cle dynam­ics and trav­el route plan­ning.

Vehicle Driver

A sim­u­lat­ed dri­ver per­ceives its envi­ron­ment through vision and audi­to­ry sen­sors. The imple­men­ta­tion of a vision sen­sor allows the sim­u­lat­ed dri­ver to “see” the envi­ron­ment area locat­ed with­in the driver’s vision scope. This per­cep­tion is tak­en into account in the vehi­cle deci­sion mak­ing process when the vehi­cle state is non-autonomous. For instance, see­ing a lead­ing vehi­cle decel­er­ate may lead a vehi­cle dri­ver to decide to decel­er­ate in order to avoid col­li­sion. On the oth­er hand, the audi­to­ry sen­sor allows the sim­u­lat­ed dri­ver to hear audi­ble events (e.g., sirens) that prop­a­gate to the driver’s audi­to­ry sen­sor per­cep­tion range.

A sim­u­lat­ed dri­ver is assigned one of five lev­els of dis­trac­tion: lev­el 1: sober; lev­el 5: impaired. The high­er the lev­el of dis­trac­tion, the less the dri­ver is able to per­ceive its sur­round­ings.

A driver’s lev­el of dis­trac­tion can be mod­i­fied at run-time.

Movement Dynamics

Micro­scop­ic sim­u­la­tion sys­tems account for vehi­cle dynam­ics through the imple­men­ta­tion of car-fol­low­ing and lane-chang­ing mod­els. Car-fol­low­ing refers to a vehicle’s accel­er­a­tion and decel­er­a­tion in rela­tion to the posi­tions and veloc­i­ties of its neigh­bor­ing vehi­cles. Lane-chang­ing mod­el describes the driver’s deci­sion to move to a neigh­bor­ing lane.

The Krauss mod­el has been one of the most wide­ly imple­ment­ed mod­el in micro­scop­ic sim­u­la­tors. The main lim­i­ta­tions of the Krauss mod­el are:

  • Lane-change oper­a­tions are assumed to take place in one time step.
  • Car-fol­low­ing is assumed to be col­li­sion free.

MATISSE offers an improved ver­sion of the Krauss mod­el:

  • Lane change oper­a­tions span sev­er­al time steps.
  • An esti­ma­tion mod­el is added to ensure “safe” lane change.
  • Unex­pect­ed acci­dents can be sim­u­lat­ed.

Route Planning

Dur­ing the exe­cu­tion of the sim­u­la­tion, vehi­cle agents are giv­en a des­ti­na­tion to reach. They exe­cute a non-triv­ial dynam­ic rout­ing algo­rithm. At each sim­u­la­tion cycle, the vehi­cle agent checks if its cur­rent goal has to change (e.g., due to an emer­gency noti­fi­ca­tion) and re-plans its trav­el route if nec­es­sary. The planned route rep­re­sents the opti­mal route com­put­ed based on the traf­fic con­di­tions at plan­ning time. Fol­low­ing this step, the vehi­cle agent assess­es its abil­i­ty to exe­cute its cur­rent plan based on cur­rent traf­fic con­di­tions (e.g., does the lane occu­pied by the vehi­cle lead to the next road in the planned trav­el route? Is a lane change pos­si­ble?). If the plan is not achiev­able, the vehi­cle agent delib­er­ates and either defines an alter­nate trav­el route or exe­cutes an action (e.g., reduce speed).

Simulating Unexpected Accidents

The sim­u­la­tion of unex­pect­ed acci­dents is real­ized through the mod­i­fi­ca­tion of the col­li­sion-free Krauss mod­el and the def­i­n­i­tion of algo­rithms that take into account the driver’s per­cep­tion in the driver’s deci­sion mak­ing process.

In MATISSE, dur­ing the exe­cu­tion of the sim­u­la­tion, the user can mod­i­fy the lev­el of dis­trac­tion of a dri­ver. The high­er the lev­el of dis­trac­tion, the less the dri­ver is able to per­ceive its sur­round­ings. The sim­u­lat­ed dri­vers do not con­trol the out­come of their actions. Rather, the envi­ron­ment decides the results of the dri­vers’ actions accord­ing to the environment’s phys­i­cal laws. For exam­ple, in the case of a dis­tract­ed dri­ver who speeds up unex­pect­ed­ly in a jammed traf­fic, the envi­ron­ment com­putes the out­come of this action (i.e., acci­dent) based on the cur­rent traf­fic con­di­tions and the environment’s phys­i­cal laws.   The result of this com­pu­ta­tion is not pre­defined, but deter­mined based on the phys­i­cal set­tings (posi­tion of the sur­round­ing vehi­cles at col­li­sion time, speed, head­ing, mass). In addi­tion, the envi­ron­ment updates the state of the col­lid­ing vehi­cles (e.g., to indi­cate their inabil­i­ty to move dur­ing the next sim­u­la­tion cycles).

This fea­ture allows the user to dynam­i­cal­ly intro­duce acci­dents and wit­ness the emerg­ing traffic behav­ior (e.g., traffic jams).

Intersection Controller Agent

The inter­sec­tion con­troller man­ages the traf­fic flow at an inter­sec­tion. It is makes use of sim­u­lat­ed sen­sors to per­ceive its sur­round­ings and com­mu­ni­ca­tion mech­a­nisms to exchange infor­ma­tion mes­sages with oth­er agents The inter­sec­tion con­troller delib­er­ates over the acquired knowl­edge, gen­er­ates reg­u­la­tion plans to con­trol the traf­fic flow then dynam­i­cal­ly changes its inter­sec­tion dis­plays.

An inter­sec­tion con­troller imple­ments the fol­low­ing inter­sec­tion con­trol strate­gies:

Con­ven­tion­al Agent-Based
  • All-way stop
  • Two-way stop
  • Fixed-cycle
  • Adap­tive-cycle
  • Col­lab­o­ra­tive Sig­nal Tim­ing
  • Road-evac­u­a­tion

Simulated Communications

An intel­li­gent traf­fic man­age­ment sys­tem involves a large amount of inter­ac­tions and col­lab­o­ra­tive deci­sion-mak­ing among var­i­ous agents. As such, sup­port­ing com­mu­ni­ca­tion capa­bil­i­ties is fun­da­men­tal to the imple­men­ta­tion and val­i­da­tion of a sim­u­lat­ed ITS. MATISSE pro­vides mech­a­nisms for the sim­u­la­tion of V2V, V2I and I2I com­mu­ni­ca­tions.

A sim­u­lat­ed vehi­cle agent can com­mu­ni­cate with oth­er vehi­cle and inter­sec­tion con­troller agents locat­ed with­in its cir­cle of influ­ence.. Sim­i­lar­ly, an inter­sec­tion con­troller agent can com­mu­ni­cate with vehi­cle agents with­in its cir­cle of influ­ence.

In addi­tion, vehi­cle agents and inter­sec­tion con­troller agents can com­mu­ni­cate with their ser­vice man­agers to exchange infor­ma­tion about the traf­fic envi­ron­ment.

Visualization of Traffic Simulations

MATISSE allows the con­cur­rent 2D and 3D visu­al­iza­tions of traf­fic sce­nar­ios. Both 2D and 3D visu­al­iz­ers incor­po­rate a built-in inter­face sys­tem that allows the user of the sim­u­la­tion to inter­act with the sim­u­la­tion at run-time to:

  • Add vehi­cle agents to the sim­u­la­tion;
  • Edit an agent prop­er­ty (e.g., change a vehi­cle agent max­i­mum accel­er­a­tion);
  • Trig­ger an exter­nal event (e.g., siren); or
  • Edit the pro­pri­eties of an envi­ron­ment object (e.g., add/remove a road bar­ri­er).

The fig­ure above shows a snap­shot of the 3D visu­al­iz­er in MATISSE. The tool box on the right pro­vides an inter­face for the user to add traf­fic agents or envi­ron­ment objects, and trig­ger exter­nal events. In addi­tion, it allows the user to find and track a spe­cif­ic agent or group of agents. The dia­log box on the left allows the user to change the prop­er­ties of an indi­vid­ual traf­fic agent.

Related Publications

Moham­mad Al-Zinati and Rym Wenkstern. An agent-based self-orga­niz­ing traf­fic envi­ron­ment for urban evac­u­a­tions. In Pro­ceed­ings of the The Six­teenth Inter­na­tion­al Con­fer­ence on Autonomous Agent and Mul­ti­a­gent Sys­tems, AAMAS ‘2017, Sao Paulo, Brazil, May 2017.

Moham­mad Al-Zinati and Rym Wenkstern. Sim­u­la­tion of traf­fic net­work re-orga­ni­za­tion oper­a­tions. In Pro­ceed­ings of the 20th IEEE/ACM Inter­na­tion­al Sym­po­sium on Dis­trib­uted Sim­u­la­tion and Real Time Appli­ca­tions, DS-RT 16, pages 178–186, Lon­don, UK, Sep­tem­ber 2016.

Moham­mad Al-Zinati and Rym Wenkstern. Matisse 2.0: a large-scale mul­ti-agent sim­u­la­tion sys­tem for agent-based its. In Pro­ceed­ings of the 2015 IEEE?ACM Inter­na­tion­al Con­fer­ence on Intel­li­gent Agent Tech­nolo­gies, lAT’ 15, pages 328–335, Sin­ga­pore, Sin­ga­pore, Decem­ber 2015.

Moham­mad Al-Zinati and Rym Wenkstern. A self-orga­niz­ing vir­tu­al envi­ron­ment for agent-based sim­u­la­tions. In Pro­ceed­ings of the 2015 inter­na­tion­al con­fer­ence on autonomous agents and mul­ti­a­gent sys­tems, AAMAS ’15, pages 1031–1039, Istan­bul, Turkey, May 2015.

Z. Wenkstern, T. Steel, and G. Leask. A Self Orga­niz­ing Archi­tec­ture for Traf­fic Man­age­ment, vol­ume 6090 of  Lec­ture Notes in Com­put­er Sci­ence, Springer Ver­lag, 2010.

More pub­li­ca­tions avail­able here


MATISSE 3.0


Archi­tec­ture and Exe­cu­tion


Import Open­streetmap


Sen­sors


Dri­ver Behav­iours


Sim­u­lat­ed V2X Com­mu­ni­ca­tions


Real-time Sim­u­la­tion Para­me­ters Mod­i­fi­ca­tion