Science
Fact-checked

At WiseGEEK, we're committed to delivering accurate, trustworthy information. Our expert-authored content is rigorously fact-checked and sourced from credible authorities. Discover how we uphold the highest standards in providing you with reliable knowledge.

Learn more...

What is a Genetic Algorithm?

Michael Anissimov
Michael Anissimov
Michael Anissimov
Michael Anissimov

A genetic algorithm is any type of software that uses variation and selection to produce an evolutionarily tuned output. That output may be a program, a value, or even a picture. The genetic algorithm needs a process for generating new variants and feedback, or fitness criteria, in order to determine which variants to discard and which to use.

For example, imagine a genetic algorithm designed to create images of fictional insects. The initial output is merely a hodgepodge of randomly connected lines. Based on feedback from human operators, images that look nothing like insects are eliminated, and future variations tend to look more and more insect-like. As the outputs become more finely tuned, they eventually begin to look something like insects.

Scientist with beakers
Scientist with beakers

The genetic algorithm is often mentioned in connection with Alife, or artificial life, which is the study of virtual organisms created in a computer. These virtual organisms usually live on a virtual grid, and sometimes even reproduce with each other and consume virtual nutrients. These Alife simulations are occasionally used to study real life forms, or to evolve behaviors shared with real life forms. By creating our own artificial evolutionary environments using genetic algorithms, we can view types of life that previously existed only in the imagination.

In one Alife simulation, "organisms" are merely lit-up pixels, which influence pixels around them based on whether adjacent pixels are lit up or not. Surprisingly, the interactions between these organisms can create complex high-level effects that no one could have predicted by looking at the low-level components.

Because genetic algorithms may explore large portions of the search space to a particular problem, they may yield solutions that human operators never would have thought up. The downside to these programs is that for problems with a very large search space, the number of possible solutions may be huge. Therefore, the system can be computationally intensive. By uniting the power of human thought with the brute search-and-test randomness of genetic algorithms, we can create unique new solutions to problems in biology, engineering, mathematics, and other fields.

Michael Anissimov
Michael Anissimov

Michael is a longtime WiseGEEK contributor who specializes in topics relating to paleontology, physics, biology, astronomy, chemistry, and futurism. In addition to being an avid blogger, Michael is particularly passionate about stem cell research, regenerative medicine, and life extension therapies. He has also worked for the Methuselah Foundation, the Singularity Institute for Artificial Intelligence, and the Lifeboat Foundation.

Learn more...
Michael Anissimov
Michael Anissimov

Michael is a longtime WiseGEEK contributor who specializes in topics relating to paleontology, physics, biology, astronomy, chemistry, and futurism. In addition to being an avid blogger, Michael is particularly passionate about stem cell research, regenerative medicine, and life extension therapies. He has also worked for the Methuselah Foundation, the Singularity Institute for Artificial Intelligence, and the Lifeboat Foundation.

Learn more...

Discuss this Article

Post your comments
Login:
Forgot password?
Register:
    • Scientist with beakers
      Scientist with beakers