MIPLearn is mainly written in Python, with some components written in Julia. For this
In these docs, we describe the Python/Pyomo version of the package, although a [Julia/JuMP version](https://github.com/ANL-CEEESA/MIPLearn.jl) is also available. A mixed-integer solver is also required and its Python bindings must be properly installed. Supported solvers are currently CPLEX and Gurobi.
reason, both Python 3.6+ and Julia 1.3+ are required. A mixed-integer solver is also required, and
its Python bindings must be properly installed. Supported solvers are CPLEX and
Gurobi. Optimization problems currently need to be specified in the Pyomo modeling language.
A JuMP interface to the package is currently under development.
After installation, the package `miplearn` should become available to Python. It can be imported
After installation, the package `miplearn` should become available to Python. It can be imported
@ -24,9 +17,6 @@ as follows:
import miplearn
import miplearn
```
```
!!! note
To install MIPLearn in another Python environment, switch to that environment before running `make install`. To install the package in development mode, run `make develop` instead.
### Using `LearningSolver`
### Using `LearningSolver`
The main class provided by this package is `LearningSolver`, a learning-enhanced MIP solver which uses information from previously solved instances to accelerate the solution of new instances. The following example shows its basic usage:
The main class provided by this package is `LearningSolver`, a learning-enhanced MIP solver which uses information from previously solved instances to accelerate the solution of new instances. The following example shows its basic usage: