swarm-support
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GA & GP


From: Rick Riolo
Subject: Re: GA & GP
Date: Tue, 11 Feb 1997 20:53:44 -0500 (EST)

I think the basic difference is the representation
the two approaches use for "individuals" in the population.

Usually\footnote{1} GA implies the individuals
are represented as strings, e.g., strings of bits is the
most traditional approach.   Those bits must be
mapped into the particular domain to figure out what
the individual actually is and what its fitness is.
For example, the bits might represent 3 arguments
to some 3-D function to be optimized.
Or the bits might represent a tour in a traveling
salesperson problem.   or they could represent anything else,
e.g., if-then rules, in which case the system
might be called a Classifier System. 
 Traditionally, GA's also are fixed length strings, but
this is not always the case.
Crossover and mutation are in a toy way analogous
to crossover and mutation of DNA (i stress again,
analogous to some toy version of those biological processes).

In GP, the basic individuals are considered to be
computer programs, usually represented as parse trees
of variable size and complexity.
The computer programs are then "run" to determine
the fitness of the individuals.
There are no fixed length strings.  There is no
mapping from bits to high level computer program
constructs, the individuals are represented as
high level constructs like constants, if-then-else tests,
add, sub, and other math operators, and so on.
Crossover is just swapping subtrees.
Mutation is placing in randomly generatored subtrees.

>From your message, it sounds like you may have seen
GA's in the context of Classifier Systems, and perhaps
in particular in the context of what are sometimes
called Pitt-Style classifier systems, where
each individuals in the GA population is made up
of a string of if-then rules, which collectively
must solve a problem and thus collectively get a fitness.
If this is the case, this is very much like many GP
systems, the main difference being the usual way
the rules are represented.

I hope this helps.
  - r

Footnote 1:  I say usually because you will see papers that
say they are using GA that other people might say should 
be categorized as using some other Evolutionary Algorithm)
Also, you will see things called GP which have much
different structures than parse trees.

Rick Riolo                       address@hidden
Program for Study of Complex Systems (PSCS)
1061 Randall Lab     University of Michigan
Ann Arbor MI 48109-1120
http://pscs.physics.lsa.umich.edu/PEOPLE/rlr-home.html

On Tue, 11 Feb 1997, Kyle Chuang wrote:

> Date: Tue, 11 Feb 1997 20:22:48 -0500 (EST)
> From: Kyle Chuang <address@hidden>
> To: address@hidden
> Subject: GA & GP
> 
> Hi,
>       I have a questiong regarding GA (Genetic Algorithm) & GP (Genetic
> Programming). Sorry if this is too basic for the discussion group. 
> 
> What *exactly* is the difference between GA & GP?  I've developed a model
> with GA for competitive analysis and have started to investigate into GP.
> Despite all the papers I've read, however, I do not see a difference
> between them.  It seems that the only difference is that GA's optimization
> gives specific instructions (such as if temperature = 79 change pressure
> to 59) where as GP would give ( pressure = temperature - 20).  Could
> someone please help me and clearify this?
> 
> Kyle Chuang
> The Wharton School
> 
> 
> 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]