COIN-OR 2012 Annual Report

This wiki page will be used to create a hard-copy 2012 Annual Report to be distributed at the INFORMS Phoenix Meeting in November 2012, and will remain available here as soft-copy. The annual report serves a couple of purposes. It provides a story to tell potential contributors, corporate partners, code contributors and users. Please add any information you'd like to share regarding your involvement in COIN-OR.


COIN-OR (COmputational INfrastructure for Operations Research) was first announced at ISMP 2000 as an IBM initiative, hosted by IBM and seeded with seven projects produced by a handful of developers at IBM and collaborating academic institutions. In 2004 we became an independent organization, managed by the non-profit educational COIN-OR Foundation and hosted by INFORMS. In 2011 we outgrew our INFORMS hosting and are now moving to a commercial hosting facility. Today COIN-OR is the premier web site devoted to open-source software for the operations research community, home to 48 projects produced by 75 full members assisted by many more contributors, with a burgeoning community of users, associate members (86 at last count) and developers comprised of more than 2,000 subscriptions from more than 1,000 unique e-mail addresses. We're proud of what we have become. More, we're proud of what we have produced as a community.

COIN-OR encourages new project contributions by providing an extensive set of tools and infrastructure support for collaborative project development. COIN-OR will continue to work with manufacturers of commercial software to develop interfaces to their products. With the help of a worldwide community of developers, we will continue to offer open-source software that meets the highest standards for state-of-the-art algorithms and industrial strength robustness and efficiency.

Reports from the SLB & TLC

  • Strategic Leadership Board (SLB): Kevin Furman, Lou Hafer (Secretary), William Hart, Randy Kiefer (Treasurer), Alan King, Ted Ralphs (TLC Rep), Paul Rubin, Matthew Saltzman (President).

Report from the President

This year, COIN-OR is engaged in a major upgrade of our Web infrastructure. Upon the creation of the COIN-OR Foundation, COIN's Web infrastructure was migrated from its original host, IBM's DeveloperWorks, to a server in the INFORMS business office. That server was adequate in its day, but with 48 projects and growing, and with the strong growth in our community of developers and users, we have outstripped INFORMS's ability to host us in house. So we are in the process of moving. The COIN-OR Foundation has provided a grant to Clemson University to provide us with a new server and housing infrastructure.

The new server is a Dell PowerEdge R650 with eight hyperthreaded cores, 12GB of RAM and 1TB of RAID-1 disk, running Red Hat Enterprise Server 6.1. It is housed at Clemson's Information Technology Center, which provides rack space, backups, cooling, redundant power, and Internet access including commodity internet, Internet2, and National LambdaRail connections. This arrangement should mitigate all of the performance issues associated with the current server, and makes possible support for new services to help our developers and users make better use of COIN-OR.

We are in the process of migrating services off of the INFORMS server and onto the Clemson server with as minimal disruption as possible. The new server is already supporting mail, mailing lists, and static Web pages. We will shortly be moving the Subversion repository, and the Trac pages will follow.

Reports from each SLB standing committee, which would be:

Finance (Randy Kiefer, chair)

The balance in the checkbook as of September 30, 2011 was $21,244.24. This is prior to the expenses for the INFORMS meeting.

Legal Affairs (Ted Ralphs, chair; Lou Hafer; Matt Saltzman)

To comply with the safe harbour provisions of the Digital Millenium Copyright Act (DMCA), the Foundation has filed the necessary paperwork to register a takedown agent.
The Eclipse Public License (EPL) is now the preferred license for COIN projects. Projects relicensed under the EPL include AIMMSlinks, CBC, CGL, CLP, CoinUtils, Couenne, DIP, DyLP, Ipopt, MOCHA, OSI, PFunc, ROSE, SYMPHONY, and Vol. The Foundation encourages Project Managers to license their project under the EPL if they have no strong preference for another license.

Membership (Lou Hafer, chair)

Due to other commitments, the Membership Committee has not yet issued the usual Fall call for membership nominations. Don't wait for the Membership Committee to find time to notice someone's good work! Anyone can nominate an individual for full membership. Check the Full Members list for instructions.

Outreach (Alan King, chair)

Web (Matt Saltzman, Bill Hart)

  • Technical Leadership Council (TLC): Matt Galati, William Hart, Leo Lopes, Kipp Martin, Ted Ralphs (chair), John Siirola, Stefan Vigerske

Report from the Technical Leadership Council

The TLC's focus this year continued to be primarily on ease of use and maintenance issues, such as

  • The provision of installers for major OSs (Windows, Linux, OSX), as well as packages for the most popular Linux distributions
  • Upgrades to the build system, including support for the latest version of the auto tools.
  • Major overhaul of the MSVC++ build harness to include the use of property sheets for maintaining consistency in project settings.
  • Better automated daily build and test capabilities through the use of COIN-ORs new Jenkins server.


  • Nominated for 2012-2015 term on SLB: Kevin Furman, Lou Hafer

  • Nominated for 2012-2015 terms on TLC: Haroldo Santos
  • Results to be announced at the COIN-OR Users Meeting, INFORMS Phoenix (Monday October 15th, 12:15, Center-West 212B). Members present at the meeting who wish to vote and have not done so by email may vote at the start of the meeting.

