Class RegretKScoringFunctionFactory

java.lang.Object
com.graphhopper.jsprit.core.algorithm.recreate.RegretKScoringFunctionFactory

public class RegretKScoringFunctionFactory extends Object
Factory for creating RegretKScoringFunction instances.
  • Constructor Details

    • RegretKScoringFunctionFactory

      public RegretKScoringFunctionFactory()
  • Method Details

    • create

      public static RegretKScoringFunction create(RegretKScoringFunctionFactory.Strategy strategy, int k, ScoringFunction additionalScorer)
      Creates a regret-k scoring function with the specified strategy.
      Parameters:
      strategy - the scoring strategy to use
      k - the number of alternatives to consider (use -1 or Integer.MAX_VALUE for "all")
      additionalScorer - additional scoring function for tie-breaking (can be null)
      Returns:
      the configured scoring function
    • create

      public static RegretKScoringFunction create(String strategyName, int k, ScoringFunction additionalScorer)
      Creates a regret-k scoring function from a strategy name string.
      Parameters:
      strategyName - the strategy name ("sum", "max", or "avg")
      k - the number of alternatives to consider
      additionalScorer - additional scoring function for tie-breaking (can be null)
      Returns:
      the configured scoring function
    • parseStrategy

      public static RegretKScoringFunctionFactory.Strategy parseStrategy(String strategyName)
      Parses a strategy name string to a Strategy enum.
      Parameters:
      strategyName - the strategy name (case-insensitive)
      Returns:
      the corresponding Strategy enum
      Throws:
      IllegalArgumentException - if the strategy name is not recognized
    • createRegret2

      public static RegretKScoringFunction createRegret2(ScoringFunction additionalScorer)
      Creates a backward-compatible regret-2 scoring function using the sum strategy.
      Parameters:
      additionalScorer - additional scoring function for tie-breaking
      Returns:
      a regret-2 sum scoring function