Skip to content

Smart Dots is an application that uses a Genetic Algorithm to find a path to a target hindered with obstacles. Based on Code Bullet project: https://github.com/Code-Bullet/Smart-Dots-Genetic-Algorithm-Tutorial

Notifications You must be signed in to change notification settings

Samuelimza/Smart-Dots

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Smart-Dots

Smart Dots is an application that uses a Genetic Algorithm to find a path to a target hindered with obstacles.

To Run

Clone the repo, go to the Application folder and run the GA1.exe

Principle

A simulation is run for the Dots to try and reach the target. The Genetic Algorithm at the end of simulation produces a new Generation of Dots from the best Dots of the previous generation. Dots are rated according to factors such as their distance from the target, the number of steps they took to reach, etc. Now the new Generation before deployement is mutated i.e their DNA is randomly changed. This introduces new possible solutions. And the cycle repeats. After a while good mutations get propagated in the generations and overall fitness increases. Given long enough time the algorithm arrives at the shortest path to the target.

Specifics

The target is Yellow colored. The best Dot from the previous generation is highlighted in red. After the path is discovered, the algorithm optimizes for the quickest path by only considering Dots better than the previous generation.

Example:

To see a full run watch: https://www.youtube.com/watch?v=9twiJwJ310Y

Screenshots:

3

32_a

32_b

About

Smart Dots is an application that uses a Genetic Algorithm to find a path to a target hindered with obstacles. Based on Code Bullet project: https://github.com/Code-Bullet/Smart-Dots-Genetic-Algorithm-Tutorial

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published