Skip to content

Releases: bessagroup/f3dasm

v1.5.3

05 Aug 20:59
6435ca0
Compare
Choose a tag to compare

Resolved requests from reviewers JOSS:

  • Fixes TOC header sphinx-gallery (#274)
  • paper.md: Added DOI of Optuna reference in paper

What's Changed

Full Changelog: v1.5.2...v1.5.3

v1.5.2

17 Jul 08:18
Compare
Choose a tag to compare

Major changes

  • Restricted numpy<2.0.0 from requirements.txt
  • Minor linting fixes

What's Changed

Full Changelog: v1.5.1...v1.5.2

v.1.5.1

31 May 12:44
67a21c6
Compare
Choose a tag to compare

Major changes

  • Small bugfixes and typos

What's Changed

Full Changelog: v.1.5.0...v1.5.1

v.1.5.0

29 May 13:48
c13a8b0
Compare
Choose a tag to compare

Major changes

  • Refactoring and removing of legacy code
  • Change how hyperparameters are handled; they now need to be given as initialization key-word arguments
  • Major rework on optimization functionality
  • Rework on JOSS paper draft

What's Changed

Full Changelog: v.1.4.8...v.1.5.0

v.1.4.8

17 May 13:48
f02b954
Compare
Choose a tag to compare

Major Changes

  • Dropped compatibility with Python 3.7
  • Added Sphinx Gallery for documentation examples
  • added examples/ folder with code snippets explaining the functionality of f3dasm
  • added Experimentdata.join method
  • Change _Store class to public: StorageProtocol
  • Added 2 benchmark studies: Fragile becomes supercompressible and Optimization benchmark

What's Changed

Full Changelog: v.1.4.71...v.1.4.8

v.1.4.71

22 Apr 09:52
Compare
Choose a tag to compare

Bugfix:

  • autosummary documentation not build because of conflicting submodule name.

Full Changelog: v1.4.7...v.1.4.71

v.1.4.7

19 Apr 15:18
f20d70d
Compare
Choose a tag to compare

Features

  • Added storage method for matplotlib figures
  • Added GridSearch sampler*
  • Added helper functions for datageneration with hydra configuration files
  • Added overwrite function to ExperimentData
  • Added callback functionality for optimizers
  • Allow addition of Domains
  • Add differentiable tag to benchmark functions and optimizers
  • Added cluster_parallel mode to `ExperimentData.evaluate()

* only working for categorical or discrete variables!

Bugfixes

What's Changed

Full Changelog: v1.4.6...v1.4.7

v1.4.6

07 Dec 15:17
7f96e7e
Compare
Choose a tag to compare

Major changes

  • Added documentation on SLURM job scheduler. Added sphinx-tabs as dependency when building documentation.
  • WIP: New back-end of _Data that relies on lists instead of pd.DataFrame. This has not yet replaced the pandas back-end but tests are passing with the new _newdata.py module.
  • Removed unused method Domain.from_yaml.
  • Removed unused _Data.fill_output method
  • Output of benchmark functions is now a float instead of np.ndarray[float]. Necessary to pass tests for new back-end, won't affect pandas back-end.

Minor changes

  • Refactoring parts of the ExperimentSample code to be more robust to changes in the back-end
  • Moving factory methods to appropriate modules
  • Removed try_import; import checks are moved to extension packages
  • Added __version__.py file
  • Updated docstrings to remove leading spaces

Bugfixes

  • Correct equality operator of Domain to also compare for output_space attribute
  • Closes #241
  • Closes #191
  • Closes #240
  • Closes #243

What's Changed

Full Changelog: v1.4.5...v1.4.6

v1.4.5

14 Nov 18:20
7495fc4
Compare
Choose a tag to compare

This pull request will update the main code to version 1.4.5

Major updates

Domain and Parameter classes

  • All Parameter classes are now private. The suggested way to add parameters to a Domain will be with the public add_float, add_int, add_category and add_constant methods.
  • Change the behaviour of the public Domain.add method to require the type and arguments of the (private) parameter to construct, instead of requiring the private Parameter object

ExperimentData class

  • Added a method that extracts all ExperimentSample objects or a selection of ExperimentSample objects from an ExperimentData object
  • Removed the .filename attribute in ExperimentData: the name of the stored objects are hardcoded
  • Refactored the .path attribute to the .project_dir attribute. When storing the ExperimentData object with the .store() method, a subdirectory (/experiment_data/) will be created and the input data, output data, domain and jobs will be stored there.

Optimizer class

  • Added functionality to select different strategies to determine the initial points ($x_0$) before optimization.

_Data class

  • Decoupled the headers of the _Data class to a separate private _Columns class. This makes it more flexible for future development on the generalization of different back-ends (currently pandas) for _Data
  • Removed dependency of Domain to _Data class

Storing output data

  • Output that is stored to disk will no longer have the path_ prefix before the parameter. This information is stored within the _Columns object
  • The ExperimentSample.output_data will, if applicable, load the output parameters from disk automatically
  • The attribute ExperimentSample.output_data_with_references will give you the paths of the references
  • Added backwards compatibility for ExperimentSample.output_data_loaded (will redirect to ExperimentSample.output_data

Documentation

  • Made private methods of public objects visible in sphinx documentation API

Bessa Group Coding Guidelines

  • Restored the original .flake8 file of the BRG coding guidelines; the maximum linewidth is now 79 instead of 119.

Miscellaneous

  • Represent all private attributes and methods with an underscore (_).

Closed issues

Full Changelog: v1.4.4...v1.4.5

v1.4.4

10 Nov 17:47
Compare
Choose a tag to compare

Bugfixes and enhancement featured by @BernardoFerreira

What's Changed

Important Note: this release has been recreated to support read-the-docs documentation building.
Now the (static) documentation of this release will be available even when a newer release comes uit

Full Changelog: v1.4.3...v1.4.4