Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
A Comparative Study of AI Techniques for Solving Hybrid Flow Shop (HFS) Scheduling Problem
1. A Comparative Study of AI Techniques for
Solving Hybrid Flow Shop (HFS) Scheduling
Problem
Prepared by
Majid Hameed Ahmed
P63368
majid4000@yahoo.com
Advanced AI TS 6544 – Assignment 1
Submitted to
Prof. Dr.Azuraliza Abu Baker
Abstract—AI techniques have become the
dominate theory to solve many problems for
different domains due to its importance of
optimization problems for the scientific as well
as the real world problem. In this paper, we
study the behaviour of AI techniques for
solving Hybrid Flow Shop scheduling (HFSS)
problem, where, three well known techniques
are used namely, Genetic Algorithm (GA) ,
Simulated Annealing (SA) and Tabu Search
(TS) . Firstly, we explain the different
components and concepts of the mentioned
techniques. Then, we show how they employ to
solve Hybrid Flow Shop scheduling (HFSS)
problem. Finally, we compare among them by
presenting their advantages and disadvantages,
and also, we summaries our view.
Keywords— Genetic Algorithm , Simulated
Annealing and Tabu Search.
I. Introduction
Artificial Intelligence is a property or a
particular behavior is characterized by software
and makes it able to simulate the human mind and
the method of decision-making and the way it
works.
There are several properties and the most
important is the ability to learn property and
Conclusion. Does not have a specific definition of
the science of artificial intelligence, and uses
artificial intelligence to solve many of the
problems facing mankind in everyday life,
through a series of AI techniques It is these
problems that the human face is the problem
(HFSS) which will study in this research.
Scheduling problem is a problem that specializes
in identifying target resources (people, machine,
gate, etc.). Scheduling consist from a series of
stages of product in parallel working. Hybrid
Flow Shop Scheduling (HFSS) is a type of a
scheduling problem. (HFS) Is a collection of Flow
shop scheduling (FSS) and parallel machine.
Additionally, it is the popularization of flow shop
problems . In Hybrid Flow Shop (HFS), Jobs are
handled through the use of some of the steps that
symbolized ( l ) and is found in each of these
steps, there are two or maybe more matching
machine symbolized by ( i ), which can handle
this Job, as in Figure (1) HFS structure. And will
be equipped this function in each stage by
everyone from machine that sluggish. Machine
2. has the capability limitation any he could not
single device and only one of the processing work
at the same time .
(Fig. 1) parallel machine HFS structure
In the following identify scheduling problem :
Perm | Cmax |Hfm. The meaningful of this
character is : hybrid flow shop scheduling prblems
HFSS situation together with all of Jobs that have
equivalent succession and decreasing the total
time to end all the jobs is the aim That must be
resolved. Mathematical Formula for HFSS is
given by the following:
(Lee, Lei et al. 1997, Nowicki and Smutnicki
1998, Brah and Loo 1999, Kahraman, Engin et al.
2008, Ronconi and Henriques 2009)
Character of HFS:
J: Group of jobs To determine scheduled
|J| = n: the number of the jobs.
s: The Number of steps that will be process each
job .
|s|=s .
j: Subscript letters represents jobsj.
l: Subscript letters represents stepsl.
i: Subscript letters represents machine i.
lm : The numbers of the parallel
machine stepl.
B:means A much big number positive.
jlS :Starting the time of the jobs j in stepl.
Explain of the model is as follows:
Constraint(1) Shows us(Q) that the time to
complete last job (j) when the last step (s),(2)
Indicates that it is unreasonable to work each step
processor at step( l+1) before all job is
accomplished at step (l), (3), (4) and (5) they are
Processor in orders for all job (g) and ( f ) on
machine (I) at step (l) . These Could not be allow
to be processed set of jobs on machine at any
time,(6) could not allow a jobs j to be processing
on the most than one machine in any time,
Constraints (7) and (8)
States that the variables nonnegative and (0-1)
Integer values.
3. A HFSS problem with (5-jobs×3-steps) where the
steps have( 2, 3, and 3) machines Respectively is
given in Fig. (2).
Figure 2. Hybrid Flow Shop Scheduling Problem
To solving HFSS problem, we gave three
improvement heuristic searches, in this paper used
Simulated Annealing (SA), Tabu Search (TS)and
Genetic Algorithm (GA). We will apply this
improve heuristic search to solving corresponding
problem Cases to Direct comparison execution In
the three search algorithms. this problems to be
resolved contain of From the smallest problem to
the biggest problems which are substantial NP-
hard to be the systematically solve by applying
this search, this problems can be resolved in
multinomial calculation time.
As of the experience consequence, Study will be
three searches.
The buildings in this paper are systematic are as
follows In Chapter (II) descript of perfection
heuristic programs searching, as one type of the
heuristic programs searching, Will be reviewed.
Particular of perfection the heuristic programs
searching, which are SA, TS and GA will
reviewed this in part III, IV and V relatively Then
comes Experiment the result will presented in
part VI and finished this paper in conclusion in
part VII.
Literature review on HFS scheduling problems.
II. RELATED RESEARCH
Scheduling problem, are classified into three
problems of search algorithms, that consist of
heuristic algorithm, Rounding algorithms and
exact algorithms as in Figure. (3). Exact algorithm
is a perfect listing search that searches all Possible
solution in area.
It will be give us this algorithms is the best
solution.
Exact algorithm has finite implementation With
regard to the calculation of time to the problem of
large-scale.
bound and Branch is type of exact algorithm,
Rounding algorithms Is one of the search
algorithms which use mathematical drafting to
Guidance the search to detection best Possible
solution.
Heuristic algorithm is a type of search algorithms
which uses specific rule to search practical
4. solution in area to detection best possible
solution.
Figure (3) Compilation of search algorithm in building
problems
Heuristic searchs which consists precisely of 2
groups there are development the heuristic and
construction heuristic. (Koulamas 1998, Ronconi
2004).
Manufacture heuristic: is heuristic searchs Which
usually begin from a blank scheduling solution
sets, and at every iteration, will be added and one
job in the solution of schedule set even every jobs
are the scheduled.
Development heuristic search: is heuristic search
which usually begin from initial entire schedule,
Randomly generate or with specific send rules
and the schedule solution sets are edited in every
iteration even arrive specific stop criteria.
(SA), (TS) and (GA) are categorized as perfection
heuristic searchs.
The use of heuristic searches or approximation
search Comes Behind this background is much
less calculation time , until though this search can
able just give better solution, we luck if it
optimum.
Although this research can just give a best
solution, optimize if we lucky.
Heuristic search and approximation is Effective
for a wide range size of the problem, particularly
for problems that are difficult NP-hard to resolve
if the use of an algorithm exactly.
III. GENETIC ALGORITHM (GA)
GA: is type of the AI techniques used to solve the
problems, first discovered by (( John Holland)).
(GA) is a heuristic technique stochastic which
start from a large number of initial solutions, and
we call upon the population, and the new
population is configured through the generation.
Population is populated by individuals in the
chromosome.
And called on each element of the chromosome
names gene. Each of these genes this representing
job and the position of the genes representing the
sequence of job scheduling.
To create a new population, GA Works on the
choice the better individual of the total current
populace and using operator to Establish
population new on the a generation new.
GA has operator is: Crossover and Mutation.
Through crossover,(GA) products the
neighborhood to search a new possible solution.
(Martin 2009, Zhou, Cheung et al. 2009)
A. Selection
In this process is the selection of the better
individual together with a fitness function.
n
j
j
i
i
f
f
P
1
)( (9)
B. ( Crossover)
The Crossover is one of type operator (GA) to
create new individuals to be to replenish the
populace by the new generation.
Parent is choose at random from the individual of
the new generation are chosen through rate of
crossover, here will come to the possibility of Will
become a single individual one of the parents.
There are several methods with regard to
crossover, that are: Order Basis Crossover (OBX),
Position Basis Crossover (PBX), One Point
((1PX)), Order Crossover (OX), Cycle Crossover
Operator ((CX)), Partially Mapped Crossover
(PMX), Linier Order Crossover (LOX), The Two
Point Version 1 (2PX_V1), The Two Point
Version (2.0) (2PX_V2), and Two Point Version
(3.0) (2PX_V3.0). (Kellegöz, Toklu et al. 2008).
C. ( Mutation)
The aim of mutation is to make the search space
is not located in local optima. It trying to search
space that avoids local Optima, It is possible to
give a result near the Optima Global. Mutation is
5. the process done optional on the chromosome, and
this is why the possibility of a very small number
of mutations, and there are two common kinds of
mutations that are:
1) Inversion
Inversion mutation is the method through which
random mutation of a gene to another gene in
chromosome as in Fig.(4).
Fig.(4) Mutation Inversion
2) Pairwise Interchange
Pairwise interchange is a method through which
the exchange between the two neighboring genes
as in Fig. (5).
Figure 5: Mutation Pairwise
GA Steps:
STEPS (1): Generate initial population P(0)
arbitrarily and set (i=0) .
STEPS (2): REPEAT .
a. Fitness evaluate of every individual and
chose the fittest individual of the
population:
n
j
j
f
fi
f
f
PP
1
)()( (10)
b. Applied crossover accordance to rate of
crossover.
c. Applied mutation accordance to rate of
mutation.
d. Production offspring even if all
population is full of.
STEPS (3): An even stop criterion is
convinced.In Fig.(6), structure of Genetic
Algorithms is showed. in the structure, not
everyone separated, the crossover process
resulted , would be mutated. Just a few new
individual will able mutated count on its rate
of mutation .
Fig.( 6 ) GA structure
Are selected a maximum of 75% of the population
of the next generation through using function
fitness in the roulette wheel. Will fill the break of
the population through the crossover, which is
made from crossing random two individuals,
depending a crossover rate, of the population of
the past generated. The crossover operation will
iteratively finished even individuals in the next
generation amount to the population size. After
that, mutation process will be completed to a few
individuals in modern generation depending on
rate of mutation.
IV. SIMULATED ANNEALING (SA)
Is one kind of the AI techniques used to solve
problems, SA applied by Kirkpatrick (1982) to
optimization problems, SA used to improvement
heuristic search. Simulated annealing is further
determine compared to Genetic Algorithm .
Simulated Annealing randomly selects neighbors
and then decide if it is better or not, SA in initial
solution start from one, in every iteration, A new
solution must be born in each iteration to advance
the solution. Simulated Annealing some time
6. accepting worsening result in specific probability,
called probability. by means of probability, if can
avert, local optima while Exploration in the near
neighbors. SA uses exchange operator to generate
its neighbors, SA depends on the temperature
(start, stop) and the number of iteration at each
stage and change in the cost function.
Must be sufficient temperature to continue to find
the best solutions, does not require a very high
temperature, because the opportunity to choose
the best solution is the same opportunity if they
are low, we need at each stage sufficient number
of iteration so that we can find the best solution,
stop depends on the specific number of iterations
or low temperature.
There are a number of interchange operators that
of uses but there are two types most commonly
used, which are Pairwise Interchange and SWAP.
In GA, there are used two operators to fleeing
from local optima replacement of generating
neighborhood. In the starting, The Current, and
Candidate have corresponding original solution.
In every iteration, final solution that has been
registry compared to the current solution, If the
current solution is better , then the current solution
It becomes is candidate solution, if else (final
solution is better ), with a some probability, this
worsening current solution Can still acceptable.
This operation continues until stop condition is
achieved.
Algorithm for Simulated Annealing
V. TABU SEARCH
TS is one of the AI techniques used to solve
problems, TS as in the SA randomly start and
begins from one initial solution and generates the
number of iterations to generate a new solution
through its neighborhood show in Fig. (7). In TS,
The acceptance moving to the all solutions in
neighborhood is not Probability like SA, but
determine, In TS is accepted worsening move.
(Zhou, Cheung et al. 2009).
Fig. (7)TS Flowchart
7. TS Contains the memory from which logs recent
moves in the search area , Tabu move call it, and
retained in list and it is called Tabu list as in
Figure(8). That the task of the tabu list is to
remember recent moves Undertaken, and avoid
selecting similar steps.
Fig.(8)Tabu List
How to fix the parameter of tabu list size, tabu
tuner, neighborhoods size, neighborhoods type
and number of iteration.
TS Like SA, it used Exchange operator to
generate neighborhoods. and there are two types
more use operators: it is Pairwise Interchange and
SWAP. in every iteration, Tabu Search Generate
many neighbors. call on this a Inner Step. In
Figure. (9) for examples to used three from inner
steps.
Fig.(9) Example of inner step
After doing a certain number of iterations, TS
select the best solution from the current solution
and mind is the main solution and not necessarily
be better than the current solution.
Must before generate the neighbors, TS moving to
check the memory ( tabu list) ,After a number of
iterations choose the best of these solutions and
makes it the parent for the next generation.
Tabu Search(TS) Algorithm:
VI. EXPERIMENT RESULT
Data from Tailard’s problem set was used for
this experiment . They are made up of (12)
problems set and every problem set constitute (10)
problem Cases with every problem Cases, (14)
solutions are for submission consisting of (10)
Genetic Algorithm (GA) solutions, (2) Simulated
Annealing (SA) solutions and (2) Tabu Search
(TS) solutions. The (10) of ( GA) solutions come
from( 10) individual crossover chosen to
distinction the result because crossover are (GA),
the source of new neighborhood or generated
solutions. The different results obtained from the
SA and TS are as a result of the neighborhood
generation method from SWAP and pairwise
interchange. The overall number of operating are
(12) Problem sets( × ) (10) problems Cases on
every problem sets (×) (14) various solutions
approach equals 1680 of number of operating.
Results of (10) problem sets were averaged and
8. presented, consisting of 14 solutions. Each of
these problem sets, apart from the 14 solutions, it
also contain averaged Cmax and computation
time. Samples of best solutions from every
problem set are taken as presented in TABLEII.
The methods used in implementing the
experiment and extracting the results were an
improvement of the other methods earlier
considered. The analysis indicated that TS was
found to generate 6 results considered acceptable,
while 3 results comes from the results of SA, and
GA produced yet another 3 results. These results
are as a result of SWAP neighborhood generation
for TS and SA. However, the best results obtained
from (GA) stems from PMX , OX and 2PX_V2
and by implementing the work with, 5 inner steps
that generates neighborhoods for every iteration
results of TS turn out to be the best. For the
crossover rate of GA, 90% probability of gene is
most likely to be parents that will generate new
population. This makes GA to be a feasible
solution space for optimal solution, as the
probability tends to becomes narrower.
We compared the computation time as indicated
in table. II. In this experiment, though the
computation time shows that (SA) his the
minimum value of calculation time while the GA
carries the maximum computation time and
between these calculation time lies TS.
Additionally, GA and TS, computation times are
dependent on number of iteration and problem
size respectively, while SA depends only on
computation time. That is to say that GA
computation time is a function of population size
and TS computation time is of inner steps. that
efficiency of TS algorithm to solve the problem is
effective not only to solve computation time but
also to solve HFS problems.
9. VII . CONCLUSION
In this paper, we have three of artificial
intelligence techniques which we have explained
previously(GA,SA and TS), we applied these
techniques on HFS scheduling problems
,Through comparing the effectiveness and
efficiency of these algorithms we found the TS is
the best algorithm to solve the HFSS problem is
more effective and efficient calculate the time.
VIII. References:
Brah, S. A. and L. L. Loo (1999). "Heuristics for
scheduling in a flow shop with multiple
processors." European Journal of Operational
Research 113(1): 113-122.
Kahraman, C., et al. (2008). "An application of
effective genetic algorithms for solving hybrid
flow shop scheduling problems." International
Journal of Computational Intelligence Systems
1(2): 134-147.
Lee, C. Y., et al. (1997). "Current trends in
deterministic scheduling." Annals of Operations
Research 70: 1-41.
Nowicki, E. and C. Smutnicki (1998). "The flow
shop with parallel machines: A tabu search
approach." European Journal of Operational
Research 106(2): 226-253.
Ronconi, D. P. and L. R. S. Henriques (2009).
"Some heuristic algorithms for total tardiness
minimization in a flowshop with blocking."
Omega 37(2): 272-281.
Al-Harkan, I. M. (1997). On merging sequencing
and scheduling theory with genetic algorithms to
solve stochastic job shops, University of
Oklahoma.
Branke, J. and D. C. Mattfeld (2005).
"Anticipation and flexibility in dynamic
scheduling." International Journal of Production
Research 43(15): 3103-3129.
Chou, F. D. (2009). "An experienced learning
genetic algorithm to solve the single machine total
weighted tardiness scheduling problem." Expert
Systems with Applications 36(2): 3857-3865.
Fernandez-Marquez, J. L. and J. L. Arcos (2009).
An evaporation mechanism for dynamic and noisy
multimodal optimization. Proceedings of the 11th
Annual conference on Genetic and evolutionary
computation, ACM.
Goldberg, D. E. (1989). "Genetic algorithms in
search, optimization, and machine learning."
He, J. and X. Yao (2002). "From an individual to
a population: An analysis of the first hitting time
of population-based evolutionary algorithms."
Evolutionary Computation, IEEE Transactions on
6(5): 495-511.
Low, C. and Y. Yeh (2009). "Genetic algorithm-
based heuristics for an open shop scheduling
problem with setup, processing, and removal
times separated." Robotics and Computer-
Integrated Manufacturing 25(2): 314-322.
Reinelt, G. (1994). The traveling salesman:
computational solutions for TSP applications,
Springer-Verlag.
Russell, M. D., et al. (2003). Making the most of
two heuristics: Breaking transposition ciphers
with ants. Evolutionary Computation, 2003.
CEC'03. The 2003 Congress on, IEEE.
Zhu, T., et al. (2011). An adaptive strategy for
updating the memory in evolutionary algorithms
for dynamic optimization. Computational
Intelligence in Dynamic and Uncertain
Environments (CIDUE), 2011 IEEE Symposium
on, IEEE.
Kellegöz, T., et al. (2008). "Comparing
efficiencies of genetic crossover operators for one
machine total weighted tardiness problem."
Applied Mathematics and Computation 199(2):
590-598.