ALAMO usage in process optimization
In the case of large complex processes, a simulation can be dissaggregated into process blocks. Each block can be modeled separately, then combine with flexible constraints and connectivity variables to generate a final optimization model.
Notation: Modeling a black-box or process block
Each process block or black-box will have some set of independent variables, x, (operating conditions, inlet flows, etc.) that will be used to define a set of dependent variables, z, (conversions, outlet flows, etc.).
ALAMO Algorithmic Flowchart
For each output variable, z, a surrogate model, zhat(x), will be generated. This will be done in a three step iterative process:
- Initial design of experiments: Evenly sample the design space to define an initial training set
- Model building: Build a low complexity surrogate model based on the current training set
- Adaptive sampling: By interrogating the system using Error Maximization Sampling (EMS), the training set is updated with new points sampled where the current model breaks down.
- Repeat steps 2 and 3, until no points can be found that violate the model.
In doing this, we aim to generate a model that is
- Simple and compact models for ease the final optimization
- Generated from a minimal data set of simulations or black-box function evaluations
ALAMO Standard Modeling
ALAMO does not need to know the functional form of the model in advance. To identify the functional form, ALAMO allows for a large set of potential basis functions that can be found from polynomials, engineering experience, physical phenomena, and statistical fitting functions. Next, by combining optimization techniques and statistical methods, we are able to find a subset of basis functions that accurately model the data without overfitting or using unnecessary terms.
ALAMO Standard Adaptive Sampling
After building the current iterate’s model, ALAMO searches the design space to find where our model breaks down using Error Maximization Sampling (EMS). As the name suggests, EMS solves the black-box problem shown below:
Here, the black-box solver SNOBFIT is used to maximize the relative error. During this process, new function evaluations with high model mismatch are added to the training set. ALAMO will then sample the simulation at these new locations, and rebuild the model.
If, during this step, no points that violate the model can be found, we will consider our model sufficiently accurate.
The main ALAMO methodology is described in the paper A. Cozad, N. V. Sahinidis and D. C. Miller, Learning surrogate models for simulation-based optimization, AIChE Journal, 60, 2211-2227, 2014.
ALAMO's constrained regression methodology is described in the paper A. Cozad, N. V. Sahinidis and D. C. Miller, A combined first-principles and data-driven approach to model building, Computers and Chemical Engineering, 73, 116-127, 2015.