Keywords

1 Introduction

In the light of the rapid development witnessed by the modern world in different fields of knowledge, science, and technology, there are many issues requiring urgent response. In recent years, computer science and artificial intelligence have received increasing attention, proving effectiveness in solving many issues and outstanding challenges. Artificial intelligence has been used in a wide range of fields including chemical engineering systems, medical diagnosis, stock trading, robot control, law, and scientific discovery, and has already proved successful, both at the technical level and as reservoirs of expertise. Referring only briefly to the work of: Birattari and Dorigo [9], Bianchi et al. [7], Birattari et al. [10], Dorigo et al. [23], Guru and Savory [30], Jaber and Osman [33], Osman et al. [43], Ohlmann et al. [42], Dessouki and Bayer [18], Mitsuo and Cheng [38], Bontempi et al. [11], Rasmussen et al. [46], Dessouki and Verma [19], Lapinski and Dessouki [36], Beaumariage et al. [6]. However, in recent decades, the successful applications of artificial intelligence relates to different aspects of the process of pharmaceutical and health industries. Whilst, the challenge of pharmaceutical research and biotechnology companies are devoted to inventing medicines that allow patients to live longer, healthier, and more productive lives. Although, drug development, aimed at improving people’s health, becomes more costly every year. The pharmaceutical industry must join its effort with the government and health professions to seek new, innovative, and cost effective approaches in the development process. Nevertheless, for understanding a chemical engineering system, it has been necessary to go back to the mathematical modeling to solve different problems which arise in chemical engineering optimization.

Problems such as designing a plant, determining the number of units for a specific task, assigning raw materials to different production processes, and deciding the production planning or production targets, are some of the issues that can be solved through mathematical modeling. In other words, the mathematical formulations are used to make decisions at different levels, from the synthesis and design of the process up to its operation and scheduling, as reported by Corsano et al. [15]. In the present state of chemical engineering, there has been an increased interest development of systematic methods for the design of batch process in chemicals, food products, and pharmaceutical industries [48]. Many pharmaceutical products are proteins or polypeptides. These biotechnological products can be obtained from nature by extraction or produced by microorganisms that are genetically modified, namely recombinant proteins. Most process in the modern biotechnology industry, correspond to batch plants, and the rapid development of new products (i.e., both therapeutic and non-therapeutic proteins). There is the need to synthesize and separate a variety of substances, with an emphasis on low volume, high-value-added chemicals for flexibility required by the market [16]. However, the developments with yeast cells have grown at a very rapid pace, which has resulted in several important commercial products such as insulin, hepatitis B vaccine, and also more recently, chymosin and protease. The fact that many recombinant proteins made in yeast can be made to be secreted out of the cell and that yeast allows for at least partial glycosilation is an added bonus for this host [41].

Many works in the literature on batch process design are based on expressions that relate the batch sizes linearly with the equipment sizes. Also, the processing times are usually expressed as nonlinear functions of the batch size. Given certain restrictions on these mathematical expressions, the models can be referred to as posynomials, which possess a unique optimum [29]. Salomone and Iribarren [51] proposed posynomial models in which the constants are obtained as a result of the optimization of the process decision variables with simplified models. Salomone et al. [52] generalized the approach by allowing the process parameters to be generated from either experimental data or dynamic simulation. Due of the NP-hard nature of the design problem of a batch plant, unbearably long computational time will be induced by the use of mathematical programming (MP) when the design problem is somewhat complicated, particularly with the increasing size of the problem, MP will be futile. Nevertheless, some heuristics need less computational time, and the successive initial values for optimization variables are not necessary, but probably may end up with a local optima. However, it is not a general strategy with respect to the fact that special heuristic rules will be focused on a special problem.

The common approach used by previous research in solving the design problem of a batch plant has been to formulate it as a mixed integer nonlinear programming problem (MINLP) and then employ optimization techniques to solve it. Robinson and Loonkar [50] studied the problem of designing multiproduct plants operating in single product campaign mode and with a single unit in each processing stage and they extended the nonlinear programming model to include both the design of discrete equipment size and the selection of the parallel units number, by solving it through the use of heuristics. The same problem was further formulated by Grossmann and Sargent [29] as a MINLP model. Knopf et al. [34], and Yeh and Reklaitis [57] accounted for the presence of semicontinuous units. Voudouris and Grossmann [55] proposed reformulations of the previous design models. However, we have found limited published work in relation to the heuristic modeling for designing chemical multi-product batch plants. Dietz et al. [20] made a comprehensive framework for optimal design of batch plants. Dietz et al. [20] developed an approach of multiobjective optimization for multiproduct batch plant design under economic and environmental considerations. Ponsich et al. [45] illustrated some guidelines for implementing genetic algorithms in their MINLP batch plant design problem. Dietz et al. [21, 22] presented of fuzzy multiobjective algorithm for multiproduct batch plant design. Also, they used genetic algorithms to solve a multiobjective optimization problem with an application to optimal batch plant design in process system engineering. Aguilar-Lasserre et al. [1] developed an AHP (analytical hierarchical process) based on a decision making tool for the solution of multiproduct batch plant design problem under imprecise demand. Aguilar-Lasserre et al. [2] illustrated the problem of the optimal design of batch plants with imprecise demands using concepts of fuzzy logic. El Hamzaoui et al. [25] made a comprehensive comparison, in order to search for an optimal design of multiproduct batch plants under uncertain demand using a Gaussian process. Borisenko et al. [12] developed and performed a parallel algorithm for finding the optimal design for multiproduct batch plants.

Basically, batch plants are composed of items operating in a discontinuous way. Each batch then visits a fixed number of equipment items, as required by a given synthesis sequence or so called production recipe. This means that the design of batch plants requires involving how equipment may be utilized. In addition, the optimal design of a multiproduct batch chemical process in order to minimize the investment cost involves: the production requirement of each product and the total production time available for all products; the number and size of parallel equipment units in each stage; and the location and size of intermediate storage. In the conventional optimal design of a multiproduct batch chemical plant [31, 32], a designer specifies the production requirements for each product and the total production time for all products [26]. The volume and size of parallel equipment units in each stage need to be determined to minimize the investment cost.

The case study in this chapter is about a multiproduct batch plant for the production of proteins taken from the literature, since we will only consider multiproduct batch plants, this means that all the products follow the same operating steps [14], the variables are the equipment sizes and number of each operation unit, that generally take discrete values. Generally, optimization of multiple parameters is an arduous and time consuming task. In this context, we emphasize referring to the work of Montagna, Iribarren, Galiano, Asenjo, Vecchietti and Pinto between 1994 and 2000, where the strategy based on monoproduct campaigns was assumed, even when considering the design of a multiproduct batch plant.

The aim of this work is to solve the multiproduct batch plant design (MBPD) problem using a genetic algorithm (GA) and a particle swarm algorithm (PSA); respectively, taking into account all the available options to increase the efficiency of the design: unit duplication in-phase and out-phase, and intermediate storage tanks.

The chapter is organized as follows. Section 2 is devoted to the system description and experimental data, while the problem statement is given in Sect. 3. In Sect. 4, the methodology is formulated, then we report results and provide a discussion in Sect. 5. Finally, the conclusions on this work are drawn in Sect. 6.

2 System Description and Experimental Data

The case study, taken from the literature, is a multiproduct batch plant for the production of proteins [41]. This example is used as a test bench since it provides models describing the unit operations involved in the process. The batch plant involves eight stages for producing four recombinant proteins, on one hand, two therapeutic proteins, human insulin (A) and vaccine for hepatitis (B) and, on the other hand, a food grade protein, chymosin (C), and a detergent enzyme, cryophilic protease (D).

Figure 1 is the flowsheet of the multiproduct batch plant considered in this study. All the proteins are produced as cells grow in the fermenter. It is hardly necessary to say that the number of intermediate storage tanks is an important constituent of our process: Three tanks have been selected: the first after the fermenter, the second after the first ultrafilter, and the third after the second ultrafilter [41].

Fig. 1
figure 1

Multiproduct batch plant for protein production

Vaccines and protease are considered to be intracellular. The first microfilter is used to concentrate the cell suspension, which is then sent to the homogenizer for the second microfilter, which is used to remove the cell debris from the solution proteins. The first ultrafiltration step is designed to concentrate the solution in order to minimize the extractor volume. In the liquid–liquid extractor, salt concentration (NaCl) is used as solution in order to minimize the extractor volume. In the liquid–liquid extractor, salt concentration (NaCl) is used to first drive the product to a poly-ethylene-glycol (PEG) phase and again into an aqueous saline solution in the back extraction. The second ultrafiltration is used again to concentrate the solution. The last stage is chromatography, during which selective binding is used to better separate the product of interest from the other proteins.

Insulin and chymosin are extracellular products. Proteins are separated from the cells in the first microfilter, where cells and some of the supernatant liquid stay behind. To reduce the amount of valuable products lost in the retentate, extra water is added to the cell suspension. The homogenizer and the second microfilter for cell debris removal are not used when the product is extracellular. Nevertheless, the first ultrafilter is necessary to concentrate the dilute solution prior to extraction. The final step of extraction, second ultrafiltration, and chromatography are common to both the extracellular and intracellular products. In Table 1 we make an estimation of production targets and product prices [3, 17, 44].

Table 1 Product prices and demands

3 Problem Statement

The model formulation for the MBPD’s problem adopted in this section is based on Montagna et al. [41]. It considers not only treatment in batch steps, which usually appear in all types of formulation, but also represents semi-continuous units that are part of the whole process (e.g., pumps, heat exchangers, etc.). A semi-continuous unit is defined as a continuous unit alternating idle times and normal activity periods. Besides, this formulation takes into account mid-term intermediate storage tanks, the obligatory mass balance at the intermediate storage stage, which is one of the most efficient strategies to decouple bottlenecks in batch plant design. They are used to divide the whole process into subprocess in order to store an amount of materials corresponding to the difference of each subprocess productivity. In this section, we describe the unit models from a conceptual standpoint and also the procedure to derive the data needed for solving the mathematical model. These data are summarized in Tables 2 and 3.

Table 2 Size factors S\(_{\text {ij}}\) (r, retentate; p, permeate)
Table 3 Time factors T\(_{\text {ij}}\)[B\(_{\text {i}}\) (kg)]

Most of the separation processes information is taken from Asenjo and Patrick [4], the posynomial modeling approach is taken from Salomone and Iribarren [51].

The general batch process literature as reported by Biegler et al. [8] describe batch stages j through a sizing equation and a cycle time that are applied for a product i as follows:

$$\begin{aligned} V_j \ge S_{ij} B_i \end{aligned}$$
(1)

where \(V_{\text {j}}\) is the size of stage j, e.g., m\(^{3}\) of the vessel, \(B_{\text {i}}\) is the batch size for product i, e.g., kg of product exiting from the last stage, \(S_{\text {ij}}\) is the size factor of stage j product i, i.e., the size needed at stage j to produce 1 kg of final product i and \(T_{\text {ij}}\) is the time required to process a batch of product i in stage j, considering the fermenter and the insulin product as an example. If it estimates a final concentration of 50 kg dry biomass/m\(^{3}\), that 0.4 of this biomass is proteins and 0.05 of these proteins is insulin, and an overall yield estimate of the process of 0.8 (0.8 of the insulin produced in the fermenter exits the chromatographic column), then the size factor for the fermenter for producing insulin can be estimated by

$$\begin{aligned} S_{ij} = \frac{\mathrm{m}^{3}}{50\,\mathrm{kg}\times 0.4\times 0.05\times 0.8} = 1.25\,\mathrm{m}^{3}. \end{aligned}$$
(2)

Similarly, vaccine, chymosin, and cryophilic protease were estimated to be 0.1, 0.15, and 0.2 of total proteins of the biomass, respectively. The batch stage description is completed by estimating a processing time \(T_{\text {ij}}\) for stage j when producing product i. For the fermenter, we estimate \(T_{\text {ij}}=\) 24 h for all products, which includes time for charging, cell growth, and discharging. This model of batch stages given by the constraint in Eq. 1 is the simplest one. Its level of detail suffices for the fermenter and the extractor. These units are truly batch items hold the load to be processed and whose operations are governed by kinetics, and hence, the operating time does not depend on the batch size. As a first approximation for the extractor, we take a phase ratio of Eq. 1 for all products. Therefore, the required extractor volume is twice the inlet batch volume, while the inlet and outlet aqueous saline batches are of the same volume. It is also assumed, as result of preliminary balances, that this operation reduces the total amount of proteins to about twice the amount of the target protein. Concerning the kinetic effects, we take as first estimates [37] the following times: 15 min stirring to approach phase equilibrium, 30 min settling to get almost complete disengaging of the phases, and 20 min for charging and discharging. A special consideration must be done in the case of the microfiltration, homogenization, and ultrafiltration stages. Although the mathematical model considers them batch stages, their corresponding equipment consists of holding vessels and semicontinuous units that operate on the material that is recirculated into the holding vessel. The batch items are sized as described before. For example, for the homogenizer processing cryophilic protease, it estimated that the fermenter broth is concentrated 4 times up to 200 kg/m\(^{3}\) at microfilter 1 and considered a yield of 1 because the intracellular protease is fully retained at the microfilter. Then the size factor of the homogenizer vessel is 4 times smaller than the fermenters, i.e., S\(_{\text {ij}}=\) 0.08 m\(^{3}\)/kg protease. The sizing equation for semicontinuous items can also be found in the general batch processes literature [49]:

$$\begin{aligned} R_j = D_{ij} \frac{B_i }{\theta _{ij} } \end{aligned}$$
(3)

where \(R_{\text {i}}\) is the size of the semicontinuous item k, usually a rate of processing. For example, in the case of the homogenizer, it is the capacity in cubic meters of suspension per hour, but in the case of the filters \(R_{\text {i}}\) is their area of filtration A\(_{\text {i}}\)(m\(^{2})\). \(B_{\text {i}}\) is again the batch size, \(\Theta _{\text {ij}}\) is the operating time that the semicontinuous item j needs to process a batch of product i, and D\(_{\text {ij}}\) is the duty factor (a size factor for semicontinuous items), i.e., the size needed at stage j to process 1 kg of product i in 1 h. For example, if we adopt three passes through the homogenizer, its duty factor is the vessel size factor 0.08 m\(^{3}\)/kg, i.e., D\(_{\text {ij}}=\) 0.24 m\(^{3}\)/kg. The meaning of a capacity of 0.24 m\(^{3}\)/h is that it allows 1 kg of final product cryophilic protease to be processed in 1 h. The general batch processes literature considers semicontinuous units to work in series with batch units so that their operating time are the times for filling or emptying the batch units. However, in the process considered, pumps are the only semicontinuous units, which transfer batches between the units. As the pumps cost does not have a relevant impact on the plant design, they were not explicitly modeled. The times for filling and emptying batch items were estimated and included in the batch cycle times. On the other hand, the process does have special semicontinuous units with an important economic impact. They are the homogenizer and ultrafilters, but their operating time is the batch processing time of the respective stage. Their mathematical model has been introduced by Salomone and Iribarren [52]. A size factor for the batch item and a time expression for the stage that depends on both the batch size and the size of the semicontinuous item are follows:

