Scientific Programming

Volume 2017, Article ID 9016303, 11 pages

https://doi.org/10.1155/2017/9016303

## Flexible Job Shop Scheduling Problem Using an Improved Ant Colony Optimization

School of Mechanical and Automotive Engineering, Anhui Polytechnic University, Wuhu 241000, China

Correspondence should be addressed to Lei Wang; moc.621@0002ieladgnaw

Received 27 May 2016; Revised 31 October 2016; Accepted 24 November 2016; Published 26 January 2017

Academic Editor: Fabrizio Riguzzi

Copyright © 2017 Lei Wang 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

As an extension of the classical job shop scheduling problem, the flexible job shop scheduling problem (FJSP) plays an important role in real production systems. In FJSP, an operation is allowed to be processed on more than one alternative machine. It has been proven to be a strongly NP-hard problem. Ant colony optimization (ACO) has been proven to be an efficient approach for dealing with FJSP. However, the basic ACO has two main disadvantages including low computational efficiency and local optimum. In order to overcome these two disadvantages, an improved ant colony optimization (IACO) is proposed to optimize the makespan for FJSP. The following aspects are done on our improved ant colony optimization algorithm: select machine rule problems, initialize uniform distributed mechanism for ants, change pheromone’s guiding mechanism, select node method, and update pheromone’s mechanism. An actual production instance and two sets of well-known benchmark instances are tested and comparisons with some other approaches verify the effectiveness of the proposed IACO. The results reveal that our proposed IACO can provide better solution in a reasonable computational time.

#### 1. Introduction

Scheduling problem plays a very important role in many industrial systems [1]. Therefore it has attracted considerable researches for recent decades [2–7]. Job shop scheduling problem (JSP) is a branch of production scheduling and combinatorial optimization problems [8]. The flexible job shop scheduling problem (FJSP) is an extension of the job shop scheduling problem (JSP) [9]. Different from JSP, an operation can be processed on more than one candidate machines in FJSP. As a result, two subproblems facing FJSP are machine assignment and operation sequencing. Machine assignment is how to assign a machine for each operation while operation sequencing is how to schedule all operations on machines to optimize the given performance indicators [10]. Thus, FJSP is more complicated than the classical JSP and it has been proven to be a strongly NP-hard in 1993 [11].

The FJSP was first studied by Brucker and Schlie who used a polynomial approach to deal with two jobs FJSP [12]. In recent years, a large number of heuristics or metaheuristics have been employed to deal with FJSP, specifically through tabu search (TS) [13], simulated annealing (SA) [14], genetic algorithm (GA) [15, 16], particle swarm optimization (PSO) [17, 18], ant colony optimization (ACO) [19], artificial bee colony (ABC) [20], and hybrid approaches based on different heuristics and metaheuristics.

Among these metaheuristics, ACO has been proved to be an efficient approach for dealing with JSPs [21–23]. However, this approach still has some limitations in practice: (1) a lot of computational time will be spent on obtaining the ideal solution. (2) The search usually falls into local optimal solution. Therefore, in order to overcome these limitations, numerous improved ACO algorithms or hybrid ACO algorithms have been developed. A knowledge-based ACO approach for solving flexible job shop scheduling problems is proposed in [19]. An improved ACO was proposed to deal with dynamic hybrid flow shop scheduling in [24]. A modified ACO called two-pheromone ant colony optimization was proposed for solving flexible job shop scheduling problem with due window in [25]. Ant colony optimization combined with tabu search was employed to deal with JSP in [26]. Two-generation Pareto ant colony algorithm was proposed by Zhao et al. for solving multiobjective job shop scheduling problem [27]. A two-stage ant colony optimization was presented to minimize the makespan in [28]. Leung et al. [29] proposed an agent-based ant colony optimization for solving integrated process planning and scheduling problem.

Great efforts have been done for solving job shop scheduling problems or flexible job shop scheduling problems by improving ACO algorithms; however, these improved ACO algorithms are almost achieved by changing pheromone update mechanism. Although this can improve the search speed and solution efficiency, excessively strengthening the pheromone feedback of the best path may easily lead to premature convergence. Therefore, in order to solve these problems that exist in the basic ACO or improved ACO algorithms mentioned above, we propose an improved ant colony optimization (IACO) to solve the FJSP in this paper and the results are found to be closer or equal to the global optimum.

The remainder of this paper is organized as follows. Section 2 describes the model formulation for FJSP. The proposed IACO is introduced in Section 3. Experimental test, comparison, and discussion are reported in Section 4. The conclusions and future work are given in Section 5.

#### 2. Description of FJSP

The FJSP can be depicted as follows [30]: there are jobs and machines. Each job comprises operations . Each operation can be processed by only one machine from the candidate machine set . The assumptions for FJSP are as follows:(1)Each machine can be used at time zero.(2)Each job can be processed at time zero.(3)Each machine can process only one operation at a time.(4)Once an operation starts on a machine, it cannot be interrupted.(5)The sequences of operations for all jobs are prespecified.(6)Neither due dates nor release times are specified.(7)The transportation times among machines are not considered.(8)All machines are not always identical.

The objective is to minimize the makespan and the mathematical model of the FJSP is shown as follows [31]:where is the job index, . is the machine index, . is the operation index, . represents total jobs. represents total machines. represents total operations of job . represents processing time of th operation of job on machine . is the completed time of . , if machine is selected for ; otherwise, .

Equations (2) and (3) are the operation sequence constraint. Equation (4) indicates that each operation can only be processed on one machine from machine set at a time. Equations (5) and (6) are decision variables which are 0-1 binary variable and nonnegative, respectively.

#### 3. Improved Ant Colony Optimization for FJSP

##### 3.1. Principles of Ant Colony Optimization

As social insects, ants live in colonies and their behavior is governed by the goal of colony survival rather than being focused on the survival of individuals. The main idea of the ACO is inspired by the behavior of real ants searching for food. The real ants can communicate with each other about food sources through pheromone. When the real ants move along, they release pheromone on the path they have passed. Other ants are attracted to follow them by observing the pheromone trail. Therefore, the path is enhanced and thus attracts more ants [32, 33]. Compared with some other heuristics, the ACO is characterized by distributed computation and positive feedback [34].

If the operations are looked at as ants, it can be seen easily that there exist lots of similarities between an ant colony’s foraging process and FJSP. Operations must search for proper machine to process them. Like ants, they want to search for the shortest path. Ants’ nest and food source are similar with start and end dummy operation, respectively. If we look at an operation as an ant’s path for foraging food, then the relation of any two operations can be looked at as an alternative path, and different processing time of all the operations on the machine just like different length of paths.

The disjunctive graph of an FJSP example can be described in Figure 1. There are three jobs and each job has three operations. J1-1, J1-2, and J1-3 represent three operations of job 1. J2-1, J2-2, and J2-3 represent three operations of job 2. J3-1, J3-2, and J3-3 represent three operations of job 3. Each job must comply with the process sequence constraints. According to the constraints of process sequence and machine occupancy, ants travel total nine operations of the three jobs and search for the operation order on each machine and then gain the optimal or near-optimal solution for the flexible job shop scheduling problem. Therefore it is feasible to use ACO to solve the flexible job shop scheduling problems.