Logo Lanfrica

Ganzadidier/Ganza_Didier_rl_summative

Domaine:

socioeconomic

Type de record:

project
Créateur:
Gan
Hôte:
# Rwanda Spatial Policy Engine — RL Summative A reinforcement learning system that optimises budget allocation across **5 Rwandan districts** and **7 development sectors** over a 5-year strategy horizon (20 budget cycles). Trained agents are compared across three algorithms: **DQN**, **PPO**, and **REINFORCE**. --- ## Project Structure ``` Ganza_Didier_rl_summative/ ├── environment/ │ ├── custom_env.py # Custom Gymnasium environment (RwandaPolicy-v0) │ └── rendering.py # Pygame visualization components ├── training/ │ ├── dqn_training.py # DQN training script (10 hyperparameter experiments) │ └── pg_training.py # PPO & REINFORCE training scripts (10 experiments each) ├── models/ │ ├── dqn/ # Saved DQN models + VecNormalize stats │ └── pg/ # Saved PPO & REINFORCE models + VecNormalize stats ├── data_files/ │ ├── rwanda_districts_baseline.csv # Real district indicators (NISR, World Bank) │ ├── sector_impact_matrix.csv # Sector → indicator impact coefficients │ ├── district_profiles.json # Rich district economic profiles │ └── project_catalog.json # 100+ development project catalog ├── plots/ # Generated analysis figures (created by analysis.py) ├── main.py # Entry point — run best agent + recommendations ├── play.py # Playback script with pygame visualization ├── analysis.py # Generate all training analysis plots ├── generalization_test.py # Test agents on unseen scenarios ├── recommendation.py # Project recommendation engine ├── district_data.py # District baseline data loader ├── callbacks.py # Custom SB3 training callbacks ├── requirements.txt # Python dependencies └── README.md ``` --- ## Setup ```bash # 1. Clone the repository git clone github.com /Ganza_Didier_rl_summative.git cd Ganza_Didier_rl_summative # 2. Create and activate virtual environment pyth …