Newsgroups: comp.ai.genetic
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!howland.reston.ans.net!news.sprintlink.net!uunet!hasler!root
From: root@hasler.uucp
Subject: Re: Using GA to optimize highly constrained problems
Message-ID: <D6q44A.EnJ@hasler.uucp>
Organization: Dancing Horse Hill
In-Reply-To: "Dave McIntyre"'s message of Fri, 7 Apr 1995 07:03:34 GMT
Date: Sat, 8 Apr 1995 15:52:57 GMT
References: <23421.mcintyre@grail.cba.csuohio.edu>
Lines: 19

Dave McIntyre writes:
> More specifically, I am looking at a problem that is trying to find an "optimal"
> or "near optimal" ordering of a list of n distinct items based upon some fitness
> criterion.  Clearly, if I merely choose the chromosome to be a binary encoding
> of a list of n items (with names 1,2,..,n say) I quickly encounter infeasible
> solutions after crossover since often the resulting children will contain
> duplicate list elements.  Similarly after mutation.

Put your constraints into the operators.  Make the point mutation operator a
swap: pick two items at random and swap them.  Crossover should operate on
partial orderings.  Two approaches come to mind: 1) Pick a block of items in the
parent, locate the same items in the child, and permute them to the same order
as they occur in the parent.  2) Pick a block of items in the parent, delete
those items from the child, and then insert the block.
-- 

John Hasler uunet!hasler!root
Dancing Horse Hill
Elmwood, Wisconsin USA
