# Optimizing Crew Rostering with Multilicense on High-Speed Railway Lines

Authors: Zhiqiang Tian
Journal: Discrete Dynamics in Nature and Society
 (2014)

---

## Abstract

This paper studies the crew rostering problem with the consideration of multilicense of crewmembers. A 0-1 integer programming model is established to minimize the number of crewmembers used and to maintain the working time balance and the income balance of crewmembers. The method for calculating the reasonable cycle schemes is designed by considering the parameters of monthly working time standard and the number and the average working time of crew routes. The order for selecting the optimal cycle scheme is then determined with consideration of the connection relationships between crew routes. According to the characteristics of the problem and the requirements in application, this paper presents the design of an improved ant colony algorithm for solving the optimization model. The reasonableness of the model and the effectiveness of the algorithm are verified by a numerical example with 43 generated crew routes.


---

## Body

## 1. Introduction

Crew planning problem (CPP), one of the classic problems in operations research, is common in airlines, railway, urban public transport, and other transport industries. After costs for fuel, crew costs constitute the second largest expense of an airline [1]. An annual saving of tens of millions of US dollars for large airlines can be obtained by a good crew plan; hence, the research and application of the CPP in airlines start at an early stage. With the development of other transportation industries, their CPPs have received wide attention.Due to its complexity, CPP is usually divided intocrew scheduling andcrew rostering phases [2, 3]. Crew scheduling plan usually combines the minimum units (e.g., flight legs and crew segments) into a task (e.g., flight duty and crew route) that can be accomplished in a day by one crewmember, whereas crew rostering plan assigns these tasks to crewmembers in a given cycle scheme (e.g., a week, a month, or a custom cycle) by satisfying various criteria. So far, many studies have focused on crew scheduling problem [2–5]. The operation cost of crewmembers can be saved greatly by a reasonable combination of work units. However, research on crew rostering problem started lately. Although the operation cost can still be saved by controlling the number of crewmembers, the workload and life quality of the crewmembers restrict the optimization degree of the costs.Ernst et al. [6] presented a review of staff scheduling and rostering. They pointed out that rostering algorithms must be more general in the future because of the changing working environments and conditions. In practice, each problem has its own business characteristics and core problems to be solved. Thus, the rostering method is still developed for certain problems.According to the different uses of crewmembers, the crew rostering problem can be solved in various ways following different approaches. For example, Emden-Weinert et al. [7] introduced a rostering system for tram and bus drivers at the Bremer Straßenbahn AG in Germany. The proposed system divides the drivers and duties at a depot into groups and then develops rotas for each group. In this study, we call this processgrouped rostering, in which a rota is a pattern of rest days and shift type. However, individual rosters at most European airlines are constructed directly for each crewmember; this process is calledpersonalized rostering [8–10]. In this situation, all crewmembers should have their own unique evaluation criteria or individual needs. All individual needs of crewmembers should be satisfied as much as possible to generate feasible rotas. Chu [9] dealt with a personnel planning problem in an international airport by decomposing it into a duty generating phase (a GP planner), followed by GP scheduling and rostering phase. Maenhout and Vanhoucke [11] indicated that the objective of this problem is to assign a personalized roster to each crewmember, which minimizes the overall operational costs while ensuring the social quality of the schedule. They also compared the proposed scatter search algorithm with optimal solutions obtained by an exact branch-and-price procedure and a steepest descent variable neighborhood search. Chu et al. [12] proposed another type of crew rostering plan with a single cycle, which combined all crew routes into a single loop. Although this method could realize the absolute equilibrium of working time, the cycle of the plan is determined by the number of crew routes, which reduces the flexibility and adjustability of the plan. The common feature of the former two approaches is that the cycle scheme of the plan is determined before planning. Therefore, for the convenience of description, the first two approaches are called crew rostering with given cycle.Early studies on staff rostering assumed that each worker can only perform one type of task. However, with the improved crewmember capability and staff training, problems related to multiskilled staff scheduling have attracted attention. According to the difference of license types, the multilicense crew rostering problem may have the following different cases. (a) All crewmembers have only one license type, and these license types have no inheritance and substitutability. In working out the crew rostering plan with this characteristic, all crew routes will be divided into groups according to their license types and work out crew rostering plan. (b) Contrary to the first situation, all crewmembers have received full training and thus can undertake crew routes with any license type. At this time, the constraint of license type does not influence the feasibility of the plan, and all crew routes can be placed in one set with no differences when working out the crew rostering plan. (c) Each crewmember possesses part of all licenses types, and some of them have the inheritance and substitutability with other licenses. That is, crewmembers with higher license types can accomplish crew routes that need the lower one. When working out crew rostering plan with this characteristic, the different combinations of the crew routes with different license types will significantly affect the result of crew rostering plan. Corominas et al. [13] addressed a problem of assigning different task types to completely multiskilled workers in a retail chain selling clothes. Avramidis [14] addressed a multiskill staffing problem in a call center and developed a two-stage heuristic that finds good solutions to the founded mathematical programs.From a modeling point of view, crew rostering problem is usually formulated as a set partitioning problem and its transformation. Various types of crew rostering plan have different objective functions. Buhr [15] treated this problem as a zero-one integer programming problem with a defined objective function and a specific set of constraints. Beaumont [16] used mixed integer programming to design employee rosters in the rostering plan, whereas Ryan [17] and Kohl and Karisch [1] modeled the crew rostering problem as a generalized set partitioning problem. From a solution point of view, the algorithm for solving the crew rostering problem can be generally divided into three categories, namely, accurate solution algorithm, heuristic algorithm, and modern optimization algorithm. The accurate solution algorithm can find an optimal solution because the scale of the problem is small. However, finding an optimal solution with this method is hard to be accepted for its long solution time when the numbers of variables and constraints are very large. Thus, the heuristic algorithm [18, 19] and modern optimization algorithm [20–23] are designed to solve this problem more accurately and more quickly.The remainder of this paper is organized as follows. A detailed statement of the problem is described in Section2. A mathematical model of the crew rostering problem based on the analysis of the optimization targets and constraints of our problem is established in Section 3. In Section 4, two algorithms are designed to decide a reasonable cycle scheme and compile the crew rostering plan under a given cycle. Finally, a numerical example with generated data is presented in Section 5.


## 2. Problem Statement

