2.0.0-alpha.10 (2026-03-23)
- cost after simplification must be recomputed (#550)
- cost after simplification must be recomputed (#550) (7d87479)
- use scalar type rather than leaf type for randn (#570) (9c6460e)
1.13.0 (2026-03-09)
1.12.1 (2026-02-14)
2.0.0-alpha.9 (2026-02-04)
2.0.0-alpha.8 (2025-08-31)
- set adaptive_parsimony_scaling back to 20.0 on v2+
- set adaptive_parsimony_scaling back to 20.0 on v2+ (0b4ac3c)
- caching of options in MLJ regressors (51e5a3e)
- never store member if violating constraints (a9754ad)
- poisson_sample for lambda=0 (fc0bbd9)
- preserve state when niterations=0 (6c611f3)
2.0.0-alpha.7 (2025-08-23)
- add
worker_timeout(5b4a712) - handle mixed types in body of template expression (0781cf7)
- make ComposableExpression auto-convert (ccef1d1)
- nicer errors for common template expression mistakes (3e155e5)
- should default to larger of timeouts (f45e146)
2.0.0-alpha.6 (2025-07-30)
2.0.0-alpha.5 (2025-07-29)
- always save file even if niterations=0 (10236d7)
2.0.0-alpha.4 (2025-07-28)
- generalize delete_random_op!
- generalize _random_op mutations to n-arity
- clean up output of errormonitor (20fcaed)
- create mutation that changes a feature node (84ba961)
- enable n-arity operators for dimensional analysis (dbc9777)
- general form of
gen_random_tree_fixed_size(bd95031) - general form of tree rotation (940fc78)
- generalize _random_connection! logic to n-arity (b2c85f7)
- generalize _random_op mutations to n-arity (62e6758)
- generalize append_random_op to n-arity (c6167d1)
- generalize crossover_trees (c723dfc)
- generalize delete_random_op! (f19bdb7)
- generalize mutate_operator (0f884a2)
- generalize swap_operands to n-arity (9b261f3)
- only mutate up to the number of available features in template expressions (738165e)
- permit n-arity specifications to Options (f6ba5a1)
- constraints for 3-arity operators (4090fbb)
- issue where operators overwritten (c8406eb)
- macro hygeine for internal macros (ccbf692)
- remove old random_node_and_parent import (ab8f7b7)
- TemplateExpression conditioning (a5337f5)
- unbound type param (a8ad5d9)
2.0.0-alpha.3 (2025-07-27)
- enforce that TemplateExpression respected (ac97cd6)
- ensure we copy user guesses if expression (4111469)
- guesses for TemplateExpression (b52906a)
- helpful debugging message for bad template expression guess (d14ace6)
guessesparameter for SRRegressor (236af2b)- permanence of guesses throughout search (c5ff3f0)
- permit guesses in equation search, using
parse_expressionutility (1f24e09) - warn if user passes overly complex guess (f241a4b)
- changes to IDE (c25979e)
2.0.0-alpha.2 (2025-07-20)
- add back missing tangent type (882b454)
- add rng parameter to constant optimization (4add39c)
- ensure Mooncake loaded on workers (b23d1bd)
- fix enzyme calls (31bdd80)
- introduce
stable_get!for stable dictionary access (0319b45) - make enzyme backend more general with
make_zero(e7641a4) - make
has_paramsavailable in top level (9f3d1b2) - Mooncake extension (0a5a919)
- Enzyme integration (still broken though) (e47f081)
- incorrect type declaration (89e4a2b)
- issue where minimizer is not loaded to tree (dbf6513)
- mooncake missing tangent type (734257b)
- parameter count through template expressions (65128a1)
- prep caching based on tree type (0f99a7a)
- remove redundant tangent_type overload (4412b39)
- safe overload of tangent type (7c82d43)
- type instabilities in optimization (f76bece)
2.0.0-alpha.1 (2025-06-24)
- initial support for DE.jl 2.0 (88dc037)
- infer max degree from operators or user-provided (0bada8c)
1.12.0 (2025-06-24)
- issue where minimizer is not loaded to tree (f0ff1a0)
1.11.3 (2025-06-15)
1.11.2 (2025-06-12)
1.11.1 (2025-05-20)
- enable template expressions in a distributed setting (4c96cc9)
- use generic interface for worker distribution (6311632)
1.11.0 (2025-05-18)
- allow
@template_specto declare explicit num_features (ebb1a80) - allow negative losses (fc9fcdb)
- avoid use of scores when assuming negative losses (996d930)
- move
get_optionsinto top namespace (3726466) - recommend users use TemplateExpressionSpec instead (ad07294)
- avoid printing heap size hint if already created (4334193)
- Enzyme extension (up to issues of Enzyme itself) (8f32e96)
- per task cache can be immutable (2a8663c)
- scope error in hall of fame formatting (64c994d)
1.10.0 (2025-05-01)
1.9.3 (2025-04-25)
- unary constraint check missed (bfbb254)
1.9.2 (2025-04-10)
1.9.1 (2025-04-04)
1.9.0 (2025-03-01)
- printing greater and lesser (d5f6fbd)
1.8.0 (2025-02-22)
- allow recording crossovers (#415) (23a4f2e)
- better error for mismatched eltypes (68d6397)
- explicitly monitor errors in workers (b86b4c1)
- generic getters for datasets (3b923bd)
- utility functions for batching dataset (bb406ed)
- batched dataset for optimisation (d085fd8)
- only optimize hall of fame if exists (cc3a8a5)
- parametric expressions batching (2d6f665)
1.7.2 (2025-02-13)
- max of 6 expressions bug (fcb03d9)
1.7.1 (2025-02-09)
- loss_function_expression in distributed mode (c7877f3)
1.7.0 (2025-02-08)
- add max and min (8d0d34d)
- allow initializing parameters from naked array (99b1598)
- allow multiple parameter keys in TemplateExpression (fb0e21c)
- allow no parameters in
@templatemacro (204be7e) - automatically map comparison operators (d08c5d7)
- create
num_params1 argument (f8b1ad0) - custom
mutate_constantfor parametric template expression (a71a545) - export expression spec (fc2df00)
- have TemplateExpression store all parameters in raw string (5e62569)
- introduce
ExpressionSpec(f48e74c) - introduce parameter feature for
TemplateExpression(5c5a07e) - macro for easy template expressions (3c076e9)
- overload additional operations for ComposableExpression (437a9ca)
- permit
variable_names=nothinginComposableExpression(e478322) - remove node type option for TemplateExpression (b279002)
- rename
num_params5 tonum_params6 (bb927ef) - safety checks for
@templatemacro (91ee759) - warn for
num_params2 andnum_params3 (2d9c0d8)
- better defensive coding (7faeb4d)
- condition for constant mutation of template (8f1b7dc)
- jet error (415fc5c)
- JET flagged issue (432d7a5)
- missing import (ab53c16)
- param assertion (a42aa91)
- some issues in TemplateExpression (29c5e4c)
- type definition (5b8ba79)
1.6.0 (2025-02-02)
- allow for variable
nthreads(d29742b)
1.5.2 (2025-01-03)
- ambiguity in target scitype (ea27c1a)
- make
:classcol more generic toXtype (864eb63) - pass eval options through TemplateExpression (40cca0e)
- switch to
Unknownrather thanAny(9f82c13)
1.5.1 (2024-12-26)
- add missing
literal_pow(2a92af1) - higher order safe operators (12449ca)
- zero-arg ComposableExpression when nan (d875abb)
1.5.0 (2024-12-14)
- add safe versions of
asinandacos(42dfd8d) - create
safe_atanhoperator (f5a41e7) - make safe operators compatible with ForwardDiff (58ade27)
1.4.0 (2024-12-13)
- dynamic autodiff integration (edcb9ed)
- re-use allocations within mutation loop (bf1c521)
- reduce allocations within
next_generation(530689f)
- allocate node storage for actual size (adcdf15)
- ensure right size for preallocated storage (399b86a)
- prealloc for template expressions (693ef01)
- prealloc was unused (a397dad)
1.3.1 (2024-12-11)
- ambiguity in TemplateExpression (652ea0b)
1.3.0 (2024-12-09)
- add printing for DivMonomial (f5f7637)
- allow user-specified
stdin(457c9cc) - automatic simplification in derivatives (2c2d9fc)
- derivative operator for ComposableExpression (015ac95)
- derivative speed hack for no dependence on variable (39da124)
- heavier automatic simplification in derivatives (72e21fe)
- include pretty printing of derivative operators (73584d3)
- make
Doperator compatible with TemplateExpression (410e882) - prefer ForwardDiff over Zygote for ComposableExpression derivatives (74d2d33)
- simplify common derivatives (472f0a7)
- use newer
_zygote_gradientoperators (3db5f99)
- old imports (e05da70)
1.2.0 (2024-12-08)
- add missing
condition_mutation_weights!to fix #378 (f0027f4) - add missing
count_scalar_constantsfor TemplateExpression (802a370)
1.1.0 (2024-12-03)
- allow passing additional extensions for worker imports (788ce37)
- distributed TensorBoardLogging (272195e)
1.0.3 (2024-11-28)
- allow argument-less TemplateExpression parts (f4c0d7c)
predictfor TemplateExpressions (808bd10)
1.0.2 (2024-11-24)
- widen type constraints for TemplateExpression (b5fc8eb)
1.0.1 (2024-11-20)
1.0.0 (2024-11-15)
- change sampling of TemplateExpression (52c933c)
- put summary statistics in separate dict (6466213)
- update default logging interval (77fe278)
- update MLJ defaults (9e89815)
1.0.0-beta4 (2024-11-09)
- remove plotting utility
1.0.0-beta3 (2024-11-07)
- fully deprecate varMap
- move
HierarchicalExpressioninto place ofTemplateExpression - rename
classestoclass
- allow custom complexity functions (ee19066)
- better printing for HierarchicalExpression (81b1870)
- create
ComposableExpression(effab2c) - enable
VectorWrapperfor other operators (bc48fcc) - ensure we save the full expression string (a05bb16)
- expose VectorWrapper (666babd)
- info dump at end of search (b517a8d)
- init hierarchical expression (a1e192c)
- make hierarchical expressions compatible (05419e4)
- move
HierarchicalExpressioninto place ofTemplateExpression(dc2d509) - print with
=to not have breaks (15a6159) - return
VectorWrapper0 for invalid result rather thanVectorWrapper1 (6ef8bcf) - tweak names of internal types (42935fc)
- validation of inferred constraints (eca9b91)
- copying complexity function to worker (9f0261d)
- correct return type for
get_tree(d4c84dc) - fix old use of
pretty(cdfaaca) - HierarchicalExpression instabilities (c3aa38b)
- JET error (91fbee9)
- left arg in ComposableExpression (e5bfeff)
- map to safe operators within ComposableExpression (8050cd3)
- move back NodeSampler to exports (8e438ca)
- move
VectorWrapper3 to end for precompilation (d59de9b) - need to freeze operators in HierarchicalExpression and ComposableExpression (756a2d9)
- reference to classes (a59d77a)
- switch to
prettyoverraw(609b7da) - validate degree 2 nans (1d22351)
- validate keys of
VectorWrapper4 (4a7bf35)
1.0.0-beta2 (2024-10-30)
- default maxsize now 30
- store CSV in
outputsfolder - MLJ saving unicode to csv
- impose new default search hyperparameters
- increase default
niterations - modify default hyperparameters
- accommodate newlines in equation strings (f59186b)
- add default options selector (c6501be)
- add other defaults to
AbstractRuntimeOptions9 (4617b35) - allow custom evaluation for ConstrainedExpression (4ce678d)
- callable TemplateExpression (108d1c1)
- color outputs of TemplateExpression (8a4ce91)
- create abstract search state class (aa12f30)
- create
AbstractOptions,AbstractRuntimeOptions,AbstractMutationWeights(5e0053d) - declare safe operators to have easy aliases (b587afa)
- default maxsize now 30 (10abb4f)
- export
AbstractOptions3 andAbstractOptions4 (e71ec07) - generalize MLJ interface (9ed392c)
- give reduced complexity for constrained expressions (2e0867b)
- impose new default search hyperparameters (062a9dc)
- improve printing styling for multi-line output (be2fccb)
- increase default
AbstractMutationWeights0 (c9bd7db) - initial implementation of ConstrainedExpression (87d37aa)
- introduce
AbstractRuntimeOptions5 for cleanerAbstractRuntimeOptions6 (88a80ae) - modify default hyperparameters (7e5e517)
- permit complex structured output (0514bca)
- refactor mutations to enable user overloading (44ecc12)
- round best hparams to 3 sig digits (06ce20d)
- store CSV in
AbstractRuntimeOptions8 folder (dde3d83) - stylize printout (5af1357)
- switch from ProgressBars.jl to ProgressMeter.jl (38cbe09)
- variable constraint checking (2d9d634)
- weight TemplateExpression sampling by num nodes (a9e5332)
- add expected array type for type mismatch (2ff1e2b)
- aliasing issue in
simplifywith extra copy (bb86777) - annealing issue (00af0ac)
- bug in option specialization affecting Enzyme (93e1238)
- call to
sort_params(0300b05) - ensure
operatorsalways available (3225e6f) - guard more aliasing issues (52f738a)
AbstractOptions6 for TemplateExpression (8433d66)- interaction with DispatchDoctor (27746e4)
- make
AbstractOptions8 into callableAbstractOptions9 (8c91200) - method ambiguity (1031d9b)
- miscalculations of
AbstractOptions2 (686b844) - missing calls to
AbstractRuntimeOptions0 (4e52ca4) - missing import (ae69e10)
- missing
AbstractOptions0 (f455f7a) - missing method for
AbstractRuntimeOptions7 (1d23cfb) - MLJ saving unicode to csv (f8ad354)
- new
AbstractOptions5 miscalc (bd6d8f5) - new type instabilities from
AbstractRuntimeOptions4 (c809c6c) - prevent aliasing during crossover (a3d28ed)
- printing with explicit newline (b62598f)
- put back constructorof (aae35cb)
- re-enable precompilation (e5c3427)
- some bugs with ConstrainedExpression (7223da3)
- some imports in ExpressionBuilder (6c78145)
- type instability in annotated string (e84f6ab)
- type instability in eval_tree_array (127241d)
- type instability in
AbstractRuntimeOptions3 (1c809d1) - type instability in
AbstractMutationWeights3 (ede3f78) - type instability in ParametricExpression (9c30d14)
- unbound type parameter (2123ef2)
- undo nonsensical change to compute complexity (aab19ea)
- update type inference utility for TemplateExpression (97ea32b)
- weak dispatch in TemplateExpression (acd7762)
1.0.0-beta1 (2024-10-06)
- change default for
rotate_tree
- add classes feature to MLJ interface (2f63ccb)
- add index parameter for Dataset (11e30fb)
- add new string representations via dispatch (ed684fc)
- add TODO item (4fb7580)
- adjust sleep time to actual start of sleep (c258c5d)
- allow symbol for autodiff backend (84e8161)
- allow user-specified autodiff backend; finite or zygote (ca43666)
- avoid
Base.sleepaltogether (0045774) - back to fast loss functions (6a0e32a)
- better monitor of bottlenecks (47da6f5)
- better printing for halls of fame (6a6ea78)
- change default for
@threadcall2 (a622c09) - create
simplify_tree!9 for efficient caching (03624c4) - don't print worker occupation temporarily (8e149bc)
- dont print occupation during warmup (32fec18)
- enable tree rotation for unary operators (06f4dab)
- Enzyme gradients for ParametricExpression (54a38eb)
- explicit stack size for Enzyme (0dac5c8)
- export node_type (6183296)
- expose new
simplify_tree!0 andsimplify_tree!1 (9204a1d) - fallback to regular sleep if 1 thread (62616e7)
- get Zygote gradients working for
ParametricExpressions(c3c2b53) - set node_type based on expression_type (c7476d0)
- set stack size to 32 MB for Enzyme (e7b1340)
- undo abstract expression changes to InterfaceDynamicExpressions (e06d982)
- use DifferentiationInterface.jl for AD backend (fe9c603)
- use
@threadcallfor systemsleep (40daf88) - use
Threads.@spawnover@async(6b2464a) - wip Enzyme support (2190234)
- working Enzyme gradients in loss function (1577e67)
- all underscore identifier (9bb4922)
- ambiguities (8fb0c94)
- avoid storing
simplify_tree!4 withinsimplify_tree!5 (a4709bf) - consistency checks in metadata stripping (37712f6)
- ensure
simplify_tree!2 is copied for Enzyme analysis (ffa9f52) - ensure we continue in parametrized function test (08f8d44)
- ensure we mark
simplify_tree!6d argument assimplify_tree!7 (1209652) - EnzymeRules marking (002df6d)
- error message in rotation (46921dc)
- ignore functions in Enzyme and ChainRulesCore (b4265c1)
default_node -> default_node_type(13687b4)- issue with outer threads loop (c12bac4)
- issue with rotation of tree (241f6dc)
- jet issues with union splitting (8d50d4d)
- jet union split (381b3a7)
- mistaken assertion (dae5593)
- mlj interface for classes (05493f6)
- more type stability for Enzyme (1d60c81)
- move back to
@asyncto fix race condition (86a39f0) - nonblocking sleep (e6f29d8)
- order of ParametricExpression arguments (6c9b9e9)
- prevent bad RNGs in MLJ tests (5ab8d16)
- repeated depwarns cause dict write error (bb3846d)
- simplification within SingleIteration (4d5f1cc)
- stripping of metadata in loaded state (38923b7)
- switch out julia sleep implementation (5a09dea)
- type instability in
init_dummy_pops(80fb38f) - use of
simplify_tree!(d1d8e41) - various method ambiguities (4bd4658)
- when bin constraints passed as dict (e078916)
- change to
@threadcall(e899d58)
0.24.5 (2024-06-16)
- allow vector of variable complexities (e5f2d3e)
- allow for scalar variable complexities (9553c52)
- mark more functions as unstable (4a6dc8a)
- some type instabilities (065a4f9)
- various issues found by JET (5d5d6dc)
0.24.4 (2024-04-28)
- add option to force dimensionless constants (571f85b)
- use
?for wildcard units instead of cdot (df86692)
0.24.3 (2024-04-26)
0.24.2 (2024-04-14)
0.24.1 (2024-03-24)
0.24.0 (2024-03-20)
0.23.3 (2024-02-23)
0.23.2 (2024-02-17)
0.23.1 (2024-01-03)
0.23.0 (2023-12-24)
0.22.5 (2023-12-11)
0.22.4 (2023-08-20)
0.22.3 (2023-08-17)
0.22.2 (2023-08-10)
0.22.1 (2023-08-07)
0.22.0 (2023-08-07)
0.21.5 (2023-08-02)
0.21.4 (2023-08-01)
0.21.3 (2023-07-27)
0.21.2 (2023-07-23)
0.21.1 (2023-07-22)
0.21.0 (2023-07-22)
0.20.0 (2023-07-05)
0.19.1 (2023-06-19)
0.19.0 (2023-05-28)
0.18.0 (2023-05-12)
0.17.1 (2023-04-26)
0.17.0 (2023-04-22)
0.16.3 (2023-04-13)
0.16.2 (2023-03-25)
0.16.1 (2023-03-21)
0.16.0 (2023-03-20)
0.15.3 (2023-03-03)
0.15.2 (2023-02-18)
0.15.1 (2023-02-13)
0.15.0 (2023-01-16)
0.14.5 (2022-11-28)
0.14.4 (2022-11-21)
0.14.3 (2022-11-04)
0.14.2 (2022-11-03)
0.14.1 (2022-11-03)
0.14.0 (2022-10-31)
0.13.3 (2022-10-31)
0.13.2 (2022-10-24)
0.13.1 (2022-10-24)
0.13.0 (2022-10-24)
0.12.6 (2022-10-22)
0.12.5 (2022-10-18)
0.12.4 (2022-10-17)
0.12.3 (2022-10-14)
0.12.2 (2022-10-06)
0.12.1 (2022-09-10)
0.12.0 (2022-09-10)
0.11.1 (2022-09-09)
0.10.2 (2022-08-22)
0.9.7 (2022-07-08)
0.9.6 (2022-06-03)
0.9.5 (2022-06-02)
0.9.3 (2022-05-23)
0.9.2 (2022-05-16)
0.9.0 (2022-05-02)
0.8.7 (2022-04-25)
0.8.6 (2022-04-24)
0.8.5 (2022-04-23)
0.8.3 (2022-04-10)
0.8.2 (2022-04-08)
0.8.1 (2022-03-28)
0.7.13 (2022-02-23)
0.7.10 (2022-02-14)
0.7.9 (2022-02-14)
0.7.8 (2022-02-12)
0.7.7 (2022-02-02)
0.7.6 (2022-02-02)
0.7.5 (2022-02-01)
0.7.4 (2022-02-01)
0.7.3 (2022-02-01)
0.7.2 (2022-01-31)
0.7.1 (2022-01-31)
0.7.0 (2022-01-24)
0.6.19 (2022-01-22)
0.6.18 (2022-01-18)
0.6.17 (2022-01-18)
0.6.16 (2021-11-11)
0.6.15 (2021-11-08)
0.6.14 (2021-09-21)
0.6.13 (2021-09-14)
0.6.12 (2021-08-04)
0.6.11 (2021-07-09)
0.6.10 (2021-07-08)
0.6.9 (2021-06-16)
0.6.8 (2021-06-15)
0.6.7 (2021-06-14)
0.6.6 (2021-06-14)
0.6.5 (2021-06-08)
0.6.4 (2021-06-06)
0.6.3 (2021-06-06)
0.6.2 (2021-06-04)
0.6.1 (2021-06-02)
0.6.0 (2021-05-30)
0.5.16 (2021-03-06)
0.5.15 (2021-03-06)
0.5.14 (2021-03-06)
0.5.13 (2021-03-01)
0.5.12 (2021-02-26)
0.5.11 (2021-02-26)
0.5.10 (2021-02-26)
0.5.9 (2021-02-25)
0.5.8 (2021-02-25)
0.5.7 (2021-02-25)
0.5.6 (2021-02-25)
0.5.5 (2021-02-25)
0.5.4 (2021-02-25)
0.5.3 (2021-02-25)
0.5.2 (2021-02-24)
0.5.1 (2021-02-24)
0.5.0 (2021-02-11)
0.4.11 (2021-02-09)
0.4.10 (2021-02-09)
0.4.9 (2021-02-08)
0.4.8 (2021-02-08)
0.4.7 (2021-02-05)
0.4.6 (2021-02-04)
0.4.5 (2021-02-04)
0.4.4 (2021-02-04)
0.4.3 (2021-02-03)
0.4.2 (2021-02-03)
0.4.1 (2021-02-02)
0.4.0 (2021-02-01)
0.3.5 (2021-02-01)
0.3.4 (2021-01-31)
0.3.3 (2021-01-30)
0.3.2 (2021-01-29)
0.3.1 (2021-01-29)
0.3.0 (2021-01-29)
0.2.2 (2021-01-29)
0.2.1 (2021-01-29)
0.2.0 (2026-02-14)
- 10 issue with hall of fame not saving (c9adc43)