You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+202
Original file line number
Diff line number
Diff line change
@@ -5,3 +5,205 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5
5
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
7
7
## [unreleased]
8
+
9
+
10
+
## version 0.9.0
11
+
12
+
Since [0.8.0](https://github.com/python-adaptive/adaptive/tree/v0.8.0) we fixed the following [issues](https://github.com/python-adaptive/adaptive/issues):
-[#197](https://github.com/python-adaptive/adaptive/pull/197) Add option to display a progress bar when loading a BalancingLearner
31
+
-[#195](https://github.com/python-adaptive/adaptive/pull/195) don't treat the no data case differently in the Learner1D Learner1D
32
+
-[#194](https://github.com/python-adaptive/adaptive/pull/194) pin everything in the docs/environment.yml file
33
+
34
+
35
+
## version 0.8.0
36
+
37
+
Since [0.7.0](https://github.com/python-adaptive/adaptive/tree/v0.7.0) we fixed the following [issues](https://github.com/python-adaptive/adaptive/issues):
38
+
*[#7](https://github.com/python-adaptive/adaptive/issues/7) suggested points lie outside of domain Learner2D
39
+
*[#39](https://github.com/python-adaptive/adaptive/issues/39) What should learners do when fed the same point twice
40
+
*[#159](https://github.com/python-adaptive/adaptive/issues/159) BalancingLearner puts all points in the first child-learner when asking for points with no data present
41
+
*[#148](https://github.com/python-adaptive/adaptive/issues/148) Loading data file with no data results in an error for the BalancingLearner
42
+
*[#145](https://github.com/python-adaptive/adaptive/issues/145) Returning np.nan breaks the 1D learner
43
+
*[#54](https://github.com/python-adaptive/adaptive/issues/54) Make learnerND datastructures immutable where possible
44
+
*[gitlab:#134](https://gitlab.kwant-project.org/qt/adaptive/issues/134) Learner1D.load throws exception when file is empty
45
+
*[#166](https://github.com/python-adaptive/adaptive/issues/166) live_plot broken with latest holoviews and bokeh
46
+
*[#156](https://github.com/python-adaptive/adaptive/issues/156) Runner errors for Python 3.7 when done
47
+
*[#159](https://github.com/python-adaptive/adaptive/issues/159) BalancingLearner puts all points in the first child-learner when asking for points with no data present
48
+
*[#171](https://github.com/python-adaptive/adaptive/issues/171) default loss of LearnerND changed?
49
+
*[#163](https://github.com/python-adaptive/adaptive/issues/163) Add a page to the documentation of papers where adaptive is used
50
+
*[#179](https://github.com/python-adaptive/adaptive/issues/179) set python_requires in setup.py
51
+
*[#175](https://github.com/python-adaptive/adaptive/issues/175) Underlying algorithm and MATLAB integration
52
+
53
+
54
+
and merged the following [Pull requests](https://github.com/python-adaptive/adaptive/pulls):
55
+
*[gitlab:!141](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/141): change the simplex_queue to a SortedKeyList
56
+
*[gitlab:!142](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/142): make methods private in the LearnerND, closes #54
57
+
*[#162](https://github.com/python-adaptive/adaptive/pull/162) test flat bands in the LearnerND
58
+
*[#161](https://github.com/python-adaptive/adaptive/pull/161) import Iterable and Sized from collections.abc
59
+
*[#160](https://github.com/python-adaptive/adaptive/pull/160) Distribute first points in a BalancingLearner
60
+
*[#153](https://github.com/python-adaptive/adaptive/pull/153) invoke conda directly in CI
61
+
*[#152](https://github.com/python-adaptive/adaptive/pull/152) fix bug in curvature_loss Learner1D bug
62
+
*[#151](https://github.com/python-adaptive/adaptive/pull/151) handle NaN losses and add a test, closes #145
63
+
*[#150](https://github.com/python-adaptive/adaptive/pull/150) fix `_get_data` for the BalancingLearner
64
+
*[#149](https://github.com/python-adaptive/adaptive/pull/149) handle empty data files when loading, closes #148
65
+
*[#147](https://github.com/python-adaptive/adaptive/pull/147) remove `_deepcopy_fix` and depend on sortedcollections >= 1.1
*[#164](https://github.com/python-adaptive/adaptive/pull/164) do not force shutdown the executor in the cleanup
69
+
*[#172](https://github.com/python-adaptive/adaptive/issues/172) LearnerND: change the required loss to 1e-3 because the loss definition changed
70
+
*[#177](https://github.com/python-adaptive/adaptive/pull/177) use the repo code in docs execute
71
+
*[#176](https://github.com/python-adaptive/adaptive/pull/176) do not inline the HoloViews JS
72
+
*[#174](https://github.com/python-adaptive/adaptive/pull/174) add a gallery page of Adaptive uses in scientific works
73
+
*[#170](https://github.com/python-adaptive/adaptive/pull/170) Add logo to the documentation
74
+
*[#180](https://github.com/python-adaptive/adaptive/pull/180) use setup(..., python_requires='>=3.6'), closes #179
75
+
*[#182](https://github.com/python-adaptive/adaptive/pull/182) 2D: do not return points outside the bounds, closes #181 bug
76
+
*[#185](https://github.com/python-adaptive/adaptive/pull/185) Add support for neighbours in loss computation in LearnerND
77
+
*[#186](https://github.com/python-adaptive/adaptive/pull/186) renormalize the plots value axis on every update
78
+
*[#189](https://github.com/python-adaptive/adaptive/pull/189) use pytest rather than py.test
79
+
*[#190](https://github.com/python-adaptive/adaptive/pull/190) add support for mpi4py
80
+
81
+
82
+
## version 0.7.0
83
+
84
+
Since [0.6.0](https://gitlab.kwant-project.org/qt/adaptive/tree/v0.6.0) we fixed the following [issues](https://gitlab.kwant-project.org/qt/adaptive/issues):
85
+
*[#122](https://gitlab.kwant-project.org/qt/adaptive/issues/122): Remove public 'fname' learner attribute
86
+
*[#119](https://gitlab.kwant-project.org/qt/adaptive/issues/119): (Learner1D) add possibility to use the direct neighbors in the loss
87
+
*[#114](https://gitlab.kwant-project.org/qt/adaptive/issues/114): (LearnerND) allow any convex hull as domain
88
+
*[#121](https://gitlab.kwant-project.org/qt/adaptive/issues/121): How to handle NaN?
89
+
*[#107](https://gitlab.kwant-project.org/qt/adaptive/issues/107): Make BaseRunner an abstract base class
*[#56](https://gitlab.kwant-project.org/qt/adaptive/issues/56): Improve plotting for learners
92
+
*[#118](https://gitlab.kwant-project.org/qt/adaptive/issues/118): widgets don't show up on adaptive.readthedocs.io
93
+
*[#91](https://gitlab.kwant-project.org/qt/adaptive/issues/91): Set up documentation
94
+
*[#62](https://gitlab.kwant-project.org/qt/adaptive/issues/62): AverageLearner math domain error
95
+
*[#113](https://gitlab.kwant-project.org/qt/adaptive/issues/113): make BalancingLearner work with the live_plot
96
+
*[#111](https://gitlab.kwant-project.org/qt/adaptive/issues/111): (LearnerND) flat simplices are sometimes added on the surface of the triangulation
97
+
*[#103](https://gitlab.kwant-project.org/qt/adaptive/issues/103): (BalancingLearner) make new balancinglearner that looks at the total loss rather than loss improvement
*[#127](https://gitlab.kwant-project.org/qt/adaptive/issues/127): Typo in documentation for` adaptive.learner.learner2D.uniform_loss(ip)`
100
+
*[#126](https://gitlab.kwant-project.org/qt/adaptive/issues/126): (Learner1D) improve time complexity
101
+
*[#104](https://gitlab.kwant-project.org/qt/adaptive/issues/104): Learner1D could in some situations return -inf as loss improvement, which would make balancinglearner never choose to improve
102
+
*[#128](https://gitlab.kwant-project.org/qt/adaptive/issues/128): (LearnerND) fix plotting of scaled domains
and merged the following [Merge Requests](https://gitlab.kwant-project.org/qt/adaptive/merge_requests):
106
+
*[!131](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/131): Resolve "(Learner1D) add possibility to use the direct neighbors in the loss"
107
+
*[!137](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/137): adhere to PEP008 by using absolute imports
108
+
*[!135](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/135): test all the different loss functions in each test
109
+
*[!133](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/133): make 'fname' a parameter to 'save' and 'load' only
110
+
*[!136](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/136): build the Dockerimage used in CI
111
+
*[!134](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/134): change resolution_loss to a factory function
112
+
*[!118](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/118): add 'save' and 'load' to the learners and periodic saving to the Runner
113
+
*[!127](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/127): Resolve "(LearnerND) allow any convex hull as domain"
114
+
*[!130](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/130): save execution time on futures inside runners
115
+
*[!111](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/111): Resolve "Make BaseRunner an abstract base class"
*[!123](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/123): add an option to plot a HoloMap with the BalancingLearner
123
+
*[!122](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/122): implement 'npoints' strategy for the 'BalancingLearner'
124
+
*[!119](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/119): (learnerND) no more (almost) flat simplices in the triangulation
125
+
*[!109](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/109): make a BalancingLearner strategy that compares the total loss rather than loss improvement
126
+
*[!117](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/117): Cache loss and display it in the live_info widget
127
+
*[!121](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/121): 2D: add loss that minimizes the area of the triangle in 3D
128
+
*[!139](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/139): Resolve "(Learner1D) improve time complexity"
129
+
*[!140](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/140): Resolve "(LearnerND) fix plotting of scaled domains"
130
+
*[!128](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/128): LearnerND scale output values before computing loss
131
+
132
+
133
+
## version 0.6.0
134
+
135
+
Since [0.5.0](https://gitlab.kwant-project.org/qt/adaptive/tree/v0.5.0) we fixed the following [issues](https://gitlab.kwant-project.org/qt/adaptive/issues):
136
+
*[#66](https://gitlab.kwant-project.org/qt/adaptive/issues/66): (refactor) learner.tell(x, None) might be renamed to learner.tell_pending(x)
137
+
*[#92](https://gitlab.kwant-project.org/qt/adaptive/issues/92): DeprecationWarning: sorted_dict.iloc is deprecated. Use SortedDict.keys() instead.
138
+
*[#94](https://gitlab.kwant-project.org/qt/adaptive/issues/94): Learner1D breaks if right bound is added before the left bound
139
+
*[#95](https://gitlab.kwant-project.org/qt/adaptive/issues/95): Learner1D's bound check algo in self.ask doesn't take self.data or self.pending_points
140
+
*[#96](https://gitlab.kwant-project.org/qt/adaptive/issues/96): Learner1D fails when function returns a list instead of a numpy.array
141
+
*[#97](https://gitlab.kwant-project.org/qt/adaptive/issues/97): Learner1D fails when a point (x, None) is added when x already exists
142
+
*[#98](https://gitlab.kwant-project.org/qt/adaptive/issues/98): Learner1D.ask breaks when adding points in some order
143
+
*[#99](https://gitlab.kwant-project.org/qt/adaptive/issues/99): Learner1D doesn't correctly set the interpolated loss when a point is added
144
+
*[#101](https://gitlab.kwant-project.org/qt/adaptive/issues/101): How should learners handle data that is outside of the domain
145
+
*[#102](https://gitlab.kwant-project.org/qt/adaptive/issues/102): No tests for the 'BalancingLearner'
146
+
*[#105](https://gitlab.kwant-project.org/qt/adaptive/issues/105): LearnerND fails for BalancingLearner test
147
+
*[#108](https://gitlab.kwant-project.org/qt/adaptive/issues/108): (BalancingLearner) loss is cached incorrectly
148
+
*[#109](https://gitlab.kwant-project.org/qt/adaptive/issues/109): Learner2D suggests same point twice
149
+
150
+
and merged the following [Merge Requests](https://gitlab.kwant-project.org/qt/adaptive/merge_requests):
151
+
*[!93](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/93): add a release guide
*[!95](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/95): 1D: fix the rare case where the right boundary point exists before the left bound
154
+
*[!96](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/96): More efficient 'tell_many'
155
+
*[!97](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/97): Fix #97 and #98
156
+
*[!98](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/98): Resolve "DeprecationWarning: sorted_dict.iloc is deprecated. Use SortedDict.keys() instead."
157
+
*[!99](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/99): Resolve "Learner1D's bound check algo in self.ask doesn't take self.data or self.pending_points"
158
+
*[!100](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/100): Resolve "Learner1D doesn't correctly set the interpolated loss when a point is added"
159
+
*[!101](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/101): Resolve "Learner1D fails when function returns a list instead of a numpy.array"
160
+
*[!102](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/102): introduce 'runner.retries' and 'runner.raise_if_retries_exceeded'
161
+
*[!103](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/103): 2D: rename 'learner._interp' to 'learner.pending_points' as in other learners
162
+
*[!104](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/104): Make the AverageLearner only return new points ...
163
+
*[!105](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/105): move specific tests for a particular learner to separate files
164
+
*[!107](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/107): Introduce 'tell_pending' which replaces 'tell(x, None)'
165
+
*[!112](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/112): Resolve "LearnerND fails for BalancingLearner test"
166
+
*[!113](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/113): Resolve "(BalancingLearner) loss is cached incorrectly"
167
+
*[!114](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/114): update release guide to add a 'dev' tag on top of regular tags
168
+
*[!115](https://gitlab.kwant-project.org/qt/adaptive/merge_requests/115): Resolve "How should learners handle data that is outside of the domain"
* added the `overhead` method to the `BlockingRunner`
178
+
179
+
180
+
## version 0.5.0
181
+
182
+
* Introduce `LearnerND` (beta)
183
+
* Add `BalancingLearner.from_product` (see `learner.ipynb` or doc-string for useage example)
184
+
*`runner.live_info()` now shows the learner's efficiency
185
+
*`runner.task.print_stack()` now displays the full traceback
186
+
* Introduced `learner.tell_many` instead of having `learner.tell` figure out whether multiple points are added ([#59](https://gitlab.kwant-project.org/qt/adaptive/issues/59))
187
+
* Fixed a [bug](https://gitlab.kwant-project.org/qt/adaptive/issues/61) that occured when a `Learner1D` had extremely narrow features
188
+
189
+
And more bugs, see https://github.com/python-adaptive/adaptive/compare/v0.4.1...v0.5.0
190
+
191
+
192
+
## version 0.4.0
193
+
194
+
Rename 'choose_points' -> 'ask' and 'add_point', 'add_data' -> 'tell' and
195
+
* several small bug fixes
196
+
* add Jorn Hoofwijk as an author
197
+
198
+
199
+
## version 0.2.0
200
+
201
+
Release with correct licensing information
202
+
Previously Christoph Groth was not properly attributed for his contributions.
203
+
204
+
This release also contains a bugfix for Windows users
0 commit comments