# Optimization algorithms options¶

A simple way to solve OptimizationProblem is to use the API method execute_algo(). E.g.

from gemseo.api import execute_algo
from gemseo.problems.analytical.rosenbrock import Rosenbrock

problem = Rosenbrock()
sol = execute_algo(problem, "L-BFGS-B", max_iter=20)
print sol.f_opt


They are also used in all MDO and DOE scenarios in the dictionary passed to the MDODiscipline.execute() method.

## DIFFERENTIAL_EVOLUTION¶

### Description¶

Differential Evolution algorithm

### Options¶

• atol, number -

• ftol_abs, float - stop criteria, absolute tolerance on the objective function, if abs(f(xk)-f(xk+1))<= ftol_rel: stop (Default value = 1e-9)

• ftol_rel, float - stop criteria, relative tolerance on the objective function, if abs(f(xk)-f(xk+1))/abs(f(xk))<= ftol_rel: stop (Default value = 1e-9)

• init, string -

• max_iter, int - maximum number of iterations, ie unique calls to f(x)

• mutation, object -

• polish, boolean -

• popsize, integer -

• recombination, number -

• seed, integer -

• strategy, string -

• tol, number -

• updating, string -

• workers, integer -

• xtol_abs, float - stop criteria, absolute tolerance on the design variables, if norm(xk-xk+1)<= xtol_abs: stop (Default value = 1e-9)

• xtol_rel, float - stop criteria, relative tolerance on the design variables, if norm(xk-xk+1)/norm(xk)<= xtol_rel: stop (Default value = 1e-9)

## DUAL_ANNEALING¶

Dual annealing

### Options¶

• accept, number -

• ftol_abs, float - stop criteria, absolute tolerance on the objective function, if abs(f(xk)-f(xk+1))<= ftol_rel: stop (Default value = 1e-9)

• ftol_rel, float - stop criteria, relative tolerance on the objective function, if abs(f(xk)-f(xk+1))/abs(f(xk))<= ftol_rel: stop (Default value = 1e-9)

• initial_temp, number -

• max_iter, int - maximum number of iterations, ie unique calls to f(x)

• restart_temp_ratio, number -

• seed, integer -

• visit, number -

• xtol_abs, float - stop criteria, absolute tolerance on the design variables, if norm(xk-xk+1)<= xtol_abs: stop (Default value = 1e-9)

• xtol_rel, float - stop criteria, relative tolerance on the design variables, if norm(xk-xk+1)/norm(xk)<= xtol_rel: stop (Default value = 1e-9)

## L-BFGS-B¶

### Description¶

Limited-memory BFGS algorithm implemented in SciPy library

### Options¶

• disp, int - display information, (Default value = 0)

• ftol_abs, float - stop criteria, absolute tolerance on the objective function, if abs(f(xk)-f(xk+1))<= ftol_rel: stop (Default value = 1e-9)

• ftol_rel, float - stop criteria, relative tolerance on the objective function, if abs(f(xk)-f(xk+1))/abs(f(xk))<= ftol_rel: stop (Default value = 1e-9)

• max_iter, int - maximum number of iterations, ie unique calls to f(x)

• max_time, float - maximum runtime in seconds, disabled if 0 (Default value = 0)

• maxcor, int - maximum BFGS updates (Default value = 20)

• normalize_design_space, bool - If True, scales variables in [0, 1]

• pg_tol, float - stop criteria on the projected gradient norm (Default value = 1e-5)

• xtol_abs, float - stop criteria, absolute tolerance on the design variables, if norm(xk-xk+1)<= xtol_abs: stop (Default value = 1e-9)

• xtol_rel, float - stop criteria, relative tolerance on the design variables, if norm(xk-xk+1)/norm(xk)<= xtol_rel: stop (Default value = 1e-9)

## LINEAR_INTERIOR_POINT¶

### Description¶

Linear programming by the interior-point method implemented in the SciPy library

### Options¶

• disp, boolean -

• max_iter, int, optional - maximum number of iterations, i.e. unique calls to the objective function

• normalize_design_space, boolean -

## NLOPT_BFGS¶

### Description¶

Broyden-Fletcher-Goldfarb-Shanno method (BFGS) implemented in the NLOPT library

### Options¶

• ctol_abs, float - Absolute tolerance for constraints

• eq_tolerance, float - equality tolerance

• ftol_abs, float - Objective function tolerance

• ftol_rel, float - Relative objective function tolerance

• ineq_tolerance, float - inequality tolerance

• init_step, float - initial step size for derivavtive free algorithms increasing init_step will make the initial DOE in COBYLA wider steps in the design variables. By defaults, each variable is set to x0 + a perturbation that worths 0.25*(ub_i-x0_i) for i in xrange(len(x0))

• max_iter, int - maximum number of iterations

• max_time, float - maximum runtime in seconds, disabled if 0 (Default value = 0)

• normalize_design_space, bool - If True, scales variables in [0, 1]

• stopval, float - Stop when an objective value of at least stopval is found: stop minimizing when an objective value $$\leq$$ stopval is found, or stop maximizing a value $$\geq$$ stopval is found.

• xtol_abs, float - Design parameter tolerance

• xtol_rel, float - Relative design parameter tolerance

## NLOPT_BOBYQA¶

### Description¶

Bound Optimization BY Quadratic Approximation (BOBYQA) implemented in the NLOPT library

### Options¶

• ctol_abs, float - Absolute tolerance for constraints

• eq_tolerance, float - equality tolerance

• ftol_abs, float - Objective function tolerance

• ftol_rel, float - Relative objective function tolerance

• ineq_tolerance, float - inequality tolerance

• init_step, float - initial step size for derivavtive free algorithms increasing init_step will make the initial DOE in COBYLA wider steps in the design variables. By defaults, each variable is set to x0 + a perturbation that worths 0.25*(ub_i-x0_i) for i in xrange(len(x0))

• max_iter, int - maximum number of iterations

• max_time, float - maximum runtime in seconds, disabled if 0 (Default value = 0)

• normalize_design_space, bool - If True, scales variables in [0, 1]

• stopval, float - Stop when an objective value of at least stopval is found: stop minimizing when an objective value $$\leq$$ stopval is found, or stop maximizing a value $$\geq$$ stopval is found.

• xtol_abs, float - Design parameter tolerance

• xtol_rel, float - Relative design parameter tolerance

## NLOPT_COBYLA¶

### Description¶