For describing the crew rostering problem in our research, the descriptions of some concepts are given below.Crew route is a train line (or a sequence of train lines) for a crewmember to accomplish during a day’s work, which is obtained by the combination of the working segments.Crew roster is a long term plan for the operation and management of crewmembers, which arranges the work of crewmembers in a fixed cycle scheme according to the related regulations of high-speed railway lines.Rota is a sequence that consists of several crew routes, which are finished by a group of crewmembers in a circulation with the satisfaction of working time and resting time. A rota usually contains the following information: number, working time, and income of all crew routes.License type is the requirement of the skills of crewmembers when accomplishing a specific crew route. Different license types represent different skills of crewmembers. The higher the level of license required by a crew route, the higher the revenue per unit time of the crewmember.In China, the train’s running time on high-speed railway lines ranges from 6:00 to 24:00, which indicates that the working time of crewmembers is also in this range. Therefore, crewmembers can accomplish two crew routes in two adjacent days with the satisfaction of resting time standard. Then, the crew rostering plan with a given cycle scheme has its natural advantage of arranging the crewmembers’ daily work.The relationships are built directly between crew routes and crewmembers in a personalized crew rostering plan. This method can minimize the number of crewmembers used. However, the scale of the problem is too large to design an effective algorithm for finding an optimal solution. The grouped crew rostering plan can largely reduce the scale of the problem. It can also help implement the plan and manage the crewmembers. However, the cycle scheme of grouped rostering must be designed as reasonable as possible to avoid the undesirable increase in the number of crewmembers. The grouped rostering problem is studied in this paper based on the determination of the optimal cycle scheme to generate and organize the crew rostering plan more easily.On high-speed railway lines, the Automatic Train Operation (ATO) system can replace the drivers in some running sections under the supervision of the Train Automatic Protection system. The application of ATO not only realizes the efficient and energy-saving operation of the train but also reduces the intensity of the drivers, allowing drivers to work on different trains. Under this circumstance, this paper proposes a crew scheduling problem of motor train set drivers with multilicense.Based on the above analysis, this paper studies the crew rostering problem of motor train set drivers with the following characteristics: (a) the reasonable cycle scheme can be determinedand (b) all crewmembers are fully trained with the same driver licenses and (c) used as groups in the plan.Tian and Niu [24] studied the crew rostering problem with a given cycle. However, a slightly complicated two-step optimization approach is adopted to avoid the inactivity of some crewmembers because the cycle scheme is given in advance without considering the real data. In this research, we first determine the reasonable cycle scheme of the crew rostering plan (scilicet, the value of the planning horizon T and the work days T
w in the plan), which not only helps to reduce the number of crewmembers used but also ensures that the working time of the crewmembers satisfies the monthly standard. Then, the establishment of the crew rostering plan is carried out with the given cycle scheme. The works in the rota are accomplished by a group of crewmembers. Thus, the objective of the crew rostering plan is to find a partition of all crew routes. This partition ensures that the crew routes in each group can form a feasible rota by appropriate connections and that the working time and income are balanced with other rotas.


## 3. Optimization Model

### 3.1. Optimization Model

The number and the operation cost of staff have always been the main objectives for the staff scheduling and rostering problem. For the crew rostering problem on high-speed rail lines, the operation cost is composed of two parts: the cost for hiring the crewmembers and the cost for finishing the tasks. The fees paid to the crewmembers by the company for accomplishing the crew routes are proportional to the working time and the license type, which are constant and independent of the number of crewmembers. However, the cost for hiring the crewmembers is relevant to the number of crewmembers. The tasks in crew routes are usually different from each other, and their corresponding working times are also different. The fairness of the crew rostering plan will definitely be affected if we constantly assign crew routes with long working times to some crewmembers. Furthermore, our study of crew rostering problem on high-speed railway lines has the background that all crewmembers have different licenses. The income of the crewmember per unit time is different because the license needed for finishing a crew route may be different, resulting in the divergence of the total income. In summary, the fairness and reasonableness of the plan can be improved by maintaining the balance of the working time and the income between all crewmembers. Thus, the objectives considered when establishing the optimization model of our problem are as follows.(a)
To minimize the number of crewmembers used in the plan: in our research, all crew routes are divided into several rotas, which need the same number of crewmembers. Therefore, the number of rotas will be minimized if the number of crewmembers is minimized.
(b)
To minimize the differences in working time of all rotas: the working time balance of the crew rostering plan is equal to the working time balance among all rotas because the crewmembers’ work in one rota is the same.
(c)
To minimize the differences in income of all rotas: the difference in license types is reflected by the income of the rotas because the assignment of crew routes to the fully trained crewmembers is not affected by the license type.In working out the crew rostering plan, the following regulations and constraints should be satisfied.(a)
A crew route should belong to one and only one rota.
(b)
For each rota, the number of tasks (crew route) contained in one day should not be more than one.
(c)
For each rota, the crew routes should not be more than the working days specified by the plan.
(d)
For each rota, the connection time between each two adjacent tasks must satisfy the connection standard set by the company.According to the objectives and constraints analyzed above, the optimization model established in this paper is as follows:(1)
min
⁡
Z
1
=
M
,
min
⁡
Z
2
=
∑
i
=
1
M
(
∑
k
=
1
T
∑
j
=
1
N
x
i
j
k
t
j
-
∑
j
=
1
N
t
j
M
)
2
,
min
⁡
Z
3
=
∑
i
=
1
M
(
∑
k
=
1
T
∑
j
=
1
N
x
i
j
k
t
j
l
j
-
∑
j
=
1
N
t
j
l
j
M
)
2
,
(2)
subject
to
∑
i
=
1
M
∑
k
=
1
T
w
x
i
j
k
=
1
j
=
1,2
,
…
,
N
;
(3)
∑
j
=
1
N
x
i
j
k
≤
1
i
=
1,2
,
…
,
M
;
k
=
1,2
,
…
,
T
w
;
(4)
∑
k
=
1
T
w
∑
j
=
1
N
x
i
j
k
≤
T
w
i
=
1,2
,
…
,
M
;
(5)
∑
j
=
1
N
x
i
j
k
+
1
(
t
j
s
+
1440
)
-
∑
j
=
1
N
x
i
j
k
t
j
e
+
θ
(
2
-
∑
j
=
1
N
x
i
j
k
+
1
-
∑
j
=
1
N
x
i
j
k
)
≥
T
con
i
=
1,2
,
…
,
M
;
k
=
1,2
,
…
,
T
w
-
1
;
(6)
x
i
j
k
∈
{
0,1
}
,
where M is the total number of rotas in the crew rostering plan; N is the total number of crew routes; T is the planning horizon of the crew rostering plan; and T
w is the working day of the plan; x
i
j
k is a 0-1 decision variable equal to 1 if the kth crew route in rota i is crew route j, and 0 otherwise; t
j
s, t
j
e, and t
j represent the starting, ending, and working times of crew route j, respectively; l
j is the income per unit time corresponding to the level of the license needed by crew route j; θ is a large positive number to ensure the establishment of formula (5); and T
con is the time standard that should be satisfied by each connection between two crew routes.


### 3.2. Model Analysis

#### 3.2.1. Analysis of the Objective Functions

