OptQuest

Release Notes – Version 7.0.4.1 (August 2018)

Enhanced autostop functionality

Auto stop is a feature that will stop a run automatically based on two criteria. The first criteria is based on the concept of optimization cycles. During an optimization run, the OptQuest optimization engine directs the search for optimal solutions using a variety of metaheuristic techniques in combination. The techniques employed vary based on both the characteristics of the problem (e.g., numbers and types of variables, number of objectives, and the presence of constraints) and the progress of the search (e.g., how many improving solutions are found and the form of the response surface for the objective(s)). During an OptQuest search, optimization cycles can be identified as OptQuest progresses through its full range of techniques for a specific problem. For simpler problems, the very best solution is almost always found in a single cycle. For more complex problems, a very good solution is almost always found in the first cycle, but multiple cycles may be needed to find the very best solution. The number of cycles to complete before auto stopping can be specified. The second criteria are auto stop by percent improvement and will stop an optimization if the Number without Improvement simulation runs are completed without seeing the specified Percent Improvement. The percent improvement is a normalized measure relative to the best and worst objective values encountered so far. Auto stop by percent improvement is only applicable for single objective problems.

Enhanced Variable Precision Handling

The last set of optional run parameters deal with starting and ending variable precision and are only applicable in Optimize mode. The precision values are not absolute precision, but a normalized precision based on a percent of each variable’s range. The precision determines how OptQuest will determine if two solutions are to be considered identical. It is more complicated than this, but as a notional example, if a variable’s range is from 10 to 25, and the precision is 0.01, then OptQuest will consider this variable value to be different in two solutions if the value is different by (25-10) * 0.01 = 0.15 or greater. During the optimization search, OptQuest moves from the starting precision to the ending precision to explore finer levels of variable value changes. If you are not interested in the effects of very small changes in variable values, relative to the variables’ ranges, then use larger values for precision.

Enhanced Replication Statistics

OptQuest now supports new statistics for objectives and requirements when running replications: median, percentile, standard deviation, variance, coefficient of variance, minimum, and maximum. Previously only the mean of replication values was supported.

Support for Increasing the Number of Evaluators During Optimization

Users can now add evaluators dynamically during an optimization run by calling the SetEvaluate() method and providing additional evaluators. Evaluators cannot be removed once they have been added.

Run Repeatable Option for Parallel Evaluation

If you are running OptQuest with multiple evaluators (you have called SetEvaluate()) the optimization results may vary across multiple runs of the same optimization. The generation of new solutions is dependent on the order of solutions returned to OptQuest. In the default case, OptQuest generates new solutions as evaluations complete, and with parallel evaluations the repeatability of results is not guaranteed. If you set RunRepeatableEvaluations(true), OptQuest will wait and process the solutions in iteration order.

A number of minor performance improvements and bug fixes and are also included. Contact your OptQuest representative for more details.

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

Contact Us