Using Genetic Algorithms in Computer Learning:

Genetic Algorithms (GA) (http://en.wikipedia.org/wiki/Genetic_algorithm) are a method of determining the best solutions for optimization and search problems by means of evolution using simulations. The steps are natural selection, crossover, and mutation. These are repeatedly applied to a population of binary strings which represent potential solutions. Over time, the number of good solutions increase, until the best solution to the problem is obtained.

GA can be used to find the solution to a classification problem with a neural network (NN) (http://www.cs.bgu.ac.il/~omri/NNUGA/).

The Learning Method:

The neural network learns using genetic algorithms by updating the weights and biases of all the neurons that are joined to create a single vector. The weights are updates until a certain set of vectors proves to be the best for the classification problem at hand. Many applets and tutorials on genetic algorithms can be found here: http://www.obitko.com/tutorials/genetic-algorithms/

The Canonical GA (pseudo code):

           choose initial population
           evaluate each individual's fitness
           repeat
                   select individuals to reproduce
                   mate pairs at random
                   apply crossover operator
                   apply mutation operator
                   evaluate each individual's fitness
           until terminating condition
           

The learning loop can terminate either if a satisfactory solution is found, or the number of generations pass a preset limit, suggesting that a complete solution will not be found with this set of individuals.

Limitations:

For classification problems, the main limitation is the existence of outliers. Though we can theoretically find a solution for a certain classification problem using genetic learning system, it may not be a correct solution. This is because of the random nature of the algorithm and its dependence on natural selection, mutation and cross-overs.

Alumni Liaison

has a message for current ECE438 students.

Sean Hu, ECE PhD 2009