Docstoc

A hybrid genetic algorithm for no-wait flowshop scheduling problem

Document Sample
A hybrid genetic algorithm for no-wait flowshop scheduling problem Powered By Docstoc
					A hybrid genetic algorithm for no-wait
    flowshop scheduling problem
          Reporter:Lin Kelly
          Date:2011/07/13
Abstract
 Be Proposed to solve:the no-wait flow shop scheduling
  problem with the makespan objective.
 The proposed algorithm hybridizes the genetic algorithm
  and a novel local search scheme.
   Genetic Algorithm
   The proposed local search scheme combines two local
   search methods
     The Insertion Search
     Cut-and-Repair。

 Extensive experiments were conducted to evaluate the
 proposed hybrid genetic algorithm and the results
 revealed that the proposed algorithm is very competitive.
Introduce
 The Flowshop Scheduling Problem
   Once a job is started on the first machine, it has to be
   continuously processed through completion at the last
   machine without interuptions.
 The no-wait flowshop scheduling problem with makespan
 criterion was proved NP-hard by Rock (1984).
   The starting time of a job on the first machine may have to
   be delayed in order to meet the no-wait constraints.
 The proposed hybrid GA outperforms:
   VNS, GASA, The Tabu Search Methods, The PSO-Based
   Methods…
The no-wait flowshop scheduling problem
 Define:
   N jobs {J1, J2, …, Jn} are to be processed on a series of m machines {M1,
    M2, …, Mm}
   The process time of Ji on machine Mj is given as Tij
   At anytime, each job can be processed on at most one machine and
    each machine can process at most one job.
   Once a job is processed on a machine; it cannot be terminated before
    completion.
   The sequence in which the jobs are to be processed is the same for
    each machine.
   The no- wait constraint requires that the starting time of job Ji on
    machine Mj be equal to the completion time of job Ji on machine Mj-1
    for each i and each j.
   The objective is to find a permutation of jobs such that the
    makespan is minimized.
 Now let π ( π1, π2, …, πn ) be a permutation of jobs,
   Let C(πi, j) be defined as follows:




   The makespan of the scheduling corresponding to π is
    defined as:
   The objective of the no-wait flowshop scheduling
    problem is to find a permutation π* the set of all
    permutations II such that

    is satisfied.
The proposed hybrid genetic algorithm
  The Genetic Algorithm, GA
    Acts as a global search method in our algorithm because
     it is good at searching the whole solution space globally.
    An orthogonal-array-based crossover operator (OA-
     crossover) was utilized in our algorithm to improve the
     performance.
  The purpose of the local search is to find a better
   solution from the neighborhood of a solution.
    The Insertion Search, IS
      for searching a small neighborhood
    The Insertion Search with Cut-and-Repair, ISCR
      for searching a large neighborhood
 Initialization
  1. Set the values of the population size(PS), the crossover rate
     (Pc), the mutation rate(Pm), and the termination condition
     (Max_Stuck ), Set Sl = 0
  2. Produce the initial population that consists of PS randomly
     generated chromosomes.
  3. Evaluate the makespan of each chromosome in the
     population. Deposit the chromosome with the best
     makespan in BEST and its makespan in C *
 crossover, local search and selection
  4. Repeat Step 5 to Step 6 PS × Pc times. 。
  5.   Randomly choose two chromosomes (P1 and P2). Apply OA-
       crossover to the parent chromosomes to produce the child
       chromosome Child.
 6. Apply Insertion Search to Child. P1 and P2 are replaced by
    the best two of P1 , P2 and Child.
 7. Find the chromosome πb with the best makespan Cb in
    the population. If Cb > C* ,then BEST ← πb , if C* ←
    Cb , and set Sl ← 0, and apply and apply Insertion Search
    with Cut-and-Repair to BEST. Otherwise, Sl ← Sl+1。
 mutation
 8. Randomly choose Ps × Pm chromosomes from the
    population and apply the mutation operator to these
    chromosomes.
 9. If Sl > Max_Suck, then stop. Otherwise, go to Step 4.
Representation of chromosome and
definition of fitness function
 In GA, a chromosome represents a solution in the
  solution space.
 For the permutation flowshop scheduling problem, we
  use a permutation π of jobs as a chromosome.
   EX : there are six jobs and four machines in a flowshop
    scheduling problem :
     A permutation π = [2, 3, 1, 6, 5, 4]
     The sequence of jobs on each machine :J2, J3, J1, J6, J5, J4

 The definition of fitness function is just the reciprocal
  of the objective function value :
   the reciprocal of the makespan of the scheduling
    represented by the chromosome.
OA-crossover
 1.   Let N be the number of pieces into which the user wants
      to cut parent chromosomes P1 and P2 for recombination.
      Generate the orthogonal array LN+1(2N).




 2.   Randomly choose parent chromosomes P1 and P2.
      Randomly choose N -1 cut points to cut P1 and P2 into N
      subsequences.
