pyanno4rt.optimization.solvers.configurations._configure_pymoo
Pymoo algorithm configuration.
Overview
Pymoo optimization problem class. |
|
Configure the Pymoo solver. |
Classes
- class pyanno4rt.optimization.solvers.configurations._configure_pymoo.PymooProblem(number_of_variables, number_of_objectives, number_of_constraints, problem_instance, lower_variable_bounds, upper_variable_bounds, lower_constraint_bounds, upper_constraint_bounds)[source]
Bases:
pymoo.core.problem.ElementwiseProblemPymoo optimization problem class.
This class provides a Pymoo-compatible structure of the problem and a method to evaluate the fitness of the solution in each iteration.
- Parameters:
number_of_variables (int) – Number of decision variables.
number_of_objectives (int) – Number of objective functions.
number_of_constraints (int) – Number of constraint functions.
problem_instance (object of class
ParetoOptimizationThe object representing the optimization problem.)lower_variable_bounds (list) – Lower bounds on the decision variables.
upper_variable_bounds (list) – Upper bounds on the decision variables.
lower_constraint_bounds (list) – Lower bounds on the constraints.
upper_constraint_bounds (list) – Upper bounds on the constraints.
- problem_instance
See ‘Parameters’.
- Type:
object of class
ParetoOptimization
Notes
Fitness evaluation is based on a modification suggested in the paper by Pang et al. (2020): DOI 10.1109/ACCESS.2020.3032240.
Functions
- pyanno4rt.optimization.solvers.configurations._configure_pymoo.configure_pymoo(number_of_variables, number_of_objectives, number_of_constraints, problem_instance, lower_variable_bounds, upper_variable_bounds, lower_constraint_bounds, upper_constraint_bounds, algorithm, initial_fluence, max_iter, tolerance)[source]
Configure the Pymoo solver.
Supported algorithms: NSGA-3.
- Parameters:
number_of_variables (int) – Number of decision variables.
number_of_objectives (int) – Number of objective functions.
number_of_constraints (int) – Number of constraint functions.
problem_instance (object of class
ParetoOptimizationThe object representing the optimization problem.)lower_variable_bounds (list) – Lower bounds on the decision variables.
upper_variable_bounds (list) – Upper bounds on the decision variables.
lower_constraint_bounds (list) – Lower bounds on the constraints.
upper_constraint_bounds (list) – Upper bounds on the constraints.
algorithm (str) – Label for the solution algorithm.
initial_fluence (ndarray) – Initial fluence vector.
max_iter (int) – Maximum number of iterations.
tolerance (float) – Precision goal for the objective function value.
- Returns:
fun (callable) – Minimization function from the Pymoo library.
algorithm_object (object of class from
pymoo.algorithms) – The object representing the solution algorithm.problem (object of class from
pymoo.core.problem) – The object representing the Pymoo-compatible structure of the multi-objective (Pareto) optimization problem.termination (object of class from
pymoo.termination) – The object representing the termination criterion.