606
by using same weight for every jobs and time realize date are zero for all jobs. Here, we can treat TWT as total tardiness that is used in this research.
2. MATHEMATICAL FORMULATION
Mathematical formulation to minimize the total tardiness of job scheduling on unrelated parallel machines is a MIP problem with a combination of sequencing problems.
Notation: Z
total tardiness t
i
tardiness of job i c
i
completion time of job i d
i
due date of job i s
i
start time of job i r
jk
ready time of machine j when job with sequence number of k will be scheduled p
ij
processing time of job i on machine j n
total number of job m
total number of machine u
k
job at the sequence number of k on the schedule x
ij
state of job i be assigned on machine j OC
optimality closeness w
sample size or case to optimality closeness test PD
v
performance measure total tardiness by using PD method from sample number of v FCFS
v
performance measure total tardiness by using FCFS method from sample number of v GT
v
performance measure total tardiness by using G T method from sample number of v Model
Decision Variable: u
k
Objective Function: 1
Constraint: t
i
= maxc
i
-d
i
, 2
c
i
= s
i
+ p
ij
3 4
5 u
k
≠ u
k’
for k, k’ = 1..n 6
where k ≠ k’
7 s
i
= r
jk
, if u
k
= i and x
ij
= 1 8
Formulation of Performance Measure of The Method:
607
where GT
v
≠ FCFS
v
9 Asumption:
r
j 1
= 0 for j = 1..m
shows the initial ready time of every machines equal to 0. Description:
Equation 1 shows the objective function to minimize the total tardiness value which is the sum of the tardiness of each job. Each job tardiness value is obtained from the largest selection
of the completion time minus the due date to zero. If not too late, the tardiness value is zero, as shown in Equation 2. Equation 3 shows the completion time equal to start time addition by job
processing time. Equation 4 uses a binary value to declare a scheduled job on a machine. Equation 5 shows every job that can be selected only once to be scheduled, while implicitly,
each machine may have more than one job. Inequality 6 gives the sequence number of k for the job and the job should not be assigned for another sequence number. Equation 7 is the equation
to compute ready time machines. Its value can be different from the time of sequence number of k. Machines that have been assigned will have a different ready time with the earlier, which is added
by processing time of the job scheduled to it while the previous time k-1. The ready time of this machine will be a time to begin a new job with sequence number k, and scheduled in accordance
with the machine. This is shown in Equation 8.
Equation 9 is used to analyze the optimality by assessing the optimality closeness. If the results of the FCFS method is are optimum, it is stated that this case is not included in assessing
the optimality closeness. 3. PRIORITY DISPATCHING PD METHOD
The development of priority dispatching method for scheduling jobs on unrelated parallel machines has been conducted by many researchers, A. Anggawijaya and V. Suhandi have
developed this method with four criteria. The criteria are tardiness, engine load, ready time and the due date. However, the optimality analysis of the method has not been done. The method that
would be developed contain phased scheduling algorithm with reference to the priorities determined, based on five criteria and the optimality that would be tested.
These criteria based on the priorities are listed as follows: 1. Schedule the job by looking at the value of the smallest tardiness of each job when scheduled
on a machine and tardiness is not equal to zero. 2.
Select the pair of a job and a machine when the job is scheduled on the machines will have a minimum number of options that are not too late.
3. Select the machine with the smallest ready time.
4. Choose the machine with the smallest and greater than zero of
Σp
ij
. The Σp
ij
is the total time for all the jobs that have not been scheduled on each machine.
5. Choose a job with the smallest due date.
The first criterion is very important in choosing a job that is definitely too late, then the selection of the value of the smallest tardiness becomes the first choice. Secondly, it requires a job
which has few machine options that are not too late when the job is scheduled for it, it will be prioritized immediately. The third criterion, choose the machine with the smallest ready time
machine. This is done when there is a condition with more than one pair of job and a machine in the list of second criterion. Fourth criterion performs load balancing of each machine. The
machine that is only capable of doing a particular job would be prioritized, so that the machine with highly variation of capability will get another job. If the load value is zero, it means there is
no job that can be assigned to the machine. The last criterion is applied to select the job after the
608
third and fourth generates more than one pair of jobs and machines. Flowchart PD method is described in detail in Figure 1.
Figure 1 shows the process of the selection of job and machine in stages until the entire job is successfully scheduled. This process is done by screening the pairs job and machine who meet
the filter criteria. The first criterion generates list A, the second criterion generates list B, and so on until the last criterion generates list E.
609
Start
Are there any jobs that will be tardy on all
machines? Is there any jobs which
will be tardy if it scheduled for some
machines and won’t tardy for other
machines?
Build list A that contain pairs of job and machine that has
least tardiness. Is the pairs
more than one?
Choose a pair of job and machine with smallest order
number from list A. Choose the
job on a machines in
the list A. Y
N Y
N Build list B that contain pairs
of job and machine where the job has a least number of non
tardy alternatives. Is the pairs
more than one?
Is the pairs more than
one? Build list C1 that contain pairs
of job and machine which has smallest ready time machine
from list B. Y
Y
Build list D that contain pairs of job and machine where the
machine has smallest remaining load from list C1 or
C2. Is the pairs
more than one?
Build list E that contain pairs job and machine where the job
has smallest due date from list D.
Is the pairs more than
one?
Choose a pair of job and machine with smallest order
number from list A. Choose the
job on a machines in
the list E. Y
N Y
Y Choose the
job on a machines in
the list B.
Choose the job on a
machines in the list C1 or
C2.
Choose the job on a
machines in the list D.
N
N N
N
Do all jobs have been scheduled?
N
Make a sequence of jobs on
machines.
End. Y
Build list C2 that contain pairs of job and machine which has
smallest ready time machine. Update list of jobs that has
not been scheduled.
Figure 1 . Priority Dispatching PD flowchart
Case 1 in Table 1 represents a job scheduling problems on unrelated parallel machines. There is a department that has three machines, and at one time there were six jobs on queuing.
610
Each job requires a single process. The process can be performed in a single machine or choose one of several machines. The processing time can be seen in Table 1.
At the first stage, no job has been able to generate tardiness, as seen lower part of Table 1. In this case, the list A and B is not generated. List C2 that contains the pair of job and machine
that has the smallest ready time 0. The result is the entire pair 18 pairs on list C2. Further pairs are filtered by selecting machines that have the lowest load 122. There are 6 pairs on list D. Then
list E contains a pair for the smallest due date 40, so that the selected pair is job 1 on machine 3. The lists for every stage can be viewed in Table 4.
At the second stage, similar to the first stage but on list E there are 4 pairs, so that the selected pair is the pair with the smallest job order number and smallest machine number.
At the third stage, there are 3 jobs 3, 5, 6 which are possible to be tardy, but there are opportunities for the job not to be tardy if they are assigned to a particular machine, so that list B
contains 6 pairs to be an alternative for those who are not tardy on machine 2 and machine 3. Furthermore, the pairs are filtered based on the smallest machine ready time. We obtain 3 couples
on list C1. Altogether, these happens to be on the machine 2. Three pairs continue to fill list D. Furthermore, Job 3 is the only one in list E due to the smallest due date. So, at this stage it is better
to choose job 3 on machine 2.
Table 1
. Case 1 on stage 1 and stage 2
Job M 1
M 2 M 3
Due date Job
M 1 M 2
M 3 Due date
1 12
15 10
40 2
23 21
22 42
2 23
21 22
42 3
21 25
26 42
3 21
25 26
42 4
18 20
15 44
4 18
20 15
44 5
23 19
21 45
5 23
19 21
45 6
31 31
28 46
6 31
31 28
46 Job
M 1 M 2
M 3 Due date
Job M 1
M 2 M 3
Due date r
jk
10 r
j k
Σp
ij
116 116
112 Σp
ij
128 131
122 2
42 1
40 3
42 2
42 4
44 3
42 5
45 4
44 6
46 5
45 6
46 Stage 2
Computation
assign job 2 on machine 1 Stage 1
Computation
assign job 1 on machine 3
Table 2 . Case 1 on stage 3 and stage 4
Job M 1
M 2 M 3
Due date Job
M 1 M 2
M 3 Due date
3 21
25 26
42 4
18 20
15 44
4 18
20 15
44 5
23 19
21 45
5 23
19 21
45 6
31 31
28 46
6 31
31 28
46 Job
M 1 M 2
M 3 Due date
Job M 1
M 2 M 3
Due date r
jk
23 25
10 r
j k
23 10
Σp
ij
72 70
64 Σp
ij
93 95
90 4
1 44
3 2
42 5
1 45
4 44
6 8
10 46
5 1
45 6
8 46
Stage 4
Computation
assign job 6 on machine 3 Stage 3
Computation
assign job 3 on machine 2
611
At the fourth stage there is only 1 pair in list B; job 6 has only one alternative for not to be tardy. It can be assigned to the machine 3 that is not tardy. Instead of this, the other couples still
have a lot more alternatives. At the fifth stage, list B has 2 pairs, one is job 4 on machine 1 and the other is job 5 on
machine 2. Next, list C1 contains machine 1 with the smallest ready time, so that the selected pair is job 4 on machine 1.
At the last stage, the job 5 on the machine 2 is the pair which is selected on list B.
Table 3
. Case 1 on stage 5 and stage 6
Job M 1
M 2 M 3
Due date Job
M 1 M 2
M 3 Due date
4 18
20 15
44 5
23 19
21 45
5 23
19 21
45 Job
M 1 M 2
M 3 Due date
Job M 1
M 2 M 3
Due date r
jk
41 25
38 r
j k
23 25
38 Σp
ij
23 19
21 Σp
ij
41 39
36 5
19 14
45 4
1 9
44 5
1 14
45 Stage 6
Computation
assign job 5 on machine 2 Stage 5
Computation
assign job 4 on machine 1
Table 4 . Jobs and Machines Lists for every Stage
Stage 1 Stage 2
Stage 3 Stage 4
Stage 5 Stage 6
List C2 List C2
List B List B
List B List B
Job 1 - M1 Job 2 - M1 Job 3 - M2 Job 6 - M3 Job 4 - M1 Job 5 - M2 Job 1 - M2 Job 2 - M2 Job 3 - M3
Job 5 - M2 Job 1 - M3 Job 3 - M1 Job 5 - M2
List C1
Job 2 - M1 Job 3 - M2 Job 5 - M3 Job 4 - M1
… …
Job 6 - M2 Job 6 - M3 Job 6 - M2 Job 6 - M3
List D List D
List C1
Job 1 - M3 Job 2 - M1 Job 3 - M2 Job 2 - M3 Job 2 - M2 Job 5 - M2
Job 3 - M3 Job 3 - M1 Job 6 - M2 Job 4 - M3 Job 3 - M2
List D
Job 5 - M3 …
Job 3 - M2 Job 6 - M3 Job 6 - M2 Job 5 - M2
List E List E
Job 6 - M2 Job 1 - M3 Job 2 - M1
List E
Job 2 - M2 Job 3 - M2 Job 3 - M1
Job 3 - M2
Table 5
. Job sequence on machines for Case 1 using PD method
1 2
3 M 1
2 4
M 2 3
5 M 3
1 6
Job Sequence
612
M 3 M 2
M 1 6
23 41
2 4
3 5
1 1 0
38 25
44
Figure 2 . Gantt Chart for Case 1 using Priority Dispatching PD method
Table 5 shows the sequence of jobs on each machine. Furthermore, Figure 2 shows the completion time for each job. When we compare it with the due date, there are no tardy jobs.
Thus, the total tardiness is zero. 4. FIRST COME FIRST SERVE FCFS METHOD
FCFS scheduling method is a simple method by means of assigning jobs which come first according to the time of issuance of the order and done in advance by selecting the machine with
the smallest ready time. This method is widely used because of its practicality but this method is usually far from optimal because of the lack of consideration of the factors that affect the size of
the desired performance.
Due to the practicality, the result of the FCFS method can be used as a reference as the zero point on optimality closeness assessment. Expectedly, the result of an evaluated method must
be better than the results obtained from this method. Result FCFS method is shown in Figure 3. The total tardiness produced by 8 units of time.
This result was obtained by comparing the completion time of each job with the due date listed in Table 1.
M 3 M 2
M 1 6
21 3 0
1 2
3 5
26 54
4 12
4 0
Figure 3
. Gantt Chart for Case 1 using FCFS method
5. GENERATE TEST G T METHOD