Skip to content

Commit

Permalink
Version 2.3.0 (#1189)
Browse files Browse the repository at this point in the history
* Improved readme

* SMAC logo 50%

* SMAC logo 50%

* Removed dev-2.0

* Added doc workflow for latest tag

* Fixing docs latest tag

* Fixing docs latest tag

* First steps new intensifier

* Make it work again

* MOVE random weight initialization to smbo ask method

* ADD enable parego in unittests

* Test issues

* FIX formatting

* Link to old documentation

* MOVE random weight initialization to smbo ask method

* ADD enable parego in unittests

* FIX formatting

* Fix unit tests

* Add annotation

* corrected log prob for tophat prior

* Removed configurations from callback

* Fixed tests

* Fix mypy

* Save docs as latest version too

* Enabled all tests again

* Make version an env

* Added last version to docs

* Global variable fix

* Added v before version number

* New Intensifier Implementation (#888)

- Completely reimplemented the intensifiers (including Successive Halving and Hyperband): All intensifiers support multi-fidelity, multi-objective and multi-threading by nature now.
- Expected behaviour for ask-and-tell interface ensured (also for Successive Halving).
- Continuing a run is now fully supported.
- Added more examples.
- Updated documentation based on new implementation.

* First benchmark steps

* Added a warning

* Set xi to 0.01

* Incorporated walltime in trajectory

* Working version of benchmark

* Changed requirements

* Changed xi back to 0.0 again

* No duplicate budgets

* Fixed bug which updated tracker wrongly

* Bugfix: Delete correct bracket+stage

* Fixed tests

* Added costs to the trajectory

* Changed initial design max ratio to 0.25

* Make format

* Added more details to intensifier

* Finished benchmark

* Added benchmark source files

* Fixed tests because of initial design changes

* Improved runhistory API

* Fixed typo (#894)

* Merge doc fixes

* Doc fixes (#893)

Co-authored-by: timruhkopf <[email protected]>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: dengdifan <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Sarah Krebs <[email protected]>

* Make format

* Satisfied mypy

* Enabled more tests

* Increased version

* Mypy

* Mypy

* Mypy

* Fixed critical bug when using highest budget for inc selection

* Added SH+HB comparison

* Stuff

* Updated report

* Fixed docstring

* Fixed image path

* Removed vscode folder

* Bugfixes

* Doc fixes

* Updated changelog

* Make isort

* Fix typos

* Removed new line

* Added alpha2 to docs selection

* update description

* Fix 531 correctly create integers in initial design

This PR fixes a bug in which integer hyperparameters would not
be created correctly in the initial design. This went
unnoticed, except in the case where it was part of a condition
and the function deactivate_inactive_hyperparameters was
called.

This PR fixes this bug by mapping the random float that was
sampled by, for example and LHD or Sobol sequence, to the
float representation of an integer by calling _transform and
_inverse_transform of the integer hyperparameter.

* Add contact paragraph to README.

* Increase days until stale issues are closed by stalebot (#904)

* Edit changelog

* Add issue number

* Closes #907

* Clarify origin of configurations (#908)

* Random forest speed up (#903)

Co-authored-by: René Sass <[email protected]>

* Add: workflow to update pre-commit versions (#874)

Co-authored-by: René Sass <[email protected]>

* Add Git-Flow Workflow Specification

* [DOC] acquisition function maximizers

* Add stale reminder email action

* Increase version number of ConfigSpace

* Add guideline for updating copyright notice years to CONTRIBUTING.md

* Update requirement for pyrfr (#920)

* Update pre-commit: isort,flake8 version numbers

* Format black

* Fix mypy

* Ac bench (#929)

* Add Branin AC Task

* Add ac optimization type

* Nicer plotting

* Add ac mode

* Update ac task

* Make new smac env name adjustable

* Increase python version for smac 1.4

* Update benchmark

* Update plotting

* Goodby comments

* Fix path

* Fix 1.4 wrapper

* Update benchmark results

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* [DOC] added documentation on the incumbent update

* Feature/add version to make publish (#931)

* Add version, correct package name and use bash in makefile

* Increase version

* Increase version in makefile, add places with versions to make publish

* Fix typo

* Transform integer feature names to strings (#930)

* Transform int features to str

* Fix pre-commit

* Update version to 2.0.0

* Update version to 2.0.0

* Update CHANGELOG.md

* Add information on deepcave to the readme

* Correct doc version

* fix(runhistory): set id of the sampled config (#951)

* fix: Set config_id of config in runhistory

* ci: Set dependabot to target development branch (#963)

* feat: Option preventing SMAC setting up logging (#947)

* Version 2.0.0 (#898)

* Update runhistory2epm.py

* pre_commit

* Updated changelog

* Fixed comment

* Updated changelog

* Some small improvements

* Removed trailing space

* Updated changelog

* Restricted pynisher

* Updated changelog

* Link JMLR paper

* Update bibtex entry

Before: arxiv paper, now journal article.

* Fixed citation in docs

* Fixed callback typos

* BOinG for mixed hyperparameter search space

* fix format

* maint

* maint documentation

* maint pre-commit

* fix workflow

* maint

* Add dependabot for workflow files

* Bump actions/setup-python from 2 to 4 (#849)

Bumps [actions/setup-python](https://github.com/actions/setup-python) from 2 to 4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v2...v4)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump actions/checkout from 2 to 3 (#850)

Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* maint

* Updated stale bot

* Updated stale options again

* Fixed typing

* Increased version

* rename check_point_in_ss to check_subspace_point

* Make format

* Uncomment test procedure

* docstrings for boing facade

* avoid typing namespace everywhere in epm_configuration_chooser

* fix docstring in rh2epm_boing

* Limit on dask

* Trying to fix tests

* Replaced typing in all files

* docstring for boing subspace

* Changed feature requests to feature

* allow acq_optimizer_local_kwargs to be passed to boing subspace without acq_optimizer_local

* fix pre-commit

* Added any

* Update facade

* Fix typing
* Match arguments from pSMAC with SMAC4AC signature
* Add description of pSMAC to docstring
* Add option to pass facade class to pSMAC

* Add example for pSMAC

* Removed docstring in readme's example

* Corrected text

* move construct_gp_kernels to smac.epm_gpytorch.boing_kernels

* maint

* fix wrongly imported func name in tests

* Add reference for pSMAC #609

* Rename example file

* Added roadmap to readme

* Prettification

* Add result merger

* Reformat with black

* Delete unnecessary import

* Fix typing

* Inject first trajectory entry from file from first rundir

* Add test for ResultMerger

* Fix docstring

* Get runhistory and trajectory from pSMAC run

Via the result merger. Searchers rundirs and
merges found runhistories and calculates a
new trajectory.

* Get trajectory

* Add regex to requirements

* Fixed MO cache problem

* Fix MO tests

* Fixing MO in AbstractRacer

* Accepting ints

* Hacking in the sum cost for MO

* Fix mypi

* Bugfix

* Make mypi happy

* Fix tests

* Make format

* Remove num_obj in MO optimizer

* A lot of restructuring

* Solve importings

* Solve importings

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Updated changelog

* Still fixing :)

* fix docstrings

* Change directory of tests

* Fix ambiguous variable

* Del newlines

* fix mypy

* mypy and doc fix

* Removed int type checking

* fix tests

* Always return List of incs

* fix path issue in example

* maint boing facade

* Better docstring

* Return values if no bounds passed

* Removed import

* Return only one incumbent

* Rename n_optimizers -> n_workers

* Update example

* Update docstring

* Remove legacy function

* Update to new signature

* Update changelog.md

* Format black

* Update test

* Please pre-commit

* Merge development

* Fix tests

* Fix typos

* Format black

* Updated text

* Increased version

* Improved readme

* SMAC logo 50%

* SMAC logo 50%

* Removed dev-2.0

* Added doc workflow for latest tag

* Fixing docs latest tag

* Fixing docs latest tag

* First steps new intensifier

* Make it work again

* MOVE random weight initialization to smbo ask method

* ADD enable parego in unittests

* Test issues

* FIX formatting

* Link to old documentation

* MOVE random weight initialization to smbo ask method

* ADD enable parego in unittests

* FIX formatting

* Fix unit tests

* Add annotation

* corrected log prob for tophat prior

* Removed configurations from callback

* Fixed tests

* Fix mypy

* Save docs as latest version too

* Enabled all tests again

* Make version an env

* Added last version to docs

* Global variable fix

* Added v before version number

* New Intensifier Implementation (#888)

- Completely reimplemented the intensifiers (including Successive Halving and Hyperband): All intensifiers support multi-fidelity, multi-objective and multi-threading by nature now.
- Expected behaviour for ask-and-tell interface ensured (also for Successive Halving).
- Continuing a run is now fully supported.
- Added more examples.
- Updated documentation based on new implementation.

* First benchmark steps

* Added a warning

* Set xi to 0.01

* Incorporated walltime in trajectory

* Working version of benchmark

* Changed requirements

* Changed xi back to 0.0 again

* No duplicate budgets

* Fixed bug which updated tracker wrongly

* Bugfix: Delete correct bracket+stage

* Fixed tests

* Added costs to the trajectory

* Changed initial design max ratio to 0.25

* Make format

* Added more details to intensifier

* Finished benchmark

* Added benchmark source files

* Fixed tests because of initial design changes

* Improved runhistory API

* Fixed typo (#894)

* Merge doc fixes

* Doc fixes (#893)

Co-authored-by: timruhkopf <[email protected]>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: dengdifan <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Sarah Krebs <[email protected]>

* Make format

* Satisfied mypy

* Enabled more tests

* Increased version

* Mypy

* Mypy

* Mypy

* Fixed critical bug when using highest budget for inc selection

* Added SH+HB comparison

* Stuff

* Updated report

* Fixed docstring

* Fixed image path

* Removed vscode folder

* Bugfixes

* Doc fixes

* Updated changelog

* Make isort

* Fix typos

* Removed new line

* Added alpha2 to docs selection

* update description

* Fix 531 correctly create integers in initial design

This PR fixes a bug in which integer hyperparameters would not
be created correctly in the initial design. This went
unnoticed, except in the case where it was part of a condition
and the function deactivate_inactive_hyperparameters was
called.

This PR fixes this bug by mapping the random float that was
sampled by, for example and LHD or Sobol sequence, to the
float representation of an integer by calling _transform and
_inverse_transform of the integer hyperparameter.

* Add contact paragraph to README.

* Increase days until stale issues are closed by stalebot (#904)

* Edit changelog

* Add issue number

* Closes #907

* Clarify origin of configurations (#908)

* Random forest speed up (#903)

Co-authored-by: René Sass <[email protected]>

* Add: workflow to update pre-commit versions (#874)

Co-authored-by: René Sass <[email protected]>

* Add Git-Flow Workflow Specification

* [DOC] acquisition function maximizers

* Add stale reminder email action

* Increase version number of ConfigSpace

* Add guideline for updating copyright notice years to CONTRIBUTING.md

* Update requirement for pyrfr (#920)

* Update pre-commit: isort,flake8 version numbers

* Format black

* Fix mypy

* Ac bench (#929)

* Add Branin AC Task

* Add ac optimization type

* Nicer plotting

* Add ac mode

* Update ac task

* Make new smac env name adjustable

* Increase python version for smac 1.4

* Update benchmark

* Update plotting

* Goodby comments

* Fix path

* Fix 1.4 wrapper

* Update benchmark results

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* [DOC] added documentation on the incumbent update

* Feature/add version to make publish (#931)

* Add version, correct package name and use bash in makefile

* Increase version

* Increase version in makefile, add places with versions to make publish

* Fix typo

* Transform integer feature names to strings (#930)

* Transform int features to str

* Fix pre-commit

* Update version to 2.0.0

* Update version to 2.0.0

* Update CHANGELOG.md

* Add information on deepcave to the readme

* Correct doc version

---------

Co-authored-by: dengdifan <[email protected]>
Co-authored-by: dengdifan <[email protected]>
Co-authored-by: Matthias Feurer <[email protected]>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: eddiebergman <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: C. Benjamins <[email protected]>
Co-authored-by: Katharina Eggensperger <[email protected]>
Co-authored-by: Eric Kalosa-Kenyon <[email protected]>
Co-authored-by: Pascal <[email protected]>
Co-authored-by: helegraf <[email protected]>
Co-authored-by: timruhkopf <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Sarah Krebs <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Sarah Krebs <[email protected]>
Co-authored-by: helegraf <[email protected]>
Co-authored-by: Jeroen Rook <[email protected]>
Co-authored-by: Tim Ruhkopf <[email protected]>

* feat: Option preventing SMAC setting up logging

* fix: Run isort

* Bump peter-evans/create-pull-request from 3 to 5 (#958)

Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 3 to 5.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/v3...v5)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump actions/setup-python from 2 to 4 (#945)

Bumps [actions/setup-python](https://github.com/actions/setup-python) from 2 to 4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v2...v4)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat: Option preventing SMAC setting up logging

* fix: Run isort

* fix: Add to changelog

* feat: Option preventing SMAC setting up logging

* fix: Run isort

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: René Sass <[email protected]>
Co-authored-by: dengdifan <[email protected]>
Co-authored-by: dengdifan <[email protected]>
Co-authored-by: Matthias Feurer <[email protected]>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: C. Benjamins <[email protected]>
Co-authored-by: Katharina Eggensperger <[email protected]>
Co-authored-by: Eric Kalosa-Kenyon <[email protected]>
Co-authored-by: Pascal <[email protected]>
Co-authored-by: helegraf <[email protected]>
Co-authored-by: timruhkopf <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Sarah Krebs <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Sarah Krebs <[email protected]>
Co-authored-by: helegraf <[email protected]>
Co-authored-by: Jeroen Rook <[email protected]>
Co-authored-by: Tim Ruhkopf <[email protected]>

* Citation update (#961)

* update CITATION.cff

* update order in CITATION.cff

* fix citation date

* fix citation

* maint

* Adjust hyperband configuration distribution across brackets

* Compute the actual differences between the isb keys. (#957)

* Compute the actual differences between the isb keys.

* Added change to CHANGELOG.md

* Adjust schedule for stale reminder

* fix(logging): Prevent automatic logging setup at init (#970)

* fix(logging): Prevent automatic logging setup at init

* fix(logging): Rely on `setup_logging` to handle arg

* Fix validate method of smbo, update docstring.

* Allow callbacks to be added to a specific index, make callback registering public

* Update CHANGELOG.md

* Fix broken references (#988)

* Adapt developer install instructions to include pre-commit installation (#994)

* [Feature] Initial Design now supports executing the default config provided by the user by means of the configspace he generated. (and is no longer ignored)

* Pipe dask_client through facade for exec on hpc (#983)

* Pipe dask_client through facade for exec on hpc

* Handle pynisher's memory arg

Before: Could only pass int via SMAC with the default unit B, but now tuple/list is possible

* Update CHANGELOG.md

* Make format

* No printi

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* [Bug-fix] Pr was failing due to mutable additional configs default

* [doc-fix] the count of initial design configs is computed slightly differently

* Feature/metadata callback (#999)

* Add example for using a callback to log run metadata to a file

* Add issue number in changelog

* Changelog formatting

* Simplify metadata example

* Simplify metadata example

* Put callback in smac directory to allow importing it in custom repos

* Move callback files to callback directory

* Edit changelog

* Correct metadata callback argument types

* Additional metadata arguments in example

* Set metadata default values in callback

* Edit comment to fix PR

* Documentation/dask client example (#1001)

* Update requirements (dask_jobqueue)

* Fix broken link

* Ignore parallel example

* Add parallelization example

* Remove imports, add comment abt dask client

* Add E's information

* Update docs

* Add comment about n_workers

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* Documentation/dask client example (#1001)

* Update requirements (dask_jobqueue)

* Fix broken link

* Ignore parallel example

* Add parallelization example

* Remove imports, add comment abt dask client

* Add E's information

* Update docs

* Add comment about n_workers

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* Feature/dask client (#1002)

* Add info message that scenario.n_workers is ignored

When passing a dask client,
directly set n_workers in client.

* Change info to warning

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* Update smac version (#1003)

* Update smac version

* Add hint on github release in make publish

* Update copyright year

* check if config in rh when storing state (#997)

* check if config in rh when storing state

* maint

* remove unnecessary changes

* Adapt developer install instructions to include pre-commit installation (#994)

* Pipe dask_client through facade for exec on hpc (#983)

* Pipe dask_client through facade for exec on hpc

* Handle pynisher's memory arg

Before: Could only pass int via SMAC with the default unit B, but now tuple/list is possible

* Update CHANGELOG.md

* Make format

* No printi

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* update changelog

* Increase tolerance for runhistory restoration test

---------

Co-authored-by: Sarah Segel <[email protected]>
Co-authored-by: C. Benjamins <[email protected]>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: Helena Graf <[email protected]>

* Add a workaround to be able to pass a dataset via dask.scatter (#993)

* [feat] Support dask.scatter

* [fix] Add shared_data arg in abstract_facade

* Address the comments by Eddie

* [fix] Fix errors raised by Eddie

* [format] Apply black locally

* [fix] Get retries back to 16 as it was a mistake

* [doc] Update CHANGELOG

---------

Co-authored-by: helegraf <[email protected]>
Co-authored-by: C. Benjamins <[email protected]>

* Adding Binder links for example (#976)

* binder

* maint

* fix dependencies

* maint docs

* Revert "maint docs"

This reverts commit 4fa1a0fae8dfa0b646e43273d50f72ddd76bf191.

* add requirement

---------

Co-authored-by: Difan Deng <[email protected]>

* Remove commit message from dependabot PRs (#1009)

* Bugfix/fix broken link (#1012)

* Remove commit message from dependabot PRs (#1010)

* rename check_point_in_ss to check_subspace_point

* Make format

* Uncomment test procedure

* docstrings for boing facade

* avoid typing namespace everywhere in epm_configuration_chooser

* fix docstring in rh2epm_boing

* Limit on dask

* Trying to fix tests

* Replaced typing in all files

* docstring for boing subspace

* Changed feature requests to feature

* allow acq_optimizer_local_kwargs to be passed to boing subspace without acq_optimizer_local

* fix pre-commit

* Added any

* Update facade

* Fix typing
* Match arguments from pSMAC with SMAC4AC signature
* Add description of pSMAC to docstring
* Add option to pass facade class to pSMAC

* Add example for pSMAC

* Removed docstring in readme's example

* Corrected text

* move construct_gp_kernels to smac.epm_gpytorch.boing_kernels

* maint

* fix wrongly imported func name in tests

* Add reference for pSMAC #609

* Rename example file

* Added roadmap to readme

* Prettification

* Add result merger

* Reformat with black

* Delete unnecessary import

* Fix typing

* Inject first trajectory entry from file from first rundir

* Add test for ResultMerger

* Fix docstring

* Get runhistory and trajectory from pSMAC run

Via the result merger. Searchers rundirs and
merges found runhistories and calculates a
new trajectory.

* Get trajectory

* Add regex to requirements

* Fixed MO cache problem

* Fix MO tests

* Fixing MO in AbstractRacer

* Accepting ints

* Hacking in the sum cost for MO

* Fix mypi

* Bugfix

* Make mypi happy

* Fix tests

* Make format

* Remove num_obj in MO optimizer

* A lot of restructuring

* Solve importings

* Solve importings

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Updated changelog

* Still fixing :)

* fix docstrings

* Change directory of tests

* Fix ambiguous variable

* Del newlines

* fix mypy

* mypy and doc fix

* Removed int type checking

* fix tests

* Always return List of incs

* fix path issue in example

* maint boing facade

* Better docstring

* Return values if no bounds passed

* Removed import

* Return only one incumbent

* Rename n_optimizers -> n_workers

* Update example

* Update docstring

* Remove legacy function

* Update to new signature

* Update changelog.md

* Format black

* Update test

* Please pre-commit

* Merge development

* Fix tests

* Fix typos

* Format black

* Updated text

* Increased version

* Improved readme

* SMAC logo 50%

* SMAC logo 50%

* Removed dev-2.0

* Added doc workflow for latest tag

* Fixing docs latest tag

* Fixing docs latest tag

* First steps new intensifier

* Make it work again

* MOVE random weight initialization to smbo ask method

* ADD enable parego in unittests

* Test issues

* FIX formatting

* Link to old documentation

* MOVE random weight initialization to smbo ask method

* ADD enable parego in unittests

* FIX formatting

* Fix unit tests

* Add annotation

* corrected log prob for tophat prior

* Removed configurations from callback

* Fixed tests

* Fix mypy

* Save docs as latest version too

* Enabled all tests again

* Make version an env

* Added last version to docs

* Global variable fix

* Added v before version number

* New Intensifier Implementation (#888)

- Completely reimplemented the intensifiers (including Successive Halving and Hyperband): All intensifiers support multi-fidelity, multi-objective and multi-threading by nature now.
- Expected behaviour for ask-and-tell interface ensured (also for Successive Halving).
- Continuing a run is now fully supported.
- Added more examples.
- Updated documentation based on new implementation.

* First benchmark steps

* Added a warning

* Set xi to 0.01

* Incorporated walltime in trajectory

* Working version of benchmark

* Changed requirements

* Changed xi back to 0.0 again

* No duplicate budgets

* Fixed bug which updated tracker wrongly

* Bugfix: Delete correct bracket+stage

* Fixed tests

* Added costs to the trajectory

* Changed initial design max ratio to 0.25

* Make format

* Added more details to intensifier

* Finished benchmark

* Added benchmark source files

* Fixed tests because of initial design changes

* Improved runhistory API

* Fixed typo (#894)

* Merge doc fixes

* Doc fixes (#893)

Co-authored-by: timruhkopf <[email protected]>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: dengdifan <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Sarah Krebs <[email protected]>

* Make format

* Satisfied mypy

* Enabled more tests

* Increased version

* Mypy

* Mypy

* Mypy

* Fixed critical bug when using highest budget for inc selection

* Added SH+HB comparison

* Stuff

* Updated report

* Fixed docstring

* Fixed image path

* Removed vscode folder

* Bugfixes

* Doc fixes

* Updated changelog

* Make isort

* Fix typos

* Removed new line

* Added alpha2 to docs selection

* update description

* Fix 531 correctly create integers in initial design

This PR fixes a bug in which integer hyperparameters would not
be created correctly in the initial design. This went
unnoticed, except in the case where it was part of a condition
and the function deactivate_inactive_hyperparameters was
called.

This PR fixes this bug by mapping the random float that was
sampled by, for example and LHD or Sobol sequence, to the
float representation of an integer by calling _transform and
_inverse_transform of the integer hyperparameter.

* Add contact paragraph to README.

* Increase days until stale issues are closed by stalebot (#904)

* Edit changelog

* Add issue number

* Closes #907

* Clarify origin of configurations (#908)

* Random forest speed up (#903)

Co-authored-by: René Sass <[email protected]>

* Add: workflow to update pre-commit versions (#874)

Co-authored-by: René Sass <[email protected]>

* Add Git-Flow Workflow Specification

* [DOC] acquisition function maximizers

* Add stale reminder email action

* Increase version number of ConfigSpace

* Add guideline for updating copyright notice years to CONTRIBUTING.md

* Update requirement for pyrfr (#920)

* Update pre-commit: isort,flake8 version numbers

* Format black

* Fix mypy

* Ac bench (#929)

* Add Branin AC Task

* Add ac optimization type

* Nicer plotting

* Add ac mode

* Update ac task

* Make new smac env name adjustable

* Increase python version for smac 1.4

* Update benchmark

* Update plotting

* Goodby comments

* Fix path

* Fix 1.4 wrapper

* Update benchmark results

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* [DOC] added documentation on the incumbent update

* Feature/add version to make publish (#931)

* Add version, correct package name and use bash in makefile

* Increase version

* Increase version in makefile, add places with versions to make publish

* Fix typo

* Transform integer feature names to strings (#930)

* Transform int features to str

* Fix pre-commit

* Update version to 2.0.0

* Update version to 2.0.0

* Update CHANGELOG.md

* Add information on deepcave to the readme

* Correct doc version

* fix(runhistory): set id of the sampled config (#951)

* fix: Set config_id of config in runhistory

* ci: Set dependabot to target development branch (#963)

* feat: Option preventing SMAC setting up logging (#947)

* Version 2.0.0 (#898)

* Update runhistory2epm.py

* pre_commit

* Updated changelog

* Fixed comment

* Updated changelog

* Some small improvements

* Removed trailing space

* Updated changelog

* Restricted pynisher

* Updated changelog

* Link JMLR paper

* Update bibtex entry

Before: arxiv paper, now journal article.

* Fixed citation in docs

* Fixed callback typos

* BOinG for mixed hyperparameter search space

* fix format

* maint

* maint documentation

* maint pre-commit

* fix workflow

* maint

* Add dependabot for workflow files

* Bump actions/setup-python from 2 to 4 (#849)

Bumps [actions/setup-python](https://github.com/actions/setup-python) from 2 to 4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v2...v4)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump actions/checkout from 2 to 3 (#850)

Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* maint

* Updated stale bot

* Updated stale options again

* Fixed typing

* Increased version

* rename check_point_in_ss to check_subspace_point

* Make format

* Uncomment test procedure

* docstrings for boing facade

* avoid typing namespace everywhere in epm_configuration_chooser

* fix docstring in rh2epm_boing

* Limit on dask

* Trying to fix tests

* Replaced typing in all files

* docstring for boing subspace

* Changed feature requests to feature

* allow acq_optimizer_local_kwargs to be passed to boing subspace without acq_optimizer_local

* fix pre-commit

* Added any

* Update facade

* Fix typing
* Match arguments from pSMAC with SMAC4AC signature
* Add description of pSMAC to docstring
* Add option to pass facade class to pSMAC

* Add example for pSMAC

* Removed docstring in readme's example

* Corrected text

* move construct_gp_kernels to smac.epm_gpytorch.boing_kernels

* maint

* fix wrongly imported func name in tests

* Add reference for pSMAC #609

* Rename example file

* Added roadmap to readme

* Prettification

* Add result merger

* Reformat with black

* Delete unnecessary import

* Fix typing

* Inject first trajectory entry from file from first rundir

* Add test for ResultMerger

* Fix docstring

* Get runhistory and trajectory from pSMAC run

Via the result merger. Searchers rundirs and
merges found runhistories and calculates a
new trajectory.

* Get trajectory

* Add regex to requirements

* Fixed MO cache problem

* Fix MO tests

* Fixing MO in AbstractRacer

* Accepting ints

* Hacking in the sum cost for MO

* Fix mypi

* Bugfix

* Make mypi happy

* Fix tests

* Make format

* Remove num_obj in MO optimizer

* A lot of restructuring

* Solve importings

* Solve importings

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Updated changelog

* Still fixing :)

* fix docstrings

* Change directory of tests

* Fix ambiguous variable

* Del newlines

* fix mypy

* mypy and doc fix

* Removed int type checking

* fix tests

* Always return List of incs

* fix path issue in example

* maint boing facade

* Better docstring

* Return values if no bounds passed

* Removed import

* Return only one incumbent

* Rename n_optimizers -> n_workers

* Update example

* Update docstring

* Remove legacy function

* Update to new signature

* Update changelog.md

* Format black

* Update test

* Please pre-commit

* Merge development

* Fix tests

* Fix typos

* Format black

* Updated text

* Increased version

* Improved readme

* SMAC logo 50%

* SMAC logo 50%

* Removed dev-2.0

* Added doc workflow for latest tag

* Fixing docs latest tag

* Fixing docs latest tag

* First steps new intensifier

* Make it work again

* MOVE random weight initialization to smbo ask method

* ADD enable parego in unittests

* Test issues

* FIX formatting

* Link to old documentation

* MOVE random weight initialization to smbo ask method

* ADD enable parego in unittests

* FIX formatting

* Fix unit tests

* Add annotation

* corrected log prob for tophat prior

* Removed configurations from callback

* Fixed tests

* Fix mypy

* Save docs as latest version too

* Enabled all tests again

* Make version an env

* Added last version to docs

* Global variable fix

* Added v before version number

* New Intensifier Implementation (#888)

- Completely reimplemented the intensifiers (including Successive Halving and Hyperband): All intensifiers support multi-fidelity, multi-objective and multi-threading by nature now.
- Expected behaviour for ask-and-tell interface ensured (also for Successive Halving).
- Continuing a run is now fully supported.
- Added more examples.
- Updated documentation based on new implementation.

* First benchmark steps

* Added a warning

* Set xi to 0.01

* Incorporated walltime in trajectory

* Working version of benchmark

* Changed requirements

* Changed xi back to 0.0 again

* No duplicate budgets

* Fixed bug which updated tracker wrongly

* Bugfix: Delete correct bracket+stage

* Fixed tests

* Added costs to the trajectory

* Changed initial design max ratio to 0.25

* Make format

* Added more details to intensifier

* Finished benchmark

* Added benchmark source files

* Fixed tests because of initial design changes

* Improved runhistory API

* Fixed typo (#894)

* Merge doc fixes

* Doc fixes (#893)

Co-authored-by: timruhkopf <[email protected]>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: dengdifan <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Sarah Krebs <[email protected]>

* Make format

* Satisfied mypy

* Enabled more tests

* Increased version

* Mypy

* Mypy

* Mypy

* Fixed critical bug when using highest budget for inc selection

* Added SH+HB comparison

* Stuff

* Updated report

* Fixed docstring

* Fixed image path

* Removed vscode folder

* Bugfixes

* Doc fixes

* Updated changelog

* Make isort

* Fix typos

* Removed new line

* Added alpha2 to docs selection

* update description

* Fix 531 correctly create integers in initial design

This PR fixes a bug in which integer hyperparameters would not
be created correctly in the initial design. This went
unnoticed, except in the case where it was part of a condition
and the function deactivate_inactive_hyperparameters was
called.

This PR fixes this bug by mapping the random float that was
sampled by, for example and LHD or Sobol sequence, to the
float representation of an integer by calling _transform and
_inverse_transform of the integer hyperparameter.

* Add contact paragraph to README.

* Increase days until stale issues are closed by stalebot (#904)

* Edit changelog

* Add issue number

* Closes #907

* Clarify origin of configurations (#908)

* Random forest speed up (#903)

Co-authored-by: René Sass <[email protected]>

* Add: workflow to update pre-commit versions (#874)

Co-authored-by: René Sass <[email protected]>

* Add Git-Flow Workflow Specification

* [DOC] acquisition function maximizers

* Add stale reminder email action

* Increase version number of ConfigSpace

* Add guideline for updating copyright notice years to CONTRIBUTING.md

* Update requirement for pyrfr (#920)

* Update pre-commit: isort,flake8 version numbers

* Format black

* Fix mypy

* Ac bench (#929)

* Add Branin AC Task

* Add ac optimization type

* Nicer plotting

* Add ac mode

* Update ac task

* Make new smac env name adjustable

* Increase python version for smac 1.4

* Update benchmark

* Update plotting

* Goodby comments

* Fix path

* Fix 1.4 wrapper

* Update benchmark results

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* [DOC] added documentation on the incumbent update

* Feature/add version to make publish (#931)

* Add version, correct package name and use bash in makefile

* Increase version

* Increase version in makefile, add places with versions to make publish

* Fix typo

* Transform integer feature names to strings (#930)

* Transform int features to str

* Fix pre-commit

* Update version to 2.0.0

* Update version to 2.0.0

* Update CHANGELOG.md

* Add information on deepcave to the readme

* Correct doc version

---------

Co-authored-by: dengdifan <[email protected]>
Co-authored-by: dengdifan <[email protected]>
Co-authored-by: Matthias Feurer <[email protected]>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: eddiebergman <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: C. Benjamins <[email protected]>
Co-authored-by: Katharina Eggensperger <[email protected]>
Co-authored-by: Eric Kalosa-Kenyon <[email protected]>
Co-authored-by: Pascal <[email protected]>
Co-authored-by: helegraf <[email protected]>
Co-authored-by: timruhkopf <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Sarah Krebs <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Sarah Krebs <[email protected]>
Co-authored-by: helegraf <[email protected]>
Co-authored-by: Jeroen Rook <[email protected]>
Co-authored-by: Tim Ruhkopf <[email protected]>

* feat: Option preventing SMAC setting up logging

* fix: Run isort

* Bump peter-evans/create-pull-request from 3 to 5 (#958)

Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 3 to 5.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/v3...v5)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump actions/setup-python from 2 to 4 (#945)

Bumps [actions/setup-python](https://github.com/actions/setup-python) from 2 to 4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v2...v4)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat: Option preventing SMAC setting up logging

* fix: Run isort

* fix: Add to changelog

* feat: Option preventing SMAC setting up logging

* fix: Run isort

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: René Sass <[email protected]>
Co-authored-by: dengdifan <[email protected]>
Co-authored-by: dengdifan <[email protected]>
Co-authored-by: Matthias Feurer <[email protected]>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: C. Benjamins <[email protected]>
Co-authored-by: Katharina Eggensperger <[email protected]>
Co-authored-by: Eric Kalosa-Kenyon <[email protected]>
Co-authored-by: Pascal <[email protected]>
Co-authored-by: helegraf <[email protected]>
Co-authored-by: timruhkopf <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Sarah Krebs <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Sarah Krebs <[email protected]>
Co-authored-by: helegraf <[email protected]>
Co-authored-by: Jeroen Rook <[email protected]>
Co-authored-by: Tim Ruhkopf <[email protected]>

* Citation update (#961)

* update CITATION.cff

* update order in CITATION.cff

* fix citation date

* fix citation

* maint

* Adjust hyperband configuration distribution across brackets

* Compute the actual differences between the isb keys. (#957)

* Compute the actual differences between the isb keys.

* Added change to CHANGELOG.md

* Adjust schedule for stale reminder

* fix(logging): Prevent automatic logging setup at init (#970)

* fix(logging): Prevent automatic logging setup at init

* fix(logging): Rely on `setup_logging` to handle arg

* Fix validate method of smbo, update docstring.

* Allow callbacks to be added to a specific index, make callback registering public

* Update CHANGELOG.md

* Fix broken references (#988)

* Adapt developer install instructions to include pre-commit installation (#994)

* [Feature] Initial Design now supports executing the default config provided by the user by means of the configspace he generated. (and is no longer ignored)

* Pipe dask_client through facade for exec on hpc (#983)

* Pipe dask_client through facade for exec on hpc

* Handle pynisher's memory arg

Before: Could only pass int via SMAC with the default unit B, but now tuple/list is possible

* Update CHANGELOG.md

* Make format

* No printi

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* [Bug-fix] Pr was failing due to mutable additional configs default

* [doc-fix] the count of initial design configs is computed slightly differently

* Feature/metadata callback (#999)

* Add example for using a callback to log run metadata to a file

* Add issue number in changelog

* Changelog formatting

* Simplify metadata example

* Simplify metadata example

* Put callback in smac directory to allow importing it in custom repos

* Move callback files to callback directory

* Edit changelog

* Correct metadata callback argument types

* Additional metadata arguments in example

* Set metadata default values in callback

* Edit comment to fix PR

* Documentation/dask client example (#1001)

* Update requirements (dask_jobqueue)

* Fix broken link

* Ignore parallel example

* Add parallelization example

* Remove imports, add comment abt dask client

* Add E's information

* Update docs

* Add comment about n_workers

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* Documentation/dask client example (#1001)

* Update requirements (dask_jobqueue)

* Fix broken link

* Ignore parallel example

* Add parallelization example

* Remove imports, add comment abt dask client

* Add E's information

* Update docs

* Add comment about n_workers

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* Feature/dask client (#1002)

* Add info message that scenario.n_workers is ignored

When passing a dask client,
directly set n_workers in client.

* Change info to warning

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* Update smac version (#1003)

* Update smac version

* Add hint on github release in make publish

* Update copyright year

* check if config in rh when storing state (#997)

* check if config in rh when storing state

* maint

* remove unnecessary changes

* Adapt developer install instructions to include pre-commit installation (#994)

* Pipe dask_client through facade for exec on hpc (#983)

* Pipe dask_client through facade for exec on hpc

* Handle pynisher's memory arg

Before: Could only pass int via SMAC with the default unit B, but now tuple/list is possible

* Update CHANGELOG.md

* Make format

* No printi

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* update changelog

* Increase tolerance for runhistory restoration test

---------

Co-authored-by: Sarah Segel <[email protected]>
Co-authored-by: C. Benjamins <[email protected]>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: Helena Graf <[email protected]>

* Add a workaround to be able to pass a dataset via dask.scatter (#993)

* [feat] Support dask.scatter

* [fix] Add shared_data arg in abstract_facade

* Address the comments by Eddie

* [fix] Fix errors raised by Eddie

* [format] Apply black locally

* [fix] Get retries back to 16 as it was a mistake

* [doc] Update CHANGELOG

---------

Co-authored-by: helegraf <[email protected]>
Co-authored-by: C. Benjamins <[email protected]>

* Adding Binder links for example (#976)

* binder

* maint

* fix dependencies

* maint docs

* Revert "maint docs"

This reverts commit 4fa1a0fae8dfa0b646e43273d50f72ddd76bf191.

* add requirement

---------

Co-authored-by: Difan Deng <[email protected]>

* Remove commit message from dependabot PRs (#1009)

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dengdifan <[email protected]>
Co-authored-by: René Sass <[email protected]>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: C. Benjamins <[email protected]>
Co-authored-by: Katharina Eggensperger <[email protected]>
Co-authored-by: Matthias Feurer <[email protected]>
Co-authored-by: Eric Kalosa-Kenyon <[email protected]>
Co-authored-by: Pascal <[email protected]>
Co-authored-by: helegraf <[email protected]>
Co-authored-by: timruhkopf <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Sarah Krebs <[email protected]>
Co-authored-by: helegraf <[email protected]>
Co-authored-by: Jeroen Rook <[email protected]>
Co-authored-by: Eddie Bergman <[email protected]>
Co-authored-by: Tim Ruhkopf <[email protected]>
Co-authored-by: Difan Deng <[email protected]>
Co-authored-by: Aron Bahram <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Shuhei Watanabe <[email protected]>
Co-authored-by: Difan Deng <[email protected]>

* Fix broken link

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dengdifan <[email protected]>
Co-authored-by: René Sass <[email protected]>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: Carolin Benjamins <[email protected]>
Co-authored-by: C. Benjamins <[email protected]>
Co-authored-by: Katharina Eggensperger <[email protected]>
Co-authored-by: Matthias Feurer <[email protected]>
Co-authored-by: Eric Kalosa-Kenyon <[email protected]>
Co-authored-by: Pascal <[email protected]>
Co-authored-by: helegraf <[email protected]>
Co-authored-by: timruhkopf <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Alexander Tornede <[email protected]>
Co-authored-by: Sarah Krebs <[email protected]>
Co-authored-by: helegraf <[email protected]>
Co-authored-by: Jeroen Rook <[email protected]>
Co-authored-by: Eddie Bergman <[email protected]>
Co-authored-by: Tim Ruhkopf <[email protected]>
Co-authored-by: Difan Deng <[email protected]>
Co-authored-by: Aron Bahram <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Shuhei Watanabe <[email protected]>
Co-authored-by: Difan Deng <[email protected]>

* Drop torch requirements (#1015)

* Remove torch requirements

* Fix format

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* Remove leftover CLI entry points (#1014)

* Fix incumbent selection in case of SH+MO

* Update CHANGELOG.md

* Feature/GitHub actions pr draft (#1008)

Update the workflows only to trigger extensive tests for PRs that are not in the draft stage

---------

Co-authored-by: timruhkopf <[email protected]>
Co-authored-by: Helena Graf <[email protected]>

* Update stale report to include issues with recent interactions (#1025)

* Add recently updated issues to list of reminders.

* Add recently updated issues to list of reminders.

* Add recently updated issues to list of reminders.

* Raise error if resource limitation and parallelization is requested (#1023)

* Add warnings for parallelism doc

* Check for parallelization + pynisher

Does not work together, throw error.
Does not work bc Dask pickles jobs and
pynisher runs the target function in a process.

* Fix whitespaces

---------

Co-authored-by: Carolin Benjamins <[email protected]>

* Raise an error for invalid scatter data (#1018)

* [enhance] Add an error for scatter data

* Update ChangeLog

---------

Co-authored-by: C. Benjamins <[email protected]>

* fix(configspace): shows all keys in print (#1043)

* Fix callback order (#1040)

Co-authored-by: Carolin Benjamins <[email protected]>

* fix: dtypes (#1044)

* Fix(config_selector): Budget checking (#1039)

* Fix: target runner with partial func (#1045)

* Feature/improve documentation (#1028)

* Experimental instruction for installing SMAC in windows via WSL

* More detailed documentation regarding continuing runs

* Fixes

* Fixes

* Fixes

* Update docs/10_experimental.rst

Co-authored-by: Difan Deng <[email protected]>

* Fixes from PR

* Fixes from PR

* Fixes from PR

* Fixes from PR

* Fixes from PR

---------

Co-authored-by: Difan Deng <[email protected]>

* Handle configspace as dictionary in mlp example (#1057)

* Handle configspace as dictionary in mlp example

* Adapt sgd loss to newest scikit-learn version

* Add change to changelog

* Handle configspace as dictionary in parego example

* Correct get usage

* Raise version number

* Add missing period in docs.

* allow rf to impute OrdinalHyperparameter (#1065)

* allow rf to impute OrdinalHyperparameter

* Add missing period in docs.

* Add issue number in changelog.

---------

Co-authored-by: Sarah Krebs <[email protected]>

* fix dask_scheduler_file path (#1055)

* fix dask_scheduler_file path

* update change log

---------

Co-authored-by: dengdifan <[email protected]>

* Fix config rejection for #1068 (#1069)

* racing: make sure config only deleted from rejected configs if among incumbents upon update

* test case for incumbent rejection

* update code comments

* added missing newline ahead of new test case

* update change log

---------

Co-authored-by: dengdifan <[email protected]>
Co-authored-by: Difan Deng <[email protected]>

* fix(RandomForest): Always cast `seed` to `int` (#1084)

* fix(RandomForest): Always cast `seed` to `int`

In cases where seeds were generated from some numpy objects, sometimes
you'd get back an `np.integer`, which causes the program to crash when
communicating with `pyrfr` through `swig`. It seems that swig doesn't
know that it's an _int-like_ and so we explicitly cast it to `int`.

* Update CHANGELOG.md

---------

Co-authored-by: C. Benjamins <[email protected]>

* Bump actions/checkout from 3 to 4 (#1072)

* Bump actions/checkout from 3 to 4

Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* Update CHANGELOG.md

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: benjamc <[email protected]>

* chore: log warn on condition when custom dask client is provided (#1071)

* Bump conda-incubator/setup-miniconda from 2 to 3 (#1087)

Bumps [conda-incubator/setup-miniconda](https://github.com/conda-incubator/setup-miniconda) from 2 to 3.
- [Release notes](https://github.com/conda-incubator/setup-miniconda/releases)
- [Changelog](https://github.com/conda-incubator/setup-miniconda/blob/main/CHANGELOG.md)
- [Commits](https://github.com/conda-incubator/setup-miniconda/compare/v2...v3)

---
updated-dependencies:
- dependency-name: conda-incubator/setup-miniconda
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Propagate the Scenario random seed to get_random_design (#1066)

* Propagate the Scenario's random seed to get_random_design

* add changelog line

---------

Co-authored-by: Sarah Segel <[email protected]>

* [#1056] Add example on intensify for cross-validation. (#1061)

* Add example on intensify for cross-validation.

* Improve example

* Address Difan's comment

* Update CHANGELOG.md

* Change stale-reminder to recent-reminder (#1096)

* Change stale-reminder to recent-reminder (#1095) (#1099)

* Dont use mutable lists as default args (#1097)

* Don't use mutable default argument.

If this isn't respected, then additional_configs can be built up
overtime when multiple optimizers are created in a single process.

This can occur when the use_default_config option is set True and/or
when additional_configs are provided.

When different ConfigSpaces are provided this can result in an error due
to mismatched defaults, for instance.

In other cases it can result in non-deterministic behavior due to the
random ordering of the configs that get added (e.g., with different
parallel pytest runs).

- [ ] Cleanup other sources of this error as well elsewhere in the code.
- [ ] Add pylint checks for this issue.

* fixup some others mutable defaults

* add pylint checks

* fix more related pylint issues

* add changelog line

* Update pre-commit config

* Update pre-commit config

* Remove TODO formulation as an issue already exists for this

---------

Co-authored-by: Brian Kroth <[email protected]>

* Bump actions/setup-python from 4 to 5 (#1089)

Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump peter-evans/create-pull-request from 5 to 6 (#1093)

Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 5 to 6.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/v5...v6)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* test: Fix upper bounds for `test_transformer()` and no random in `test_transformer_conditional()` (#1102)

* test: Don't rely on randomization for the test

* test: Include import

* test: Fix boundaries for catgoricals in test

* test: Missing import

* doc: Make todo not more clear about when to upgrade

* Change stale-reminder to recent-reminder (#1095) (#1107)

* Fix typo in docstring for `MultiFideltyFacade.get_initial_design` (#1104)


* Fix typo in docstring for `MultiFideltyFacade.get_initial_design`

The docstring specifies 0.1 is used as a default value for max_ratio,
however in code 0.25 is used.

* Bug/acquisition maximizer sampling (#1106)

* Adapt how n_points works in the config_selector.py

Also remove LocalAndSortedPriorRandomSearch by integrating it into LocalAndSortedRandomSearch

* Change retrain_after to 1 for BlackBOx Facade

* Fix bugs in local_and_random_search.py

* Edit CHANGELOG.md

* fix acq maximizer docstring

* call get config selector from super class

* Update random and local search to new functionality

* Update CHANGELOG.md

* Fix sampling of initial points for local search when less previous configs than n_points

* Re-format blackbox_facade.py

---------

Co-authored-by: Helena Graf <[email protected]>
Co-authored-by: dengdifan <[email protected]>

* Update version number to 2.1.0

* Add version 2.1.0 to docs drop-down

* Fix dependencies (numpy + ConfigSpace) and docs (#1122)

* fix(dependency): np.NaN -> np.nan

New(er) numpy does not support np.NaN anymore

* Update CHANGELOG.md

* fix(build): restrict package versions

Numpy and ConfigSpace's API have changed. Do not incorporate changes yet.

* Update CHANGELOG.md

* Fix broken link in docs

* chore: fix URLs (#1114)

* Change stale-reminder to recent-reminder (#1095)

* Version 2.1.0 (#1108)

* Hacking in the sum cost for MO

* Fix mypi

* Bugfix

* Make mypi happy

* Fix tests

* Make format

* Remove num_obj in MO optimizer

* A lot of restructuring

* Solve importings

* Solve importings

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Fixing, fixing, fixing, ...

* Updated changelog

* Still fixing :)

* fix docstrings

* Change directory …
  • Loading branch information
1 parent 9d19475 commit 640f8a9
Show file tree
Hide file tree
Showing 196 changed files with 2,560 additions and 1,475 deletions.
92 changes: 15 additions & 77 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -1,89 +1,27 @@
# This workflow is just to test that the docs build successfully.
name: docs

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
on:
# Manual trigger option in GitHub
# This won't push to GitHub pages where docs are hosted due
# to the guarded if statement in those steps
workflow_dispatch:

# Trigger on push to these branches
push:
branches:
- main
- development

# Trigger on open/push to a PR targeting one of these branches
pull_request:
types:
- opened
- synchronize
- reopened
- ready_for_review
branches:
- main
- development

env:
name: SMAC3

permissions:
contents: write
jobs:
build-and-deploy:
if: ${{ !github.event.pull_request.draft }}
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.10"

- name: Install dependencies
id: install
run: |
pip install ".[gpytorch,dev]"
# Getting the version
SMAC_VERSION=$(python -c "import smac; print('v' + str(smac.version));")
# Make it a global variable
echo "SMAC_VERSION=$SMAC_VERSION" >> $GITHUB_ENV
- name: Make docs
run: |
make clean
make docs
- name: Pull latest gh-pages
if: (contains(github.ref, 'develop') || contains(github.ref, 'main')) && github.event_name == 'push'
run: |
cd ..
git clone https://github.com/${{ github.repository }}.git --branch gh-pages --single-branch gh-pages
- name: Copy new docs into gh-pages
if: (contains(github.ref, 'develop') || contains(github.ref, 'main')) && github.event_name == 'push'
run: |
branch_name=${GITHUB_REF##*/}
cd ../gh-pages
rm -rf $branch_name
cp -r ../${{ env.name }}/docs/build/html $branch_name
# we also copy the current SMAC_VERSION
rm -rf $SMAC_VERSION
cp -r ../${{ env.name }}/docs/build/html $SMAC_VERSION
- name: Push to gh-pages
if: (contains(github.ref, 'develop') || contains(github.ref, 'main')) && github.event_name == 'push'
run: |
last_commit=$(git log --pretty=format:"%an: %s")
cd ../gh-pages
branch_name=${GITHUB_REF##*/}
git add $branch_name/
git add $SMAC_VERSION/
git config --global user.name 'Github Actions'
git config --global user.email '[email protected]'
git remote set-url origin https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }}
git commit -am "$last_commit"
git push
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: "Install dependancies"
run: python -m pip install -e ".[dev]"
- name: "Build Docs"
run: mkdocs build --clean --strict
2 changes: 1 addition & 1 deletion .github/workflows/pre-commit-update.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
run: |
pre-commit run --all-files
- uses: peter-evans/create-pull-request@v6
- uses: peter-evans/create-pull-request@v7
with:
token: ${{ secrets.GITHUB_TOKEN }}
branch: update/pre-commit-hooks
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/recent_reminder.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
echo "$(<recent_issues.md) <br />" >> mail.html
- name: Send mail
id: mail
uses: dawidd6/action-send-mail@v3
uses: dawidd6/action-send-mail@v4
with:
server_address: ${{secrets.MAIL_SERVER_ADDRESS}}
server_port: ${{secrets.MAIL_SERVER_PORT}}
Expand Down
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -147,4 +147,7 @@ src

# Pycharm
.idea
.vscode
.vscode

projects
_api
33 changes: 30 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,37 @@
# 2.3.0

## Documentation
- Update windows install guide (#952)
- Correct intensifier for Algorithm Configuration Facade (#1162, #1165)
- Migrate sphinx docs to mkdocs (#1155)

## Bugfixes
- Fix bug in differential evolution acquisition maximizer in case the search space contains categorical hyperparameters (#1150)
- Fix wrong attr query in the target function runner (crash cost) (#1176)
- Fix kwargs for DifferentialEvolution (#1187)
- Fix PiBo implementation (#1076)
- Add fix for local search running forever (#1194)

## Improvements
- Add logger information on handling of stopIteration error (#960)
- Replace deprecated ConfigSpace methods (#1139)
- Separated Wallclock time measurements from CPU time measurements and storing them under new 'cpu_time' variable (#1173)
- Adapt RunHistory to be human readable (# 1174)

## Dependencies
- Allow numpy >= 2.x (#1146)

# Examples
- Add warmstarting example (#1120)

# 2.2.0

## Features
## Examples
- Add example to specify total budget (fidelity units) instead of n_trials for multi-fidelity/Hyperband (#1121)
- Add example for warmstarting (#1120)

## Dependencies
- Update numpy NaN (#1122) and restrict numpy version
- Update numpy NaN (#1122) and restrict numpy
- Upgrade to ConfigSpace 1.x.x (#1124)

# 2.1.0
Expand Down Expand Up @@ -675,7 +702,7 @@ Since many urgent features were already taken care of in 0.14.0, this release ma
conditions when starting multiple runs on a cluster.
* MAINT #209: adds the seed or a pseudo-seed to the output directory name for
better identifiability of the output directories.
* FIX #216: replace broken call to in EIPS acqusition function.
* FIX #216: replace broken call to in EIPS acquisition function.
* MAINT: use codecov.io instead of coveralls.io.
* MAINT: increase minimal required version of the ConfigSpace package to 0.3.2.

Expand Down
2 changes: 1 addition & 1 deletion CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ date-released: "2016-08-17"
url: "https://automl.github.io/SMAC3/master/index.html"
repository-code: "https://github.com/automl/SMAC3"

version: "2.2.0"
version: "2.3.0"

type: "software"
keywords:
Expand Down
2 changes: 1 addition & 1 deletion LICENSE.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ SMAC License

BSD 3-Clause License

Copyright (c) 2016-2018, Ml4AAD Group (http://www.ml4aad.org/)
Copyright (c) 2025, Leibniz University Hannover - Institute of AI (https://www.ai.uni-hannover.de/)
All rights reserved.

Redistribution and use in source and binary forms, with or without
Expand Down
38 changes: 24 additions & 14 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ SHELL := /bin/bash

NAME := SMAC3
PACKAGE_NAME := smac
VERSION := 2.2.0
VERSION := 2.3.0

DIR := "${CURDIR}"
SOURCE_DIR := ${PACKAGE_NAME}
Expand Down Expand Up @@ -86,27 +86,37 @@ format: format-black format-isort
tests:
$(PYTEST) ${TESTS_DIR}

# Launch the docs, executing code blocks and examples
docs-full:
$(PYTHON) -m webbrowser -t "http://127.0.0.1:8000/"
SMAC_DOC_RENDER_EXAMPLES=all \
SMAC_DOCS_OFFLINE=true \
SMAC_EXEC_DOCS=true \
mkdocs serve --watch-theme

# Launch the docs and execute code blocks
docs-code:
$(PYTHON) -m webbrowser -t "http://127.0.0.1:8000/"
SMAC_DOCS_OFFLINE=true \
SMAC_EXEC_DOCS=true \
SMAC_DOC_RENDER_EXAMPLES=false \
mkdocs serve --watch-theme

# Launch the docs but dont run code examples
docs:
$(MAKE) -C ${DOCDIR} docs
@echo
@echo "View docs at:"
@echo ${INDEX_HTML}

examples:
$(MAKE) -C ${DOCDIR} examples
@echo
@echo "View docs at:"
@echo ${INDEX_HTML}
$(PYTHON) -m webbrowser -t "http://127.0.0.1:8000/"
SMAC_DOCS_OFFLINE=true \
SMAC_EXEC_DOCS=false \
SMAC_DOC_RENDER_EXAMPLES=false \
mkdocs serve --watch-theme
# https://github.com/pawamoy/markdown-exec/issues/19

# Build a distribution in ./dist
build:
$(PYTHON) setup.py sdist

clean: clean-build clean-docs clean-data

clean-docs:
$(MAKE) -C ${DOCDIR} clean

clean-build:
$(PYTHON) setup.py clean
rm -rf ${DIST}
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ SMAC offers a robust and flexible framework for Bayesian Optimization to support
hyperparameter configurations for their (Machine Learning) algorithms, datasets and applications at hand. The main core
consists of Bayesian Optimization in combination with an aggressive racing mechanism to efficiently decide which of two configurations performs better.

SMAC3 is written in Python3 and continuously tested with Python 3.8, 3.9, and 3.10. Its Random
SMAC3 is written in Python3 and continuously tested with Python 3.8, 3.9, and 3.10 (and works with newer python versions). Its Random
Forest is written in C++. In further texts, SMAC is representatively mentioned for SMAC3.

> [Documentation](https://automl.github.io/SMAC3)
Expand Down Expand Up @@ -144,4 +144,4 @@ If you use SMAC in one of your research projects, please cite our
}
```

Copyright (C) 2016-2022 [AutoML Group](http://www.automl.org).
Copyright (c) 2025, [Leibniz University Hannover - Institute of AI](https://www.ai.uni-hannover.de/)
43 changes: 22 additions & 21 deletions docs/10_experimental.rst → docs/10_experimental.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
Experimental
============
# Experimental

.. warning::
!!! warning
This part is experimental and might not work in each case. If you would like to suggest any changes, please let us know.


Installation in Windows via WSL
------------------------------
## Installation in Windows via WSL

SMAC can be installed in a WSL (Windows Subsystem for Linux) under Windows.

Expand All @@ -21,28 +19,31 @@ Download an Anaconda Linux version to drive D under Windows, e.g. D:\\Anaconda3-

In the WSL, Windows resources are mounted under /mnt:

.. code:: bash
cd /mnt/d
bash Anaconda3-2023.03-1-Linux-x86_64
```bash
cd /mnt/d
bash Anaconda3-2023.03-1-Linux-x86_64
```

Enter this command to create the environment variable:

.. code:: bash
export PATH="$PATH:/home/${USER}/anaconda3/bin
```bash
export PATH="$PATH:/home/${USER}/anaconda3/bin
```
Input 'python' to check if the installation was successful.
Input `python` to check if the installation was successful.
**3) Install SMAC**
Change to your home folder and install the general software there:
.. code:: bash
cd /home/${USER}
sudo apt-get install software-properties-common
sudo apt-get update
sudo apt-get install build-essential swig
conda install gxx_linux-64 gcc_linux-64 swig
curl https://raw.githubusercontent.com/automl/smac3/master/requirements.txt | xargs -n 1 -L 1 pip install
```bash
cd /home/${USER}
sudo apt-get install software-properties-common
sudo apt-get update
sudo apt-get install build-essential swig
conda install gxx_linux-64 gcc_linux-64 swig
curl https://raw.githubusercontent.com/automl/smac3/master/requirements.txt | xargs -n 1 -L 1 pip install
```
## Installation in Pure Windows
Please refer to this [issue](https://github.com/automl/SMAC3/issues/952) for installation instructions for SMAC3-1.4 and SMAC3-2.x.
Loading

0 comments on commit 640f8a9

Please sign in to comment.