Introduction
Scheduling problem is a decision making process
involving the allocation of resources over time to perform a
set of activities or tasks. Scheduling problems in their static
and deterministic forms are simple to describe and
formulate, but are difficult to solve as it involves complex
combinatorial optimisation. For example, if there are m
machines, each of which is required to perform n
independent operations. The combination can be potentially
exploded up to (n!)m operational sequences. Job shop
scheduling is one of the most famous scheduling problems,
most of which are categorised into NP hard problem. This
means that due to the combinatorial explosion, even a
computer can take unacceptably large amount of time to seek
a satisfied solution on even moderately large scheduling
problem. Another potential issue of complexity is the
assembly relationship [1- 2].
Job shop scheduling problem (JSSP) is comprised of a
set of independent jobs or tasks (J), each of which consists of
a sequence of operations (O). Each operation is performed
on machine (M) without interruption during processing time.
The main purpose of JSSP is usually to find the best machine
schedule for servicing all jobs in order to optimise either
single criterion or multiple scheduling objectives (measures
of performance) such as the minimisation of the makespan
(Cmax) or the penalty costs of tardiness and/or earliness.
Various optimisation approaches have been widely
applied to solve the JSSP. Conventional methods based on
mathematical model and/or full numerical search (for
example, Branch and Bound [3-4] and Lagrangian Relaxation
[5-6]) can guarantee the optimum solution. They have been
successfully used to solve JSSP. However, these methods
may highly consume computational time and resources even
for solving a moderate-large problem size and therefore
impractical if the computational limitation is exist.
Approximation optimisation methods or metaheuristics (e.g.
Tabu Search [7] and Simulated Annealing [8]), that usually
conduct stochastic steps in their search process, have
therefore been recently received more attention for solving a
large-size problem in the last few decades. However, it does
not guarantee the optimum solution.
Firefly Algorithm (FA) was recently introduced by Yang
[9], who was inspired by firefly behaviours. FA has been
widely applied to solve continuous mathematical functions
[9, 10]. FA seems promising for dealing with combinatorial
optimisation problem, but has been rarely reported. FA is a
type of metaheuristic algorithm therefore quality of problem
solutions depends on setting parameters in the algorithm.
There is however no report on international scientific
databases related to the investigation of the FA parameters’
setting and its application on the JSSP. The popular Job shop
scheduling problems that were used to test metaheuristic
algorithm regularly are the datasets from OR-Library [11].
The objectives of this paper are to: i) presents the
application of a recent developed metaheuristic called Firefly
Algorithm for solving JSSP; ii) explore the parameters of the
proposed algorithm; and iii) investigate the performance of
the FA with different parameter setting and compare with
best known solution from literature review. A job shop
scheduling tool was written in modular style using Tcl/Tk
programming language. The computational experiment was
designed and conducted using five benchmarking datasets of
the JSSP instance from the well-recognised OR-Library
published by Beasley [11].
The remaining sections in this paper are organised as
follows. Section 2 reviews the literature relating to job shop
scheduling problems. Section 3 describes the procedures of
the Firefly Algorithm (FA) and its pseudo code for solving
the JSSP. Section 4 presents the experimental design and analyses results. Finally, Section 5 draws the conclusions of
the research and suggests possible further work.
Introduction
Scheduling problem is a decision making process
involving the allocation of resources over time to perform a
set of activities or tasks. Scheduling problems in their static
and deterministic forms are simple to describe and
formulate, but are difficult to solve as it involves complex
combinatorial optimisation. For example, if there are m
machines, each of which is required to perform n
independent operations. The combination can be potentially
exploded up to (n!)m operational sequences. Job shop
scheduling is one of the most famous scheduling problems,
most of which are categorised into NP hard problem. This
means that due to the combinatorial explosion, even a
computer can take unacceptably large amount of time to seek
a satisfied solution on even moderately large scheduling
problem. Another potential issue of complexity is the
assembly relationship [1- 2].
Job shop scheduling problem (JSSP) is comprised of a
set of independent jobs or tasks (J), each of which consists of
a sequence of operations (O). Each operation is performed
on machine (M) without interruption during processing time.
The main purpose of JSSP is usually to find the best machine
schedule for servicing all jobs in order to optimise either
single criterion or multiple scheduling objectives (measures
of performance) such as the minimisation of the makespan
(Cmax) or the penalty costs of tardiness and/or earliness.
Various optimisation approaches have been widely
applied to solve the JSSP. Conventional methods based on
mathematical model and/or full numerical search (for
example, Branch and Bound [3-4] and Lagrangian Relaxation
[5-6]) can guarantee the optimum solution. They have been
successfully used to solve JSSP. However, these methods
may highly consume computational time and resources even
for solving a moderate-large problem size and therefore
impractical if the computational limitation is exist.
Approximation optimisation methods or metaheuristics (e.g.
Tabu Search [7] and Simulated Annealing [8]), that usually
conduct stochastic steps in their search process, have
therefore been recently received more attention for solving a
large-size problem in the last few decades. However, it does
not guarantee the optimum solution.
Firefly Algorithm (FA) was recently introduced by Yang
[9], who was inspired by firefly behaviours. FA has been
widely applied to solve continuous mathematical functions
[9, 10]. FA seems promising for dealing with combinatorial
optimisation problem, but has been rarely reported. FA is a
type of metaheuristic algorithm therefore quality of problem
solutions depends on setting parameters in the algorithm.
There is however no report on international scientific
databases related to the investigation of the FA parameters’
setting and its application on the JSSP. The popular Job shop
scheduling problems that were used to test metaheuristic
algorithm regularly are the datasets from OR-Library [11].
The objectives of this paper are to: i) presents the
application of a recent developed metaheuristic called Firefly
Algorithm for solving JSSP; ii) explore the parameters of the
proposed algorithm; and iii) investigate the performance of
the FA with different parameter setting and compare with
best known solution from literature review. A job shop
scheduling tool was written in modular style using Tcl/Tk
programming language. The computational experiment was
designed and conducted using five benchmarking datasets of
the JSSP instance from the well-recognised OR-Library
published by Beasley [11].
The remaining sections in this paper are organised as
follows. Section 2 reviews the literature relating to job shop
scheduling problems. Section 3 describes the procedures of
the Firefly Algorithm (FA) and its pseudo code for solving
the JSSP. Section 4 presents the experimental design and analyses results. Finally, Section 5 draws the conclusions of
the research and suggests possible further work.
การแปล กรุณารอสักครู่..
