#### Abstract

In order to solve the joint optimization of production scheduling and maintenance planning problem in the flexible job-shop, a multiobjective joint optimization model considering the maximum completion time and maintenance costs per unit time is established based on the concept of flexible job-shop and preventive maintenance. A weighted sum method is adopted to eliminate the index dimension. In addition, a double-coded genetic algorithm is designed according to the problem characteristics. The best result under the circumstances of joint decision-making is obtained through multiple simulation experiments, which proves the validity of the algorithm. We can prove the superiority of joint optimization model by comparing the result of joint decision-making project with the result of independent decision-making project under fixed preventive maintenance period. This study will enrich and expand the theoretical framework and analytical methods of this problem; it provides a scientific decision analysis method for enterprise to make production plan and maintenance plan.

#### 1. Introduction

Production scheduling and maintenance activities are the two processes which are correlated with each other in an enterprise. Production department and maintenance department contribute to enterprise’s profit target together. Uncoordinated arrangement of production plan and maintenance plan will result in losses in enterprise’s business operations. But in actual production, production and maintenance department have different goals. Production department pursues the shortest completion time, which aims to avoid delay in delivery. Maintenance department pursues minimum maintenance cost. The difference in two departments’ objective will create conflicts. Therefore, in order to realize the best interests of the whole enterprise, it is necessary to study the optimal joint maintenance and scheduling decision scheme. We should consider the requirement of production and maintenance department jointly. In this paper, we continue our study on the basis of previous studies conducted by Ma and Ye [1]. We expect to make a further study on the multi-objective optimization problems of flexible job-shop scheduling and maintenance planning.

Many experts and scholars have done some research in the integrated optimization of production scheduling and equipment maintenance. Sortrakul et al. [2] proposed a classical model for production scheduling and preventive maintenance planning. Da et al. [3] established the joint optimization model of the batch scheduling and the maintenance under the flow shop; in order to minimize the maximum completion time, the corresponding genetic algorithm to solve this problem was put forward. Zhang et al. [4] did some research on flow shop scheduling problem with periodical maintenance. The authors took minimum makespan as the optimized objective and designed a kind of hybrid genetic algorithm to solve the problem. Chung et al. [5] also aimed to minimize the makespan of the jobs; the authors found an approach for scheduling of perfect maintenance in distributed production scheduling. With the objective of makespan minimization, Wang and Yu [6] studied joint optimization problem in job-shop scheduling. Mor and Mosheiov [7] focused on a single machine batch scheduling problem. Pan et al. [8] built a joint model for minimizing job tardiness. All the references above established the single objective optimization model, but some other researchers established the multiobjective optimizing model. Berrichi et al. [9] presented an algorithm based on Ant Colony Optimization paradigm to solve the joint production and maintenance scheduling problem; the goal is to simultaneously minimize the system unavailability and makespan. After that, Moradi et al. [10] attempted to simultaneously optimize two objectives for scheduling flexible job-shop problem: the minimization of the makespan for the production part and the minimization of the system unavailability for the maintenance part. Cui et al. [11] proposed an integrated production scheduling and maintenance policy in a single machine; the objective function is to minimize the weighted sum of two subgoals: one is the expectation of total deviation between the jobs’ planned start times and actual start times and the other is the expectation of the maximum tardiness. Lu et al. [12] applied the model to a single machine with failure uncertainty. All of the articles mentioned above are aimed at minimizing the maximum completion time. As research continues, it is not enough to consider the time factor only. It needs to be quick in production scheduling, but when maintenance activities are not sooner, that is better. The influence of maintenance costs should also be considered.

