GenerationalReplacementImpl.java

1
package net.bmahe.genetics4j.core.replacement;
2
3
import java.util.List;
4
import java.util.Objects;
5
6
import org.apache.commons.lang3.Validate;
7
8
import net.bmahe.genetics4j.core.Genotype;
9
import net.bmahe.genetics4j.core.Population;
10
import net.bmahe.genetics4j.core.selection.Selector;
11
import net.bmahe.genetics4j.core.spec.AbstractEAConfiguration;
12
import net.bmahe.genetics4j.core.spec.replacement.GenerationalReplacement;
13
14
public class GenerationalReplacementImpl<T extends Comparable<T>> implements ReplacementStrategyImplementor<T> {
15
16
	private final GenerationalReplacement generationalReplacementSpec;
17
	private final Selector<T> offspringSelector;
18
19
	public GenerationalReplacementImpl(final GenerationalReplacement _elistismSpec,
20
			final Selector<T> _offspringSelector) {
21
		Objects.requireNonNull(_elistismSpec);
22
23 1 1. <init> : Removed assignment to member variable generationalReplacementSpec → NO_COVERAGE
		this.generationalReplacementSpec = _elistismSpec;
24 1 1. <init> : Removed assignment to member variable offspringSelector → NO_COVERAGE
		this.offspringSelector = _offspringSelector;
25
	}
26
27
	@Override
28
	public Population<T> select(final AbstractEAConfiguration<T> eaConfiguration, final long generation,
29
			final int numIndividuals, final List<Genotype> population, final List<T> populationScores,
30
			final List<Genotype> offsprings, final List<T> offspringScores) {
31
		Objects.requireNonNull(eaConfiguration);
32
		Validate.isTrue(generation >= 0);
33
		Validate.isTrue(numIndividuals > 0);
34
		Objects.requireNonNull(population);
35
		Objects.requireNonNull(populationScores);
36
		Validate.isTrue(population.size() == populationScores.size());
37
		Objects.requireNonNull(offsprings);
38
		Objects.requireNonNull(offspringScores);
39
		Validate.isTrue(offsprings.size() == offspringScores.size());
40
41 1 1. select : removed call to net/bmahe/genetics4j/core/Population::<init> → NO_COVERAGE
		final Population<T> selected = new Population<>();
42
43
		final Population<T> selectedOffspring = offspringSelector
44 1 1. select : removed call to net/bmahe/genetics4j/core/selection/Selector::select → NO_COVERAGE
				.select(eaConfiguration, generation, numIndividuals, offsprings, offspringScores);
45 1 1. select : removed call to net/bmahe/genetics4j/core/Population::addAll → NO_COVERAGE
		selected.addAll(selectedOffspring);
46
47 1 1. select : replaced return value with null for net/bmahe/genetics4j/core/replacement/GenerationalReplacementImpl::select → NO_COVERAGE
		return selected;
48
	}
49
}

Mutations

23

1.1
Location : <init>
Killed by : none
Removed assignment to member variable generationalReplacementSpec → NO_COVERAGE

24

1.1
Location : <init>
Killed by : none
Removed assignment to member variable offspringSelector → NO_COVERAGE

41

1.1
Location : select
Killed by : none
removed call to net/bmahe/genetics4j/core/Population::<init> → NO_COVERAGE

44

1.1
Location : select
Killed by : none
removed call to net/bmahe/genetics4j/core/selection/Selector::select → NO_COVERAGE

45

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

47

1.1
Location : select
Killed by : none
replaced return value with null for net/bmahe/genetics4j/core/replacement/GenerationalReplacementImpl::select → NO_COVERAGE

Active mutators

Tests examined


Report generated by PIT 1.20.3