46 lines
1.6 KiB
Java
46 lines
1.6 KiB
Java
import domain.annealing.SimulatedAnnealing;
|
|
import domain.ant_colony.AntColonyOptimization;
|
|
import domain.binary.algorithm.AbstractGeneticAlgorithm;
|
|
import domain.binary.algorithm.AlgorithmEngine;
|
|
import domain.binary.algorithm.CustomGeneticAlgorithm;
|
|
import domain.binary.algorithm.SimpleGeneticAlgorithm;
|
|
|
|
import java.util.Scanner;
|
|
|
|
public class Main {
|
|
public static void main(String[] args) {
|
|
|
|
Scanner in = new Scanner(System.in);
|
|
System.out.println("Run algorithm:");
|
|
System.out.println("1 - Simulated Annealing");
|
|
System.out.println("2 - Simple Genetic Algorithm");
|
|
System.out.println("3 - Ant Colony");
|
|
int decision = in.nextInt();
|
|
switch (decision) {
|
|
case 1:
|
|
System.out.println("Optimized distance for travel: " + SimulatedAnnealing.simulateAnnealing(10, 10000, 0.9995));
|
|
break;
|
|
case 2:
|
|
AbstractGeneticAlgorithm ga = new SimpleGeneticAlgorithm(
|
|
15,
|
|
0.5,
|
|
0.025,
|
|
5,
|
|
true,
|
|
"1011000100000100010000100000100111001000000100000100000000001111"
|
|
);
|
|
AlgorithmEngine.start(ga);
|
|
break;
|
|
case 3:
|
|
AntColonyOptimization antColony = new AntColonyOptimization(21);
|
|
antColony.startAntOptimization();
|
|
break;
|
|
default:
|
|
System.out.println("Unknown option");
|
|
break;
|
|
}
|
|
in.close();
|
|
|
|
}
|
|
}
|