Solver Integrations
ojAlgo's ExpressionsBasedModel is solver-agnostic: the formulation is not tied to the engine that solves it. Optimatika maintains a set of integration modules connecting that model to external solvers, all in a single repository — ojAlgo-extensions.
This integration work is also what the Optimisation Service is built on. The Service draws on the open source, licence-compatible modules; which of them it uses is an implementation detail that changes as solvers improve, and no specific solver is promised. Commercial solvers are not part of it.
All the modules — commercial integrations included — are available directly to Optimatika Subscription holders, together with the right to request new builds against current solver versions. An integration module is not a solver licence: the commercial modules let you reach a solver you have already licensed from its vendor, and do not come with one.
Commercial solvers
The leading commercial solvers offer the highest performance, especially on large MIP models where they are meaningfully ahead of any open source alternative. They are the industry standard for a reason.
The costs are not only the licence fee. Pricing is usually quote-gated, so you may not know it until you talk to sales. The solvers themselves are native code, so platform-specific binaries have to be packaged and deployed alongside your Java application. Licence servers or licence files must be managed, and licence terms can restrict how and where the software runs.
| Module | Solver | Types | Status |
|---|---|---|---|
ojAlgo-cplex | IBM ILOG CPLEX | LP, QP, MIP | Released |
ojAlgo-gurobi | Gurobi | LP, QP, MIP | Released |
ojAlgo-mosek | MOSEK | LP, QP, MIP | Released |
ojAlgo-xpress | FICO Xpress | LP, QP, MIP | Planned |
ojAlgo-copt | COPT | LP, QP, MIP | Planned |
Other Java solver libraries
There are a few other pure Java solver libraries, and ojAlgo has integrations for them so they can be tried as drop-in alternatives.
In practice ojAlgo outperforms all of them, both in speed and in the number of models solved successfully. Hipparchus is the most capable alternative and still fails on roughly half the standard LP test models. Commons Math is older and more limited — Hipparchus is its maintained fork — and JOptimizer's QP work is largely superseded by ojAlgo's own.
| Module | Solver | Types | Licence | Status |
|---|---|---|---|---|
ojAlgo-hipparchus | Hipparchus | LP, QP | Apache 2.0 | Released |
ojAlgo-commons-math3 | Apache Commons Math | LP | Apache 2.0 | Released |
ojAlgo-joptimizer | JOptimizer | QP | Apache 2.0 | Released |
ojAlgo-ssclp | SSC-LP | LP, MIP | GPLv3 | In development — GPL is incompatible with ojAlgo's MIT licence, so no release |
Open source native solvers
When models grow past what pure Java can do, open source native solvers are a strong option. HiGHS has become the leading open source solver for LP, QP and MIP, and OR-Tools bundles Google's GLOP simplex solver alongside CP-SAT and other algorithms.
The cost here is deployment complexity rather than money. These are C, C++ or Rust libraries that must be compiled or packaged as platform-specific binaries for every target environment. JNI or Foreign Function calls bridge the JVM and the native code, adding a layer that can be fragile across JDK versions, and debugging at that boundary is harder than debugging pure Java.
This is the work the Optimisation Service exists to absorb.
| Module | Solver | Types | Language | Status |
|---|---|---|---|---|
ojAlgo-highs | HiGHS | LP, QP, MIP | C++ | Released |
ojAlgo-ortools | Google OR-Tools / GLOP | LP, MIP | C++ | Released |
ojAlgo-clarabel4j | Clarabel via clarabel4j | QP | Rust | Released |
ojAlgo-clarabel | Clarabel | QP | Rust | In development |
ojAlgo-scip | SCIP | LP, QP, MIP | C | In development |
Status and access
Released modules are on Maven Central. In development modules are in the repository but not yet released. Planned modules are not yet started.
The ojAlgo-extensions repository also holds integrations that are not solvers — JFreeChart and RocksDB among them.
Access to the repository, and the right to request new builds of any module against current solver versions, comes with an Optimatika Subscription.