Skip to content

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

License

Notifications You must be signed in to change notification settings

Greaby/godot-neuroevolution

Repository files navigation

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

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project