Class CapacityOverloadAutoFilterConstraint

java.lang.Object
com.dna.jopt.member.unit.filter.auto.filternodeconstraint.AbstractAutoFilterConstraint
com.dna.jopt.member.unit.filter.auto.filternodeconstraint.CapacityOverloadAutoFilterConstraint
All Implemented Interfaces:
IAutoFilterNodeConstraint, Serializable

public class CapacityOverloadAutoFilterConstraint extends AbstractAutoFilterConstraint
See Also:
  • Field Details

  • Constructor Details

    • CapacityOverloadAutoFilterConstraint

      public CapacityOverloadAutoFilterConstraint()
  • Method Details

    • getTitle

      public String getTitle()
      Specified by:
      getTitle in class AbstractAutoFilterConstraint
    • getQuotient

      public double getQuotient(IAutoFilterViolationAndConstrainCollector collector)
      Specified by:
      getQuotient in class AbstractAutoFilterConstraint
    • getThreshold

      public double getThreshold()
      Description copied from interface: IAutoFilterNodeConstraint
      Gets the threshold of the Node which the constraint factor has to reach in order to be filtered out.

      The Nodes are evaluated several times whether they are in a constraint state or not. The factor of being in a constraint state is calculated by number of evaluation divided by the times the Node was in a constraint state. The value is usually between 0.99 and 0.8

      Returns:
      the threshold
    • getThresholdLastRun

      public double getThresholdLastRun()
      Description copied from interface: IAutoFilterNodeConstraint
      Gets the threshold from the last run which usually is set to be lower, usually between 0.8 and 0.4.

      The very last run of an optimization should have as few problems as possible. This is why the threshold in the last run is lower in order to filter as many problematic Nodes as possible.

      Returns:
      the treshold
    • getAttachedCost

      public double getAttachedCost(INode node, ILogicEntityRoute curRoute, IEntity en, com.dna.jopt.framework.inputplausibility.properties.IPropertyProvider provider)
      Specified by:
      getAttachedCost in class AbstractAutoFilterConstraint
    • isAverageFilteringAllowed

      public boolean isAverageFilteringAllowed()
      Description copied from interface: IAutoFilterNodeConstraint
      Checks whether average filtering is allowed for cases where the Route has problems but no single Node is above the threshold. Average filtering filters the most problematic Node even tough it is not above the threshold.
      Specified by:
      isAverageFilteringAllowed in interface IAutoFilterNodeConstraint
      Overrides:
      isAverageFilteringAllowed in class AbstractAutoFilterConstraint
      Returns:
      whether average filtering is allowed