Major changes:
- Improved documentation
- Minor directory re-organisation. For example, Vehicle and IntersectionManager moved into intersection_control.core.algorithm package
- Convert Trajectories to abstract interface so that Trajectories can be defined in a number of different ways. Provide the default PointBasedTrajectory
- Add stip algorithm. A decentralised discretised-space-time approach.
- Improve performance of qb_im algorithm. Add WAITING_AT_INTERSECTION state to Vehicle FSM
- Use SUMO context subscriptions instead of traci calls in SumoEnvironment. Led to huge improvements in simulation speed.
- Add traffic_light algorithm as baseline signalised intersection control algorithm
- Add more metrics that can be collected by MetricCollector
- Add scripts for algorithm comparison and parameter varying experiments
- Add multi-lane functionality to qb_im algorithm
- Add integration tests that test each algorithm in each environment