update the constructor

This commit is contained in:
Sven Czarnian
2021-10-17 17:44:06 +02:00
parent 7a1d4a5959
commit 1b2003e879
2 changed files with 12 additions and 11 deletions

View File

@@ -116,10 +116,10 @@ class Worker(Thread):
preceedingInbounds[runway.Runway.Name] = inbound
# configure the ACO run
acoConfig = Configuration(earliestArrivalTime, self.sequencingConfiguration, 5 * len(relevantInbounds), 5 * len(relevantInbounds))
if 0 != len(preceedingInbounds):
acoConfig.PreceedingInbounds = preceedingInbounds
acoConfig.Inbounds = relevantInbounds
acoConfig = Configuration(constraints = self.sequencingConfiguration, inbounds = relevantInbounds,
earliest = earliestArrivalTime, weather = self.WeatherModel,
preceeding = None if 0 == len(preceedingInbounds) else preceedingInbounds,
ants = 5 * len(relevantInbounds), generations = 5 * len(relevantInbounds))
# perform the ACO run
aco = Colony(acoConfig)

View File

@@ -5,16 +5,17 @@ from datetime import datetime
from aman.config.AirportSequencing import AirportSequencing
class Configuration:
def __init__(self, earliestArrivalTime : datetime, runwayInfo : AirportSequencing, antCount : int, explorationCount : int):
def __init__(self, **kwargs):
# the AMAN specific information
self.RunwayConstraints = runwayInfo
self.PreceedingInbounds = None
self.Inbounds = None
self.EarliestArrivalTime = earliestArrivalTime
self.RunwayConstraints = kwargs.get('constraints', None)
self.PreceedingInbounds = kwargs.get('preceeding', None)
self.Inbounds = kwargs.get('inbounds', None)
self.EarliestArrivalTime = kwargs.get('earliest', None)
self.WeatherModel = kwargs.get('weather', None)
# the ACO specific information
self.AntCount = antCount
self.ExplorationRuns = explorationCount
self.AntCount = kwargs.get('ants', 20)
self.ExplorationRuns = kwargs.get('generations', 20)
self.PheromoneEvaporationRate = 0.9
self.PseudoRandomSelectionRate = 0.9
self.propagationRatio = 0.9