wiki:AnnualReport2017

COIN-OR 2017 Annual Report

This wiki page is the 2017 Annual Report of the COIN-OR Foundation.

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.

Introduction

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 now operate our own server located at Clemson. Today COIN-OR is the premier web site devoted to open-source software for the operations research community, home to 59 projects produced by 95 full members assisted by many more contributors, with a burgeoning community of users 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): Bob Fourer, Kevin Furman, Gus Gassmann, Bill Hart, Alan King, Andrew Mason, Giacomo Nannicini (Secretary), Ted Ralphs (TLC Rep), Matthew Saltzman (President).

Report from the President

In April, Bill Hart and I attended a week-long workshop sponsored by the Science Gateways Community Institute (SCGI). COIN-OR shares a number of propoerties with gateways, and we gained useful perspective on resources and tools that may prove useful in support of our initiative.

As noted elsewhere, major portions of the Web site have been ported to WordPress. Work continues on getting old pages ported and improving navigation for the new site. Thanks to Lou Hafer and Andrew Mason for deep dives into WordPress technology resulting in a sophisticated, dynamic project page.

As the Git source-code management tool has become more widely used and begun to supplant Subversion in popularity, and as GitHub has become a widely used resource for project management, we are looking at transitioning from the role we have played since the foundation was created. In the past, the foundation has focused on providing source code management using Subversion and project management using Trac and Mailman to support distributed developer and user communities for the projects we publish. Over time, and with new tools that help to make the code management transition mostly transparent, we plan to shift our project management functions to GitHub. Thanks to Ted and the TLC for their initiative undertaking this effort. The foundation is investigating the best path forward to achieve our initial objective of providing a peer-reviewed publication platform for open-source software for operations research. More news to follow as the plan develops.

Reports from SLB standing committees:

Finance (Alan King, Treasurer)

No report.

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

The Legal Affairs Committee has seen no action this year.

Membership (Lou Hafer, chair)

The membership management should transition to a different member since Lou is not actively involved at this point in time. Volunteers are welcome :-)

Web (Matt Saltzman, chair; Lou Hafer, Andrew Mason, Ted Ralphs)

The coin-or.org website completed its successful transition to WordPress. Software tools have been built (thanks, Matt) that help ensure updates made to projects (such as to their descriptions) are reflected in the project list at https://www.coin-or.org/projects/. We expect to continue to use WordPress for the coming years.

  • Technical Leadership Council (TLC): Ted Ralphs (chair), Haroldo Gambini Santos, John Siirola, Mike Steglich, Stefan Vigerske.
    1. Work continues on the effort to move all projects to Github. Several projects were moved on a trial basis recently.
    2. The fetch build script that obviates the need for SVN externals (allowing the move to git), seems to be working very well.
    3. Work on a new version of the build tools compatible with recent versions of the auto tools is still being actively developed. The new version will be simpler and will better support "rootless" projects, which will be the default when working with git.
    4. Automated test and build is also working very well.

Elections

Two SLB members (Robert Fourer, Alan King) and three TLC members (John Siirola, Mike Steglich, Stefan Vigerske) were up for re-election. All were re-elected with 100% of the votes received (9).

New Members

COIN-OR did not make any membership offers this year.

New Projects

There were no new projects this year (although there are some pending submissions).

News and Announcements

The 2017 COIN-OR Cup is awarded to John Chinneck, Mubashsharul Shafique, and Laurence Smith for their work on the CCGO Global Optimizer.

In a series of papers, this team developed an improved multi-start method that can be used to find solutions for nonconvex NLPs. The methodology is based on an approach called constraint consensus concentration that attempts to identify disjoint parts of the feasible region, and then launches a nonlinear solver for each of the disjoint regions. CCGO relies on a mixture of novel theoretical developments, heuristics, and algorithm engineering to create a software that effectively and reliably finds solutions to difficult nonconvex problems, comparing favorably to existing solvers. The implementation of CCGO relies on COIN-OR software.

One of the main goals of the COIN-OR Cup is to promote effective use of COIN-OR software that the community may not know about. The series of papers nominated by John, Mubashsharul and Laurence is a perfect example of that, and the prize committee is glad to announce them as this year’s Cup winners.

