#### Abstract

Unit-specific event-based continuous-time model has inaccurate calculation problems in involving resource constraints, due to the heterogeneous locations of the event points for different units. In order to address this limitation, a continuous-time unit-specific event-based and slot-based hybrid model framework with hierarchical structure is proposed in this work. A unit-specific event-based model without utility constraints is formulated in upper layer, and a slot-based model is introduced in lower layer. In the hierarchical structure, the two layers jointly address the short-term production scheduling problem of batch plants under utility consideration. The key features of this work include the following: (a) eliminating overstrict constraints on utility resources, (b) solving multiple counting problems, and (c) considering duration time of event points in calculating utility utilization level. The effectiveness and advantages of proposed model are illustrated through two benchmark examples from the literatures.

#### 1. Introduction

Short-term production scheduling for batch process is extensively studied in the last two decades. Most literatures made considerable efforts to decrease the number of integer variables and model size to pursue better computational performance [1–3]. However, the resource consideration in production scheduling has not gained enough attention. Resources are closely related to production. In multipurpose batch plants, resource restrictions can affect product pathways and have a significant impact on plant profitability [4]. Moreover, not considering resources will lead to the infeasibility of production scheduling. Therefore, considering resource constraints in production scheduling is vital, especially for the shared resources. The resources consumed in production are usually classified into two types. One type is discrete resource (e.g., processing units, manpower, and tools) and the other type is continuous resource (e.g., utilities and materials).

Regarding discrete resource, some typical algorithms, such as rescheduling algorithm, relaxation method, and particle swarm optimization algorithm, have been utilized successively in production scheduling with discrete resource constraints. Méndez and Cerdá [5, 6] firstly proposed a MILP formulation where all discrete resources including processing units are treated uniformly and then developed a new MILP reactive scheduling algorithm to revise the short-term schedule of the resource constrained multistage batch facilities due to unexpected events like equipment breakdowns and worker absenteeism. Pinto and Grossmann [7] introduced a novel relaxation method into continuous-time MILP scheduling models and efficiently modeled discrete resource constraints (e.g., number of operators and fixed amount of electricity). Zhang et al. [8] proposed a hybrid discrete particle swarm optimization algorithm to solve the dual-resource constrained job shop scheduling problem with resource flexibility. As results of these contributions, problems including processing unit and tool allocation and manpower changes were able to be solved effectively.

Utilities as one of the continuous resources are studied frequently in the literatures. Discrete-time representation method is based on a uniform discretization of time, which makes it easier to handle utility constraints in a uniform model. Lindholm and Giselsson proposed a discrete-time MIQP model to address the utility disturbance in production process with the aim of minimizing the total economic loss of site [9]. In order to involve utility consideration in general and large-scale industrial sites, Lindholm and Nytzén [10] introduced a general framework for production scheduling (PS) and detailed production scheduling (DPS) using a two-level hierarchical approach. The PS and DPS are both represented by discrete-time models. Wang et al. [11] proposed a planning and scheduling model framework with hierarchical structure. In the scheduling layer, a variperiod discrete-time presentation model is formulated to address utility disturbance.

Although the discrete-time representation method can deal with utility constraints in production scheduling easily, it still has some distinct limitations compared with the continuous-time model, including the following: (i) it corresponds to an approximation of the time horizon and (ii) it may result in an unnecessary growth in the number of binary variables. Consequently, in the overall size of the model, it usually requires an exceptionally large number of integer variables for industrial applications [12]. To solve the inherent limitations of the discrete-time models, methods based on continuous-time representation have been developed. During the last two decades, numerous formulations have been proposed based on continuous-time representation, including slot-based, global-event-based, unit-specific event-based, and precedence-based continuous-time formulations. Continuous-time representation model has been used frequently to address utility constraints in production scheduling and has been studied by Behdani et al. [13], Susarla et al. [14], Shaik and Vooradi [15], Méndez and Cerdá [16], and so forth.

