Class ProductionOptimizer.ParetoPoint

java.lang.Object
neqsim.process.util.optimizer.ProductionOptimizer.ParetoPoint
Enclosing class:
ProductionOptimizer

public static final class ProductionOptimizer.ParetoPoint extends Object
A single point on the Pareto front representing a non-dominated solution.
Version:
1.0
Author:
NeqSim Development Team
  • Field Details

  • 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 point
      objectiveValues - the objective function values at this point
      weights - the weight combination used to find this point
      feasible - whether this point satisfies all constraints
      fullResult - the full optimization result for this point
  • Method Details

    • getDecisionVariables

      public Map<String,Double> getDecisionVariables()
    • getObjectiveValues

      public Map<String,Double> 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 compare
      objectiveTypes - map of objective names to their types (MAXIMIZE/MINIMIZE)
      Returns:
      true if this point dominates the other