mtg-genetic-deckbuilding

Generating and improving Magic: The Gathering decks using a genetic algorithm
git clone https://kevincorvisier.fr/git/mtg-genetic-deckbuilding.git
Log | Files | Refs | LICENSE

commit 0d5c6823e2fbe0fbda52fa373223758f18ebd8e5
parent 2a96e3512fe89491bf566c3582037a22d9cd4998
Author: Kevin Corvisier <git@kevincorvisier.fr>
Date:   Fri, 10 Jan 2025 18:03:11 +0900

Fix elite individual's deck being modified when another individual
sharing the same deck is mutated
Diffstat:
Msrc/main/java/fr/kevincorvisier/mtg/gdb/population/NextGenerationService.java | 4++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/main/java/fr/kevincorvisier/mtg/gdb/population/NextGenerationService.java b/src/main/java/fr/kevincorvisier/mtg/gdb/population/NextGenerationService.java @@ -122,8 +122,8 @@ public class NextGenerationService { estimatedFitness = Pair.create(pair.getFirst().getFitness(), pair.getSecond().getFitness()); - pair = Pair.create(new Individual(individualNameGenerator.createName() + "_" + pair.getFirst().getName(), pair.getFirst().getDeck()), - new Individual(individualNameGenerator.createName() + "_" + pair.getSecond().getName(), pair.getSecond().getDeck())); + pair = Pair.create(new Individual(individualNameGenerator.createName() + "_" + pair.getFirst().getName(), new Deck(pair.getFirst().getDeck())), + new Individual(individualNameGenerator.createName() + "_" + pair.getSecond().getName(), new Deck(pair.getSecond().getDeck()))); } // Mutation