Question

Lately I'm interested in the topic of genetic algorithms, but I couldn't find any good resource. If you know any good resource, book or a site I would appreciate it. I have solid knowledge of algorithms and Artificial Intelligence but I'm looking for something with good introduction in Genetic Programming.

Was it helpful?

Solution

Best references for me so far:

Also if you're an absolute beginner I'd suggest you to start with the Hello World of Genetics Algorithms. There's nothing like a nice clean example to get started.

OTHER TIPS

I found Melanie Mitchell's book, An Introduction to Genetic Algorithms, to be very good. For a wider coverage of evolutionary computation topics, Introduction to Evolutionary Computing by Eiben and Smith is also worthwhile.

If you're just starting out, I recently wrote an introductory article that may be of use.

There are further links both in that article and also on the home page for my evolutionary computation framework.

I know this is an old question, but no answer has been accepted yet, so I thought I'd add my own contribution. One of the best free resources in my opinion for all things related to evolutionary computation (genetic algorithms, evolution strategies, genetic programming, etc.) is Sean Luke's online book Essentials of Metaheuristics.

There is a great introduction to genetic algorithms at AI-Junkie.com as well as tutorials on many other AI and machine learning techniques. The genetic algorithms tutorial is aimed to 'explain genetic algorithms sufficiently for you to be able to use them in your own projects' while keeping the mathematics down as much as possible.

Here is Roger Alsing's recent article about building "Mona Lisa's picture" with a genetic algorithm :http://rogeralsing.com/2008/12/07/genetic-programming-evolution-of-mona-lisa/

Edited to remove hot link to the picture See: http://rogeralsing.files.wordpress.com/2008/12/evolutionofmonalisa1.gif

I've implemented my own version of this algorithm:

http://23.media.tumblr.com/NngfN9gsDhlsyws3NvFcuHfgo1_400.png
(source: tumblr.com)

See http://plindenbaum.blogspot.com/2008/12/random-notes-2008-12.html

Clever Algorithms: Nature-Inspired Programming Recipes

by Jason Brownlee PhD.

This book is available free in PDF. Book covers large amount of nature-inspired algorithms, including evolutionary, swarm and neural algorithms.

book cover

A short introduction I wrote a long time ago is available here, but a better short introduction is here.

For a larger and comprehensive, although somewhat out-dated, list of resources visit the comp.ai.genetic FAQ.

If I may plug one of my favorite books, The Algorithm Design Manual by Steve Skiena has a great section on genetic algorithms (plus a lot of other interesting heuristics for solving various types of problems).

The book Programming Collective Intelligence by OReilly had chapter covering genetic algorithms. It might be a little bit to basic but it was a very illustrating example.

'An Introduction to Genetic Algorithms' http://www.burns-stat.com/pages/Tutor/genetic.html

For an introductory approach (with an application to the Prisoner's Dilemma), see into:

http://www2.econ.iastate.edu/tesfatsi/holland.gaintro.htm

I implemented a Genetic Algorithm with java generics. https://github.com/juanmf/ga

It will apply the 3 operators (Mutation, crossing, Selection), and evolve a population, given the concrete implementations of Individual, Gen, FitnessMeter and factories exposed as spring beans.

/*This is all you have to add to the Spring App context 
 * before running the application
 */
@Configuration
public class Config {

    @Bean(name="individualFactory")
    public IndividualFactory getIndividualFactory() {
        return new Team.TeamFactory();
    }

    @Bean(name="populationFactory")
    public PopulationFactory getPopulationFactory() {
        return new Team.TeamPopulationFactory();
    }

    @Bean(name="fitnessMeter")
    public FitnessMeter getFitnessMeter() {
        System.out.println("getFitnessMeter");
        return new TeamAptitudeMeter();
    }
}

enter image description here This is the design, inside grandt there is an implementation of a specific problem solution, as an example.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top