Skip to content

Releases: python-adaptive/adaptive

version 0.11.2

07 Aug 15:16
Compare
Choose a tag to compare

Fix license identifier for Zenodo.

version 0.11.1

07 Aug 15:07
Compare
Choose a tag to compare
  • Creates .zenodo.json
  • Fixes docs building

version 0.11.0

20 May 09:19
06a084c
Compare
Choose a tag to compare

Since 0.10.0 we fixed the following issues:

  • #273 add minimum number of points parameter to AverageLearner
  • #225 Error on windows: daemonic processes are not allowed to have children Runner bug
  • #267 Make Runner work with unhashable points Runner enhancement
  • #249 ipyparallel fails in Python 3.8 bug
  • #258 Release v0.10
  • #250 live_info looks is badly formatted in Jupyterlab
  • #233 SKOptLearner doesn't work for multi variate domain
  • #184 Time-based stop Runner enhancement
  • #206 Does not work with lambda functions

and merged the following Pull requests:

  • #278 prevent ImportError due to scikit-optimize and sklearn incompatibility
  • #274 AverageLearner: implement min_npoints AverageLearner enhancement
  • #268 make the Runner work with unhashable points Runner enhancement
  • #264 make learners picklable
  • #270 minimally require ipyparallel 6.2.5
  • #261 fix docs build and pin pyviz_comms=0.7.2
  • #263 add support for loky
  • #245 Optimize circumsphere and triangulation.py

and closed

  • #266 Make SequenceLearner points hashable by passing the sequence to the function.
  • #169 add building of test documentation of RTD
  • #262 test what happens in CI when trying to force-push

version v0.10.0

16 Jan 10:51
d1600d5
Compare
Choose a tag to compare

Since 0.9.0 we fixed the following issues:

  • #217 Command-line tool
  • #211 Defining inside main() in multiprocess will report error
  • #208 Inquiry on implementation of parallelism on the cluster
  • #207 PyYAML yaml.load(input) Deprecation
  • #203 jupyter-sphinx update Documentation enhancement
  • #199 jupyter-sphinx is pinned to non-existing branch

and merged the following Pull requests:

  • #257 add instructions for installing labextensions for Jupyterlab
  • #255 MNT: add vscode config directory to .gitignore
  • #253 disable test of runner using distributed
  • #252 color the overhead between red and green
  • #251 improve the style of the live_info widget, closes #250
  • #247 use tox, closes #238
  • #246 add a Pull Request template
  • #241 rename learner.ipynb -> example-notebook.ipynb
  • #239 correct short description in setup.py
  • #237 Power up pre-commit
  • #235 add a section of "How to cite" Adaptive
  • #234 Fix SKOptLearner for multi variate domain (issue #233)
  • #229 add a time-base stopping criterion for runners
  • #224 update packages in tutorial's landing page
  • #222 add _RequireAttrsABCMeta and make the BaseLearner use it
  • #221 2D: add triangle_loss

@akhmerov, you opted for a patch release, but we didn't put anything in stable. Since there are quite a lot of changes I think it warrants a new release. Also, we are below 1.0, so we can do anything we want 😄

version 0.9.0

07 Oct 11:11
Compare
Choose a tag to compare

Since 0.8.0 we fixed the following issues:

  • #217 Command-line tool
  • #211 Defining inside main() in multiprocess will report error
  • #208 Inquiry on implementation of parallelism on the cluster
  • #207 PyYAML yaml.load(input) Deprecation
  • #203 jupyter-sphinx update Documentation enhancement
  • #199 jupyter-sphinx is pinned to non-existing branch

and merged the following Pull requests:

  • #219 pass value_scale to the LearnerND's loss_per_simplex function
  • #209 remove MPI4PY_MAX_WORKERS where it's not used
  • #204 use jupyter_sphinx v0.2.0 from conda instead of my branch
  • #200 ensure atomic writes when saving a file
  • #193 Add a SequenceLearner
  • #188 BalancingLearner: add a "cycle" strategy, sampling the learners one by one
  • #202 Authors
  • #201 Update tutorial.parallelism.rst
  • #197 Add option to display a progress bar when loading a BalancingLearner
  • #195 don't treat the no data case differently in the Learner1D Learner1D
  • #194 pin everything in the docs/environment.yml file

