# Hierarchy For All Packages

Package Hierarchies:

- ec,
- ec.breed,
- ec.coevolve,
- ec.de,
- ec.display,
- ec.display.chart,
- ec.display.portrayal,
- ec.eda.amalgam,
- ec.eda.cmaes,
- ec.eda.dovs,
- ec.eda.pbil,
- ec.es,
- ec.eval,
- ec.evolve,
- ec.exchange,
- ec.gp,
- ec.gp.breed,
- ec.gp.build,
- ec.gp.ge,
- ec.gp.koza,
- ec.gp.push,
- ec.multiobjective,
- ec.multiobjective.nsga2,
- ec.multiobjective.spea2,
- ec.neat,
- ec.parsimony,
- ec.pso,
- ec.rule,
- ec.rule.breed,
- ec.select,
- ec.simple,
- ec.spatial,
- ec.steadystate,
- ec.util,
- ec.vector,
- ec.vector.breed

## Class Hierarchy

- java.lang.Object
  - ec.gp.ADFContext (implements ec.Prototype)
  - ec.gp.ADFStack (implements ec.Prototype)
  - ec.eda.amalgam.AMALGAMDefaults (implements ec.DefaultsForm)
  - ec.breed.BreedDefaults (implements ec.DefaultsForm)
  - ec.Breeder (implements ec.Singleton)
    - ec.eda.amalgam.AMALGAMBreeder
    - ec.eda.cmaes.CMAESBreeder
    - ec.de.DEBreeder
      - ec.de.Best1BinDEBreeder
      - ec.de.Rand1EitherOrDEBreeder
    - ec.eda.dovs.DOVSBreeder
    - ec.es.MuCommaLambdaBreeder
      - ec.es.MuPlusLambdaBreeder
    - ec.neat.NEATBreeder
    - ec.eda.pbil.PBILBreeder
    - ec.pso.PSOBreeder
    - ec.simple.SimpleBreeder
      - ec.multiobjective.nsga2.NSGA2Breeder
      - ec.spatial.SpatialBreeder
      - ec.multiobjective.spea2.SPEA2Breeder
      - ec.steadystate.SteadyStateBreeder
  - ec.BreedingSource (implements ec.Prototype, ec.util.RandomChoiceChooserD)
    - ec.BreedingPipeline (implements ec.steadystate.SteadyStateBSourceForm)
      - ec.breed.BufferedBreedingPipeline
      - ec.breed.CheckingPipeline
      - ec.breed.FirstCopyPipeline
      - ec.breed.ForceBreedingPipeline
      - ec.vector.breed.GeneDuplicationPipeline
      - ec.breed.GenerationSwitchPipeline
      - ec.gp.GPBreedingPipeline
        - ec.gp.koza.CrossoverPipeline
        - ec.gp.breed.InternalCrossoverPipeline
        - ec.gp.breed.MutateAllNodesPipeline
        - ec.gp.breed.MutateDemotePipeline
        - ec.gp.breed.MutateERCPipeline
        - ec.gp.breed.MutateOneNodePipeline
        - ec.gp.breed.MutatePromotePipeline
        - ec.gp.breed.MutateSwapPipeline
        - ec.gp.koza.MutationPipeline
        - ec.gp.breed.RehangPipeline
        - ec.gp.breed.SizeFairCrossoverPipeline
      - ec.breed.InitializationPipeline
      - ec.vector.breed.ListCrossoverPipeline
      - ec.breed.MultiBreedingPipeline
      - ec.vector.breed.MultipleVectorCrossoverPipeline
      - ec.breed.RepeatPipeline
      - ec.breed.ReproductionPipeline
        - ec.breed.StubPipeline
      - ec.rule.breed.RuleCrossoverPipeline
      - ec.rule.breed.RuleMutationPipeline
      - ec.breed.UniquePipeline
      - ec.vector.breed.VectorCrossoverPipeline
      - ec.vector.breed.VectorMutationPipeline
    - ec.SelectionMethod
      - ec.select.AnnealedSelection
      - ec.select.BestSelection
      - ec.parsimony.BucketTournamentSelection (implements ec.steadystate.SteadyStateBSourceForm)
      - ec.parsimony.DoubleTournamentSelection (implements ec.steadystate.SteadyStateBSourceForm)
      - ec.es.ESSelection
      - ec.select.FirstSelection (implements ec.steadystate.SteadyStateBSourceForm)
      - ec.select.FitProportionateSelection
        - ec.select.BoltzmannSelection
        - ec.select.SigmaScalingSelection
      - ec.select.GreedyOverselection
      - ec.select.LexicaseSelection
      - ec.select.MultiSelection
      - ec.select.RandomSelection (implements ec.steadystate.SteadyStateBSourceForm)
      - ec.parsimony.RatioBucketTournamentSelection (implements ec.steadystate.SteadyStateBSourceForm)
      - ec.select.SUSSelection
      - ec.select.TopSelection
      - ec.select.TournamentSelection (implements ec.steadystate.SteadyStateBSourceForm)
        - ec.parsimony.LexicographicTournamentSelection
        - ec.parsimony.ProportionalTournamentSelection
        - ec.spatial.SpatialTournamentSelection
  - ec.util.Checkpoint
  - ec.eda.cmaes.CMAESDefaults (implements ec.DefaultsForm)
  - ec.util.Code
  - java.awt.Component (implements java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable)
    - java.awt.Container
      - javax.swing.JComponent (implements java.io.Serializable)
        - javax.swing.JPanel (implements javax.accessibility.Accessible)
          - ec.display.ControlPanel
          - ec.display.portrayal.IndividualPortrayal (implements ec.Setup)
            - ec.display.portrayal.SimpleIndividualPortrayal
          - ec.display.ParametersPanel
          - ec.display.chart.StatisticsChartPaneTab
          - ec.display.SubpopulationPanel (implements ec.display.EvolutionStateListener, ec.Setup)
        - javax.swing.JTabbedPane (implements javax.accessibility.Accessible, java.io.Serializable, javax.swing.SwingConstants)
          - ec.display.StatisticsChartPane (implements ec.Setup)
      - java.awt.Window (implements javax.accessibility.Accessible)
        - java.awt.Frame (implements java.awt.MenuContainer)
          - javax.swing.JFrame (implements javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants)
            - ec.display.Console
  - ec.eda.dovs.CornerMap
  - ec.eda.dovs.CornerMap.Pair
  - ec.util.DataPipe
  - ec.util.DecodeReturn
  - javax.swing.tree.DefaultTreeModel (implements java.io.Serializable, javax.swing.tree.TreeModel)
    - ec.util.ParameterDatabaseTreeModel
  - ec.eda.dovs.DOVSDefaults (implements ec.DefaultsForm)
  - ec.ECDefaults (implements ec.DefaultsForm)
  - ec.es.ESDefaults (implements ec.DefaultsForm)
  - ec.Evaluator (implements ec.Singleton)
    - ec.coevolve.CompetitiveEvaluator
    - ec.coevolve.MultiPopCoevolutionaryEvaluator
      - ec.spatial.SpatialMultiPopCoevolutionaryEvaluator
    - ec.simple.SimpleEvaluator
      - ec.de.DEEvaluator
      - ec.eda.dovs.DOVSEvaluator
      - ec.simple.SimpleGroupedEvaluator
      - ec.steadystate.SteadyStateEvaluator
  - java.util.EventObject (implements java.io.Serializable)
    - ec.display.EvolutionStateEvent
    - ec.util.ParameterDatabaseEvent
  - ec.EvolutionState (implements ec.Singleton)
    - ec.simple.SimpleEvolutionState
    - ec.steadystate.SteadyStateEvolutionState
  - ec.Evolve
  - ec.Exchanger (implements ec.Singleton)
    - ec.exchange.InterPopulationExchange
    - ec.exchange.IslandExchange
    - ec.simple.SimpleExchanger (implements ec.steadystate.SteadyStateExchangerForm)
  - ec.Finisher (implements ec.Singleton)
    - ec.simple.SimpleFinisher
  - ec.Fitness (implements java.lang.Comparable<T>, ec.Prototype)
    - ec.gp.koza.KozaFitness
    - ec.multiobjective.MultiObjectiveFitness
      - ec.multiobjective.nsga2.NSGA2MultiObjectiveFitness
      - ec.multiobjective.spea2.SPEA2MultiObjectiveFitness
    - ec.simple.SimpleFitness
      - ec.eda.dovs.DOVSFitness
  - ec.gp.ge.GEDefaults (implements ec.DefaultsForm)
  - ec.vector.Gene (implements ec.Prototype)
    - ec.neat.NEATGene
  - ec.gp.breed.GPBreedDefaults (implements ec.DefaultsForm)
  - ec.gp.build.GPBuildDefaults (implements ec.DefaultsForm)
  - ec.gp.GPData (implements ec.Prototype)
  - ec.gp.GPDefaults (implements ec.DefaultsForm)
  - ec.gp.GPFunctionSet (implements ec.Clique)
    - ec.gp.build.PTCFunctionSet (implements ec.gp.build.PTCFunctionSetForm)
  - ec.gp.koza.GPKozaDefaults (implements ec.DefaultsForm)
  - ec.gp.GPNode (implements ec.gp.GPNodeParent, ec.Prototype)
    - ec.gp.ADF
      - ec.gp.ADM
    - ec.gp.ADFArgument
    - ec.gp.ERC
      - ec.gp.push.Terminal
    - ec.gp.push.Nonterminal
  - ec.gp.GPNodeBuilder (implements ec.Prototype)
    - ec.gp.koza.KozaBuilder
      - ec.gp.koza.FullBuilder
      - ec.gp.koza.GrowBuilder
      - ec.gp.koza.HalfBuilder
    - ec.gp.build.PTC1
    - ec.gp.build.PTC2
    - ec.gp.push.PushBuilder
    - ec.gp.build.RandomBranch
    - ec.gp.build.RandTree
    - ec.gp.build.Uniform
  - ec.gp.GPNodeConstraints (implements ec.Clique)
  - ec.gp.GPNodeGatherer (implements java.io.Serializable)
  - ec.gp.GPTree (implements ec.gp.GPNodeParent, ec.Prototype)
  - ec.gp.GPTreeConstraints (implements ec.Clique)
  - ec.gp.GPType (implements ec.Clique)
    - ec.gp.GPAtomicType
    - ec.gp.GPSetType
  - ec.gp.ge.GrammarNode (implements java.io.Serializable)
    - ec.gp.ge.GrammarFunctionNode
    - ec.gp.ge.GrammarRuleNode
  - ec.gp.ge.GrammarParser (implements ec.Prototype)
  - ec.util.IIntPoint
  - ec.Individual (implements java.lang.Comparable<T>, ec.Prototype)
    - ec.gp.GPIndividual
    - ec.rule.RuleIndividual
    - ec.vector.VectorIndividual
      - ec.vector.BitVectorIndividual
      - ec.vector.ByteVectorIndividual
      - ec.vector.DoubleVectorIndividual
        - ec.pso.Particle
      - ec.vector.FloatVectorIndividual
      - ec.vector.GeneVectorIndividual
        - ec.neat.NEATIndividual
      - ec.vector.IntegerVectorIndividual
        - ec.gp.ge.GEIndividual
      - ec.vector.LongVectorIndividual
      - ec.vector.ShortVectorIndividual
  - ec.Initializer (implements ec.Singleton)
    - ec.simple.SimpleInitializer
      - ec.eda.cmaes.CMAESInitializer
      - ec.eda.dovs.DOVSInitializer
      - ec.gp.GPInitializer
      - ec.neat.NEATInitializer
      - ec.rule.RuleInitializer
  - org.spiderland.Psh.Instruction (implements java.io.Serializable)
    - ec.gp.push.PushInstruction (implements ec.Prototype)
  - ec.util.IntBag (implements java.lang.Cloneable, ec.util.Indexed, java.io.Serializable)
  - ec.eval.Job
  - ec.gp.koza.KozaNodeSelector (implements ec.gp.GPNodeSelector)
  - ec.util.Lexer
  - ec.util.LocalHost
  - ec.util.Log (implements java.io.Serializable)
  - ec.util.LogRestarter (implements java.io.Serializable)
  - ec.util.MersenneTwisterFast (implements java.lang.Cloneable, java.io.Serializable)
  - ec.util.Misc
  - ec.multiobjective.MultiObjectiveDefaults (implements ec.DefaultsForm)
  - ec.neat.NEATDefaults (implements ec.DefaultsForm)
  - ec.neat.NEATInnovation (implements ec.Prototype)
  - ec.neat.NEATNetwork (implements ec.Prototype)
  - ec.neat.NEATNode (implements ec.Prototype)
  - ec.neat.NEATSubspecies (implements ec.Prototype)
  - ec.util.Output (implements java.io.Serializable)
  - ec.util.Parameter (implements java.io.Serializable)
  - ec.util.ParameterDatabase (implements java.io.Serializable)
  - ec.display.ParameterValue
  - ec.Population (implements java.lang.Cloneable, ec.Setup)
  - ec.Problem (implements ec.Prototype)
    - ec.gp.ge.GEProblem (implements ec.coevolve.GroupedProblemForm, ec.simple.SimpleProblemForm)
    - ec.gp.GPProblem (implements ec.simple.SimpleProblemForm)
      - ec.gp.push.PushProblem
    - ec.eval.MasterProblem (implements ec.co.ConstructiveProblemForm<T>, ec.coevolve.GroupedProblemForm, ec.simple.SimpleProblemForm)
    - ec.eval.MetaProblem (implements ec.simple.SimpleProblemForm)
  - ec.gp.push.PushDefaults (implements ec.DefaultsForm)
  - ec.steadystate.QueueIndividual (implements java.io.Serializable)
  - ec.util.QuickSort
  - java.util.Random (implements java.util.random.RandomGenerator, java.io.Serializable)
    - ec.util.MersenneTwister (implements java.lang.Cloneable, java.io.Serializable)
  - ec.util.RandomChoice
  - ec.gp.build.RandTree.ArityObject
  - ec.util.ReflectedObject (implements javax.swing.tree.TreeModel)
  - ec.rule.Rule (implements java.lang.Comparable<T>, ec.Prototype)
  - ec.rule.RuleConstraints (implements ec.Clique)
  - ec.rule.RuleDefaults (implements ec.DefaultsForm)
  - ec.rule.RuleSet (implements ec.Prototype)
  - ec.rule.RuleSetConstraints (implements ec.Clique)
  - ec.select.SelectDefaults (implements ec.DefaultsForm)
  - ec.simple.SimpleDefaults (implements ec.DefaultsForm)
  - ec.eval.Slave
  - ec.eval.SlaveMonitor
  - ec.spatial.SpatialDefaults (implements ec.DefaultsForm)
  - ec.Species (implements ec.Prototype)
    - ec.gp.GPSpecies
    - ec.rule.RuleSpecies
    - ec.vector.VectorSpecies
      - ec.vector.BitVectorSpecies
      - ec.vector.FloatVectorSpecies
        - ec.eda.amalgam.AMALGAMSpecies
        - ec.eda.cmaes.CMAESSpecies
      - ec.vector.GeneVectorSpecies
        - ec.neat.NEATSpecies
      - ec.vector.IntegerVectorSpecies
        - ec.eda.dovs.DOVSSpecies
          - ec.eda.dovs.HyperboxSpecies
        - ec.gp.ge.GESpecies
        - ec.eda.pbil.PBILSpecies
  - ec.Statistics (implements ec.Singleton)
    - ec.display.chart.ChartableStatistics
      - ec.display.chart.BarChartStatistics
      - ec.display.chart.PieChartStatistics
      - ec.display.chart.XYSeriesChartStatistics
        - ec.display.chart.TimeSeriesStatistics
    - ec.evolve.RandomRestarts
    - ec.simple.SimpleShortStatistics
      - ec.gp.koza.KozaShortStatistics
    - ec.simple.SimpleStatistics (implements ec.steadystate.SteadyStateStatisticsForm)
      - ec.multiobjective.HypervolumeStatistics
      - ec.multiobjective.MultiObjectiveStatistics
    - ec.parsimony.TarpeianStatistics
  - ec.steadystate.SteadyStateDefaults (implements ec.DefaultsForm)
  - ec.Subpopulation (implements java.lang.Cloneable, ec.Setup)
    - ec.spatial.Spatial1DSubpopulation (implements ec.spatial.Space)
  - ec.util.ThreadPool (implements java.io.Serializable)
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - java.lang.RuntimeException
        - ec.util.BadParameterException
        - ec.util.Output.OutputExitException
        - ec.util.OutputException
        - ec.util.ParamClassLoadException
  - ec.vector.VectorDefaults (implements ec.DefaultsForm)
  - ec.util.Version

