(61l) Reducing Solution Times of Continuous Production Scheduling MILP Models with Record Keeping Variables
AIChE Annual Meeting
2023
2023 AIChE Annual Meeting
Computing and Systems Technology Division
Interactive Session: Systems and Process Operations
Tuesday, November 7, 2023 - 3:30pm to 5:00pm
In this paper, we present strategies for reformulating continuous production scheduling MILP models. We introduce several novel integer variables, which we refer to as record keeping variables (RKVs), that MILP solvers are able to exploit leading to a reduction in total solution times. RKVs are incorporated into the model by setting them equal to some summation of binary variables. In continuous process scheduling models, there are two main binary variables: Xi,j,n, which denotes a task i is processed on unit j at time n and YSi,j,n, which denotes a run of task i is started on unit j at time n; runs are a string of consecutive task executions. One example of an RKV is NYi,j= ânâN YSi,j,n â iâI, jâJ, which essentially keeps a record of the number of runs of task i that are processed on unit j over all time periods n. NYi,j is bounded from zero to the maximum number of times a run can be executed during the scheduling horizon. Other RKVs can be implemented based on the total number of tasks i that are executed, the total number of times a unit j is utilized to process a task, and the total number of time periods n that tasks are executed during. There are 10 RKVs that can be created; five are based on the Xi,j,n binary variable, and five based on the YSi,j,n binary variable.
Results were collected using each RKV individually as well as in combination with other RKVs in order to observe computational performance changes. Overall, models with RKVs based on YSi,j,n perform better than the models using RKVs based on Xi,j,n. We observe that NYi was the most impactful, and the formulation that included NYi alone solved about 40% of the instances the fastest. The superscript âYâ denotes that it is keeping record of the YSi,j,n binary variable since there are also RKVs with the superscript âXâ that keep a record of the Xi,j,n binary variable. The subscript âiâ denotes that it is written for every task i because it keeps record of the total number of runs of i processed over all units and time periods. There are other RKVs that are written for every unit j, every time point n, or a combination of these indices.
While implementing these RKVs into a model may seem trivial, their implementation leads to dramatic computational improvements. One possible explanation for these results is that by branching on NYi, the solver is able to bound the number of runs of each task, thus efficiently eliminating suboptimal or infeasible schedules and closing the optimality gap more quickly. It is also worth noting that this reformulation technique is not limited to only continuous CPS models; it can also be extended to various other types of MILP models that utilize integer variables.
References:
[1] S. Velez and C. T. Maravelias, 2013, Reformulations and branching methods for mixed-integer programming chemical production scheduling models, Industrial and Engineering Chemistry Research 52, 10, 3832â3841.