Class Objective

java.lang.Object
jline.opt.objectives.Objective
Direct Known Subclasses:
MaximizePerformance, MinimizeCost, MinimizeSystemResponseTime

public abstract class Objective extends Object
Abstract base for line-opt objectives. An objective defines the scalar to minimize, optionally with attached constraints folded in as penalties by evaluateWithPenalty(jline.opt.results.EvaluationResult, java.util.Map<java.lang.String, java.lang.Object>, double). Mirrors native-Python line_solver.opt.objectives.Objective.
  • Field Details

  • Constructor Details

    • Objective

      public Objective()
  • Method Details

    • getConstraints

      public List<Constraint> getConstraints()
    • evaluate

      public abstract double evaluate(EvaluationResult result, Map<String,Object> variableValues)
      The scalar to minimize (before constraint penalties).
    • isMinimization

      public abstract boolean isMinimization()
    • evaluateWithPenalty

      public double evaluateWithPenalty(EvaluationResult result, Map<String,Object> variableValues, double penaltyWeight)
      Objective value plus penalty_weight times total constraint violation.