edu.mit.ll.group43.surfaceoptimization.dp.factory.cost
Class AllGapsSpotCostStrategy
java.lang.Object
edu.mit.ll.group43.surfaceoptimization.dp.factory.cost.CostStrategy
edu.mit.ll.group43.surfaceoptimization.dp.factory.cost.SpotCostStrategy
edu.mit.ll.group43.surfaceoptimization.dp.factory.cost.OneGapSpotCostStrategy
edu.mit.ll.group43.surfaceoptimization.dp.factory.cost.AllGapsSpotCostStrategy
- Direct Known Subclasses:
- SmartAllGapsSpotCostStrategy
public class AllGapsSpotCostStrategy
- extends OneGapSpotCostStrategy
The spot cost strategy for the All Gaps algorithm. This algorithm considers
each gap in the projected takeoff sequence when scheduling the current aircraft,
only taking into account gaps that are already large enough to fit the current
aircraft without having to reschedule previously solved for aircraft.
- Author:
- William Hawkins
Method Summary |
int |
earliestRelease(NetworkEdge edge)
Determines the earliest time at which the last aircraft of the target node
of the given network edge can be released from the spot. |
int |
earliestRelease(NetworkEdge edge,
java.util.ArrayList<Aircraft> sortedTakeOffs)
Determines the earliest time at which the last aircraft of the target node
of the given network edge can be released from the spot. |
int |
safePrevTimeBound(CPSNetworkNode prevNode,
Aircraft current)
Returns the "predecessor bound" for the current aircraft. |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
AllGapsSpotCostStrategy
public AllGapsSpotCostStrategy(int cps,
MinimumSeparationCalculator<? extends WeightClass> calc)
safePrevTimeBound
public int safePrevTimeBound(CPSNetworkNode prevNode,
Aircraft current)
- Returns the "predecessor bound" for the current aircraft.
- Parameters:
prevNode
- current
-
- Returns:
earliestRelease
public int earliestRelease(NetworkEdge edge,
java.util.ArrayList<Aircraft> sortedTakeOffs)
- Determines the earliest time at which the last aircraft of the target node
of the given network edge can be released from the spot. Considers all gaps
between takeoffs in the given takeoff sequence and tries to fit the current
aircraft into the earliest one it can. Failing that, it sends it as early
as it can to minimize how long it takes off after the last projected takeoff
time, while respecting the optimal spot release time of this aircraft's
direct predecessor in the CPS spot release sequence.
- Parameters:
edge
- sortedTakeOffs
-
earliestRelease
public int earliestRelease(NetworkEdge edge)
- Determines the earliest time at which the last aircraft of the target node
of the given network edge can be released from the spot. Considers all gaps
between takeoffs in the current projected takeoff sequence and tries to fit
the current aircraft into the earliest one it can. Failing that, it sends it
as early as it can to minimize how long it takes off after the last projected
takeoff time, while respecting the optimal spot release time of this aircraft's
direct predecessor in the CPS spot release sequence.
- Overrides:
earliestRelease
in class OneGapSpotCostStrategy
- Returns: