/* * Copyright © 2010 by Ondrej Skalicka. All Rights Reserved */ package demopackage; import cz.cvut.felk.cig.jcop.algorithm.graphsearch.bfs.BreadthFirstSearch; import cz.cvut.felk.cig.jcop.algorithm.graphsearch.dfs.DepthFirstSearch; import cz.cvut.felk.cig.jcop.algorithm.simulatedannealing.SimulatedAnnealing; import cz.cvut.felk.cig.jcop.problem.sat.SAT; import cz.cvut.felk.cig.jcop.result.render.SimpleRender; import cz.cvut.felk.cig.jcop.result.render.XMLRender; 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 Ondrej Skalicka */ public class DemoRender { public static void main(String[] args) throws IOException { AlgorithmCompareSolver solver = new AlgorithmCompareSolver(new SAT(new File("data/sat/valid-standard.cnf"))); // add algorithms solver.addAlgorithm(new DepthFirstSearch()); solver.addAlgorithm(new BreadthFirstSearch()); solver.addAlgorithm(new SimulatedAnnealing()); solver.addAlgorithm(new SimulatedAnnealing(100, 0.999)); solver.addAlgorithm(new SimulatedAnnealing(10, 0.90)); // add stop condition solver.addStopCondition(new TimeoutCondition(100)); // every algorithm 100 ms solver.run(); // output to console solver.addRender(new SimpleRender(SimpleRender.OUTPUT_MINI)); // output to xml file solver.addRender(new XMLRender(new File("../demo/data/demo-output.xml"))); // render results solver.render(); } }