One-Click Optimization (OCO)

This node provides an efficient hybrid optimization strategy that comes with only one major setting to be tuned, the maximum number of design evaluations. Depending on the type and number of input parameters and the defined optimization criteria, the optimizer automatically selects the most suitable optimization algorithms with their most appropriate settings to solve the optimization problem. The ability to dynamically switch between optimization algorithms and to run multiple algorithms simultaneously makes OCO one of the most reliable and efficient optimization strategies. OCO is a surrogate assisted optimization strategy, using capabilities of the Metamodel of Optimal Prognosis (MOP) for function approximation to significantly speed up the optimization process.

Node Settings

To access the options shown in the following table, double-click the One-Click Optimization system on the Scenery pane and in the Settings tab, click Show advanced settings.

NameDefault ValueDescription
Maximum number of design evaluations200Maximum number of design evaluations to compute before stopping.
Advanced settings
Use MOPOnAccelerate convergence and save the number of evaluations using the MOP. Deactivate when dealing with computational inexpensive evaluations.
Stop at the first feasible designFalseStops the optimizer when at least one feasible design has been evaluated.
Stop after the given number of design evaluations without improvement40Stops the optimization when no improvement of the best individual is seen after this number of design evaluations and the minimum number of design evaluations has been generated.
Fixed number of design evaluations per iterationAutoDefines the number of design evaluations generated per iteration. When set to Auto (or no value), the number of design evaluations can vary from one iteration to another one. The maximum allowable value is 999.
Expert settings: Initial designs
Use start designs onlyFalseWhen selected, the first iteration uses only start designs as initial design evaluations. Number of initial design evaluations is deactivated.
Number of initial design evaluationsInteger

Defines the number of design evaluations generated for the first iteration. The number of initial design evaluations depends on the number of input parameters and the maximum number of design evaluations. OCO automatically adjusts the number of initial design evaluations when one of these two properties is modified.

Expert settings: Convergence test
Minimum number of design evaluations before the convergence test100Defines the minimum number of designs to evaluate before stopping the algorithm due to stagnation.
Expert settings: MOP
Activate dimension reductionOnFilters the most relevant input variables to speed-up the convergence of the optimization process.
Dynamic selectionOn

When selected, OCO activates/deactivates the most suitable metamodels according to the number of submitted designs, based on the default pre-selection of metamodels.

You can modify the pre-selection by enabling/disabling any metamodel.

When cleared, all selected metamodels are used independently of the number of submitted designs.

Isotropic KrigingOnSelects Isotropic Kriging as tested metamodel to create a MOP.
Anisotropic KrigingOffSelects Anisotropic Kriging as tested metamodel to create a MOP.
Moving least squaresOnSelects Moving least squares as tested metamodel to create a MOP.
PolynomialsOnSelects Polynomials as tested metamodel to create a MOP.
Deep Feed Forward NetworkOffSelects Deep Feed Forward Network as tested metamodel to create a MOP.
Deep Infinite Mixture Gaussian ProcessOffSelects Deep Infinite Mixture Gaussian Process as tested metamodel to create a MOP.
Genetic Aggregation Response SurfaceOffSelects Genetic Aggregation Response Surface as tested metamodel to create a MOP.
Support Vector RegressionOffSelects Support Vector Regression as tested metamodel to create a MOP.
Expert settings: Optimization methods competition
Maximum number of concurrently competing methods2Maximum number of allowable optimizations in parallel.
Non-linear Programming by Quadratic Lagrangian (NLPQL)OnDefines NLPQL as the allowable optimization method.
Downhill Simplex MethodOnDefines Downhill Simplex Method as the allowable optimization method.
Mixed-Integer Sequential Quadratic Programming (MISQP)OnDefines MISQP as the allowable optimization method.
Adaptive Response Surface Method (ARSM)OnDefines ARSM as the allowable optimization method.
Adaptive Metamodel of Optimal Prognosis (AMOP)OffDefines AMOP as the allowable optimization method.
Evolutionary Algorithm (EA)OnDefines EA as the allowable optimization method.
Particule Swarm Optimization (PSO)OnDefines PSO as the allowable optimization method.
Stochastic Design Improvement (SDI)OnDefines SDI as the allowable optimization method.
Covariance Matrix Adaptation (CMA)OnDefines CMA as the allowable optimization method.
Additional Options

This algorithm allows Additional Options.

Limitations

OCO can not support boolean or string parameters and parameters with nominal discrete values.

Logging

This node creates a log file named OCO_logfile.txt. The log file has two levels, default and verbose. The default log captures initial settings at the start of the algorithm, internal activation and deactivation events, current number of evaluations, and so on. The verbose log captures all of the information of the default log and also logs which optimization algorithms were chosen for use.

To change the log level to verbose, create an OCO_VERBOSE_LOG environment variable.