SkillAgentSearch skills...

Clp.jl

A Julia interface to the Coin-OR Linear Programming solver (CLP)

Install / Use

/learn @jump-dev/Clp.jl
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Clp.jl

Build Status codecov

Clp.jl is a wrapper for the COIN-OR Linear Programming solver.

The wrapper has two components:

Affiliation

This wrapper is maintained by the JuMP community and is not a COIN-OR project.

Getting help

If you need help, please ask a question on the JuMP community forum.

If you have a reproducible example of a bug, please open a GitHub issue.

License

Clp.jl is licensed under the MIT License.

The underlying solver, coin-or/Clp, is licensed under the Eclipse public license.

Installation

Install Clp using Pkg.add:

import Pkg
Pkg.add("Clp")

In addition to installing the Clp.jl package, this will also download and install the Clp binaries. You do not need to install Clp separately.

To use a custom binary, read the Custom solver binaries section of the JuMP documentation.

Use with JuMP

To use Clp with JuMP, use Clp.Optimizer:

using JuMP, Clp
model = Model(Clp.Optimizer)
set_attribute(model, "LogLevel", 1)
set_attribute(model, "Algorithm", 4)

MathOptInterface API

The Clp optimizer supports the following constraints and attributes.

List of supported objective functions:

List of supported variable types:

List of supported constraint types:

List of supported model attributes:

Options

Options are, unfortunately, not well documented.

The following options are likely to be the most useful:

| Parameter | Example | Explanation | | -------------------- | ------- | ------------------------------------------- | | PrimalTolerance | 1e-7 | Primal feasibility tolerance | | DualTolerance | 1e-7 | Dual feasibility tolerance | | DualObjectiveLimit | 1e308 | When using dual simplex (where the objective is monotonically changing), terminate when the objective exceeds this limit | | MaximumIterations | 2147483647 | Terminate after performing this number of simplex iterations | | MaximumSeconds | -1.0 | Terminate after this many seconds have passed. A negative value means no time limit | | LogLevel | 1 | Set to 1, 2, 3, or 4 for increasing output. Set to 0 to disable output | | PresolveType | 0 | Set to 1 to disable presolve | | SolveType | 5 | Solution method: dual simplex (0), primal simplex (1), sprint (2), barrier with crossover (3), barrier without crossover (4), automatic (5) | | InfeasibleReturn | 0 | Set to 1 to return as soon as the problem is found to be infeasible (by default, an infeasibility proof is computed as well) | | Scaling | 3 | 0 -off, 1 equilibrium, 2 geometric, 3 auto, 4 dynamic(later) | | Perturbation | 100 | switch on perturbation (50), automatic (100), don't try perturbing (102) |

C API

The C API can be accessed via Clp.Clp_XXX functions, where the names and arguments are identical to the C API.

View on GitHub
GitHub Stars53
CategoryDevelopment
Updated3d ago
Forks25

Languages

Julia

Security Score

85/100

Audited on Apr 2, 2026

No findings