Skip to content

Releases: hdbeukel/james-core

JAMES Core v1.2

12 Aug 13:33

Choose a tag to compare

  • Added public method init() to Search to perform initialization. This method is called from within searchStarted() but may also be called prior to execution.
  • Updated LocalSearch, LRsubsetSearch, NeighbourhoodSearch and BasicParallelSearch to use the new init() method for initialization and validation.
  • When initializing a ParallelTempering or BasicParallelSearch algorithm all subsearches are now initialized as well.
  • Added public method setCurrentSolution(solution, evaluation, validation) to LocalSearch to set a new current solution with known evaluation and validation.
  • Avoid full re-evaluation and re-validation when swapping solutions between replicas in ParallelTempering. [#18]
  • Benefit from delta evaluation and validation when shaking in VariableNeighbourhoodSearch. [#17]
  • Added methods to clear all stop criteria and search listeners.
  • Indicative error message when copy() yields null in Solution.checkedCopy(solution). [#32]

JAMES Core v1.1

11 Jul 21:32

Choose a tag to compare

  • Replaced abstract class AbstractProblem with concrete class GenericProblem.
    The former class had a single abstract method, responsible for generating random
    solutions. This has been replaced with delegation through a newly defined
    RandomSolutionGenerator interface. It is now possible (and preferred) to
    model custom problems by plugging in the data, objective, constraints (if any)
    and random solution generator in a GenericProblem, avoiding the need to extend
    and abstract problem class. The predefined SubsetProblem includes a default,
    but now easily customizable, random subset solution generator.
  • Added a constructor to SubsetProblem that allows to easily create a subset
    problem without subset size limits.
  • Reordered arguments in SubsetProblem constructors.
  • Various improvements.

JAMES Core v1.0

17 Jun 14:29

Choose a tag to compare

  • Dedicated customizable random generator per search.
  • Reduced overhead of checking stop criteria.
  • Various improvements and minor bug fixes.
  • Improved test coverage.
  • Cleaned up log messages.
  • Moved SearchFactory interface from extensions to core module. Grouped various factory interfaces in package org.jamesframework.core.factory.
  • Moved to SLF4J API 1.7.12.

JAMES Core v0.2

30 Jan 10:56

Choose a tag to compare

  • Added support for efficient delta evaluations and validations.
  • Provided additional subset neighbourhoods.
  • Added option to sort IDs of selected items in a subset solution using a custom comparator.
  • Renamed SubsetData to IntegerIdentifiedData.
  • Renamed ProblemWithData to AbstractProblem.
  • Refactored abstract Solution class.
  • Reorganized package structure.
  • Removed SubsetProblem interface and renamed SubsetProblemWithData to SubsetProblem.
  • Removed MinMaxObjective.
  • Removed EmptySearchListener, LocalSearchListener and EmptyLocalSearchListener. Default empty implementations of all callbacks are now directly provided in the SearchListener interface.
  • Various code simplifications and optimizations (e.g. using functional operations).
  • Minor bugfixes and improvements.
  • Moved to SLF4J API 1.7.7.
  • Moved to Java 8.

JAMES Core v0.1

30 Jan 10:55

Choose a tag to compare

First stable release.