Constrained Optimization BY Linear Approximations (COBYLA) implemented in the NLOPT library

### Options¶

• ctol_abs, float - Absolute tolerance for constraints

• eq_tolerance, float - equality tolerance

• ftol_abs, float - Objective function tolerance

• ftol_rel, float - Relative objective function tolerance

• ineq_tolerance, float - inequality tolerance

• init_step, float - initial step size for derivavtive free algorithms increasing init_step will make the initial DOE in COBYLA wider steps in the design variables. By defaults, each variable is set to x0 + a perturbation that worths 0.25*(ub_i-x0_i) for i in xrange(len(x0))

• max_iter, int - maximum number of iterations

• max_time, float - maximum runtime in seconds, disabled if 0 (Default value = 0)

• normalize_design_space, bool - If True, scales variables in [0, 1]

• stopval, float - Stop when an objective value of at least stopval is found: stop minimizing when an objective value $$\leq$$ stopval is found, or stop maximizing a value $$\geq$$ stopval is found.

• xtol_abs, float - Design parameter tolerance

• xtol_rel, float - Relative design parameter tolerance

## NLOPT_MMA¶

### Description¶

Method of Moving Asymptotes (MMA)implemented in the NLOPT library

### Options¶

• ctol_abs, float - Absolute tolerance for constraints

• eq_tolerance, float - equality tolerance

• ftol_abs, float - Objective function tolerance

• ftol_rel, float - Relative objective function tolerance

• ineq_tolerance, float - inequality tolerance

• init_step, float - initial step size for derivavtive free algorithms increasing init_step will make the initial DOE in COBYLA wider steps in the design variables. By defaults, each variable is set to x0 + a perturbation that worths 0.25*(ub_i-x0_i) for i in xrange(len(x0))

• max_iter, int - maximum number of iterations

• max_time, float - maximum runtime in seconds, disabled if 0 (Default value = 0)

• normalize_design_space, bool - If True, scales variables in [0, 1]

• stopval, float - Stop when an objective value of at least stopval is found: stop minimizing when an objective value $$\leq$$ stopval is found, or stop maximizing a value $$\geq$$ stopval is found.

• xtol_abs, float - Design parameter tolerance

• xtol_rel, float - Relative design parameter tolerance

## NLOPT_NEWUOA¶

### Description¶

NEWUOA + bound constraints implemented in the NLOPT library

### Options¶

• ctol_abs, float - Absolute tolerance for constraints

• eq_tolerance, float - equality tolerance

• ftol_abs, float - Objective function tolerance

• ftol_rel, float - Relative objective function tolerance

• ineq_tolerance, float - inequality tolerance

• init_step, float - initial step size for derivavtive free algorithms increasing init_step will make the initial DOE in COBYLA wider steps in the design variables. By defaults, each variable is set to x0 + a perturbation that worths 0.25*(ub_i-x0_i) for i in xrange(len(x0))

• max_iter, int - maximum number of iterations

• max_time, float - maximum runtime in seconds, disabled if 0 (Default value = 0)

• normalize_design_space, bool - If True, scales variables in [0, 1]

• stopval, float - Stop when an objective value of at least stopval is found: stop minimizing when an objective value $$\leq$$ stopval is found, or stop maximizing a value $$\geq$$ stopval is found.

• xtol_abs, float - Design parameter tolerance

• xtol_rel, float - Relative design parameter tolerance

## NLOPT_SLSQP¶

### Description¶

Sequential Least-Squares Quadratic Programming (SLSQP) implemented in the NLOPT library

### Options¶

• ctol_abs, float - Absolute tolerance for constraints

• eq_tolerance, float - equality tolerance

• ftol_abs, float - Objective function tolerance

• ftol_rel, float - Relative objective function tolerance

• ineq_tolerance, float - inequality tolerance

• init_step, float - initial step size for derivavtive free algorithms increasing init_step will make the initial DOE in COBYLA wider steps in the design variables. By defaults, each variable is set to x0 + a perturbation that worths 0.25*(ub_i-x0_i) for i in xrange(len(x0))

• max_iter, int - maximum number of iterations

• max_time, float - maximum runtime in seconds, disabled if 0 (Default value = 0)

• normalize_design_space, bool - If True, scales variables in [0, 1]

• stopval, float - Stop when an objective value of at least stopval is found: stop minimizing when an objective value $$\leq$$ stopval is found, or stop maximizing a value $$\geq$$ stopval is found.

• xtol_abs, float - Design parameter tolerance

• xtol_rel, float - Relative design parameter tolerance

## PDFO_BOBYQA¶

### Options¶

• chkfunval, bool - Flag used when debugging. If both options[‘debug’] and options[‘chkfunval’] are True, an extra function/constraint evaluation would be performed to check whether the returned values of objective function and constraint match the returned x.

• classical, bool - Flag indicating whether to call the classical Powell code or not.

• debug, bool - Debugging flag.

• ensure_bounds, boolean -

• ftarget, float - Target value of the objective function. If a feasible iterate achieves an objective function value lower or equal to options[‘ftarget’], the algorithm stops immediately.

• ftol_abs, float - stop criteria, absolute tolerance on the objective function, if abs(f(xk)-f(xk+1))<= ftol_rel: stop (Default value = 1e-9)

• ftol_rel, float - stop criteria, relative tolerance on the objective function, if abs(f(xk)-f(xk+1))/abs(f(xk))<= ftol_rel: stop (Default value = 1e-9)

• max_iter, integer -

• max_time, float - maximum runtime in seconds, disabled if 0 (Default value = 0)

• normalize_design_space, bool - If True, normalize the design space

• quiet, bool - Flag of quietness of the interface. If it is set to True, the output message will not be printed.

• rhobeg, float - Initial value of the trust region radius.

• rhoend, float - Final value of the trust region radius. Indicate the accuracy required in the final values of the variables

• scale, bool - Flag indicating whether to scale the problem according to the bound constraints.

• xtol_abs, float - stop criteria, absolute tolerance on the design variables, if norm(xk-xk+1)<= xtol_abs: stop (Default value = 1e-9)

• xtol_rel, float - stop criteria, relative tolerance on the design variables, if norm(xk-xk+1)/norm(xk)<= xtol_rel: stop (Default value = 1e-9)

## PDFO_COBYLA¶

### Description¶

Constrained OptimizationBy Linear Approximations

### Options¶