The established 0-1 integer programming model in our research consists of three objective functions.Z
1 is the number of rotas that directly determines the number of crewmembers used in the crew rostering plan, while Z
2 and Z
3 are the objectives representing the fairness and reasonableness of the crew rostering plan, respectively. For a particular crew route, the income of a crewmember is proportional to its working time. For all crew routes, the crew route with long working time is not necessarily the one with high income, or vice versa, because of the difference in license type. Therefore, the optimal solutions of the objective functions Z
2 and Z
3 in the above model are hard to be achieved simultaneously. Objective function Z
2 (working time equalization) can ensure that all the crewmembers have similar intensity of work at the planning horizon and good working status. Conversely, each crewmember hopes that her income is not below the average standard while her licenses and working time are the same as the others. Thus, the design of objective function Z
3 helps maintain the stability of the crewmembers’ emotion. However, the resting time and the working status of crewmembers are still favorable even without the consideration of Z
3. Therefore, the organization of the crew rostering plan is not likely to be affected by Z
3. The above analysis indicates that the order of the importance of these objective functions in our model is shown as follows:
(7)
Z
1
≫
Z
2
>
Z
3
.According to the approach for designing fitness function in Niu [25, 26], the model with multiobjectives in our research is transformed into a single objective optimization model according to the relationship between these objectives to evaluate the quality of the constructed solution. Objective function Z
1 represents the number of rotas, which must be an integer. A new objective function can be designed instead of the original three objective functions by transforming Z
2 and Z
3 into a value between (0, 1):
(8)
Z
=
Z
1
+
λ
Z
2
Z
2
*
+
(
1
-
λ
)
Z
3
Z
3
*
.
Z
2
* and Z
3
* are the maximum values of the latter two objective functions theoretically. λ and (1
-
λ) are their weights in the new objective function Z. The value of λ should be greater than 0.5 because Z
2 is more important than Z
3:
(9)
Z
2
*
=
M
[
(
max
⁡
{
t
j
}
-
min
⁡
{
t
j
}
)
T
w
]
2
,
Z
3
*
=
M
[
(
max
⁡
{
l
j
t
j
}
-
min
⁡
{
l
j
t
j
}
)
T
w
]
2
,
where max
⁡
⁡
{
t
j
} and min
⁡
⁡
{
t
j
} are the longest and shortest working times of all crew routes, respectively, and max
⁡
⁡
{
l
j
t
j
} and min
⁡
⁡
{
l
j
t
j
} are the highest and lowest incomes of all crew routes.


#### 3.2.2. Analysis of the Solving Algorithm

When only the working time of the crew routes is considered, the crew rostering problem described in our research is similar to a classicalk-partitioning problem in complexity theory, regardless of the income and the connecting relationships between the crew routes. The k-partitioning problem is to find a partition S
1
,
S
2
,
…
,
S
m of a set {
I
1
,
I
2
,
…
,
I
n
} by satisfying the constraints w
j
≥
0, |
S
i
|
=
k, and n
=
m
k (w
j is the weight of I
j and |
S
i
| is the elements contained in subset S
i) to minimize the maximum weight of each subset.When the constraint ofn
=
m
k is relaxed, the elements in each subset will be ⌊
n
/
m
⌋or⌈
n
/
m
⌉. This problem is called cardinality-constrained P
|
·
|
C
max
⁡ problem, which is NP-hard [27].Thek-partitioning problem is commonly used in scheduling theory to minimize the maximum working time when assigning n jobs that are independent of each other and no priority order to multiple processing systems [28]. An approximation algorithm used to solve this problem is the largest processing time (LPT) algorithm proposed by Graham. This algorithm initially sorts the tasks in descending order by their processing time and then assigns an unhandled task with the longest processing time to an idle processor. For a scheduling problem with m processors, the performance ratio of LPT compared with the optimal algorithm is (
4
/
3
)
-
(
1
/
3
m
) [29]. The k-partitioning problem is a special case of the cardinality-constrained P
|
·
|
C
max
⁡ problem. The applicability of LPT to the cardinality-constrained P
|
·
|
C
max
⁡ problem is proven by studies carried out by the follow-up scholars, and the worst performance ratio remains (4
/
3
)
-
(
1
/
3
m
) [30]. Although many scholars have studied the cardinality-constrained P
|
·
|
C
max
⁡ problem, a unified and efficient algorithm for solving it has not yet been developed.In this paper, the working time and income of crewmembers, as well as the connections between crew routes, are considered simultaneously in the optimization model, making this problem more complex than the cardinality-constrainedP
|
·
|
C
max
⁡ problem. Therefore, finding an optimal solution by directly solving the 0-1 integer programming model is difficult. The planner hopes that a feasible crew rostering plan can be obtained in a short time and that an optimal plan can be achieved by adjusting the feasible plan according to his/her working experience and other conditions. Therefore, a method that can rapidly generate a feasible plan is valuable.


## 3.1. Optimization Model

The number and the operation cost of staff have always been the main objectives for the staff scheduling and rostering problem. For the crew rostering problem on high-speed rail lines, the operation cost is composed of two parts: the cost for hiring the crewmembers and the cost for finishing the tasks. The fees paid to the crewmembers by the company for accomplishing the crew routes are proportional to the working time and the license type, which are constant and independent of the number of crewmembers. However, the cost for hiring the crewmembers is relevant to the number of crewmembers. The tasks in crew routes are usually different from each other, and their corresponding working times are also different. The fairness of the crew rostering plan will definitely be affected if we constantly assign crew routes with long working times to some crewmembers. Furthermore, our study of crew rostering problem on high-speed railway lines has the background that all crewmembers have different licenses. The income of the crewmember per unit time is different because the license needed for finishing a crew route may be different, resulting in the divergence of the total income. In summary, the fairness and reasonableness of the plan can be improved by maintaining the balance of the working time and the income between all crewmembers. Thus, the objectives considered when establishing the optimization model of our problem are as follows.(a)
To minimize the number of crewmembers used in the plan: in our research, all crew routes are divided into several rotas, which need the same number of crewmembers. Therefore, the number of rotas will be minimized if the number of crewmembers is minimized.
(b)
To minimize the differences in working time of all rotas: the working time balance of the crew rostering plan is equal to the working time balance among all rotas because the crewmembers’ work in one rota is the same.
(c)
To minimize the differences in income of all rotas: the difference in license types is reflected by the income of the rotas because the assignment of crew routes to the fully trained crewmembers is not affected by the license type.In working out the crew rostering plan, the following regulations and constraints should be satisfied.(a)
A crew route should belong to one and only one rota.
(b)
For each rota, the number of tasks (crew route) contained in one day should not be more than one.
(c)
For each rota, the crew routes should not be more than the working days specified by the plan.
(d)
For each rota, the connection time between each two adjacent tasks must satisfy the connection standard set by the company.According to the objectives and constraints analyzed above, the optimization model established in this paper is as follows:(1)
min
⁡
Z
1
=
M
,
min
⁡
Z
2
=
∑
i
=
1
M
(
∑
k
=
1
T
∑
j
=
1
N
x
i
j
k
t
j
-
∑
j
=
1
N
t
j
M
)
2
,
min
⁡
Z
3
=
∑
i
=
1
M
(
∑
k
=
1
T
∑
j
=
1
N
x
i
j
k
t
j
l
j
-
∑
j
=
1
N
t
j
l
j
M
)
2
,
(2)
subject
to
∑
i
=
1
M
∑
k
=
1
T
w
x
i
j
k
=
1
j
=
1,2
,
…
,
N
;
(3)
∑
j
=
1
N
x
i
j
k
≤
1
i
=
1,2
,
…
,
M
;
k
=
1,2
,
…
,
T
w
;
(4)
∑
k
=
1
T
w
∑
j
=
1
N
x
i
j
k
≤
T
w
i
=
1,2
,
…
,
M
;
(5)
∑
j
=
1
N
x
i
j
k
+
1
(
t
j
s
+
1440
)
-
∑
j
=
1
N
x
i
j
k
t
j
e
+
θ
(
2
-
∑
j
=
1
N
x
i
j
k
+
1
-
∑
j
=
1
N
x
i
j
k
)
≥
T
con
i
=
1,2
,
…
,
M
;
k
=
1,2
,
…
,
T
w
-
1
;
(6)
x
i
j
k
∈
{
0,1
}
,
where M is the total number of rotas in the crew rostering plan; N is the total number of crew routes; T is the planning horizon of the crew rostering plan; and T
w is the working day of the plan; x
i
j
k is a 0-1 decision variable equal to 1 if the kth crew route in rota i is crew route j, and 0 otherwise; t
j
s, t
j
e, and t
j represent the starting, ending, and working times of crew route j, respectively; l
j is the income per unit time corresponding to the level of the license needed by crew route j; θ is a large positive number to ensure the establishment of formula (5); and T
con is the time standard that should be satisfied by each connection between two crew routes.


## 3.2. Model Analysis

### 3.2.1. Analysis of the Objective Functions

The established 0-1 integer programming model in our research consists of three objective functions.Z
1 is the number of rotas that directly determines the number of crewmembers used in the crew rostering plan, while Z
2 and Z
3 are the objectives representing the fairness and reasonableness of the crew rostering plan, respectively. For a particular crew route, the income of a crewmember is proportional to its working time. For all crew routes, the crew route with long working time is not necessarily the one with high income, or vice versa, because of the difference in license type. Therefore, the optimal solutions of the objective functions Z
2 and Z
3 in the above model are hard to be achieved simultaneously. Objective function Z
2 (working time equalization) can ensure that all the crewmembers have similar intensity of work at the planning horizon and good working status. Conversely, each crewmember hopes that her income is not below the average standard while her licenses and working time are the same as the others. Thus, the design of objective function Z
3 helps maintain the stability of the crewmembers’ emotion. However, the resting time and the working status of crewmembers are still favorable even without the consideration of Z
3. Therefore, the organization of the crew rostering plan is not likely to be affected by Z
3. The above analysis indicates that the order of the importance of these objective functions in our model is shown as follows:
(7)
Z
1
≫
Z
2
>
Z
3
.According to the approach for designing fitness function in Niu [25, 26], the model with multiobjectives in our research is transformed into a single objective optimization model according to the relationship between these objectives to evaluate the quality of the constructed solution. Objective function Z
1 represents the number of rotas, which must be an integer. A new objective function can be designed instead of the original three objective functions by transforming Z
2 and Z
3 into a value between (0, 1):
(8)
Z
=
Z
1
+
λ
Z
2
Z
2
*
+
(
1
-
λ
)
Z
3
Z
3
*
.
Z
2
* and Z
3
* are the maximum values of the latter two objective functions theoretically. λ and (1
-
λ) are their weights in the new objective function Z. The value of λ should be greater than 0.5 because Z
2 is more important than Z
3:
(9)
Z
2
*
=
M
[
(
max
⁡
{
t
j
}
-
min
⁡
{
t
j
}
)
T
w
]
2
,
Z
3
*
=
M
[
(
max
⁡
{
l
j
t
j
}
-
min
⁡
{
l
j
t
j
}
)
T
w
]
2
,
where max
⁡
⁡
{
t
j
} and min
⁡
⁡
{
t
j
} are the longest and shortest working times of all crew routes, respectively, and max
⁡
⁡
{
l
j
t
j
} and min
⁡
⁡
{
l
j
t
j
} are the highest and lowest incomes of all crew routes.


### 3.2.2. Analysis of the Solving Algorithm

When only the working time of the crew routes is considered, the crew rostering problem described in our research is similar to a classicalk-partitioning problem in complexity theory, regardless of the income and the connecting relationships between the crew routes. The k-partitioning problem is to find a partition S
1
,
S
2
,
…
,
S
m of a set {
I
1
,
I
2
,
…
,
I
n
} by satisfying the constraints w
j
≥
0, |
S
i
|
=
k, and n
=
m
k (w
j is the weight of I
j and |
S
i
| is the elements contained in subset S
i) to minimize the maximum weight of each subset.When the constraint ofn
=
m
k is relaxed, the elements in each subset will be ⌊
n
/
m
⌋or⌈
n
/
m
⌉. This problem is called cardinality-constrained P
|
·
|
C
max
⁡ problem, which is NP-hard [27].Thek-partitioning problem is commonly used in scheduling theory to minimize the maximum working time when assigning n jobs that are independent of each other and no priority order to multiple processing systems [28]. An approximation algorithm used to solve this problem is the largest processing time (LPT) algorithm proposed by Graham. This algorithm initially sorts the tasks in descending order by their processing time and then assigns an unhandled task with the longest processing time to an idle processor. For a scheduling problem with m processors, the performance ratio of LPT compared with the optimal algorithm is (
4
/
3
)
-
(
1
/
3
m
) [29]. The k-partitioning problem is a special case of the cardinality-constrained P
|
·
|
C
max
⁡ problem. The applicability of LPT to the cardinality-constrained P
|
·
|
C
max
⁡ problem is proven by studies carried out by the follow-up scholars, and the worst performance ratio remains (4
/
3
)
-
(
1
/
3
m
) [30]. Although many scholars have studied the cardinality-constrained P
|
·
|
C
max
⁡ problem, a unified and efficient algorithm for solving it has not yet been developed.In this paper, the working time and income of crewmembers, as well as the connections between crew routes, are considered simultaneously in the optimization model, making this problem more complex than the cardinality-constrainedP
|
·
|
C
max
⁡ problem. Therefore, finding an optimal solution by directly solving the 0-1 integer programming model is difficult. The planner hopes that a feasible crew rostering plan can be obtained in a short time and that an optimal plan can be achieved by adjusting the feasible plan according to his/her working experience and other conditions. Therefore, a method that can rapidly generate a feasible plan is valuable.


## 3.2.1. Analysis of the Objective Functions

The established 0-1 integer programming model in our research consists of three objective functions.Z
1 is the number of rotas that directly determines the number of crewmembers used in the crew rostering plan, while Z
2 and Z
3 are the objectives representing the fairness and reasonableness of the crew rostering plan, respectively. For a particular crew route, the income of a crewmember is proportional to its working time. For all crew routes, the crew route with long working time is not necessarily the one with high income, or vice versa, because of the difference in license type. Therefore, the optimal solutions of the objective functions Z
2 and Z
3 in the above model are hard to be achieved simultaneously. Objective function Z
2 (working time equalization) can ensure that all the crewmembers have similar intensity of work at the planning horizon and good working status. Conversely, each crewmember hopes that her income is not below the average standard while her licenses and working time are the same as the others. Thus, the design of objective function Z
3 helps maintain the stability of the crewmembers’ emotion. However, the resting time and the working status of crewmembers are still favorable even without the consideration of Z
3. Therefore, the organization of the crew rostering plan is not likely to be affected by Z
3. The above analysis indicates that the order of the importance of these objective functions in our model is shown as follows:
(7)
Z
1
≫
Z
2
>
Z
3
.According to the approach for designing fitness function in Niu [25, 26], the model with multiobjectives in our research is transformed into a single objective optimization model according to the relationship between these objectives to evaluate the quality of the constructed solution. Objective function Z
1 represents the number of rotas, which must be an integer. A new objective function can be designed instead of the original three objective functions by transforming Z
2 and Z
3 into a value between (0, 1):
(8)
Z
=
Z
1
+
λ
Z
2
Z
2
*
+
(
1
-
λ
)
Z
3
Z
3
*
.
Z
2
* and Z
3
* are the maximum values of the latter two objective functions theoretically. λ and (1
-
λ) are their weights in the new objective function Z. The value of λ should be greater than 0.5 because Z
2 is more important than Z
3:
(9)
Z
2
*
=
M
[
(
max
⁡
{
t
j
}
-
min
⁡
{
t
j
}
)
T
w
]
2
,
Z
3
*
=
M
[
(
max
⁡
{
l
j
t
j
}
-
min
⁡
{
l
j
t
j
}
)
T
w
]
2
,
where max
⁡
⁡
{
t
j
} and min
⁡
⁡
{
t
j
} are the longest and shortest working times of all crew routes, respectively, and max
⁡
⁡
{
l
j
t
j
} and min
⁡
⁡
{
l
j
t
j
} are the highest and lowest incomes of all crew routes.


