Class DefaultFastLowerBound<T>

java.lang.Object
org.ddolib.modeling.DefaultFastLowerBound<T>
Type Parameters:
T - the type representing the problem state
All Implemented Interfaces:
FastLowerBound<T>

public class DefaultFastLowerBound<T> extends Object implements FastLowerBound<T>
Default implementation of the FastLowerBound interface that always returns Integer.MIN_VALUE as the lower bound estimate.

This implementation can be used as a placeholder or a fallback when no meaningful fast lower bound heuristic is available for a given problem. It effectively disables lower bound pruning since the returned value is the smallest possible integer.

In practice, a fast lower bound is a lightweight estimation of the minimal achievable objective value from a given state and set of remaining variables. This default implementation deliberately returns the lowest possible value, ensuring that no pruning occurs based on this bound.

See Also:
  • Constructor Details

    • DefaultFastLowerBound

      public DefaultFastLowerBound()
  • Method Details

    • fastLowerBound

      public double fastLowerBound(T state, Set<Integer> variables)
      Computes a trivial fast lower bound for the given state and remaining variables.

      This default implementation always returns Integer.MIN_VALUE, effectively indicating that no lower bound information is available.

      Specified by:
      fastLowerBound in interface FastLowerBound<T>
      Parameters:
      state - the current state for which the lower bound is estimated
      variables - the set of remaining variable indices yet to be assigned
      Returns:
      always Integer.MIN_VALUE