Committee members: Andy Conn, Giacomo Nannicini, Thomas Wortmann.

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.
  • 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++.
  • AIMMSlinks: AIMMS/COIN-OR Links, links between the modeling language AIMMS and solvers that are hosted at COIN-OR.
  • BCP: Branch-Cut-Price Framework, a framework for constructing parallel branch-cut-price algorithms for mixed-integer linear programs.
  • Bonmin: Basic Open-source Nonlinear Mixed INteger programming, is an open-source C++ code for solving general mixed-integer nonlinear programming problems.
  • BuildTools: COIN-OR developer tools and documentation, tools for managing configuration and compilation of COIN-OR projects under Linux, Unix, and Cygwin.
  • Cbc: COIN-OR Branch and Cut, an open-source mixed-integer linear programming library and stand-alone solver.
  • Cgc: COIN-OR Graph Classes, a collection of network representations and algorithms.
  • Cgl: Cut Generation Library, a collection of algorithms to generate cutting planes.
  • CHiPPS: COIN-OR Open Parallel Search Framework, a framework for implementing parallel algorithms based on tree search.
  • Clp: COIN-OR LP, a linear programming library and stand-alone solver with simplex and barrier algorithms.
  • CMPL: Coliop/Coin Mathematical Programming Language, a modelling language and integrated development environment for linear optimisation.
  • CoinBazaar: The COIN-OR Bazaar, small examples and extensions of COIN-OR projects.
  • CoinBinary: Pre-compiled binary distributions of COIN-OR projects. Also contains the repository for CoinAll, an interoperable set of many of the COIN libraries conveniently collected in one place.
  • CoinEasy: Provides guidelines for new users to COIN-OR to get up and running easily.
  • CoinMP: A C API interface to COIN-OR LP, COIN-OR Branch and Cut, and the Cut Generation Library.
  • CoinUtils: The COIN-OR utilities library, utilities, data structures, and linear algebra support for COIN projects.
  • Couenne: Convex Over and Under ENvelopes for Nonlinear Estimation, an exact solver for non-convex MINLP problems.
  • CppAD: A tool that computes derivatives of C++ algorithms.
  • Crème: An implementation of the randomized thermal relaxation method to find a feasible solution fo the Maximum Feasible Subsystem problem.
  • CSDP: A library for semidefinite programming.
  • CyLP: A Python interface to Cbc and Clp.
  • DFO: Derivative-Free Optimization, a package for solving general nonlinear optimization problems when derivatives are unavailable.
  • DIP: Decomposition in Integer Programming, a framework for implementing a variety of decomposition-based branch-and-bound algorithms for solving mixed-integer linear programs.
  • Djinni: A templatized C++ framework with Python bindings for heuristic search.
  • DyLP: Dynamic Linear Programming, an implementation of the dynamic simplex algorithm.
  • filterSD: Subroutines for nonlinear optimization, a library for nonlinear optimization written in Fortran.
  • FLOPC++: An algebraic modeling language embedded in C++.
  • GAMSlinks: Links between GAMS and open source solvers.
  • GiMPy: Graph Methods in Python, Python implementations of a variety of graph algorithms with visualisation.
  • GrUMPy: Graphics for Understanding Mathematical Programming, a Python library for visualising various aspects of mathematical programming.
  • Ipopt: An interior point algorithm for general large-scale nonlinear optimization.
  • jMarkov: A tool for Markov chain modeling including finite Markov chains, quasi-birth-and-death processes, phase-type distributions, and Markov decision processes.
  • Java Operations Research Library (jORLib): jORLib is a Java library that provides algorithmic implementations and frameworks for optimization problems in the area of Operations Research.
  • LaGO: Lagrangian Global Optimizer, global optimization of nonconvex mixed-integer programs.
  • 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.
  • MC++: A toolkit for bounding factorable functions, provides methods for computing bounds on a factorable function, in the form of convex/concave relaxations, Taylor models, and spectral bounds.
  • METSlib: An object oriented metaheuristics optimization framework and toolkit in C++.
  • MOCHA: Matroid Optimization: Combinatorial Heuristics and Algorithms, heuristics and algorithms for multicriteria matroid optimization.
  • NLPAPI: Non-Linear Programming Application Programming Interface, subroutine interface for defining and solving non-linear programming problems.
  • oBB: An implementation of an algorithm for the parallel global optimization of functions with Lipchitz continuous gradient or Hessian
  • OBOE: Oracle Based Optimization Engine, optimization of convex problems with user-supplied methods delivering key first order information.
  • OptiML: Optimization for Machine Learning, provides interior point, active set method, and parametric solvers for support vector machines and a solver for the sparse inverse covariance problem.
  • OS: Optimization Services, standards for representing optimization instances, results, solver options, and communication between clients and solvers in a distributed environment using Web Services.
  • OSI: Open Solver Interface, a uniform subroutine interface for callable solver libraries.
  • OTS: Open Tabu Search, a Java framework for creating tabu search algorithms.
  • PAVER: Tools to simplify the task of performance data comparison and visualization.
  • PFunc: Parallel Functions, a lightweight and portable library that provides C and C++ APIs to express task parallelism.
  • PuLP: A Python library for modeling linear and integer programs.
  • Pyomo: Pyomo is a Python-based open-source software package that supports a diverse set of optimization capabilities for formulating and analyzing optimization models.
  • QAPsolver: Solver for Quadratic Assignment Problem in Fortran.
  • qpOASES: A robust implementation of the online active set strategy for quadratic programming problems.
  • RBFOpt: A Python library for black-box (derivative-free) optimization using only function values.
  • Rehearse: An algebraic modeling library in C++ for linear optimization solvers.
  • ROSE: Reformulation-Optimisation Software Engine, tools for automating symbolic reformulation of mathematical programming problems.
  • SMI: Stochastic Modeling Interface, an interface for optimization under uncertainty.
  • SYMPHONY: A callable library for solving mixed-integer linear programming problems.
  • TestTools: Python scripts to automatically download, configure, build, test, install, build binaries, and distribute binaries.
  • VOL: Volume Algorithm, a generalization of the subgradient method which produces approximate primal solutions as well as dual solutions.
  • VRPH: VRP Heuristics, a library of heuristics for generating solutions to variants of the vehicle routing problem.
  • yaposib: Yet Another Python OSI Binding, a Python binding for OSI.

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 months ago Last modified on Mar 18, 2018 12:59:35 PM

Attachments (1)

Download all attachments as: .zip