## 3.2.2. Analysis of the Solving Algorithm

When only the working time of the crew routes is considered, the crew rostering problem described in our research is similar to a classicalk-partitioning problem in complexity theory, regardless of the income and the connecting relationships between the crew routes. The k-partitioning problem is to find a partition S
1
,
S
2
,
…
,
S
m of a set {
I
1
,
I
2
,
…
,
I
n
} by satisfying the constraints w
j
≥
0, |
S
i
|
=
k, and n
=
m
k (w
j is the weight of I
j and |
S
i
| is the elements contained in subset S
i) to minimize the maximum weight of each subset.When the constraint ofn
=
m
k is relaxed, the elements in each subset will be ⌊
n
/
m
⌋or⌈
n
/
m
⌉. This problem is called cardinality-constrained P
|
·
|
C
max
⁡ problem, which is NP-hard [27].Thek-partitioning problem is commonly used in scheduling theory to minimize the maximum working time when assigning n jobs that are independent of each other and no priority order to multiple processing systems [28]. An approximation algorithm used to solve this problem is the largest processing time (LPT) algorithm proposed by Graham. This algorithm initially sorts the tasks in descending order by their processing time and then assigns an unhandled task with the longest processing time to an idle processor. For a scheduling problem with m processors, the performance ratio of LPT compared with the optimal algorithm is (
4
/
3
)
-
(
1
/
3
m
) [29]. The k-partitioning problem is a special case of the cardinality-constrained P
|
·
|
C
max
⁡ problem. The applicability of LPT to the cardinality-constrained P
|
·
|
C
max
⁡ problem is proven by studies carried out by the follow-up scholars, and the worst performance ratio remains (4
/
3
)
-
(
1
/
3
m
) [30]. Although many scholars have studied the cardinality-constrained P
|
·
|
C
max
⁡ problem, a unified and efficient algorithm for solving it has not yet been developed.In this paper, the working time and income of crewmembers, as well as the connections between crew routes, are considered simultaneously in the optimization model, making this problem more complex than the cardinality-constrainedP
|
·
|
C
max
⁡ problem. Therefore, finding an optimal solution by directly solving the 0-1 integer programming model is difficult. The planner hopes that a feasible crew rostering plan can be obtained in a short time and that an optimal plan can be achieved by adjusting the feasible plan according to his/her working experience and other conditions. Therefore, a method that can rapidly generate a feasible plan is valuable.


## 4. Algorithms

The optimization objectives of our study are to minimize the number of crewmembers used and maintain the balance of working times and incomes among all crewmembers. A reasonable cycle scheme should be given before the establishment of crew rostering plan because the cycle schemes significantly affect the first objective. The method for deciding the cycle scheme and the method for working out the crew rostering plan under a given cycle scheme are represented as follows.


### 4.1. Calculating the Optimal Cycle Scheme

The monthly working time of the crewmembers is the foundation for deciding the cycle scheme, which means a reasonable proportion of working time and resting time in the cycle scheme is needed for crewmembers to finish the monthly working time. Meanwhile, the crewmembers were grouped in our research. Hence, the number of crewmembers is equal to the product of the number of rotas and the planning horizon of the plan. The crew routes in each rota should be as high as possible, which requires good proportions between the number of crew routes and the working days in the plan, to reduce the number of crewmembers used. Therefore, the optimal cycle scheme should be determined according to the number of crew routes, the average working time of crew routes, and the monthly working time standard.By studying the relationship between the above factors, the method for deciding the optimal cycle scheme is designed as follows.


#### 4.1.1. Preliminary Selection for the Reasonable Cycle Scheme

With the assumption that the number of crew routes isN, the average working time is t
average (min), the monthly working time standard is T
month (h), and the number of days in a month is D
month
.Then, the reasonable cycle scheme should satisfy
(10)
t
average
×
T
work
T
=
60
T
month
D
month
,
where the values of T and T
work are unknown. However, T
work is a part of T; thus, the relationship between them can be represented as φ, given by
(11)
φ
=
T
work
T
=
60
T
month
t
average
D
month
.Under the standard of China railway, the value of monthly working time is set toT
month
=
166.7 h and the day in a month to D
month
=
30 d. Then, formula (11) can be converted as follows:
(12)
φ
=
T
work
T
=
60
×
166.7
30
t
average
=
333.4
t
average
.Considering thatT and T
work represent the number of days, the values of T and T
work are integers and their proportion close to φ is a reasonable cycle scheme. Alternatively, we can let T (or T
work) be an integer and then calculate the value of T
work (or T) by formula (12). When the calculated result is close to an integer, this cycle scheme is also a reasonable cycle scheme. A set of reasonable cycle schemes of the crew rostering plan can be drawn from this method, and then further selection will be executed among these cycle schemes.


#### 4.1.2. Further Selection for the Optimal Cycle Scheme

With the assumption that the planning horizon of cycle schemei is T
i and the number of working days is T
work
i, the number of crewmembers used in this crew rostering plan N
crew
i is calculated as follows:
(13)
N
crew
i
=
⌈
N
T
work
i
⌉
×
T
i
.The cycle scheme with the minimal crewmembers is the optimal one in all reasonable cycle schemes because the number of crewmembers used in the plan is the most important objective. Formula (13) assumes that a crew route can connect to any other route in a short time, resulting in an ideal one. Anext day’s connection may exist between two crew routes because the connection time does not satisfy the regulations (which means adding 1440 min to their original connection time). This situation means that an empty crew route is added between two adjacent crew routes. When this situation occurs, the time in the plan cannot be used sufficiently and the optimal cycle scheme determined by formula (13) is improper. To fully consider the influence caused by thenext day’s connections, formula (13) is rewritten as
(14)
N
crew
i
=
⌈
N
+
Δ
n
T
work
i
⌉
×
T
i
.


### 4.2. Improved Ant Colony Algorithm

The method for solving the crew rostering problem in our research is then designed based on the adjustment of the ant colony algorithm with bi-pheromone and bi-heuristic information designed in the study by Tian and Niu [24]. The algorithm in this paper only differs in the design of heuristic information and evaluation function; thus, only these two parts will be described below. For the other parts of the ant colony algorithm, interested readers can learn the related contents in the studies by Dorigo and Gambardella [31] and Tian and Niu [24].


#### 4.2.1. Calculation of Heuristic Information

When constructing a rota, the calculation method of the selection probability is different according to the location of the ant. When the construction of a rota is finished, the ant returns to the virtual node, and then the first crew route for next rota is chosen by the pheromone and heuristic information of all crew route nodes. Otherwise, the next crew route is chosen by the pheromone and heuristic information of the connecting arcs if the constructing process is still searching for a crew route for current rota.The heuristic information of crew route nodes is calculated by its starting time and ending time:(15)
η
j
=
1
(
t
j
s
+
t
j
e
)
.The heuristic information of the connecting arcs between the crew routes should guide the ants finding a crew rostering plan that not only uses lower crewmembers but also keeps the balance of the working time and the income among all rotas. Therefore, the calculation of the heuristic information on arcs should contain the following parameters: (a) the connection time between crew routes, (b) the working time of the crew routes to be selected, and (c) the income of the crew routes to be selected.When the connection time between two crew routes satisfies the regulations, the value of the time is as short as possible. Thus, the connection time is considered by its reciprocal in heuristic information. For the working time and income, we hope that the selection of the next crew route helps keep their balance in a final solution. LetT
now and I
now represent the working time and income of current crew route sequence, respectively, and d is the number of days in current sequence. T
average and I
average are the average working time and average income, respectively. The expected working time and income are d
T
average
/
T
w and d
I
average
/
T
w, respectively. The expected working time and income after the connection of next crew route are (
d
+
1
)
T
average
/
T
w and (
d
+
1
)
I
average
/
T
w, respectively. Therefore, the expected working time t
next and income r
next of next crew route to be selected are represented by the following formulas:
(16)
t
next
=
(
d
+
1
)
T
average
T
w
-
T
now
,
r
next
=
(
d
+
1
)
I
average
T
w
-
I
now
.When constructing the rota, a crew route is more likely to be selected if its working time and income are close tot
next and r
next. Therefore, the heuristic information for selecting next crew route from current crew route is represented as
(17)
η
i
j
=
1
t
i
j
×
1
|
t
i
-
t
next
|
+
σ
×
1
|
r
i
-
r
next
|
+
σ
,
where the last two parts denote the proportion of the working time and income of the crew routes to be selected and σ is a nonzero positive number that ensures that the value of η
i
j is meaningful when t
i
=
t
next or r
i
=
r
next.


#### 4.2.2. Evaluation Function

The integrated optimization objective (8) is used as the criteria for evaluating the quality of the solution constructed by the ants. According to the weight and range of all objectives, the value of function (8) consists of two parts, in which the integer part represents the number of rotas in the crew rostering plan, whereas the decimal part indicates the equilibrium of the working time and income of the rotas.


## 4.1. Calculating the Optimal Cycle Scheme

The monthly working time of the crewmembers is the foundation for deciding the cycle scheme, which means a reasonable proportion of working time and resting time in the cycle scheme is needed for crewmembers to finish the monthly working time. Meanwhile, the crewmembers were grouped in our research. Hence, the number of crewmembers is equal to the product of the number of rotas and the planning horizon of the plan. The crew routes in each rota should be as high as possible, which requires good proportions between the number of crew routes and the working days in the plan, to reduce the number of crewmembers used. Therefore, the optimal cycle scheme should be determined according to the number of crew routes, the average working time of crew routes, and the monthly working time standard.By studying the relationship between the above factors, the method for deciding the optimal cycle scheme is designed as follows.


### 4.1.1. Preliminary Selection for the Reasonable Cycle Scheme

With the assumption that the number of crew routes isN, the average working time is t
average (min), the monthly working time standard is T
month (h), and the number of days in a month is D
month
.Then, the reasonable cycle scheme should satisfy
(10)
t
average
×
T
work
T
=
60
T
month
D
month
,
where the values of T and T
work are unknown. However, T
work is a part of T; thus, the relationship between them can be represented as φ, given by
(11)
φ
=
T
work
T
=
60
T
month
t
average
D
month
.Under the standard of China railway, the value of monthly working time is set toT
month
=
166.7 h and the day in a month to D
month
=
30 d. Then, formula (11) can be converted as follows:
(12)
φ
=
T
work
T
=
60
×
166.7
30
t
average
=
333.4
t
average
.Considering thatT and T
work represent the number of days, the values of T and T
work are integers and their proportion close to φ is a reasonable cycle scheme. Alternatively, we can let T (or T
work) be an integer and then calculate the value of T
work (or T) by formula (12). When the calculated result is close to an integer, this cycle scheme is also a reasonable cycle scheme. A set of reasonable cycle schemes of the crew rostering plan can be drawn from this method, and then further selection will be executed among these cycle schemes.


### 4.1.2. Further Selection for the Optimal Cycle Scheme

With the assumption that the planning horizon of cycle schemei is T
i and the number of working days is T
work
i, the number of crewmembers used in this crew rostering plan N
crew
i is calculated as follows:
(13)
N
crew
i
=
⌈
N
T
work
i
⌉
×
T
i
.The cycle scheme with the minimal crewmembers is the optimal one in all reasonable cycle schemes because the number of crewmembers used in the plan is the most important objective. Formula (13) assumes that a crew route can connect to any other route in a short time, resulting in an ideal one. Anext day’s connection may exist between two crew routes because the connection time does not satisfy the regulations (which means adding 1440 min to their original connection time). This situation means that an empty crew route is added between two adjacent crew routes. When this situation occurs, the time in the plan cannot be used sufficiently and the optimal cycle scheme determined by formula (13) is improper. To fully consider the influence caused by thenext day’s connections, formula (13) is rewritten as
(14)
N
crew
i
=
⌈
N
+
Δ
n
T
work
i
⌉
×
T
i
.


## 4.1.1. Preliminary Selection for the Reasonable Cycle Scheme

With the assumption that the number of crew routes isN, the average working time is t
average (min), the monthly working time standard is T
month (h), and the number of days in a month is D
month
.Then, the reasonable cycle scheme should satisfy
(10)
t
average
×
T
work
T
=
60
T
month
D
month
,
where the values of T and T
work are unknown. However, T
work is a part of T; thus, the relationship between them can be represented as φ, given by
(11)
φ
=
T
work
T
=
60
T
month
t
average
D
month
.Under the standard of China railway, the value of monthly working time is set toT
month
=
166.7 h and the day in a month to D
month
=
30 d. Then, formula (11) can be converted as follows:
(12)
φ
=
T
work
T
=
60
×
166.7
30
t
average
=
333.4
t
average
.Considering thatT and T
work represent the number of days, the values of T and T
work are integers and their proportion close to φ is a reasonable cycle scheme. Alternatively, we can let T (or T
work) be an integer and then calculate the value of T
work (or T) by formula (12). When the calculated result is close to an integer, this cycle scheme is also a reasonable cycle scheme. A set of reasonable cycle schemes of the crew rostering plan can be drawn from this method, and then further selection will be executed among these cycle schemes.


## 4.1.2. Further Selection for the Optimal Cycle Scheme

