allow only delays to avoid arms races between controller and optimizer by implicite ITA-improvements on center
This commit is contained in:
		| @@ -78,12 +78,18 @@ class RecedingHorizonControl: | ||||
|  | ||||
|             # check if we need to update the inbound | ||||
|             if None == plannedInbound.PlannedStar: | ||||
|                 if inbound.InitialArrivalTime < self.Windows[index].StartTime or inbound.InitialArrivalTime >= self.Windows[index].EndTime: | ||||
|                 reference = inbound.InitialArrivalTime | ||||
|                 if plannedInbound.InitialArrivalTime > reference: | ||||
|                     reference = plannedInbound.InitialArrivalTime | ||||
|  | ||||
|                 if reference < self.Windows[index].StartTime or reference >= self.Windows[index].EndTime: | ||||
|                     self.Windows[index].remove(inbound.Callsign) | ||||
|                     self.AssignedWindow.pop(inbound.Callsign) | ||||
|                     inbound.InitialArrivalTime = reference | ||||
|                     self.updateReport(inbound) | ||||
|                 else: | ||||
|                     plannedInbound.InitialArrivalTime = inbound.InitialArrivalTime | ||||
|                     plannedInbound.InitialArrivalTime = reference | ||||
|                     self.Windows[index].Inbounds.sort(key = lambda x: x.PlannedArrivalTime if None != x.PlannedArrivalTime else x.InitialArrivalTime) | ||||
|         else: | ||||
|             self.insertInWindow(inbound, False) | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user