• chkfunval, bool - Flag used when debugging. If both options[‘debug’] and options[‘chkfunval’] are True, an extra function/constraint evaluation would be performed to check whether the returned values of objective function and constraint match the returned x.

• classical, bool - Flag indicating whether to call the classical Powell code or not.

• debug, bool - Debugging flag.

• ensure_bounds, boolean -

• ftarget, float - Target value of the objective function. If a feasible iterate achieves an objective function value lower or equal to options[‘ftarget’], the algorithm stops immediately.

• ftol_abs, float - stop criteria, absolute tolerance on the objective function, if abs(f(xk)-f(xk+1))<= ftol_rel: stop (Default value = 1e-9)

• ftol_rel, float - stop criteria, relative tolerance on the objective function, if abs(f(xk)-f(xk+1))/abs(f(xk))<= ftol_rel: stop (Default value = 1e-9)

• max_iter, integer -

• max_time, float - maximum runtime in seconds, disabled if 0 (Default value = 0)

• normalize_design_space, bool - If True, normalize the design space

• quiet, bool - Flag of quietness of the interface. If it is set to True, the output message will not be printed.

• rhobeg, float - Initial value of the trust region radius.

• rhoend, float - Final value of the trust region radius. Indicate the accuracy required in the final values of the variables

• scale, bool - Flag indicating whether to scale the problem according to the bound constraints.

• xtol_abs, float - stop criteria, absolute tolerance on the design variables, if norm(xk-xk+1)<= xtol_abs: stop (Default value = 1e-9)

• xtol_rel, float - stop criteria, relative tolerance on the design variables, if norm(xk-xk+1)/norm(xk)<= xtol_rel: stop (Default value = 1e-9)

## PDFO_NEWUOA¶

NEWUOA

### Options¶

• chkfunval, bool - Flag used when debugging. If both options[‘debug’] and options[‘chkfunval’] are True, an extra function/constraint evaluation would be performed to check whether the returned values of objective function and constraint match the returned x.

• classical, bool - Flag indicating whether to call the classical Powell code or not.

• debug, bool - Debugging flag.

• ensure_bounds, boolean -

• ftarget, float - Target value of the objective function. If a feasible iterate achieves an objective function value lower or equal to options[‘ftarget’], the algorithm stops immediately.

• ftol_abs, float - stop criteria, absolute tolerance on the objective function, if abs(f(xk)-f(xk+1))<= ftol_rel: stop (Default value = 1e-9)

• ftol_rel, float - stop criteria, relative tolerance on the objective function, if abs(f(xk)-f(xk+1))/abs(f(xk))<= ftol_rel: stop (Default value = 1e-9)

• max_iter, integer -

• max_time, float - maximum runtime in seconds, disabled if 0 (Default value = 0)

• normalize_design_space, bool - If True, normalize the design space

• quiet, bool - Flag of quietness of the interface. If it is set to True, the output message will not be printed.

• rhobeg, float - Initial value of the trust region radius.

• rhoend, float - Final value of the trust region radius. Indicate the accuracy required in the final values of the variables

• scale, bool - Flag indicating whether to scale the problem according to the bound constraints.

• xtol_abs, float - stop criteria, absolute tolerance on the design variables, if norm(xk-xk+1)<= xtol_abs: stop (Default value = 1e-9)

• xtol_rel, float - stop criteria, relative tolerance on the design variables, if norm(xk-xk+1)/norm(xk)<= xtol_rel: stop (Default value = 1e-9)

## PSEVEN¶

### Description¶

pSeven’s Generic Tool for Optimization (GTOpt).

### Options¶

• constraints_smoothness, string - The assumed smoothness of the constraints functions.

• detect_nan_clusters, boolean - Whether to detect and avoid design space areas that yield NaN values (for at least one function). This option has no effect in the absence of “expensive” functions.

• deterministic, boolean - Whether to require optimization process to be reproducible using the passed seed value. Defaults to “Auto”.

• diff_scheme, string - The order of the differentiation scheme (when the analytic derivatives are unavailable).

• diff_step, number - The numerical differentiation step size.

• diff_type, string - The strategy for differentiation (when the analytic derivatives are unavailable).

• ensure_feasibility, boolean - Whether to restrict the evaluations of the objectives to feasible designs only.

• evaluation_cost_type, object - The evaluation cost type of each function of the problem. If None, the evaluation cost types default to “Cheap”.

• expensive_evaluations, object - The maximal number of expensive evaluations for each function of the problem. By default, set automatically by pSeven.

• global_phase_intensity, number - The configuration of global searching algorithms. This option has different meanings for expensive and non-expensive optimization problems. Refer to the pSeven Core API documentation. Defaults to “Auto”.

• globalization_method, string - The globalization method. If None, set automatically depending on the problem.

• grad_tol, number - The tolerance on the infinity-norm of the gradient (or optimal descent for constrained and multi-objective problems) at which optimization stops. If ‘gradient_tol_is_abs’ is False then the tolerance is relative to the infinity-norm of the current objectives values; otherwise the tolerance is absolute. The value 0.0 deactivate the gradient-based stopping criterion.

• grad_tol_is_abs, boolean - Whether ‘grad_tol’ should be regarded as an absolute tolerance. See ‘grad_tol’ for details.

• local_search, boolean - Whether to force the surrogate models to explore the design space locally near the current optimum, or to disable the local search and let the surrogate models explore the whole design space.

• log_level, string - The minimum log level.

• max_batch_size, integer - The maximum number of points in an evaluation batch. The (default) value 0 allows the optimizer to use any batch size.

• max_expensive_func_iter, integer - The maximum number of evaluations for each expensive response, excluding the evaluations of initial guesses.

• max_func_iter, integer - The maximum number of evaluations for any response, including the evaluations of initial guesses.

• max_iter, integer - The maximum number of evaluations.

• max_threads, integer - The maximum number of parallel threads to use when solving.

• objectives_smoothness, string - The assumed smoothness of the objective functions.

• restore_analytic_func, boolean - Whether to restore the analytic forms of the linear and quadratic functions. Once the analytic forms are restored the original functions will not be evaluated anymore.

• sample_c, array - The constraints values at the design points of the sample.

• sample_f, array - The objectives values at the design points of the sample.

• sample_x, array - A sample of design points (in addition to the problem initial design).

• seed, integer - The random seed for deterministic mode.

• surrogate_based, boolean - Whether to use surrogate models. If None, set automatically depending on the problem.

