Table of Contents
Fetching ...

Logic-Based Discrete-Steepest Descent: A Solution Method for Process Synthesis Generalized Disjunctive Programs

Daniel Ovalle, David A. Liñán, Albert Lee, Jorge M. Gómez, Luis Ricardez-Sandoval, Ignacio E. Grossmann, David E. Bernal Neira

TL;DR

This paper develops the Logic-Based Discrete-Steepest Descent Algorithm (LD-SDA) for Generalized Disjunctive Programming (GDP) problems that feature ordered Boolean decisions. LD-SDA introduces an external-variable reformulation, recasts ordered Boolean choices as discrete external variables, and uses a bi-level decomposition where an upper-level discrete-steepest-descent search selects external configurations while a lower-level subproblem solves the reduced GDP/MINLP/NLP for that configuration. The authors provide a generalized reformulation framework, a set of algorithmic enhancements (including domain checks, feasibility tightening via FBBT, and a re-initialization strategy), and an open-source Python implementation built on Pyomo.GDP. Through four process-synthesis case studies (CSTR series, binary distillation, catalytic distillation, and chemical batch design), LD-SDA demonstrates faster convergence and higher-quality solutions compared with conventional GDP and MINLP approaches, especially as problem size grows. The work highlights the practical impact of exploiting ordered structure in GDP, offering scalable, structure-aware optimization for complex chemical process designs and setting the stage for broader use in GDPOpt and parallel NLP solving.

Abstract

The optimization of chemical processes is challenging due to the nonlinearities arising from process physics and discrete design decisions. In particular, optimal synthesis and design of chemical processes can be posed as a Generalized Disjunctive Programming (GDP) superstructure problem. Various solution methods are available to address these problems, such as reformulating them as Mixed-Integer Nonlinear Programming (MINLP) problems; nevertheless, algorithms explicitly designed to solve the GDP problem and potentially leverage its structure remain scarce. This paper presents the Logic-based Discrete-Steepest Descent Algorithm (LD-SDA) as a solution method for GDP problems involving ordered Boolean variables. The LD-SDA reformulates these ordered Boolean variables into integer decisions called external variables. The LD-SDA solves the reformulated GDP problem using a two-level decomposition approach where the upper-level subproblem determines external variable configurations. Subsequently, the remaining continuous and discrete variables are solved as a subproblem only involving those constraints relevant to the given external variable arrangement, effectively taking advantage of the structure of the GDP problem. The advantages of LD-SDA are illustrated through a batch processing case study, a reactor superstructure, a distillation column, and a catalytic distillation column, and its open-source implementation is available online. The results show convergence efficiency and solution quality improvements compared to conventional GDP and MINLP solvers.

Logic-Based Discrete-Steepest Descent: A Solution Method for Process Synthesis Generalized Disjunctive Programs

TL;DR

This paper develops the Logic-Based Discrete-Steepest Descent Algorithm (LD-SDA) for Generalized Disjunctive Programming (GDP) problems that feature ordered Boolean decisions. LD-SDA introduces an external-variable reformulation, recasts ordered Boolean choices as discrete external variables, and uses a bi-level decomposition where an upper-level discrete-steepest-descent search selects external configurations while a lower-level subproblem solves the reduced GDP/MINLP/NLP for that configuration. The authors provide a generalized reformulation framework, a set of algorithmic enhancements (including domain checks, feasibility tightening via FBBT, and a re-initialization strategy), and an open-source Python implementation built on Pyomo.GDP. Through four process-synthesis case studies (CSTR series, binary distillation, catalytic distillation, and chemical batch design), LD-SDA demonstrates faster convergence and higher-quality solutions compared with conventional GDP and MINLP approaches, especially as problem size grows. The work highlights the practical impact of exploiting ordered structure in GDP, offering scalable, structure-aware optimization for complex chemical process designs and setting the stage for broader use in GDPOpt and parallel NLP solving.

Abstract