In the question about integrated optimization of makespan and maintenance costs, the following scholars have done useful research. Zammori et al. [13] focused on the single machine scheduling problem with planned maintenance; the objective is to minimize total earliness and tardiness penalties. Dhouib et al. [14] proposed a joint optimal production preventive maintenance policy for imperfect process manufacturing cell; the main objective is to minimize the overall cost, comprised of setup, maintenance, inventory holding, and shortage costs, as well as the cost incurred by producing nonconforming items. Rivera-Gomez et al. [15] extended this model to a production system subject to quality and reliability deteriorations; the objective is to minimize the total cost, comprising the inventory, backlog, repair, and overhaul cost. Fitouhi and Nourelfath [16, 17] dealt with the problem of integrating noncyclical preventive maintenance and tactical production planning for a single machine and multistate systems. The objective is to minimize the sum of costs associated with maintenance, production, and backorder. Nourelfath and Châtelet [18] extended this model to a parallel system; they dealt with the problem of integrating preventive maintenance and tactical production planning for a parallel system. Although the references above take the cost factor into consideration, they consider cost factor only; all these references neglect the time factor.

Pandey et al. [19] proposed a joint optimization policy for maintenance scheduling, quality control, and production scheduling; the objective is to minimize expected cost per unit time. Gan et al. [20] studied joint optimization of maintenance, buffer, and spare parts for a production system; the objective is to achieve the minimization of the long-term expected cost rate. The studies above simultaneously consider the two factors: completion time and maintenance costs. They adopt a cost per unit time method to deal with the objective function. Moghaddam [21] presented a new multiobjective model to determine an optimal preventive maintenance and replacement schedule. Total operational costs, overall reliability, and the system availability are incorporated as the objective functions. This literature considers the cost factor; the reliability and availability factor is also in consideration; research on reliability is similar to Berrichi et al.’s and Moradi et al.’s research.

Cui et al. [22, 23] studied a multiobjective optimization problem aimed at minimizing the makespan and maintenance cost simultaneously on a single machine system. A modified genetic algorithm was proposed to optimize the Pareto front. Yulan et al. [24] studied a multiobjective optimization problem jointly determining preventive maintenance planning and production scheduling for a single machine. Although some researchers have taken operation time and maintenance cost into consideration, they mainly focused on the single machine area; few researchers focus on multiobjective optimization study in flexible job-shop scheduling. At present, most of the research that referred to flexible job-shop scheduling is concentrated on the field of scheduling. In the aspect of maintenance, Xiong et al. [25] conducted a study about flexible job-shop scheduling stability considering machine fault. Li and Pan [26] studied a flexible job-shop scheduling problem considering maintenance activities; it was solved by a hybrid chemical-reaction optimization (HCRO) algorithm with the goal of minimizing the makespan. The research about maintenance activities in the flexible job-shop scheduling area above still aims to minimize the completion time. The purpose of this paper is to study integrated optimization problem of maintenance costs and total completion time under flexible shop scheduling; the corresponding joint optimization model is established; a double-coded genetic algorithm is designed to solve this problem. Finally, a simulation experiment is conducted by a set of data.

The main features of the papers mentioned above are summarized in Table 1.

#### 2. Problem Formulation

In this paper the flexible job-shop scheduling problem is studied; the problem can be described as follows: There are independent jobs that are indexed by . There are machines indexed by . Each job consists of a sequence of operations. The execution of operation requires one machine out of a set of given machines represented as . The processing time of an operation on machine is predefined and given by . The objective is to find a schedule that has the lowest value of makespan.

The model is based on the assumptions as follows: jobs are independent from each other, and machines are independent from each other; production preparation time on each machine and moving time between jobs in the machine are negligible; a job could be processed on one machine at the same time; the processing of job cannot be interrupted once it is started; all jobs share the same processing priority.

Machine failure rate rises with the increasing of machine’s service age. The failure rate of the machine is assumed to obey Weibull distribution. When machine failure happens, we take minimal maintenance measures to deal with failure. Minimal maintenance will not change machine’s service age but only make the machine condition return to the level before failure; minimal maintenance will not interrupt production. The machine needs to decide whether to perform preventive maintenance after each processing operation; preventive maintenance is perfect maintenance; it means the machine recovers as new after each maintenance operation.

