public Problem(IComponentInvalidator <T> invalidator, IHeuristicsCalculator <T> calculator, ISolutionQualityEvaluator <T> evaluator, ILocalSearch <T> localSearch) { this._invalidator = invalidator; this._calculator = calculator; this._evaluator = evaluator; this._localSearch = localSearch; }
public GRASPManager(List <Instance> dataset, int vehicleCount, float vehicleCapacity) { this.vehicleCapacity = vehicleCapacity; this.vehicleCount = vehicleCount; this.dataset = dataset; InitVehicleCapacityAndTW(); distanceCalculator = new DistanceCalculator(); evaluator = new Evaluator(); greedyAlgorithm = new GreedyAlgorithm(dataset, distanceCalculator, evaluator); penaltyCalculator = new PenaltyCalculator(); localSearchTwoOpt = new LocalSearchTwoOpt(); localSearchSwap = new LocalSearchSwap(); }