It is noteworthy that unit-specific event-based model is considered as the most general and rigorous representation of time used in short-term scheduling and also has received some attention in utility constraint problems. Janak et al. [12] (referred to as JLF model in this work) proposed an enhanced unit-specific event-based formulation for short-term scheduling of multipurpose batch processes. This model incorporated and elaborated several features including resource constraints. Shaik and Floudas [17] (referred to as S&F model in this work) introduced a novel unit-specific event-based short-term scheduling model with three-index binary and continuous variables, which efficiently merges the problems with and without resources into a unified, generic common framework. Vooradi and Shaik [18] (referred to as S&V model in this work) enhanced the three-index model of Shaik and Floudas [17] by effectively incorporating the concept of active task throughout the model, due to which the proposed formulation has fewer constraints and big- terms.

Recently, inaccurate calculation problems of unit-specific event-based model in involving resource constraints are presented in some literatures [12, 17, 19]. Because of the heterogeneous locations of the event points for different units, the utility utilization levels for tasks performed in different units at the same event points are difficult to be calculated. Moreover, the multiple counting of utility consumption frequently occurs, which leads to an unreal shortage of utility. These limitations result in the inaccuracy of utility record keeping.

In order to solve the above inherent limitations, in this work, we proposed a unit-specific event-based and fixed slot-based continuous-time hybrid model framework with hierarchical structure to address the inaccurate utility calculation problems. A unit-specific event-based continuous-time model is used to optimize the production schedule without utility consideration in upper layer, and the obtained solutions of the upper layer are regarded as the input of the lower layer model which is based on fixed slot-based time representation with utility constraints. A better scheduling solution is found compared with historical literatures through iterations between upper and lower layers.

#### 2. Problem Statement

Continuous-time models are generally classified into slot-based, global-event-based, unit-specific event-based, and precedence-based formulations. In the slot-based models, the time horizon is divided into several unequal time intervals, and the tasks have to start and terminate at an event [20]. Global-event-based models use a set of events that are common across all units, and the event points are defined at either the beginning or end (or both) of each task in each unit [19]. Regarding the unit-specific event-based models, the unit refers to equipment (e.g., reactor) occupied by processing tasks in production. Event points are a sequence of time instances located along the time axis of a unit, and each event point represents the beginning of a task or the utilization of the unit. The location of the event points is different for each unit, allowing different tasks to start at different time in each unit for the same event point [12]. For sequential processes, other alternative approaches based on precedence relationships have also been developed which do not require the postulation of any events or time slots [17]. In this work, what we focus on is the formulations based on unit-specific event-based continuous-time representation.

Event-based continuous-time representation allows event points to be located in any timing in scheduling horizon. The start and finish times are allotted to each event point. In addition, unit-specific event-based continuous-time representation also allows the start and finish times of tasks in different units corresponding to the same event point to take place at different timing. As shown in Figure 1, at event point , the start time and finish time of tasks , , and are all different. The unit-specific event-based model considers the time horizon in a “true” continuous-time form without requiring tiny time slots and requires relatively lower number of event points. Thus, unit-specific event-based continuous-time model is considered to be more realistic and precise compared with the global event-based continuous-time model.

However, for production scheduling involving shared resources, the unit-specific event-based continuous-time model is defective. Some shared resources, for instance, utilities, are frequently consumed by different units at the same time. At each event point, total utility utilization levels should be calculated to meet the supply of utilities. But in the unit-specific event-based continuous-time representation, the start and finish times of different units at the same event point are inconsistent, which hinders the utilization of unit-specific event-based model in production scheduling involving shared resource constraints.

In involving shared resource constraints, primary limitations of unit-specific event-based continuous-time model are described as follows.

##### 2.1. Overstrict Constraint Problem about Utility Resource

