Skip to content

Version 0.12.0

Compare
Choose a tag to compare
@KEggensperger KEggensperger released this 02 Mar 15:04
8e9b336

Major Changes

  • Support for Successive Halving and Hyperband as new instensification/racing strategies.
  • Improve the SMAC architecture by moving from an architecture where new candidates are passed to the racing algorithm
    to an architecture where the racing algorithm requests new candidates, which is necessary to implement the
    BOHB algorithm (#551).
  • Source code is now PEP8 compliant. PEP8 compliance is checked by travis-ci (#565).
  • Source code is now annotated with type annotation and checked with mypy.

Minor Changes

  • New argument to directly control the size of the initial design (#553).
  • Acquisition function is fed additional arguments at update time (#557).
  • Adds new acquisition function maximizer which goes through a list of pre-specified configurations (#558).
  • Document that the dependency pyrfr does not work with SWIG 4.X (#599).
  • Improved error message for objects which cannot be serialized to json (#453).
  • Dropped the random forest with HPO surrogate which was added in 0.9.
  • Dropped the EPILS facade which was added in 0.6.
  • Simplified the interface for constructing a runhistory object.
  • removed the default rng from the Gaussian process priors (#554).
  • Adds the possibility to specify the acquisition function optimizer for the random search (ROAR) facade (#563).
  • Bump minimal version of ConfigSpace requirement to 0.4.9 (#578).
  • Examples are now rendered on the website using sphinx gallery (#567).

Bug fixes

  • Fixes a bug which caused SMAC to fail for Python function if use_pynisher=False and an exception was raised
    (#437).
  • Fixes a bug in which samples from a Gaussian process were shaped differently based on the number of dimesions of
    the y-array used for fitting the GP (#556).
  • Fixes a bug with respect saving data as json (#555).
  • Better error message for a sobol initial design of size >40 ( #564).
  • Add a missing return statement to GaussianProcess._train.