General Framework

We develop a framework for the efficient representation, generation, and modeling of superstructures for process synthesis (see Figure 1).

Figure 1. Superstructure representation, generation and modeling framework. (A) UPCS representation; (B) generation based on four connectivity rules; (C) modular modeling of element (e.g. unit).

Figure 1. Superstructure representation, generation and modeling framework. (A) UPCS representation; (B) generation based on four connectivity rules; (C) modular modeling of element (e.g. unit).

First, we develop a UPCS representation based on three basic elements: Units (u), Ports (p), and Conditioning Streams (s) (see Figure 1A). A unit is indexed by a unit type (ut) and a unit number (un), e.g. “Dst,1” refers to the unit of unit type “Dst (distillation)” and unit number “1”. In addition to general units, source units and sink units are included as auxiliary elements whose function is to provide raw materials and collect the final product stream and wastes. Every unit type has a predefined set of inlet and outlet ports, e.g. membrane units have one inlet port- for the feed stream, and two outlet ports- one for the permeate stream and the other for the concentrate stream. The inlet ports are generally treated as mixers, and the outlet ports are treated as splitters. A stream is indexed by an inlet and an outlet port. The use of conditioning streams allows us to treat the main reaction/separation tasks and the conditioning tasks separately.

Second, we present four rules based on “minimal” and “feasible” component sets (components that are “required” and “allowed”, respectively, to be present in the ports during the normal operation of their units) for the generation of simple superstructures containing all feasible embedded processes (see Figure 1B).

Third, in terms of modeling, we develop a modular approach, and formulate models for each basic element (see Figure 1C for example). We also summarize the element models into a general canonical form using input/output variables and constrained/free variables. To cope with large process synthesis problems, promoting ease of construction and modification of the model, we further develop a modular modeling implementation architecture (Figure 2).

Figure 2. Modular modeling software implementation architecture, including a description of the system of files and subroutines used. Specifically, we present the general structure of the main file (ProcessNetwork.gms) as well as the required supporting files containing model data (XX-Input.gms, XX-Specifications.gms) and element models (ZZ-Model-YY.gms, WW_Model.gms), which are combined with the main model at compilation time. The description presented here assumes the use of GAMS (General Algebraic Modeling System), but the same architecture can be implemented in any other modeling language having comparable capabilities.

Figure 2. Modular modeling software implementation architecture, including a description of the system of files and subroutines used. Specifically, we present the general structure of the main file (ProcessNetwork.gms) as well as the required supporting files containing model data (XX-Input.gms, XX-Specifications.gms) and element models (ZZ-Model-YY.gms, WW_Model.gms), which are combined with the main model at compilation time. The description presented here assumes the use of GAMS (General Algebraic Modeling System), but the same architecture can be implemented in any other modeling language having comparable capabilities.

Our new UPCS representation allows straightforward superstructure generation, while modularity allows easy model generation and modification. Note that for design problems, which are not solved online or repeatedly, most of the effort goes into the generation of the design alternatives and the formulation of the models rather than their solution. Thus, methods that facilitate this process, as opposed to solution methods, are likely to have greater impact.