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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
065eb369052ac3a1cad74a38888579d0c55ec612ae5ec0ffa3a1671aa6799b60
|
|
| MD5 |
e4e1c4c9255da0700582dd894073fe65
|
|
| BLAKE2b-256 |
6f7f90be8c861148003464e65b0d9229676257dce1b992889d4b360a00ed34cb
|
File details
Details for the file simulateur_trafic_ibt-1.0.0-py3-none-any.whl.
File metadata
- Download URL: simulateur_trafic_ibt-1.0.0-py3-none-any.whl
- Upload date:
- Size: 12.4 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
866bbc0f328e94161cf59e9e50e735c376973d737fb7d11b173fc5ea5438a8d0
|
|
| MD5 |
84a8f38500aa5c67a14ff97b95c442c0
|
|
| BLAKE2b-256 |
c1a27a0933c5a9333699cd073262e4e3a3220ba39f4650ba688fad53b2cea1b2
|