Skip to content

Commit ba78234

Browse files
committed
2 parents 2d116b8 + 58f8c43 commit ba78234

File tree

1 file changed

+33
-1
lines changed

1 file changed

+33
-1
lines changed

README.md

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,36 @@
22

33
A Generative Algorithm AI implementation on a 2D racing simulator "Java Racer" (https://github.com/boraakoguz/JavaRacer)
44

5+
## Features
6+
The algorithm features:
7+
- Elitism
8+
- Cross-over succession depending on the success of the parents
9+
- Mutation
10+
- Advanced mutation techniques to improve variation
11+
- A roll-back mechanism in order to prevent bad training.
12+
13+
Project features:
14+
- Custom map/track design
15+
- Save mechanism
16+
- Live data on the screen
17+
18+
Live Data meanings:
19+
- Best Fit: The most points scored by an agent of the previous generation
20+
- Gen. No: The number of generations
21+
- Population Size: Number of agents in the population
22+
- Instruction Size: The length of the instruction array used by the agents. Gradually expands as training continues
23+
- Last Increase Points: The maximum points scored by an agent at the previous Instruction array expansion. Serves as a benchmark and controlls the roll-back system, advanced mutation system and stops Instruction increase in case of failure to pass the benchmark.
24+
525
## Screen Shots
26+
A screenshot from the training process
27+
![screenshot](https://github.com/boraakoguz/JavaRacer-generative-algorithm/blob/main/screenshots/screenshot1.png)
28+
29+
30+
![gif](https://github.com/boraakoguz/JavaRacer-generative-algorithm/blob/main/screenshots/example.gif)
31+
32+
A gif of the start of a half-completed training
33+
34+
## Creating a Track
635

736
Map creation is as simple as a 100x100 png. Using the default rgb values in paint, the color coding is as follows:
837
- Green: Grass
@@ -16,8 +45,11 @@ If you want to create your own map, edit the track.png file in source directory
1645

1746
## Example Map (can be found in source):
1847

19-
![map](https://github.com/boraakoguz/JavaRacer/assets/66472581/36166a0c-732f-43a6-bc4d-49e97a0c525f)
48+
![map](https://github.com/boraakoguz/JavaRacer-generative-algorithm/blob/main/screenshots/map.png)
2049

50+
## Save System
51+
Saving is done by writing essential data on the save.txt file in the source foulder. Simply deleting or renaming the file will open up a fresh save and create a new save.txt file on the folder.
52+
Changing the data on the file is not advised and may cause errors.
2153

2254
## TODO
2355

0 commit comments

Comments
 (0)