rodolfoamarques / NeuroEvolutionDriver

2D autonomous car navigation with optimal driving lines through NeuroEvolution

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NeuroEvolutionDriver

2D autonomous car navigation with optimal driving lines through NeuroEvolution

NeuroEvolution design influenced by ivanseidel's project IAMDinosaur


The track/environment is built using the phaser game engine. The project is setup with a node server that allows for genomes to be loaded and saved. The important files and directories are explained here:

  • index.html: All js assets are loaded here.
  • public/js/environment.js: This file contains all of the game code interfaces with the NEDriver. This is currently a mess and could use a lot of refactoring.
  • public/js/NEDriver.js: This contains all of the code for the genetic neural net.
  • public/genomes/: This directory contains all saved generations of genomes
  • This contains a file public/genomes/generation500.json. This generation will complete the track with a near-optimal driving line
  • public/assets/: All game assets are contained in this directory

Running the environment

Node must be install on your system first

# install dependencies
npm install
# run server
node index.js

Then just open up a browser to localhost:3000.

About

2D autonomous car navigation with optimal driving lines through NeuroEvolution


Languages

Language:JavaScript 100.0%Language:HTML 0.0%