question

Lambert avatar image
0 Likes"
Lambert asked Lambert commented

Optimizer - Storing values between scenarios to influence next runs

Hi !

Is there a way to dynamically influence which scenarios the optimizer must run, once the optimizer has already started?

In other words, is there a way to save values in variables after an optimizer scenario run, and then read those values in the next scenario run, and decide whether to stop that iteration or perform it?

For example, imagine a case where the optimizer finds a successful scenario (without breaking any constrains) for these parameter values settings:

Parameter #1 (ranges from 0-9) = 3

Parameter #2 (ranges from 0-9) = 2

Parameter #3 (ranges from 0-9) = 5

I want to somehow tell the optimizer that it does not need to run any further iterations which have higher values for those parameters, like:

Parameter #1 (ranges from 0-9) = 4

Parameter #2 (ranges from 0-9) = 2

Parameter #3 (ranges from 0-9) = 5

or

Parameter #1 (ranges from 0-9) = 3

Parameter #2 (ranges from 0-9) = 3

Parameter #3 (ranges from 0-9) = 5

etc

There are many iterations that I wouldn't want to try as I have already found a solution with lower values, saving a lot of processing time from those iterations.


I have tried using a trigger in the optimizer, on end replication to write values into a GlobalTable and read them in the next iterations, but it does not work.

Please let me know if the question is not clear.

Thank you in advance for your help,

Lambert

FlexSim 23.0.3
optimizer
· 4
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Joerg Vogel avatar image Joerg Vogel commented ·
Each iteration is an independent process of a complete different model. It is parallel computing. An iteration process does not know of any parallel executed process. You would need an interpreter to wait for results of parallel processes or delay start of a next iteration.
0 Likes 0 ·
Lambert avatar image Lambert Joerg Vogel commented ·
Thank you Joerg for your help. That makes sense.


Can you think of another way to reduce the number of iterations?

Currently the optimizer in my model runs 20k+ iterations and takes hours to find the configuration with the lowest possible values for the parameters without breaking constrains.

If I could find a way to discard iterations where parameters have higher values than those of any successful iteration already found, the total time would be reduced dramatically.

thank you

0 Likes 0 ·
Joerg Vogel avatar image Joerg Vogel Lambert commented ·
@Lambert , OptQuest is an additional program integrated into FlexSim. Maybe you find help for a dynamic setting in help files of this program’s manufacture.
0 Likes 0 ·
Show more comments

1 Answer

·
Joerg Vogel avatar image
0 Likes"
Joerg Vogel answered Lambert commented

If you know a parameter setting to be smaller than a range of 0 to 9 then set a different range of lower and upper bound for this parameter in toolbox for the experimenter.

· 1
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Lambert avatar image Lambert commented ·
Problem is I don’t. All parameters can range from 0 to 9.
0 Likes 0 ·

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.