With the assumption that the planning horizon of cycle schemei is T
i and the number of working days is T
work
i, the number of crewmembers used in this crew rostering plan N
crew
i is calculated as follows:
(13)
N
crew
i
=
⌈
N
T
work
i
⌉
×
T
i
.The cycle scheme with the minimal crewmembers is the optimal one in all reasonable cycle schemes because the number of crewmembers used in the plan is the most important objective. Formula (13) assumes that a crew route can connect to any other route in a short time, resulting in an ideal one. Anext day’s connection may exist between two crew routes because the connection time does not satisfy the regulations (which means adding 1440 min to their original connection time). This situation means that an empty crew route is added between two adjacent crew routes. When this situation occurs, the time in the plan cannot be used sufficiently and the optimal cycle scheme determined by formula (13) is improper. To fully consider the influence caused by thenext day’s connections, formula (13) is rewritten as
(14)
N
crew
i
=
⌈
N
+
Δ
n
T
work
i
⌉
×
T
i
.


## 4.2. Improved Ant Colony Algorithm

The method for solving the crew rostering problem in our research is then designed based on the adjustment of the ant colony algorithm with bi-pheromone and bi-heuristic information designed in the study by Tian and Niu [24]. The algorithm in this paper only differs in the design of heuristic information and evaluation function; thus, only these two parts will be described below. For the other parts of the ant colony algorithm, interested readers can learn the related contents in the studies by Dorigo and Gambardella [31] and Tian and Niu [24].


### 4.2.1. Calculation of Heuristic Information

When constructing a rota, the calculation method of the selection probability is different according to the location of the ant. When the construction of a rota is finished, the ant returns to the virtual node, and then the first crew route for next rota is chosen by the pheromone and heuristic information of all crew route nodes. Otherwise, the next crew route is chosen by the pheromone and heuristic information of the connecting arcs if the constructing process is still searching for a crew route for current rota.The heuristic information of crew route nodes is calculated by its starting time and ending time:(15)
η
j
=
1
(
t
j
s
+
t
j
e
)
.The heuristic information of the connecting arcs between the crew routes should guide the ants finding a crew rostering plan that not only uses lower crewmembers but also keeps the balance of the working time and the income among all rotas. Therefore, the calculation of the heuristic information on arcs should contain the following parameters: (a) the connection time between crew routes, (b) the working time of the crew routes to be selected, and (c) the income of the crew routes to be selected.When the connection time between two crew routes satisfies the regulations, the value of the time is as short as possible. Thus, the connection time is considered by its reciprocal in heuristic information. For the working time and income, we hope that the selection of the next crew route helps keep their balance in a final solution. LetT
now and I
now represent the working time and income of current crew route sequence, respectively, and d is the number of days in current sequence. T
average and I
average are the average working time and average income, respectively. The expected working time and income are d
T
average
/
T
w and d
I
average
/
T
w, respectively. The expected working time and income after the connection of next crew route are (
d
+
1
)
T
average
/
T
w and (
d
+
1
)
I
average
/
T
w, respectively. Therefore, the expected working time t
next and income r
next of next crew route to be selected are represented by the following formulas:
(16)
t
next
=
(
d
+
1
)
T
average
T
w
-
T
now
,
r
next
=
(
d
+
1
)
I
average
T
w
-
I
now
.When constructing the rota, a crew route is more likely to be selected if its working time and income are close tot
next and r
next. Therefore, the heuristic information for selecting next crew route from current crew route is represented as
(17)
η
i
j
=
1
t
i
j
×
1
|
t
i
-
t
next
|
+
σ
×
1
|
r
i
-
r
next
|
+
σ
,
where the last two parts denote the proportion of the working time and income of the crew routes to be selected and σ is a nonzero positive number that ensures that the value of η
i
j is meaningful when t
i
=
t
next or r
i
=
r
next.


### 4.2.2. Evaluation Function

The integrated optimization objective (8) is used as the criteria for evaluating the quality of the solution constructed by the ants. According to the weight and range of all objectives, the value of function (8) consists of two parts, in which the integer part represents the number of rotas in the crew rostering plan, whereas the decimal part indicates the equilibrium of the working time and income of the rotas.


## 4.2.1. Calculation of Heuristic Information

When constructing a rota, the calculation method of the selection probability is different according to the location of the ant. When the construction of a rota is finished, the ant returns to the virtual node, and then the first crew route for next rota is chosen by the pheromone and heuristic information of all crew route nodes. Otherwise, the next crew route is chosen by the pheromone and heuristic information of the connecting arcs if the constructing process is still searching for a crew route for current rota.The heuristic information of crew route nodes is calculated by its starting time and ending time:(15)
η
j
=
1
(
t
j
s
+
t
j
e
)
.The heuristic information of the connecting arcs between the crew routes should guide the ants finding a crew rostering plan that not only uses lower crewmembers but also keeps the balance of the working time and the income among all rotas. Therefore, the calculation of the heuristic information on arcs should contain the following parameters: (a) the connection time between crew routes, (b) the working time of the crew routes to be selected, and (c) the income of the crew routes to be selected.When the connection time between two crew routes satisfies the regulations, the value of the time is as short as possible. Thus, the connection time is considered by its reciprocal in heuristic information. For the working time and income, we hope that the selection of the next crew route helps keep their balance in a final solution. LetT
now and I
now represent the working time and income of current crew route sequence, respectively, and d is the number of days in current sequence. T
average and I
average are the average working time and average income, respectively. The expected working time and income are d
T
average
/
T
w and d
I
average
/
T
w, respectively. The expected working time and income after the connection of next crew route are (
d
+
1
)
T
average
/
T
w and (
d
+
1
)
I
average
/
T
w, respectively. Therefore, the expected working time t
next and income r
next of next crew route to be selected are represented by the following formulas:
(16)
t
next
=
(
d
+
1
)
T
average
T
w
-
T
now
,
r
next
=
(
d
+
1
)
I
average
T
w
-
I
now
.When constructing the rota, a crew route is more likely to be selected if its working time and income are close tot
next and r
next. Therefore, the heuristic information for selecting next crew route from current crew route is represented as
(17)
η
i
j
=
1
t
i
j
×
1
|
t
i
-
t
next
|
+
σ
×
1
|
r
i
-
r
next
|
+
σ
,
where the last two parts denote the proportion of the working time and income of the crew routes to be selected and σ is a nonzero positive number that ensures that the value of η
i
j is meaningful when t
i
=
t
next or r
i
=
r
next.


## 4.2.2. Evaluation Function

The integrated optimization objective (8) is used as the criteria for evaluating the quality of the solution constructed by the ants. According to the weight and range of all objectives, the value of function (8) consists of two parts, in which the integer part represents the number of rotas in the crew rostering plan, whereas the decimal part indicates the equilibrium of the working time and income of the rotas.


## 5. Numerical Example