JLF [12], S&F [17], and V&S [18] models enforce the start time of tasks consuming the same utility to be equal to if the tasks are active at event , where is start time at which there is a change in the consumption of utility at event . Constraints related to start and finish times of tasks consuming the same utility and start time of utility given in V&S [18] model are as follows:

In (1), is a large positive number in big- constraints. As shown in Figure 2, we assume that tasks , , and are performed in unit 1, unit 2, and unit 3, respectively, and tasks , , and all consume the same utility at event point . Equation (1) can be rewritten as follows:

Combining (2) and (3) yieldsSimilarly,

The start times of , , and are enforced to be equal to , which results in the fact that the constraints are too restrictive and the scheduling solution will not be optimal.

##### 2.2. Multiple Counting Problem

The consumptions of utilities consumed by tasks which continue over several event points are multiple counted in JLF, S&F, and V&S models:

As shown in Figure 3, we assume that task is performed in unit 1; tasks and are both performed in unit 2; task continues from events to ; tasks and are active at and , respectively. Three tasks all consume the same utility. At events and , (6) from V&S model can be rewritten by

As given in (7), the consumption of utility consumed by task from event point to event point is calculated twice. This repetitive counting leads to an inaccurate calculation about the consumption of utility and results in an unreal shortage of utility.

##### 2.3. Problem of Missing Duration Time of Event Points

In JLF, S&F, and V&S models, the consumption constraint about utility is considered but not involving the duration time of event points. As given by (6), the supply of utility is constant no matter how long the duration time of event points is. As shown in Figure 4, task is active from event points to and consumes certain utility. Assume that the duration times of event points , , and are hours, hours, and hours, respectively. The supply of utility at event points , , and is obviously different. Consequently, the supply of utility should be considered according to the duration time of event points.

Due to the heterogeneous locations of the event points for different units, utility constraints are difficult to be involved in unit-specific event-based continuous-time model in a uniform framework. In this work, a hierarchical model framework combining unit-specific event-based continuous-time presentation and fixed slot-based continuous-time presentation is proposed. As shown in Figure 5, the scheduling solution without utility consideration presented by unit-specific event-based method is mapped into a uniform time presentation, and the scheduling horizon is divided into several fixed time slots. By this time presentation method, utility constraints can be calculated easily and accurately.

#### 3. Mathematical Formulation

Framework structure of upper and lower scheduling models proposed in this work is presented in Figure 6. In the upper layer, utility constraints are not involved. The objective of this layer is the maximization of profit. The calculated solutions of upper layer are allocated down to lower layer as assignments, including processing amount of materials, start time and finish time of tasks. The objective of lower layer is to complete the scheduled processing amount of materials (including raw materials, intermediate products, and final products), within the scheduled time under utility constraints.

##### 3.1. Upper Layer Model

Mathematical formulations in upper layer are based on the model proposed by Vooradi and Shaik [18], which allow tasks to continue over several event points, and incorporate the concept of active task. Parameter is introduced to define the maximum number of event points over which a task is allowed to continue.

###### 3.1.1. Allocation Constraint

Consider

In each unit, at most one task can be active at each event point as given by (8). If task is active from event point to event point , ; otherwise .

###### 3.1.2. Capacity Constraints

Consider

The capacity constraints express the fact that if task starts at event point and ends at event point , the amount of material processed by task will be limited by the upper and lower bounds on the production capacity. If the task is not active, then these constraints enforce zero batch size. The parameter is a feedback from lower layer in the th iteration, and the formulations about are given by (10) to (12), where is iteration number.

If ,

If , namely it is the first time that variable is fed back,

If ,

###### 3.1.3. Material Balances

If , the amount of states (raw material or intermediate) at event point is equal to the initial value and decreased by any amount consumed at event point , as given by (13). The amount of final product at event point is calculated as initial value, as given by (14):

If , the amount of a state at current event point is adjusted by any amounts produced by tasks which ends at the previous event and by any amounts consumed by the tasks which starts at the current event, as given by

