optimatika/ojAlgo
Pure Java LP, QP and MIP solvers plus fast linear algebra. Zero dependencies, MIT licensed. Mathematical optimization and linear algebra for the JVM.
What it solves
ojAlgo provides a high-performance, zero-dependency Java library for mathematical operations, specifically targeting linear algebra and mathematical programming (optimisation). It allows developers to solve complex numerical problems without relying on external native libraries.
How it works
The library is built on a flexible system of array classes that support sparse or dense formats and can handle various number types (including complex, rational, and quaternions). It uses these arrays to implement:
- Linear Algebra: High-speed matrix operations.
- Optimisation Solvers: Tools for Linear Programming (LP), Quadratic Programming (QP), and Mixed-Integer Programming (MIP).
- Data Science Utilities: Implementations of Artificial Neural Networks and clustering algorithms.
Who it’s for
Java developers who need professional-grade mathematical tools for data science, financial modelling, or industrial optimisation problems (such as bin packing or shift scheduling) within a pure Java environment.
Highlights
- Zero Dependencies: Pure Java implementation requiring no external libraries.
- High Performance: Ranked as one of the fastest pure Java linear algebra libraries in independent benchmarks.
- Flexible Memory: Arrays can be allocated off-heap or stored in a file to handle arbitrarily large datasets.
- Broad Mathematical Scope: Covers everything from stochastic processes and descriptive statistics to complex number handling.
Related
- Project
- Project
- Project
- Project
- Project