All Projects → atoptima → Coluna.jl

atoptima / Coluna.jl

Licence: MPL-2.0 license
Branch-and-Price-and-Cut in Julia

Programming Languages

julia
2034 projects

Projects that are alternatives of or similar to Coluna.jl

vrpy
A python framework for solving the VRP and its variants with column generation.
Stars: ✭ 94 (-26.56%)
Mutual labels:  optimization, column-generation
MatrixOptim.jl
Data-Driven Decision Making under Uncertainty in Matrix
Stars: ✭ 20 (-84.37%)
Mutual labels:  mixed-integer-programming, dantzig-wolfe-decomposition
dopt
A numerical optimisation and deep learning framework for D.
Stars: ✭ 28 (-78.12%)
Mutual labels:  optimization
tensorflow-riemopt
A library for optimization on Riemannian manifolds
Stars: ✭ 72 (-43.75%)
Mutual labels:  optimization
good lp
Linear Programming for Rust, with an user-friendly API. This crate allows modeling LP problems, and let's you solve them with various solvers.
Stars: ✭ 77 (-39.84%)
Mutual labels:  optimization
profiling
Non-discriminatory profiling of Ruby code leveraging the ruby-prof gem
Stars: ✭ 12 (-90.62%)
Mutual labels:  optimization
pareto
Spatial Containers, Pareto Fronts, and Pareto Archives
Stars: ✭ 69 (-46.09%)
Mutual labels:  optimization
cplex-example
Solving a TSP with the CPLEX C++ API.
Stars: ✭ 40 (-68.75%)
Mutual labels:  optimization
PyOptSamples
Optimization sample codes on Python
Stars: ✭ 20 (-84.37%)
Mutual labels:  optimization
autodiff
A .NET library that provides fast, accurate and automatic differentiation (computes derivative / gradient) of mathematical functions.
Stars: ✭ 69 (-46.09%)
Mutual labels:  optimization
REopt Lite API
The model for the REopt API, which is used as the back-end for the REopt Webtool (reopt.nrel.gov/tool), and can be accessed directly via the NREL Developer Network (https://developer.nrel.gov/docs/energy-optimization/reopt/v1)
Stars: ✭ 53 (-58.59%)
Mutual labels:  optimization
Windows11-Optimization
Community repository, to improve security and performance of Windows 10 and windows 11 with tweaks, commands, scripts, registry keys, configuration, tutorials and more
Stars: ✭ 17 (-86.72%)
Mutual labels:  optimization
studio
GAMS Studio
Stars: ✭ 25 (-80.47%)
Mutual labels:  optimization
NumDiff
Modern Fortran Numerical Differentiation Library
Stars: ✭ 48 (-62.5%)
Mutual labels:  optimization
zoofs
zoofs is a python library for performing feature selection using a variety of nature-inspired wrapper algorithms. The algorithms range from swarm-intelligence to physics-based to Evolutionary. It's easy to use , flexible and powerful tool to reduce your feature size.
Stars: ✭ 142 (+10.94%)
Mutual labels:  optimization
Fake-Interior-Shader-for-GodotEngine
Interior Mapping shader for the Godot Game Engine 3.x that works with both GLES3 and GLES2.
Stars: ✭ 40 (-68.75%)
Mutual labels:  optimization
snl-quest
An open source, Python-based software application suite for energy storage simulation and analysis developed by Sandia National Laboratories.
Stars: ✭ 82 (-35.94%)
Mutual labels:  optimization
optimizer-api
Unified API for multiple optimizer engines
Stars: ✭ 26 (-79.69%)
Mutual labels:  optimization
yask
YASK--Yet Another Stencil Kit: a domain-specific language and framework to create high-performance stencil code for implementing finite-difference methods and similar applications.
Stars: ✭ 81 (-36.72%)
Mutual labels:  optimization
Teg
A differentiable programming language with an integration primitive that soundly handles interactions among the derivative, integral, and discontinuities.
Stars: ✭ 25 (-80.47%)
Mutual labels:  optimization

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 you may have some bugs:
    • 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 it may be not performant:
    • Benders decomposition
    • Branch-and-price-and-cut algorithm
    • 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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].