(311e) Decomposition and Algorithmic Approaches for Solving Large-Scale Process Family Design Problems | AIChE

(311e) Decomposition and Algorithmic Approaches for Solving Large-Scale Process Family Design Problems

Authors 

Stinchfield, G. - Presenter, Carnegie Mellon University
Laird, C., NA
Watson, J. P., Sandia National Laboratories
Bynum, M., Sandia National Laboratories
Many process systems, such as water desalination and carbon capture, are essential for combatting long-term effects of climate change. However, the impact these systems can have directly relates to the number of times they can be designed, manufactured, and deployed in a timely manner. Mass deployment of a process system is challenging because each system deployment likely has different fixed requirements (e.g., environmental conditions, customer demands, etc.) that result in modifications to the design. Traditional design methods focus on designing a single instance of a system at a time; this quickly becomes inefficient when designing and deploying multiple instances across a variety of deployment sites. For these reasons, we have developed an alternative design approach called “process family design”. Rather than considering each deployment of the system as an individual task, we design multiple processes simultaneously as a “family” using a common platform of shared unit designs. In previous work, we presented multiple optimization formulations for representing and solving this highly combinatorial problem. In this work, we focus on solving largescale process family design problems by developing decomposition approaches.

The process family design approach was inspired by the product family design literature. Simpson et al. (2014) defines a product family to be “a set of products that share one or more common ‘element(s)’ yet target a variety of different market segments”, leading to significant savings and project timeline reductions. There are two key decision elements to product family design: (1) fully specifying a system design for each product variant included in the product family and (2) design and use of several standardized designs for common elements within the variant design (stored in the product platform). This approach generates savings across the product family due to manufacturing standardization while maintaining a level of customization for each individual variant. We map this approach to process systems engineering by viewing the “product” variants as “process” variants and the common “elements” as common “unit modules”. For a process system, a process family is built for a set of defined process variants we aim to design, manufacture, and deploy. A process variant defines a set of fixed requirements that the variant-specific design of the process system must meet. We design the system for each variant by selecting from a set of standardized designs in the process platform for the common unit module types and optimizing the remaining unit modules in the system uniquely for each variant.

In previous work, we demonstrated optimization-based approaches for solving the process family design problem on an MEA-based carbon capture system with 63 variants and a brine water desalination system with 76 variants (Stinchfield et al., 2024a; Stinchfield et al., 2023). We have presented three distinct optimization formulations to solve the process family design problem given the set of variants, the process system architecture (i.e., all unit modules required to construct the system), and the allocation of common unit modules to be designed from the platform. The original formulation was a Mixed Integer Nonlinear Program (MINLP), where nonlinearities arise from using the equation-oriented process system model within the overall optimization formulation (Stinchfield et al., 2024a). In previous work, we elected not to solve this MINLP directly due to the size and complexity of the problem. Instead, we developed two alternative Mixed Integer Linear Programming (MILP) formulations; one formulation relies on discretization of the common unit modules design space (Stinchfield et al., 2024a) and the other formulation embeds piecewise linear Machine Learning (ML) surrogates in place of complicating nonlinear constraints (Stinchfield et al., 2023). Both approaches proved to be computationally efficient for the carbon capture and water desalination case studies. However, as the number of variants in the process family increases, the size of the problem can become prohibitively large. In such cases, direct application of previously developed optimization approaches becomes inefficient, prompting us to develop methods for solving large-scale problems.

Our most recent work, as detailed in Stinchfield et al. (2024b), expands the water desalination case study from 76 variants to 10,897 variants using the equation-oriented model built in Pyomo (Bynum et al., 2021) as part of the PARETO project (Drouven et al., 2023). Using the discretization formulation presented in Stinchfield (2024a), rather than solving for all 10,897 variants simultaneously we decompose the formulation into subproblems containing subsets of variants from the process family. We solve the overall problem with Progressive Hedging (PH) (an iterative algorithm typically employed in stochastic programming), deployed in parallel on a distributed HPC cluster using the open-source Python package mpi-sppy (Knueven et al., 2023). This approach allowed us to solve this process family design problem to ~1.5% relative optimality gap in about 5 hours; in comparison, Gurobi reached ~50% relative optimality gap in about 6 hours (Stinchfield et al., 2024b). However, this approach still requires discretization of the common unit module design ranges; additionally, PH acts as a heuristic for MILP’s with gap-closing capabilities. Ideally, we would not have to use ML surrogates or discretization to solve this problem, instead solving the process family design problem with the equation-oriented model directly to achieve the most accurate results. However, recall that we did not consider solving the MINLP directly due to complexity and size. In this work, we aim to decompose and solve this large-scale MINLP using a Structured Nonlinear Global Optimization algorithm presented by Cao and Zavala (2019).

Disclaimer

This project was partially funded by the Department of Energy, National Energy Technology Laboratory and agency of the United States Government, through a support contract. Neither the United States Government nor any agency thereof, nor any of their employees, nor the support contractor, nor any of their employees, makes any warranty, express or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness of any information, apparatus, product, or process disclosed, or represents that its use would not infringe privately owned rights. Reference herein to any specific commercial product, process, or service by trade name, trademark, manufacturer, or otherwise does not necessarily constitute or imply its endorsement, recommendation, or favoring by the United States Government or any agency thereof. The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or any agency thereof.

Sandia National Laboratories is a multi-mission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525.

Acknowledgements

This effort is part of the U.S. Department of Energy’s Institute for the Design of Advanced Energy Systems (IDAES) supported by the Office of Fossil Energy and Carbon Management’s Simulation based Engineering/Crosscutting Research Program.

This work was performed under the auspices of the U.S. Department of Energy by Lawrence Livermore National Laboratory under Contract DE-AC52-07NA27344 and was supported by the Department of Energy’s Office of Electricity’s Advanced Grid Modeling (AGM) program.

References

Bynum, M. L., et al. (2021). Pyomo-optimization modeling in python (Vol. 67). Berlin/Heidelberg, Germany: Springer.

Cao, Y., & Zavala, V. M. (2019). A scalable global optimization algorithm for stochastic nonlinear programs. Journal of Global Optimization, 75(2), 393-416.

Drouven, M. G., et al. (2023). PARETO: An open-source produced water optimization framework. Optimization and Engineering, 24(3), 2229-2249.

Knueven, B., et al. (2023). A parallel hub-and-spoke system for large-scale scenario-based optimization under uncertainty. Mathematical Programming Computation, 15(4), 591-619.

Simpson, T. W., Jiao, J., Siddique, Z., & Hölttä-Otto, K. (2014). Advances in product family and product platform design. New York: Springer, 1.

Stinchfield, G., et al. (2024a). A mixed integer linear programming approach for the design of chemical process families. Computers & Chemical Engineering, 108620.

Stinchfield, G., et al. (2024b). Progressive Hedging Decomposition for Solutions of Large-Scale Process Family Design Problems. Accepted to the Joint Conferences PSE / ESCAPE 34th.

Stinchfield, G., et al. (2023). “Optimization of Process Families for Deployment of Carbon Capture Processes using Machine Learning Surrogates” In proceedings, 33rd ESCAPE Conference.