static void Main(string[] args) { int populationSize = 10; int numberOfEpoch = 50; int numberOfExecution = 1; double probabilityOfMutation = 0.1; string file = @"WesternSahara.txt"; Cities testCities = new Cities(file); IParentSelection parentSelection = new TournamentSelection(); ICrossover crossover = new PMX(); IMutation mutation = new InsertionMutation(probabilityOfMutation); string filename = DateTime.Now.ToString("yyyy-MM-dd HH;mm"); //Test 1 - PMX TSPAlgorithm tsp = new TSPAlgorithm(numberOfEpoch, populationSize, testCities, parentSelection, mutation, crossover); AlgorithmExecutor AE = new AlgorithmExecutor(tsp, numberOfExecution); AE.Start(); AE.SaveInformations(filename + ".txt"); //AE.ExportStatisticsToCsv(filename + "_stats.csv"); /* Test 2 - CX * crossover = new CX(); * tsp = new TSPAlgorithm(numberOfEpoch, populationSize, testCities, parentSelection, mutation, crossover); * AE = new AlgorithmExecutor(tsp, numberOfExecution); * AE.Start(); * AE.SaveInformations(filename + ".txt"); * AE.ExportStatisticsToCsv(filename + "_stats.csv"); * * // Test 3 - OX * crossover = new OX(); * tsp = new TSPAlgorithm(numberOfEpoch, populationSize, testCities, parentSelection, mutation, crossover); * AE = new AlgorithmExecutor(tsp, numberOfExecution); * AE.Start(); * AE.SaveInformations(filename + ".txt"); * AE.ExportStatisticsToCsv(filename + "_stats.csv"); * * // Test 4 - AEX * crossover = new AEX(); * tsp = new TSPAlgorithm(numberOfEpoch, populationSize, testCities, parentSelection, mutation, crossover); * AE = new AlgorithmExecutor(tsp, numberOfExecution); * AE.Start(); * AE.SaveInformations(filename + ".txt"); * AE.ExportStatisticsToCsv(filename + "_stats.csv"); * * // Test 5 - SCC * crossover = new SCC(); * tsp = new TSPAlgorithm(numberOfEpoch, populationSize, testCities, parentSelection, mutation, crossover); * AE = new AlgorithmExecutor(tsp, numberOfExecution); * AE.Start(); * AE.SaveInformations(filename + ".txt"); * AE.ExportStatisticsToCsv(filename + "_stats.csv"); * * //Test 6 - SCC * crossover = new ClassicalCrossover(); * mutation = new ClassicMutationInOrdinalRepresentation(probabilityOfMutation); * tsp = new TSPAlgorithm(numberOfEpoch, populationSize, testCities, parentSelection, mutation, crossover); * AE = new AlgorithmExecutor(tsp, numberOfExecution); * AE.Start(); * //AE.SaveInformations(filename + ".txt"); * //AE.ExportStatisticsToCsv(filename + "_stats.csv"); */ Console.ReadKey(); }