public void Start(string fileInput, string fileOutput, int timeLimit) { TSPInstance instance = new TSPInstance(fileInput); // Setting the parameters of the PSO for this instance of the problem. int[] lowerBounds = new int[instance.NumberCities]; int[] upperBounds = new int[instance.NumberCities]; for (int i = 0; i < instance.NumberCities; i++) { lowerBounds[i] = 0; upperBounds[i] = instance.NumberCities - 1; } DiscretePSO pso = new DiscretePSO4TSP(instance, (int)particlesCount, prevConf, neighConf, lowerBounds, upperBounds); // Solving the problem and writing the best solution found. pso.Run(timeLimit - (int)timePenalty); TSPSolution solution = new TSPSolution(instance, pso.BestPosition); solution.Write(fileOutput); }