v0.8.0
0.8.0, 4/14/2023
-
New Features
- Added
FitnessOffsetProblem
convenience wrapper to theproblem
module - Added
ParabaloidProblem
andQuadraticFamilyProblem
to thereal_rep.problems
module - CGP now supports auxiliary constant parameters on each node via
CGPWithParametersDecoder
- Added
ImageXYProblem
toexecutable_rep.problems
, and acgp_images.py
example demonstrating it - Added experimental parameters to
mutate_gaussian()
to allow transforming genes by a linear function - Added a
check_constraints()
operator to theCGPDecoder
class, to help verify custom algorithms - Added
LeadingOnes
,DeceptiveTrap
, andTwoMax
problems tobinary_rep.problems
module - Added
SumPhenotypePlotProbe
, and a new example using it to visualizing MaxOnes-style problems - Added
multiobjective
sub-package that provides support for NSGA-IImultiobjective.nsga2.nsga2()
top-level monolithic functionmultiobjective.problems.MultiObjectiveProblem
is new abstract base class for multiobjective problemsmultiobjective.ops
contains supporting pipeline operators, though most users will not see those if they usensga()
- Added
-
API changes
Individual
now has aphenome
property- Mutation operators (
mutate_gaussian()
andmutate_binomial()
) can now be passed a list ofstd
values to adjust the mutation width by gene. - Removed an undocumented normalization term from
real_rep.problems.CosineFamilyProblem
- Expose a
reset
method onPopulationMetricsPlotProbe
util.inc_generation()
now takes astart_generation
argumentgenome_mutate_gaussian()
is now a curried function instead of a closureplot_2d_problem()
andplot_2d_function()
now accept extrakwargs
to forward to MatplotlibMaxOnes
now takes an optionaltarget_string
to generalize it to other target patterns