130 likes | 530 Views
Car racing using HyperNeat C++ and TORCS (The Open Racing Car Simulator ). James Ihrig Awrad Mohammed Ali. Introduction:. In our project we will use HyperNeat C++ to train a neural network to drive a car using TORCS as a platform .
E N D
Car racing using HyperNeatC++ and TORCS (The Open Racing Car Simulator) James Ihrig Awrad Mohammed Ali
Introduction: • In our project we will use HyperNeat C++ to train a neural network to drive a car using TORCS as a platform. • This will be done by sending the Neural Networks generatedfrom HyperNeat and receiving performance data from TORCS.
Motivation: • We chose to do this project because we are interested in modeling agents in a continuous 3D environment. • We chose TORCS that because it is a an open source platform that has been used similarly in the past.
Background: Connecting TORCS with NEAT is a very popular area it have been done before as we will see here: • In 2009 Luigi Cardamone, Daniele Loiacono and Pier Luca Lanzi did a very similar to what we are trying to do in our project. • Jorge Munoz, German Gutierrez and AraceliSanchis create a controller for the game TORCS by learning how another controller or humans play the game and they use NEAT as one of the controllers.
Communication • Communication from HyperNEAT • Node Names • Node Links • Link Weights • Unique ID for the network • Communication from TORCS • Lap Times • Accumulated error over lap • Number of checkpoints reached • Unique ID for the network
Network Inputs and Outputs • Inputs • Offset from center line • Speed of vehicle • Bias • Outputs • Steering • Gas Percentage • Brake Percentage
Calculating Fitness • To calculate fitness we will make use of the number of segments passed, total laptime and the accumulated deviation from the centerline of the track.
Future Improvements • HyperNEAT • Range Sensors • Pie Slice Sensors
We will create sensors to detect how far the car from the edges. .