• time_limit, integer - The maximum allowed time to solve a problem in seconds. Defaults to 0, unlimited.

• verbose_log, boolean - Whether to enable verbose logging.

## PSEVEN_FD¶

### Description¶

pSeven’s feasible direction method.

### Options¶

• constraints_smoothness, string - The assumed smoothness of the constraints functions.

• detect_nan_clusters, boolean - Whether to detect and avoid design space areas that yield NaN values (for at least one function). This option has no effect in the absence of “expensive” functions.

• deterministic, boolean - Whether to require optimization process to be reproducible using the passed seed value. Defaults to “Auto”.

• diff_scheme, string - The order of the differentiation scheme (when the analytic derivatives are unavailable).

• diff_step, number - The numerical differentiation step size.

• diff_type, string - The strategy for differentiation (when the analytic derivatives are unavailable).

• ensure_feasibility, boolean - Whether to restrict the evaluations of the objectives to feasible designs only.

• evaluation_cost_type, object - The evaluation cost type of each function of the problem. If None, the evaluation cost types default to “Cheap”.

• expensive_evaluations, object - The maximal number of expensive evaluations for each function of the problem. By default, set automatically by pSeven.

• global_phase_intensity, number - The configuration of global searching algorithms. This option has different meanings for expensive and non-expensive optimization problems. Refer to the pSeven Core API documentation. Defaults to “Auto”.

• globalization_method, string - The globalization method. If None, set automatically depending on the problem.

• grad_tol, number - The tolerance on the infinity-norm of the gradient (or optimal descent for constrained and multi-objective problems) at which optimization stops. If ‘gradient_tol_is_abs’ is False then the tolerance is relative to the infinity-norm of the current objectives values; otherwise the tolerance is absolute. The value 0.0 deactivate the gradient-based stopping criterion.

• grad_tol_is_abs, boolean - Whether ‘grad_tol’ should be regarded as an absolute tolerance. See ‘grad_tol’ for details.

• local_search, boolean - Whether to force the surrogate models to explore the design space locally near the current optimum, or to disable the local search and let the surrogate models explore the whole design space.

• log_level, string - The minimum log level.

• max_batch_size, integer - The maximum number of points in an evaluation batch. The (default) value 0 allows the optimizer to use any batch size.

• max_expensive_func_iter, integer - The maximum number of evaluations for each expensive response, excluding the evaluations of initial guesses.

• max_func_iter, integer - The maximum number of evaluations for any response, including the evaluations of initial guesses.

• max_iter, integer - The maximum number of evaluations.

• max_threads, integer - The maximum number of parallel threads to use when solving.

• objectives_smoothness, string - The assumed smoothness of the objective functions.

• restore_analytic_func, boolean - Whether to restore the analytic forms of the linear and quadratic functions. Once the analytic forms are restored the original functions will not be evaluated anymore.

• sample_c, array - The constraints values at the design points of the sample.

• sample_f, array - The objectives values at the design points of the sample.

• sample_x, array - A sample of design points (in addition to the problem initial design).

• seed, integer - The random seed for deterministic mode.

• surrogate_based, boolean - Whether to use surrogate models. If None, set automatically depending on the problem.

• time_limit, integer - The maximum allowed time to solve a problem in seconds. Defaults to 0, unlimited.

• verbose_log, boolean - Whether to enable verbose logging.

## PSEVEN_MOM¶

### Description¶

pSeven’s method of multipliers.

### Options¶

• constraints_smoothness, string - The assumed smoothness of the constraints functions.

• detect_nan_clusters, boolean - Whether to detect and avoid design space areas that yield NaN values (for at least one function). This option has no effect in the absence of “expensive” functions.

• deterministic, boolean - Whether to require optimization process to be reproducible using the passed seed value. Defaults to “Auto”.

• diff_scheme, string - The order of the differentiation scheme (when the analytic derivatives are unavailable).

• diff_step, number - The numerical differentiation step size.

• diff_type, string - The strategy for differentiation (when the analytic derivatives are unavailable).

• ensure_feasibility, boolean - Whether to restrict the evaluations of the objectives to feasible designs only.

• evaluation_cost_type, object - The evaluation cost type of each function of the problem. If None, the evaluation cost types default to “Cheap”.

• expensive_evaluations, object - The maximal number of expensive evaluations for each function of the problem. By default, set automatically by pSeven.

• global_phase_intensity, number - The configuration of global searching algorithms. This option has different meanings for expensive and non-expensive optimization problems. Refer to the pSeven Core API documentation. Defaults to “Auto”.

• globalization_method, string - The globalization method. If None, set automatically depending on the problem.

• grad_tol, number - The tolerance on the infinity-norm of the gradient (or optimal descent for constrained and multi-objective problems) at which optimization stops. If ‘gradient_tol_is_abs’ is False then the tolerance is relative to the infinity-norm of the current objectives values; otherwise the tolerance is absolute. The value 0.0 deactivate the gradient-based stopping criterion.

• grad_tol_is_abs, boolean - Whether ‘grad_tol’ should be regarded as an absolute tolerance. See ‘grad_tol’ for details.

• local_search, boolean - Whether to force the surrogate models to explore the design space locally near the current optimum, or to disable the local search and let the surrogate models explore the whole design space.

• log_level, string - The minimum log level.

• max_batch_size, integer - The maximum number of points in an evaluation batch. The (default) value 0 allows the optimizer to use any batch size.

• max_expensive_func_iter, integer - The maximum number of evaluations for each expensive response, excluding the evaluations of initial guesses.

• max_func_iter, integer - The maximum number of evaluations for any response, including the evaluations of initial guesses.

• max_iter, integer - The maximum number of evaluations.

• max_threads, integer - The maximum number of parallel threads to use when solving.

• objectives_smoothness, string - The assumed smoothness of the objective functions.

• restore_analytic_func, boolean - Whether to restore the analytic forms of the linear and quadratic functions. Once the analytic forms are restored the original functions will not be evaluated anymore.

• sample_c, array - The constraints values at the design points of the sample.

• sample_f, array - The objectives values at the design points of the sample.

• sample_x, array - A sample of design points (in addition to the problem initial design).

• seed, integer - The random seed for deterministic mode.

• surrogate_based, boolean - Whether to use surrogate models. If None, set automatically depending on the problem.

• time_limit, integer - The maximum allowed time to solve a problem in seconds. Defaults to 0, unlimited.

