Grasshopper

algorithmic modeling for Rhino

Dear all,

I am having troubles with Galapagos:

In short, my task is to compute an optimization for a surface which has to have a certain amount of horizontal area as well as a certain amount of vertical area.

When I am trying to use Galapagos, it always starts with a very small amount for one of the areas (e.g. 5m² when I want to have 50m²) or just do not have a horizontal or vertical area at all. It takes a lot of time for it to let the surface "grow bigger" to have a larger area.

Is there any possibility to discard those situations so that Galapagos won't start optimizing in those small steps and directly searches for areas being closer to the actual optimum (desired values)?

So far, the fitness function (maximized) looks like this:

-Abs(((S-SInput)/maxS)²) -Abs(((B-BInput)/maxB)²)

where

S = horizontal area

SInput = desired horizontal area

maxS = range

B = vertical area

BInput = desired horizontal area

maxB= range.

Thank you very much in advance.

Lissa

Views: 708

Replies to This Discussion

There are two ways, both of them require that they are part of the file. Galapagos is not an open solver that you can participate in.

You can either make sure that unwanted cases never arise, for example by choosing your slider ranges in such a way that crazy values aren't possible, or by post-processing your slider values if they happen to result in a bad combination.

If that's not possible, you can at least dissuade Galapagos from exploring regions of unwanted solution by slapping a penalty on certain outcomes. Either add some terms to the fitness function that more strongly decrease the fitness (say, fourth powers or exponentials), or add a conditional which suddenly imposes a -1000000 fine if the area is below some threshold.

RSS

About

Translate

Search

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service