MultiObjectiveOptimizationAnalysis

class persalys.MultiObjectiveOptimizationAnalysis(*args)

Perform the multi-objective optimization analysis of a model.

Parameters:
namestr

Name

physicalModelPhysicalModel

Physical model

solverNamestr

Optimization algorithm name (optional). Use GetSolverNames() to list available names.

Examples

>>> import openturns as ot
>>> import persalys

Create the model:

>>> X0 = persalys.Input('X0', 0)
>>> X1 = persalys.Input('X1', 0)
>>> Y0 = persalys.Output('Y0')
>>> Y1 = persalys.Output('Y1')
>>> bounds = ot.Interval([0.0, 0.0], [5.0, 5.0])
>>> model = persalys.SymbolicPhysicalModel('aModelPhys', [X0, X1], [Y0, Y1], ['X0', 'var g := 1.0 + 9.0 * (X0 + X1); g * (1.0 - sqrt(X0 / g))'])

Create the analysis:

>>> analysis = persalys.MultiObjectiveOptimizationAnalysis('anAnalysis', model, 'nsga2')
>>> analysis.setInterestVariables(['Y0', 'Y1'])
>>> analysis.setBounds(bounds)
>>> analysis.setPopulationSize(50)
>>> analysis.setGenerationNumber(10)
>>> analysis.setVariableInputs(['X0', 'X1'])
>>> analysis.run() 

Get the result:

>>> result = analysis.getResult() 
>>> finalPop = result.getFinalPop() 
>>> fronts = result.getFronts() 
Attributes:
AlgorithmDictionary
thisown

The membership flag

Methods

GetSolverNames(*args)

Accessor to the list of solver names.

addConstraint(*args)

Adds a constraint to the analysis

getBounds()

Accessor to bounds.

getClassName()

Accessor to the object's name.

getErrorMessage()

Error message accessor.

getGenerationNumber()

Accessor to the number of generations.

getId()

Accessor to the object's id.

getInterestVariables()

Get the variables to analyse.

getMaximumAbsoluteError()

Accessor to maximum allowed absolute error.

getMaximumConstraintError()

Accessor to maximum allowed constraint error.

getMaximumEvaluationNumber()

Accessor to maximum allowed number of evaluations.

getMaximumRelativeError()

Accessor to maximum allowed relative error.

getMaximumResidualError()

Accessor to maximum allowed residual error.

getMinimization()

Test whether this is a minimization or maximization problem.

getName()

Accessor to the object's name.

getPhysicalModel()

Physical model accessor.

getPopulationSize()

Accessor to popSize.

getPythonScript()

Physical model accessor.

getRawEquations()

Accessor to constraints equations

getResult()

Accessor to result.

getSeed()

Accessor to random generator seed.

getShadowedId()

Accessor to the object's shadowed id.

getSolverName()

Accessor to solver name

getStartingPoint()

Accessor to starting point.

getVariableInputs()

Accessor to variable input names

getVisibility()

Accessor to the object's visibility state.

getWarningMessage()

Warning message accessor.

hasName()

Test if the object is named.

hasValidResult()

Whether the analysis has been run.

hasVisibleName()

Test if the object has a distinguishable name.

isReliabilityAnalysis()

Whether the analysis involves reliability.

isRunning()

Whether the analysis is running.

resetConstraints()

Clears the current analysis constraints

run()

Launch the analysis.

setBounds(bounds)

Accessor to bounds.

setGenerationNumber(generationNumber)

Accessor to the number of generations.

setInterestVariables(variablesNames)

Set the variables to analyse.

setMaximumAbsoluteError(maximumAbsoluteError)

Accessor to maximum allowed absolute error.

setMaximumConstraintError(maximumConstraintError)

Accessor to maximum allowed constraint error.

setMaximumEvaluationNumber(...)

Accessor to maximum allowed number of evaluations.

setMaximumRelativeError(maximumRelativeError)

Accessor to maximum allowed relative error.

setMaximumResidualError(maximumResidualError)

Accessor to maximum allowed residual error.

setMinimization(varNames)

Tell whether this is a minimization or maximization problem.

setName(name)

Accessor to the object's name.

setPopulationSize(popSize)

Accessor to popSize.

setSeed(seed)

Accessor to random generator seed.

setShadowedId(id)

Accessor to the object's shadowed id.

setSolverName(name)

Accessor to solver name

setStartingPoint(startingPoint)

Accessor to starting point.

setVariableInputs(inputs)

Accessor to variable input names

setVisibility(visible)

Accessor to the object's visibility state.

canBeLaunched

defineProblem

getElapsedTime

getEqualityConstraints

getInequalityConstraints

getParentObserver

getVariablesType

initialize

setVariablesType

__init__(*args)
static GetSolverNames(*args)

Accessor to the list of solver names.

Returns:
namesDescription

List of available solver names.

addConstraint(*args)

Adds a constraint to the analysis

Parameters:
constraintstr

Constraint equation

getBounds()

Accessor to bounds.

Returns:
boundsInterval

Problem bounds.

getClassName()

Accessor to the object’s name.

Returns:
class_namestr

The object class name (object.__class__.__name__).

getErrorMessage()

Error message accessor.

Returns:
messagestr

Error message if the analysis failed

getGenerationNumber()

Accessor to the number of generations.

Returns:
generationNumberint

number of generations for the evolving algorithm.

getId()

Accessor to the object’s id.

Returns:
idint

