3.3.2
-----------------------------------------------------------
* Added new class RangedSwappingMutationOperator, thanx
to Florian
* Added package description to equalDistribution package
* Added method setMutationRate to class MutationOperator
* Fixed bug in GABreeder with preservation of fittest,
thanx to Oscar
* Fixed bug in Population with preservation of fittest,
thanx to Francisco
* Enhanced CrossOver class: full x-over selected by default
* Enhanced CrossOver class: allow x-over of new age chroms,
thanx to Zahir
* Introduced trove maps to CachedFitnessFunction
* Enhanced CachedFitnessFunction, thanx to Tobias
* Added new unit tests
* Added one-file PDF documentation, thanx to Denis
* Equipped MapGene and SetGene with fast trove4j maps
* Made all tests for MapGene and SetGene pass
* Enhanced Javadoc, fixed spelling errors
3.3.1
-----------------------------------------------------------
* Introduced mutation of Genetic Programming commands
* Utilized XStream library for serialization issues
* Utilized trove4J: fast and consistent map replacement
* Integrated Robocode 1.5 with JGAP
* Added cloning capabilities to many RobocodeJGAP commands
* Fitness value of original chromosome is set to clone when
cloning the chromosome
* Enabled cloning of application data in genes
* Moved method niceMemory from GPGenotype to SystemKit
* Made class IComplexCommand serializable
* Added execute_object() to ForLoop
* Fixed output of generation number in GPGenotype.evolve()
* Briefer log messages in GPGenotype
* Added default constructor to GPFitnessFunction
* Renamed all auxiliary test classes from xxxForTest to
xxxForTesting
* Fixed Maven pom file (thanx to Fabian)
* Enhanced Genotype tests to check for unique chromosomes
3.3
-----------------------------------------------------------
* Integrated Robocode 1.4.8 with JGAP
* Added persistent representations of GPPopulation,
GPProgram, ProgramChromosome and CommandGene
* Enhanced interface IProgramCreator
* GPProgram: added a growOrFull method for initializing
programs with given chromosomes
* CommandGene: added service method ensureUniqueness
* Now infinity is not accepted as a fitness value
* New method getAssignableFromClass in BaseGPChromosome
* New interface IComplexCommand for declaring GP commands
as complex
* Enhanced DefaultGPFitnessEvaluator: capable of handling
IllegalStateException's (for wrong programs)
* Enhanced GPProgram: capable of handling
IllegalStateException's (for wrong programs)
* Enhanced GPGenotype.outputSOlution()
* Fixed serious bug with GP mutation of functions
* Fixed bug with GP evolution (probability fix)
* Fixed Java 6 bug with MathProblem
* Fixed bug in GPProblem.createTree
* Fixed bug in DynamicMutationExample
* Enhanced logging of GP information
* Enhanced Javadoc
* Added some unit tests
3.2.2
-----------------------------------------------------------
* Enhanced GP evolution: prototype program always
recognized in first evolution round
* Added IPopulationCreator and DefaultPopulationCreator:
allow for presetting the GP population at start-up
* Added IProgramCreator and DefaultProgramCreator: allow for
sophisticated custom initialization of GP programs
(IGPProgram)
* Added convenient constructor to ProgramChromosome
* Chromosome can be configured to always calculate fitness
value (instead of caching only)
* Added getGenes() to class CompositeGene
* Added some few unit tests
* Added missing Javadoc, enhanced Javadoc
* Preset keepPopulationSize to true instead of false
* Fixed two bugs in MultiObjectiveExample
* Fixed small bugs in Configuration with locking null
valued properties
3.2.1
-----------------------------------------------------------
* Made Robocode example work with newest Robocode version
* Enhanced Robocode example a lot
* Added Maven pom file
* Added custom-initialization mechanism for GP
* Introduced log4j
* Fixed bug with allTimeBest and cloning (see bug 1744077)
* Made INodeValidator serializable
* Enhanced IGPChromosome by method getFunctionSet()
* Added Java command version to NOP
* Enhanced Javadoc a lot
* Fixed bug with GABreeder.evolution (bug 1748528)
* Added two utility functions to SystemKit
* Fixed some few Javadocs
* Improved Chromosome.hashCode()
* Added some few unit tests
3.2
-----------------------------------------------------------
* Ported JGAP from Java 1.4 to Java 5
* Enhanced architecture BaseChromosome, Chromosome a lot
* Introduced breeder (interface IBreeder, base class
BreederBase, class GABreeder) to simplify evolution
outside/without Genotype --> grid
* Enhanced grid logic a lot
* Enhanced GP program generation a lot (a low "max nodes"
parameter does not lead to program abortion any more;
auto-consider NOP if necessary for creating valid
programs...)
* Enhanced evolution loop
* Improved speed of UTF-8 encoding
* Unified character encoding and decoding
* Introduced CachedFitnessFunction
* Enabled GPConfiguration for grid computing
* Better ADF support in Genetic Programming
* Added GP function ExchangeMemory and others
* Added GP program caching to speedup evolution
* Added GP TournamentSelector (by Javier and Enrique)
* Added complex Robocode example (thanx to Javier and
Enrique)
* Removed static attribute from get/setGPConfiguration
in class GPGenotype
* Added matrixed memory to class Culture
* Added contains method to class Culture
* Added concrete getName() to functions and terminals
* Added example with distributed fitness computation
* Introduced grid classes IEvolveStrategy and
DefaultEvolveStrategy
* Made IGPProgram cloneable --> please consider when
upgrading your code
* Made WeightedRouletteSelector serializable
* Made BestChromosomesSelector cloneable
* Changed configuration to avoid using unmodifyable
collection for genetic operators (as it is not cloneable)
* Added job-oriented approach (package org.jgap.impl.job)
for grid computing
* Introduced grid classes IWorkerReturnStrategy and
DefaultWorkerReturnStrategy
* Introduced grid classes IGenotypeInitializer and
DefaultGenotypeInitializer
* Introduced grid classes IRequestSplitStrategy and
SampleSplitStrategy
* Added new routines to class Population
* Fixed bug in GPGenotype.calcFitness (see bug 1617125)
* Introduced configuration to ChainOfSelector's constructor
* Set DefaultGPFitnessEvaluator in GPConfiguration per
default instead of DeltaGPFitnessEvaluator
* Introduced interface ICloneable that extends Cloneable
* Made several classes cloneable
* Fixed bug in Terminal.setRandom
* Fixed bug in CommandGene.getChildType
* Introduced exception class CloneException
* Introduced interface IPersistentRepresentation
* Added support for ICloneable's in DefaultCloneHandler
* Implemented clone for Terminal class
* Added unit tests
* Improved Javadocs a lot and fixed some spelling errors
* Adapted build.xml to new packages and libraries
3.1
-----------------------------------------------------------
* Improved architecture of grid architecture
* Made ProgramChromosome implement Comparable
* Added DeltaGPFitnessEvaluator
* Moved common grid classes to org.jgap.distr.grid
(previously they resided in the examples.grid package)
and emphasized framework character of the relevant
classes
* Added setter for fitness evaluator to GPConfiguration
* Added setters for crossover and selection method in
GPConfiguration
* Added javadocumentation
* Fixed bug in GPProgramFitnessComparator.compare
* Fixed bug with Double.NaN in DefaultGPFitnessEvaluator
* Added compareTo and equals methods to grid
DefaultGPFitnessEvaluator
* Fixed missing usage of IInitializer in Genotype.evolve
that made it difficult subclassing Chromosome (see bug
1596231)
* Fixed bug in Population.determineFittesChromosome
(thanx to Knut)
* Fixed bug in JGAP
评论0