SelectiveRefinementTournamentSelector.java

1
package net.bmahe.genetics4j.core.selection;
2
3
import java.util.Comparator;
4
import java.util.List;
5
import java.util.Objects;
6
import java.util.random.RandomGenerator;
7
import java.util.stream.IntStream;
8
9
import org.apache.commons.lang3.Validate;
10
import org.apache.logging.log4j.LogManager;
11
import org.apache.logging.log4j.Logger;
12
13
import net.bmahe.genetics4j.core.Genotype;
14
import net.bmahe.genetics4j.core.Individual;
15
import net.bmahe.genetics4j.core.Population;
16
import net.bmahe.genetics4j.core.spec.AbstractEAConfiguration;
17
import net.bmahe.genetics4j.core.spec.selection.SelectiveRefinementTournament;
18
import net.bmahe.genetics4j.core.spec.selection.Tournament;
19
import net.bmahe.genetics4j.core.util.IndividualUtils;
20
21
public class SelectiveRefinementTournamentSelector<T extends Comparable<T>> implements Selector<T> {
22
	final static public Logger logger = LogManager.getLogger(SelectiveRefinementTournamentSelector.class);
23
24
	private final SelectiveRefinementTournament<T> selectiveRefinementTournament;
25
	private final RandomGenerator randomGenerator;
26
27
	public SelectiveRefinementTournamentSelector(final SelectiveRefinementTournament<T> _selectiveRefinementTournament,
28
			final RandomGenerator _randomGenerator) {
29
		Objects.requireNonNull(_selectiveRefinementTournament);
30
		Objects.requireNonNull(_randomGenerator);
31
32 1 1. <init> : Removed assignment to member variable selectiveRefinementTournament → KILLED
		this.selectiveRefinementTournament = _selectiveRefinementTournament;
33 1 1. <init> : Removed assignment to member variable randomGenerator → KILLED
		this.randomGenerator = _randomGenerator;
34
	}
35
36
	protected Individual<T> randomIndividual(final List<Genotype> population, final List<T> fitnessScore) {
37
		Objects.requireNonNull(population);
38
		Objects.requireNonNull(fitnessScore);
39
		Validate.isTrue(fitnessScore.size() > 0);
40
		Validate.isTrue(population.size() == fitnessScore.size());
41
42 3 1. randomIndividual : removed call to java/util/random/RandomGenerator::nextInt → KILLED
2. randomIndividual : removed call to java/util/List::size → KILLED
3. randomIndividual : replaced call to java/util/random/RandomGenerator::nextInt with argument → KILLED
		final int candidateIndex = randomGenerator.nextInt(fitnessScore.size());
43 4 1. randomIndividual : replaced return value with null for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::randomIndividual → KILLED
2. randomIndividual : removed call to net/bmahe/genetics4j/core/Individual::of → KILLED
3. randomIndividual : removed call to java/util/List::get → KILLED
4. randomIndividual : removed call to java/util/List::get → KILLED
		return Individual.of(population.get(candidateIndex), fitnessScore.get(candidateIndex));
44
45
	}
46
47
	protected Individual<T> selectForFitness(final AbstractEAConfiguration<T> eaConfiguration,
48
			final Comparator<Individual<T>> fitnessComparator, final int numCandidates, final List<Genotype> population,
49
			final List<T> fitnessScore) {
50
		Objects.requireNonNull(population);
51
		Objects.requireNonNull(fitnessScore);
52
		Validate.isTrue(fitnessScore.isEmpty() == false);
53
54 3 1. selectForFitness : Substituted 0 with 1 → KILLED
2. selectForFitness : replaced return value with null for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForFitness → KILLED
3. selectForFitness : removed call to java/util/stream/IntStream::range → KILLED
		return IntStream.range(0, numCandidates)
55 1 1. selectForFitness : removed call to java/util/stream/IntStream::boxed → KILLED
				.boxed()
56 4 1. selectForFitness : removed call to java/util/stream/Stream::map → KILLED
2. lambda$selectForFitness$0 : replaced return value with null for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::lambda$selectForFitness$0 → KILLED
3. lambda$selectForFitness$0 : removed call to net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::randomIndividual → KILLED
4. selectForFitness : replaced call to java/util/stream/Stream::map with receiver → KILLED
				.map(i -> randomIndividual(population, fitnessScore))
57 3 1. lambda$selectForFitness$1 : removed call to java/util/Comparator::compare → KILLED
2. selectForFitness : removed call to java/util/stream/Stream::max → KILLED
3. lambda$selectForFitness$1 : replaced int return with 0 for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::lambda$selectForFitness$1 → KILLED
				.max((a, b) -> fitnessComparator.compare(a, b))
58 1 1. selectForFitness : removed call to java/util/Optional::get → KILLED
				.get();
59
	}
60
61
	protected Individual<T> selectForRefinement(final Comparator<Individual<T>> refinementComparator,
62
			final Individual<T> candidateA, final Individual<T> candidateB) {
63
		Objects.requireNonNull(refinementComparator);
64
		Objects.requireNonNull(candidateA);
65
		Objects.requireNonNull(candidateB);
66
67 1 1. selectForRefinement : removed call to java/util/Comparator::compare → KILLED
		int compared = refinementComparator.compare(candidateA, candidateB);
68 4 1. selectForRefinement : changed conditional boundary → SURVIVED
2. selectForRefinement : removed conditional - replaced comparison check with false → KILLED
3. selectForRefinement : negated conditional → KILLED
4. selectForRefinement : removed conditional - replaced comparison check with true → KILLED
		if (compared < 0) {
69 1 1. selectForRefinement : replaced return value with null for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForRefinement → KILLED
			return candidateB;
70 4 1. selectForRefinement : removed conditional - replaced comparison check with false → SURVIVED
2. selectForRefinement : removed conditional - replaced comparison check with true → SURVIVED
3. selectForRefinement : changed conditional boundary → SURVIVED
4. selectForRefinement : negated conditional → SURVIVED
		} else if (compared > 0) {
71 1 1. selectForRefinement : replaced return value with null for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForRefinement → KILLED
			return candidateA;
72
		}
73 7 1. selectForRefinement : removed call to java/util/random/RandomGenerator::nextFloat → SURVIVED
2. selectForRefinement : Substituted 0.5 with 1.0 → SURVIVED
3. selectForRefinement : removed conditional - replaced comparison check with false → SURVIVED
4. selectForRefinement : removed conditional - replaced comparison check with true → SURVIVED
5. selectForRefinement : changed conditional boundary → SURVIVED
6. selectForRefinement : negated conditional → SURVIVED
7. selectForRefinement : replaced return value with null for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForRefinement → KILLED
		return randomGenerator.nextFloat() < 0.5 ? candidateA : candidateB;
74
	}
75
76
	@Override
77
	public Population<T> select(final AbstractEAConfiguration<T> eaConfiguration, final long generation,
78
			final int numIndividuals, final List<Genotype> population, final List<T> fitnessScore) {
79
		Objects.requireNonNull(eaConfiguration);
80
		Objects.requireNonNull(population);
81
		Objects.requireNonNull(fitnessScore);
82
		Validate.isTrue(generation >= 0);
83
		Validate.isTrue(numIndividuals > 0);
84
		Validate.isTrue(population.size() == fitnessScore.size());
85
86 1 1. select : removed call to net/bmahe/genetics4j/core/spec/selection/SelectiveRefinementTournament::tournament → KILLED
		final Tournament<T> tournament = selectiveRefinementTournament.tournament();
87 1 1. select : removed call to net/bmahe/genetics4j/core/spec/selection/SelectiveRefinementTournament::refinementComparator → KILLED
		final Comparator<Individual<T>> refinementComparator = selectiveRefinementTournament.refinementComparator();
88 1 1. select : removed call to net/bmahe/genetics4j/core/spec/selection/SelectiveRefinementTournament::refinementRatio → KILLED
		final float refinementRatio = selectiveRefinementTournament.refinementRatio();
89
90 1 1. select : removed call to net/bmahe/genetics4j/core/util/IndividualUtils::fitnessBasedComparator → KILLED
		final Comparator<Individual<T>> fitnessComparator = IndividualUtils.fitnessBasedComparator(eaConfiguration);
91
92
		logger.debug("Selecting {} individuals", numIndividuals);
93
94 1 1. select : removed call to net/bmahe/genetics4j/core/Population::<init> → KILLED
		final Population<T> selectedIndividuals = new Population<>();
95
96 5 1. select : removed call to net/bmahe/genetics4j/core/Population::size → TIMED_OUT
2. select : removed conditional - replaced comparison check with true → TIMED_OUT
3. select : changed conditional boundary → KILLED
4. select : removed conditional - replaced comparison check with false → KILLED
5. select : negated conditional → KILLED
		while (selectedIndividuals.size() < numIndividuals) {
97
98 1 1. select : removed call to net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForFitness → KILLED
			final Individual<T> first = selectForFitness(eaConfiguration,
99
					fitnessComparator,
100 1 1. select : removed call to net/bmahe/genetics4j/core/spec/selection/Tournament::numCandidates → KILLED
					tournament.numCandidates(),
101
					population,
102
					fitnessScore);
103 1 1. select : removed call to net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForFitness → KILLED
			final Individual<T> second = selectForFitness(eaConfiguration,
104
					fitnessComparator,
105 1 1. select : removed call to net/bmahe/genetics4j/core/spec/selection/Tournament::numCandidates → KILLED
					tournament.numCandidates(),
106
					population,
107
					fitnessScore);
108
109 5 1. select : changed conditional boundary → SURVIVED
2. select : negated conditional → KILLED
3. select : removed conditional - replaced comparison check with false → KILLED
4. select : removed conditional - replaced comparison check with true → KILLED
5. select : removed call to java/util/random/RandomGenerator::nextFloat → KILLED
			final Individual<T> selected = randomGenerator.nextFloat() < refinementRatio
110 2 1. select : replaced call to net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForRefinement with argument → SURVIVED
2. select : removed call to net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForRefinement → KILLED
					? selectForRefinement(refinementComparator, first, second)
111 5 1. select : changed conditional boundary → SURVIVED
2. select : removed call to java/util/Comparator::compare → KILLED
3. select : removed conditional - replaced comparison check with false → KILLED
4. select : negated conditional → KILLED
5. select : removed conditional - replaced comparison check with true → KILLED
					: (fitnessComparator.compare(first, second) < 0 ? second : first);
112
113 1 1. select : removed call to net/bmahe/genetics4j/core/Population::add → TIMED_OUT
			selectedIndividuals.add(selected);
114
		}
115
116 1 1. select : replaced return value with null for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::select → KILLED
		return selectedIndividuals;
117
	}
118
}

