Class ProductionOptimizer.ParetoPoint
java.lang.Object
neqsim.process.util.optimizer.ProductionOptimizer.ParetoPoint
- Enclosing class:
ProductionOptimizer
A single point on the Pareto front representing a non-dominated solution.
- Version:
- 1.0
- Author:
- NeqSim Development Team
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final booleanprivate final ProductionOptimizer.OptimizationResultprivate final double[] -
Constructor Summary
ConstructorsConstructorDescriptionParetoPoint(Map<String, Double> decisionVariables, Map<String, Double> objectiveValues, double[] weights, boolean feasible, ProductionOptimizer.OptimizationResult fullResult) Constructs a Pareto point. -
Method Summary
Modifier and TypeMethodDescriptionbooleandominates(ProductionOptimizer.ParetoPoint other, Map<String, ProductionOptimizer.ObjectiveType> objectiveTypes) Checks if this point dominates another point (all objectives at least as good, one strictly better).double[]boolean
-
Field Details
-
decisionVariables
-
objectiveValues
-
weights
private final double[] weights -
feasible
private final boolean feasible -
fullResult
-
-
Constructor Details
-
ParetoPoint
public ParetoPoint(Map<String, Double> decisionVariables, Map<String, Double> objectiveValues, double[] weights, boolean feasible, ProductionOptimizer.OptimizationResult fullResult) Constructs a Pareto point.- Parameters:
decisionVariables- the decision variable values at this pointobjectiveValues- the objective function values at this pointweights- the weight combination used to find this pointfeasible- whether this point satisfies all constraintsfullResult- the full optimization result for this point
-
-
Method Details
-
getDecisionVariables
-
getObjectiveValues
-
getWeights
public double[] getWeights() -
isFeasible
public boolean isFeasible() -
getFullResult
-
dominates
public boolean dominates(ProductionOptimizer.ParetoPoint other, Map<String, ProductionOptimizer.ObjectiveType> objectiveTypes) Checks if this point dominates another point (all objectives at least as good, one strictly better).- Parameters:
other- the other point to compareobjectiveTypes- map of objective names to their types (MAXIMIZE/MINIMIZE)- Returns:
- true if this point dominates the other
-