Change Log Report
Total number of changed sets: 1
Changes from an unknown range
Total commits: 136
Total number of files changed: 140
| Timestamp | Author | Details |
|---|---|---|
| 2026-07-19 15:10:53 | Bruno Mahé <bruno@bmahe.net> | Apply spotless format |
| 2026-07-19 15:08:25 | Bruno Mahé <bruno@bmahe.net> | Allow recurrent connections from output nodes Add an opt-in AddConnection policy flag for evolving output-to-hidden and output-to-output links while preserving feed-forward defaults. Update recurrent samples, documentation, and coverage.\n\nTests: mvn -pl neat -am test\nTests: mvn -pl samples -am clean compile -DskipTests |
| 2026-07-19 03:21:35 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2026-07-19 03:21:32 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r6.0 |
| 2026-07-17 21:45:03 | Bruno Mahé <bruno@bmahe.net> | Apply Spotless to ensure code is formatted appropriately |
| 2026-07-17 21:43:53 | Bruno Mahé <bruno@bmahe.net> | Use openrewrite to s/Validate.notNull/Objects.requireNonNull/g Command: ```bash mvn -U org.openrewrite.maven:rewrite-maven-plugin:run --define rewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-static-analysis:RELEASE --define rewrite.activeRecipes=org.openrewrite.staticanalysis.ReplaceApacheCommonsLang3ValidateNotNullWithObjectsRequireNonNull --define rewrite.exportDatatables=true ``` |
| 2026-07-17 21:41:32 | Bruno Mahé <bruno@bmahe.net> | Apply openrewrite common sast rules Command: ```bash mvn -U org.openrewrite.maven:rewrite-maven-plugin:run --define rewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-static-analysis:RELEASE --define rewrite.activeRecipes=org.openrewrite.staticanalysis.CommonStaticAnalysis ``` |
| 2026-07-17 19:12:52 | Bruno Mahé <bruno@bmahe.net> | Run openrewrite recipe for Java 25 Command: ```bash mvn -U org.openrewrite.maven:rewrite-maven-plugin:run --define rewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-migrate-java:RELEASE --define rewrite.activeRecipes=org.openrewrite.java.migrate.UpgradeToJava25 --define rewrite.exportDatatables=true ``` |
| 2026-07-16 22:42:41 | Bruno Mahé <bruno@bmahe.net> | Document Java 25 compatibility Update CI and contributor guidance for the Java 25 baseline, document the 5.x/6.x compatibility split, and recommend the latest stable 5.3 release in examples.\n\nTests: mvn --batch-mode spotless:check\nTests: mvn --batch-mode clean verify -DskipPITests=true |
| 2026-07-16 22:08:33 | Bruno Mahé <bruno@bmahe.net> | Start 6.0 development line Bump the Maven reactor to 6.0-SNAPSHOT after adopting Java 25 as the minimum supported runtime. Tests: mvn --batch-mode validate |
| 2026-07-16 00:53:07 | Bruno Mahé <bruno@bmahe.net> | Support sparse NEAT node IDs Add extensible node layouts and population-scoped hidden-node allocation so sparse external identities remain stable across factories and structural mutations. Update NEAT consumers and samples to preserve declared input and output order. Tests: mvn clean verify -DskipPITests=true Refs #25 |
| 2026-05-08 23:42:15 | Bruno Mahé <bruno@bmahe.net> | Normalize empty XML tags |
| 2026-04-30 05:24:06 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2026-04-30 05:24:02 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r5.3 |
| 2026-04-29 02:50:34 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2026-04-29 02:50:30 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r5.2 |
| 2026-04-29 02:41:42 | Bruno Mahé <bruno@bmahe.net> | Apply spotless format |
| 2026-04-26 18:55:24 | Bruno Mahé <bruno@bmahe.net> | Fix multi fitness plotting for new pandas Remove the deprecated pandas use_inf_as_na option from the sample plotting script and normalize the fitness column explicitly before aggregation. This keeps min/max/quantile plotting working on recent pandas releases by coercing non-numeric values and replacing infinite values with NaN. Tests: python3 samples/scripts/plot_multi_fitness.py --help |
| 2025-11-24 02:03:26 | Bruno Mahé <bruno@bmahe.net> | Apply spotless format |
| 2025-11-24 01:52:56 | Bruno Mahé <bruno@bmahe.net> | Add example about NEAT streaming parity article |
| 2025-11-15 14:12:12 | Bruno Mahé <bruno@bmahe.net> | Update formatting rules |
| 2025-11-15 12:09:23 | Bruno Mahé <bruno@bmahe.net> | Add a new maven plugin to ensure consistent formatting |
| 2025-11-15 11:33:02 | Bruno Mahé <bruno@bmahe.net> | Add recurrent NEAT parity/control demos Add runnable streaming parity and thrust controller examples under the samples module so users can exercise recurrent NEAT configs. Includes documentation for the website |
| 2025-10-01 07:29:27 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2025-10-01 07:29:23 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r5.1 |
| 2025-09-29 08:53:46 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2025-09-29 08:53:39 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r5.0 |
| 2025-09-28 02:00:54 | Bruno Mahé <bruno@bmahe.net> | Replace tab with space as commandlineArgs gets confused by tab |
| 2025-09-27 18:54:59 | Bruno Mahé <bruno@bmahe.net> | Move DoubleTournament to GP module. It is dedicated to genetic programming and there is a more generic alternative with the Selective Refinement Tournament operator |
| 2025-09-27 00:26:50 | Bruno Mahé <bruno@bmahe.net> | Mass format the code |
| 2025-09-27 00:24:36 | Bruno Mahé <bruno@bmahe.net> | Add a new symbolic regression example based on SRT and update the article about bloat issues |
| 2025-09-21 15:49:20 | Bruno Mahé <bruno@bmahe.net> | Add utility method for evaluating fitness of single chromosomes - Add static utility method to simplify fitness evaluation for single chromosomes - Include comprehensive documentation with usage examples and edge cases - Add complete test suite covering valid cases, error conditions, and edge cases - Update TSVExample to demonstrate usage of the new utility method - Improve code formatting and documentation consistency in Fitness interface 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> |
| 2025-09-21 13:09:28 | Bruno Mahé <bruno@bmahe.net> | Clean up a bit TSVExample |
| 2025-09-18 00:44:10 | Bruno Mahé <bruno@bmahe.net> | Replace deprecated Validate::notNull with Objects::requireNonNull |
| 2025-09-17 06:19:19 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2025-09-17 06:19:13 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r4.2 |
| 2025-09-16 23:09:48 | Bruno Mahé <bruno@bmahe.net> | Bumped major version as the previous commit break interfaces and compatibility Command run: ```bash mvn --batch-mode release:update-versions -DdevelopmentVersion=5.0-SNAPSHOT ``` |
| 2025-09-16 22:25:27 | Bruno Mahé <bruno@bmahe.net> | Optimize SymbolicRegressionWithDoubleTournament and add more parsimony pressure This results in increasing the odds of success for that example as it results in smaller individuals |
| 2025-09-13 23:29:20 | Bruno Mahé <bruno@bmahe.net> | Address build issues after upgrade. The root cause is the update of Apache Maven Site on two fronts: * It get stuck with the first module. This means that ${basedir} is stuck to the value of the first module it is executed in and provides the wrong values. This is the same for every other module specific variables such as ${maven.multiModuleProjectDirectory} * There are bugs in the locales handling. And while this is optional, it won't work without it |
| 2025-09-07 15:48:01 | Bruno Mahé <bruno@bmahe.net> | Update dependencies |
| 2024-06-24 02:36:02 | Bruno Mahé <bruno@bmahe.net> | Small clean up and quality of life changes |
| 2024-02-12 11:01:32 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2024-02-12 11:01:30 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r4.1 |
| 2023-10-16 01:30:16 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2023-10-16 01:30:13 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r4.0 |
| 2023-10-14 15:01:56 | Bruno Mahé <bruno@bmahe.net> | Update site for java 21 Fix conflict in generated graphviz diagrams from the docs |
| 2023-10-11 21:12:21 | Bruno Mahé <bruno@bmahe.net> | Update version to 4.0-SNAPSHOT in preparation for the java 21 updates |
| 2023-10-11 00:53:00 | Bruno Mahé <bruno@bmahe.net> | Add new sample about evolutionary painting |
| 2023-07-25 03:58:30 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2023-07-25 03:58:28 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r3.4 |
| 2023-07-16 23:00:21 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2023-07-16 23:00:18 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r3.3 |
| 2023-07-16 20:03:15 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2023-07-16 20:03:13 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r3.2 |
| 2023-07-16 19:41:49 | Bruno Mahé <bruno@bmahe.net> | Add SITE_EXTRA_HEADER to the samples module |
| 2023-07-15 21:50:04 | Bruno Mahé <bruno@bmahe.net> | Extend auto-loading capabilities to all handlers and migrate MOO handlers auto-loading |
| 2023-06-15 10:19:18 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2023-06-15 10:19:16 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r3.1 |
| 2023-04-30 19:06:00 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2023-04-30 19:05:56 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r3.0 |
| 2023-04-28 00:40:29 | Bruno Mahé <bruno@bmahe.net> | Upgrade major version to 3.0-SNAPSHOT |
| 2023-04-27 22:08:03 | Bruno Mahé <bruno@bmahe.net> | Fix link in the doc |
| 2023-04-27 01:20:15 | Bruno Mahé <bruno@bmahe.net> | Add new doc to implement XOR with NEAT |
| 2023-04-23 20:53:28 | Bruno Mahé <bruno@bmahe.net> | Improve test coverage for the NEAT module |
| 2023-03-25 19:33:25 | Bruno Mahé <bruno@bmahe.net> | Update the website to https://genetics4j.org |
| 2022-11-29 01:23:25 | Bruno Mahé <bruno@bmahe.net> | Fix typo in Optimization s/MAXIMZE/MAXIMIZE/g |
| 2022-11-29 01:18:31 | Bruno Mahé <bruno@bmahe.net> | Fix bug where species were trimming their best performers rather than their lowest performers |
| 2022-11-23 22:12:15 | Bruno Mahé <bruno@bmahe.net> | Refactor and export a new method EASystem::createOffsprings to generate offsprings from an existing population |
| 2022-10-16 18:32:54 | Bruno Mahé <bruno@bmahe.net> | Add basic NEAT implementation |
| 2022-05-23 21:12:41 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2022-05-23 21:12:38 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r2.0 |
| 2022-04-17 14:59:34 | Bruno Mahé <bruno@bmahe.net> | Make the Kernel execution context more accessible. This means extracting more information about supported workgroup sizes by the devices and pass the KernelExecutionContext to the FitnessExtractor. It also allows the LocalMemoryAllocators to tailor buffer sizes to the chosen workgroup sizes. |
| 2022-03-26 17:51:19 | Bruno Mahé <bruno@bmahe.net> | Add MOO with seed to the mixture model doc |
| 2022-03-23 22:35:37 | Bruno Mahé <bruno@bmahe.net> | Fix some log statements |
| 2022-03-21 01:34:27 | Bruno Mahé <bruno@bmahe.net> | Add a GPU module for OpenCL based evolution and a sample demonstrating its use for mixture models |
| 2021-12-25 20:28:32 | Bruno Mahé <bruno@bmahe.net> | Rename EAConfigurationSync to EAConfiguration This sets the synchronous configuration as the default one as it's the easiest one to get started with. |
| 2021-12-25 19:50:13 | Bruno Mahé <bruno@bmahe.net> | Provide a way for users to compute the fitness in their own asynchronous way |
| 2021-09-21 22:27:26 | Bruno Mahé <bruno@bmahe.net> | Remove zealous guard. Such case can happen. |
| 2021-09-21 03:47:43 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2021-09-21 03:47:41 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r1.8 |
| 2021-09-21 00:37:51 | Bruno Mahé <bruno@bmahe.net> | Set major version to 2.0-SNAPSHOT in preparation to the java 17 migration |
| 2021-09-21 00:26:46 | Bruno Mahé <bruno@bmahe.net> | Update to java 17 and junit 5 Also disable pitest temporarily until it supports java 17 |
| 2021-09-19 19:54:51 | Bruno Mahé <bruno@bmahe.net> | Force the plotting scripts from sample to use python3 The CI image does not have any python alias and thus require a more specific version |
| 2021-09-19 16:29:56 | Bruno Mahé <bruno@bmahe.net> | Add a new doc about Clustering and clean up the associated code |
| 2021-09-09 23:08:04 | Bruno Mahé <bruno@bmahe.net> | Add a new example which clusters data using real valued chromosomes |
| 2021-09-04 15:14:49 | Bruno Mahé <bruno@bmahe.net> | Add a support for halting evolution when the fitness does not improve over a specified number of generations |
| 2021-08-14 05:32:19 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2021-08-14 05:32:16 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r1.7 |
| 2020-11-12 06:31:13 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2020-11-12 06:31:10 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r1.6 |
| 2020-06-27 16:55:17 | Bruno Mahé <bruno@bmahe.net> | Tweak doc |
| 2020-06-21 02:40:12 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2020-06-21 02:40:10 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r1.5 |
| 2020-06-20 14:35:06 | Bruno Mahé <bruno@bmahe.net> | Non-MOO examples of symbolic regression should convert their fitness to a vector[fitness, parsimony] This makes visualization of the front over generation more obvious |
| 2020-06-19 02:11:51 | Bruno Mahé <bruno@bmahe.net> | Add Tarpeian Method to fight bloat and documented the Symbolic Regression examples in the samples website |
| 2020-06-13 14:57:05 | Bruno Mahé <bruno@bmahe.net> | Add a new Symbolic Regression example based on enforced max depth Also ensure the very same equation is being regressed on in each of the symbolic regression examples |
| 2020-06-13 01:09:21 | Bruno Mahé <bruno@bmahe.net> | Add an example of symbolic regression using proportional tournaments |
| 2020-06-13 01:09:07 | Bruno Mahé <bruno@bmahe.net> | Adjust csv logger |
| 2020-06-12 22:44:31 | Bruno Mahé <bruno@bmahe.net> | Add a new example for Symbolic Regression based on Double Tournaments |
| 2020-06-10 22:24:56 | Bruno Mahé <bruno@bmahe.net> | Add support for Double and proportional tournaments |
| 2020-06-01 23:29:20 | Bruno Mahé <bruno@bmahe.net> | Replace the comparator in the examples Note that this comparator does not take in account commutativity or rotations. |
| 2020-05-31 18:07:44 | Bruno Mahé <bruno@bmahe.net> | Add support for SPEA2 |
| 2020-05-19 00:14:27 | Bruno Mahé <bruno@bmahe.net> | Add a new operator for GP implementing Node Replacement |
| 2020-05-17 15:58:11 | Bruno Mahé <bruno@bmahe.net> | Add some doc about fitness sharing |
| 2020-05-13 08:22:27 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2020-05-13 08:22:25 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r1.4 |
| 2020-05-12 01:32:54 | Bruno Mahé <bruno@bmahe.net> | Add Fitness Sharing on top of a new concept for Post Evaluation processing. This fix #21 |
| 2020-05-11 21:25:39 | Bruno Mahé <bruno@bmahe.net> | Add a new EvolutionListener which dumps results in a CSV One of the benefits is it abstracts the user from worrying how to structure the columns |
| 2020-05-09 19:30:04 | Bruno Mahé <bruno@bmahe.net> | s/Evolution Strategy/Replacement Strategy/g Replacement Strategy is more clear and appropriate. Based on how _evolution strategy_ is used in different books, it might be interpreted slightly differently depending on the context, which could lead to confusion. |
| 2020-05-05 00:10:24 | Bruno Mahé <bruno@bmahe.net> | Introduce the concept of Evolution Strategy An Evolution Strategy defines how the next generation is created based on the offsprings and the current generation. Fix #19 |
| 2020-05-03 17:36:20 | Bruno Mahé <bruno@bmahe.net> | Simplify GPEAExecutionContexts as to require less parameters Add a new method to GPEAExecutionContexts.forGP which require neither a ProgramHelper nor a ProgramGenerator. It uses by default the well known ramped half and half population generation algorithm. Fix #17 |
| 2020-05-01 07:11:18 | Bruno Mahé <bruno@bmahe.net> | Docs and usability tweaks |
| 2020-05-01 02:08:07 | Bruno Mahé <bruno@bmahe.net> | Rename classes as their names weren't appropriate. Renamed: - GenotypeSpec -> EAConfiguration - GeneticSystem -> EASystem - GeneticSystemDescriptor -> EAExecutionContext Evolutionary Algorithm is a more appropriate and generic term given the scope of this project. Fix #16 |
| 2020-04-23 22:23:11 | Bruno Mahé <bruno@bmahe.net> | Add a new module for Multi-Objective Optimization. This new module implements NSGA2 |
| 2020-04-15 00:47:33 | Bruno Mahé <bruno@bmahe.net> | Add Ramped Half and Half GP Program generation and abstract fitness function. |
| 2020-04-12 17:00:58 | Bruno Mahé <bruno@bmahe.net> | Add MultiProgramGenerator as a way to combine different program generation strategies |
| 2020-04-10 00:49:33 | Bruno Mahé <bruno@bmahe.net> | Extract Symbolic Regression sample to the sample module |
| 2020-04-02 01:39:08 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2020-04-02 01:39:05 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r1.3 |
| 2020-03-27 07:30:23 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2020-03-27 07:30:19 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r1.2 |
| 2020-03-27 05:30:45 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2020-03-27 05:30:43 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r1.1 |
| 2020-01-04 23:12:21 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare for next development iteration |
| 2020-01-04 23:12:19 | Gitlab CI <ci@bmahe.net> | [maven-release-plugin][ci skip] prepare release r1.0 |
| 2019-10-23 01:14:34 | Bruno Mahé <bruno@bmahe.net> | Implement #1 - the Edge Recombination Crossover combination operator and enable the Swap mutation operator to not use a fix number of swaps |
| 2019-10-21 23:49:47 | Bruno Mahé <bruno@bmahe.net> | Add a partial mutation operator |
| 2019-10-21 22:41:26 | Bruno Mahé <bruno@bmahe.net> | Implement combinations of chromosome combinators |
| 2019-10-19 02:37:18 | Bruno Mahé <bruno@bmahe.net> | Add ability to specify meta-selections which combine multiple selection policies |
| 2019-10-18 19:50:32 | Bruno Mahé <bruno@bmahe.net> | Add ability to specify meta-mutations which points to other mutation policies This has required some extensive refactoring to accomodate this capability |
| 2019-08-23 21:41:15 | Bruno Mahé <bruno@bmahe.net> | Fix compilation error |
| 2019-08-23 21:05:42 | Bruno Mahé <bruno@bmahe.net> | Misc. cleanup and refactoring. Also handle TSPLIB problems |
| 2019-08-22 23:41:23 | Bruno Mahé <bruno@bmahe.net> | Provide a way to supply population generator |
| 2019-08-22 00:19:27 | Bruno Mahé <bruno@bmahe.net> | Add Order Crossover (OX) operator and TSV problem sample |
| 2019-08-20 01:33:39 | Bruno Mahé <bruno@bmahe.net> | Add minimization feature |
| 2019-08-17 23:28:13 | Bruno Mahé <bruno@bmahe.net> | Initial commit |