PostHeaderIcon Genetic Algorithms

This article gives an introduction to genetic algorithms. It explains the background and the mechanism behind genetic algorithms in detail.

Background of Genetic Algorithms

All living organisms consist of cells. The cells contain chromosomes. Chromosomes are strings of DNA and serve as a model for the whole organism. A chromosome consists of genes, blocks of DNA. Each gene encodes a trait, for example color of eyes. The first change that occurs during reproduction is called recombination or crossover. Genes from parents combine to form a whole new chromosome. That is exchange of chromosomes from the parents takes place randomly during crossover. Generally the offspring exhibit some traits of the father and some traits of the mother. Some time a process called mutation changes some traits. That is the elements of DNA are a bit changed. These changes are mainly caused by errors in copying genes from parents. This may lead to new species. Naturally only the fittest survives. That is the individual that has better survival traits will survive. This phenomenon, better explained by Darwin, is called Natural selection.

What are genetic algorithms?

Genetic algorithms are based on biological evolution. Genetic algorithms can be used to solve a wide variety of problems. Given a problem a genetic algorithm generates a set of possible solutions and evaluates each in order to decide which solutions are fit for reproduction. If a particular solution is more fit then it will have more chances to generate new solutions. Finally we can find a real solution.

Genetic algorithms are so powerful that they can exhibit more efficiency if programmed perfectly. Applications include learning Robot behavior, molecular structure optimization, automated design of mechatronic systems, and electronic circuit design.

A Genetic Approach Methodology for Knowledge Acquisition for Intelligent Diagnosis is a project done by CEEP (Center for Engineering Education and Practice), University of Michigan-Dearborn, to develop diagnosis knowledge for robot arm movements. In this project, a robot was selected for analysis. The wrong arm movements of robot were observed and collected as failure data. Then the project applied genetic algorithm to extract knowledge from the failure data. The acquisition of knowledge was automatic. The knowledge extracted is then stored in the knowledge base to make use of in the intelligent diagnosis system. The knowledge so stored is known as diagnosis knowledge as it s used to detect what went wrong and to decide the course of action in order to make the robot perfect.