Mathematical Problems in Engineering

Volume 2016, Article ID 7373617, 11 pages

http://dx.doi.org/10.1155/2016/7373617

## An Enhanced Discrete Artificial Bee Colony Algorithm to Minimize the Total Flow Time in Permutation Flow Shop Scheduling with Limited Buffers

School of Information and Electrical Engineering, Ludong University, Yantai 264025, China

Received 25 January 2016; Accepted 18 May 2016

Academic Editor: Vladimir Turetsky

Copyright © 2016 Guanlong Deng et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

This paper presents an enhanced discrete artificial bee colony algorithm for minimizing the total flow time in the flow shop scheduling problem with buffer capacity. First, the solution in the algorithm is represented as discrete job permutation to directly convert to active schedule. Then, we present a simple and effective scheme called best insertion for the employed bee and onlooker bee and introduce a combined local search exploring both insertion and swap neighborhood. To validate the performance of the presented algorithm, a computational campaign is carried out on the Taillard benchmark instances, and computations and comparisons show that the proposed algorithm is not only capable of solving the benchmark set better than the existing discrete differential evolution algorithm and iterated greedy algorithm, but also capable of performing better than two recently proposed discrete artificial bee colony algorithms.

#### 1. Introduction

In the scope of scheduling problem, the permutation flow shop scheduling problem (PFSP) is one of the most important and studied issues because of its theoretical complexity and practical application. The traditional permutation flow shop model is not concerned with the capacity for buffer between two consecutive machines, and once its processing on a machine is finished, a job waits till the next machine is available to process it. However, in real production environments, the buffers are usually limited. Examples lie in the petrochemical processing industries and cell manufacturing [1]. In such a scheduling problem, after finishing its operation on a machine, if the next machine is not available, a job is allowed to store in a buffer only if the buffers are not full. If the buffers are full, the job must wait on the incumbent machine, which may make the machine unable to process other jobs. One special case in the permutation flow shop scheduling problem with limited buffers (LBPFSP) is with no buffer, and the problem is called the blocking flow shop scheduling problem (BPFSP). The BPFSP has gained much attention in the past decades [2, 3] and its strong NP-hard characteristics were validated for the case with more than two machines [4]. Besides, the LBPFSP is also strongly NP-hard even for only two machines [5].

A great amount of research work has been carried out for the BPFSP. Many heuristics were introduced or proposed for the problem [6–9], but they are not good enough, especially for problem instance with big size. In recent years, lots of sophisticated metaheuristics have been developed for the problem. For the makespan criterion, the developed metaheuristics include genetic algorithm (GA) [10], tabu search (TS) algorithm [11], hybrid discrete differential evolution (HDDE) algorithm [12], iterated greedy (IG) algorithm by [2], hybrid modified global-best harmony search (hmgHS) algorithm [13], and variable neighborhood search (VNS) [14]. Recently, some researchers also proposed algorithms to minimize the total flow time (TFT) of the BPFSP. Wang et al. [15] developed an hmgHS algorithm and Deng et al. [16] put forward a discrete artificial bee (DABC) algorithm.

As a more general problem, the LBPFSP received increasing attention in recent years. An early overview article was provided by Leisten [7], and the article concluded that the NEH heuristic is competitive. Smutnicki [17] presented a TS algorithm for the case with two machines, and the TS algorithm was later generalized to the case with more machines by Nowicki [18]. Also, an effective TS algorithm was developed by Brucker et al. [19]. Later, a hybrid genetic algorithm (HGA) by Wang et al. [20] was shown to outperform the TS algorithm. Further, Liu et al. [21] presented a hybrid particle swarm optimization (HPSO) algorithm that yielded better results than HGA. Qian et al. [22] investigated a hybrid differential evolution (HDE) algorithm for not only the finite buffer case but also the blocking and infinite buffer case. An immune based approach (IA) was developed by Hsieh et al. [23] and its superiority over the HGA was asserted. Recently, in two papers, Pan et al. [24, 25] proposed two metaheuristics, chaotic harmony search (CHS) and HDDE, and showed their superiority over the HGA and HPSO algorithm, respectively. More recent work was developed by Zhao et al. [26] and Moslehi and Khorasanian [27]. The former proposed an improved PSO algorithm while the latter presented a hybrid variable neighborhood search (HVNS) hybridizing variable neighborhood search and simulated annealing algorithm. In the HVNS algorithm, a speed-up method was developed for several kinds of local search methods.

