From 5ff0c89688bf69cbd1b74d24894d8afa1a081446 Mon Sep 17 00:00:00 2001 From: emil Date: Wed, 27 Nov 2024 16:21:09 +0300 Subject: [PATCH] Correct I/O. switch to manual I\O needed --- Main.java | 29 +++++++---------------------- 1 file changed, 7 insertions(+), 22 deletions(-) diff --git a/Main.java b/Main.java index b0ada6b..1d37382 100644 --- a/Main.java +++ b/Main.java @@ -48,33 +48,18 @@ public class Main { // Критерий завершения (если найдено идеальное решение) if (bestSolution.getFitness() == 0) { System.out.println("Optimal solution found in generation " + generation); - break; + System.out.println("Final Solution:"); + bestSolution.printChromosome(false); + System.out.println("Fitness: " + bestSolution.getFitness()); + return; } } - // Вывод финального решения - if (bestSolution != null) { - System.out.println("Final Solution:"); - bestSolution.printChromosome(false); - System.out.println("Fitness: " + bestSolution.getFitness()); - } + - // Пример использования турнирной селекции - List parents = mainInstance.tournamentSelection(5); - System.out.println("Selected Parents:"); - for (Chromosome parent : parents) { - parent.printChromosome(false); - System.out.println("Fitness: " + parent.getFitness()); - } - // Пример использования кроссовера по подрешеткам - Chromosome child = mainInstance.crossoverBySubgrids(parents.get(0), parents.get(1)); - // Пример мутации - mainInstance.mutateChromosome(child, 0.05); // Мутация с вероятностью 5% - System.out.println("Child Chromosome:"); - child.printChromosome(false); - System.out.println("Fitness: " + child.getFitness()); - System.out.println("Fitness: " + child.getFitness()); + + }