Releases: python-adaptive/adaptive
version 0.11.2
Fix license identifier for Zenodo.
version 0.11.1
- Creates
.zenodo.json
- Fixes docs building
version 0.11.0
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
version v0.10.0
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
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
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
fix live_plot
version 0.7.3
Fix copy_from for the BalancingLearner
version 0.7.0
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
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 replaceslearner.tell(x, None)
- add error-handling with
runner.retries
andrunner.raise_if_retries_exceeded
- make
learner.pending_points
andrunner.pending_points
public API - rename
learner.ask(n, add_data)
->learner.ask(n, tell_pending)
- added the
overhead
method to theBlockingRunner