Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

SUSPECT: MINLP special structure detector for Pyomo

Journal Article · · Optimization Letters
 [1];  [2];  [1]
  1. Imperial College London, London (United Kingdom). Dept. of Computing
  2. Sandia National Lab. (SNL-NM), Albuquerque, NM (United States)

We present SUSPECT, an open source toolkit that symbolically analyzes mixed-integer nonlinear optimization problems formulated using the Python algebraic modeling library Pyomo. We present the data structures and algorithms used to implement SUSPECT. SUSPECT works on a directed acyclic graph representation of the optimization problem to perform: bounds tightening, bound propagation, monotonicity detection, and convexity detection. We show how the tree-walking rules in SUSPECT balance the need for lightweight computation with effective special structure detection. SUSPECT can be used as a standalone tool or as a Python library to be integrated in other tools or solvers. Here, we highlight the easy extensibility of SUSPECT with several recent convexity detection tricks from the literature. We also report experimental results on the MINLPLib 2 dataset.

Research Organization:
Sandia National Lab. (SNL-NM), Albuquerque, NM (United States)
Sponsoring Organization:
USDOE Office of Fossil Energy (FE)
Grant/Contract Number:
AC04-94AL85000
OSTI ID:
1496978
Report Number(s):
SAND-2019-1376J; 672405
Journal Information:
Optimization Letters, Vol. 14; ISSN 1862-4472
Publisher:
Springer NatureCopyright Statement
Country of Publication:
United States
Language:
English
Citation Metrics:
Cited by: 3 works
Citation information provided by
Web of Science

References (33)

Branching and bounds tighteningtechniques for non-convex MINLP journal October 2009
A branch-and-cut method for 0-1 mixed convex programming journal December 1999
Convex Optimization book January 2004
Methods for identifying versioned and plagiarized documents journal January 2003
Using functional programming to recognize named structure in an optimization problem: Application to pooling journal May 2016
Convexity and Concavity Detection in Computational Graphs: Tree Walks for Convexity Assessment journal February 2010
The Common Optimization INterface for Operations Research: Promoting open-source software in the operations research community journal January 2003
A polyhedral branch-and-cut approach to global optimization journal May 2005
Pyomo — Optimization Modeling in Python book January 2017
What every computer scientist should know about floating-point arithmetic journal March 1991
Interval Analysis on Directed Acyclic Graphs for Global Optimization journal December 2005
Bound reduction using pairs of linear inequalities journal January 2012
Convex Optimization in Julia conference November 2014
Analyzing the computational impact of MIQCP solver components journal November 2012
Optimising heat exchanger network synthesis using convexity properties of the logarithmic mean temperature difference journal November 2016
A Framework for Globally Optimizing Mixed-Integer Signomial Programs journal September 2013
Interval propagation and search on directed acyclic graphs for numerical constraint solving journal December 2008
Global optimization advances in Mixed-Integer Nonlinear Programming, MINLP, and Constrained Derivative-Free Optimization, CDFO journal August 2016
OSiL: An instance language for optimization journal January 2008
Difference of convex solution of quadratically constrained optimization problems journal July 2003
GloMIQO: Global mixed-integer quadratic optimizer journal March 2012
Pyomo: modeling and solving mathematical programs in Python journal August 2011
LaGO: a (heuristic) Branch and Cut algorithm for nonconvex MINLPs journal December 2007
Global optimization of mixed-integer quadratically-constrained quadratic programs (MIQCQP) through piecewise-linear and edge-concave relaxations journal May 2012
ANTIGONE: Algorithms for coNTinuous / Integer Global Optimization of Nonlinear Equations journal March 2014
Three enhancements for optimization-based bound tightening journal June 2016
Python for Scientists and Engineers journal March 2011
Global optimization of mixed-integer nonlinear problems journal September 2000
DrAmpl: a meta solver for optimization problem analysis journal August 2009
Applying interval arithmetic to real, integer, and boolean constraints journal July 1997
Efficient Calculation of Bounds on Spectra of Hessian Matrices journal January 2008
Complete Interval Arithmetic and its Implementation on the Computer text January 2008
Convex Optimization in Julia preprint January 2014

Figures / Tables (24)