We assume that denotes makespan of all jobs, denotes the reference value of makespan, denotes maintenance cost per unit time in the whole process, denotes the reference value of maintenance cost per unit time, denotes the production plan weight factor, denotes the maintenance plan weight factor, denotes preventive maintenance time, denotes minimal repair time, denotes preventive maintenance cost, denotes minimal repair cost, denotes failure rate function and follows Weibull distribution, denotes the initial service age of each machine, and , denote shape parameter and scale parameter in Weibull distribution, respectively.

Some intermediate variables involved in this model are shown as follows: denotes the completion time of the th operation of job on machine , denotes the processing time of the th operation of job on machine , denotes the time required to repair the machine in the th job of machine , and denotes preventive maintenance decision variables; if PM (preventive maintenance) on machine is performed after the th job, ; otherwise . denotes the expected number of failures in the th job of machine , denotes total maintenance cost of machine , denotes the processing time of the th job on machine , denotes the expected number of failures on machine during the whole planning period, denotes the number of preventive maintenance operations on machine during the whole planning period, and denotes the service age before the th job on machine .

The notation used in this paper is summarized in Notations.

We establish the model as follows:

Equation (1) is the target function. The reason why we built it in this form is explained as follows. In order to consider production and maintenance department goals synthetically, we propose weighted sum method to deal with maintenance cost and completion time. But the units used to measure the maintenance cost and completion time are different; we adopt a method mentioned in Huang et al. [27] to eliminate the differences between two units:

Equation (2) denotes the makespan of all operations of job. Equation (3) denotes the completion time of the th operation of job on machine . Equation (4) denotes the start time of the th operation of job on machine . Equation (5) denotes repair time of the th job on machine . Consider

Equation (6) denotes maintenance cost per unit time in the whole process. Equation (7) denotes total maintenance cost of machine in the whole process. Equation (8) denotes total number of preventative maintenance operations on machine during the whole planning period. Equation (9) denotes the total number of minimal repairs on machine during the whole planning period. Equation (10) denotes the number of expected failures in the th job on machine . Equation (11) denotes the service age before the th job on machine . Inclusion (12) denotes preventive maintenance decision variables, which could only be set to 0 or 1.

The objective function is aimed at balancing the objective of the production and maintenance department and minimizing the deviation between the actual scheme and the planned scheme of each department. We set the maximum completion time reference value equal to the total completion time when only production scheduling is considered, namely, the maximum completion time in a flexible job-shop scheduling problem regardless of the equipment maintenance. We set the maintenance cost per unit time reference value equal to the most economical maintenance cost per unit time. The calculating process is shown as follows. We assume that, during a preventive maintenance period , maintenance cost per unit time , we set the derivative of the equation equal to 0; we can get the optimal preventive maintenance cycle . Then by plugging into these formulas we can get the most economical maintenance cost per unit time .

#### 3. Genetic Algorithm

Flexible job-shop scheduling is a complex problem; multiple jobs are processed on multiple machines; each job is assigned to a unique processing route. Each chromosome of genetic algorithm denotes a potential solution to the problem; each gene on a chromosome can express the information of problem. So we can transform the difficult problem into genetic code and represent job and machine with genetic code, respectively; production and maintenance should be taken into consideration in the fitness function. This paper adopts a double-coded genetic algorithm to solve this problem; the algorithm process is represented as follows.

##### 3.1. Chromosome Representation

Each chromosome is divided into two parts: dispatching part and machine scheduling part. The first half of chromosome is the dispatching part; it denotes the order of all jobs processed on the machine; the second part (half) of chromosome is the machine scheduling part; it denotes that the machine corresponds to each working operation; both parts are represented with real-coded method. When the total number of jobs is , the total number of working operations is ; chromosome individuals are expressed as an integer string that is in length. For example, denotes 3 jobs that need to be processed 2 times on their machines; the first half denotes working operation; they are, in order, job 2, job 1, job 3, job 1, job 3, and job 2; the second part denotes the machine; they are, in order, the 1st machine in the set of machines; the 2nd machine in the set of machines; the 1st machine in the set of machines; the 2nd machine in the set of machines; the 1st machine in the set of machines; the 2nd machine in the set of machines. The machine scheduling part adopts 0-1 encoding in subroutine, where 0 means maintenance and 1 means no maintenance.

