gemseo_pseven

Show inherited members

lib_pseven module

Wrapper for the Generic Tool for Optimization (GTOpt) of pSeven Core.

class gemseo_pseven.lib_pseven.PSevenAlgorithmDescription(algorithm_name, internal_algorithm_name, library_name='pSeven', description='', website='https://datadvance.net/product/pseven/manual/', handle_integer_variables=False, require_gradient=False, handle_equality_constraints=False, handle_inequality_constraints=False, handle_multiobjective=False, positive_constraints=False, problem_type=ProblemType.NON_LINEAR)[source]

Bases: OptimizationAlgorithmDescription

The description of an optimization algorithm from the NLopt library.

Parameters:
  • algorithm_name (str)

  • internal_algorithm_name (str)

  • library_name (str) –

    By default it is set to “pSeven”.

  • description (str) –

    By default it is set to “”.

  • website (str) –

    By default it is set to “https://datadvance.net/product/pseven/manual/”.

  • handle_integer_variables (bool) –

    By default it is set to False.

  • require_gradient (bool) –

    By default it is set to False.

  • handle_equality_constraints (bool) –

    By default it is set to False.

  • handle_inequality_constraints (bool) –

    By default it is set to False.

  • handle_multiobjective (bool) –

    By default it is set to False.

  • positive_constraints (bool) –

    By default it is set to False.

  • problem_type (OptimizationProblem.ProblemType) –

    By default it is set to “non-linear”.

algorithm_name: str

The name of the algorithm in GEMSEO.

internal_algorithm_name: str

The name of the algorithm in the wrapped library.

library_name: str = 'pSeven'

The name of the wrapped library.

website: str = 'https://datadvance.net/product/pseven/manual/'

The website of the wrapped library or algorithm.

class gemseo_pseven.lib_pseven.PSevenOpt[source]

Bases: OptimizationLibrary

Interface for the Generic Tool for Optimization (GTOpt) of pSeven Core.

Notes

The missing current values of the DesignSpace attached to the OptimizationProblem are automatically initialized with the method DesignSpace.initialize_missing_current_values().

LIBRARY_NAME: ClassVar[str | None] = 'pSeven'

The name of the interfaced library.

LIB_COMPUTE_GRAD = True
OPTIONS_MAP: ClassVar[dict[str, str]] = {'constraints_smoothness': 'GTOpt/ConstraintsSmoothness', 'detect_nan_clusters': 'GTOpt/DetectNaNClusters', 'deterministic': 'GTOpt/Deterministic', 'diff_scheme': 'GTOpt/DiffScheme', 'diff_step': 'GTOpt/NumDiffStepSize', 'diff_type': 'GTOpt/DiffType', 'ensure_feasibility': 'GTOpt/EnsureFeasibility', 'global_phase_intensity': 'GTOpt/GlobalPhaseIntensity', 'local_search': 'GTOpt/LocalSearch', 'log_level': 'GTOpt/LogLevel', 'max_batch_size': 'GTOpt/BatchSize', 'max_expensive_func_iter': 'GTOpt/MaximumExpensiveIterations', 'max_func_iter': 'GTOpt/MaximumIterations', 'max_threads': 'GTOpt/MaxParallel', 'objectives_smoothness': 'GTOpt/ObjectivesSmoothness', 'responses_scalability': 'GTOpt/ResponsesScalability', 'restore_analytic_func': 'GTOpt/RestoreAnalyticResponses', 'seed': 'GTOpt/Seed', 'time_limit': 'GTOpt/TimeLimit', 'verbose_log': 'GTOpt/VerboseOutput'}

The names of the options in GEMSEO mapping to those in the wrapped library.

algo_name: str | None

The name of the algorithm used currently.

descriptions: dict[str, AlgorithmDescription]

The description of the algorithms contained in the library.

internal_algo_name: str | None

The internal name of the algorithm used currently.

It typically corresponds to the name of the algorithm in the wrapped library if any.

option_grammar: JSONGrammar | None

The grammar defining the options of the current algorithm.

problem: OptimizationProblem

The optimization problem the driver library is bonded to.