Hello everyone

This is a plea for help on a general point regarding the genetic 
algorithm method (rather than a technical ECJ issue).  I hope my 
question makes sense to someone who can point me in the right direction.

Simply put, if you have a large solution space (c.9000 element matrix) 
with a set of constraints that make a large proportion of the possible 
solutions invalid, how do you treat invalid solutions generated by the 
reproduction process to ensure the population is composed of only (or 
mostly) valid solutions?  For example, what happens when you take two 
good solutions from the initial population, cross them over and mutate 
them according to some standard method, and the result is two solutions 
which happen to violate the constraints of the solution space and 
therefore render the new solutions invalid?  How can you take two good 
solutions and mate them in such a way to produce only valid solutions 
according to the problem constraints?

The only way I have known how to treat invalid solutions so far is to 
tolerate them in the population but score them out of the selection 
process.  The problem with this is that 9 times out of 10 the population 
will be swamped by these duds and never get going.

Any suggestions please folks?