###### 3.1.4. Duration Constraints

If , the finish time of task at event point is equal to the start time plus duration time of the task, which is calculated by a constant term and a variable term :

If , the duration constraints are given jointly by (17) and (18). If task is active from event point to event point , the finish time of task at event point is equal to the sum of start time of task at event point and duration time of the task. Otherwise, (18) is relaxed, and finish time is greater than or equal to the start time:

###### 3.1.5. Sequencing Constraints

*(1) Same Task in the Same Unit*. The constraint for same task in the same unit is given by (19) for and by (19) and (20) for . These two constraints enforce the finish time at current event to be equal to the start time at next event when the task is active and not ending at current event :

*(2) Different Tasks in the Same Unit.* Consider

Equation (21) is written for two different tasks performed in the same unit at event points and , respectively. If task is active at event point , the start time of task must be greater than or equal to the finish time of that previous task .

*(3) Different Tasks in Different Units.* Consider

For different tasks that produce or consume the same state, according to the production recipe, the start time of the consuming task at the next event is enforced to be later than the finish time of the producing task at the current event as given by (22). Otherwise, the constraint is relaxed and the two times are not related.

###### 3.1.6. No-Wait Condition

The constraint is written for different tasks and that produce or consume the same state consecutively with the “zero-wait” (ZW) condition because of storage restrictions on the intermediate material. Combined with (22), the two constraints enforce that task in unit at event point starts immediately after the end of task in unit at event point if both tasks are activated:

###### 3.1.7. Storage Constraints

In this work, infinite storage and dedicated finite intermediate storage policies are considered. Equation (24) expresses the limit on storage capacity. For handling dedicated finite intermediate storage case, (25) is used to avoid real time storage violations without the need for considering storage as a separate task. This constraint needs not to be written at the last event since the produced material is allowed to wait in the same processing unit at the last event:

###### 3.1.8. Tightening Constraint

Consider

The sum of the durations of all tasks suitable in each unit should be less than the scheduling horizon as given by (26).

###### 3.1.9. Bounds on Variables

Consider

The nonpermissible cases of the three-index binary and continuous variables are eliminated in (27), so that the corresponding variables are fixed to zero. General bounds are added to different continuous variables in (28). The start and finish times of all processing tasks must be within the time horizon.

###### 3.1.10. Objective Function: Maximization of Profit

Consider

The objective function is the maximization of profit, and the total amount of the final products produced by the end of last event is calculated by (29).

##### 3.2. Lower Layer Model

The input of the lower layer model is the scheduled processing amount of materials and the start and finish times of tasks from upper layer.

###### 3.2.1. Resource Constraint

Consider

The utility utilization level at slot is the sum of amounts used by tasks that consume the utility at slot , which is composed of a constant term and a variable term . The utility utilization level is limited by the total supply of utility and duration time of slot . In this work, parameter is introduced to present the duration time of slot, which makes the supply of utility increase with time rather than constant.

###### 3.2.2. Batch Constraints

ConsiderBatch constraints express a limit that the assignments from upper layer scheduling solution should be greater than or equal to the processing amount of task within corresponding slots. Because the event points in upper lower are divided into several slots, there is a mapping between event points and slots. As shown in Figure 5, for unit 3, the event point starts from and ends at , and the event point starts from and ends at , where . Event points and are divided into four slots, so the mapping between event and slot is , also . Here, in the th iteration, variable from upper layer is equal to parameter in (31) in lower layer.

###### 3.2.3. Capacity Constraint

The capacity constraint of batch size should also be involved in the lower layer model. The formulation is similar with that in the upper layer model:

###### 3.2.4. Objective Function

The objective of lower layer is to complete the scheduled processing amount of materials within the scheduled time which is from upper layer calculated solutions under utility constraints. Thus, the objective function is to minimize the difference between the scheduled processing amount of materials from upper layer and the processing amount in lower layer. The last term in the objective function is a penalty on fluctuation of production rate. Coefficient is a penalty term and set to 0.0001.