## Interface Hierarchy

- java.lang.Cloneable
  - ec.Prototype (also extends ec.Setup)
    - ec.gp.GPNodeSelector
- ec.DefaultsForm
- ec.display.EvolutionStateListener
- ec.gp.GPNodeParent
- ec.coevolve.GroupedProblemForm
- ec.util.Indexed
- ec.gp.build.PTCFunctionSetForm
- ec.util.RandomChoiceChooser
- ec.util.RandomChoiceChooserD
- java.io.Serializable
  - ec.Setup
    - ec.Clique
    - ec.Prototype (also extends java.lang.Cloneable)
      - ec.gp.GPNodeSelector
    - ec.Singleton
- ec.simple.SimpleProblemForm
- ec.util.SortComparator
- ec.util.SortComparatorL
- ec.spatial.Space
- ec.steadystate.SteadyStateBSourceForm
- ec.steadystate.SteadyStateExchangerForm
- ec.steadystate.SteadyStateStatisticsForm
- ec.util.ThreadPool.Worker

## Enum Class Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.lang.constant.Constable, java.io.Serializable)
    - ec.neat.NEATNode.FunctionType
    - ec.neat.NEATNode.NodePlace
    - ec.neat.NEATNode.NodeType
    - ec.neat.NEATSpecies.MutationType
    - ec.multiobjective.nsga2.NSGA2Breeder.BreedingState
    - ec.multiobjective.spea2.SPEA2Breeder.BreedingState