OptQuest

Release Notes – Version 8.1.1 (August 2021)

IMPROVED GAP FILLING WITH COPTQUESTFRONTIERMULTIOBJECTIVE

When using COptQuestFrontierMultiObjective improviements have been made to the search algorithm that will yield better frontiers with fewer simulation runs for most multi-objective problems.

NEW BASE CLASS: COPTQUESTSINGLEOBJECTIVE

A new base class, COptQuestSingleObjective, has been introduced for representing single objective problems. COptQuestStringObjective and COptQuestUserControlledObjective extend COptQuestSingleObjective. If you have compile errors, changing COptQuestObjective to COptQuestSingleObjective should fix the errors.

PARALLEL REPLICATION EXECUTION

In previous releases, replications for a single solution were run serially. The second replication of a solution would not run until the first replication had finished and was returned to OptQuest. With this release, replications will be run in parallel if parallel evaluators are available. This provides more efficient use of available computing resources. For example, if 3 parallel evaluators are available, replications 1, 2 and 3 would be run in parallel. There is not a guarantee that replications will finish in order. Replication 3 may finish before replication 1. Existing logic that assumes the replications will finish in order should be checked and may need to be reworked. The method COptQuestOptimization.RunReplicationSerially(true) is available to enforce previous behavior and will run the replications serially.

RETRIEVE REPLICATION-SPECIFIC VALUES

The new method COptQuestSolution.GetReplicationValue(object, replication) allows you to retrieve the value of an object at a specific replication. This was not previously available.

STOP BY NOT GENERATING NEW SOLUTIONS

The new method COptQuestOptimization.StopSolutionGeneration() tells OptQuest not to send any more solutions out for evaluation. No new solutions are sent for evaluation, but OptQuest waits for those already out for evaluation are to be completed and returned. If running replications, all replications of a solution are sent for evaluation before stopping. This is different than COptQuestOptimization.stopOptimization() which stops immediately and does not wait for solutions out for evaluation to return.

ONLY RUN SUGGESTED SOLUTIONS

When the new method COptQuestSolution.SetGenerateNewSolutions(onOff) is called and set to false, then OptQuest will only request evaluation of suggested solutions that you have provided. If this is set, OptQuest will not generate any additional solutions to evaluate using its solution generators.

Bugs And Performance

A number of minor performance improvements and bug fixes and are also included.

If you would like to learn more about our solutions or request a demonstration of our software, please contact us.

Contact Us