Anda di halaman 1dari 16

VIETNAM NATIONAL UNIVERSITY

HO CHI MINH CITY INTERNATIONAL UNIVERSITY


DEPARTMENT OF INDUSTRIAL AND SYSTEMS ENGINEERING

SPECIAL STUDY REPORT


MINIMIZE CYCLE TIME/MAKESPAN/FLOWTIME
IN SCHEDULING SIMULATION BY HEURISTIC
METHODS APPLICATION

Table of Contents
A. Table of Contents..................................................................................................2
B. Abstract.................................................................................................................4
C. Article 1: An Ant Colony Optimization Algorithm for Shop Scheduling

Problems [1]..........................................................................................................5
I.

Introduction............................................................................................................5
1.1 New neighborhood structure for GSS................................................................5
1.2 Ant Colony Optimization for GSS by using ND algorithm....................................5
1.3 Improving the solution by using the black-box local search................................5

II. Model.......................................................................................................................5
III.

Result...................................................................................................................6

IV.

Conclusion..........................................................................................................7

D. Article 2: An effective artificial bee colony algorithm for the flexible job-

shop scheduling problem [2]...............................................................................7


I.

Introduction............................................................................................................7

II. Formulation............................................................................................................7
III.

Solution...............................................................................................................8

IV.

Result...................................................................................................................8

V.

Limitation............................................................................................................9

E. Article 3: An improved artificial bee colony algorithm for the blocking flow-

shop scheduling problem [3]...............................................................................9


I.

Introduction............................................................................................................9

II. Formulation............................................................................................................9
III.

Solution...............................................................................................................9

IV.

Result.................................................................................................................10

V.

Limitation..........................................................................................................10

F. Article 4: A simulated annealing/local search to minimize the makespan and

total tardiness on a hybrid flow-shop [4].........................................................10


I.

Introduction..........................................................................................................10

II. Formulation..........................................................................................................11
III.

Solution..............................................................................................................11

IV.

Result from comparison of SA/LS and genetic algorithm (GA)..................12

V.

Limitation..........................................................................................................12
2

G. Article 5: Analysis of electric vehicle charge scheduling and effects on

electricity demand costs [5]..............................................................................12


I.

Introduction..........................................................................................................12

II. Formulation..........................................................................................................13
III.

Solution.............................................................................................................13

3.1 The first available scheduling algorithm (FAS).................................................13


3.2 The random and first available scheduling algorithm (RFAS)............................13
3.3 Greedy local search algorithm with pairwise exchange (GLS)...........................14
3.4 Simulated annealing algorithm with pairwise exchange (SA)............................14

IV.

Result.................................................................................................................14

V.

Limitation..........................................................................................................14

H. Conclusion..........................................................................................................15
I.

References...........................................................................................................15

Abstract
Scheduling is a major issue faced every day in manufacturing systems as well as service industry,
so it is essential to develop effective and efficient advanced manufacturing and scheduling
technologies and approaches. In these articles that we summarize, the authors applied many
algorithms as well as methods to improve the constructed solutions and increase the problem
size. Here is the structure of all articles that we summary. Firstly, we summarize the problem.
Secondly, we restate the problem formulation. Thirdly, we paraphrase the solution and result of
experiments. Finally, we conclude and raise the article limitation.

Article 1: An Ant Colony Optimization Algorithm for Shop Scheduling


Problems [1]
Keywords: ACO, scheduling, group shop, job shop, open shop

I.

Introduction

