Genetic Algorithms
William Comisky
bcomisky@endgate.com
Tue, 22 Jun 1999 18:58:03 -0400
Genetic Algorithms are a great application for a Beowulf Cluster because
the parallelization is so trivial.
An entire population of chromosomes (encoded descriptions or your
problem) is evaluated for its fitness every generation. These
independent evaluations are well suited to distributing across a cluster.
I use a GA/Beowulf for antenna design optimization using a method of
moments emag simulator as the evaluation function for the fitness
calculation. My simple implementation doesn't use any message passing
libraries, it just uses rsh to start jobs remotely. The GA is
implemented in Matlab, which also keeps track of the jobs and does some
crude load balancing. I'm planning on trying out MOSIX and just starting
all of the jobs locally and let it manage the processes. If you use
Matlab and want an example, let me know.
[ MOSIX question: Is it a bad idea to start more processes than there
are processors using MOSIX? Would it queue the extra jobs up in any way
or nice them? I typically have a pool of 60-200 jobs to run and ~20
processors, and wasn't sure how MOSIX would handle it. Would I be better
off sticking with my current job management scheme which waits until a
job is complete then starts a new one? ]
There are many different flavors of the GA with different coding
schemes, selection/crossover/mutation operators, resource sharing, etc.
You can make them very complicated or very simple. A good reference is:
Goldberg, David "Genetic Algorithms in Search Optimization and Machine
Learning"
Also see:
http://gal4.ge.uiuc.edu/illigal.home.html
http://www.aic.nrl.navy.mil/galist/
Bill
--
Bill Comisky
bcomisky@endgate.com
----------
From: Todd LaWall
Sent: Tuesday, June 22, 1999 3:18 PM
To: 'Beowulf'
Subject: Genetic Algorithms
QQOC (Quick question of Curiosity):
Has anyone here done any work with Genetic Algorithms? What
kind of work have you done, and where would be a good point
to start learning how to apply them? I've recently purchased
a book on them (Genetic Programming: an introduction) and I'm
interested in seeing what kind of use (if any) they've been
put to in the Beowulf community.
Thanks,
Todd