##### 3.2. Calculate the Objective Function

Fitness value is the basis of chromosome evaluation; fitness should reflect the requirements of the objective function, so we establish the fitness function of this algorithm according to the objective function. The objective function in this algorithm is the weighted sum of the deviation between the actual scheme and the planned scheme of each department; the lower this value is, the better the chromosome is. The target value of the th chromosome calculation formula is shown as follows:

##### 3.3. Selection Operation

Selection operation is to select excellent individuals from the old population at a certain probability to form new population; the purpose is to breed the next generation chromosome. The probability of the individual being selected is related to fitness value; the ones with better fitness have more chances to be selected. Lower target value is better in this paper, so ranking function is adopted to sort the target value from low to high and return the individual fitness value. Lower objective function value equates to higher fitness value. Then we can select the better individuals according to the fitness values through the roulette method. Let be the fitness value of individual and the number of population. Then the probability of selecting the individual is

##### 3.4. Crossover Operation

Crossover operation is to randomly select two chromosomes from the population and take out the first half of each chromosome and then randomly select crossover position in it to perform crossover operation. There may be some jobs extra or missing after crossover operation; we need to add or delete some working operation to ensure the number of processing operations; we will also adjust the corresponding machine, such as the following example: crossover operation is only for the first half; cross point is 4:

After crossing, redundant operation needs to be removed from certain job (such as job 2 in offspring 1); missing operation needs to be added (such as job 3 in offspring 1), that is, to make up the missing operation with the redundant operation. Then we will adjust the machine located in the latter half of the chromosome according to the machine before the crossover operation:

##### 3.5. Variation

In variation operation, we will select a chromosome from the population first and then randomly select two positions from the top of the chromosome; the values of the two positions are then inverted; their corresponding machine in the latter of the chromosome is also inverted. Variation operation guarantees the diversity of population. As shown in the following example, variation position is 3 and 6:

#### 4. Numerical Experiments

In order to verify the validity of the model and algorithm, we designed an example in this paper. The machine for each working operation is given in Table 2; the processing time for each working operation is presented in Table 3.

Our algorithm was implemented in MATLAB 2010b; the parameter values are given as follows: the failure rate function of machine follows , in Weibull distribution. Preventive maintenance time is , minimal repair time is , preventive maintenance cost is , minimal repair cost is , the initial service age of each machine is , and weight coefficients are , . We have worked out reference values , . Parameters of genetic algorithm are given as follows: population size is 100, maximum iterations are 1000, crossover rate is 0.8, and variation rate is 0.5. The program was run 15 times independently on an Intel Core2 2.2 GHz PC with 2 GB memory. The optimal results were chosen out. The best objective function value in 15 experiments is 1.0221, the corresponding preventive maintenance cost per unit time is 6.0246, and the makespan is 504.2130.

The result above shows that the algorithm proposed in this paper can solve the problem. In order to verify the validity of the joint optimization model, we contrast the joint decision results with the independent decision results. In the traditional workshop production process, the production department and maintenance department make their plan according to their own target, respectively; then they submit their plan to the decision-making department. It is hard to avoid conflict between the two departments, because production department aims to minimize the completion time, while maintenance department aims to minimize maintenance cost. Faced with this situation, the decision-making department tends to make plan according to maintenance department; fixed period preventive maintenance is adopted; maintenance cycle is the preventive maintenance cycle under the most economical maintenance costs unit time . In this case, we have worked out that . We adopt the method used in the joint decision scheme as mentioned in the previous paragraph; the same parameter is set; the program is run for 15 times independently on the same computer; then we get the results. The best objective function value in 15 experiments is 1.0718, the corresponding maintenance cost per unit time is 6.5717, and the makespan is 526.7905. The comparison result of joint decision-making and independent decision-making is shown in Table 4.

The searching process of genetic algorithm is random, so the result fluctuates in a small range. As it is shown in Table 4, when we contrast the overall levels between joint decision-making and independent decision-making, the target value of joint decision-making distributed in 1.02~1.07, the target value of independent decision-making distributed in 1.07~1.2, the target value of joint decision-making is better than independent decision-making. By comparison with the best solution of two schemes in the 15 times simulation experiments, joint decision-making is better than independent decision-making in all three indicators: target value, , and . We can conclude that joint decision-making is better than independent decision-making.

In the previous calculation, we assume that the production and maintenance weight coefficients are , . It shows that we give the same emphasis to production department and maintenance department. But in the practical industrial production, two weight coefficients are not necessarily the same. Next, we will study the influence of the weight coefficient on the objective function value. We will give , 5 arrays of values; then a comparative study of the different and value is conducted when , are given to the 5 values. The result is shown in Figures 1 and 2.

We can conclude from Figure 1 that different weight coefficient will affect the objective function value. In the optimal joint decision scheme, the higher the production weight value coefficient is, the lower the maximum completion time will be and the higher the maintenance cost per unit time will be. We can conclude from Figure 2 that joint decision-making is superior to independent decision-making no matter when the weight coefficient is given to any value; the superior degree did not change with the change in weight coefficient. It shows that the joint decision-making scheme we proposed has wide applicability.

#### 5. Conclusions

We study joint optimization of production scheduling and maintenance planning in the flexible job-shop problem in this paper; the model considering two factors is built. They are completion time and maintenance costs. The objective function is aimed at finding the best scheme which will minimize the deviation between production and maintenance department; double-coded genetic algorithm is adopted to solve this problem; the result is compared with the independent decision scheme under fixed preventive maintenance cycles. It turned out from the simulation experiment that we can get better objective function value from joint decision of production scheduling and maintenance activities. Moreover, the corresponding completion time is shorter, and maintenance cost per unit time is lower. Therefore, joint decision of production and maintenance activities can shorten the completion time of the enterprise and reduce running cost; it is better than the independent decision. Finally, we study the performance of the objective function values of the independent decision and joint decision under different weight coefficient; we can conclude that different emphasis on production and maintenance has an impact on their own results, but joint decision-making scheme is superior to independent decision-making scheme, and the superior degree did not change with the change in weight coefficient. The validity and wide applicability of the model and algorithm are proved through the simulation experiments.

In the future, we will try to adopt a new algorithm to solve this problem. In this paper, we adopted small sample data to conduct simulation experiments; we will add tests with large databases having a public repository of standard data for different types of tests. We will collect data from the production line of an enterprise. The results coming from our research will be more convincing and more able to solve practical problems. In this mathematical model, completion time and cost are considered, but it is not enough. In the future, we will consider more factors in the objective function, such as backlog of orders and the delivery delay penalty. We will research joint optimization of more goals.

#### Notations

: | Index of jobs, |

: | Index of machines, |

: | Index of operations, |

: | Index of jobs on one machine, |

: | Makespan of all jobs |

: | Reference value of makespan |

: | Maintenance cost per unit time |

: | Reference value of maintenance cost per unit time |

: | Production plan weight factor |

: | Maintenance plan weight factor |

: | Preventive maintenance time |

: | Minimal repair time |

: | Preventive maintenance cost |

: | Minimal repair cost |

: | Failure rate function |

: | Initial service age of each machine |

: | Shape parameter and scale parameter in Weibull distribution |

: | Completion time of the th operation of job on machine |

: | Processing time of the th operation of job on machine |

: | Time required to repair the machine in the th job of machine |

: | Preventive maintenance decision variables |

: | Expected number of failures in the th job of machine |

: | Total maintenance cost of machine |

: | Processing time of the th job on machine |

: | Expected number of failures on machine during the whole planning period |

: | Number of preventive maintenance operations on machine during the whole planning period |

: | Service age before the th job on machine . |

#### Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

#### Acknowledgment

This work is supported by the National Natural Science Foundation of China (no. 71472125).