Skip to main content

Agent-based fleet simulator to test strategies

Project description

SimFleet

https://img.shields.io/pypi/v/simfleet.svg Python Versions Languages Code Size MIT License Downloads Documentation Status https://img.shields.io/pypi/format/simfleet.svg

SimFleet is a multi-agent simulation platform for the orchestration and execution of transportation services. All actors of a transportation system are represented by agents whose behaviours define the operation of the service and its internal communication, enabling users to configure and test their own agent strategies. This platform facilitates the study of mobility in realistic scenarios without the need for physical testing.

SimFleet includes predefined agent classes that represent the core components of any transportation service: Customers, Transports, Fleet Managers, and Stations.

  • Customer Agents: People or goods that require transportation.

  • Transport Agents: Vehicles that provide displacement services to Customers.

  • FleetManager Agents: Service provider that manages a fleet of Transports.

  • Station Agents: Locations representing transportation infrastructure, such as bus stops or charging stations.

These agents can be extended and customized to represent a specific transportation mode. Currently, the platform provides two predefined transportation services: Taxi/Electric Taxi service, and Urban Bus. These systems count with their own implementation of Transport and Customer agents, as well as the necessary infrastructure: Electric Charging Stations and Bus Stops. Using the predefined agents, SimFleet users may easily create and execute their own simulation scenarios.

As for advanced users, however, the extension of predefined agents is encouraged to develop new agent types. SimFleet’s architecture, based on modularity, simplifies the implementation of custom agents and agent behaviours tailored to the user’s specific needs.

Features

  • Open Fleets simulator

  • Strategy pattern

  • Continuous simulator

  • Load scenarios

  • Multi-agent system built with SPADE

  • XMPP communications

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

History

2.0.1 (2025-01-28)

  • Minor bug fixes

  • Updated documentation

2.0.0 (2025-01-23)

  • New brand release

  • Upgraded to SPADE 4

  • Full code refactor

  • New class hierarchy

  • New documentation

1.0.3 (2022-12-13)

  • Update third-party libs

1.0.2 (2021-02-14)

  • Fixed bug with Vuex version

1.0.1 (2019-11-07)

  • SPADE and pandas version upgraded.

  • Stop simulation fixed.

  • Aesthetic changes.

  • Minor bug fixes.

  • Updated documentation.

1.0.0 (2019-11-05)

  • Moved from a taxi simulator to a generic fleet simulator.

  • Updated documentation.

  • Added support for different cities.

  • Directory agent now sends all the info.

  • Fixed bug of staying the corresponding time in the station when charging.

  • Changed logger to loguru library.

  • Removed fuel from transport popup, now is current_autonomy/max_autonomy.

  • Concurrent charging in stations now allowed through TimeoutBehavior.

  • Custom icons added.

  • Removed agents introduction from GUI.

  • Added specific parameters in scenario file (now config file).

  • CLI simplified.

  • Changed cli to config file.

  • Control of free places and status for StationAgent.

  • Fuel refill behavior between TransportAgent and StationAgent.

  • Refactoring from passenger to Customer

  • Refactoring from taxi to Transport

  • Refactoring from coordinator to fleet manager

0.4.1 (2019-01-07)

  • Fixed bug when checking if the simulation is finished.

0.4.0 (2018-10-25)

  • Improved the concurrent creation of agents.

  • Added stop and clear buttons to the interface.

  • Added download button for getting results in excel and json formats.

  • Documentation updated.

0.3.0 (2018-10-01)

  • Migrated to SPADE 3.

  • Documentation highly improved.

  • Helper functions added and refined.

  • Javascript framework included: VueJS

  • Routes centralized with a Route agent.

  • UI improved.

0.2 (2017-11-15)

  • Added scenario loading feature.

0.1.3 (2017-11-15)

  • Fixed minor bugs.

0.1.1 (2017-11-14)

  • Added documentation.

0.1.0 (2017-11-03)

  • First release on PyPI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

simfleet-2.0.1.tar.gz (9.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

simfleet-2.0.1-py2.py3-none-any.whl (477.0 kB view details)

Uploaded Python 2Python 3

File details

Details for the file simfleet-2.0.1.tar.gz.

File metadata

  • Download URL: simfleet-2.0.1.tar.gz
  • Upload date:
  • Size: 9.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.12.0 readme-renderer/43.0 requests/2.32.3 requests-toolbelt/1.0.0 urllib3/2.3.0 tqdm/4.67.1 importlib-metadata/8.6.1 keyring/25.6.0 rfc3986/2.0.0 colorama/0.4.6 CPython/3.10.0

File hashes

Hashes for simfleet-2.0.1.tar.gz
Algorithm Hash digest
SHA256 7ad122074b0017b04f785a7efe57011a2c33720b4d6b140eaed18da9e0fa915a
MD5 0701333970f53a7e049af2a692d9d6b9
BLAKE2b-256 65530de02361b8cd4c3ac7c6d1efee9fe5525857096cd5e5f2c38c4d608a0945

See more details on using hashes here.

File details

Details for the file simfleet-2.0.1-py2.py3-none-any.whl.

File metadata

  • Download URL: simfleet-2.0.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 477.0 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.12.0 readme-renderer/43.0 requests/2.32.3 requests-toolbelt/1.0.0 urllib3/2.3.0 tqdm/4.67.1 importlib-metadata/8.6.1 keyring/25.6.0 rfc3986/2.0.0 colorama/0.4.6 CPython/3.10.0

File hashes

Hashes for simfleet-2.0.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 ae1a347c30fe3fe415637ef8112d4b3588903cf0ac76fc68be2fa9a726d0fc81
MD5 a8f327356a3d4d091362e0a33b859465
BLAKE2b-256 379d9115489e4a02f9aeaaac1d886af2611a92d84cc409042907c4f26b7c5f06

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page