$$\begin{aligned} V_j \ge S_{ij} B_i \end{aligned}$$
(4a)
$$\begin{aligned} T_{ij} = T_{ij}^0 + T_{ij}^1 \frac{B_i }{R_j } \end{aligned}$$
(4b)

where \(R_{\text {j}}\) refers to the size of the semicontinuous item that operates on the batch size at stage j—T\(_{\text {ij}}{}^{0}\) and T\(_{\text {ij}}{}^{1}\) are appropriate time factors that take into account contributions to the total cycle time of the stage that are either fixed amounts of time or proportional to the batch size and inversely proportional to the size of the semicontinuous item. For the homogenizer, \(R_{\text {j}}\) is its capacity, T\(_{\text {ij}}{}^{1}\) the duty factor of the homogenizer itself, and T\(_{\text {ij}}{}^{0}\) includes the estimated times for filling and emptying the homogenizer holding vessel. In the case of ultrafilters, a fixed permeate flux model was considered with a rate of 20 L/m\(^{2}\) of membrane area/h. In this case, the size of the semicontinuous item R\(_{\text {j}}\) is the filtration area. T\(_{\text {ij}}{}^{0}\) is again the time for filling and emptying the retentate holding vessel, and T\(_{\text {ij}}{}^{1}\) is the inverse of the permeate flux times the ratio. This ratio is estimated from a mass balance taking into account that the ultrafilters are used for a water removal from solutions up to 50 g/L of total proteins. Ultrafilters are used to reduce the volume required at the liquid extractor and the chromatographic column. The upper bound on concentration is a constraint that avoids protein precipitation. The microfilter model is quite similar to that of the ultrafilter, but there are two batch items associated to them instead of one, the retentate and the permeate vessels, plus the semicontinuous item area of filtration. For microfilter I a fixed permeate flux of 200 L/m\(^{2}\)h is adopted. For extracellular insulin and chymosin, we estimate a total permeate (feedwater plus make up water) that is twice the feed, while for intracellular protease and vaccine we estimate it at 75 % of the feed (the retentate is concentrated four times). For microfilter II a fixed permeate flux model is also used. In this case, the flux is smaller than the one in microfilter I because the pore size to retain cell debris is smaller than the one for whole cells. As a first estimation we take 100 L/m\(^{2}\)h and a total permeate (feed plus make up water) twice the feed. However, relating to the chromatographic column, an adsorptive type chromatography is considered, with a binding capacity of 20 kg/m\(^{3}\) of column packing. The size factor of this unit is the inverse of that binding capacity. As a first approximation, a fixed total operating time of 0.5 h was estimated for loading, eluting, and washing regeneration. Finally, the stage model is completed with a cost model that expresses the cost of each unit as a function of its size, in the form of a power law. These expressions are summarized in Table 4, with most of the cost data taken from Petrides et al. [44].

Table 4 Cost of equipment (U.S. dollars)

3.1 Model Equations

The mathematical optimization model for designing the multiproduct batch plant is described in this section. The model includes the stage models described in the previous section plus additional constraints that are explained in this section. The plant consists of batch stages (in our case 8 batch stages). Each stage j has a size V\(_{\text {i }}\)(m\(^{3})\), and more than one unit can be installed in parallel. They can work either in-phase (starting operation simultaneously) or out of phase (starting times are distributed equally spaced between them). The duplication in phase is adopted in case the required stage size exceeds the specific upper bound. In this case, G\(_{\text {j}}\) units are selected, splitting the incoming batch into G\(_{\text {j}}\) smaller batches, which are processed simultaneously by the G\(_{\text {j}}\) units. After processing, the batches are added again into a unique outgoing batch. Otherwise, duplication out-of-phase is used for time-limiting stages, if a stage has the largest processing time, then it is a bottleneck for the production rate. Assigning M\(_{\text {j}}\) units at this stage, working in out of phase mode, reduces the limiting processing time and thus increases the production rate of the train. For this case, the batches coming from the upstream stages are not split. Instead, successive batches produced by the upstream stage are received by different units of stage j, which in turn pass them at equally spaced times onto the downstream batch stage. The allocation and sizing of intermediate storage has been included in the model to get a more efficient plant design. The goal is to increase unit utilization. The insertion of a storage tank decouples the process into two subprocesses: one upstream from the tank, and the other downstream. This allows the adoption of independent batch sizes and limiting cycle times for each subprocess.

Therefore, the previously unique B\(_{\text {i}}\) is changed to batch sizes B\(_{\text {j}}\) defined for product i in stage j. Appropriate constraints adjust the batch sizes among different units. The objective is to minimize the capital cost of the plant.

At each batch stage the number of parallel units in phase and out of phase and their size, and the installation or absence of intermediate storage between the batch stages and their size. The plant is designed to satisfy a demand of Qi (kg) of each product i, for the P product considered, within a time horizon H (h). In summary, the objective function to be optimized is

$$\begin{aligned} MinCost = \sum _{j=1}^M {M_j G_j a_j V_j^{\alpha _j } +\sum _{j=1}^M {VT_j^{\eta _j } } } \end{aligned}$$
(5)

