# Impact of Personnel Flexibility on Job Shop Scheduling

Authors: Ren Lin; Guohua Zhou; Aijun Liu; Hui Lu; Tonglei Li
Journal: Scientific Programming
 (2016)

---

## Abstract

Considering the lack of the research on the relationship between HR flexibility and scheduling effect, a resource-competency matrix-based method was proposed in order to reveal the quantitative relationship between them. Meanwhile, a job shop scheduling model with HR flexibility was established and the improved genetic algorithm was used to solve the model. A case analysis demonstrated significant impact of HR flexibility on the scheduling effect, which provided valuable guidance for building flexible manufacturing systems.


---

## Body

## 1. Introduction

In the traditional production scheduling problems, it is usually assumed that the workpiece processing time is a constant and the permanent workers are always available. However, in the actual production activities, the processing time of workpiece is not fixed, which changes with shifts of processing workers. For instance, in a standardized operating environment, the varying technical proficiencies of skilled and new workers will result in differences in processing time. For the problems concerning the optimal scheduling of product design projects, Yingzi et al. [1] proposed evaluation indices for task-personnel-resource matching degree and relevant calculation methods. They introduced the matching degree between the designer, technical resources, and design tasks into the scheduling model, along with the intensity of technical resources. Bixi et al. [2] studied the HR scheduling process in SMEs, where the staff deployment program is adjusted according to the production task requirements and different loads in production units to implement a self-adaptive division of labor model. For the problems concerning the optimal scheduling of production management, Yaling et al. [3] studied the single-piece, small-batch flexible job shop scheduling problem by considering the diversity of operator skills and difference in skill levels for different tasks and calculated the matching degree between task members based on the operators’ cumulative operating time on each task. A variety of methods are used to study the task-personnel-resource matching problem. Li et al. [4] acquired the optimal labor allocation scheme for flexible manufacturers with the genetic algorithm and dynamic programming. Smet et al. [5] solved the staffing problem where labor cost was decided by job sequence by employing the dynamic programming. Pan et al. [6] proposed a two-phase heuristic algorithm for integer programming to solve the staff scheduling problem. Personnel arrangements in flow shop scheduling were studied preliminarily in literatures [7, 8]. Di Francesco et al. [9] classified multiskilled assemblers into several categories according to the skill level and created a mixed integer programming model targeting minimizing the number of staff rotations between assembly lines to solve the problem. Corominas et al. [10] divided motorcycle assemblers into two categories, that is, skilled and unskilled ones, and built a staffing model aiming to reduce the tact time and lower the number of workers. Parisio and Neil Jones [11] built an integrated optimization-based framework for workforce planning in the retail market. Sophisticated forecasting methods are integrated with stochastic programming. Miralles et al. [12] created a staffing model with the maximum productivity and employee satisfaction as the goals and then used branch and bound algorithm to solve the problem. Li and Kelin [13] built a worker-task matching model for the flexible manufacturers with the aim of optimizing labor allocation and job sequencing. Genetic algorithm and dynamic programming method were used for solving the problem. Jun et al. [14] proposed the scheduling model based on the resources optimization disposition, the resource costs, and earliness or tardiness penalty, in which three-layer encoding method was used to realize dynamic scheduling of flexible constraints based on the variable craft route and the man-machine coordination. The nondominated sorting genetic algorithm was also used to optimize production path under the coexistence of multiple production lines, simultaneously, and optimize the wage cost and earliness-tardiness penalty of workpiece. Cao et al. [15] built an assembler scheduling model to maximize the sum of job adaptability. A heuristic algorithm based on the fitness matrix is presented. Mingzhou and Na [16] created a task competence index-based optimized shop staffing model for the goals of job quality and operating time. The hybrid particle swarm optimization (PSO) algorithm was used to solve the model, and the specific solving process was given.The above representative research findings on scheduling problem under the constraint of personnel flexibility, respectively, indicated the preliminary modeling and relationship between human resources and task matching in the product design; personnel assignment problem under different process routes; and worker-task matching model for production shops. However, these studies were limited to specific cases merely, which lack in-depth exploration on the relationship between personnel flexibility and scheduling effect, particularly the analysis and research into the quantitative relationship between them. As the most important resource in production activities, the study of scheduling problem with personnel flexibility is of great practical significance. Thus, this paper studies the job shop scheduling problem with personnel flexibility with the improved genetic algorithm by referring to the existing research on personnel flexible job scheduling and analyzes the rules and the interaction between personnel flexibility and scheduling effect, striving to provide a theoretical basis for the optimal designing and implementation of job shop scheduling.