##### 3.3. Iteration between Upper and Lower Layers

The optimal solution of the proposed model is found through iterations between upper layer and lower layer. Firstly, production scheduling problem is solved by upper layer model without utility consideration. The solutions of upper layer are allocated to the lower layer as assignments, which include processing amount of materials in each event point and the start and finish times of tasks at each event point and . The objective of the lower layer is to complete the scheduled processing amount of materials within the scheduled time which is from upper layer calculated solutions under utility constraints. If the first term of objective function in lower layer is equal to zero, the scheduling solution from upper layer is feasible under utility limitations. Otherwise, the assignments cannot be completed with utility constraints. The parameter will be calculated and fed back to the upper layer. The flowchart diagram is shown as in Figure 7.

#### 4. Computational Case Studies

In this section, we choose two examples from the existing literatures involving short-term scheduling of batch plants with resource consideration. Both two examples are given by STN representation, solved using Lingo 11.0 with a 2.20 GHz computer. The effectiveness and the advantages of the proposed hierarchical model are discussed in Sections 4.1 and 4.2.

##### 4.1. Example 1

The first example is introduced firstly by Maravelias and Grossmann and has been studied in several literatures [12, 18, 19]. As shown in Figure 8, this example involves four tasks in three units (reactors) processing seven states. The corresponding data are given in Tables 1, 2, and 3. There are two types of reactors available for the process (types I and II) with different number of corresponding units available: two reactors (RI1 and RI2) of type I and one reactor (RII) of type II. Reactions T1 and T2 require type I reactor, while reactions T3 and T4 require type II reactor. A task which can be performed in different units is considered as multiple, separate tasks, thus leading to six separate tasks (), each suitable in one unit. Furthermore, reactions T1 and T3 require heat, provided by steam (HS) produced within limited amounts in the plant, while reactions T2 and T4 are exothermic and require cooling water (CW), also available in limited amounts. Due to safety reasons and temperature restrictions, the heat integration of the process is not possible.

This example includes variable batch sizes, processing time, and utility requirements. The minimum batch size for all tasks is the half of maximum capacities of units. Processing times for all tasks are functions of the batch size. Utility requirements include a fixed term as well as a variable term proportional to the batch size. The utility available is assumed to be 30 kg/min. For the raw materials (F1 and F2) and final products (P1 and P2), unlimited storage is available (say 1000 kg), while for the intermediates (I1, I2, and I3), finite storage is available.

In example 1, scheduling horizon is 8 hours and the maximum number of event points is set to 1. Solution of this example is compared with example 10b which is studied by V&S [18]. The objective function of example 1 is to maximize profits. The optimal solution of example 1 without utility consideration is 6289.583$, and the optimal solution of V&S model is 5227.778$ under utility consideration. The optimal solution of the proposed model is 5525.000$ under utility consideration with six events and with higher events as well. The optimal production schedule and utility utilization levels of the proposed model and V&S model are, respectively, provided in Figures 9 and 10.

The optimal production schedule of the proposed model is illustrated by the Gantt chart of units in Figure 9. Levels of utilization of steam and cooling water at the optimal solution are given in the plots in Figure 9. Lines in Gantt charts show each event point at which a task is active. Values below the lines are numbers of tasks, and values above the lines are processing amount of corresponding tasks. As shown in Figure 9, 77.5 kg of P1 and 80 kg of P2 are produced. The objective function of maximizing profits is 5525$. Comparing with the V&S model, 55 kg of P1 and 89.4 kg of P2 are produced, as shown in Figure 10. The objective function of maximizing profits in V&S model is 5227.778$. The reason for the less profit of V&S model is caused by multiple counting problems mentioned in Problem Statement section. V&S model allows tasks to extend over more than one event point. The same task extending over two adjacent event points appears as two separate tasks, each with the same batch size. Also, resource utilization levels are determined at each event point and thus do not reflect the actual utility consumption levels. As shown in Figure 10, task 4 extends over two event points; that is, task 4 starts at event point and ends at event point . The consumption of CW for task 4 from event point to event point is counted in event point and counted repeatedly in event point , which leads the utilization level of CW during the first interval to reach the maximum 30 kg/min. Moreover, the consumption of CW for task 4 at the last half of second interval should be zero. The shaded area shown in the utility utilization levels for CW in Figure 10 is an unreal statistics. The unreal statistics will lead to an unreal shortage of utility. Thus, the processing amount of optimal schedule calculated by S&V model is limited by the unreal shortage of utility.

In the proposed model, event points of different units are mapped into a uniform time presentation, which avoids the overestimation of utility utilization. As shown in Figure 9, the consumption of CW in slot 3 is zero.

In the V&S model, utility requirements include a fixed term as well as a variable term proportional to the batch size, as given by

The utility requirements in the proposed model also consist of a fixed term as well as a variable term. According to the mapping relationship between and , there is a relationship between , in (35) and , in (30):

The trajectories for searching the optimal solution of upper layer and lower layer are shown in Figure 11 and the data are given in Table 4. Firstly, upper layer searches the optimal solution without involving resource constraints and then puts solutions into lower layer model. The iterations between upper and lower layers terminate when no further improvement for the objective function can be achieved. Through eight iterations, the optimal solution 5525.000$ is found.

##### 4.2. Example 2

Example 2 is a standard case for short-term scheduling of multipurpose batch plants and has been studied frequently by many authors [17, 18]. Two different products are produced through five processing stages: heating, reactions 1, 2, and 3, and separation, as shown in the STN representation of the plant flow sheet in Figure 12. Since each of the reaction tasks can take place in two different reactors, each reaction is represented by two separate tasks. In order to demonstrate the effectiveness of proposed model, we suppose that all reactions 1, 2, and 3 require a certain utility. The utility available is assumed to be 200 kg/min. The relevant data are shown in Table 5. The initial inventory level for all intermediates is assumed to be zero and unlimited storage capacity is assumed for all states. The prices of products 1 and 2 are $10/mu.

In this example, scheduling horizon is 10 hours and the maximum number of event points is set to 1. Solution of this example is compared with example 2b studied by V&S [18]. The optimal solution of example 2 without utility consideration is 1962.695$, and the optimal solution of V&S model is 1528.208$ under utility constraints. The optimal solution of the proposed model in this work is 1928.526$ under utility constraints with six events and with higher events as well. The optimal production schedule and utility utilization levels of the proposed model and V&S model are provided in Figures 13 and 14.

As shown in Figure 13, 78.10 mu of P1 and 114.75 mu of P2 are produced. The objective function of maximizing profits is 1928.526$. Comparing with the V&S model, 61.72 mu of P1 and 91.08 mu of P2 are produced, as shown in Figure 14. The objective function of maximizing profits in the V&S model is 1528.208$. The less profit of V&S model in example 2 is caused by overstrict constraint problems and multiple counting problems mentioned in Problem Statement section. The two discrepancies of V&S model both appear in this case. As shown in the Gantt chart of Figure 14, one discrepancy is derived from forcing the start time of task 6 and task 7 at event point to be equal, which leads to a large batch size processed in event point and results in a resource shortage. Compared with proposed model in this work, the start times of task 6 and task 7 at event point are not forced to be equal, as shown in the Gantt chart of Figure 13. The other discrepancy is double counting of utility utilization. As shown in the Gantt chart of Figure 14, task 5 continues over two event points. It starts at event point and ends at event points . The utility utilization level of task 5 is counted at event point and counted repeatedly at event point . This miscounting of utility utilization results in the fact that other tasks active at event and cannot get enough resource, which may also result in the reduction of processing amount and further lead to less profit.