Mutations

32

1.1
Location : <init>
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithRefinementApplied()]
Removed assignment to member variable selectiveRefinementTournament → KILLED

33

1.1
Location : <init>
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForRefinementRandomlySelectsWhenEqualHighValue()]
Removed assignment to member variable randomGenerator → KILLED

42

1.1
Location : randomIndividual
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:randomIndividualReturnsValidIndividual()]
removed call to java/util/random/RandomGenerator::nextInt → KILLED

2.2
Location : randomIndividual
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:randomIndividualReturnsValidIndividual()]
removed call to java/util/List::size → KILLED

3.3
Location : randomIndividual
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:randomIndividualReturnsValidIndividual()]
replaced call to java/util/random/RandomGenerator::nextInt with argument → KILLED

43

1.1
Location : randomIndividual
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:randomIndividualReturnsValidIndividual()]
replaced return value with null for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::randomIndividual → KILLED

2.2
Location : randomIndividual
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:randomIndividualReturnsValidIndividual()]
removed call to net/bmahe/genetics4j/core/Individual::of → KILLED

3.3
Location : randomIndividual
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:randomIndividualReturnsValidIndividual()]
removed call to java/util/List::get → KILLED

4.4
Location : randomIndividual
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:randomIndividualReturnsValidIndividual()]
removed call to java/util/List::get → KILLED