## 2. Mathematical Model of Personnel Flexible Job Scheduling

Suppose the number of workpieces isn, then J
=
J
1
,
J
2
,
…
,
J
n
,
∀
J
i
∈
J, which need to be processed through procedures O
i
=
{
O
i
,
1
,
O
i
,
2
,
…
,
O
i
,
j
,
…
,
O
i
,
n
i
}. The machine set is A
=
M
1
,
M
2
,
…
,
M
m. One or more processing machines are available for each procedure and the processing time might vary by different machines. Each worker can operate one or more machines and the worker set is denoted as H
=
h
r
1
,
…
,
h
r
l.


### 2.1. Measurement of Personnel Flexibility

Personnel flexibility refers to the corporate personnel’s ability to quickly and efficiently handle different tasks with uncertain changes during the production process, which emphasizes the versatility of employees. To study the impact of personnel flexibility on corporate productivity, the personnel flexibility is characterized by the personnel-machine relationship diagram. Assume that there areh
r
l workers, who are independent of each other, as well as M
m machines in the production system. The corresponding actual production line and personnel-machine relationship diagram are shown in Figures 1 and 2. Figure 2 demonstrates that different workers have the skills to operate different machines. For example, person one can operate machine one and machine two; however, person two can machine one, machine two, and another machine.Figure 1
U-shaped production line.Figure 2
Personnel-machine relationship diagram.Based on the personnel-machine relationship diagram, a matrix structure can be mapped, which is known as personnel-machine (PM) matrix. PM matrix is a matrix ofh
r
l
×
M
m denoted by PM. P
M
g
v is the element corresponding to the vth column of the gth row.(1)
PM
g
v
=
1
,
Personnel
g
is  capable  of  operating  machine
v
0
,
P
e
r
s
o
n
n
e
l
g
i
s
i
n
c
a
p
a
b
l
e
o
f
o
p
e
r
a
t
i
n
g
m
a
c
h
i
n
e
v
.PM matrix can be obtained.(2)
PM
=
P
M
11
P
M
12
⋯
P
M
1
M
m
P
M
21
⋱
⋮
⋮
⋱
⋮
P
M
h
r
l
1
⋯
⋯
P
M
h
r
l
M
m
.For PM matrix of any size, the flexibility of production line workers can be measured with the flexibility equation. The relevant calculation equation is shown(3)
FI
=
∑
g
=
1
h
r
l
∑
v
=
1
M
m
P
M
g
v
h
r
l
·
m
.FI value ranges between (0,1]. The greater the value of FI is, the higher the personnel flexibility of system will be, and vice versa. The greater FI value suggested that there were many workers in the system that can operate multiple machines and several scheduling plans available. Equation (3) effectively expresses the relationship between personnel flexibility and scheduling allocation. The existing literatures pay little attention to this issue.For (3), three situations would occur during calculation: the number of rows was greater than the number of columns and square matrix; the number of columns was greater than the number of rows. To facilitate the description of subsequent cases, these three types of PM matrices were discussed preliminarily.(a)
When the number of rows was greater than the number of columns,h
r
l
>
M
m. The demarcation between personnel flexibility and nonflexibility was the presence of at least one person who was capable of operating more than one device. To simplify the proof process, it was assumed that the machines were operated in ascending order of row numbers in the PM matrix. In this way, there would be (h
r
l
-
M
m) number of idle workers, who were ready for processing tasks. Under such conditions, FI calculation satisfied the following inequality:(4)
FI
=
∑
g
=
1
h
r
l
∑
v
=
1
M
m
P
M
g
v
h
r
l
×
m
>
M
m
h
r
l
×
M
m
=
1
h
r
l
.
(b)
When the PM matrix was square, the number of rows was equal to the number of columns. Assuming that all the diagonal elements were 1, the calculation of FI satisfied the following inequality:(5)
FI
=
∑
g
=
1
h
r
l
∑
v
=
1
M
m
P
M
g
v
h
r
l
·
m
>
M
m
h
r
l
h
r
l
×
M
m
=
1
h
r
l
M
m
.
(c)
When the number of columns was greater than the number of rows,M
m
>
h
r
l. To simplify the proof process, it was assumed that the machines were operated in ascending order of row numbers in the PM matrix. Then (M
m
-
h
r
l) number of machines were idle, and thus it was necessary to select (M
m
-
h
r
l) number of employees from h
r
l number of them to operate the remaining (M
m
-
h
r
l) number of machines. Workers were already flexible in such an environment and correspondingly FI was calculated as shown in (5).(6)
FI
=
∑
g
=
1
h
r
l
∑
v
=
1
M
m
P
M
g
v
h
r
l
×
m
>
h
r
l
h
r
l
×
M
m
=
1
M
m
.


### 2.2. Personnel Flexibility Model

Conventional production scheduling problems seldom consider the impact of personnel. But, in the actual production, a machine may be operated by different workers, where the processing time varies with the workers’ skills and experience levels. Therefore, production scheduling problems which take personnel flexibility into account are more complex ones. Firstly, arranging suitable machines for a certain procedure is required in the processing of workpiece. Secondly, appropriate personnel needs to be selected from a set of workers who were capable of operating the machine. Only in this way can the processing and sequencing of products actually be completed.t
i
,
j
,
h
r was utilized to represent the processing time of workpiece i on machine j (including the workpiece preparation time) by worker h
r; C
(
j
i
,
k
,
h
r
) denoted the completion time of workpiece j
i on machine k by worker h
r; and π represented a sequence of all workpiece; then the completion time of n number of workpieces on m number of machines can be expressed by the following equations:(7)
C
j
1
,
1
,
h
r
=
t
j
1
,
1
(8)
C
j
i
,
1
,
h
r
=
C
j
i
-
1
,
1
,
h
r
+
t
j
i
,
1
i
=
2
,
…
,
n
(9)
C
j
i
q
,
k
,
h
r
=
max
⁡
C
j
i
,
k
-
1
,
h
r
,
C
j
i
-
1
,
k
,
h
r
+
t
j
i
,
k
i
=
2
,
…
,
n
;
k
=
2
,
…
,
m
(10)
C
m
a
x
π
=
C
j
n
q
,
m
,
h
r
(11)
π
∗
=
arg
⁡
C
m
a
x
π
=
C
j
n
q
,
m
,
h
r
⟶
m
i
n
,where (10) was the maximum completion time and (11) denoted the scheduling order corresponding to the minimization of the maximum completion time.In addition, production scheduling problems considering personnel flexibility also needed to satisfy the following constraints:(1)
One machine can only process one workpiece at a time.
(2)
A workpiece can only be processed with a single machine at a time.
(3)
No processing procedure can be interrupted once started.
(4)
Different workpiece owns the same priority level.
(5)
There are no precedence constraints between procedures of different workpiece, while precedence constraints exist between procedures of the same workpiece.
(6)
All workpieces are processable at time zero.
(7)
Workers are available at any time as long as there is no conflict.


## 2.1. Measurement of Personnel Flexibility

