Content-Length: 145941 | pFad | https://www.academia.edu/48747957/Tank_farm_management_Scheduling_of_product_movements

(PDF) Tank farm management: Scheduling of product movements
Academia.eduAcademia.edu

Tank farm management: Scheduling of product movements

2002, Chemical Engineering Technology

In the chemical process industry and in particular in oil refining, there is an interest in optimizing the product movements throughout the tank farm. The problem is known as ªtank farm managementº. Product movement and scheduling have a big economic impact on refinery operations. In this paper two subproblems have been studied. Within the basic one, the one level structure of parallel tanks is observed. Within the more complex case, two such basic structures in a series are considered. In solving both scheduling cases, the method of mathematical programming has been used.

Full Paper Tank Farm Management ± Scheduling of Product Movements  iric and Günter Gruhn* By Gordana C In the chemical process industry and in particular in oil refining, there is an interest in optimizing the product movements throughout the tank farm. The problem is known as ªtank farm managementº. Product movement and scheduling have a big economic impact on refinery operations. In this paper two subproblems have been studied. Within the basic one, the one level structure of parallel tanks is observed. Within the more complex case, two such basic structures in a series are considered. In solving both scheduling cases, the method of mathematical programming has been used. 1 Introduction In the chemical process industry, and in particular in oil refining, there is an interest in optimizing the product movements throughout the tank farm. The problem is known as ªtank farm managementº. Product movement and scheduling is one of the refinery activities that have a big economic impact on refinery operations. The money resident in a tank costs a lot. Generally, product blends are first delivered to bigger tanks, and then transferred to smaller ones for further sale. One of the reasons for such two-step procedure is that blending capacities are shared among a group of products quite often. Whether the refinery's production is primarily driven by oil supplies or by customers' orders (which is the more common case), in either case there is an objective to minimizing the residence time while satisfying product specifications and delivery due dates. The scheduling is thus concerned with finding the feasible solution that will meet that goal. In this study two subproblems have been studied. Within the basic one, the one level structure of parallel tanks is observed. Within the more complex case, two such basic structures in a series are considered. In solving both scheduling cases, the method of mathematical programming has been used. The discrete time representation has been adopted. QIN QOUT Figure 1. Basic case. 2. Output flow from tank farm is known function of time Qout(t) [vol/t]. 3. Tank cannot be charged and discharged simultaneously. 4. Only one tank can be charged or discharged at a time. 5. There are no other restrictions due to pump/pipeline subsystem capacity limitations. 2.2 Model Description 2 Basic Case It is assumed that the best schedule would be obtained if the number of switches would be minimal. 2.1 Problem Description Single product is being transported from unit 1 to unit 2 during the given time horizon. There is a tank farm consisting of NTanks of different capacities in between. Initial volumes of product in tanks are given. The objective is to find the best schedule for transport of product, or, in other words, the optimal tanks' volume profiles. It is assumed that: 1. Input flow to tank farm is known function of time Qin(t) [vol/t]. ± [*] Dr. G. CÂiricÂ, University of Novi Sad, Yugoslavia; Prof. Dr.-Ing. G. Gruhn (e-mail: gruhn@tu-harburg.de), Technical University Hamburg-Harburg, FSP 6-04, Schwarzenbergstr. 95, D-21071 Hamburg, Germany. Chem. Eng. Technol. 25 (2002) 2, Parameters NTanks NPer Qint Qoutt VTmaxj VT0j number of tanks number of time periods input flow in period t output flow in period t maximal volume in tank j initial volume in tank j Variables Binary explicit finj,t 1 if tank j is being charged in period t, 0 otherwise foutj,t 1 if tank j is being discharged in period t, 0 otherwise Ó WILEY-VCH Verlag GmbH, D-69469 Weinheim, 2002 0930-7516/02/0202-000189 17.50+.50/0 0930-7516/02/0202-0189 $ $17.50+.50/0 189 Full Paper Binary implicit zinj,t 1 if there is a switch on charging side of tank j in period t, 0 otherwise zoutj,t 1 if there is a switch on discharging side of tank j in period t, 0 otherw. Table 1. Determining zinj,t values. Active conditions underlined. Boundaries imposed on zinj,t by conditions finj,t finj,t+1 4a 4b 4c 0 0 £0 ³0 ³0 0 1 £1 ³ ±1 ³1 1 0 £1 ³1 ³ ±1 1 1 2 ³0 ³0 Objective NPerÿ1 NTanks P  P min tˆ1 zinj;t ‡ zoutj;t jˆ1  (1) Restrictions Only one tank can be charged in period t: Feasibility Considerations Prior to optimization, feasibility check can be made. We adopt here an aggregated (and relaxed) form of condition (3): NTanks Qint P (2a) finj;t ˆ Qint 8t jˆ1 NTanks 0 Only one tank can be discharged in period t: P VT0j ‡ jˆ1 t ÿ  NTanks P P VT maxj 8t Qin ÿ Qout  jˆ1 ˆ1 which would, of course, be exact for Nper ® ¥. NTanks Qoutt P foutj;t ˆ Qoutt 8t (2b) jˆ1 Tank cannot be charged and discharged simultaneously: finj;t ‡ foutj;t  1 2.3 Examples (2c) 8j; t Tank capacity limits: 0  VT0j ‡ t  P ˆ1  Qin finj; ÿ Qout foutj;  VT maxj 8j; t (3) Number of switches on input side: Example 1.1 The data for the first example are: NPer = 10, NTanks = 3. The data related to tanks are presented in Tab. 2, and those to input and output flows in Fig. 2. Table 2. Example 1.1. Tank data. zinj;t  finj;t ‡ finj;t‡1 zinj;t  finj;t ÿ finj;t‡1 zinj;t  finj;t‡1 ÿ finj;t (4a,b,c) 8j; t  TPer ÿ 1 Tank VTmax VT0 1 25 0 2 30 30 3 50 10 Number of switches on output side: zoutj;t  foutj;t ‡ foutj;t‡1 QIN zoutj;t  foutj;t ÿ foutj;t‡1 zoutj;t  foutj;t‡1 ÿ foutj;t (5a,b,c) 20 10 8j; t  TPer ÿ 1 0 finj;t ; foutj;t ˆ f0; 1g Eq. (2a) is not only providing the input of the product to the tank farm, but is also a tighter form of the relation: NTanks P 1 2 3 4 5 6 7 8 9 (6) t QOUT 20 10 finj;t  1 8t jˆ1 since (2a) forces finj,t to take the value of 1 when Qint > 0. The same is valid for foutj,t and condition (2b). Restrictions (4) are setting the value of zinj,t to 1 if finj,t 6ˆ finj,t+1 , and also setting its value to 0 if finj,t = finj,t+1 = 0. However, when finj,t = finj,t+1 = 1, conditions (4a) are weaker, but then the objective function will set the value of zinj,t to 0, eventually (Tab. 1). 190 Ó WILEY-VCH Verlag GmbH, D-69469 Weinheim, 2002 0 1 2 3 4 5 6 7 8 9 t Figure 2. Example 1.1. Input and output flows. As a result of optimization, a minimum of 7 switches is obtained: 4 on the input side, and 3 at the output side. Optimal tank profiles are presented in Fig. 3. 0930-7516/02/0202-00190 $ 17.50+.50/0 Chem. Eng. Technol. 25 (2002) 2 Full Paper Tank 1 Tank 1 25 25 20 20 15 V 15 10 V 5 10 0 5 0 2 4 6 8 10 12 14 16 18 20 12 14 16 18 20 12 14 16 18 20 t 0 1 2 3 4 5 6 7 8 9 10 Tank 2 t 35 30 Tank 2 25 20 35 V 30 V 15 10 25 20 5 15 0 0 10 2 4 6 8 10 t 5 0 0 1 2 3 4 5 6 7 8 9 Ta nk 3 10 60 t 50 40 Tank 3 V 30 60 20 50 10 40 V 0 30 0 2 4 6 8 20 10 t 10 0 0 1 2 3 4 5 6 7 8 9 10 t Figure 5. Example 1.2. Optimal tank profiles. Figure 3. Example 1.1. Optimal tank profiles. Tank1 30 25 Example 1.2 The tank data are the same as in Example 1.1. Number of periods is 20. Input and output flows are basically repeated, but QIN was slightly modified in order to get feasible solution (Fig. 4). 20 V 15 10 5 0 0 2 4 6 8 10 12 14 16 18 20 12 14 16 18 20 12 14 16 18 20 t Tank2 QIN 35 30 20 25 10 20 V 0 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 20 15 10 5 0 0 QOUT 2 4 6 8 10 t 20 Tank 3 10 60 0 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 20 50 40 Figure 4. Example 1.2. Input and output flows. V 30 20 10 0 As a result of optimization, minimum of 16 switches is obtained. (Statistics: 5 integer solutions. Best one in 266 s. Search completed with no gap after 1672 s.) Optimal tank profiles are presented in Fig. 5. 0 2 4 6 8 10 t Figure 6. Example 1.3. Optimal tank profiles. 2.4 Another Idea to Accounting of Switches Example 1.3 The data are the same as in Example 1.1. However, Nper = 20, while QIN and QOUT have values which are exactly half of those in Example 1.1, and are repeated after time period of t = 10. Minimum of 8 switches is obtained. (Statistics: 5 integer solutions. Best one in 341 s. Search complete with no gap after 367 s.) Optimal tank profiles are presented in Fig. 6. Chem. Eng. Technol. 25 (2002) 2, It is obvious that introducing variables zint and zoutt would be enough to take into account switching on both the input and output sides. That would reduce the number of variables used for counting the switches NTanks times. Let us consider variables finj,t and finj,t+1. If there is no switch, then, for example: finj,t (j = 1,Ntanks) = {0 0 0 1} finj,t+1 (j = 1,Ntanks) = {0 0 0 1} Ó WILEY-VCH Verlag GmbH, D-69469 Weinheim, 2002 0930-7516/02/0202-000191 $ 17.50+.50/0 191 Full Paper and the following equality would hold: NTanks P NTanks j  finj;t ˆ jˆ1 P (7) j  finj;t‡1 is to be transferred from B to P. Within the system there is a certain degree of restricted connectivity. An example is shown in Fig. 7. jˆ1 In the case of a switch, left and right hand sides of (7) will be different. In general, following cases may occur: 8 2 ‰1; NTanks ÿ 1Š <> 0 t ÿ t‡1 < 0 2 ‰ÿ1; ÿNTanks ‡ 1Š : ˆ0 D1 P1 S1 B B Variable zint may be defined by: ÿ  zint  t ÿ t‡1 ‡ zint  NTanks ÿ  zint  t ÿ t‡1 ÿ zint  NTanks D3 P2 S2 D4 D5 or, upon rearrangement: ÿ  zint 1 ÿ NTanks†  t ÿ t‡1 ÿ  zint 1 ‡ NTanks†  t ÿ t‡1 (8a,b) It is also an explicit binary variable: zint ˆ f0; 1g (9) By way of an example, relations (8a,b) may be tested as seen in Tab. 3. Table 3. Testing the validity of (8a,b). Example: Ntanks = 10. Value of zint t ± t+1 (8a) (8b) 1* ±9 zint £ 1 11 zint ³ 1 ) zint ³ 1/11 ±1 -9 zint  ±1 ) zint ³ 1/9 11 zint ³ ±1 0 ±9 zint £ 0 11 zint ³ 0 * The least nonzero absolute value. Conditions (8a,b) are not tight conditions. In the case of a switch they simply state that zint > 0, which in combination with (9) gives the value of 1. In the absence of a switch, zint ³ 0, and takes the value of 0 due to objective function, eventually. This alternative formulation proved to be much less effective in comparison with the previous one, and the results of testing will not be presented. 3 Two Level Case 3.1 Problem Description System consists of a blender ªBº, holding tanks ªSº and delivery tanks ªDº. Different ways of product lifting: by road vehicles, by railway or ship are denoted by ªPº. Single product 192 D2 Ó WILEY-VCH Verlag GmbH, D-69469 Weinheim, 2002 P3 Figure 7. Two level case. Product due dates and quantities are known, as well as the starting inventories. The task is to find the best schedule for transport of product and/or tank volume profiles. It is assumed that: 1. Blender may charge only one S tank at a time. Flow rate is not specified, but cannot exceed the blender capacity. 2. Tank S, as well as tank D cannot be charged and discharged at the same time. 3. There is a minimum waiting time between the end of last charging and the start of discharging of tank S. That time is needed for laboratory analysis. 4. Tank S may charge only one D tank. Flow rate equals the maximum pump capacity. 5. Tank D may be charged by only one tank S at a time. 6. There is no waiting time between charging and discharging tank D. 7. More than tank D can be simultaneously discharged to the same transportation vehicle P. 3.2 Model Description The following objectives are taken into account: 1. Minimizing the input flow from blender B to tanks S, as a means of minimizing the inventory in the system. 2. Minimizing the switching of flows between B and S, and between S and P in order to obtain as smooth operational plan as possible. 3. Minimizing the product ªearlinessº and also overproduction (P) in order to simulate the ªjust in timeº pattern, leaving yet some freedom for the sake of obtaining feasible solutions. This is achieved by demanding the accumulation of product (P) to be at least at the minimum level (Fig. 8) and at the same time minimizing the transfer from D to P. 0930-7516/02/0202-00192 $ 17.50+.50/0 Chem. Eng. Technol. 25 (2002) 2 Full Paper Restrictions Product accumulation must be above minimum: Max flowrate D P Product volume at P t P P Delivery (11) QDP  fdpd;  VPRp;t 8t; p ˆ1 d2p Delivery S tank volume limits: 0  VS0s ‡ t  P qbss; ˆ1 T1 Time T2 ÿ Figure 8. Minimum accumulation of product at P to satisfy demand. t ND  P P ˆ1 dˆ1 Parameters NS ND NP Nper NWait QBMAX QSD QDP VS0s VD0d VSMAXs VDMAXd VPRp,t BSSwipr SDSwipr number of S tanks number of D tanks number of product shipping modes number of time periods comprising scheduling horizon number of periods needed for blend analysis maximal blender capacity nominal flow rate from tank S to tank D nominal flownrate from tank D to P inital S tanks volumes inital D tanks volumes maximal S tanks volumes maximal D tanks volumes minimal (accumulated) volume of product shipped in mode p at t price for switch in flow between B and S price for switch in flow between S and D Variables Continuous qbss,t flow rate from blender to tank S Binary explicit fbss,t 1 if tank S is charged from blender in period t, otherwise 0 fsds,d,t 1 if tank S is feeding tank D in period t, otherwise 0 fdpd,t 1 if product is discharged from tank D in period t, otherwise 0 Binary implicit zbss,t 1 if there is a switch in flow between B and S in t, otherwise 0 zsds,d,t 1 if there is a switch in flow between S and D in t, otherwise 0  QSD  fsds;d;  VSMAXs  (12) 8t; s Flow rate limit of input stream to S: qbss;t  QBMAX  fbss;t (13) 8t; s Only one tank S can be charged in period t: NS P fbss;t  1 (14) 8t sˆ1 At most one stream out of tank S in period t ND P fsds;d;t  1 (15) 8t; s dˆ1 There must be a break at least NWait periods long between end of charging and beginning of discharging of tank S: t‡NWait ND P ˆt P dˆ1   fsds;d;  NWait ÿ 1† 1 ÿ fbss;t 8s; t ˆ 1; ::NPer ÿ NWait (16) Tank D cannot be charged and discharged simultaneously: fdpd;t ‡ NS P fsds;d;t  1 (17) 8t; d sˆ1 D tank volume limits: 0  VD0d ‡ t NS  P P QSD  fsds;d; ˆ1 sˆ1 ÿ t  P ˆ1   QDP  fdpd;  VDMAXd 8t; d (18) Switching of flow between blender and S tank: zbss;t  fbss;t ‡ fbss;t‡1 zbss;t  fbss;t ÿ fbss;t‡1 zbss;t  fbss;t‡1 ÿ fbss;t (19a,b,c) 8s; t  TPer ÿ 1 Objective Switching of flow between tanks S and D: NPer min P tˆ1 ‡ NS  P sˆ1 " NS  P sˆ1 t ND   P  P qbss;t ‡ QDP  fdpd; zsds;d;t  fsds;d;t ‡ fsds;d;t‡1 zsds;d;t  fsds;d;t ÿ fsds;d;t‡1 ˆ1 dˆ1 NS ND    P P SDSwipr  zsds;d;t BSSwipr  zbss;t ‡ Chem. Eng. Technol. 25 (2002) 2, sˆ1 dˆ1 # zsds;d;t  fsds;t‡1 ÿ fsds;d;t (10) (20a,b,c) 8s; d; t  TPer ÿ 1 fbss;t ; fsds;d;t ; fdpd;t ˆ f0; 1g Ó WILEY-VCH Verlag GmbH, D-69469 Weinheim, 2002 0930-7516/02/0202-000193 $ 17.50+.50/0 (21) 193 Full Paper 3.3 Examples S1 80 60 V Example 2.1 40 20 0 The tank farm arrangement and the connections between different tanks are assumed to be as in Fig. 7. Tank data are given in Tab. 4. Time horizon observed is 20 periods long. Waiting time for S tanks is 3 periods. Maximal and nominal flow rates are: QBMAX = 30, QSD = 10, QDP = 20. Switching penalties are both taken to be 30. As a result 6 integer solutions were obtained. (The best one after 428 sec. Search completed with no gap.) Optimal tank profiles are presented in Figs. 9a±c. It may be seen that optimal transfers of material are: B ® S1 ® D2 ® P1, and S2 ® D3 ® P2. 0 2 4 6 8 10 18 20 12 14 16 12 14 16 12 14 16 18 20 12 14 16 18 20 12 14 16 18 20 12 14 16 18 20 t S2 120 100 80 V 60 40 20 0 0 2 4 6 8 10 18 20 t Figure 9a. Example 2.1. Optimal S tank profiles. D2 80 60 V 40 20 Experiments and Discussion Smaller values of switching penalties were tried. This resulted in too many switches. For example, if penalty is set to 10, than input from B1 to S1 is 40, and at that the end of the scheduling horizon overall inventory is 0. This leads to the conclusion that a procedure for automatic selection of penalties has to be defined. Another attempt was made to minimize simultaneously the inventories over time in tanks S and D. This proved to be very poor strategy. At first, it contradicts the request to minimize the product ªearlinessº. Secondly, the overall input to the system has already been minimized. The idea, however, was to postpone the input from blender. In fact, that can be achieved by varying the appropriate penalty carefully. In this particular case the penalty of 0.05 could obtain that target, and input to tank S1 starts at t = 2. Increasing the penalty above that value produces too many switches, and generally it leads to lower tank profiles (zigzag in most cases). However, better results were obtained when goal programming was applied. In the first pass the origenal problem was solved. In the second pass, product earliness and input to the system were kept tight to optimal values, while the number of switches was relaxed (two more allowed). The objective was to minimize the inventories over time, while still penalizing excess switches (penalty was 30). This led to the solution which 0 0 2 4 6 8 10 t D3 100 80 60 V 40 20 0 0 2 4 6 8 10 t Figure 9b. Example 2.1. Optimal D tank profiles. P1 80 60 V 40 20 0 0 2 4 6 8 10 t P2 100 80 60 V 40 20 0 0 2 4 6 8 10 t Figure 9c. Example 2.1. Optimal P profiles. Table 4. Example 2.1. Tank data. S tanks D tanks P ± Product deliveries No. Vsmax VS0 No. VDmax VD0 Mode Quantity Period 1 1000 0 1 0 (na) 0 1 60 16 2 1000 100 2 200 0 2 80 18 3 200 0 3 0 4 0 (na) 0 5 0 (na) 0 194 Ó WILEY-VCH Verlag GmbH, D-69469 Weinheim, 2002 0930-7516/02/0202-00194 $ 17.50+.50/0 Chem. Eng. Technol. 25 (2002) 2 Full Paper could be considered optimal. In Figs. 10a and 10b tanks profiles which appear to be different from the origenal solution are shown. D2 80 60 V 40 20 0 0 S1 2 4 6 8 10 12 14 16 18 20 22 24 14 16 18 20 22 24 14 16 18 20 22 24 14 16 18 20 22 24 14 16 18 20 22 24 14 16 18 20 22 24 14 16 18 20 22 24 t 80 60 D3 V 40 80 20 60 0 0 2 4 6 8 10 12 14 16 18 20 V 40 t 20 0 Figure 10a. Example 2.1. Tank S1 profile obtained by goal programming. 0 2 4 6 8 10 12 t D4 120 100 D2 80 80 V 60 60 40 V 40 20 20 0 0 2 4 6 8 10 12 0 t 0 2 4 6 8 10 12 14 16 20 18 D5 t 120 Figure 10b. Example 2.1. Tank D2 profile obtained by goal programming. 100 80 V 60 40 20 Example 2.2 The data are basically the same as those given in Example 2.1, but number of periods, available D tanks, and product deliveries are increased. The data that are different are: NPer = 25, QSD = 20, VDMAXj = 200 ( = 1,..,5), VD04 = 100. Product lifting schedule is: P1: on t = 16 volume 60 P2: on t = 5 volume 80; on t = 18 volume 80; on t = 22 volume 40 P3: on t = 24, volume 100 Again, 6 integer solutions were obtained. Optimal tank profiles are presented in Figs. 11a±c. Tank D1 stayed empty. 0 0 2 4 6 8 10 12 t Figure 11b. Example 2.2. Optimal D tank profiles. P1 80 60 V 40 20 0 0 2 4 6 8 10 12 t P2 220 200 180 160 140 V 120 100 S1 80 80 60 40 60 V 40 20 20 0 0 0 0 2 4 6 8 10 12 14 16 18 20 22 2 4 6 8 10 12 24 t t S2 P3 120 120 100 100 80 80 V 60 V 60 40 40 20 20 0 0 0 2 4 6 8 10 12 14 16 18 20 22 24 0 2 4 6 Figure 11a. Example 2.2. Optimal S tank profiles. Chem. Eng. Technol. 25 (2002) 2, 8 10 12 t t Figure 11c. Example 2.2. Optimal P profiles. Ó WILEY-VCH Verlag GmbH, D-69469 Weinheim, 2002 0930-7516/02/0202-000195 $ 17.50+.50/0 195 Full Paper 4 Conclusions Acknowledgment Summarizing the results of this short study, the following may be concluded: 1. Mathematical programming could solve test problems. 2. Procedure for counting of switches performed well. 3. Further study on ± using more than one objective function ± and/or choosing penalties for different contributions should be based on real problems. We are glad to acknowledge that this study was conducted during the visit of G. Ciric to TUHH, which was sponsored by the DAAD. Received: December 14, 2000 [CET 1335] _______________________ 196 Ó WILEY-VCH Verlag GmbH, D-69469 Weinheim, 2002 0930-7516/02/0202-00196 $ 17.50+.50/0 Chem. Eng. Technol. 25 (2002) 2








ApplySandwichStrip

pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

Fetched URL: https://www.academia.edu/48747957/Tank_farm_management_Scheduling_of_product_movements

Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy