## digitalmars.D.announce - Mir Algorithm v1.1.3

- 9il (50/50) Jul 01 2018 Mir Algorithm [1, 2]
- jmh530 (4/21) Jul 02 2018 Great. I'll need to look into some of these changes, particularly
- 9il (8/32) Jul 03 2018 New Mir features are open source reflection of work on large
- jmh530 (6/14) Jul 03 2018 There are a lot of cases where non-linear least squares can be
- Bauss (2/52) Jul 02 2018 Thank you for the great work!

Mir Algorithm [1, 2] ============= Dlang core library for math, finance and a home for Dlang multidimensional array package - ndslice. New features: - most of routines in mir.ndslice.topology (e.g. map, zip, stride) accept common arrays - `Series` got the same formating as builtin associative arrays - `Series` got ~ overloaded operator for set union. - mir.series: `unionSeries` was added (for N=2 optimised using `troykaSeries`) - mir.series: `troykaGalop` and `troykaSeries` were added. They are awesome too iterate over set union when both side set differences and/or set intersection should be handled seprately [6, 7] - ... and a lot of others I forgot since v0.8.0 announce Few bugs was fixed. And a small tip about syntax sugar [3]: /+dub.sdl: dependency "mir-algorithm" version="~>1.1.3" +/ import mir.ndslice; void main() { auto v = [1.0, 2]; auto w = [1.0, 2]; // `map` knows about `zip` auto lazySum1 = zip(v, w).map!((a, b) => a + b); // it is elementwise sum too. auto lazySum2 = v.sliced + w.sliced; assert(lazySum1 == lazySum2); } Major part of this work has been sponsored by Symmetry Investments [4] and Kaleidic Associates [5]. Acknowledgements: Sebastian Wilzbach, Nathan Sashihara, John Hall, Shigeki Karita. [1] https://github.com/libmir/mir-algorithm [2] http://docs.algorithm.dlang.io/latest/index.html [3] https://run.dlang.io/gist/e45d9892299131cee9c90541bbc00183 [4] http://symmetryinvestments.com [5] https://github.com/kaleidicassociates [6] http://docs.algorithm.dlang.io/latest/mir_series.html#.troykaGalop [7] http://docs.algorithm.dlang.io/latest/mir_series.html#.troykaSeries Best Regards, Ilya Yaroshenko

Jul 01 2018

On Sunday, 1 July 2018 at 15:18:55 UTC, 9il wrote:Mir Algorithm [1, 2] ============= Dlang core library for math, finance and a home for Dlang multidimensional array package - ndslice. New features: - most of routines in mir.ndslice.topology (e.g. map, zip, stride) accept common arrays - `Series` got the same formating as builtin associative arrays - `Series` got ~ overloaded operator for set union. - mir.series: `unionSeries` was added (for N=2 optimised using `troykaSeries`) - mir.series: `troykaGalop` and `troykaSeries` were added. They are awesome too iterate over set union when both side set differences and/or set intersection should be handled seprately [6, 7] - ... and a lot of others I forgot since v0.8.0 announce [snip]Great. I'll need to look into some of these changes, particularly on Series. What are you plans for next steps with Mir?

Jul 02 2018

On Monday, 2 July 2018 at 13:51:17 UTC, jmh530 wrote:On Sunday, 1 July 2018 at 15:18:55 UTC, 9il wrote:New Mir features are open source reflection of work on large proprietary codebase. We have awesome Levenbergâ€“Marquardt algorithm implementation (ndim non-linear least squares solver) in mir.optim, but it is closed source. Maybe if people from the community ask Laeeth to allow to open source it he would like to do so. No idea why it is closed source for now. -- IlyaMir Algorithm [1, 2] ============= Dlang core library for math, finance and a home for Dlang multidimensional array package - ndslice. New features: - most of routines in mir.ndslice.topology (e.g. map, zip, stride) accept common arrays - `Series` got the same formating as builtin associative arrays - `Series` got ~ overloaded operator for set union. - mir.series: `unionSeries` was added (for N=2 optimised using `troykaSeries`) - mir.series: `troykaGalop` and `troykaSeries` were added. They are awesome too iterate over set union when both side set differences and/or set intersection should be handled seprately [6, 7] - ... and a lot of others I forgot since v0.8.0 announce [snip]Great. I'll need to look into some of these changes, particularly on Series. What are you plans for next steps with Mir?

Jul 03 2018

On Tuesday, 3 July 2018 at 12:47:58 UTC, 9il wrote:[snip] New Mir features are open source reflection of work on large proprietary codebase. We have awesome Levenbergâ€“Marquardt algorithm implementation (ndim non-linear least squares solver) in mir.optim, but it is closed source. Maybe if people from the community ask Laeeth to allow to open source it he would like to do so. No idea why it is closed source for now. -- IlyaThere are a lot of cases where non-linear least squares can be useful: options pricing, yield curve fitting, etc. I've been doing so much of my statistics with MC-Stan that I forget about how useful stuff like that can be. Bayesian techniques are always so much slower.

Jul 03 2018

On Sunday, 1 July 2018 at 15:18:55 UTC, 9il wrote:Mir Algorithm [1, 2] ============= Dlang core library for math, finance and a home for Dlang multidimensional array package - ndslice. New features: - most of routines in mir.ndslice.topology (e.g. map, zip, stride) accept common arrays - `Series` got the same formating as builtin associative arrays - `Series` got ~ overloaded operator for set union. - mir.series: `unionSeries` was added (for N=2 optimised using `troykaSeries`) - mir.series: `troykaGalop` and `troykaSeries` were added. They are awesome too iterate over set union when both side set differences and/or set intersection should be handled seprately [6, 7] - ... and a lot of others I forgot since v0.8.0 announce Few bugs was fixed. And a small tip about syntax sugar [3]: /+dub.sdl: dependency "mir-algorithm" version="~>1.1.3" +/ import mir.ndslice; void main() { auto v = [1.0, 2]; auto w = [1.0, 2]; // `map` knows about `zip` auto lazySum1 = zip(v, w).map!((a, b) => a + b); // it is elementwise sum too. auto lazySum2 = v.sliced + w.sliced; assert(lazySum1 == lazySum2); } Major part of this work has been sponsored by Symmetry Investments [4] and Kaleidic Associates [5]. Acknowledgements: Sebastian Wilzbach, Nathan Sashihara, John Hall, Shigeki Karita. [1] https://github.com/libmir/mir-algorithm [2] http://docs.algorithm.dlang.io/latest/index.html [3] https://run.dlang.io/gist/e45d9892299131cee9c90541bbc00183 [4] http://symmetryinvestments.com [5] https://github.com/kaleidicassociates [6] http://docs.algorithm.dlang.io/latest/mir_series.html#.troykaGalop [7] http://docs.algorithm.dlang.io/latest/mir_series.html#.troykaSeries Best Regards, Ilya YaroshenkoThank you for the great work!

Jul 02 2018