Releases: denehoffman/ganesh
Releases · denehoffman/ganesh
v0.5.0
This release is fairly large, but the main differences will go unnoticed except for those who have implemented their own algorithms.
Added
- Generics have been changed and the
Field
trait was removed. The generics now cover minimal traits required to run each method, along with aFrom<f32>
bound which does the majority of what theField
trait did anyway. - Most types that were
&[F]
are now&DVector<F>
. The exceptions are in algorithmnew
functions, which are more ergonomic if slices are used. In the actual implementations,DVector
s are much more convenient than all theVec
iterations I was doing previously. - Added some line search algorithms to make the
GradientDescent
method more functional. This will also be used in the next update, which will hopefully provide the BFGS algorithm family.
Fixed
- Some fields in the
Newton
andGradientDescent
algorithm initializers were set wrong, making these algorithms function strangely or not at all. This has been fixed.
v0.4.0
Other
- undo changes to previous version, lifetimes make things more difficult to work with for end-users. Removed NelderMeadMessage.
v0.3.1
Added
- change functions to references to avoid cloning any underlying function data
v0.3.0
Added
- switch
&Option<args>
toOption<&args>
and remove messages in favor of extendingMinimizer
trait - add
Send
/Sync
toFunction
Fixed
- change callback to no longer be optional, this just required typing
None::<fn(&_)>
everywhere which is way uglier than|_|{}
- make callback optional to avoid toilet bowl closure
Other
- Merge branch 'development' of github.com:denehoffman/ganesh into development
- update crate docs to reflect new changes
- add wordmark
- add logo to readme
- remove
num::Float
trait dependence - add logo
- Merge branch 'main' into development
v0.2.0
Fixed
- re-implement args that were lost in merge
- move main traits to core module and modify gradient and hessian methods to work better at larger values
Other
- update docstrings to reflect arguments
- Merge branch 'development' of https://github.com/denehoffman/ganesh into development
- add benchmark
- release
v0.1.0
chore: Release package ganesh version 0.1.0