Grasshopper

algorithmic modeling for Rhino

David,

I have been playing with the Galapagos Simulated Annealing solver for a bit now and I am ready to start messing with the default settings. I found your discussion post on inbreeding and settings for the Genetric Algorithm very helpful.

Could you please provide a brief description of the settings and their domains for Simulated Annealing or atleast verify my following assumptions/guesses.

Temperature (range 0%-100%): Initial temperature. If this were lower then I'm thinking the algorithm starts colder and thus does not make as large permutation jumps and will hit solid sooner.

Cooling: This seems to be a ratio that will affect the rate at which the algorithm cools, with a lower ratio being a quicker cooling algorithm.

Drift Rate: This seems to control variation in sequential generations, where a higher drift rate will create greater variation in the Genome generations.

Currently I am running an SA and it seems that it is taking very small steps every generation. I have a lot of genes and each has a wide domain and the algorithm seems to linger in smaller sub domains of a gene rather than testing its extremes. I am thinking that increasing the Drift Rate from the 25% default could create bigger jumps in Gene variation. Is this true? Or if I let it completely cool, will it eventually hit the extremes of each gene domain?

Galapagos is a lot of fun. Thanks for the tool.

Thanks,

Ben 

Views: 1831

Replies to This Discussion

Hi David.

Any thoughts on this post by Ben with regards the SA solver?

Drift rate is not a term I'm not familiar with tbh, but would be good to know what it controls in Galapagos.

The tooltip gives "Chances that a lattice jump includes an extra dimension". Is this the acceptance probability for each dimension in the gene vector, or for the whole gene being accepted for the next generation?

Many thanks in advance,

John.

The drift rate controls what the odds are that more than one variable is changed. If the drift rate is 0%, only a single variable will be changed every iteration. 25% drift rate and the subsequent variable will also be jiggled one quarter of the time. And once every 16 times the two subsequent variables will be jiggled.

It's difficult to say but if I had to pull some numbers out of my bottom I'd say that rates between 25% and 75% make the most sense.

The only real setting that is worth changing is the cooling factor. Actually you can set it quite low 50% even or less. The lower the setting the more distinct runs the algorithm will make in the same amount of time and the larger the area of explored phase space. It's a good way to quickly home in on some promising answers, especially if there are lots of local optima.

Thanks David. Good to know what the drift rate does.

it's quite interesting seeing the approach used for Grasshopper definitions with so many phase space dimensions (especially when you start letting gene pools go loose).

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service