where a\(_{\text {j}}\), \(\upalpha _{\text {j}}\), c\(_{\text {j}}\) and n\(_{\text {j}}\) are appropriate cost coefficients that depend on the type of equipment being considered. VT \(_{\text {j}}\) is the size of the storage tank allocated after stage j. The size of each unit has to be large enough to be able to process every product given by

$$\begin{aligned} V_j \ge \frac{S_{ij} B_{ij} }{G_j } \forall i=1,\ldots ,P; \forall j=1,\ldots ,M \end{aligned}$$
(6)

where S\(_{\text {ij}}\) is the size factor for product i in stage j. In case of parallel units working in phase, the division of B\(_{\text {ij}}\) by the number of units G\(_{\text {j}}\) takes into account the reduction in the batch size to be processed by these units. The operation time T\(_{\text {ij}}\) to process product i at j stage has the following general form

$$\begin{aligned} T_{ij} = T_{ij}^0 +T_{ij}^1 \frac{B_{ij} }{R_j } \forall i = 1,\ldots ,P;\forall j=1,\ldots ,M \end{aligned}$$
(7)

where T\(_{\text {ij}}{}^{0}\) and T\(_{\text {ij}}{}^{1}\) are appropriate constants that depend on both the product and the stage. Equation 7 accounts for a fixed and variable contribution to the total operating time. The last term of this equation depends on both the batch size and the size of the semicontinuous item associated to this batch stage, as discussed previously. The limiting cycle time for product i in the subprocess h, TL\(^{\text {k}}\), is the largest processing time in this production train given by

$$\begin{aligned} TL_i^h \ge \frac{T_{ij} }{M_j } \forall i = 1,\ldots ,P; \forall j\in J_j ; \forall h \end{aligned}$$
(8)

where \(J_{\text {k}}\) is the set of units which conform the subprocess (h) the division by the number of units in parallel working out of phase, \(M_{\text {j}}\) takes into account the reduction in the cycle time of this stage due to the operation of \(M_{\text {j}}\) units that alternatively process the consecutive batches. To avoid accumulation of material, the processing rate of both subprocess downstream and upstream of the storage tank must be the same

$$\begin{aligned} \left( {\frac{B_i^d }{TL_i^d }} \right) = \left( {\frac{B_i^u }{TL_i^u }} \right) \,\forall i = 1,2,\ldots ,P. \end{aligned}$$
(9)

Equation 9 represents a constraint that equalizes the production rate upstream and downstream of the storage tank. To express Eq. 9 in a simple form, the inverse of the production rate of product \(i(E_{\text {i}})\) is defined as

$$\begin{aligned} E_i = \frac{TL_i^h }{B_{ij} } \forall i = 1,2,\ldots ,P;\forall j\in J_h ; \forall h. \end{aligned}$$
(10)

Equation 10 is used to replace TL\(_{\text {i}}{}^{\text {n}}\) in constraint Eq. 8, dropping constraint Eq. 9. The production constraint is posed as follows: during the time horizon (H) the plant must produce the target production quantities Q\(_{\text {i}}\) of each product i. The number of batches of each product i to be produced during time H is Q\(_{\text {i}}\)/B\(_{\text {i}}\), and the production of each batch demands a time TL\(_{\text {i}}\), The following constraints holds:

$$\begin{aligned} \sum _{i=1}^P {Q_i E_i \le H} \end{aligned}$$
(11)

The size of the storage tank VT\(_{\text {j}}\), allocated after batch stage j is given by the following the expression [39]

$$\begin{aligned} VT_j \ge ST_{ij} \left( {B_{ij} +B_{ij+1} } \right) \forall i=1,\ldots ,M; \forall j=1,\ldots ,M-1 \end{aligned}$$
(12)

where ST \(_{\text {ij}}\) is the size factor corresponding to the intermediate storage tank, with identical definition to the batch stages. As no a priori tank allocation is given, binary variables \(y_{\text {i}}\) are used to select their allocation. The value of variable \(y_{\text {j}}\) is 1 if a tank is placed in position j, or zero otherwise. Constraint (12) is generalized to size the tank only if it exits, expressed as

$$\begin{aligned} VT_j \ge ST_{ij} \left( {B_{ij} +B_{ij+1} } \right) -F_j \left( {1-y_j } \right) \forall i=1,\ldots ,P;\forall j=1,\ldots ,M-1 \nonumber \\ \end{aligned}$$
(13)

where \(F_{\text {j}}\) is a constant value sufficiently large such that when \(y_{\text {j}}\) is 0 (the tank does not exist), the constraint is trivially satisfied for any value of VT \(_{\text {j}}\). In particular, the cost minimization will drive VT \(_{\text {j}}=\) 0. When the tank exists (\(y_{\text {j}}=\) 1) the term with \(F_{\text {j}}\) vanishes, and the original constraint Eq. 12 holds. If the storage tank does not exist between two consecutive stages, then their batch sizes are constrained to be equal. Otherwise, this constraint is relaxed. This effect is imposed by the following constraints [47]

$$\begin{aligned} 1+\left( {\frac{1}{\Phi }-1} \right) y_j \le \frac{B_{ij} }{B_{ij+1} }\le 1+\left( {\Phi -1} \right) y_j \,\forall i=1,\ldots ,P;\forall j=1,\ldots ,M-1 \nonumber \\ \end{aligned}$$
(14)

