Skip to main content

Un simulateur modulaire pour modéliser et analyser le trafic routier

Project description

Simulateur de Trafic Routier

Simulateur Python pour la modélisation et l'analyse du comportement des véhicules sur un réseau routier. Cet outil offre une plateforme flexible pour tester des politiques de gestion du trafic et étudier les dynamiques des flux routiers.

🚀 Installation

Via PyPI (une fois publié)

```bash pip install simulateur-trafic ```

Via TestPyPI (pour tests)

```bash pip install --index-url https://test.pypi.org/simple/ simulateur-trafic ```

Installation locale (développement)

```bash git clone https://github.com/yourusername/simulateur-trafic.git cd simulateur-trafic pip install -e ".[dev]" ```

📖 Utilisation Rapide

```python from simulateur_trafic import Vehicule, Route, ReseauRoutier, Simulateur

Créer une route

route_a1 = Route("A1", longueur=1000, limite_vitesse_kph=90)

Créer un réseau

reseau = ReseauRoutier() reseau.ajouter_route(route_a1)

Lancer la simulation

simulateur = Simulateur("config.json") simulateur.lancer_simulation(n_tours=100, delta_t=1.0) ```

🏗️ Architecture

``` simulateur_trafic/ ├── models/ │ ├── vehicule.py # Classe Vehicule │ ├── route.py # Classe Route │ ├── reseau.py # Classe ReseauRoutier │ └── simulateur.py # Classe Simulateur principale ├── core/ │ └── analyseur.py # Collecte et export des données ├── numba_kernels/ # Optimisations Numba └── cython_modules/ # Optimisations Cython ```

🧪 Tests

```bash

Exécuter tous les tests

pytest tests/ -v

Avec couverture de code

pytest tests/ --cov=simulateur_trafic

Test spécifique

pytest tests/test_vehicule.py -v ```

🔧 Configuration

Créez un fichier config.json:

```json { "routes": [ { "nom": "A1", "longueur": 1000, "limite_vitesse": 90, "intersection_debut": "Paris", "intersection_fin": "Lyon" } ], "vehicules_initiaux": [ { "nombre": 10, "route_depart": "A1", "vitesse_max_mps": 25 } ] } ```

⚡ Optimisations Disponibles

Numba JIT Compilation

```python from numba_kernels.vehicule_numba import calculer_position_numba

5-100x speedup pour calculs numériques

```

Cython (compilé en C)

```python from cython_modules.vehicule_cy import Vehicule as VehiculeCython

Performance native C

```

📊 Résultats et Analyses

L'outil génère automatiquement:

  • Statistiques de trafic en temps réel
  • Données d'exportation CSV/JSON
  • Graphiques de densité et vitesse

📝 License

Distributed under the MIT License. See LICENSE for more information.

👤 Auteur

Votre Nom - votre.email@example.com

🙏 Remerciements

  • Inspiré par les modèles de trafic IDM (Intelligent Driver Model)
  • Utilise NumPy, Numba et Cython pour les optimisations

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

simulateur_trafic_ibt-1.0.0.tar.gz (10.8 MB view details)

Uploaded Source

Built Distribution

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

simulateur_trafic_ibt-1.0.0-py3-none-any.whl (12.4 MB view details)

Uploaded Python 3

File details

Details for the file simulateur_trafic_ibt-1.0.0.tar.gz.

File metadata

  • Download URL: simulateur_trafic_ibt-1.0.0.tar.gz
  • Upload date:
  • Size: 10.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for simulateur_trafic_ibt-1.0.0.tar.gz
Algorithm Hash digest
SHA256 065eb369052ac3a1cad74a38888579d0c55ec612ae5ec0ffa3a1671aa6799b60
MD5 e4e1c4c9255da0700582dd894073fe65
BLAKE2b-256 6f7f90be8c861148003464e65b0d9229676257dce1b992889d4b360a00ed34cb

See more details on using hashes here.

File details

Details for the file simulateur_trafic_ibt-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for simulateur_trafic_ibt-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 866bbc0f328e94161cf59e9e50e735c376973d737fb7d11b173fc5ea5438a8d0
MD5 84a8f38500aa5c67a14ff97b95c442c0
BLAKE2b-256 c1a27a0933c5a9333699cd073262e4e3a3220ba39f4650ba688fad53b2cea1b2

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