3.       Consult the ith row of the OA LN+1(2N) and generate a
         sampled child Ci for i=1, 2,y, N+1.
          The jth subsequence of Ci is taken from the jth subsequence of P1 if the
           level of the jth factor in row i of the OA is 0.
          the jth subsequence of Ci is taken from the jth subsequence of P2.
           Repair Ci whenever it is necessary.
4. Calculate the evaluation value Ei of each sampled child Ci.
   The evaluation value Ei is the fitness value.
5. Calculate the main effect Fjk of factor j with level k, for j=1,
   2,y, N and k=0, 1.
An Example of OA-Crossover
  An OA L4(23) with two parent chromosomes Parent 1
  and Parent 2.
區域搜尋演算法(1)
 目的:是希望從一組解的鄰近區域(neighborhood)中找
  到更好的解。
 此問題採用插入操作(insertion operator)做為區域搜尋的
  鄰域(neighborhood)。
 由於染色體的長度為工作的個數n,採用插入操作共有
  n*(n-1)種組合。
  所花費的時間與品質改善的比率來看效果並不好。
 在所提出的Insertion Search (IS)中加入了一個控制搜尋
 範圍的變數α,以增加方法的彈性與效率。
  確實能有效改善求解的品質。
  但因為IS所搜尋的鄰域比較小的關係,有時候會落入區域
  最佳解,使基因演算法逐漸同質化。
區域搜尋演算法(2)
 故此paper提出提出另一個區域搜尋稱為Insertion
 Search with Cut-and-Repair (ISCR):
  結合Insertion Search與Cut-and-Repair procedure 搜尋較
   大的鄰域。
  Cut-and-Repair procedure :從目前的排程中,找出相鄰且
   造成較多閒置時間(idle time)的一對工作(Job),將它們從中
   切斷,然後找其他造成閒置時間較小的工作插入該位置。
  一個例子:
突變
 適當的突變(Mutation)可以提供多樣性以避免陷入區域最
  佳解。
 我們以交換操作(Exchange operator)做為突變的機制。
  隨機從基因演算法的群體(population)中選擇Ps × Pm個染色
   體。
  對每個染色體執行Exch(x,y)共t 次。
  x 與y 為隨機選擇的位置且1 <= t <=T,T 可由使用者決定。
 實驗結果 (比較一)               使用Reeves發表於1995的七個問題
                           20x5, 20x10, 20x15, 30x10, 30x15, 50x10, 75x20


 比較兩種local search:IS V.S. ISCR
                       因為後ISCR使用IS做為他的子程序。




                                                        較快!
               較差。




                較好!
                                                       較慢一點。
 實驗結果 (比較一)                使用Reeves發表於1995的七個問題
                           20x5, 20x10, 20x15, 30x10, 30x15, 50x10, 75x20


 比較兩種local search:IS V.S. ISCR




                不明
                顯進
                步。


                 穩定
                 進步
                 !
實驗結果 (比較二)
 比較 原始GA V.S. 混合GA
  針對所有GA設定
    交配率Pc 設為50%。
    突變率Pm 設為5%。
  AvgPRD排名:
    Hybrid GA 最優
    原始GA + ISCR 第二
    原始GA + IS 第三
    原始GA 第四
  即時α1到了10n,傳統依然
  表現不好,因為GA適合全
  域搜尋,並沒有改進到
  Local Search.
    使用Reeves發表於1995的七個問題
    20x5, 20x10, 20x15, 30x10, 30x15, 50x10, 75x20
實驗結果 (比較三)
 比較 混合GA V.S. 其他文獻上提到的演算法
  本篇paper的混合GA所使用的參數設定:




  比較表參數意義:
    n x m:工作數 x 機器數。
    Opt:流程時間。
    RAJ :第一代演算法解此問題,後來的metaheuristic都有贏此方法。
    Min:最佳解的流程時間。
    PRD:(Cmin – C*)/C* x 100%,
           這邊的C*是RAJ最佳解的流程時間,也就是Opt。
    這邊我們以PRD來比較metaheuristic優劣,粗體字是目前最佳解。
實驗結果 (比較三)
 比較 混合GA V.S. 其他文獻上提到的演算法



                               保持最好,
                               卻可以花最少時間。




                           21問題中的14項,保
                           持最好,但花最好時間。




                    21問題中的5項,已經進步到
                    所有metaheuristic的最佳解。
實驗結果 (比較四)
 Hybrid GA隨著搜尋時間增加,解的品質也會漸入佳境。
實驗結果 (比較五)
 Hybrid GA 也可以解決較大規模的問題。
結論
 在Reeves在1995年發表的21個問題,提高到最佳解,
  剩下的16個問題中的14個雖然保持在目前最佳解,但
  卻相較其他演算法來說使用較少的時間。
 有效的解決了在Taillard於1990年發表的120大型規模
  問題。
 可利用此Hybrid GA繼續解決其他排程問題。

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:29
posted:3/8/2012
language:English
pages:23