where \(\Phi \) is a constant value corresponding to the maximum ratio allowed between two consecutive batch sizes. In summary, the multiproduct plant design model that includes the options of parallel units in-phase and/or out of phase and provision of intermediate storage, consists of the objective function 5 subject to constraints 6, 8, 11, 13, and 14, plus the upper and lower bounds that may apply. An important feature of the model is that both the objective function and the constraints are posynomial expressions that possess a unique local (and thus, global) solution [29]. This basic model has been adapted to handle the particular feature of the composite stages (homogenizer, ultrafilters, and microfilters). In this case, constraint Eq. 6 is applied not to a general batch stage size but to each of the items that compose it. So in the case of microfilters, Eq. 6 applies to both the retentate and the permeate vessels. A new parameter SR\(_{\text {ij}}\) was introduced to represent the size factor of the retentate vessel, while SR\(_{\text {ij}}\) was left for the permeate vessel. Also in this case, the objective function must account for all the stage components. The notation a\(_{\text {j}}\) and \(\upalpha _{\text {j}}\) were left for the cost coefficients of the permeate vessel, b\(_{\text {j}}\) and \(\upbeta _{\text {j}}\) for the retentate vessel, d\(_{\text {j}}\) and \(\upgamma _{\text {j}}\) for the filtration area. A similar approach was implemented for the ultrafilters (retentate vessel and ultrafiltration area) and homogenizer (holding vessel and the homogenizer itself).

4 Methodology

Between 1960 and 1970 witnessed a tremendous development in the size and complexity of industrial organizations. Administrative decision-making has become very complex and involves large numbers of workers, materials, and equipment. A decision is a recommendation for the best design or operation in a given system or process engineering, so as to minimize the costs or maximize the gains [53]. Using the term “best” implies that there is a choice or set of alternative strategies of action to make decisions. The term optimal is usually used to denote the maximum or minimum of the objective function and the overall process of maximizing or minimizing is called optimization. Optimization problems are not only in the design of industrial systems and services, but also apply in the manufacturing and operation of these systems once they are designed. Including various methods of optimization, we can mention: MINLP, PSA, and GA.

4.1 Particle Swarm Algorithms

The PSA is a population-based optimization algorithm, which was inspired by the social behavior of animals such as fish schooling and birds flocking, it can solve a variety of hard optimization problems. It can handle constrains with mixed variables requiring only a few parameters to be tuned, making it attractive from an implementation viewpoint [24]. In PSA, its population is called a swarm and each individual is called a particle. Each particle flies through the problem space to search for optima, each one representing a potential solution. The best position passed through by a flying particle is the best solution found by this particle and is called pbest, and the best position passed through by a swarm is considered as the best solution found by the swarm and is called gbest. Each particle updates itself by pbest and gbest. A new iteration is produced by this updating and each particle can be regarded as occupying a point in solution space. Assume the number of particles in a group is M, and the number of variables, or dimensions, that represent each particle is N. Then, the ith particle at iteration k has the following two attributes:

  • A current position in an N-dimensional search space which represents a potential solution: \(X_i^k = \left( {x_{i,1}^k ,\ldots x_{i,n}^k \ldots x_{i,N}^k } \right) \), where \(x_{i,n}^k \in \left[ {l_n ,u_n } \right] \) is the nth dimensional variable, 1 \(\le \) n \(\le \) N, \(l_{\text {n}}\) and \(u_{\text {n}}\) are the lower and upper bounds for the nth dimension, respectively.

  • A current velocity \(V_i^k = \left( {v_{i,1}^k ,\ldots v_{i,n}^k ,\ldots v_{i,N}^k } \right) \) which controls its fly speed and direction. V\(_{t}^{k}\) is restricted to a maximum velocity \(V_{\max }^k = \left( v_{\max ,1}^k ,\ldots v_{\max ,n}^k ,\ldots \right. \left. v_{\max ,N}^k \right) \). At each iteration, the swarm is uploaded by the following equations:

$$\begin{aligned} V_i^{k+1} = \omega V_i^k +c_1 r_1 \left( {P_i^k -X_i^k } \right) +c_2 r_2 \left( {P_g^k -X_i^k } \right) \end{aligned}$$
(15)
$$\begin{aligned} X_i^{k+1} = X_i^k +V_i^{k+1} \end{aligned}$$
(16)

where P\(_{\text {i}}\) is the best previous position of the \(i_{th}\) particle (also known as pbest) and P\(_{\text {g}}\) is the global best position among all the particles in the swarm (also known as gbest). They are given by the following equations:

