All pastes #257040 Raw Edit

Unnamed

public java v1 · immutable
#257040 ·published 2006-11-24 22:29 UTC
rendered paste body
package tsp;import java.awt.*;import java.io.PrintStream;import tsp.*;public class TSP{    private static final int MAX_POINTS = 200;    private static final int MAXTIME = 30;    private static final String MAP_FILE_NAME = ".";    private static final int POPULATION = 200;        TSPMap map;	TSPTour tour;    Thread worker;    boolean threadWorking;    public static void main(String args[])    {        if(args.length > 0 && (args[0].equals("-h") || args.length < 3))        {            System.out.println("TSP <#city> <population> <maxtime>");            return;        }        if(args.length > 0)        {            MAX_POINTS = Integer.parseInt(args[0]);            POPULATION = Integer.parseInt(args[1]);            MAXTIME = Integer.parseInt(args[2]);        }        TSP tsp = new TSP();		tsp.doGa();    }		public void doGa()    {        if(!threadWorking)        {            worker = new Thread() {                public void run()                {                    TSPGeneticSolver tsp = new TSPGeneticSolver(map, 200);                    tour = tsp.getSolution();                    long startT = System.currentTimeMillis();                    for(int i = 0; (System.currentTimeMillis() - startT) / 1000L < (long)TSP.MAXTIME; i++)                    {                        tsp.doOneGeneration();                        tour = tsp.getSolution();                        System.out.println("Calculating (" + i + "): " + tsp.getSolution().getLength());                    }                    System.out.println("T:    " + (System.currentTimeMillis() - startT) / 1000L);                    System.out.println("GA-O: " + tsp.getSolution().getLength());                    threadWorking = false;                }            };            worker.start();            threadWorking = true;        }    }}