private static void runTest() { StringReversalFitness fitness = new StringReversalFitness(); Generator generator = new BitGeneStringGenerator(); GeneratorParameters generatorParameters = new GeneratorParameters(null, 100, 100, true, null); BasicGeneticInstanceParameters bgiParams = new BasicGeneticInstanceParameters(generator, generatorParameters, fitness); BasicGeneticRunParameters bgrParams = new BasicGeneticRunParameters(20, 0.7d, 5, 0.3d, false); BasicGenetics basicGenetics = new BasicGenetics(null, bgiParams); RandomRestartInstanceParameters rriParams = new RandomRestartInstanceParameters(13000000); RandomRestartRunParameters rrrParams = new RandomRestartRunParameters(basicGenetics, bgiParams, bgrParams, 1, 200, true); RandomRestartGenetics randomRestartGenetics = new RandomRestartGenetics(null, rriParams); int bestFitness = randomRestartGenetics.run(rrrParams); GeneString bestResult = randomRestartGenetics.getBest(); Console.WriteLine("best result: " + bestFitness); List<Swap> swaps = new StringReversalSemantics().parse(bestResult); Console.WriteLine(swaps.Count); int num = 0; for (int n = 0; n < 10; n++) { num = num * 10 + n; showTest(num + "", swaps); } showTest("Hello World", swaps); showTest("Wajoo", swaps); showTest("Werkt Aardig", swaps); }
public RandomRestartGenetics(GeneString[] initial, RandomRestartInstanceParameters parameters) { this.initial = initial; this.goalValue = parameters.startingGoal; }