Skip to content

earlgreyz/caviar

Repository files navigation

Connected and Autonomous Vehicles Simulator

unittest codecov

Setting up the environment

To avoid package conflicts it is recommended to create a virtual environment for the dependencies.

Creating the virtual environment

$ virtualenv --python=python3 venv
$ source venv/bin/activate

Installing required python packages

(venv) $ pip install -r requirements.txt

Running the simulation

The simulation can be run through the main.py script in the src/ directory of this project.

(venv) $ python src/main.py

To see the list of all possible parameters to change use --help.

(venv) $ python src/main.py --help

The simulation parameters can also be loaded from a yaml configuration file

(venv) $ python src/main.py --config config.yaml
# config.yaml
simulation:
  length: 150
  lanes: 3
  max-speed: 7
  obstacles:
    - "0:0-10"
    - "2:0-10"
  dispatch: 1

Example usage

Simulation can run in two different modes:

  • gui displaying animation of the vehicles
  • cli running for a specific number of cycles and showing only statistics

GUI

You can see gui specific parameters by running

(venv) $ python src/main.py gui --help

For example to change the animation time of a single step to 200ms

(venv) $ python src/main.py gui --step 200

CLI

You can see cli specific parameters by running

(venv) $ python src/main.py cli --help

For example to change the number of steps to 1000

(venv) $ python src/main.py cli --steps 1000

About

Connected Autonomous Vehicles Simulator

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages