Amathematical model for teamwork scheduling problem in available time windows

Use your smartphone to scan this QR code and download this article ABSTRACT This paper deals with teamwork scheduling problem in available time windows. This problem has been posed by combining the three constraints are the jobs can split into some sub-jobs which should not be less than a threshold called splitmin, the jobs are only assigned into available time windows and the jobs can be assigned into many people in the organization. Since then the four properties of this problemconsidered are everyone handles any jobs; a job can be handled by some person at the same time; jobs can be broken down into some sub-jobs; the size of the job/sub-job should not be less than splitmin. The goal aims to determine a feasible schedule that minimizes makespan. And a numerical example is presented to demonstrate the essential constraint with given input data to well define this scheduling problem. Besides the authors proposed a mathematical model to determine the optimal solution by using solvers to solve it and some simple heuristics with computing time less than one second to find the good solutions such as Assignment approach, SPT/LPT rules. All experiments were evaluated on two criteria are the maximum completion time for all jobs and runtime in seconds to determine the solution. These experiments were conducted by the comparison of the lower bound, the exact method based on using CPLEX solver to solve the MILP model, and proposed heuristics. The experimental results show it is very time consuming to determine the optimal solution by CPLEX solver, while the solution found by heuristic algorithms is only good enough.


INTRODUCTION Context
People nowadays face a lot of pressure from life such as family, work, affection, etc., a lot of problems have to be solved in a proper and reasonable way. Many support tools have been created to help us solve problems more easily and conveniently like smartphones, robots, or utilities. And scheduling applications such as Microsoft To-Do, Google Tasks, Apple Reminders, etc. have also been created to help us be able to organize our jobs in the most efficient way. The characteristics of the jobs when scheduling by these tools are the work must be continuous, uninterrupted or broken down. These applications are very powerful in scheduling individual jobs, but it is very difficult to schedule jobs for a group of people or an organization, because each person will have time-windows differently. In the past, there have been many studies of job scheduling with constraints that jobs can be splittable into many sub-jobs such as resumable studies [1][2][3] , lot sizing studies [4][5][6][7] , capacitated machine studies [8][9][10][11] , etc. and there have been also many studies on scheduling in available time windows [12][13][14] . As a pioneering result among 1-3 , Min and Cheng 2 considered a cheduling resumable simple linear deteriorating jobs on a single machine with an availability constraint to minimize makespan. The authors showed this problem is equivalent to a binary integer programming problem and proved it is NP-hard in the ordinary sense, and then show there exists an FPTAS for it by applied the technique of Woeginger. In the lot-sizing scheduling problem, scheduling is focused on integrated production planning and scheduling problem. Wolosewicz et al. 5 presented a novel approach for solving an integrated production planning and scheduling problem. The authors proposed a new model integrating lot-sizing decisions and scheduling constraints and a Lagrangian heuristic to solve this model. In 2008, Raut et al. 8 addressed the NP-hard cheduling a capacitated single machine with time deteriorating job values. The authors proposed new heuristics based on a multiplicative piecewise metric as an approximation of the slope of job value deterioration. Combining both of these constraints together creates an interesting NP-Hard problem that was published at Nguyen et al. 15 . This paper proposes to in-corporate a further constraint that jobs can be performed by many people in the organization. And the teamwork scheduling problem in available time windows has been posed by combining the three constraints are the jobs can split into some sub-jobs which should not be less than split min , the jobs are only assigned into available time windows and the jobs can be assigned into many person in the organization. These properties of this problem are everyone handles any jobs (each person is treated as a working machine in the context of this problem); a job can be handled by some person at the same time; jobs can be broken down into some sub-jobs; the size of job/sub-job should not be less than split min .

Notations
The teamwork scheduling problem is denoted by according to Graham et al. 16  for all jobs, also called the "makespan". • w j t : size of window W j t . • b j t : the t th break time for machine M j .

Example
A numerical example demonstrates the essential constraint with the following input data.
• A feasible solution with C max = 24 as described in Table 3 and Figure 2.  • An optimal solution with Cmax = 21 as described in Table 4 and Figure 3.
In this paper, the authors propose a MILP model which can be solved by the solver to determine the optimal solution and some simple heuristics with computing time less than one second to find the good solutions. The experimental results illustrate the performance of the proposed heuristics in comparing with the exact method implemented by MILP solvers. This paper is organized as follows the resolution methods are presented in Section 2, Section 3 gives computational results, discussion and conclusion are shown in Section 4 and Section 5.

Mathematical model
The proposed MILP model is presented as: a) Decision variables: b) Intermediate variables are:

Heuristics
Based on the given constraints, the answering two following questions will determine a feasible solution. There are which job/sub-job be assigned into an available time window and how length of this job/subjob? To answer above questions, three proposed algorithms are: Assignment, Shortest Processing Time and Longest Processing Time. And some notations are used in this section, there are rj i is remaining time for job J i and rw t is the remaining size of window W j t .

Assignment -ASGN
The pseudocode of this heuristic is traverse each job in list jobs: • firstly determine machine which completion time is minimum (Algorithm 2); • then traverse each window of that machine from left to right: the job is considered to assign into the current window (see more detail in Algorithm 1).
Based on the input data in Tables 1 and 2, the schedule from ASGN algorithm shows as Figure 6.

Shortest Processing Time -SPT
The only difference between SPT algorithm and ASGN algorithm is the list jobs input of the ASGN algorithm have no order, while the list jobs input of SPT algorithm will have the order of processing time of jobs gradually increasing. This means that jobs with smaller processing time will be prioritized to assign into available time windows. And based on the input data in Tables 1 and 2, the schedule from the SPT algorithm shows as Figure 7.

Longest Processing Time -LPT
The LPT algorithm is the opposite of the SPT algorithm, the jobs which have larger processing time will be prioritized to handle first. And based on the input data in Tables 1 and 2, the schedule from the LPT algorithm shows as Figure 8.

Dataset
We created 9 tuples (n, k, split min ) by combine of n = {10, 20, 30}, k = {2, 3, 4} and split min = 3. And for each a tuple, according to the way of Hariri & Potts 17 and Baptiste 18 , we generated 10 sample instances. In that: • p i is an integer which randomly generated from uniform distribution in [split min , 24]. • w t is an integer which randomly generated from uniform distribution in [split min , 12].
An example of 10 sample instances created in a tuple set (10,2,3) is shown in Table 5.

Lower bound
Note that a feasible solution without any idle-time is the optimal solution. So we proposed lower bound calculated by the formula:

Benchmarking
The CPLEX v12.7.1 solver was selected to solve the proposed MILP model while heuristic algorithms were implemented on .NET framework v4.5 which evaluated on two criteria: • C max value is found by CPLEX solver or heuristic algorithms. • Runtime (t) in seconds. Table 6 shows the summary of experimental results as follows.

DISCUSSION
Our experimental results in Table 6 indicate the percentage gap between C*max (optimal value) and LB (lower bound value) is tiny (about 0.29%). This gap has also another mean that the number of idle times should be used in an optimal solution. It may be inferred that with these inputs it is not easy to determine a good approximating solution by trivial heuristics. Finding the optimal solution by CPLEX solver takes much time, and more exponential time increases when larger the number of jobs. And within the time  limit (less than 10 minutes) for finding an acceptable solution, the tuple set (n=30, k=4) is the maximum threshold that the CPLEX solver can determine an optimal solution.

Science & Technology Development Journal -Engineering and Technology, 3(SI1):SI50-SI58
For heuristic algorithms, the time to find solutions is very fast (about 0 second approximately), but no heuristic can determine any optimal value for a tuple set. In comparing between them by counting the best one for each tuple set, ASGN achieved 0% the best, SPT achieved about 22% the best, and LPT achieved about 78% the best. By calculating the total Cmax values -9314, 9489, 9497 correspondingly in Table 6 which related to the total idle times used in overall for each heuristic, the LPT algorithm is the best one among the proposed heuristic algorithms. Although these differences are negligible (2% at most) while all  inst.
Jobs Machine 1 Machine 2 p i = 6 12 3 12 16 14 5 5 10 20 w 1 t = 7 6 12 9 6 12 w 2 t = 6 11 8 5 8 10 10  LB is lower bound value and C* max is optimal value each tuple is the sum of 10 different instances of these heuristics can determine a good solution in about 13% gap maximum from optimal solution.

CONCLUSION
In this paper we considered the teamwork scheduling problem with availability time windows, splittable jobs and min-split constraint so as to minimize the makespan. The mathematical MILP model is given to achieve the optimal goal of this problem. Three proposed heuristic algorithms to determine a good solution in about 13% gap maximum from the optimal solution are Assignment approach, Shortest Processing Time and Longest Processing Time rules. The experimental results show that it is very time consuming to find the optimal solution by CPLEX solver, while the solution found by heuristic algorithms is only good enough. Future works may address applying some evolutionary algorithms such as metaheuristic on the larger instances to improve the quality of solutions. Besides adding more constraints to this teamwork scheduling problem fits more with reality.