Skip to content

Self-Driving Car Reinforcement Learning ๐Ÿš˜๐Ÿค”๐Ÿง 

License

Notifications You must be signed in to change notification settings

yahnyshc/selfDrivingCarRL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

20 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Self-Driving Car Reinforcement Learning Project

Welcome to my self-driving car reinforcement learning project! This project aims to train an autonomous agent to navigate a complex racing environment using reinforcement learning techniques.

Features:

  • Utilizes Double Deep Q-Learning algorithm for training the agent
  • Implements a custom environment for the agent to interact with
  • Agent learns the environment using sensors measuring distances to the walls
  • The neural network receives sensor distances as an input layer.
  • The output layer represents a discrete action space.
  • The steering wheel is displayed at the top of the screen to show agent's decisions
  • Provides visualization tools for monitoring agent performance and training progress
  • Allows for both training from scratch and loading a pre-trained model
  • Ability to switch between learning and evaluation modes by pressing the "t" key
  • Option to enable debugging mode by pressing the "d" key for detailed environment insights

Getting Started:

  • Install the necessary dependencies: pygame, numpy, tensorflow, etc.
  • Run the selfDrivingCarRL.py file to start training or evaluating the agent
  • Press the "t" key to switch between training and evaluation modes
  • Press the "d" key to enable debugging mode for detailed environment insights
  • Press the "r" key to reset car's position to the start

Feel free to explore the codebase and experiment with different hyperparameters to see how the agent learns to drive autonomously!

Demo

carDriving.mp4

Debugging mode

debugging.mp4

Training process

training.mp4