version 0.8.0

07 May 23:23
Compare
Choose a tag to compare

Since 0.7.0 we fixed the following issues:

  • #7 suggested points lie outside of domain Learner2D
  • #39 What should learners do when fed the same point twice
  • #159 BalancingLearner puts all points in the first child-learner when asking for points with no data present
  • #148 Loading data file with no data results in an error for the BalancingLearner
  • #145 Returning np.nan breaks the 1D learner
  • #54 Make learnerND datastructures immutable where possible
  • gitlab:#134 Learner1D.load throws exception when file is empty
  • #166 live_plot broken with latest holoviews and bokeh
  • #156 Runner errors for Python 3.7 when done
  • #159 BalancingLearner puts all points in the first child-learner when asking for points with no data present
  • #171 default loss of LearnerND changed?
  • #163 Add a page to the documentation of papers where adaptive is used
  • #179 set python_requires in setup.py
  • #175 Underlying algorithm and MATLAB integration

and merged the following Pull requests:

  • gitlab:!141: change the simplex_queue to a SortedKeyList
  • gitlab:!142: make methods private in the LearnerND, closes #54
  • #162 test flat bands in the LearnerND
  • #161 import Iterable and Sized from collections.abc
  • #160 Distribute first points in a BalancingLearner
  • #153 invoke conda directly in CI
  • #152 fix bug in curvature_loss Learner1D bug
  • #151 handle NaN losses and add a test, closes #145
  • #150 fix _get_data for the BalancingLearner
  • #149 handle empty data files when loading, closes #148
  • #147 remove _deepcopy_fix and depend on sortedcollections >= 1.1
  • #168 Temporarily fix docs
  • #167 fix live_plot
  • #164 do not force shutdown the executor in the cleanup
  • #172 LearnerND: change the required loss to 1e-3 because the loss definition changed
  • #177 use the repo code in docs execute
  • #176 do not inline the HoloViews JS
  • #174 add a gallery page of Adaptive uses in scientific works
  • #170 Add logo to the documentation
  • #180 use setup(..., python_requires='>=3.6'), closes #179
  • #182 2D: do not return points outside the bounds, closes #181 bug
  • #185 Add support for neighbours in loss computation in LearnerND
  • #186 renormalize the plots value axis on every update
  • #189 use pytest rather than py.test
  • #190 add support for mpi4py

version 0.7.5

19 Mar 18:28
Compare
Choose a tag to compare

fix live_plot

version 0.7.3

29 Jan 14:14
0e0674d
Compare
Choose a tag to compare

Fix copy_from for the BalancingLearner

version 0.7.0

19 Dec 10:35
Compare
Choose a tag to compare

Since 0.6.0 we fixed the following issues:

  • #122: Remove public 'fname' learner attribute
  • #119: (Learner1D) add possibility to use the direct neighbors in the loss
  • #114: (LearnerND) allow any convex hull as domain
  • #121: How to handle NaN?
  • #107: Make BaseRunner an abstract base class
  • #112: (LearnerND) add iso-surface plot feature
  • #56: Improve plotting for learners
  • #118: widgets don't show up on adaptive.readthedocs.io
  • #91: Set up documentation
  • #62: AverageLearner math domain error
  • #113: make BalancingLearner work with the live_plot
  • #111: (LearnerND) flat simplices are sometimes added on the surface of the triangulation
  • #103: (BalancingLearner) make new balancinglearner that looks at the total loss rather than loss improvement
  • #110: LearnerND triangulation incomplete
  • #127: Typo in documentation for adaptive.learner.learner2D.uniform_loss(ip)
  • #126: (Learner1D) improve time complexity
  • #104: Learner1D could in some situations return -inf as loss improvement, which would make balancinglearner never choose to improve
  • #128: (LearnerND) fix plotting of scaled domains
  • #78: (LearnerND) scale y-values

