ryash072007 / godot-neuroevolution

Machine learning in godot. In this example, we use an evolutionary algorithm and neural networks to teach cars to drive on a circuit

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Neural Network: Neuroevolution - Godot Engine

Issues Pull requests

In this example, cars are driving on a circuit. They have sensors and a neural network. At first the cars don't know how to drive. The cars that go the farthest are replicated together to create the next generation.

This is a form of evolutionary aglorithm used in machine learning which is useful when we don't have data at the beginning.

See also my projects :

How to use

When we have chosen the best cars, we reproduce them to create a child.

var child = NeuralNetwork.reproduce(mother, father)

We can also create random mutations in the neural network.

var child = NeuralNetwork.mutate(car, funcref(self, "mutate"))

Dependencies

This project require Godot Engine 3.3.

Licenses

  • The source code is available under the MIT license.
  • Art Assets are available under CC0 1.0 Universal (Racing Pack by Kenney)

About

Machine learning in godot. In this example, we use an evolutionary algorithm and neural networks to teach cars to drive on a circuit

License:MIT License


Languages

Language:GDScript 100.0%