This is a slightly old post, but I'll comment anyway.
As for automated optimization methods, there is a plethora of recent work on all sorts of bizarre methods (ant colony, swarm, etc.). The most important methods in practice have been simulated annealing, and, to a lesser extent, genetic algorithms. The main drawback to simulated annealing is the relatively long computation times, though this has been alleviated by parallel versions of the algorithm (look up Studsvik's COPERNICUS code). Genetic algorithms are much more easily parallelized, but some details of implementation become tedious for LP problems (e.g. given two patterns, what makes a good "mating" scheme so that materials are conserved as well as portions of the pattern that are "good").
Either of these methods can be helped by heuristics based on experience or plain old good sense. From what I've been told by folks who have done a lot of this stuff, the automated schemes rarely produce better patterns than an experienced designer. What the automated schemes can do, however, is provide new ideas that may lead the designer toward even better patterns.
As for the most important component of it all, really speed is the critical issue. Optimizers can use any neutronics model; the better a model is, the more expensive it tends to be. Codes like ROSA or XIMAGE have quite good models that are also relatively inexpensive computationally. I think a standard practice has been to use as crude a neutronics model as possible, after which the best patterns are evaluated with a license-grade model.
If you're at all interested in the implementation of this stuff, I have a little side project called "poropy" (look it up at github) for really simple LP problems. It doesn't have burnup or thermal hydraulic feedback yet (though hopefully this summer in my spare time).