/* * Copyright © 2010 by Oleg Kovarik, Ondrej Skalicka. All Rights Reserved */ package demopackage; import cz.cvut.felk.cig.jcop.algorithm.noisingmethod.NoisingMethod; import cz.cvut.felk.cig.jcop.algorithm.simulatedannealing.SimulatedAnnealing; import cz.cvut.felk.cig.jcop.problem.tspfast.FastTSP; import cz.cvut.felk.cig.jcop.result.render.ExceptionRender; import cz.cvut.felk.cig.jcop.result.render.JFreeChartRender; import cz.cvut.felk.cig.jcop.result.render.SimpleCompareRender; import cz.cvut.felk.cig.jcop.solver.AlgorithmCompareSolver; import cz.cvut.felk.cig.jcop.solver.condition.TimeoutCondition; import java.io.File; import java.io.IOException; /** * @author Oleg Kovarik */ public class DemoJFreeChartTSP { public static void main(String[] args) throws IOException { // AlgorithmCompareSolver solver = new AlgorithmCompareSolver(new TSPInverting(new File("data/tsp/berlin52.tsp"))); AlgorithmCompareSolver solver = new AlgorithmCompareSolver(new FastTSP(new File("data/tsp/dsj1000.tsp"))); /* solver.addAlgorithm(new SimulatedAnnealing(10, 0.09)); solver.addAlgorithm(new SimulatedAnnealing(10, 0.9)); solver.addAlgorithm(new SimulatedAnnealing(10, 0.99)); solver.addAlgorithm(new SimulatedAnnealing(10, 0.999)); solver.addAlgorithm(new SimulatedAnnealing(10, 0.9999)); solver.addAlgorithm(new SimulatedAnnealing(100, 0.09)); solver.addAlgorithm(new SimulatedAnnealing(100, 0.9)); solver.addAlgorithm(new SimulatedAnnealing(100, 0.99)); solver.addAlgorithm(new SimulatedAnnealing(100, 0.999)); solver.addAlgorithm(new SimulatedAnnealing(100, 0.9999)); */ solver.addAlgorithm(new SimulatedAnnealing(100, 0.9)); solver.addAlgorithm(new SimulatedAnnealing(100, 0.999)); //solver.addAlgorithm(new GeneticAlgorithm(16, 0.2)); //solver.addAlgorithm(new RandomSearch()); //solver.addAlgorithm(new NoisingMethod(1.0, 0.9)); solver.addAlgorithm(new NoisingMethod(1.0, 0.99999)); solver.addStopCondition(new TimeoutCondition(30000)); // every problem 20000 iterations solver.addListener(new JFreeChartRender("Demo JFreeChartRender")); solver.addRender(new SimpleCompareRender()); solver.addRender(new ExceptionRender()); solver.run(); solver.render(); } }