54

1.1
Location : selectForFitness
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForFitnessSelectsBestFromTournament()]
Substituted 0 with 1 → KILLED

2.2
Location : selectForFitness
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForFitnessSelectsBestFromTournament()]
replaced return value with null for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForFitness → KILLED

3.3
Location : selectForFitness
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForFitnessSelectsBestFromTournament()]
removed call to java/util/stream/IntStream::range → KILLED

55

1.1
Location : selectForFitness
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForFitnessSelectsBestFromTournament()]
removed call to java/util/stream/IntStream::boxed → KILLED

56

1.1
Location : selectForFitness
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForFitnessSelectsBestFromTournament()]
removed call to java/util/stream/Stream::map → KILLED

2.2
Location : lambda$selectForFitness$0
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForFitnessSelectsBestFromTournament()]
replaced return value with null for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::lambda$selectForFitness$0 → KILLED

3.3
Location : lambda$selectForFitness$0
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForFitnessSelectsBestFromTournament()]
removed call to net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::randomIndividual → KILLED

4.4
Location : selectForFitness
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForFitnessSelectsBestFromTournament()]
replaced call to java/util/stream/Stream::map with receiver → KILLED

57

1.1
Location : lambda$selectForFitness$1
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForFitnessSelectsBestFromTournament()]
removed call to java/util/Comparator::compare → KILLED