and merged the following Merge Requests:

  • !131: Resolve "(Learner1D) add possibility to use the direct neighbors in the loss"
  • !137: adhere to PEP008 by using absolute imports
  • !135: test all the different loss functions in each test
  • !133: make 'fname' a parameter to 'save' and 'load' only
  • !136: build the Dockerimage used in CI
  • !134: change resolution_loss to a factory function
  • !118: add 'save' and 'load' to the learners and periodic saving to the Runner
  • !127: Resolve "(LearnerND) allow any convex hull as domain"
  • !130: save execution time on futures inside runners
  • !111: Resolve "Make BaseRunner an abstract base class"
  • !124: Resolve "(LearnerND) add iso-surface plot feature"
  • !108: exponentially decay message frequency in live_info
  • !129: add tutorials
  • !120: add documentation
  • !125: update to the latest miniver
  • !126: add check_whitespace
  • !123: add an option to plot a HoloMap with the BalancingLearner
  • !122: implement 'npoints' strategy for the 'BalancingLearner'
  • !119: (learnerND) no more (almost) flat simplices in the triangulation
  • !109: make a BalancingLearner strategy that compares the total loss rather than loss improvement
  • !117: Cache loss and display it in the live_info widget
  • !121: 2D: add loss that minimizes the area of the triangle in 3D
  • !139: Resolve "(Learner1D) improve time complexity"
  • !140: Resolve "(LearnerND) fix plotting of scaled domains"
  • !128: LearnerND scale output values before computing loss

version 0.6.0

05 Oct 10:55
Compare
Choose a tag to compare

Since 0.5.0 we fixed the following issues:

  • #66: (refactor) learner.tell(x, None) might be renamed to learner.tell_pending(x)
  • #92: DeprecationWarning: sorted_dict.iloc is deprecated. Use SortedDict.keys() instead.
  • #94: Learner1D breaks if right bound is added before the left bound
  • #95: Learner1D's bound check algo in self.ask doesn't take self.data or self.pending_points
  • #96: Learner1D fails when function returns a list instead of a numpy.array
  • #97: Learner1D fails when a point (x, None) is added when x already exists
  • #98: Learner1D.ask breaks when adding points in some order
  • #99: Learner1D doesn't correctly set the interpolated loss when a point is added
  • #101: How should learners handle data that is outside of the domain
  • #102: No tests for the 'BalancingLearner'
  • #105: LearnerND fails for BalancingLearner test
  • #108: (BalancingLearner) loss is cached incorrectly
  • #109: Learner2D suggests same point twice

and merged the following Merge Requests:

  • !93: add a release guide
  • !94: add runner.max_retries
  • !95: 1D: fix the rare case where the right boundary point exists before the left bound
  • !96: More efficient 'tell_many'
  • !97: Fix #97 and #98
  • !98: Resolve "DeprecationWarning: sorted_dict.iloc is deprecated. Use SortedDict.keys() instead."
  • !99: Resolve "Learner1D's bound check algo in self.ask doesn't take self.data or self.pending_points"
  • !100: Resolve "Learner1D doesn't correctly set the interpolated loss when a point is added"
  • !101: Resolve "Learner1D fails when function returns a list instead of a numpy.array"
  • !102: introduce 'runner.retries' and 'runner.raise_if_retries_exceeded'
  • !103: 2D: rename 'learner._interp' to 'learner.pending_points' as in other learners
  • !104: Make the AverageLearner only return new points ...
  • !105: move specific tests for a particular learner to separate files
  • !107: Introduce 'tell_pending' which replaces 'tell(x, None)'
  • !112: Resolve "LearnerND fails for BalancingLearner test"
  • !113: Resolve "(BalancingLearner) loss is cached incorrectly"
  • !114: update release guide to add a 'dev' tag on top of regular tags
  • !115: Resolve "How should learners handle data that is outside of the domain"
  • !116: 2D: fix #109

New features

  • add learner.tell_pending which replaces learner.tell(x, None)
  • add error-handling with runner.retries and runner.raise_if_retries_exceeded
  • make learner.pending_points and runner.pending_points public API
  • rename learner.ask(n, add_data) -> learner.ask(n, tell_pending)
  • added the overhead method to the BlockingRunner