The optimization of chemical processes is challenging due to the nonlinearities arising from process physics and discrete design decisions. In particular, optimal synthesis and design of chemical processes can be posed as a Generalized Disjunctive Programming (GDP) superstructure problem. Various solution methods are available to address these problems, such as reformulating them as Mixed-Integer Nonlinear Programming (MINLP) problems; nevertheless, algorithms explicitly designed to solve the GDP problem and potentially leverage its structure remain scarce. This paper presents the Logic-based Discrete-Steepest Descent Algorithm (LD-SDA) as a solution method for GDP problems involving ordered Boolean variables. The LD-SDA reformulates these ordered Boolean variables into integer decisions called external variables. The LD-SDA solves the reformulated GDP problem using a two-level decomposition approach where the upper-level subproblem determines external variable configurations. Subsequently, the remaining continuous and discrete variables are solved as a subproblem only involving those constraints relevant to the given external variable arrangement, effectively taking advantage of the structure of the GDP problem. The advantages of LD-SDA are illustrated through a batch processing case study, a reactor superstructure, a distillation column, and a catalytic distillation column, and its open-source implementation is available online. The results show convergence efficiency and solution quality improvements compared to conventional GDP and MINLP solvers.
Paper Structure (36 sections, 77 equations, 14 figures, 2 tables, 3 algorithms)

This paper contains 36 sections, 77 equations, 14 figures, 2 tables, 3 algorithms.

Figures (14)

  • Figure 1: Visualization of the two neighborhoods $N_\infty$ and $N_2$ on a two-variable discrete lattice, centered at the point $\mathbf{z_E}=(2,2)$. The $\infty$-neighborhood allows movement to all points within unitary $\ell_\infty$ distance, offering a more flexible search space, while the $2$-neighborhood restricts movement to orthogonal directions, providing a more constrained search. This illustrates how the choice of neighborhood affects the directions explored during optimization.
  • Figure 2: Visualization of the external variable reformulation for an illustrative multi-product batch scheduling example. The figure explicitly displays the Boolean variables for starting time ($\mathbf{YS}$) and production order ($\mathbf{YO}_c$). Production begins on the second day, represented by $YS_2=True$ in black. The production order is B, A, and C, indicated by $YO_{1B}=True$ (purple), $YO_{2A}=True$ (green), and $YO_{3C}=True$ (red). The maintenance variable $YM$ is not reformulated as it does not meet the necessary criteria for this transformation.
  • Figure 3: Visualization of the LD-SDA algorithm using $N_\infty$ in a two-variable discrete lattice example. In this example we initialize the algorithm begins at the initial point $(2,2)$. A Neighborhood Search within the neighborhood $N_\infty({(2,2)})$, represented by blue arrows, identifies the best neighbor as $(3,3)$, resulting in the steepest descent direction $\mathbf{d^*}={(1,1)}$. A Line Search, depicted with black arrows, follows this direction until reaching point $(5,5)$, where it stops given that $f_{sub}({(5,5)}) < f_{sub}({(5,5)}+\mathbf{d^*})$. A second Neighborhood Search in $N_\infty({(5,5)})$, shown with red arrows, determines $(5,5)$ is integrally local, terminating the algorithm.
  • Figure 4: Visualization of a superstructure consisting of $R$ potential continuously stirred reactor tanks (CSTRs). The reactors are numbered starting from the product stream and counted in reverse. At each position, a reactor can either be present or replaced by a bypass. The configuration must be continuous, meaning no bypasses are allowed between two active reactors.
  • Figure 5: Visualization of a potential configuration for the CSTR superstructure with $R=6$. The figure explicitly displays the Boolean variables for the position of the feed ($\mathbf{YF}$) and recycle ($\mathbf{YR}$) streams. In this configuration, the feed enters at the fourth reactor, meaning $YF_4=True$, indicating the presence of four reactors in the superstructure. The recycle stream is positioned before the second reactor, meaning $YR_2=True$ .
  • ...and 9 more figures