Personnel flexibility refers to the corporate personnel’s ability to quickly and efficiently handle different tasks with uncertain changes during the production process, which emphasizes the versatility of employees. To study the impact of personnel flexibility on corporate productivity, the personnel flexibility is characterized by the personnel-machine relationship diagram. Assume that there areh
r
l workers, who are independent of each other, as well as M
m machines in the production system. The corresponding actual production line and personnel-machine relationship diagram are shown in Figures 1 and 2. Figure 2 demonstrates that different workers have the skills to operate different machines. For example, person one can operate machine one and machine two; however, person two can machine one, machine two, and another machine.Figure 1
U-shaped production line.Figure 2
Personnel-machine relationship diagram.Based on the personnel-machine relationship diagram, a matrix structure can be mapped, which is known as personnel-machine (PM) matrix. PM matrix is a matrix ofh
r
l
×
M
m denoted by PM. P
M
g
v is the element corresponding to the vth column of the gth row.(1)
PM
g
v
=
1
,
Personnel
g
is  capable  of  operating  machine
v
0
,
P
e
r
s
o
n
n
e
l
g
i
s
i
n
c
a
p
a
b
l
e
o
f
o
p
e
r
a
t
i
n
g
m
a
c
h
i
n
e
v
.PM matrix can be obtained.(2)
PM
=
P
M
11
P
M
12
⋯
P
M
1
M
m
P
M
21
⋱
⋮
⋮
⋱
⋮
P
M
h
r
l
1
⋯
⋯
P
M
h
r
l
M
m
.For PM matrix of any size, the flexibility of production line workers can be measured with the flexibility equation. The relevant calculation equation is shown(3)
FI
=
∑
g
=
1
h
r
l
∑
v
=
1
M
m
P
M
g
v
h
r
l
·
m
.FI value ranges between (0,1]. The greater the value of FI is, the higher the personnel flexibility of system will be, and vice versa. The greater FI value suggested that there were many workers in the system that can operate multiple machines and several scheduling plans available. Equation (3) effectively expresses the relationship between personnel flexibility and scheduling allocation. The existing literatures pay little attention to this issue.For (3), three situations would occur during calculation: the number of rows was greater than the number of columns and square matrix; the number of columns was greater than the number of rows. To facilitate the description of subsequent cases, these three types of PM matrices were discussed preliminarily.(a)
When the number of rows was greater than the number of columns,h
r
l
>
M
m. The demarcation between personnel flexibility and nonflexibility was the presence of at least one person who was capable of operating more than one device. To simplify the proof process, it was assumed that the machines were operated in ascending order of row numbers in the PM matrix. In this way, there would be (h
r
l
-
M
m) number of idle workers, who were ready for processing tasks. Under such conditions, FI calculation satisfied the following inequality:(4)
FI
=
∑
g
=
1
h
r
l
∑
v
=
1
M
m
P
M
g
v
h
r
l
×
m
>
M
m
h
r
l
×
M
m
=
1
h
r
l
.
(b)
When the PM matrix was square, the number of rows was equal to the number of columns. Assuming that all the diagonal elements were 1, the calculation of FI satisfied the following inequality:(5)
FI
=
∑
g
=
1
h
r
l
∑
v
=
1
M
m
P
M
g
v
h
r
l
·
m
>
M
m
h
r
l
h
r
l
×
M
m
=
1
h
r
l
M
m
.
(c)
When the number of columns was greater than the number of rows,M
m
>
h
r
l. To simplify the proof process, it was assumed that the machines were operated in ascending order of row numbers in the PM matrix. Then (M
m
-
h
r
l) number of machines were idle, and thus it was necessary to select (M
m
-
h
r
l) number of employees from h
r
l number of them to operate the remaining (M
m
-
h
r
l) number of machines. Workers were already flexible in such an environment and correspondingly FI was calculated as shown in (5).(6)
FI
=
∑
g
=
1
h
r
l
∑
v
=
1
M
m
P
M
g
v
h
r
l
×
m
>
h
r
l
h
r
l
×
M
m
=
1
M
m
.


## 2.2. Personnel Flexibility Model

Conventional production scheduling problems seldom consider the impact of personnel. But, in the actual production, a machine may be operated by different workers, where the processing time varies with the workers’ skills and experience levels. Therefore, production scheduling problems which take personnel flexibility into account are more complex ones. Firstly, arranging suitable machines for a certain procedure is required in the processing of workpiece. Secondly, appropriate personnel needs to be selected from a set of workers who were capable of operating the machine. Only in this way can the processing and sequencing of products actually be completed.t
i
,
j
,
h
r was utilized to represent the processing time of workpiece i on machine j (including the workpiece preparation time) by worker h
r; C
(
j
i
,
k
,
h
r
) denoted the completion time of workpiece j
i on machine k by worker h
r; and π represented a sequence of all workpiece; then the completion time of n number of workpieces on m number of machines can be expressed by the following equations:(7)
C
j
1
,
1
,
h
r
=
t
j
1
,
1
(8)
C
j
i
,
1
,
h
r
=
C
j
i
-
1
,
1
,
h
r
+
t
j
i
,
1
i
=
2
,
…
,
n
(9)
C
j
i
q
,
k
,
h
r
=
max
⁡
C
j
i
,
k
-
1
,
h
r
,
C
j
i
-
1
,
k
,
h
r
+
t
j
i
,
k
i
=
2
,
…
,
n
;
k
=
2
,
…
,
m
(10)
C
m
a
x
π
=
C
j
n
q
,
m
,
h
r
(11)
π
∗
=
arg
⁡
C
m
a
x
π
=
C
j
n
q
,
m
,
h
r
⟶
m
i
n
,where (10) was the maximum completion time and (11) denoted the scheduling order corresponding to the minimization of the maximum completion time.In addition, production scheduling problems considering personnel flexibility also needed to satisfy the following constraints:(1)
One machine can only process one workpiece at a time.
(2)
A workpiece can only be processed with a single machine at a time.
(3)
No processing procedure can be interrupted once started.
(4)
Different workpiece owns the same priority level.
(5)
There are no precedence constraints between procedures of different workpiece, while precedence constraints exist between procedures of the same workpiece.
(6)
All workpieces are processable at time zero.
(7)
Workers are available at any time as long as there is no conflict.


## 3. Improved Simulated Annealing Genetic Algorithm (ISAGA)

Genetic algorithm (GA) has fast convergence speed. When an excellent chromosome has a far higher fitness value than the average population in the computation, its probability of being selected increases in case of proportional selection, thereby leading to the “prematurity” phenomenon. The simulated annealing algorithm (SA) has the ability to jump out of local optima, but the principal shortcoming of simulated annealing (SA) is that it takes too much computer time. To solve this premature convergence and time-consuming problem, the paper proposes the improved simulated annealing genetic algorithm (ISAGA), so as to improve the optima searching performance.


### 3.1. Encoding

Efficient encoding mechanism can help reduce the complexity of computation and avoid repair mechanisms. In this paper, three-layer encoding was adopted. The first layer was procedure-based procedure sequence encoding, where the processing order of various procedures was determined. The second layer was machine-based machine allocation encoding, where the processing machine for each procedure was identified. The third layer was the encoding of workers who operate the machines. Such an encoding approach directly reflected the feasible allocation schemes during scheduling process, where feasible solutions could always be produced. A three-encoding example is illustrated in Figure3. In this example, there are three workpieces; each workpiece has three operations. For the first operation of workpiece one, three machines (machines one, three, and six) can be used to execute this operation; if the machine three is selected, persons one and two meet the operational requirement; in this example, person two is selected to operate machine three.Figure 3
Three-layer encoding.Procedure-Based Encoding. Code length was the total number of procedures, while each code was a permutation of all procedures. The workpiece number which appeared at the jth time represented the jth procedure of the workpiece.Machine-Based Encoding. Its length was the same as the procedure-based encoding. Each encoded bit corresponded to the processing machine selected for each procedure. Each position in the machine codes represented the sequence number of machine selected for the procedure in the set of available machines.Personnel Encoding. Its length was the same as the procedure-based encoding. Each code corresponded to the processing machine for each procedure. Each position in the personnel codes represented the position of worker selected for operating the machine in the set of available workers.


### 3.2. Crossover Operator

The purpose of crossover operation is to retain the good information in the parent chromosomes through information exchange between them. In this paper, chromosomes consisted of three parts. The specific crossover process can be represented as follows.(1)
Procedure chromosomes: multiple workpieces were operated in each chromosome using workpiece-based POX crossover, which can well inherit the fine characteristics of parents.
(2)
The workpiece setJ
=
J
i
1
≤
i
≤
n was randomly divided into two sets: Jobset1 and Jobset2.
(3)
Workpieces included in Jobset1/Jobset2 in the parent chromosome P1/P2 were copied to progeny chromosome C1/C2, while maintaining their locations and sequences.
(4)
Workpieces not included in Jobset1/Jobset2 in the parent chromosome P1/P2 were copied to progeny chromosome C1/C2 according to their original sequences.
(5)
Crossover of machinery and personnel chromosomes was done by the same method as used for the procedure chromosomes, while ensuring the correspondence between them was unchanged during the crossover process.


### 3.3. Mutation Operator

In mutation operation, minor disturbances were made on chromosomes by randomly altering certain genes in them to increase population diversity.For procedure sequencing section, three mutation methods, that is, exchange, insertion, and reverse sequencing, were adopted. Each time, one of these mutation methods was randomly selected for operation.For processing machinery selection part, a procedure was randomly selected, and then the processing machine currently in the chromosome was replaced with a different machine selected from the set of machines available for the procedure.For personnel chromosome selection section, a machine was randomly selected from machine codes, and then the current staff in the chromosome was replaced with a different worker who was selected from the set of personnel capable of operating the machine.


### 3.4. Algorithmic Flow

For job scheduling problem in a personnel flexibility environment, the flow of ISAGA was as follows.Step 1.
Initialize the algorithm parameters (number of populationpopsize, maximum number of iterations T
m
a
x, initial acceptance probability p
r, crossover probability p
c, mutation probability p
m, and annealing rate λ).Step 2.
Randomly generate initial population. Calculate the fitness value of each individual and assignf
best to the best solution among the current population, while assigning f
w
o
r
s
t to the worst solution. Calculate the initial temperature T
0
=
-
f
b
e
s
t
-
f
w
o
r
s
t
/
ln
⁡
p
r
=
-
Δ
f
/
ln
⁡
p
r.Step 3 (termination condition).
The algorithm terminates when the maximum number of iterationsN is reached. If the condition is satisfied, turn to Step 7; otherwise, turn to Step 4.Step 4.
Implement genetic operation on the population and calculate the fitness values of new individuals. If the fitness value is better than the optimal individual of the previous generation, replace the parent with the progeny while updatingf
best; otherwise, retain the optimal individual of the previous generation.Step 5.
Implement ISAGA operation on the current optimal individual in the population, calculate the fitness value of newly generated individual, and compare the variation of fitnessΔ
f
=
f
(
k
+
1
)
-
f
(
k
) caused by two locations. If Δ
f
<
0, accept the new location and if exp
⁡
(
-
Δ
f
/
T
k
+
1
)
>
r
a
n
d, also accept the new location; otherwise, retain the old location.Step 6.
k
=
k
+
1; then perform the annealing operation T
k
+
1
=
λ
T
k
,
λ
∈
0,1, and return to Step 3.Step 7.
Output the optimal solution obtained in this calculation.