The trajectories for searching the optimal solution of upper layer and lower layer are shown in Figure 15 and the data are given in Table 6. Firstly, upper layer searches the optimal solution without considering resource constraints and then puts the solutions into lower layer model. Through six iterations, the optimal solution 1928.526$ is found.

#### 5. Conclusions

In this work, some limitations of continuous-time unit-specific event-based model with utility constraints are stated, including the following: (a) overstrict constraint problem about utility resource, (b) multiple counting problems, and (c) missing of duration time of event points. To solve these problems, a framework with hierarchical structure is proposed. In upper layer, a unit-specific event-based model is used, and a slot-based model is introduced in lower layer to jointly address the short-term production scheduling problem of batch plants under utility consideration. The effectiveness and advantages of proposed model are illustrated by two benchmark examples in the existing literatures.

#### Nomenclature

*Upper Layer*

*Subscripts*

Task | |

: | Unit |

: | Event |

: | State |

: | Utility |

: | Time slot |

: | Iteration number. |

*Sets*

: | Tasks |

: | Tasks which can be performed in unit |

: | Tasks which produce state |

: | Tasks which consume state |

: | Tasks which consume utility |

: | Units |

: | Units which are suitable for performing task |

: | Total event points postulated in the time horizon |

: | All states |

: | States that are raw materials |

: | States that are final products |

: | States that are intermediates |

: | Utilities |

: | Iteration numbers |

: | Intermediate states with dedicated finite intermediate storage and zero wait condition, respectively. |

*Parameters*

: | Minimum batch size of task |

: | Maximum batch size of task |

: | Initial amount available for state |

: | Maximum storage capacity for state |

Feedback of task that starts at event and ends at event from lower layer which is added in capability constraints in upper layer, when the th iteration | |

: | Proportion of state consumed by task , |

: | Proportion of state produced by task , |

: | Fixed processing time of task |

: | Linear coefficient of the variable term of the processing time of task |

: | Price of state |

: | Limit on the maximum number of events over which a task is allowed to continue |

: | Large positive number in big- constraints |

: | Short-term scheduling horizon. |

*Binary Variables*

: | Binary variable for task that starts at event and ends at event . |

*Positive Variables*

Amount of material processed by task starting at event and ending at event in the th iteration, which has a mapping relationship with parameter in lower layer | |

: | Excess amount of state that needs to be stored at event |

: | Start time of a task at event |

: | End time of a task at event . |

*Lower Layer*

*Subscripts*

: | Task |

: | Utility |

: | Time slot |

: | Iteration number. |

*Sets*

: | Tasks |

: | Tasks which consume utility |

: | Utilities |

: | Time slots |

A subset of tasks and slots which matches set where task is active from event to event in upper layer | |

: | Iteration numbers. |

*Parameters*

: | Coefficient of constant term for utility consumption by task in slot |

: | Coefficient of variable term for utility consumption by task |

: | Maximum availability of utility |

: | Duration time of slot in the th iteration |

Duration time of event at which task is active in upper layer and corresponding to the duration time from slot to slot in lower layer at the th iteration | |

: | Assignment from upper layer for task active from slot to slot in the th iteration, which has a mapping relationship with |

: | Penalty term for avoiding fluctuation of production rate. |

*Binary Variables*

: | Binary variable for task that is active at slot . |

*Positive Variables*

: | Backlog of task from slot to slot in the th iteration, which has a mapping relationship with |

: | Amount of material processed by task at slot in the th iteration |

Statistics for smoothness of production rate in the th iteration | |

: | Statistics for completion of assignment from upper layer in the th iteration. |

#### Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

#### Acknowledgments

This project is supported by the National High-Tech R&D Program of China (863 Program: 2014AA041803) and the National Natural Science Foundation of China (NSFC: 61134007).