To verify the reasonableness of the model and the effectiveness of the algorithm, this paper generates 43 crew routes shown in Table1 to work out the crew rostering plan. The earliest starting time of crew routes is 6:04, whereas the latest finishing time is 22:56; when represented by minute, they are 364 and 1376, respectively. The working time of a crew route is the time span between its starting time and ending time. In our study, three license types have incomes of 0.55, 0.65, and 0.75 yuan per minute. The weights of the equilibrium of working time and income are set as 0.6 and 0.4.Table 1
Crew route data.
Route index
Starting time (min)
Ending time (min)
Working time (min)
License type
1
364
806
442
1
2
370
737
367
3
3
371
825
454
3
4
394
840
446
2
5
405
801
396
3
6
430
819
389
2
7
442
815
373
2
8
457
846
389
3
9
512
954
442
1
10
527
920
393
1
11
542
942
400
2
12
580
1052
472
2
13
602
999
397
2
14
606
990
384
2
15
619
1036
417
3
16
624
1016
392
2
17
642
1093
451
2
18
645
1106
461
1
19
653
1037
384
2
20
678
1153
475
2
21
690
1090
400
2
22
703
1087
384
1
23
704
1155
451
2
24
707
1118
411
3
25
717
1192
475
1
26
718
1160
442
1
27
753
1190
437
2
28
756
1222
466
2
29
776
1240
464
1
30
784
1184
400
2
31
790
1252
462
3
32
808
1194
386
3
33
818
1246
428
2
34
824
1247
423
3
35
836
1301
465
2
36
836
1277
441
3
37
850
1253
403
1
38
854
1307
453
2
39
857
1305
448
2
40
883
1310
427
2
41
913
1373
460
2
42
916
1376
460
3
43
927
1372
445
2According to the given data, the average working time of our 43 crew routes is 427 min. Thus, the proportion ofT and T
w is
(18)
φ
=
T
work
T
=
333.4
427
=
0.78
.To use the crewmembers more flexibly, the planning horizon of long period is not considered in our research. To determine the optimal value ofT and T
work, we let T
work be an integer and then calculate the value of T. When T
work belongs to [
1,28
], the values of T calculated by φ are shown in Table 2, in which the bold figures mean that the values of T are close to integer.Table 2
Reasonable cycle schemes to be selected.
Cycle scheme
Working day
Planning horizon
1
1
1.28
2
2
2.56
3
3
3.84
4
4
5.12
5
5
6.40
6
6
7.68
7
7
8.97
8
8
10.25
9
9
11.53
10
10
12.81
11
11
14.09
12
12
15.37
13
13
16.65
14
14
17.93
15
15
19.21
16
16
20.49
17
17
21.77
18
18
23.05
19
19
24.33
20
20
25.61
21
21
26.90
22
22
28.18
23
23
29.46
24
24
30.74
25
25
32.02
26
26
33.30
27
27
34.58
28
28
35.86Furthermore, when taking the number of crew routesN and the number of probablenext day’s connection
Δ
n into account, the best cycle schemes are shown in Table 3.Table 3
Optimal cycle schemes with differentΔ
n.
Reasonable cycle schemes
Crewmembers used under certain cycle scheme
Scheme
Planning horizon
Working days
Δ
n
=
0
Δ
n
=
1
Δ
n
=
2
Δ
n
=
3
Δ
n
=
4
Δ
n
=
5
Δ
n
=
6
Δ
n
=
7
1
4
3
60
60
6
0
*
64
64
64
68
68
2
9
7
63
63
63
6
3
*
6
3
*
6
3
*
6
3
*
72
3
13
10
65
65
65
65
65
65
65
65
4
14
11
5
6
*
5
6
*
70
70
70
70
70
70
5
18
14
72
72
72
72
72
72
72
72
6
23
18
69
69
69
69
69
69
69
69
7
27
21
81
81
81
81
81
81
81
81
8
28
22
5
6
*
5
6
*
84
84
84
84
84
84
9
32
25
64
64
64
64
64
64
64
6
4
*
10
36
28
72
72
72
72
72
72
72
72We can conclude from Table3 that the optimal cycle scheme varies with the number of thenext day’s connection in the crew rostering plan, which causes the number of the crewmembers used in the plan to vary. The number ofnext day’s connection is unpredictable; thus, we choose the index of the cycle scheme by the order of 4(
8
)-1-2-9 while Δ
n varies from 0 to 7, as shown in Table 3 with asterisks. If a crew rostering plan using 56 crewmembers can be obtained under the 4th (or 8th) value of T and T
w, we believe that the plan is already the best one. Otherwise, the next cycle scheme will be selected to work out the crew rostering plan again.After adopting the fourth and eighth cycle schemes in Table3, the optimal crew rostering plan shown in Tables 4 and 5 is obtained by the improved ant colony algorithm designed in 4.2. The parameters of the improved ant colony algorithm are set to α
=
1, β
=
5, and ρ
=
0.1; the number of ants is 30; and the iteration time is 100. The algorithm is programmed by Visual C# on a personal computer with 2.93G CPU and 1 G memory. The average operation times for the two different cycle schemes are 1.34 and 1.27 s.Table 4
Optimal crew rostering plan withT
=
14 and T
work
=
11.
Rota
Crew route sequence
Working time (min)
Income (yuan)
1
2
31
6
22
7
37
12
16
13
5
32
4421
5912.1
2
8
9
17
43
20
30
40
11
14
3
18
4728
6134
3
10
23
38
26
39
19
21
1
33
25
15
4733
5886
4
4
24
28
42
35
41
27
29
34
36
4473
6069
Crewmembers used: 56, evaluation function: 4.0615, average working time: 4588.75 min, and average income: 6000.4 yuan.Table 5
Optimal crew rostering plan withT
=
28 and T
work
=
22.
Rota
Crew route sequence
Working time (min)
Income (yuan)
1
2
10
8
21
1
4
17
23
3
7
22
9106
11838.8
37
13
6
38
16
19
40
15
35
14
43
2
5
9
25
32
33
18
24
41
31
20
26
9249
12162.7
28
12
11
36
30
39
34
27
29
42
Crewmembers used: 56, evaluation function: 2.0035, average working time: 9177.5 min, and average income: 12000.8 yuan.Tables4 and 5 show that the number of rotas is 4 when T
=
14 and T
w
=
11 and 2 when T
=
28 and T
w
=
22. The numbers of crewmembers used in two plans are all 56, which reaches the lowest bound. The result shows that the two cycle schemes are optimal and helpful to reduce the number of crewmembers. The values of evaluation function of the two cycle schemes are shown in the tables.


## 6. Conclusions

With the development of China high-speed railway lines, new changes have occurred in the organization of operation plans. As an important part of CPP, the research of crew rostering problem is crucial for optimizing the use of crewmembers. In this paper, the multilicense crew rostering problem is studied by adopting the grouped rostering approach, which is helpful to the operation and management of the crewmembers. The optimization model aimed at minimizing the number of crewmembers used and keeping the balance of the working time and income of all crewmembers has been established. In our research, we found that the cycle scheme is the main factor that influences the number of crewmembers used in the plan. Then, the calculation method of the optimal cycle scheme is studied with the consideration of the number of crew routes, the average working time of crew routes, and the monthly working time standard of crewmembers. After the cycle scheme is selected, an ant colony algorithm with bi-pheromone and bi-heuristic information is designed to work out the crew rostering plan. In the solving process, the algorithm can dynamically calculate the expected working time and income for choosing the next crew route according to the accumulative working time and income of the partial solution of the constructed rota. In this way, the algorithm can select a reasonable crew route that meets the objective function of the optimization model. The designed numerical example showed that the designed algorithm can select an optimal cycle scheme, and the crew rostering plan weaved with this cycle scheme also met the optimization goals of the problem.



---

*Source: 910569-2014-03-11.xml*