## 3.1. Encoding

Efficient encoding mechanism can help reduce the complexity of computation and avoid repair mechanisms. In this paper, three-layer encoding was adopted. The first layer was procedure-based procedure sequence encoding, where the processing order of various procedures was determined. The second layer was machine-based machine allocation encoding, where the processing machine for each procedure was identified. The third layer was the encoding of workers who operate the machines. Such an encoding approach directly reflected the feasible allocation schemes during scheduling process, where feasible solutions could always be produced. A three-encoding example is illustrated in Figure3. In this example, there are three workpieces; each workpiece has three operations. For the first operation of workpiece one, three machines (machines one, three, and six) can be used to execute this operation; if the machine three is selected, persons one and two meet the operational requirement; in this example, person two is selected to operate machine three.Figure 3
Three-layer encoding.Procedure-Based Encoding. Code length was the total number of procedures, while each code was a permutation of all procedures. The workpiece number which appeared at the jth time represented the jth procedure of the workpiece.Machine-Based Encoding. Its length was the same as the procedure-based encoding. Each encoded bit corresponded to the processing machine selected for each procedure. Each position in the machine codes represented the sequence number of machine selected for the procedure in the set of available machines.Personnel Encoding. Its length was the same as the procedure-based encoding. Each code corresponded to the processing machine for each procedure. Each position in the personnel codes represented the position of worker selected for operating the machine in the set of available workers.


## 3.2. Crossover Operator

The purpose of crossover operation is to retain the good information in the parent chromosomes through information exchange between them. In this paper, chromosomes consisted of three parts. The specific crossover process can be represented as follows.(1)
Procedure chromosomes: multiple workpieces were operated in each chromosome using workpiece-based POX crossover, which can well inherit the fine characteristics of parents.
(2)
The workpiece setJ
=
J
i
1
≤
i
≤
n was randomly divided into two sets: Jobset1 and Jobset2.
(3)
Workpieces included in Jobset1/Jobset2 in the parent chromosome P1/P2 were copied to progeny chromosome C1/C2, while maintaining their locations and sequences.
(4)
Workpieces not included in Jobset1/Jobset2 in the parent chromosome P1/P2 were copied to progeny chromosome C1/C2 according to their original sequences.
(5)
Crossover of machinery and personnel chromosomes was done by the same method as used for the procedure chromosomes, while ensuring the correspondence between them was unchanged during the crossover process.


## 3.3. Mutation Operator

In mutation operation, minor disturbances were made on chromosomes by randomly altering certain genes in them to increase population diversity.For procedure sequencing section, three mutation methods, that is, exchange, insertion, and reverse sequencing, were adopted. Each time, one of these mutation methods was randomly selected for operation.For processing machinery selection part, a procedure was randomly selected, and then the processing machine currently in the chromosome was replaced with a different machine selected from the set of machines available for the procedure.For personnel chromosome selection section, a machine was randomly selected from machine codes, and then the current staff in the chromosome was replaced with a different worker who was selected from the set of personnel capable of operating the machine.


## 3.4. Algorithmic Flow