• verbose_log, boolean - Whether to enable verbose logging.

## PSEVEN_NCG¶

### Options¶

• constraints_smoothness, string - The assumed smoothness of the constraints functions.

• detect_nan_clusters, boolean - Whether to detect and avoid design space areas that yield NaN values (for at least one function). This option has no effect in the absence of “expensive” functions.

• deterministic, boolean - Whether to require optimization process to be reproducible using the passed seed value. Defaults to “Auto”.

• diff_scheme, string - The order of the differentiation scheme (when the analytic derivatives are unavailable).

• diff_step, number - The numerical differentiation step size.

• diff_type, string - The strategy for differentiation (when the analytic derivatives are unavailable).

• ensure_feasibility, boolean - Whether to restrict the evaluations of the objectives to feasible designs only.

• evaluation_cost_type, object - The evaluation cost type of each function of the problem. If None, the evaluation cost types default to “Cheap”.

• expensive_evaluations, object - The maximal number of expensive evaluations for each function of the problem. By default, set automatically by pSeven.

• global_phase_intensity, number - The configuration of global searching algorithms. This option has different meanings for expensive and non-expensive optimization problems. Refer to the pSeven Core API documentation. Defaults to “Auto”.

• globalization_method, string - The globalization method. If None, set automatically depending on the problem.

• grad_tol, number - The tolerance on the infinity-norm of the gradient (or optimal descent for constrained and multi-objective problems) at which optimization stops. If ‘gradient_tol_is_abs’ is False then the tolerance is relative to the infinity-norm of the current objectives values; otherwise the tolerance is absolute. The value 0.0 deactivate the gradient-based stopping criterion.

• grad_tol_is_abs, boolean - Whether ‘grad_tol’ should be regarded as an absolute tolerance. See ‘grad_tol’ for details.

• local_search, boolean - Whether to force the surrogate models to explore the design space locally near the current optimum, or to disable the local search and let the surrogate models explore the whole design space.

• log_level, string - The minimum log level.

• max_batch_size, integer - The maximum number of points in an evaluation batch. The (default) value 0 allows the optimizer to use any batch size.

• max_expensive_func_iter, integer - The maximum number of evaluations for each expensive response, excluding the evaluations of initial guesses.

• max_func_iter, integer - The maximum number of evaluations for any response, including the evaluations of initial guesses.

• max_iter, integer - The maximum number of evaluations.

• max_threads, integer - The maximum number of parallel threads to use when solving.

• objectives_smoothness, string - The assumed smoothness of the objective functions.

• restore_analytic_func, boolean - Whether to restore the analytic forms of the linear and quadratic functions. Once the analytic forms are restored the original functions will not be evaluated anymore.

• sample_c, array - The constraints values at the design points of the sample.

• sample_f, array - The objectives values at the design points of the sample.

• sample_x, array - A sample of design points (in addition to the problem initial design).

• seed, integer - The random seed for deterministic mode.

• surrogate_based, boolean - Whether to use surrogate models. If None, set automatically depending on the problem.

• time_limit, integer - The maximum allowed time to solve a problem in seconds. Defaults to 0, unlimited.

• verbose_log, boolean - Whether to enable verbose logging.

## PSEVEN_NLS¶

### Description¶

pSeven’s nonlinear simplex method.

### Options¶

• constraints_smoothness, string - The assumed smoothness of the constraints functions.

• detect_nan_clusters, boolean - Whether to detect and avoid design space areas that yield NaN values (for at least one function). This option has no effect in the absence of “expensive” functions.

• deterministic, boolean - Whether to require optimization process to be reproducible using the passed seed value. Defaults to “Auto”.

• diff_scheme, string - The order of the differentiation scheme (when the analytic derivatives are unavailable).

• diff_step, number - The numerical differentiation step size.

• diff_type, string - The strategy for differentiation (when the analytic derivatives are unavailable).

• ensure_feasibility, boolean - Whether to restrict the evaluations of the objectives to feasible designs only.

• evaluation_cost_type, object - The evaluation cost type of each function of the problem. If None, the evaluation cost types default to “Cheap”.

• expensive_evaluations, object - The maximal number of expensive evaluations for each function of the problem. By default, set automatically by pSeven.

• global_phase_intensity, number - The configuration of global searching algorithms. This option has different meanings for expensive and non-expensive optimization problems. Refer to the pSeven Core API documentation. Defaults to “Auto”.

• globalization_method, string - The globalization method. If None, set automatically depending on the problem.

• grad_tol, number - The tolerance on the infinity-norm of the gradient (or optimal descent for constrained and multi-objective problems) at which optimization stops. If ‘gradient_tol_is_abs’ is False then the tolerance is relative to the infinity-norm of the current objectives values; otherwise the tolerance is absolute. The value 0.0 deactivate the gradient-based stopping criterion.

• grad_tol_is_abs, boolean - Whether ‘grad_tol’ should be regarded as an absolute tolerance. See ‘grad_tol’ for details.

• local_search, boolean - Whether to force the surrogate models to explore the design space locally near the current optimum, or to disable the local search and let the surrogate models explore the whole design space.

• log_level, string - The minimum log level.

• max_batch_size, integer - The maximum number of points in an evaluation batch. The (default) value 0 allows the optimizer to use any batch size.

• max_expensive_func_iter, integer - The maximum number of evaluations for each expensive response, excluding the evaluations of initial guesses.

• max_func_iter, integer - The maximum number of evaluations for any response, including the evaluations of initial guesses.

• max_iter, integer - The maximum number of evaluations.

• max_threads, integer - The maximum number of parallel threads to use when solving.

• objectives_smoothness, string - The assumed smoothness of the objective functions.

• restore_analytic_func, boolean - Whether to restore the analytic forms of the linear and quadratic functions. Once the analytic forms are restored the original functions will not be evaluated anymore.

• sample_c, array - The constraints values at the design points of the sample.

• sample_f, array - The objectives values at the design points of the sample.

• sample_x, array - A sample of design points (in addition to the problem initial design).

• seed, integer - The random seed for deterministic mode.

• surrogate_based, boolean - Whether to use surrogate models. If None, set automatically depending on the problem.

• time_limit, integer - The maximum allowed time to solve a problem in seconds. Defaults to 0, unlimited.

• verbose_log, boolean - Whether to enable verbose logging.

## PSEVEN_POWELL¶

### Description¶

pSeven’s Powell conjugate direction method.

### Options¶

