Baby Steps into Genetic Programming
a year ago
- #common-lisp
- #genetic-programming
- #ai
- Genetic programming (GP) is inspired by biological evolution and is used to solve problems by evolving computer programs in a problem-specific environment.
- The article explores GP using Common Lisp, focusing on generating random code, evaluating fitness, and advancing generations through cross-overs and mutations.
- Key functions include `random-form` for generating random code, `run-form` for executing generated code, and `fitness` to evaluate how close a form is to the desired solution.
- The process involves creating an initial population of random forms, evaluating their fitness, and then advancing generations by performing cross-overs and mutations on the most fit forms.
- A practical example demonstrates evolving a form to calculate the area of a circle, showing how GP can approximate mathematical functions.
- The article concludes with suggestions for further improvements, such as eliminating bloat and enhancing the initial population diversity.