Newsgroups: comp.ai.genetic
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!howland.reston.ans.net!pipex!uknet!festival!ainews!roberts
From: roberts@aisb.ed.ac.uk (Robert Saunders)
Subject: Re: Seeding an initial pop in GP
Message-ID: <D0ErD7.993@aisb.ed.ac.uk>
Sender: news@aisb.ed.ac.uk (Network News Administrator)
Organization: Dept AI, Edinburgh University, Scotland
X-Newsreader: TIN [version 1.2 PL2]
References: <D07G03.AoC@aisb.ed.ac.uk> <3c18k2$fca@newsbf01.news.aol.com>
Date: Tue, 6 Dec 1994 21:22:18 GMT
Lines: 79

O4EZONE (o4ezone@aol.com) wrote:
: Rob,

: Two things. First off, you probably don't want to constrain the inital
: population at all. Your _fitness function_ will determine what individuals
: the GA converges to. By limiting the initial population, you are reducing
: the number of possible schemas that the algorithm can use as building
: blocks. It will still try to produce an individual that min(max)imizes
: your fitness function, but will do so less efficiently than it would with
: a broad  gene pool.

: Secondly, and somewhat off the topic, it strikes me that GA may not be the
: best approach for an _interactive_ modeling project. If you're using GA, I
: assume that the user will give the GA a 3D-oriented fitness function (give
: me a 3d solid that matches these criteria) and off the GA will go.

: The problem is two-fold. If the criteria are complex enough (a solid that
: throws a certain shadow, or produces a given reflection) then the CPU time
: would seem to be prohibitive. I can't imagine many people have the
: horsepower to perform 500 renderings per generation - until convergence.

: If the criteria are very simple (a square that will fit exactly in this
: volume) then there probably exist non-GA (or pseudo-GA) solutions that
: will perform as well.

: A good example is Kai's Power Tools. This is an image-manipulation package
: for the Macintosh. The user is allowed to interactively create a three or
: four parameter texture map. The interface is very simple:

: Imagine a square matrix of 9 pictures. The starting image is in the center
: of the matrix. Each of the surrounding pictures is the result of slightly
: changing a certain parameter. By making these incremental picture choices,
: the user can produce a texture that is very different than the original
: one. In addition, he has full control of the process from start to finish.

: A 9 picture square could be generalised to a 27 object cube, in 3
: dimensions...

: Haniff

Hi, thanks for taking an interest in my problem.

I think I didn't explain my ideas very well in my first posting so I'll
try and give a better picture of what I am trying to do.

I have seen Kai's Power Tools Texture Explorer and I thought it was great.
But as far as I can tell the user is acting like a fitness function by
chosing textures which he/she thinks are nice. That is the sort of thing
I would like to do with 3D structures. I don't want to specify certain
criteria for the structure and have the computer come back with the
diffinitive answer. I am interested in using the users perception of
aestetics to drive the GA.

My problem is that a person does not act like a fitness function, ie.
people get bored and won't evaluate 100's of possiblilities, a person
also likes to feel in control of the process. This is the problem I am
trying to combat by seeding the initial population. I want the user to
be able to say something like "I'm want to start exploring somewhere
around this space of possibilities". This is a bit like the Texture
Explorer's selection box which allows the user to pick an initial texture.
What I was wondering was, has anyone got any good suggestions for how
much to base the rest of an initial population around the seed element?
For example, 60% of the population uses 40% of the genetic code from the
seed and the remaining 40% of the population uses 10% of the seed's
genetic code.

The other problem of limiting either the size of the population or the
members displayed to the user is a big concern. I understand that without
a broad gene pool the genetic operators cannot function very well, but it
is obviously folly to assume a user has the patients of a saint and will
sit through 100's of different possibilities per generation. Anyone got
any good ideas how to solve this problem?

Any help is gratefully recieved

Rob