Internal unique identifier.

getInterestVariables()

Get the variables to analyse.

Returns:
variablesNamessequence of str

Names of the variables to analyse

getMaximumAbsoluteError()

Accessor to maximum allowed absolute error.

Returns:
maximumAbsoluteErrorfloat

Maximum allowed absolute error.

getMaximumConstraintError()

Accessor to maximum allowed constraint error.

Returns:
maximumConstraintErrorfloat

Maximum allowed constraint error.

getMaximumEvaluationNumber()

Accessor to maximum allowed number of evaluations.

Returns:
Nint

Maximum allowed number of evaluations

getMaximumRelativeError()

Accessor to maximum allowed relative error.

Returns:
maximumRelativeErrorfloat

Maximum allowed relative error.

getMaximumResidualError()

Accessor to maximum allowed residual error.

Returns:
maximumResidualErrorfloat

Maximum allowed residual error.

getMinimization()

Test whether this is a minimization or maximization problem.

Returns:
valuebool

True if this is a minimization problem (default), False otherwise.

getName()

Accessor to the object’s name.

Returns:
namestr

The name of the object.

getPhysicalModel()

Physical model accessor.

Returns:
modelPhysicalModel

Physical model

getPopulationSize()

Accessor to popSize.

Returns:
popSizeint

Initial population sample size.

getPythonScript()

Physical model accessor.

Returns:
scriptstr

Python script to replay the analysis

getRawEquations()

Accessor to constraints equations

Returns:
equationssequence of str

Constraints equations

getResult()

Accessor to result.

Returns:
resultMultiObjectiveOptimizationAnalysisResult

multi-objective analysis result.

getSeed()

Accessor to random generator seed.

Returns:
seedint

random generator seed for the evolving algorithm.

getShadowedId()

Accessor to the object’s shadowed id.

Returns:
idint

Internal unique identifier.

getSolverName()

Accessor to solver name

Returns:
solverstr

Solver name

getStartingPoint()

Accessor to starting point.

Returns:
startingPointPoint

Starting point.

getVariableInputs()

Accessor to variable input names

Returns:
inputsDescription

Variable input names. It is set by default to the list of inputs of the model.

getVisibility()

Accessor to the object’s visibility state.

Returns:
visiblebool

Visibility flag.

getWarningMessage()

Warning message accessor.

Returns:
messagestr

Warning message which can appear during the analysis computation

hasName()

Test if the object is named.

Returns:
hasNamebool

True if the name is not empty.

hasValidResult()

Whether the analysis has been run.

Returns:
hasValidResultbool

Whether the analysis has already been run

hasVisibleName()

Test if the object has a distinguishable name.

Returns:
hasVisibleNamebool

True if the name is not empty and not the default one.

isReliabilityAnalysis()

Whether the analysis involves reliability.

Returns:
isReliabilityAnalysisbool

Whether the analysis involves a reliability analysis

isRunning()

Whether the analysis is running.

Returns:
isRunningbool

Whether the analysis is running

resetConstraints()

Clears the current analysis constraints

run()

Launch the analysis.

setBounds(bounds)

Accessor to bounds.

Parameters:
boundsInterval

Problem bounds.

setGenerationNumber(generationNumber)

Accessor to the number of generations.

Parameters:
generationNumberint

number of generations for the evolving algorithm.

setInterestVariables(variablesNames)

Set the variables to analyse.

Parameters:
variablesNamessequence of str

Names of the variables to analyse

setMaximumAbsoluteError(maximumAbsoluteError)

Accessor to maximum allowed absolute error.

Parameters:
maximumAbsoluteErrorfloat

Maximum allowed absolute error.

setMaximumConstraintError(maximumConstraintError)

Accessor to maximum allowed constraint error.

Parameters:
maximumConstraintErrorfloat

Maximum allowed constraint error.

setMaximumEvaluationNumber(maximumEvaluationNumber)

Accessor to maximum allowed number of evaluations.

Parameters:
Nint

Maximum allowed number of evaluations.

setMaximumRelativeError(maximumRelativeError)

Accessor to maximum allowed relative error.

Parameters:
maximumRelativeErrorfloat

Maximum allowed relative error.

setMaximumResidualError(maximumResidualError)

Accessor to maximum allowed residual error.

Parameters:
maximumResidualErrorfloat

Maximum allowed residual error.

setMinimization(varNames)

Tell whether this is a minimization or maximization problem.

Parameters:
minimizationbool

True if this is a minimization problem, False otherwise.

setName(name)

Accessor to the object’s name.

Parameters:
namestr

The name of the object.

setPopulationSize(popSize)

Accessor to popSize.

Parameters:
popSizeint

Initial population sample size.

setSeed(seed)

Accessor to random generator seed.

Parameters:
seedint

random generator seed for the evolving algorithm.

setShadowedId(id)

Accessor to the object’s shadowed id.

Parameters:
idint

Internal unique identifier.

setSolverName(name)

Accessor to solver name

Parameters:
solverstr

Solver name. Use GetSolverNames() to list available names.

setStartingPoint(startingPoint)

Accessor to starting point.

Parameters:
startingPointsequence of float

Starting point.

setVariableInputs(inputs)

Accessor to variable input names

Parameters:
inputssequence of str

Variable input names. It is set by default to the list of inputs of the model.

setVisibility(visible)

Accessor to the object’s visibility state.

Parameters:
visiblebool

Visibility flag.

property thisown

The membership flag