arrow
Return

Solving the pooling problem at scale with extensible solver GALINI

delete2022-03-01
delete3
delete
OA
AI
F
Francesco Ceccon
R
Ruth Misener *
DOI:10.1016/j.compchemeng.2022.107660delete
deleteOriginal
deleteShare
deleteSave
View PDF
Abstract

Abstract

En 中文
This paper presents a Python library to model pooling problems, a class of network flow problems with many engineering applications. The library automatically generates a mixed-integer quadratically-constrained quadratic optimization problem from a given network structure. The library additionally uses the network structure to build 1) a convex linear relaxation of the non-convex quadratic program and 2) a mixed-integer linear restriction of the problem. We integrate the pooling network library with GALINI, an open-source extensible global solver for quadratic optimization. We demonstrate GALINI's extensible characteristics by using the pooling library to develop two GALINI plug-ins: 1) a cut generator plug-in that adds valid inequalities in the GALINI cut loop and 2) a primal heuristic plug-in that uses the mixed-integer linear restriction. We test GALINI on large scale pooling problems and show that, thanks to the good upper bound provided by the mixed-integer linear restriction and the good lower bounds provided by the convex relaxation, we obtain optimality gaps that are competitive with Gurobi 9.1 on the largest problem instances. (c) 2022 Elsevier Ltd. All rights reserved.
Keywords:
Pooling problem
Mixed-integer quadratically-constrained
quadratic optimization
Deterministic global optimization
Pyomo
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

C
Computers and Chemical Engineering
IF:
3.9
Papers:
8.1K
Citations:
1.7W

Organization

I
Imperial College London
Scholars:
8.3W
Papers: 7.3W
Citations: 11.1W