Survival of the Fittest Programs: How Machines Evolve to Solve Problems with Genetic Programming
Last Updated on September 18, 2024 by Editorial Team
Author(s): Linh V Nguyen
Originally published on Towards AI.
Transforming Data and Machine Learning into Actionable Equations Using Symbolic Regression
This member-only story is on us. Upgrade to access all of Medium.
Image by DALL-EIn my previous article, I explored the concept of evolving simple bits in Genetic Algorithms. Now, letβs step further for something more sophisticated: evolving entire programs. This idea forms the foundation of Genetic Programming, an ambitious approach that aimed to achieve automatic programming long before the era of GPT models. Can we apply evolutionary principles not just to simple bits, but to complex, functional programs? Letβs find out.
Genetic Programming (GP), derived from Genetic Algorithm, borrows the ideas from natural selection to evolve computer programs. Unlike traditional modeling, which assumes some prior relationship between inputs and outputs, GPs do not assume previous knowledge, which means we are not limited to predefined models or cognitive biases. Instead, GPs attempt to search and explore a vast space of potential solutions, evolving better expressions with each generation. Itβs like teaching a computer to be a mathematical explorer or self-taught programmer, adapting to new real-life challenges to discover hidden patterns and relationships.
Letβs break down some key elements of GPs:
Chromosomes or Individuals: Unlike Genetic Algorithms, where individuals are potential solutions, individuals in GP are computer programs that are usually represented by syntax trees… Read the full blog for free on Medium.
Join thousands of data leaders on the AI newsletter. Join over 80,000 subscribers and keep up to date with the latest developments in AI. From research to projects and ideas. If you are building an AI startup, an AI-related product, or a service, we invite you to consider becoming aΒ sponsor.
Published via Towards AI