2.2
Location : selectForFitness
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForFitnessSelectsBestFromTournament()]
removed call to java/util/stream/Stream::max → KILLED

3.3
Location : lambda$selectForFitness$1
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForFitnessSelectsBestFromTournament()]
replaced int return with 0 for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::lambda$selectForFitness$1 → KILLED

58

1.1
Location : selectForFitness
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForFitnessSelectsBestFromTournament()]
removed call to java/util/Optional::get → KILLED

67

1.1
Location : selectForRefinement
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForRefinementSelectsCandidateBWhenBetter()]
removed call to java/util/Comparator::compare → KILLED

68

1.1
Location : selectForRefinement
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForRefinementSelectsCandidateBWhenBetter()]
removed conditional - replaced comparison check with false → KILLED

2.2
Location : selectForRefinement
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForRefinementSelectsCandidateAWhenBetter()]
negated conditional → KILLED

3.3
Location : selectForRefinement
Killed by : none
changed conditional boundary → SURVIVED
Covering tests

4.4
Location : selectForRefinement
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForRefinementSelectsCandidateAWhenBetter()]
removed conditional - replaced comparison check with true → KILLED

69

1.1
Location : selectForRefinement
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForRefinementSelectsCandidateBWhenBetter()]
replaced return value with null for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForRefinement → KILLED

70

1.1
Location : selectForRefinement
Killed by : none
removed conditional - replaced comparison check with false → SURVIVED
Covering tests

2.2
Location : selectForRefinement
Killed by : none
removed conditional - replaced comparison check with true → SURVIVED Covering tests

3.3
Location : selectForRefinement
Killed by : none
changed conditional boundary → SURVIVED Covering tests

4.4
Location : selectForRefinement
Killed by : none
negated conditional → SURVIVED Covering tests

71

1.1
Location : selectForRefinement
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForRefinementSelectsCandidateAWhenBetter()]
replaced return value with null for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForRefinement → KILLED