For job scheduling problem in a personnel flexibility environment, the flow of ISAGA was as follows.Step 1.
Initialize the algorithm parameters (number of populationpopsize, maximum number of iterations T
m
a
x, initial acceptance probability p
r, crossover probability p
c, mutation probability p
m, and annealing rate λ).Step 2.
Randomly generate initial population. Calculate the fitness value of each individual and assignf
best to the best solution among the current population, while assigning f
w
o
r
s
t to the worst solution. Calculate the initial temperature T
0
=
-
f
b
e
s
t
-
f
w
o
r
s
t
/
ln
⁡
p
r
=
-
Δ
f
/
ln
⁡
p
r.Step 3 (termination condition).
The algorithm terminates when the maximum number of iterationsN is reached. If the condition is satisfied, turn to Step 7; otherwise, turn to Step 4.Step 4.
Implement genetic operation on the population and calculate the fitness values of new individuals. If the fitness value is better than the optimal individual of the previous generation, replace the parent with the progeny while updatingf
best; otherwise, retain the optimal individual of the previous generation.Step 5.
Implement ISAGA operation on the current optimal individual in the population, calculate the fitness value of newly generated individual, and compare the variation of fitnessΔ
f
=
f
(
k
+
1
)
-
f
(
k
) caused by two locations. If Δ
f
<
0, accept the new location and if exp
⁡
(
-
Δ
f
/
T
k
+
1
)
>
r
a
n
d, also accept the new location; otherwise, retain the old location.Step 6.
k
=
k
+
1; then perform the annealing operation T
k
+
1
=
λ
T
k
,
λ
∈
0,1, and return to Step 3.Step 7.
Output the optimal solution obtained in this calculation.


## 4. Application and Analysis

