Package org.opt4j.common.archive
Class PopulationArchive
java.lang.Object
org.opt4j.core.IndividualSet
org.opt4j.core.optimizer.Archive
org.opt4j.common.archive.AbstractArchive
org.opt4j.common.archive.PopulationArchive
- All Implemented Interfaces:
Iterable<Individual>,Collection<Individual>,Set<Individual>
The
PopulationArchive keeps the non-dominated Individuals
from the Population. It is assumed that the update(Set)
method is called with the current Population in each iteration.-
Field Summary
Fields inherited from class org.opt4j.core.IndividualSet
individuals, listeners -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanupdate(Set<? extends Individual> individuals) Updates the archive with a set of individuals.protected booleanupdateWithNondominated(Collection<Individual> candidates) Adds newcandidateswhich are already checked to be not Pareto-dominated by any other individual in thisArchive.Methods inherited from class org.opt4j.core.optimizer.Archive
add, addAll, addAll, addCheckedIndividual, addCheckedIndividuals, updateMethods inherited from class org.opt4j.core.IndividualSet
addListener, clear, contains, containsAll, isEmpty, iterator, remove, removeAll, removeListener, retainAll, size, toArray, toArrayMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArrayMethods inherited from interface java.util.Set
equals, hashCode, spliterator
-
Constructor Details
-
PopulationArchive
public PopulationArchive()
-
-
Method Details
-
update
Description copied from class:ArchiveUpdates the archive with a set of individuals. Instead of theadd/addAllmethods, which are prohibited for the archive (throwing anUnsupportedOperationException), this method shall be used.- Overrides:
updatein classAbstractArchive- Parameters:
individuals- the set of individuals that is used to update the archive- Returns:
- returns
trueif the content of the archive changed
-
updateWithNondominated
Description copied from class:AbstractArchiveAdds newcandidateswhich are already checked to be not Pareto-dominated by any other individual in thisArchive. AllIndividuals in theArchivewhich were dominated by the candidates have already been removed.- Specified by:
updateWithNondominatedin classAbstractArchive- Parameters:
candidates- the non-dominated individuals which can be added- Returns:
- true if one or more candidates are added to the archive
-