ishigami_problem module¶
A problem connecting the Ishigami function with its uncertain space.
The Isighami function \(f(x_1,_2,x_3) = \sin(x_1)+ 7\sin(x_2)^2 + 0.1x_3^4\sin(X_1)\) is commonly studied through the random variable \(Y=f(X_1,X_2,X_3)\) where \(X_1\), \(X_2\) and \(X_3\) are independent random variables uniformly distributed over \([-\pi,\pi]\).
See [IH90].
See also
- class gemseo.uncertainty.use_cases.ishigami.ishigami_problem.IshigamiProblem(uniform_distribution_name=UniformDistribution.SCIPY)[source]
Bases:
OptimizationProblem
A problem connecting the Ishigami function with its uncertain space.
- Parameters:
uniform_distribution_name (IshigamiSpace.UniformDistribution) –
The name of the class implementing the uniform distribution.
By default it is set to “SPUniformDistribution”.
- constraints: list[MDOFunction]
The constraints.
- current_iter: int
The current iteration.
- database: Database
The database to store the optimization problem data.
- design_space: DesignSpace
The design space on which the optimization problem is solved.
- eq_tolerance: float
The tolerance for the equality constraints.
- fd_step: float
The finite differences step.
- ineq_tolerance: float
The tolerance for the inequality constraints.
- max_iter: int
The maximum iteration.
- new_iter_observables: list[MDOFunction]
The observables to be called at each new iterate.
- nonproc_constraints: list[MDOFunction]
The non-processed constraints.
- nonproc_new_iter_observables: list[MDOFunction]
The non-processed observables to be called at each new iterate.
- nonproc_objective: MDOFunction
The non-processed objective function.
- nonproc_observables: list[MDOFunction]
The non-processed observables.
- observables: list[MDOFunction]
The observables.
- pb_type: ProblemType
The type of optimization problem.
- preprocess_options: dict
The options to pre-process the functions.
- solution: OptimizationResult | None
The solution of the optimization problem if solved; otherwise
None
.
- stop_if_nan: bool
Whether the optimization stops when a function returns
NaN
.
- use_standardized_objective: bool
Whether to use standardized objective for logging and post-processing.
The standardized objective corresponds to the original one expressed as a cost function to minimize. A
DriverLibrary
works with this standardized objective and theDatabase
stores its values. However, for convenience, it may be more relevant to log the expression and the values of the original objective.