News and Announcements

Add your item in the list below (sorted in something vaguely approximating the order of the Projects list). Shameless self-promotion is strongly encouraged, whether you're a user of COIN-OR software or a developer of COIN-OR software.

  • Coopr had two major releases (3.1, 3.2) this year. It continues to have a strong download record, and is being used in a wide variety of applications. Also, the book Pyomo - Optimization Modeling in Python by William E. Hart, Carl Laird, Jean-Paul Watson and David L. Woodruff was published by Springer in 2012.
  • The BAK project provides methods of visualization and prediction for branch and bound algorithms.
  • The GiMPy and GrUMPy projects were introduced into CoinBazaar. They provide a graph class in Python, along with visualizations of a wide range of graph algorithms, including tree search (branch and bound). The latter methods are derived from those of BAK.
  • The CMPL team released two major releases (1.6 and 1.7) this year.

Some new features which might be interesting:

Extended solver support: CMPL is able to execute Cbc, Clp and Symphony via the OS binary, Glpk, Scip, Gurobi and Cplex directly to solve a model. The default solver for LPs is Clp and for MIPs Cbc.

CMPL header: A CMPL header is intended to define CMPL options, solver options and display options for the specific CMPL model. An additional intention of the CMPL header is to specify external data files which are to be connected to the CMPL model.

cmplData: A cmplData file is a plain text file that contains the definition of parameters, sets with their values in a specific syntax. The parameters and sets can be read into a CMPL model by using the CMPL header argument %data.

Indices and sets for n-tuples with n>1: An index is always an n-tuple, where n is the count of dimensions of an array. Since version 1.7.0 is it possible to define and use sets for n-tuples with n>1.

  • The DIP project added major new functionality that allows it to function as a stand-alone decomposition-based MILP solver.

Project List

