(85a) A New Modeling Framework for Batch Process Optimization | AIChE

(85a) A New Modeling Framework for Batch Process Optimization


Kong, L. - Presenter, University of Wisconsin-Madison
Castillo, I., The Dow Chemical Company
Peng, Y., The Dow Chemical Co
Rendall, R., University of Coimbra
Wang, Z., Dow Inc.
Trahan, D. W., The Dow Chemical Company
In this work, we introduce a new modeling framework for batch process optimization developed using the Pyomo [1] package in Python. Based upon an existing fundamental process model, the proposed framework allows batch process optimization using either (1) mathematical programming, or (2) reinforcement learning or black-box optimization. The fundamental model ensures that extrapolations during optimization are based on first principles and constrained by operational rules and limits.

For the mathematical programming approach, the fundamental process model, described as a system of differential algebraic equations (DAEs), is discretized and transformed into a set of purely algebraic equations. Then the optimization task is solved as a nonlinear programming (NLP) problem. We introduced an initialization algorithm tailored to address the numerical difficulties when solving this large-scale NLP problem. The algorithm involves decomposing the original model into sub-models and solving the simpler sub-models successively. The solutions of the sub-models are then used to initialize the original model. The batch optimization model can then be solved by NLP solvers like IPOPT [2].

This framework provides a convenient and robust way to construct simulation environments for reinforcement learning and black-box optimization algorithms. The framework maintains a set of decomposed sub-models, each representing a time step in the finite-horizon batch process. In each step of the optimization algorithm, the appropriate sub-model is retrieved from the model set and used as a simulator for that step. The sub-model is updated every step, and the entire model set is updated every full iteration. This updating procedure avoids model reconstruction and reinitialization during optimization.

The proposed framework was applied to the optimization of an industrial batch process at Dow. The implemented fundamental model of this process was optimized to obtain a batch recipe using both mathematical programming and reinforcement learning. In both approaches, we obtained higher product margin compared to historical plant data.


[1] Hart, William E., Jean-Paul Watson, and David L. Woodruff. Pyomo: modeling and solving mathematical programs in Python. Mathematical Programming Computation 3(3): 219-260, 2011

[2] A. Wächter and L.T. Biegler. On the implementation of a primal-dual interior point filter line search algorithm for large-scale nonlinear programming. Mathematical Programming, 106(1):25–57, 2006.