73

1.1
Location : selectForRefinement
Killed by : none
removed call to java/util/random/RandomGenerator::nextFloat → SURVIVED
Covering tests

2.2
Location : selectForRefinement
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectForRefinementRandomlySelectsWhenEqualHighValue()]
replaced return value with null for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForRefinement → KILLED

3.3
Location : selectForRefinement
Killed by : none
Substituted 0.5 with 1.0 → SURVIVED Covering tests

4.4
Location : selectForRefinement
Killed by : none
removed conditional - replaced comparison check with false → SURVIVED Covering tests

5.5
Location : selectForRefinement
Killed by : none
removed conditional - replaced comparison check with true → SURVIVED Covering tests

6.6
Location : selectForRefinement
Killed by : none
changed conditional boundary → SURVIVED Covering tests

7.7
Location : selectForRefinement
Killed by : none
negated conditional → SURVIVED Covering tests

86

1.1
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
removed call to net/bmahe/genetics4j/core/spec/selection/SelectiveRefinementTournament::tournament → KILLED

87

1.1
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithRefinementApplied()]
removed call to net/bmahe/genetics4j/core/spec/selection/SelectiveRefinementTournament::refinementComparator → KILLED

88

1.1
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithRefinementApplied()]
removed call to net/bmahe/genetics4j/core/spec/selection/SelectiveRefinementTournament::refinementRatio → KILLED

90

1.1
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
removed call to net/bmahe/genetics4j/core/util/IndividualUtils::fitnessBasedComparator → KILLED

94

1.1
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
removed call to net/bmahe/genetics4j/core/Population::<init> → KILLED

96

1.1
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
changed conditional boundary → KILLED

2.2
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
removed conditional - replaced comparison check with false → KILLED

3.3
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
negated conditional → KILLED

4.4
Location : select
Killed by : none
removed call to net/bmahe/genetics4j/core/Population::size → TIMED_OUT

5.5
Location : select
Killed by : none
removed conditional - replaced comparison check with true → TIMED_OUT

98

1.1
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
removed call to net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForFitness → KILLED

100

1.1
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
removed call to net/bmahe/genetics4j/core/spec/selection/Tournament::numCandidates → KILLED

103

1.1
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
removed call to net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForFitness → KILLED

105

1.1
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
removed call to net/bmahe/genetics4j/core/spec/selection/Tournament::numCandidates → KILLED

109

1.1
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
negated conditional → KILLED

2.2
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithRefinementApplied()]
removed conditional - replaced comparison check with false → KILLED

3.3
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
removed conditional - replaced comparison check with true → KILLED

4.4
Location : select
Killed by : none
changed conditional boundary → SURVIVED
Covering tests

5.5
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
removed call to java/util/random/RandomGenerator::nextFloat → KILLED

110

1.1
Location : select
Killed by : none
replaced call to net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForRefinement with argument → SURVIVED
Covering tests

2.2
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithRefinementApplied()]
removed call to net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::selectForRefinement → KILLED

111

1.1
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
removed call to java/util/Comparator::compare → KILLED

2.2
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
removed conditional - replaced comparison check with false → KILLED

3.3
Location : select
Killed by : none
changed conditional boundary → SURVIVED
Covering tests

4.4
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
negated conditional → KILLED

5.5
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
removed conditional - replaced comparison check with true → KILLED

113

1.1
Location : select
Killed by : none
removed call to net/bmahe/genetics4j/core/Population::add → TIMED_OUT

116

1.1
Location : select
Killed by : net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest.[engine:junit-jupiter]/[class:net.bmahe.genetics4j.core.selection.SelectiveRefinementTournamentSelectorTest]/[method:selectWithoutRefinement()]
replaced return value with null for net/bmahe/genetics4j/core/selection/SelectiveRefinementTournamentSelector::select → KILLED

Active mutators

Tests examined


Report generated by PIT 1.20.3