One Artificial Intelligence for each pedestrian

SpirOps has been developing since 2007 a crowd simulator in which each agent has its own desires, its personal characteristics and a subjective knowledge of the world.

We use sociological research to analyse pedestrian behaviours. We reproduce their motivations to ensure that our behaviours are as realistic and repeatable as possible in various environments.

Our AI Engine allows us to improve and enrich the behaviours depending on our partners' needs.


Our tools can simulate bustling cities in peak hours. The 3D urban environment is generated thanks to open data.

Urban Simulation

Specific behaviours for pedestrians have been implemented in order to:

  • favour sidewalks and crosswalks,
  • pay attention to traffic lights,
  • avoid vehicles obstructing their way.

Automatic Urban Generation

In order to simulate pedestrians and vehicles in a bustling city, we use a large amount of open data such as:

  • a HD map for roads,
  • sidewalks / crosswalks shapes,
  • traffic lights / road signs,
  • subway entrances / shops,
  • urban furniture (benches, trees, poles, street lamps, etc.).


Our tools allow us to simulate a large-scale train station at rush hour. You can easily change the train station parameters and get a large amount of data.


  • travelers entries rates,
  • boarders destinations,
  • types of vehicles,
  • train schedule (departure and arrival times, missions),
  • loads for each wagon and for each train,
  • elevator direction,
  • location of ticket machines,
  • number of ticket gates.


  • number of boarders per carriage,
  • density maps (based on Fruin Level of Service),
  • use map,
  • train/platform exchange time,
  • in/out flows for each:
    - ticket gate,
    - escalator,
    - staircase.

Specific train behaviours

On top of their generic behaviours, each simulated traveler is capable of:

  • choosing a spot on the platform according to different strategies,
  • getting on and off a train,
  • sitting down in the wagons according to their preferences,
  • running to avoid missing their train.

Thesis (in French):

Positioning on the platform

The positioning of the travelers on the platform is extremely important if one wants to study the density on the platform, the safety, or how long it takes for travelers to get on and off the train. Sociological studies show that this positioning on the platform depends on several parameters such as:

  • the platform width,
  • how escalators and stairs are placed,
  • train stations exits of the travelers destinations,

SpirOps implemented and calibrated the most common positioning strategies through real life observations. The behaviours were implemented in order to be repeatable between different train stations.

Train/platform exchange

The same work was done for the exchange between the train and platform which also depends on numerous adjustable parameters:

  • vehicles loads,
  • amount of people going on and off the train,
  • types of vehicles (door width, amount of seats),
  • politeness of travelers.


SpirOps has been working for theme parks and tourism sites for more than a decade. Our tools can simulate families walking together, specific visitor desires, waiting lines and shows!

Friends and families

A crowd isn't solely composed of single individuals. That's why we also simulate group behaviours.

  • the members of the same group wait for each other,
  • each member of the group moves to stay within talking distance to other members of the group,
  • individuals of different groups respect politness rules : they don't disturb a group of friends talking or don't separate children from their parents.

Interactions with the environment

Pedestrians don't simply navigate, they also interact with their environment. Thus, they can:

  • wait in an organised or disorganised queue (respectively ticket booth / movie theater entrance),
  • plan a route requiring resources (train tickets, etc.),
  • satisfy needs (hunger, toilets, etc.),
  • be spectators of events (street performances, incidents, etc.)



For the different spaces:

  • define specific usage (meeting rooms, toilets),
  • configuration (ex: capacity, number of printers).

For the workers:

  • working hours / teleworking rate,
  • meetings duration / number of participants,
  • definition of their needs (smoking, coffee...),
  • time working outside or for videoconferencing.


  • automatic schedules creation,
  • desk utilisation rate,
  • occupation rate of the different rooms,
  • time spent:
    - walking (distance traveled),
    - for each activity,
    - on each equipment.
  • density map.


Our tools allow you to create a crowd capable of interacting with simulated robots. Our partners use our software to improve the behaviours of their robots in densely populated environments.