Skip to content

najaverzat/Coluna.jl

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Coluna.jl

Documentation CI codecov Project Status: WIP – Initial development is in progress, but there has not yet been a stable, usable release suitable for the public License: MPL 2.0

Coluna is a branch-and-price-and-cut framework written in Julia. The user introduces an original MIP that models his problem using the JuMP modeling language and our specific extension BlockDecomposition that offers a syntax to specify the problem decomposition. Then, Coluna reformulates the original MIP and optimizes the reformulation using the algorithms chosen by the user. Coluna aims to be very modular and tweakable so that any user can define the behavior of his customized branch-and-price-and-cut algorithm.

Installation

Coluna is a Julia Language package.

You can install Coluna through the Julia package manager. Open Julia's interactive session (REPL) and type:

   ] add Coluna

The documentation is under construction. You can browse the stable documentation for an introductory example or the dev documentation if you are working with the master version of Coluna.

Features

We aim to integrate to Coluna the state-of-the-art techniques used for branch-and-cut-and-price algorithms. We look for beta users as Coluna is under active development.

  • Stable No stable feature at the moment
  • Beta Features that work but still in development:
    • Branch-and-price-and-cut algorithm
    • Cuts generation
    • Column generation algorithm
    • Dantzig-Wolfe decomposition
    • Pricing callback
    • Robust cut callback
    • Stabilization
    • Strong-branching
  • Alpha Features that should work. Structural work is done but these features may have bugs and be not performant:
    • Benders decomposition
    • Benders algorithm
    • Non-robust cuts
    • Clean up of large scale formulations
  • Dev Features in development, foundations have been laid:
    • Nested/Recursive decomposition
    • Parallelisation of the Branch-and-Bound Tree Search
  • Future Future features:
    • Mixed Dantzig-Benders decomposition
    • Preprocessing specific to reformulated problems

Contributing

Contributions are welcomed !

If you encounter a bug or something unexpected happens while using Coluna, please open an issue via the GitHub issues tracker.

See the list of contributors who make Coluna possible.

Premium support

Using Coluna for your business ? Contact us to get tailored and qualified support.

Acknowledgments

The platform development has received an important support grant from the international scientific society Mathematical Optimization Society (MOS) and Région Nouvelle-Aquitaine.

Atoptima

University of Bordeaux

Inria

Related packages

About

Branch-and-Price-and-Cut in Julia

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Julia 100.0%