$$\begin{aligned} P_i = \left\{ {\begin{array}{l} P_i : f\left( {X_i } \right) \ge P_i \\ X_i : f\left( {X_i } \right) \le P_i \\ \end{array}} \right. \end{aligned}$$
(17)
$$\begin{aligned} P_g \in \left\{ {P_0 ,P_1 ,\ldots ,P_M } \right\} \left| {f\left( {P_g } \right) = \min \left( {f\left( {P_o } \right) ,f\left( {P_1 } \right) \ldots f\left( {P_M } \right) } \right) } \right. \end{aligned}$$
(18)

where f is the objective function, M is the total number of particles, r\(_{1}\) and r\(_{2}\) are the elements generated from two uniform random sequences on the interval [0, 1] and w is an inertia weight [54] which is typically chosen in the range of [0, 1]. A larger inertia weight facilitates global exploration and a smaller inertia weight tends to facilitate local exploration to fine tune the current search area. Therefore, the inertia weight w is critical for the PSA’s convergence behavior. A suitable value for the inertia weight w usually provides balance between global and local exploration abilities and consequently results in a better optimum solution. Initially the inertia weight was kept constant. However, c\(_{1}\) and c\(_{2}\) are acceleration constants which also control how far a particle will move in a single iteration.

4.2 Genetic Algorithms

GA, proposed in this paper based on the work of Wang et al. [56], are related to the mechanics of natural selection and natural genetics. They combine the survival of the fittest among string structures with a structured yet randomized information exchange to form search algorithms with some of the innovative flair of human search. In every generation, a new set of individuals (strings) is created using bits and pieces of the fittest of the old individuals; while randomized, a GA are no simple random walk. They efficiently exploit historical information to speculate on new search points with expected improved performance [56]. According to Wang et al. [56], the canonical steps of the GA can be described as follows:

  1. 1.

    The problem to be addressed is defined and captured in an objective function that indicated the fitness of any potential solution.

  2. 2.

    A population of candidate solutions is initialized subject to certain constraints. Typically, each trial solution is coded as a vector X, termed a chromosome, with elements being described as solutions represented by binary strings. The desired degree of precision would indicate the appropriate length of the binary coding.

  3. 3.

    Each chromosome \(X_{\text {i}}\), (i \(=\) 1, 2, ..., P), in the population is decoded into a form appropriate for evaluation and is then assigned a fitness score, \(\upmu \)(X\(_{\text {i}})\) according to the objective.

  4. 4.

    Selection in GAs is often accomplished via differential reproduction according to fitness. In a typical approach, each chromosome is assigned a probability of reproduction \(P_{\text {i}}\), so that its likelihood of being selected is proportional to its fitness relative to the other chromosomes in the population. If the fitness of each chromosome is a strictly positive number to be maximized, this is often accomplished using roulette wheel selection [28]. Successive trials are conducted in which a chromosome is selected, until all available positions are filled. Those chromosomes with above-average fitness will tend to generate more copies than those with below-average fitness.

  5. 5.

    According to \(P_{\text {i}}\), a new population of chromosomes is generated by probabilistically selecting strings from the current population. The selected chromosomes generate “offspring” via the use of specific genetic operators, such as crossover and bit mutation. Crossover is applied to two chromosomes (parents) and creates two new chromosomes (offspring) by selecting a random position along the coding and splicing the section that appears before the selected position in the first string with the section that appears after the selected position in the second string and vice versa. On the other hand, bit mutation simply offers the chance to flip each bit in the coding of a new solution.

    Briefly, throughout this work, a GA work as follows:

    1. 1.

      Start with a randomly generated population of n chromosomes (candidate solutions to a problem).

    2. 2.

      Calculate the fitness of each chromosome in the population.

    3. 3.

      Repeat the following steps until n offspring have been created: Select a pair of parent chromosomes from the current population, the probability of selection being an increasing function of fitness. Selection is done with replacement, meaning that the same chromosome can be selected more than once to become a parent with a given probability (crossover rate), perform crossover to the pair at a randomly chosen point to a form two offspring. Mutate the two offspring at each locus with a given probability (mutation rate), and place the resulting chromosomes in the new population.

    4. 4.

      Replace the current population with the new population.

    5. 5.

      Go to step 2.

Table 5 The parameters used for running GA and PSA

According to our experiments, the parameters used for running GA and PSA are showed in Table 5.

Table 6 Intermediate storage cost coefficients and size factors

5 Results and Discussions

The problem could be formulated as the minimization of the investment cost for equipment and storage tanks. Given that the problem modeled has nonlinear objective function. For the purpose of an optimization problem, the model developed has been solved with the PSA and GA Matlab Toolbox respectively, which is included in the Matlab optimization modeling software, using the data shown in Tables 1, 2, 3, 4 and 6. A horizon time of 6000 h has been considered.

Table 7 Comparison of results for 30 runs between PSA and GA

Table 7 shows the best, the average and the worst among the final fitness values and the related standard deviation obtained in the 30 runs of PSA and GA, respectively. It is clear from the summary of the results shown in Table 7, that the performance of both PSA and GA produce adequate values regarding the cost for equipment and storage tanks. However, GA performs better than the PSA in terms of the average and the worst fitness values and the standard deviation. Table 7 also shows the best final solution found in the 30 runs of PSA and GA. According to our knowledge, the case study about the optimal design of protein production plant has been taken from Montagna et al. [41]. However, they solved the problem using rigorous mathematical programing (MINLP), their model includes 104 binary variables and has been convexified using the transformation proposed by Kocis and Grossmann [35]. The MINLP model has been solved using DICOPT++, which is included in the GAMS optimization modeling software [13]. The algorithm implemented in DICOPT++ relies on the Outer Approximation/Equality Relaxation/Augmented Penalty (OA/ER/AP) method. The OA/ER/AP solution method consists of the decomposition of the original MINLP problems into a sequence of two subproblems: a nonlinear programming (NLP) subproblem and a mixed integer linear programming (MILP) subproblem also known as the Master problem, which is solved to global optimality (minimize the capital cost $829,500). However, in previous work of Montagna et al. [41], their model needed a long computational time (more than 86400 s) and require several initial values to the optimization variables, they also showed in their paper that the behavior of the demand was completely deterministic. Whilst, this assumption does not seem to be always a reliable representation of the reality, since in practice the demand of pharmaceutical products resulting from the batch industry is usually variable. Simulations outcomes were then compared with experimental data in order to check the accuracy of the method. The error from the optimal solution is given by

$$\begin{aligned} error\,\% =100 \frac{\left| {x_{\exp } -x_{cal} } \right| }{x_{\exp } }. \end{aligned}$$
(19)

In this research, \(X_{\text {exp}}\) is considered to be the optimal solution founded by Montagna (Plant cost $829,500), where Eq. 19 is a criterion to confirm the optimal values. Table 8 presents the results obtained in different optimization runs for multiproduct batch plant design. For each simulator run, the average numerical effort spent on solving the problem on LINUX System, Intel ® D, CPU 2.80 GHz, 2.99 of RAM. Table 8 shows plant cost, % from optimal solution and CPU time obtaining during 30 runs. PSA and GA performed effectively and give a solution within 10 and 0.5 % of the global optimal $912,450 and $833,647, respectively. Furthermore, the important feedback could be taken from Table 8, is the GA results in a faster convergence than PSA and the MINLP algorithm. In addition, the GA is so close to the global optimal of MBPD (0.5 % from optimal solution) and provides also an interesting solution, in terms of quality as well as of computational time as illustrated in Table 8, while Table 9 presents the sizes for the units involving a set of discrete equipment structure given by PSA. The inconvenience of this configuration is just stopped at 6000 h with risk of failing to fulfill the potential future demand coming from a fluctuation of the market.

Table 8 Optimization runs results for the investment cost founded by PSA and GA during 30 runs
Table 9 Equipment structure calculated by PSA

On the other hand, the calculation of the structure of equipment using the GA is illustrated in Table 10. The total production time, also, computed by GA is 5491.12 h to fulfill the eventual increase of future demand caused by market fluctuations. In addition, the GA results in a faster convergence, while the equipment structure showed by PSA is very expensive. Furthermore, the PSA approach has the disadvantage of long CPU time.

Table 10 Equipment structure calculated by GA

On the other hand, the GA allow the reduction of the idle time to the stage, in any way, Tables 11 and 12 show the idle times obtained by PSA and GA respectively.

Table 11 Idle times in plant calculated by PSA (seconds)
Table 12 Idle times in plant calculated by GA (seconds)

However, some observations regarding the use of a GA in practice are the following. The most important of all is the method of coding, because the codification is a very important issue when a GA is designed to deal with combinatorial problems, also of the characteristics and inner structure of the DMBP.

The commonly adopted concatenated, multi-parameter, mapped, fixed point coding are not effective in searching for the global optimum. According to the inner structure of the design problem of multiproduct batch that gives us some clues for designing the above mixed continuous discrete coding method with a four-point crossover operator. As is evident from the results of application, this coding method is well fit to the proposed problem.

It is also important to note that the selection of crossover points [25] as well as the way to carry out the crossover should take into account the bit string structure, as is the case in our codification. However, one problem in practice is the premature loss of diversity in the population, which results in premature convergence. Because premature convergence is so often the case in the implementation of GAs according to our experience.

Our experience makes it clear that “elitism” can help improve the search, and locate highly optimal solutions. Nevertheless, these techniques are not a panacea, despite their apparent robustness, there are control “parameters” involved in these metaheuristics, and appropriate setting of these parameters is a key point for success.

6 Conclusions

Techniques such as PSA and GA are inspired by nature, and have proved themselves to be effective solutions to optimization problems of DMBP. GAs perform effectively and give a solution within 0.5 % of the global optimum. Whilst, it is observed that, in terms of computational time, the GA approach is faster. Furthermore, the results provided by the GA are much better with respect to the PSA. Despite the important role and advantages played by classical methods (MINLP: OA/ER/AP) for the batch plant design problem (such as high accuracy) they have demonstrated some inconveniences in applications (they are not robust, meant for single objective, require derivatives, and more computational time). However, GAs exhibit some advantages in practice, since they have no special demand for initial values of decision variables, the initial population of strings is chosen randomly as long as it does not violate the constraints for the problem, and do not require derivatives. Due to the parallel computing nature, GAs result in faster convergence in comparison with MINLP and PSA. GA are, also, simple in structure and are convenient for implementation, with no more complicated mathematical calculation than such simple operators as encoding, decoding, testing constraints, and computing values of the objective function. In this paper, the GA gave us the highest efficiency and justifies its use for solving nonlinear mathematical models. Finally, this work provides an interesting decision/making approach to improve the design of multiproduct batch plants under conflicting goals.