https://github.com/kochlisGit/Noise-Adaptive-Driving-Assistance-System
** Description **
This is the project of my thesis. I've implemented an agent in CARLA Simulator, which is capable of navigating a vehicle safe & fast, using only 2 front cameras. More info about the simulator can be found here: https://carla.org/ . The agent has learnt to navigate in a lane using deep reinforcement learning algorithms. The development of the agent was made in Python.
This directory contains 8 video files (mp4) that demonstrate how the vehicle is moving in the simulator https://github.com/kochlisGit/autonomous-vehicles-agent/tree/main/videos
The validation of the vehicle was done in a pre-defined route, that was new to the agent. The results are astonishing!
- Carla API
- Numpy
- Matplotlib
- Tensorflow
- Keras
- TF-Agents
- Tensorflow-Addons
- Collision Detector: https://carla.readthedocs.io/en/latest/ref_sensors/#collision-detector
- RGB Camera with Semantic Segmentation: https://carla.readthedocs.io/en/latest/ref_sensors/#semantic-segmentation-camera
- Depth Camera: https://carla.readthedocs.io/en/latest/ref_sensors/#depth-camera
- DQN: https://www.cs.toronto.edu/~vmnih/docs/dqn.pdf
- N-Step DQN: https://arxiv.org/pdf/1901.07510.pdf
- DDQN: https://arxiv.org/pdf/1509.06461.pdf
- C51: https://arxiv.org/pdf/1707.06887.pdf
- Decaying Epsilon Greedy: http://tokic.com/www/tokicm/publikationen/papers/AdaptiveEpsilonGreedyExploration.pdf
- Convolutional Neural Network CNN: https://iopscience.iop.org/article/10.1088/1742-6596/1004/1/012028/pdf
- Yogi Optimizer: https://papers.nips.cc/paper/2018/file/90365351ccc7437a1309dc64e4db32a3-Paper.pdf
- GELU: https://arxiv.org/pdf/1606.08415.pdf
First, You have to download carla and all the libraries above. Then, download my "code" directory and paste it into "Carla/PythonAPI/". Run "agent/straight_lane_agent_c51_training.py" to start the training.
IMPORTANT The simulator window should be open, in order for the training to occur. Check https://carla.readthedocs.io/en/latest/start_introduction/ for more information of how to setup carla.
- Python 3.7
- Carla <= 0.12
- Numpy >= 1.15
- Matplotlib
- Tensorflow >= 2.0
- TF-Agents >= 0.13
- Tensorflow-Addons >= 0.13 1 Opencv >= 4.0