net.sourceforge.cilib.moo.archive
Class Archive

java.lang.Object
  extended by net.sourceforge.cilib.moo.archive.Archive
All Implemented Interfaces:
Iterable<OptimisationSolution>, Collection<OptimisationSolution>, List<OptimisationSolution>
Direct Known Subclasses:
ConstrainedArchive, QuadTree

public abstract class Archive
extends Object
implements List<OptimisationSolution>

A representation of an archive of non-dominated solutions used by Multi-objective optimisation algorithms for solution storage during a search.

Author:
Andries Engelbrecht, Wiehann Matthysen

Constructor Summary
Archive()
           
 
Method Summary
abstract  Collection<OptimisationSolution> dominates(OptimisationSolution candidateSolution)
          Checks the entire archive and accumulates the solutions that dominates candidateSolution.
static Archive get()
          Static entrypoint to get to the Archive.
abstract  Collection<OptimisationSolution> isDominatedBy(OptimisationSolution candidateSolution)
          Checks the archive and accumulates all solutions that is dominated by candidateSolution.
static void set(Archive archive)
          Set the archive to be used by a multi-objective optimisation algorithm.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.util.List
add, add, addAll, addAll, clear, contains, containsAll, equals, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, retainAll, set, size, subList, toArray, toArray
 

Constructor Detail

Archive

public Archive()
Method Detail

get

public static Archive get()
Static entrypoint to get to the Archive. This method is usefull especially in situations where you need to get to the archive from different locations such as a GuideSelectionStrategy, or the ArchivingIterationStep at the end of a multi-objective algorithm.

Returns:
The currently active archive for a multi-objective algortihm.

set

public static void set(Archive archive)
Set the archive to be used by a multi-objective optimisation algorithm.

Parameters:
archive - A concrete archive implementation to be used as the active archive.

dominates

public abstract Collection<OptimisationSolution> dominates(OptimisationSolution candidateSolution)
Checks the entire archive and accumulates the solutions that dominates candidateSolution.

Parameters:
candidateSolution - The solution to compare against all of the solutions in the archive.
Returns:
The collection of solutions that dominates candidateSolution.

isDominatedBy

public abstract Collection<OptimisationSolution> isDominatedBy(OptimisationSolution candidateSolution)
Checks the archive and accumulates all solutions that is dominated by candidateSolution.

Parameters:
candidateSolution - The solution to compare against all of the solutions in the archive.
Returns:
The collection of solutions dominated by the candidateSolution.


Copyright © 2009 CIRG. All Rights Reserved.