In this article, Christian Blum and Michael Samples dealt with the Ant Colony Optimization
(ACO) applicability to group shop scheduling (GSS). Firstly, they proposed a new neighborhood
structure. Secondly, the solutions is constructed and improved by the development of ACO
which uses the ND algorithm and employs the black-box local search procedure. Finally, the
comparison between ACO and tabu search for GSS.
1.1 New neighborhood structure for GSS
Based on the neighborhood structure proposed by Nowicki and Smutnicki for the JSS problem,
Christian Blum and Michael Samples defined a neighborhood of a feasible solutions of a GSS
instance as an extension of the neighborhood structure. The new neighborhood denoted by N1c,GSS
is defined as followed: a feasible solution s is a neighborhood of a feasible solution s if in the
critical path P of s for exactly one machine block or exactly one group block B
=(o1,o2,...,onk1,onk) on P, the order of o1 and o2 or the order of onk1 and onk is swapped in s.
1.2 Ant Colony Optimization for GSS by using ND algorithm
The ACO for GSS (ACO_GSS) is Max-Min ant system (MMAS) in the hyper-cube framework
(HCF). This ACO_GSS is applied the the lower and upper bound, min and max, to the pheromone
values. The pheromone model referred to as relation-learning model. A high level description of
the algorithm is as followed:
- Firstly, all of variables are initialized. The pheromone values are set to the initial value 0.5 by
the procedure InitializePheromoneValues(T). Secondly, use the ConstructSolution(T) procedure
to construct the solutions. Then, these solutions are improved by the application of
ApplyLocalSearch(Siter) procedure. Thirdly, update the value of variables sib , srb and sbs.
Fourthly, update the pheromone trail value by application of
ApplyPheromoneUpdate(cf,bs_update,T,srb,sbs) procedure. Fifthly, compute the convergence
factor. Finally, depend on the variable bs_update, a decision on whether to restart the algorithm
or not is made.
1.3 Improving the solution by using the black-box local search.

ApplyLocalSearch iter): To every solution sj iter a steepest descent local search is


applied. The neighborhood structure for this local search is N1c,GSS as introduced in section 1.1

II.

Model

This ACO approach based on the model of pheromone, reperred to as relation-learning model.
In the model:
- 2 operations Oi and Oj are either in the same group or processed by the same machine. Thus, Oi
and Oj are called related
- Ri is the set operations that are related to Oi.
5

- Tij and Tji are denoted for pheromone trail parameter for each pair of operation Oi,Oj
- Tij and Tji are the value of Tij and Tji respectively.
- T is the set of all pheromone trail parameter
- Variable Sib is the best solution generated in the current iteration.
- Variable Sbs is the best solution since the start of the algorithm.
-Variable Srb is the best solution since the last restart of algorithm.
- Variable cf mesures the algorithm's convergence
- Variable bs_update becomes true since the algorithm reaches convergence
ALGORITHM 1. ACO for the GSS problem (ACO_GSS)
input: A problem instance P of the GSS problem
sbs NULL, srb NULL, cf 0, bs_update FALSE
na DetermineNumberOfAnts(P )
InitializePheromoneValues(T)
While termination conditions not satisfied do
iter
for j=1to na do
iter iter ConstructSolution(T)
end for
ApplyLocalSearch( iter)
sib argmin{Cmax(s)|s iter}
EliteAction(sib)
Update(sib,srb,sbs)
ApplyPheromoneUpdate(cf,bs_update,T,srb,sbs)
cf ComputeConvergenceFactor(T)
if cf > 0.99 then
if bs_update = TRUE then
ResetPheromoneValues(T)
srb NULL
bs_update FALSE
else
bs_update TRUE
end if
end if
end while
output:sbs

III.

Result

The result of ACO for GSS (ACO_GSS) in compare to tabu search for GSS (TS_GSS) as below:
- For GSS instances (ft10, la38, abz7) in 20 long runs of algorithm and time linit are 180s, 1800s
and 1800s for ft10, la38 and abz7 respectively. The result shows TS_GSS has advantages for
JSS-like instances and ACO_GSS has advantages for more OSS-like instances.
- For OSS benchmark instances: ACO_GSS is better in the best solution, in average solution
quantities, in standard deviation and in the average time needed to find the best solution.
6

- For JSS instances: TS_GSS is one of the state-of-art algorithm for JSS instances

IV.

Conclusion

The article is proposed the ACO approach to deal with the group shop scheduling problems. This
ACO_GSS is MMAS in hyper-cube framework. The constructing solutions is used the ND
algorithm. Besides, the ACO_GSS employs the black-box local search procedure to improve the
constructed solutions. In addition, the experimental is conducted to evaluate the ACO_GSS and
compare it with the tabu search approach. The result showed that, ACO_GSS is suitable for the
application of OSS instances. Based on the result, we suggest a genetic algorithm approach to
those combinatorial optimization problems.

Article 2: An effective artificial bee colony algorithm for the flexible jobshop scheduling problem [2]
Keywords: Flexible job-shop scheduling problem. Makespan. Artificial bee colony algorithm.
Machine assignment. Operation sequence. Critical path

I.

Introduction

FJSP extended from the classical JSP. It is divided into 2 sub-problems routing and scheduling, in which,
routing is to assign each operation to machine appropriately, whereas scheduling is to sequence the
assigned operations reasonably to get the optimal solution.
The ABC algorithm is aimed to the balance between global exploration and local exploitation.
First, the decoding rule is employed to achieve an active schedule. Second, generate an initial population
with certain quantity and diversity. Whereas the employed bee phase is designed to derive the new
neighbor food source, onlooker bee phase is developed to improve the convergence speed and scout bee
phase is applied to enrich and avoid the premature convergence. In addition, the simulation results and
comparisons between ABC algorithm and some existing algorithms are conducted.

II.

Formulation

Min Cmax
Subject to

(1)

( p i , j , kx i , jS,ki ), j+Si , j+1 ,i=1,2, , n ; j=1,2, , ni1

k M i , j

k M i , j

(2)

( xi , j , k )=1, i=1,2, ,n ; j=1,2, , ni ; k =1,2 , m

( y i , j , k ,r ) =x i , j , k ,i=1,2, , n ; j=1,2, , ni ; k =1,2 , m ; r=1,2, , qk

(3)

(4)

S mk ,r + p i , j ,ky i , j , k ,r S mk , ( r+1 ) , i=1,2 , n; j=1,2, , ni ; k=1,2, , m; r =1,2, ,q k 1


(5)

m
k ,r

+ ( 1 y i , j , k ,r )L Si , j ,i=1,2 , n ; j =1,2, , ni ; k =1,2, , m ; r=1,2, , qk


7

(6)

m
k ,r

( 1 yi , j , k ,r )L , S i , j , i=1,2 , n; j=1,2, , ni ; k=1,2, , m; r =1,2, , q k


(7)

x i , j , k = 1,if machine k is selected for operation O i , j


0, otherwise

(8)

x i , j , k = 1,if operation Oi , j is performed on machine k inpriority r


0, otherwise

(9)

Eq.1 is the objective function. Eq.2 ensures that the operations belonging to the same job satisfy the
precedence constraints. Eq.3 ensures that each operation is assigned to only one machine from its
candidate machine set. Eq.4 guarantees that each operation should be processed only at one priority on
one machine. Eq.5 ensures that each machine processes one operation at a time. Eq.6 and Eq.7 guarantee
that each operation should be started only after the previous operation of the same machine and the
previous operation of the same job are both completed and L is a number large enough.

III.

Solution

The work process can describe as below: the employed bees bring load of nectar from the food sources
and share this information with onlooker bees. By dancing, the onlooker bees can know the status of the
currently being exploited. The onlooker bees can choose the food source according to quantity of food
source. If the better food source is explored, the scout or onlooker bees can change into an employed bee.
Otherwise, employed bees can be change into the scout or onlooker bees if the food source is exploited
fully.
The procedure of ABC algorithm as below:
Step 1: Initialize parameters, including the number of food sources or the number of the employed bees
(neb), number of onlooker bees (nob) and number of scout bees (nsb).
Step 2: Initialize population of food sources with random solutions.
Step 3: Calculate the objective value (si) of each food source si and then determine the best food resource
gbest.
Step 4 (employed bee phase):
Step 4.1: For every employed bee ui,i = 1,2,,neb, generate the new food source

si

from si

Step 4.2 (onlooker bee phase):


Step 4.2.1: Calculate the probability of selecting food source

si

according to Eq. (10)

Step 4.2.2: Calculate the number of onlooker bees Ni = pi * nob to be sent the food source

s 1i
Step 4.2.3: For every onlooker bee vj,j = 1,2,,Ni, generate the Ni new food sources
from

si

And let

best

si

be the best of all the

best

si

Step 4.3: For i= 1,2,neb: if (si)

(gbest), then gbest = si


8

best

s i , j . If ( s i

s 2i

(si) then si =

Step 5 (scout bee phase):


Step 5.1: Initialize scout bees with random solutions and update gbest if possible
Step 5.2: Determine the worst nsb employed bees and replace them with the scout bees if the scout
bees are better.
Step 6. If a stopping criterion is met, then output gbest and its objective value; otherwise, go back to Step
4.

IV.

Result

With five Kacem instances, with its range from four jobs five machines to 15 jobs ten machines, the ABC
algorithm s performance is tested and compared with some algorithms. The results showed that the ABC
algorithm is the best and this algorithm can get the optimal results. Besides, based on the results, its seen
that ABC algorithm is the good searching quality and robustness. In addition, its computation time is
pretty short.
About the BRdata instances, with its range from ten jobs six machines to 20 jobs 15 machines, The results
showed that ABC algorithm has more powerful optimization capability and robust on initial conditions.
Besides, the best makespan and best solution for whole population convergence are obtained by ABC
algorithm.

V.

Limitation

This is the first research which work on the application of ABC algorithm for FJSP. Based on the obtained
results, it can be concluded that this algorithm is effective, efficient and robust in solving the complex
FJSP. However, the purpose of this research is to minimize Cmax only. It need more effort to do research
further for multi-objective scheduling problem as well as stochastic problem.

Article 3: An improved artificial bee colony algorithm for the blocking flowshop scheduling problem [3]
Keywords: Blocking flow-shop. Makespan. Artificial bee colony algorithm. Differential
evolution

I.

Introduction

Blocking flow-shop scheduling problem (BFS) can be defined as follow: each of job from set J = {1,2,
,n}has to be processed on m machine from the set M = {1,2,,m}with order that have no intermediate
buffer. It means that a job must be blocked if the next machine is unavailable. The O j,k operation
corresponds to the processing of job j on machine k during an uninterrupted processing time P j,k. The
problem is to seek a schedule such that the processing sequence of jobs is the same on each machine and
the makespan is minimized.
Assumption is each machine can process at most one job and each job can be processed on at most one
machine.

II.

Formulation

Oj,k be the job operation j on machine k, where j{1,2,,n} and k{1,2,,m}.


Pj,k be j processing time on machine k.
Sj,k be starting time of j on machine k.
= {(1), (2),..,, (n)} be the job permutation.
S1,0= 0
(1)
S1,k = Si,k-1 + P1,k where k{1,2,,m}
(2)
Sj,0 = Sj-1,1 where j = {2,3,, n}
(3)
9

Sj,k = max (Sj,k-1 + Pj,k,Sj-1,k+1) where k{1,2,,m-1} and j{2,3,,n} (4)


Sj,m = Sj,m-1 + Pj,m where j{2,3,,n}
(5)
Eq. (4) computes the starting time Sj,k of job j with k{1,2,,m}. Eq. (5) computes the staring time of
job j on the last machine m where consider completion time of the previous operation of job j (S j,m-1 +
Pj,m). The makespan of the job permutation = {(1), (2),..,, (n)} is equal the time when the last job in
the processing sequence is finished at machine m Cmax() = Sn,m. The BFS problem with the makespan
criterion is find a permutation * in the set of all permutation II such that
MS(*) MS(n,m) where * II
(6)

III.

Solution

The work process of IABC algorithm for the BFS problem with the makespan criterion can be presented
briefly as below:
Step1: initialize parameters and population P = {1, 2,,SN} and evaluate solution in the population.
Step2: Employed bee phase: generate new solution i* by using swap and insert operator method.
Compare and replace the ith employed bee i by the better solution between i*.
Step3: Onlooker bee phase: the solution i* is followed the following method onlooker bee chooses
randomly 2 two solutions from population and takes the solution which its minimum makespan. Then, the
local search algorithm is performed to find the new solution i*.
Step4: Scout bee phase: Improve the solution with the limited condition in the population by preforming
mutation and crossover operator of DDE algorithm.
Step5: Memorize the optimal solution obtained so far.
Step6: if the limited condition in unsatisfied, go to step 2.

IV.

Result

In this article, the researchers made the comparison the presented IABC algorithm with GA, TS, TS+M,
HDDE and DABC algorithm.
Based on the well-known benchmark set of Taillard about the BFS problem. The benchmark set is divided
into 12 same-sized subset from 120 different instances. The subset range is from 20 jobs 5 machines to
500 jobs 20 machines. From the simulated data, we can see the IABC algorithm outperforms the DABC,
HDDE, TS, TS+M, and GA algorithm for average PRD, maximum PRD and minimum PRD. Besides, the
problem size increases, the superiority of the IABC algorithm over HDDE and DABC algorithm
increases. Thus, we can draw the conclusion that IABC algorithm outperforms the HDDE and DABC
algorithms for BFS problem with the makespan criterion. In the procedure, the parameters pls, u, c have
great effect on performance of IABC algorithm. The experiment result showed that parameter u affects
the searching quality of the IABC algorithm. When the parameter c and pls are equal to 0.1 the APRD
values are better.

V.

Limitation

In this paper, the researchers presented the IABC algorithm application for BFS problem with makespan
criterion. The writers developed the IABC-based searching mechanism to perform the exploration the
solution within solution space. In the onlooker bee phase, the local search is employed to exploit. In the
scout bee phase, the differential evolution algorithm is adopted to obtain the solution. Based on the
experiment and comparison result, it showed that IABC algorithm is the superior in terms of solution
10

quality and effectiveness. However, the article is focus on the BFS only with the single criteria only. So,
we suggest that the future work is to improve the local search in order to apply the IABC to other
optimization problem and extend the ideas to the different objective function or multi-objective.

Article 4: A simulated annealing/local search to minimize the makespan and


total tardiness on a hybrid flow-shop [4]
Keywords: Bi-objective scheduling. Hybrid flow-shop. Simulated annealing. Makespan.
Total tardiness

I.

Introduction

In manufacturing system as well as in the service industry, the analysis of the performance of a schedule
often involves more than one aspect and requires a multi-objective treatment. Since these objectives are in
conflict of interests, a solution may perform well for one objective, but giving bad results for others. So,
scheduling problems have often a multi-objective nature.
Hybrid flowshop scheduling problem: The hybrid flowshop scheduling problem involves the sequence of
jobs in a flowshop which at least one stage has to consist of several machines. All data in this problem
(i.e., processing times of operations, setup times, due date, number of stages, number of machines, and
number of jobs) are known and constant and deterministic when scheduling is undertaken. The setup
times considered in this problem are classified into two types: sequence-independent setup time and
sequence-dependent setup times.
Scheduling objective: the objective is assigning jobs to the machines at the corresponding stages and to
determine the processing sequences on them in order to minimize a convex combination of makespan and
the total tardiness.

II.

Formulation

For a solution x, the objective function is followed:


(x) = 1*1(x) + 2*2(x).
1(x) be makespan; 2(x) be total tardiness; 1+2 = 1. The meaning of 1 is to balance both objectives.
For a low value of 1, total tardiness problem will be dominated the makespan problem. Otherwise, the
makespan problem will be dominated whereas for a large value of 1.
The normalized objective is followed:
1(x) =

min1
1(x)

2(x) =

III.

minf 2
if minf 2> 0
f 2(x)
1+minf 2
if minf 2=0
1+ f 2 ( x )

Solution

In this paper, the authors proposed the simulated annealing approach with some differences versus the
original simulated annealing approach. The SA/LA pseudo code is as below
Initialization
The representation of a solution: We apply a scheme using integers which show the number of
job(s).
11

Draw a seed sequence x: The seed sequence is generated in a random way from the search space.
Evaluate 1(x) and 2(x): Where 1(x) is the makespan, 2(x) is the total tardiness of seed
sequence which is generated.
Input parameters: Initial temperature (T 0); final temperature(T); number of stages for reach of T0
to T (N); maximum number of iterations in each temperature (max_it); the weighting
coefficients ( {0:25; 0:5; 0:75}).
Set: T = T0; it = 1; q = 1; Archive(q) = {x};

While T > T
For it = 1: max_it
Step1: y=Move x;
Step2: Calculate SA and E as follow;
Min 1 = min (1(x),1(y))
Min 2 = min (2(x),2(y))
SA(x) = [1*1(x) + 2*2(x)]-1
SA(y) = [1*1(y) + 2*2(y)]-1
E = SA(y) - SA(x)
Step3: Decision making;
If E<0 then q = q+1; Archive(q) = {y};x=y;
Else if random < exp(-E/T) then q = q+1; Archive(q) = {y};x=y;
End if
Step4: Improvement of solution which obtain in step 3as follow;
i)
Choose randomly integer number (k), in the range [1,4].
ii)
Evaluate objectives of the new solution in the neighborhood of x (which is named z i).
iii)
Accept solution with minimum SA(zi) and update solution x with obtained solution of
neighborhood (x = zi). Also, transfer accepted solution with archive : q=q+1; Archive (q) =
{zi}
End for
T = Temperature reduction by a linear schedule
End While

IV.

Result from comparison of SA/LS and genetic algorithm (GA)

The comparison between two algorithms is performed based on CPU time, four performance measures
(metrics), convex combinations yielded from each algorithm after several runs, archived solutions (an
archive is created, maintained during successive iterations to preserve solution identified during the
search), number of solutions processed by each algorithm, the effect of max_it on the time and the
improvement of the solutions and time cost when comparing different algorithm.
About the time cost, the SA/LS is faster than proposed genetic algorithm in case of 155, 205, and
2510. About the introduced metrics, SA/LS is able to outperform GA in all test problems by considering
the first (M1), the second (M2) and the fourth (M4) metrics. These figures show several convex
combinations generated by SA/LS and the genetic algorithm through 20 runs. The result show that SA/LS
are better than the solutions of the genetic algorithm. In each experiment, the GA algorithm processes on
S1 solution whereas the SA/LS processes on S2 solution. The parameter max_it defined as
maximum number of iterations in each temperature. As a result, the SA/LS algorithm solutions are as
effective as GA solutions but by considering the time factor, the SA/LS algorithm is faster than genetic
algorithm.

12

V.

Limitation

The objective of this paper is to determine the schedule that minimizes a convex combination of the
makespan and the total tardiness. The combination of simulated annealing and local search algorithm are
used to solve the multi-objective problems. The comparison between the solutions of SA/LS and the
proposed genetic algorithm have been conducted in the literature in order to evaluate the performance of
SA/LS. However, the limitation in this literature is the authors focus only on two common criteria. For the
further research, the next literature can be considered about the development of the other bi-objective
algorithms of the simulated annealing by designing as much as possible functions to combine the various
criteria into a single scalar value.

Article 5: Analysis of electric vehicle charge scheduling and effects on


electricity demand costs [5]
Keywords: Electric vehicle Machine scheduling Simulated annealing
Electricity demand

I.

Introduction

The intelligent power monitoring and control system (PMCS) is conducted to minimize the adverse
effects of electric vehicles (EV) charging on the power grid. The PMCS has a few subcomponents: a peak
predictive and power monitoring module, a charging prioritization and scheduling module, and an
interface module. In this case, the prioritization and scheduling module is the main focus because of
charging EV schedule optimization determination. The EV charging scheduling/prioritization problem can
be formulated as a parallel machine scheduling problem, where charging transactions represent jobs and
charging stations represent parallel machines. Assuming a common departure time for all vehicles, the
objective is to minimize the total makespan. The total makespan is considered the total time from the
arrival of the first vehicle to the end of the last charging cycle

II.

Formulation

The EV charging scheduling problem can be formulated as the following mixed integer program (MIP):

min max c i

(1)

1 i n+2 m

St.
m

z ik =1
k=1

, i= 1,2,,n+2m

(2)

z (n+ k ) k =1, k

(3)

z (n+m +k ) k =1, k

(4)

x ijk z ik

x ijk =zik

j : 1 j i n+2 m

j : 1 j i n+2 m

, i= 1,2,,n+2m, k

(5)

, k ,1 j n+2m

(6)

c i r i + pi , i= 1,2,,n

(7)

c n+ k =0, k

(8)

c n+m +k = k +1, k

(9)
13

c j c i p j M ( 1x ijk ) , i= 1,2,,n+2m, k

(10)

x ijk { 0,1 } , z ik { 0,1 } ,c i 0, i,j= 1,2,,n+2m, k

(11)

Where (1) minimize the total makespan, (2)-(4) makes sure that each job i is assigned to exactly one
machine, and dummy jobs are tied with their respective machines, (5) states that each job has at most one
successor, (6) states that each job except those dummy starting jobs has exactly one predecessor, (7)
calculates the completion time of all real jobs, (8) and (9) calculates the completion time of all real jobs
and ensures that machine is occupied by the dummy place holder job during the demand charge period,
thus enforcing no actual charge during that period. (10) states that if job i is scheduled immediately before
job j, then the completion time for job j is at least pj units after the completion time of job i. (11) specify
that xijk and zik must be binary variables.

III.

Solution

3.1 The first available scheduling algorithm (FAS)


The algorithm determines the charging schedule by simulating users behavior of searching for the next
available machine. The pseudo code for the FAS algorithm is described in the steps below:
Step1: Sort all jobs by processing time required pi and then by release time ri
Step2: Calculate completion time ci = ri +pi for each machine.
Step3: Schedule next job ji on priority list to machine with earliest completion time ci.
Step4: Repeat steps 2 and 3 until all jobs are scheduled.

3.2 The random and first available scheduling algorithm (RFAS)


The algorithm schedules jobs to the next available machine; however, a random process is used with a
certain probability to pick random jobs and schedules them to a random machine rather than the next
available. In the RFAS algorithm, Rmax schedules are generated and the schedule with the best makespan
is selected as the heuristic solution
Step1: Sort all jobs by processing time required pi and then by release time ri
Step2: Calculate completion time ci = ri + pi for each machine.
Step3: If a Bernoulli random variable = 1, schedule job to random machine mi, otherwise schedule next
job on priority list to machine with earliest completion time ci.
Step4: Repeat steps 2 and 3 until all jobs are scheduled.
Step5: Repeat steps 1 through 4 to generate Rmax random schedules.
Step6: Compare schedules and select the schedule with smallest total makespan.

3.3 Greedy local search algorithm with pairwise exchange (GLS)


The algorithm starts with the optimum schedule obtained from the RFAS algorithm then performs a
pairwise exchange optimization sequence. The pairwise exchange process begins by randomly picking
two jobs (Ji and Jj) from two random machines (Mk and Ml ) and checks to see if an exchange is feasible.
The job exchange is feasible, the exchange is made temporarily and the total makespan is measured. If the
makespan decreases, then the exchange is kept; however if the makespan increases, the exchange is
reverted and discarded.
Step1: Begin with best schedule from the RFAS algorithm.
Step2: Pick two random jobs (Ji and Jj) from two random machines (Mk and Ml)
Step3: Check feasibility of exchange ri <sj and rj <si.
Step4: If exchange results in reduced makespan, keep exchange. Otherwise discard.
Step5: Repeat Steps 2 through 4 Gmax times.

14

3.4 Simulated annealing algorithm with pairwise exchange (SA)


The simulated annealing (SA) meta-heuristic has been studied and shown to be efficient in finding the
global optimum of highly non-linear problems and/or many classes of combinatorial optimization
problems.

P ( mkspn ,mksp n' , Ti ) =

1,if mkspn' <mkspn


'

( mksp n mkspn )
Ti

,if otherwise

Ti=T 0 * e( Ai)
A=

T
1
ln 0
N
TN

Step1: Begin with best schedule from the RFAS algorithm.


Step2: Pick two random jobs (Ji and Jj) from two random machines (Mk and Ml)
Step3: Check feasibility of exchange ri < sj and rj < si.
Step4: Update simulated annealing temperature Ti
Step5: If mkspn < mkspn, keep change, else if P (mkspn,mkspn,Ti) < rand(n) keep change, otherwise
discard.
Step6: Repeat steps 2 through 5 Smax times.

IV.

Result

Based on the average makespans of ten data sets for each case report, comparing non-preemptive to
preemptive models, reductions in the total makespan are visible due to the elimination of idle time on
machines when jobs overlap with peak demand intervals. SA algorithms tend to provide better
performance for cases where the vehicle to charging station ratios are higher, however cases with lower
vehicle to charging station ratios tend to see better performance from the GLS algorithms.
Based on the average of CPU times of ten data sets for each case report, the algorithm complexity
increases, the resultant CPU time required also increases proportionally. Also, it is observed that the
preemptive algorithms require approximately double the CPU time required for similar non-preemptive
algorithms.

V.

Limitation

The objective of this paper is to minimize the total makespan of all charging jobs. Firstly, the authors may
combine some more algorithm to deal with the bi-criteria scheduling problem such as minimize the total
makespan and total weighted tardiness in charging scheduling. Secondly, the authors may consider some
other algorithms such as Ant colony optimization or bee colony optimization to improve the solution
quality and increase the problem size.

Conclusion
We summarized 5 articles related to minimize the makespan in manufacturing field as well as
service industry. For all articles, the authors formulate the problem by using the heuristic
methods, such as ACO, BCO. Besides, the authors also use some search method, i.e local search,
global search as well as compare between some well-known algorithms to find out the optimum
solution. However, in each articles, there are some limitations for further study.

15

References
1. C. Blum and M. Sampels. An Ant Colony Optimization Algorithm for Shop Scheduling
Problem. Journal of Mathematical Modelling and Algorithms (2004) 3:285-208
2. L. Wang, G. Zhou, Y. Xu, S. Wang. M. Liu. An effective artificial bee colony algorithm
for the flexible job-shop scheduling problem. Int J Adv Manuf Technol (2012) 60:303
315
3. Y.Y. Han, Q.K. Pan, J.Q. Li, H.Y. Sang, An improved artificial bee colony algorithm for
the blocking flow-shop scheduling problem. Int J Adv Manuf Technol (2012) 60:1149
1159
4. S.M. Mousavi, M. Zandieh, M.Yazdani. A simulated annealing/local search to minimize
the makespan and total tardiness on a hybrid flow-shop. Int J Adv Manuf Technol (2013)
64:369388
5. N. Jewell, L. Bai, J. Naber, M.L.McIntyre. Analysis of electric vehicle charge scheduling
and effects on electricity demand costs. Energy Syst (2014) 5:767786.

16

Anda mungkin juga menyukai