In this paper, simulation experiment was performed on a computer with Intel Core 2 CPU/2.00 GHz/2.00 GB RAM using Matlab R2009b programming language. Algorithm parameters were set as follows: number of iterations 100; population size 50; crossover probability 0.8; mutation probability 0.1; annealing rate 0.98; initial acceptance probabilityp
r = 0.7.To verify the impact of different personnel flexibilities on scheduling effect and to analyze the differences in scheduling effect between three situations of PM matrix (number of rows > number of columns; square matrix; number of rows < number of columns) and thereby identify the prominent impact of key personnel on scheduling effect, discussion was made for three situations.When the number of rows is greater than the number of columns, the number of workers is greater than the number of machines. Relevant processing information is shown in Table1, and corresponding PM matrix is shown in (12). Scheduling effect is shown in Figure 4.(12)
PM
=
M
1
M
2
M
3
M
4
M
5
h
r
1
1
0
0
0
0
h
r
2
0
1
0
0
0
h
r
3
0
0
1
0
0
h
r
4
0
0
0
1
0
h
r
5
0
0
0
0
1
h
r
6
0
0
0
0
1
.Table 1
Flexible machine processing information.
Workpiece
Procedure
M
1
M
2
M
3
M
4
M
5
J
1
O
11
50
37
40
—
—
O
12
—
30
—
20
20
O
13
115
14
15
—
—
J
2
O
21
31
—
35
—
32
O
22
40
30
—
—
60
O
23
—
—
40
—
57
J
3
O
31
50
60
—
—
—
O
32
—
40
—
30
50
O
33
—
—
13
—
12
J
4
O
41
29
—
27
29
—
O
42
—
26
—
24
—
O
43
10
—
13
—
—
Worker
(1)
(2)
(3)
(4)
(5)Figure 4
Scheduling effects.As can be seen from (12), at that time, P
M
=
0.2
>
1
/
6.Figure4 shows the multiple simulation results of data in Table 1, where the data in block represent the run time, machines, and workers. For instance, 37, 2, and 2 represented that the first procedure of workpiece is processed by worker 2 on machine 2 for 37 time units. In addition, minimized maximum completion time is 120 time units.To accurately reflect the correlation between scheduling effect and personnel flexibility for the case of number of rows greater than the number of columns, this paper begins the study where each of six employees is only able to operate one machine till all employees could operate any machine. First rule of increasing personnel flexibility is to increase the number of operators in descending order of processing time. For instance, processing times ofO
22, O
31 on different machines are (M
1: 40, M
2: 30, M
5: 60), (M
1: 50, M
2: 60), and preferred machines for increasing personnel flexibility are M
5 or M
2. Meanwhile, number greater than machine code is filled when increasing the personnel flexibility. If the maximum number of personnel limits has reached, number was added starting from 1. If machine M
{
5
}
=
(
5
), operator of machine 5 is worker 5 and M
{
5
}
=
(
5,6
) is added in the first step. As 6 is the maximum number of workers, M
{
5
}
=
(
5,6
,
1
) is added in the second step, and so forth. Each type of flexible configuration is run 20 times, and the most frequently recurring schedulability is taken as the scheduling result under respective flexibility configuration. Relationship curve obtained is shown in Figure 5.Figure 5
Relationship curve between personnel flexibility and scheduling effect.As can be seen from Figure5, when the row number is greater than the column number, that is, when the number of personnel is greater than the number of equipment pieces, minimized maximum completion time decreases gradually with increasing personnel flexibility and eventually stabilized.The number of rows equaled the number of columns. If only the first five workers are considered, a processing environment comprising five machines and five workers would be formed. For initial production environment, it is assumed that the diagonal element in PM matrix is 1, while the rest is zero. Principle of adding worker flexibility is the same as above. Increasing step size is 5, which meant that five operators are added at a time for one machine. Relationship curve obtained is shown in Figure6.Figure 6
Relationship curve between personnel flexibility and scheduling effect.As can be seen from Figure6, when the row number equaled the column number, that is, when the number of personnel equals the number of equipment pieces, minimized maximum completion time decreases gradually with increasing personnel flexibility, which eventually stabilizes. Comparing with Figure 5, it is found that the scheduling result where the number of personnel equaled the number of equipment pieces is inferior to the situation where the number of personnel is greater than the number of equipment pieces. The main reason is that more available personnel corresponded to better processing scheme. Difference in machine operation between workers would inevitably lead to a larger solution space, so more solutions can be searched when there are more personnel.When the number of rows is less than the number of columns, the number of personnel is less than the number of machines. Assuming that only the first four workers are considered of whomh
r
4 can operate machines 4 and 5. Principle of adding worker flexibility is the same as above, with a step size of 5. Relationship curve obtained is shown in Figure 7.Figure 7
Relationship curve between personnel flexibility and scheduling effect.As can be seen from Figure7, when the row number is less than the column number, that is, when the number of personnel is less than the number of equipment pieces, minimized maximum completion time decreases rapidly with increasing personnel flexibility, which eventually stabilizes. Comparing with Figures 5 and 6, it is found that the scheduling result where the number of personnel is less than the number of equipment pieces is inferior to the former two situations at flexibility of 1. This is mainly because the small number of personnel increases the flexibility of each worker, which however is still unable to completely satisfy enough choice space.To comparatively analyze the performance of the proposed improved algorithm, three situations (1)~(3) are comparatively analyzed utilizing ISAGA, GA, and SA, separately. The algorithms are run 100 times at each degree of flexibility, and the numbers of times they converged to optimal solutions are recorded as shown in Table 2.Table 2
Comparison of computational structure between algorithms.
Situation
Algorithm
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
(1)
ISAGA
100
100
100
100
100
97
96
97
GA
100
100
100
100
99
93
91
90
SA
100
100
95
92
91
90
90
(2)
ISAGA
100
100
100
100
100
GA
100
100
100
95
95
SA
100
100
100
94
95
(3)
Algorithm
0.25
0.5
0.75
1
ISAGA
100
100
100
100
GA
100
100
100
100
SA
100
100
100
100After the above analyses, the following conclusions can be drawn.At a fixed number of equipment pieces, minimized maximum completion time decreases gradually with increasing personnel flexibility, which eventually stabilizes and no longer changes with changing personnel flexibility. This indicates that the unlimited increases in personnel do not necessarily bring high efficiency.Comparative analysis of the three situations found that the minimized maximum completion time is superior for the situation when the number of personnel is greater than the number of devices to the other two situations at flexibility of 1. Moreover, the results are worst for the situation when the number of personnel is less than the number of devices. As shown in Figure7, when the number of devices is greater than the number of personnel, the devices are in a starvation state. As shown in Figure 5, personnel flexibility has a theoretical optimal point. When the personnel flexibility is greater than this point, it cannot impact the scheduling result. Figure 6 presents the trend of changes in scheduling results when the number of personnel equaled the number of devices. As can be seen from the figure, the relationship curve changes slowly in such situation, where the scheduling result is not stabilized until the flexibility reached 0.8.Simulation analysis demonstrates that the ISAGA has certain advantages in solving optimization problems of similar scale, with number of times converging to the optimal solution significantly superior to the other two algorithms. The improved algorithm can be used to solve large-scale optimization problems.The above findings have important implications for guiding the design and optimization of flexible production lines.


## 5. Conclusion

In this paper, personnel flexibility scheduling problem aimed at minimizing maximum completion time is studied; ISAGA for solving the problem is proposed to make a classified study based on different personnel flexibilities. The results demonstrate certain interaction between the personnel flexibility and the scheduling effect. These conclusions have important guiding value for the improvement of corporate productivity. In the next step, our team will study the quantitative proof method, hoping to get more general, regular knowledge to better guide the design and optimization of production system flexibility.



---

*Source: 3403058-2016-10-16.xml*