In the past decades, a bunch of metaheuristics based on swarm intelligence has been proposed and applied to scheduling problems [28, 29]. Among them, the artificial bee colony (ABC) algorithm [30–33] performed well in continuous function optimization, and Pan et al. [34] firstly proposed a discrete version of the ABC (DABC) algorithm for the lot-streaming flow shop scheduling. Then, Tasgetiren et al. [35] and Deng et al. [16] also developed a DABC algorithm for the PFSP and BPFSP, respectively. However, to the best of our knowledge, there is no published study on solving the LBPFSP using this algorithm. As for the LBPFSP, the existing work all focused on the makespan minimization, and no research work has been done with the TFT criterion, despite the prominence of the TFT criterion. Therefore, this paper aims to present a simple and effective DABC algorithm for the LBPFSP with the TFT criterion, which is not a well-studied scheduling problem. The developed DABC algorithm is based on the hybridization of ABC algorithm paradigm and local search methodology, and its performance is investigated by extensive experiments.

The rest of the paper is organized as follows. In Section 2, the considered problem with the TFT criterion is introduced and formulated. The proposed DABC algorithm is then presented as a simple and effective method for the TFT criterion case in Section 3. Section 4 provides the parameter calibration and performance investigation based on computational experiments. Finally, Section 5 gives out the conclusions and future work of the paper.

#### 2. Problem Formulation

In the LBPFSP with the TFT criterion, there are a set of jobs and a set of machines . The operation of job on machine requires a nonnegative time given as . Every job has to be processed consecutively from the first machine to the last machine . The following traditional flow shop assumptions apply. All jobs are independent and available for processing at time zero. At any time, each job is being processed at most on one machine and each machine is processing at most one job. There is no breaking down in machines. An operation can not be interrupted or split. The setup and release times are ignored. Besides, the “permutation” requires that the job processing sequence must be the same on all machines. Between two consecutive machines and , there is a buffer with the capacity equal to , . Therefore, the number of stored jobs between two consecutive machines is at most . If no buffer exists and the downstream machine is busy, a completed job has to stay on the current machine and thus may block it. The TFT is defined as , where is the time when job is finished. The objective is to minimize the TFT.

Since the TFT belongs to regular optimality criteria, there exists at least one active schedule that is optimal, and thus each schedule can be represented as a job permutation , where the job is processed as early as possible with respect to the given sequence in . Let denote the total flow time of and let denote the leaving time of job from machine . The values of can be calculated as follows [25]:

Using the above recursion, we can calculate the TFT with time complexity :

If all permutations are denoted as set , then we have to find a permutation in such that

Clearly, if , then the problem is the same as BPFSP. If , then the problem can be treated as PFSP. Due to the extensive work carried out for the BPFSP and PFSP, we will investigate the not-well-studied case; namely, the problem with the buffer size is finite.

#### 3. Discrete Artificial Bee Colony Algorithm

According to the framework of the ABC algorithm, the algorithm includes three kinds of bees, namely, employed bee, onlooker bee, and scout bee. The solutions (called food sources) of the algorithm form a population with size NP. After initialization of the population, the algorithm goes into an iteration till the stopping criterion is satisfied. In the iteration, the algorithm sends first each employed bee, then each onlooker bee, and finally each scout bee to explore food sources. Since the ABC algorithm is originally proposed for continuous function optimization, it needs the conversion from real domain to discrete domain if the continuous coding solution is used. Due to the discrete characteristic of the considered problem, this paper uses job permutation as solution representation and puts forward a discrete ABC algorithm. To make the algorithm simple yet effective, we adopt the idea of iterated greedy (IG) algorithm of Ruiz and Stützle [36]. The IG algorithm mainly includes two important procedures. First, the destruction and construction procedure produce a new solution by perturbing the incumbent solution which is usually a local optimum. By iteratively searching the insertion neighborhood of the new solution, a local search is imposed on the new solution. These two procedures are modified or improved in the new DABC algorithm to design the operators of the employed, onlooker, and scout bees. All the elements are elaborated in the following subsections.

##### 3.1. Initialization

As mentioned above, the DABC algorithm consists of NP food sources, where NP is a parameter controlling population size. For each food source, we need to generate a job sequence . The NEH heuristic and its variants are developed to construct the initial population with both quality and diversity. Wang et al. [15] pointed out that if the jobs are sequenced in increasing order rather than decreasing order in NEH, the obtained heuristic performs better than NEH heuristic for BPFSP with the TFT criterion. They denoted the variant as NEH_WPT heuristic. Besides, if the jobs are sequenced in random order in NEH, the obtained heuristic is a randomized heuristic, and it also works well according to our pilot experiments. We denote this randomized heuristic NEH_RAN. In our proposed algorithm, the solutions generated by both the NEH and NEH_WPT heuristics are included in the initial population, and the remaining NP-2 solutions of the initial population are generated by the NEH_RAN heuristic. Such an initialization scheme gives a guarantee of the population with good quality and diversity.

##### 3.2. Employed Bee

For each solution in the population, the employed bee is firstly applied. Thus there are also NP employed bees. In the employed bee phase, a procedure, bestinsert, is presented to find a neighboring food source from the incumbent food source.

Suppose that a permutation is denoted as and is a job with position index . By inserting job into th () position, we will get a permutation . Let denote the permutation resulting in the minimum objective value among all permutations. The bestinsert procedure is illustrated in Algorithm 1.