moea.moga.algorithms
Class Moea

java.lang.Object
  extended by java.lang.Thread
      extended by moea.moga.algorithms.Moea
All Implemented Interfaces:
java.lang.Runnable
Direct Known Subclasses:
Nsga2, Spea2, Vega

public abstract class Moea
extends java.lang.Thread


Nested Class Summary
 
Nested classes/interfaces inherited from class java.lang.Thread
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler
 
Field Summary
protected  int currentGeneration
           
protected  java.util.ArrayList<Chromosome> externalIndividuals
           
protected  int maxGenerations
           
protected  int migrationRate
           
protected  java.lang.String name
           
protected  java.util.ArrayList<Moea> neighbors
           
protected  Population<Chromosome> pop
           
protected  int popSizeMax
           
protected  double probabilityOfCrossover
           
protected  double probabilityOfMutation
           
protected  Selector selector
           
protected  boolean threadPaused
           
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
Moea(java.lang.String name, Population<Chromosome> popIni, int maxGenerations, double probabilityOfCrossover, double probabilityOfMutation)
           
Moea(java.lang.String name, Population<Chromosome> popIni, int maxGenerations, double probabilityOfCrossover, double probabilityOfMutation, int migrationRate)
           
 
Method Summary
 void addNeighbor(Moea neighbor)
           
 boolean done()
           
 java.lang.String exportToMatFile()
           
 Population<Chromosome> filter(Population<Chromosome> pop, int num)
           
 boolean gameOver()
           
 Population<Chromosome> generate(Population<Chromosome> pop)
           
 int getCurrentGeneration()
           
 Population<Chromosome> getPopulation()
           
 void pauseEvolution()
           
 void receive(Population<Chromosome> population)
           
 void resumeEvolution()
           
 void run()
           
 void send(Population<Chromosome> population)
           
abstract  void step()
           
 void terminateEvolution()
           
 java.lang.String toString()
           
 void updateGenToMax()
           
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

name

protected java.lang.String name

currentGeneration

protected int currentGeneration

maxGenerations

protected int maxGenerations

pop

protected Population<Chromosome> pop

popSizeMax

protected int popSizeMax

probabilityOfCrossover

protected double probabilityOfCrossover

probabilityOfMutation

protected double probabilityOfMutation

selector

protected Selector selector

migrationRate

protected int migrationRate

neighbors

protected java.util.ArrayList<Moea> neighbors

externalIndividuals

protected java.util.ArrayList<Chromosome> externalIndividuals

threadPaused

protected boolean threadPaused
Constructor Detail

Moea

public Moea(java.lang.String name,
            Population<Chromosome> popIni,
            int maxGenerations,
            double probabilityOfCrossover,
            double probabilityOfMutation,
            int migrationRate)

Moea

public Moea(java.lang.String name,
            Population<Chromosome> popIni,
            int maxGenerations,
            double probabilityOfCrossover,
            double probabilityOfMutation)
Method Detail

generate

public Population<Chromosome> generate(Population<Chromosome> pop)

done

public boolean done()

getCurrentGeneration

public int getCurrentGeneration()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Thread

exportToMatFile

public java.lang.String exportToMatFile()

getPopulation

public Population<Chromosome> getPopulation()

step

public abstract void step()

run

public void run()
Specified by:
run in interface java.lang.Runnable
Overrides:
run in class java.lang.Thread

filter

public Population<Chromosome> filter(Population<Chromosome> pop,
                                     int num)

addNeighbor

public void addNeighbor(Moea neighbor)

send

public void send(Population<Chromosome> population)

gameOver

public boolean gameOver()

receive

public void receive(Population<Chromosome> population)

pauseEvolution

public void pauseEvolution()

resumeEvolution

public void resumeEvolution()

terminateEvolution

public void terminateEvolution()

updateGenToMax

public void updateGenToMax()