https://kotlinlang.org logo
#mathematics
Title
# mathematics
b

breandan

08/22/2020, 6:05 AM
a

altavir

08/22/2020, 6:17 AM
It seems to be dead. By the way, I've started porting my optimization codes to the multiplatform (it includes Commons-maths fitters, a fork of JMinuint package and unique implementation of Fyodor Tkachev's QOW method). I do not think it will be a part of Kmath since it is too complicated and relies on other my libraries. Sadly, I currently do not have time to work on it properly.
👍 2
But in order to make it multiplatform, I will need eigenvalue decomposition...
b

breandan

09/12/2020, 8:36 PM
I've heard OpenBLAS is pretty fast/portable, ex. JBlas recently switched to OpenBLAS without much trouble: https://github.com/jblas-project/jblas/blob/main/RELEASE_NOTES
р

Ролан

05/15/2021, 9:19 AM
I have experience with constrained optimisation working in finance. My outcome is that: if you can afford a commercial licenise you should go for Gurobi. Otherwise, in open source for continuous problems I recommend https://kul-forbes.github.io/scs/, for mixed-integer https://www.scipopt.org/
Regrading BLAS: if on Intel machine you are better of with MKL (than OpenBlas or Atlas), if you have Nividia go for cuBLAS
Regarding power methods and multiplatform implementation: well yeah that would be awesome to see.
b

breandan

05/15/2021, 10:34 AM
Yeah, someone else recommended Gurobi and apparently they provide an academic license so that also looks like a good option. Another OSS alternative I looked at is MiniCP www.minicp.org
р

Ролан

05/15/2021, 4:48 PM
Yes, Gurobi is the best optimiser by a mile for constrained problems, especially for MILP. The academic license should cover most of the functionality for free. Please note as well that, depending on your use case, a powerful optimiser is not always enough. You need also a good pre-solver for the modelling language you use. The best one I believe is AMPL (again from personal experience). However, this is again commercial software (but probably accessible for academics).
I am scared MiniCP wouldn't be able to handle anything beyond toy problems.
b

breandan

05/20/2021, 5:55 AM
Re: Semirings, I really like the way they're implemented in Torch-Struct: https://github.com/harvardnlp/pytorch-struct/ https://github.com/harvardnlp/genbmm Implementing an algorithm like Viterbi with semiring algebras might be a good intern project, I know Maria already has some code for this: https://www.mariakhalusova.com/posts/2021-03-08-pos-tagging-with-hmm/
👍 1
р

Ролан

05/20/2021, 6:08 AM
Looking at genbmm implementation I really find PyTorch to have grown up into an amazing computational platform. The integration with Python, C/C++ & CUDA is as seamless as it gets.
that's exactly what one needs writing numerical code
a

altavir

05/20/2021, 6:17 AM
We've just added boolean algebra and I thinkg we can add anything without breaking the compatibility, so PRs are welcome.
3 Views