• constraints_smoothness, string - The assumed smoothness of the constraints functions.

• detect_nan_clusters, boolean - Whether to detect and avoid design space areas that yield NaN values (for at least one function). This option has no effect in the absence of “expensive” functions.

• deterministic, boolean - Whether to require optimization process to be reproducible using the passed seed value. Defaults to “Auto”.

• diff_scheme, string - The order of the differentiation scheme (when the analytic derivatives are unavailable).

• diff_step, number - The numerical differentiation step size.

• diff_type, string - The strategy for differentiation (when the analytic derivatives are unavailable).

• ensure_feasibility, boolean - Whether to restrict the evaluations of the objectives to feasible designs only.

• evaluation_cost_type, object - The evaluation cost type of each function of the problem. If None, the evaluation cost types default to “Cheap”.

• expensive_evaluations, object - The maximal number of expensive evaluations for each function of the problem. By default, set automatically by pSeven.

• global_phase_intensity, number - The configuration of global searching algorithms. This option has different meanings for expensive and non-expensive optimization problems. Refer to the pSeven Core API documentation. Defaults to “Auto”.

• globalization_method, string - The globalization method. If None, set automatically depending on the problem.

• grad_tol, number - The tolerance on the infinity-norm of the gradient (or optimal descent for constrained and multi-objective problems) at which optimization stops. If ‘gradient_tol_is_abs’ is False then the tolerance is relative to the infinity-norm of the current objectives values; otherwise the tolerance is absolute. The value 0.0 deactivate the gradient-based stopping criterion.

• grad_tol_is_abs, boolean - Whether ‘grad_tol’ should be regarded as an absolute tolerance. See ‘grad_tol’ for details.

• local_search, boolean - Whether to force the surrogate models to explore the design space locally near the current optimum, or to disable the local search and let the surrogate models explore the whole design space.

• log_level, string - The minimum log level.

• max_batch_size, integer - The maximum number of points in an evaluation batch. The (default) value 0 allows the optimizer to use any batch size.

• max_expensive_func_iter, integer - The maximum number of evaluations for each expensive response, excluding the evaluations of initial guesses.

• max_func_iter, integer - The maximum number of evaluations for any response, including the evaluations of initial guesses.

• max_iter, integer - The maximum number of evaluations.

• max_threads, integer - The maximum number of parallel threads to use when solving.

• objectives_smoothness, string - The assumed smoothness of the objective functions.

• restore_analytic_func, boolean - Whether to restore the analytic forms of the linear and quadratic functions. Once the analytic forms are restored the original functions will not be evaluated anymore.

• sample_c, array - The constraints values at the design points of the sample.

• sample_f, array - The objectives values at the design points of the sample.

• sample_x, array - A sample of design points (in addition to the problem initial design).

• seed, integer - The random seed for deterministic mode.

• surrogate_based, boolean - Whether to use surrogate models. If None, set automatically depending on the problem.

• time_limit, integer - The maximum allowed time to solve a problem in seconds. Defaults to 0, unlimited.

• verbose_log, boolean - Whether to enable verbose logging.

## PSEVEN_QP¶

### Options¶

• constraints_smoothness, string - The assumed smoothness of the constraints functions.

• detect_nan_clusters, boolean - Whether to detect and avoid design space areas that yield NaN values (for at least one function). This option has no effect in the absence of “expensive” functions.

• deterministic, boolean - Whether to require optimization process to be reproducible using the passed seed value. Defaults to “Auto”.

• diff_scheme, string - The order of the differentiation scheme (when the analytic derivatives are unavailable).

• diff_step, number - The numerical differentiation step size.

• diff_type, string - The strategy for differentiation (when the analytic derivatives are unavailable).

• ensure_feasibility, boolean - Whether to restrict the evaluations of the objectives to feasible designs only.

• evaluation_cost_type, object - The evaluation cost type of each function of the problem. If None, the evaluation cost types default to “Cheap”.

• expensive_evaluations, object - The maximal number of expensive evaluations for each function of the problem. By default, set automatically by pSeven.

• global_phase_intensity, number - The configuration of global searching algorithms. This option has different meanings for expensive and non-expensive optimization problems. Refer to the pSeven Core API documentation. Defaults to “Auto”.

• globalization_method, string - The globalization method. If None, set automatically depending on the problem.

• grad_tol, number - The tolerance on the infinity-norm of the gradient (or optimal descent for constrained and multi-objective problems) at which optimization stops. If ‘gradient_tol_is_abs’ is False then the tolerance is relative to the infinity-norm of the current objectives values; otherwise the tolerance is absolute. The value 0.0 deactivate the gradient-based stopping criterion.

• grad_tol_is_abs, boolean - Whether ‘grad_tol’ should be regarded as an absolute tolerance. See ‘grad_tol’ for details.

• local_search, boolean - Whether to force the surrogate models to explore the design space locally near the current optimum, or to disable the local search and let the surrogate models explore the whole design space.

• log_level, string - The minimum log level.

• max_batch_size, integer - The maximum number of points in an evaluation batch. The (default) value 0 allows the optimizer to use any batch size.

• max_expensive_func_iter, integer - The maximum number of evaluations for each expensive response, excluding the evaluations of initial guesses.

• max_func_iter, integer - The maximum number of evaluations for any response, including the evaluations of initial guesses.

• max_iter, integer - The maximum number of evaluations.

• max_threads, integer - The maximum number of parallel threads to use when solving.

• objectives_smoothness, string - The assumed smoothness of the objective functions.

• restore_analytic_func, boolean - Whether to restore the analytic forms of the linear and quadratic functions. Once the analytic forms are restored the original functions will not be evaluated anymore.

• sample_c, array - The constraints values at the design points of the sample.

• sample_f, array - The objectives values at the design points of the sample.

• sample_x, array - A sample of design points (in addition to the problem initial design).

• seed, integer - The random seed for deterministic mode.

• surrogate_based, boolean - Whether to use surrogate models. If None, set automatically depending on the problem.

• time_limit, integer - The maximum allowed time to solve a problem in seconds. Defaults to 0, unlimited.

• verbose_log, boolean - Whether to enable verbose logging.

## PSEVEN_SQ2P¶

### Options¶

• constraints_smoothness, string - The assumed smoothness of the constraints functions.

• detect_nan_clusters, boolean - Whether to detect and avoid design space areas that yield NaN values (for at least one function). This option has no effect in the absence of “expensive” functions.