All projects can be reached from the COIN-OR projects page.

  • ABACUS: A Branch-And-CUt System, an LP-based branch-and-cut framework.
    • Michael Juenger
  • ADOL-C: Automatic Differentiation by OverLoading in C++, facilitates the evaluation of first and higher derivatives of vector functions that are defined by computer programs written in C or C++.
    • Andrea Walther, andrea dot walther at uni-paderborn dot de
  • AIMMSlinks: AIMMS/COIN-OR Links, links between the modeling language AIMMS and solvers that are hosted at COIN-OR.
    • Marcel Hunting, marcel dot hunting at aimms dot com
  • BCP: Branch-Cut-Price Framework, is a parallel branch-cut-price framework.
    • Laszlo Ladanyi, ladanyi at us dot ibm dot com
  • Bonmin: Basic Open-source Nonlinear Mixed INteger programming, is an experimental C++ code for solving general mixed-integer nonlinear programming problems.
    • Pierre Bonami, pierre.bonami at lif dot univ-mrs dot fr
  • BuildTools: build and documentation support for COIN-OR projects.
    • Andreas Waechter, andreasw at watson dot ibm dot com
  • Cbc: COIN-OR Branch and Cut, a library for creating branch and cut algorithms; includes a standalone branch-and-cut executable.
    • Ted Ralphs, ted at lehigh dot edu
  • Cgc: COIN-OR Graph Classes, a collection of network representations and algorithms.
    • Phillip Walton, hpwalton at
  • Cgl: Cut Generation Library, a collection of algorithms to generate cutting planes.
    • Robin Lougee, rlougee at us dot ibm dot com
  • CHiPPS: COIN-OR Open Parallel Search Framework.
    • Ted Ralphs, tkralphs at lehigh dot edu
  • Clp: COIN-OR LP, a linear program solver.
    • Julian Hall, jajhall at ed dot ac dot uk
  • CMPL: Coliop/Coin Mathematical Programming Language.
    • Mike Steglich mike.steglich at th-wildau dot de
  • CoinBazaar: The COIN-OR Bazaar, small examples and extensions of COIN-OR projects.
    • William Hart, wehart at sandia dot gov
  • CoinBinary: pre-compiled binary distributions of COIN-OR projects.
    • Ted Ralphs, ted at lehigh dot edu
    • The repository for CoinAll, an interoperable set of many of the COIN libraries conveniently collected in one place, is housed in the CoinBinary project.
  • CoinEasy: Provides guidelines for new users to COIN-OR to get up and running easily.
    • Kipp Martin, kmartin at chicagobooth dot edu
  • CoinMP: a Windows DLL solver with a C-API interface to COIN-OR LP, COIN-OR Branch and Cut, and the Cut Generation Library.
    • Bjarni Kristjansson, bjarni at maximalsoftware dot com
  • CoinUtils: COIN-OR utilities library.
    • Laszlo Ladanyi, ladanyi at us dot ibm dot com
  • CoinWeb: COIN-OR Web Services, COIN-OR Web pages, Subversion, Trac, etc.
    • Matthew Saltzman, mjs at clemson dot edu
  • Coopr: COmmon Optimization Python Repository, integrates a variety of Python optimization-related packages.
    • William Hart, wehart at sandia dot gov
  • Couenne: an exact solver for non-convex MINLP problems.
    • Pietro Belotti, pbelott at clemson dot edu
  • CppAD: a tool that computes derivatives of C++ algorithms.
    • Brad Bell, bradbell at seanet dot com
  • CSDP: library for semidefinite programming.
    • Brian Borchers borchers at nmt dot edu
  • DFO: Derivative-Free Optimization, a package for solving general nonlinear optimization problems when derivatives are unavailable.
    • Katya Scheinberg
  • DIP: Decomposition in Integer Programming, a framework for implementing a variety of decomposition-based branch-and-bound algorithms for solving mixed-integer linear programs.
    • Ted Ralphs, ted at lehigh dot edu
  • Djinni: a templatized C++ framework with Python bindings for heuristic search.
    • Justin C. Goodson, goodson at slu dot edu
  • DyLP: an implementation of the dynamic simplex algorithm.
    • Lou Hafer, lou at cs dot sfu dot ca
  • filterSD: subroutines for nonlinear optimization, a library for nonlinear optimization written in Fortran.
    • Frank E. Curtis, frank.e.curtis at lehigh dot edu
  • FLOPC++: an algebraic modeling language embedded in C++.
    • Tim Hultberg, tim dot hultberg at eumetsat dot int
  • GAMSlinks: links between GAMS and open source solvers.
    • Stefan Vigerske
  • IPOPT: an interior point algorithm for general large-scale nonlinear optimization.
    • Andreas Waechter, waechter at iems dot northwestern dot edu and Stefan Vigerske
  • KSP: K Shortest Paths, algorithms for K shortest paths.
    • Mary Helander, helandm at us dot ibm dot com
  • LaGO: Lagrangian Global Optimizer, global optimization of nonconvex mixed-integer programs.
    • Stefan Vigerske
  • LEMON: Library of Efficient Models and Optimization in Networks, a C++ template library aimed at combinatorial optimization tasks, especially those working with graphs and networks.
    • Alpar Juttner, alpar at cs dot elte dot hu
  • METSlib: an object oriented metaheuristics optimization framework and toolkit in C++.
    • Mirko Maischberger, mirko dot maischberger at gmail dot com
  • MOCHA: Matroid Optimization: Combinatorial Heuristics and Algorithms, heuristics and algorithms for multicriteria matroid optimization.
    • David Haws, dchaws+MOCHA at gmail dot com
  • NLPAPI: Non-Linear Program Application Programming Interface, subroutine interface for defining and solving non-linear programming problems.
    • Michael Henderson
  • OBOE: Oracle Based Optimization Engine, optimization of convex problems with user-supplied methods delivering key first order information.
    • Nidhi Sawhney, nsawhney at gmail dot com
  • OptiML: Optimization for Machine Learning, interior point, active set method and parametric solvers for support vector machines, solver for the sparse inverse covariance problem.
    • Katya Scheinberg
  • OS: Optimization Services, standards for representing optimization instances, results, solver options, and communication between clients and solvers in a distributed environment using Web Services.
    • Kipp Martin, kipp.martin at chicagogsb dot edu, Horand Gassmann and Jun Ma
  • OSI: Open Solver Interface, a uniform subroutine interface for callable solver libraries.
    • Matthew Saltzman, mjs at clemson dot edu and Lou Hafer, lou at cs dot sfu dot ca
  • OTS: Open Tabu Search, a Java framework for creating tabu search algorithms.
    • Rob Harder
  • PFunc: Parallel Functions, a lightweight and portable library that provides C and C++ APIs to express task parallelism.
    • Prabhanjan Kambadur, pkambadu at osl dot iu dot edu
  • PuLP: Python library for modeling linear and integer programs.
    • Stuart Mitchell, s.mitchell at auckland dot ac dot nz
  • ROSE: Reformulation/Optimisation Software Engine, tools for automating mathematical programming reformulation.
    • David Savourey, savourey at lix dot polytechnique dot fr
  • SMI: Stochastic Modeling Interface, an interface for optimization under uncertainty.
    • Alan King, kingaj at us dot ibm dot com
  • SYMPHONY: a callable library for solving mixed-integer linear programs.
    • Ted Ralphs, tkralphs at lehigh dot edu
  • TestTools: Python scripts to automatically download, configure, build, test, install, build binaries, and distribute binaries.
    • JP Fasano
  • VOL: Volume Algorithm, a generalization of the subgradient method which produces approximate primal solutions as well as dual solutions.
    • Francisco Barahona, barahon at us dot ibm dot com
  • VRPH: VRP Heuristics, a library of heuristics for generating solutions to variants of the vehicle routing problem.
    • Chris Groer, cgroer at gmail dot com

The projects above reflect the interests of the individuals who have contributed to date. The volunteers running COIN-OR and its projects continually strive to improve overall quality, documentation, ease of use, and robustness. The level of success in achieving these goals depends on the support received from the community. New projects that reflect the broad interests and needs of the OR community, such as resources for visualization, data mining, simulation, constraint programming, statistics, forecasting, spreadsheets, and more, are welcome.

Last modified 9 years ago Last modified on Oct 18, 2012 9:20:05 AM