Prédiction de la surestarie au Doraleh Multi-Purpose Port de Djibouti par Machine Learning — Forêt Aléatoire R²=0.667 — Stage Master 1 IA
# 🚢 Port Intelligence AI — Doraleh Multi-Purpose Port
## 📋 Description
Projet de Machine Learning réalisé durant un stage de Master 1
en Intelligence Artificielle et Modélisation de Données au sein
du département **Business Performance Management** du
**Doraleh Multi-Purpose Port (DMP)** de Djibouti.
**Objectif** : Prédire la surestarie (durée d'attente des camions
dans le terminal portuaire) à partir des données opérationnelles
réelles du port.
## 🌐 Application déployée
👉 **Tester l'application ici**
## 📊 Résultats des modèles (meilleure configuration par modèle)
| Modèle | Configuration | MAE (min) | RMSE (min) | R² |
|--------|--------------|-----------|------------|-----|
| Régression Linéaire | Itérative + tuning | 355.90 | 610.72 | 0.484 |
| KNN | KNN + tuning | 245.93 | 546.37 | 0.587 |
| Arbre de Décision | Itérative + tuning | 352.78 | 607.00 | 0.490 |
| **Forêt Aléatoire ✅** | **Simple sans tuning** | **260.03** | **551.98** | **0.667** |
> ✅ Métriques issues du jeu de **validation** sauf Forêt Aléatoire qui affiche le jeu de **test indépendant**
## 🗂️ Structure du projet
| Fichier | Description |
|---------|-------------|
| `chargement.ipynb` | Chargement et préparation des données |
| `Exploration_de_donnes_.ipynb` | Analyse exploratoire et visualisation (EDA) |
| `prediction_Surestarie_regression_lineaire.ipynb` | Modèle Régression Linéaire |
| `prediction_Surestarie_KNN.ipynb` | Modèle K-Nearest Neighbors |
| `prediction_Surestarie_arbre.ipynb` | Modèle Arbre de Décision |
| `prediction_Surestarie_foret.ipynb` | ✅ Modèle retenu — Forêt Aléatoire |
| `app.py` | Interface web de prédiction (Gradio) |
| `requirements.txt` | Dépendances Python |
## 🔬 Méthodologie
- **62 329** enregistrements opérationnels réels (Oct 2023 – Juin 2024)
- **4 fichiers** : Gate_GC, Gate_Out, DISCH Conteneurs, LOAD Conteneurs
- **3 stratégies d'imputation** : Simple, KNN, Itérative
- **Pipeline sklearn** : ColumnTransformer + OneHotEncoding
- **Analyse SHAP** p …