• deterministic, boolean - Whether to require optimization process to be reproducible using the passed seed value. Defaults to “Auto”.

• diff_scheme, string - The order of the differentiation scheme (when the analytic derivatives are unavailable).

• diff_step, number - The numerical differentiation step size.

• diff_type, string - The strategy for differentiation (when the analytic derivatives are unavailable).

• ensure_feasibility, boolean - Whether to restrict the evaluations of the objectives to feasible designs only.

• evaluation_cost_type, object - The evaluation cost type of each function of the problem. If None, the evaluation cost types default to “Cheap”.

• expensive_evaluations, object - The maximal number of expensive evaluations for each function of the problem. By default, set automatically by pSeven.

• global_phase_intensity, number - The configuration of global searching algorithms. This option has different meanings for expensive and non-expensive optimization problems. Refer to the pSeven Core API documentation. Defaults to “Auto”.

• globalization_method, string - The globalization method. If None, set automatically depending on the problem.

• grad_tol, number - The tolerance on the infinity-norm of the gradient (or optimal descent for constrained and multi-objective problems) at which optimization stops. If ‘gradient_tol_is_abs’ is False then the tolerance is relative to the infinity-norm of the current objectives values; otherwise the tolerance is absolute. The value 0.0 deactivate the gradient-based stopping criterion.

• grad_tol_is_abs, boolean - Whether ‘grad_tol’ should be regarded as an absolute tolerance. See ‘grad_tol’ for details.

• local_search, boolean - Whether to force the surrogate models to explore the design space locally near the current optimum, or to disable the local search and let the surrogate models explore the whole design space.

• log_level, string - The minimum log level.

• max_batch_size, integer - The maximum number of points in an evaluation batch. The (default) value 0 allows the optimizer to use any batch size.

• max_expensive_func_iter, integer - The maximum number of evaluations for each expensive response, excluding the evaluations of initial guesses.

• max_func_iter, integer - The maximum number of evaluations for any response, including the evaluations of initial guesses.

• max_iter, integer - The maximum number of evaluations.

• max_threads, integer - The maximum number of parallel threads to use when solving.

• objectives_smoothness, string - The assumed smoothness of the objective functions.

• restore_analytic_func, boolean - Whether to restore the analytic forms of the linear and quadratic functions. Once the analytic forms are restored the original functions will not be evaluated anymore.

• sample_c, array - The constraints values at the design points of the sample.

• sample_f, array - The objectives values at the design points of the sample.

• sample_x, array - A sample of design points (in addition to the problem initial design).

• seed, integer - The random seed for deterministic mode.

• surrogate_based, boolean - Whether to use surrogate models. If None, set automatically depending on the problem.

• time_limit, integer - The maximum allowed time to solve a problem in seconds. Defaults to 0, unlimited.

• verbose_log, boolean - Whether to enable verbose logging.

## PSEVEN_SQP¶

### Options¶

• constraints_smoothness, string - The assumed smoothness of the constraints functions.

• detect_nan_clusters, boolean - Whether to detect and avoid design space areas that yield NaN values (for at least one function). This option has no effect in the absence of “expensive” functions.

• deterministic, boolean - Whether to require optimization process to be reproducible using the passed seed value. Defaults to “Auto”.

• diff_scheme, string - The order of the differentiation scheme (when the analytic derivatives are unavailable).

• diff_step, number - The numerical differentiation step size.

• diff_type, string - The strategy for differentiation (when the analytic derivatives are unavailable).

• ensure_feasibility, boolean - Whether to restrict the evaluations of the objectives to feasible designs only.

• evaluation_cost_type, object - The evaluation cost type of each function of the problem. If None, the evaluation cost types default to “Cheap”.

• expensive_evaluations, object - The maximal number of expensive evaluations for each function of the problem. By default, set automatically by pSeven.

• global_phase_intensity, number - The configuration of global searching algorithms. This option has different meanings for expensive and non-expensive optimization problems. Refer to the pSeven Core API documentation. Defaults to “Auto”.

• globalization_method, string - The globalization method. If None, set automatically depending on the problem.

• grad_tol, number - The tolerance on the infinity-norm of the gradient (or optimal descent for constrained and multi-objective problems) at which optimization stops. If ‘gradient_tol_is_abs’ is False then the tolerance is relative to the infinity-norm of the current objectives values; otherwise the tolerance is absolute. The value 0.0 deactivate the gradient-based stopping criterion.

• grad_tol_is_abs, boolean - Whether ‘grad_tol’ should be regarded as an absolute tolerance. See ‘grad_tol’ for details.

• local_search, boolean - Whether to force the surrogate models to explore the design space locally near the current optimum, or to disable the local search and let the surrogate models explore the whole design space.

• log_level, string - The minimum log level.

• max_batch_size, integer - The maximum number of points in an evaluation batch. The (default) value 0 allows the optimizer to use any batch size.

• max_expensive_func_iter, integer - The maximum number of evaluations for each expensive response, excluding the evaluations of initial guesses.

• max_func_iter, integer - The maximum number of evaluations for any response, including the evaluations of initial guesses.

• max_iter, integer - The maximum number of evaluations.

• max_threads, integer - The maximum number of parallel threads to use when solving.

• objectives_smoothness, string - The assumed smoothness of the objective functions.

• restore_analytic_func, boolean - Whether to restore the analytic forms of the linear and quadratic functions. Once the analytic forms are restored the original functions will not be evaluated anymore.

• sample_c, array - The constraints values at the design points of the sample.

• sample_f, array - The objectives values at the design points of the sample.

• sample_x, array - A sample of design points (in addition to the problem initial design).

• seed, integer - The random seed for deterministic mode.

• surrogate_based, boolean - Whether to use surrogate models. If None, set automatically depending on the problem.

• time_limit, integer - The maximum allowed time to solve a problem in seconds. Defaults to 0, unlimited.

• verbose_log, boolean - Whether to enable verbose logging.

## REVISED_SIMPLEX¶

### Description¶

Linear programming by a two-phase revised simplex algorithm implemented in the SciPy library

### Options¶

• disp, boolean -

• max_iter, int, optional - maximum number of iterations, i.e. unique calls to the objective function

• normalize_design_space, boolean -

## SHGO¶

### Description¶

Simplicial homology global optimization

### Options¶

• ftol_abs, float - stop criteria, absolute tolerance on the objective function, if abs(f(xk)-f(xk+1))<= ftol_rel: stop (Default value = 1e-9)

