Cart Pole Stability through Q-Learning

A DQN-based CartPole project exploring stability through reinforcement learning.

Technologies
Reinforcement LearningDQNPython
CartPole environment visualizationReward plot for the CartPole reinforcement learning experimentDouble Q-network architecture diagram

Context

This project used the Gymnasium CartPole environment as a controlled reinforcement-learning benchmark for learning discrete control. The goal was to train an agent to keep the pole balanced by choosing left/right cart actions from observed system state, using value-based deep reinforcement learning rather than hand-coded control logic.

What I contributed

I implemented the PyTorch DQN agent, including the policy network, target network, Double DQN target calculation, experience replay buffer, epsilon-greedy exploration schedule, model checkpointing, and reward/epsilon plotting. I also added support for a dueling-network architecture that separates state value and action advantage estimates, allowing the project to compare standard, Double, and Dueling DQN variants.

Links