goat is an optimization solver add-on component. It perfectly complements galapagos, David Rutten's evolutionary solver based on a randomized core. goat pursues a mathematical rigorous approach and relies on gradient-free optimization algorithms, delivering fast and deterministic results. At every run, goat will yield the same optimal result.
goat is a drop-in replacement for galapagos. It is based on David Rutten's galapagos GUI and interfaces NLopt, a collection of mathematical optimization libraries.
For getting started with optimization in parametric modelling environments in general and with goat in special, check out our presentation slides onĀ Geometry and Optimization with several comprehensive examples.
Once you are familiar with the basics of optimization, head over to our comprehensiveĀ documentation on goat's different configuration options.
Simon Flöry
Dear Remy,
You can already achieve this by a small modification to your optimization problem: Take the single-valued output of your Grasshopper definition, subtract it from the target value, and minimize/maximize the square of the difference. Alternatively, you may also minimize or maximize the absolute value of the distance, but it is more save to square.
As this sounds quite technical, have a look at at the attached example. There, I optimize for the radius of a circle such that the circle's area is 1.5.
Above technique of optimizing the square of the difference to a target value is a very common and powerful technique in optimization.
Please let me know if I can help you any further,
best, simon
Jan 7, 2013