• ftol_rel, float - stop criteria, relative tolerance on the objective function, if abs(f(xk)-f(xk+1))/abs(f(xk))<= ftol_rel: stop (Default value = 1e-9)

• iters, integer -

• max_iter, int - maximum number of iterations, ie unique calls to f(x)

• n, integer -

• sampling_method, string -

• xtol_abs, float - stop criteria, absolute tolerance on the design variables, if norm(xk-xk+1)<= xtol_abs: stop (Default value = 1e-9)

• xtol_rel, float - stop criteria, relative tolerance on the design variables, if norm(xk-xk+1)/norm(xk)<= xtol_rel: stop (Default value = 1e-9)

## SIMPLEX¶

### Description¶

Linear programming by the two-phase simplex algorithm implemented in the SciPy library

### Options¶

• disp, boolean -

• max_iter, int, optional - maximum number of iterations, i.e. unique calls to the objective function

• normalize_design_space, boolean -

## SLSQP¶

### Description¶

Sequential Least-Squares Quadratic Programming (SLSQP) implemented in the SciPy library

### Options¶

• disp, int - display information, (Default value = 0)

• eq_tolerance, float - equality tolerance

• ftol_abs, float - stop criteria, absolute tolerance on the objective function, if abs(f(xk)-f(xk+1))<= ftol_rel: stop (Default value = 1e-9)

• ftol_rel, float - stop criteria, relative tolerance on the objective function, if abs(f(xk)-f(xk+1))/abs(f(xk))<= ftol_rel: stop (Default value = 1e-9)

• ineq_tolerance, float - inequality tolerance

• max_iter, int - maximum number of iterations, ie unique calls to f(x)

• max_time, float - maximum runtime in seconds, disabled if 0 (Default value = 0)

• normalize_design_space, bool - If True, scales variables in [0, 1]

• xtol_abs, float - stop criteria, absolute tolerance on the design variables, if norm(xk-xk+1)<= xtol_abs: stop (Default value = 1e-9)

• xtol_rel, float - stop criteria, relative tolerance on the design variables, if norm(xk-xk+1)/norm(xk)<= xtol_rel: stop (Default value = 1e-9)

## SNOPTB¶

### Description¶

Sparse Nonlinear OPTimizer (SNOPT)

### Options¶

• CG_iterations, integer -

• CG_preconditioning, integer -

• CG_tolerance, number -

• Crash_option, integer -

• Crash_tolerance, number -

• Debug_level, integer -

• Derivative_level, integer -

• Derivative_linesearch, integer -

• Derivative_option, integer -

• Elastic_mode, integer -

• Elastic_objective, integer -

• Elastic_weight, number -

• Elastic_weightmax, number -

• eq_tolerance, number -

• Feasibility_tolerance, number -

• ftol_abs, float - Objective function tolerance

• ftol_rel, number -

• Hessian_flush, integer -

• Hessian_frequency, integer -

• Hessian_type, integer -

• Hessian_updates, integer -

• ineq_tolerance, number -

• Infinite_bound, number -

• Linesearch_debug, integer -

• Linesearch_tolerance, number -

• LU_density, number -

• LU_factor_tolerance, number -

• LU_singularity, number -

• LU_swap, number -

• lu_update_tolerance, number -

• Major_feasibility, number -

• Major_iterations, integer -

• Major_optimality, number -

• Major_print_level, integer -

• Major_step_limit, number -

• max_iter, int - Default value = 999)

• Max_memory_attempts, integer -

• max_time, float - Maximum time

• Minor_feasibility, number -

• Minor_iterations, integer -

• Minor_optimality, number -

• Minor_phase1, number -

• Minor_print_level, integer -

• New_superbasics, integer -

• normalize_design_space, boolean -

• Optimality_tolerance, number -

• Partial_pricing, integer -

• Penalty_parameter, integer -

• Print_file, string -

• Print_frequency, integer -

• Print_level, integer -

• Print_unit, integer -

• Proximal_point, integer -

• Reduced_Hessian_limit, integer -

• Scale_option, integer -

• Scale_print, integer -

• Scale_tolerance, number -

• Solution_file, integer -

• Solution_print, boolean -

• Specs_file, string -

• Specs_unit, integer -

• Start_type, string -

• Sticky_parameters, integer -

• Summary_file, string -

• Summary_frequency, integer -

• Summary_unit, integer -

• Superbasics_limit, integer -

• Suppress, integer -

• System_information, integer -

• Total_character_workspace, integer -

• Total_integer_workspace, integer -

• Total_real_workspace, integer -

• Unbounded_objective, number -

• Unbounded_step, number -

• Verbose, boolean -

• Verify_level, integer -

• xtol_abs, float - Design parameter tolerance

• xtol_rel, number -

## TNC¶

### Description¶

Truncated Newton (TNC) algorithm implemented in SciPy library

### Options¶

• disp, int - display information, (Default value = 0)

• eq_tolerance, float - equality tolerance

• eta, int - severity of the linesearch, specific to TNC algorithm (Default value = -1.)

• ftol_abs, float - stop criteria, absolute tolerance on the objective function, if abs(f(xk)-f(xk+1))<= ftol_rel: stop (Default value = 1e-9)

• ftol_rel, float - stop criteria, relative tolerance on the objective function, if abs(f(xk)-f(xk+1))/abs(f(xk))<= ftol_rel: stop (Default value = 1e-9)

• ineq_tolerance, float - inequality tolerance

• max_iter, int - maximum number of iterations, ie unique calls to f(x)

• max_time, float - maximum runtime in seconds, disabled if 0 (Default value = 0)

• maxCGit, integer -

• minfev, float - Minimum function value estimate

• normalize_design_space, bool - If True, scales variables in [0, 1]

• offset, float - Value to subtract from each variable.

• pg_tol, float - stop criteria on the projected gradient norm (Default value = 1e-5)

• rescale, float - Scaling factor (in log10) used to trigger f value rescaling

• scale, array - Scaling factors to apply to each variable

• stepmx, float - Maximum step for the line search.

• xtol_abs, float - stop criteria, absolute tolerance on the design variables, if norm(xk-xk+1)<= xtol_abs: stop (Default value = 1e-9)

• xtol_rel, float - stop criteria, relative tolerance on the design variables, if norm(xk-xk+1)/norm(xk)<= xtol_rel: stop (Default value = 1e-9)