victor-mlai / NEATSelfDrivingCarUE4

Training NEAT Neural Network With Ray Casting in Unreal Engine 4

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Training NEAT Neural Network With Ray Casting in Unreal Engine 4

How It Works:

Each car has 2 sensor components in the front that sends 2 rays. If the rays hit anything they return the distance between the sensor and the object. We feed this information + car's own velocity vector and acceleration vector to our neural network. Neural network is created by a method called NeuroEvolution of Augmenting Topologies (NEAT)

We also have some checkpoints on the map, these are just used for giving additional points to the cars that manage to follow the path so that the population can converge faster.

Current State:

Managed to increase population size to 750 cars. Each car has 2 sensors and each sensor fires 2 rays every frame so that's 3000 rays per frame + other stuff at 30FPS.

Demo Video Here:

References:

Evolving Neural Networks through Augmenting Topologies

About

Training NEAT Neural Network With Ray Casting in Unreal Engine 4


Languages

Language:C++ 98.0%Language:C# 1.8%Language:C 0.1%