1 Introduction

Along with the growing agreement on the concept of sustainable transportation, energy saving and emission reduction in railway system are receiving more and more attention. Compared to other transport modes, railway system has many advantages such as lower fuel consumption and exhausts emission for freight and passenger movements. Hence, rail transport will inevitably play an important role in meeting global transportation demands.

From a systematic point of view, energy consumption and exhausts emission in railway systems should be considered in rail transport planning so that energy reservation and emission reduction can be effectively attained in the different planning processes. The railway transport planning is a highly complex process which contains passenger demand analysis, line planning, train scheduling, rolling stock planning, crew planning, and crew rostering [1, 2].

In this paper, we place the focus of energy saving and emission reduction in railway systems on the train scheduling. First, an improved multi-objective train-scheduling optimization model considering segment emission constraint for energy saving and emission reduction is put forward on the basis of relevant models by assigning different groups of locomotives and carriages. Then, we employ a fuzzy multi-objective optimization approach to obtain the non-dominated solutions. Finally, a numerical example is presented and compared to illustrate the efficiency of the proposed model and solution methodology.

2 Literature review

As one of the most challenging problems in railway planning, train scheduling is to determine the time all trains arrive and depart each station on an entire line or network, i.e., the train timetable. There are two methods used to have a practically reasonable timetable. One is through a trial and error process using a preliminary train diagram. The other is computer-based, such as mathematical programing [3, 4], simulation [5, 6], and expert systems [7, 8]. As the improvement of computer speed, mathematical programing first applied by Amit and Goldfard [9] has become the most popular approach which has been used for optimizing different models such as trip time [10], delay time [11], reliability [12], deviation from a preferred time table [13, 14], operation cost [15], and so on. Cordeau et al. [16] have made a good survey about the single-objective optimization methods.

Train scheduling is inherently a multi-objective decision problem since an effective timetable should trade off the benefit of railway companies against the benefit of passengers. On one hand, railway companies prefer to minimize the operation cost, which has a conflict with the benefit of passengers who need a shorter trip time. As a result, more and more studies have been shifted to the tradeoff between operation cost and trip time by formulating multi-objective optimization models [1, 3, 15].

Compared to single-objective approaches, multi-objective approaches are generally proved to be capable of producing better solutions since more relevant factors can be considered as optimization objectives and evaluated in non-commensurable units in different relevant areas.

To realize energy saving in railroads and rail transit systems, the major operations include energy-efficient design of locomotives and motor units [17, 18], effective reduction of resistance to the train movement [1921], proper maintenance of rolling stock and tracks [22, 23], optimal operation strategy of train movement [2427], and design of efficient timetables [2830] etc.

Studies on exhaust emissions reduction in railway systems can be classified into three categories: the specific emission reduction technologies and systems for locomotives and rail-yards [31, 32], the emission estimation models [3340], and the evaluation of exhaust emissions impacts on human health [4145]. Here two special studies [1, 15] need to be mentioned, which are related to train-scheduling problem and energy saving. In 2004, Ghoseiri et al. [1] developed a multi-objective optimization model for the passenger train-scheduling problem. Lowering the fuel consumption cost was the measure of satisfaction of the railway company and shortening the total passenger-time was regarded as the passenger satisfaction criterion. In 2012, Li et al. [15] proposed a green train-scheduling multi-objective optimization model by minimizing the energy and carbon emission cost as well as the total passenger-time.

In this paper, we attempt to make a comprehensive investigation on energy saving and emission reduction combined with train-scheduling problem considering locomotive assignment and segment emission constraints.

3 Model development

We try to make some tactical and operational decisions related to train-scheduling: selection of routes; arrival and departure times at each station for all trains; locomotive assignment. Exhausts emission also have been taken into consideration.

3.1 Notation

The following indices, parameters, and decision variables are defined and will be used throughout this paper.

\( I (i \in I ) \) :

Set of train stocks, also referring to trains for simplicity

\( L (l \in L ) \) :

Set of locomotives

\( S (s \in S ) \) :

Set of stations

\( Q (q \in Q ) \) :

Set of segments between two successive stations

\( E (e \in E ) \) :

Set of exhausts emissions

Q i :

Set of segments used by train i

\( Q_{is}^{E} \) :

Set of segments entering into station s used by train i

\( Q_{is}^{L} \) :

Set of segments departing station s used by train i

\( s_{eq} \) :

Station via which a train enters segment q

\( s_{lq} \) :

Station via which a train leaves segment q

\( k_{0}^{l} ,\;k_{1}^{l} ,\;k_{2}^{l} \) :

Resistance coefficients of Davis equation for locomotive l

\( k_{0}^{i} ,\;k_{1}^{i} ,\;k_{2}^{i} \) :

Resistance coefficients of Davis equation for the carriage of train stock i

R iq :

Resistance effort on train i traversing segment q

P iq :

Required power for train i traversing segment q

r l :

Amount of fuel consumption per unit power output for locomotive l

N is :

Number of passengers on train i when it arrives at station s

Y is :

Number of passengers leaving train i at station s

Z is :

Number of passengers boarding train i at station s

\( T_{{_{is} }}^{y} \) :

Required stopping time for allowing passengers to leave train i at station s

\( T_{{_{is} }}^{z} \) :

Required stopping time for allowing passengers to board train i at station s

M i :

Mass of train stock i

M l :

Mass of locomotive l

N l :

Maximum quantity of locomotive l

g :

Gravity acceleration

w is :

The minimum dwell time required for train i when it arrives at station s

h q :

The minimum headway time between two trains on segment q

d q :

Length of segment q

\( \theta_{q} \) :

Gradient on segment q

\( X_{i}^{{O_{i} }} \) :

The earliest departure time of train i from its origin station

\( X_{i}^{{D_{i} }} \) :

The planned arrival time of train i at its destination station

\( \eta_{el} \) :

Exhaust e emission factor of locomotive l

\( \xi_{qe} \) :

Exhaust e emission upper bound on segment q

c :

Unit fuel cost

e :

Allowance for exhaust e emission

λ e :

Unit price of exhaust e emission allowance

bigM:

A large positive number

\( u\_v_{iq} \) :

Upper limit for the average velocity of train i on segment q

\( l\_v_{iq} \) :

Lower limit for the average velocity of train i on segment q

\( v_{iq} \) :

Average velocity of train i on segment q

\( t_{{_{is} }}^{a} \) :

Time at which train i arrives at station s

\( t_{{_{is} }}^{d} \) :

Time at which train i departs at station s

\( t_{{_{i} }}^{{O_{i} }} \) :

Time at which train i departs from its origin station \( O_{i} \)

\( t_{{_{i} }}^{{D_{i} }} \) :

Time at which train i arrives at its destination station

Binary decision variables

$$ LA_{il} = \left\{ \begin{array}{ll} 1&{{\text{if\;lomotive }}l{\text{ assigned\;to\;train }}i} \\ 0&{\text{otherwise}} \\ \end{array} \right. $$
$$H_{{iq}} = \left\{ {\begin{array}{ll} 1& {{\text{if train }}i{\text{ traverses segment}}\;q \in Q_{i} }\\ 0 & {{\text{otherwise}}} \\ \end{array} } \right. $$
$$ A_{ijq} = \left\{ \begin{array}{ll} 1&{{\text{if inbound train }}i{\text{ traverses segment }}q \in Q_{i} \cap Q_{j} {\text{ before inbound train }}j} \\ 0&{\text{otherwise}} \\ \end{array} \right. $$
$$B_{ijq} = \left\{ \begin{array}{ll} 1&{\text{if inbound train }}i{\text{ traverses segment }}\;q \in Q_{i} \cap Q_{j} {\text{ before outbound train }}j \\ 0&{\text{otherwise}} \\ \end{array} \right.$$
$$C_{ijq} = \left \{ {\begin{array}{ll} 1&{\text{if inbound train }}i{\text{ traverses segment }}\;q \in Q_{i} \cap Q_{j} {\text{ before outbound train }}{j} \\ 0&{\text{otherwise}} \\ \end{array} }\right. $$

3.2 Energy and emission cost considering locomotive assignment

For each train, the amount of fuel consumption per mass is proportional to the resistance effort and the displacement, where the resistance includes many aspects such as rolling resistance, flange resistance, axle resistance, track resistance, curve resistance, grade resistance, air resistance, and so on. Davis and the American Railway Engineering Association derived a comprehensive train resistance equation, which has been incorporated into many train performance simulators and analytical models [46]. Using Davis equation, the resistance considering the match between locomotive and train stock is defined as

$$ R_{iq} = \sum\limits_{l} {} LA_{il} [M_{l} (k_{0}^{l} + k_{1}^{l} v_{iq} + k_{2}^{l} v_{{_{iq} }}^{2} )+ M_{i} (k_{0}^{i} + k_{1}^{i} v_{iq} + k_{2}^{i} v_{{_{iq} }}^{2} )+ g ( {\text{sin}}\;\theta_{q} ) ] .$$

For each segment \( q \in Q_{i} \), the velocity is determined as

$$ v_{iq} = \frac{{d_{q} }}{{ (t_{{is_{lq} }}^{a} - t_{{is_{eq} }}^{d} )}} .$$

The required power can be simplified as \( P_{iq} = R_{iq} v_{iq} \). Since the trip time for train i traverses segment q is \( d_{q} /v_{iq} \), the fuel consumption is \( R_{iq} d_{q} \sum\nolimits_{i} {LA_{il} r_{l} } \). For the whole trip, the fuel consumption for train locomotive l is \( E_{i} = \sum\nolimits_{{q \in Q_{i} }} {R_{iq} d_{q} \sum\nolimits_{l} {LA_{il} r_{l} } } \).

Let c denote the cost per unit fuel consumption. Then, the cost on fuel consumption is

$$ E = \sum\limits_{i} {\sum\limits_{{q \in Q_{i} }} {cR_{iq} d_{q} \sum\limits_{l} {LA_{il} r_{i} } } } .$$

In addition, if the allowance for emission reduction is considered, the total emission cost is

$$ F = \sum\limits_{e} {\lambda_{e} \left( {\sum\limits_{i} {\sum\limits_{l} {\eta_{el} E_{i} } - \Updelta_{e} } } \right)}, $$
(1)

where λ e is the unit price for trading the surplus exhaust e emission. If the total exhaust e emission is larger than ∆ e , it needs the expenses on buying the extra emission allowances. Otherwise, if the total exhaust e emission is less than ∆ e , it means the profit arising from the reduction on exhaust e emission.

3.3 Total passenger-time

According to the strategic scheduling plan, each train is scheduled to stop at certain stations to allow passengers to board/leave the train. Arrival at each of these predetermined stations terminates an old sub-journey and starts a new sub-journey. Therefore, the trip of each train is divided into several sub-journeys. The total passenger-time for train i transverses the segment q can be formulated as below [1, 15]:

$$ T_{iq} = (N_{{is_{eq} }} - Y_{{is_{eq} }} + Z_{{is_{eq} }} ) (T_{{is_{lq} }}^{a} - T_{{is_{eq} }}^{a} )- \frac{1}{2} (N_{{is_{eq} }} - Y_{{is_{eq} }} + Z_{{is_{eq} }} )T_{{is_{eq} }}^{y} - \frac{1}{2}Z_{{is_{eq} }} T_{{is_{eq} }}^{z} . $$

So, the total passenger-time for all trains is

$$ T = \sum\limits_{i} {\sum\limits_{{q \in Q_{i} }} {T_{iq} } }. $$
(2)

3.4 Constraints with locomotive assignment and segment emission

The train-scheduling problem includes the following constraints:

$$ \sum\limits_{l} {LA_{ij} } = 1 .$$
(3)

Constraint (3) states that a train is only pulled by a locomotive, not considering multi-locomotive traction in this paper.

$$ \sum\limits_{i} {LA_{il} } \le N_{l} . $$
(4)

Constraint (4) insures that the number of locomotive needed for trains cannot exceed the locomotive maximum capacities.

$$ t_{{_{i} }}^{{O_{i} }} \ge X_{i}^{{O_{i} }} ,\,t_{{_{i} }}^{{D_{i} }} \le X_{i}^{{D_{i} }} . $$
(5)

Constraint (5) points out that each train cannot leave the origin station earlier than its earliest departure time, and it should arrive at the destination station before the scheduled time.

$$ \sum\limits_{{q \in Q_{is}^{E} }} {H_{iq} } = \sum\limits_{{q \in Q_{is}^{L} }} {H_{iq} } = 1 . $$
(6)

Constraint (6) assures that each train should first choose only one segment to come into station s, and then one segment to leave the station s.

$$ \sum\limits_{{q \in Q_{is}^{E} }} {t_{is}^{d} H_{iq} } = \sum\limits_{{q \in Q_{is}^{L} }} {t_{is}^{a} H_{iq} } + t_{is}^{y} + t_{is}^{z}. $$
(7)

Constraint (7) describes the formulation of arrival time, departure time, and dwell time of each train in station s.

$$ \frac{{d_{q} }}{{u\_v_{iq} }} \le t_{{is_{eq} }}^{a} - t_{{is_{lq} }}^{d} \le \frac{{d_{q} }}{{l\_v_{iq} }} . $$
(8)

Constraint (8) insures that each train’s velocity is between the upper limit velocity and the lower limit velocity on segment q.

$$ \sum\limits_{i} {\sum\limits_{l} {R_{iq} d_{q} \eta_{el} LA_{il} } } \le \xi_{qe}, \quad \forall q,e . $$
(9)

Constraint (9) indicates that exhaust e emission on segment q should be less than the amount of given emissions on the corresponding segment.

$$ \left\{ \begin{array}{l} T_{{is_{eq} }}^{d} + h_{q} \le T_{{js_{eq} }}^{d} + {\text{big}}M [ (1 - H_{iq} )+ (1 - H_{jq} )+ (1 - A_{ijq} ) ], \\ T_{{is_{lq} }}^{a} + h_{q} \le T_{{js_{lq} }}^{a} + {\text{big}}M [ (1 - H_{iq} )+ (1 - H_{jq} )+ (1 - A_{ijq} ) ], \\ T_{{js_{eq} }}^{d} + h_{q} \le T_{{is_{eq} }}^{d} + {\text{big}}M [ (1 - H_{iq} )+ (1 - H_{jq} )+ (1 - A_{jiq} ) ], \\ T_{{js_{lq} }}^{a} + h_{q} \le T_{{is_{lq} }}^{a} + {\text{big}}M [ (1 - H_{iq} )+ (1 - H_{jq} )+ (1 - A_{jiq} ) ], \\ A_{ijq} + A_{jiq} = H_{iq} H_{jq}. \\ \end{array} \right. $$
(10)

In constraint (10), a headway time is required between each pair of successive trains for the inbound trains due to signaling, safety, etc.

$$ \left\{ \begin{array}{l} T_{{is_{eq} }}^{d} + h_{q} \le T_{{js_{eq} }}^{d} + {\text{big}}M [ (1 - H_{iq} )+ (1 - H_{jq} )+ (1 - C_{ijq} ) ], \\ T_{{is_{lq} }}^{a} + h_{q} \le T_{{js_{lq} }}^{a} + {\text{big}}M [ (1 - H_{iq} )+ (1 - H_{jq} )+ (1 - C_{ijq} ) ], \\ T_{{js_{eq} }}^{d} + h_{q} \le T_{{is_{eq} }}^{d} + {\text{big}}M [ (1 - H_{iq} )+ (1 - H_{jq} )+ (1 - C_{jiq} ) ] , \\ T_{{js_{lq} }}^{a} + h_{q} \le T_{{is_{lq} }}^{a} + {\text{big}}M [ (1 - H_{iq} )+ (1 - H_{jq} )+ (1 - C_{jiq} ) ], \\ C_{ijq} + C_{jiq} = H_{iq} H_{jq} . \\ \end{array} \right. $$
(11)

In constraint (11), a headway time is required between each pair of successive trains for the outbound trains due to signaling, safety, etc.

$$ \left\{ \begin{array}{l} T_{{is_{lq} }}^{a} \le T_{{js_{lq} }}^{d} + {\text{big}}M [ (1 - H_{iq} )+ (1 - H_{jq} )+ (1 - B_{ijq} ) ], \\ T_{{js_{lq} }}^{a} \le T_{{is_{eq} }}^{d} + {\text{big}}M [ (1 - H_{iq} )+ (1 - H_{jq} )+ (1 - B_{jiq} ) ], \\ B_{ijq} + B_{jiq} = H_{iq} H_{jq} . \\ \end{array} \right. $$
(12)

In constraint (12), a collision should be avoided between each pair of successive trains for the opposite trains.

3.5 Multi-objective model

A reasonable train timetable should consider both the operation cost and the trip time, which respectively represents the benefits of railway company and passengers. The following multi-objective optimization model which minimizes the operation cost and the total passenger-time:

$$ \begin{array}{*{20}c} {{ \hbox{min }}f (x )= \left\{ {E (x )+ F (x ) ,T (x )} \right\}} . \\ \end{array} $$
(13)

Under the constraints (3)–(12), where \( x = (x_{1} ,\;x_{2} ,\; \ldots ,\;x_{n} ) \) is an n-dimensional decision vector containing all binary and continuous variables.

Note that if the train is viewed as a whole and exhaust CO2 emission is only considered, this model degenerates to the green scheduling model by Li et al. [15]. Moreover, if all the trains are electrified without any exhaust emissions, this model degenerates to the model proposed by Ghoseiri et al. [1].

4 Model solution

Fuzzy mathematical programing is an efficient approach to solve multi-objective optimization problems, which models each objective as a fuzzy set whose membership function represents the degree of satisfaction of the objective. The membership degree is usually assumed to rise linearly from zero (for the least satisfactory value) to one (for the most satisfactory value). Zimmermann first used the max–min operator to aggregate the fuzzy objectives for making a compromise decision [47]. However, it cannot guarantee a non-dominated solution and is not completely compensatory. To achieve full compensation between aggregated membership functions and to insure a non-dominated solution, we use the extended max–min approach suggested by Lai and Hwang [48].

First, according to the single-objective optimization methods, it is easy to calculate the range for each objective. Here, we use \( C_{ \hbox{min} } \) and \( C_{ \hbox{max} } \) to denote the minimum and maximum operation costs, and use \( T_{ \hbox{min} } \) and \( T_{ \hbox{max} } \) to denote the minimum and maximum total passenger-times. Furthermore, we construct the membership function for cost objective

$$ \mu_{c} (x )= \left\{ \begin{array}{ll} 1,& {\text{ if}}\;{x < C_{ \hbox{min} } } , \\ \frac{{C_{ \hbox{max} } - x}}{{C_{ \hbox{max} } - C_{ \hbox{min} } }} ,& {\text{ if}}\;{C_{ \hbox{min} } \le x \le C_{ \hbox{max} } }, \\ 0, &{\text{ if}}\;{x > C_{ \hbox{max} } } , \end{array} \right. $$

and the membership function for total passenger-time objective

$$ \mu_{t} (x )= \left\{ \begin{array}{ll} 1 , &{\text{if}}\; {x < T_{ \hbox{min} } }, \\ \frac{{T_{ \hbox{max} } - x}}{{T_{ \hbox{max} } - T_{ \hbox{min} } }}, &{\text{if}} \;{T_{ \hbox{min} } \le x \le T_{ \hbox{max} } } ,\\ 0, &{\text{if}}\l{x > T_{ \hbox{max} } } . \\ \end{array} \right. $$

Finally, we aggregate \( \mu_{c} (x ) \) and \( \mu_{t} (x ) \) using the augmented max–min operator and then formulate the following single-objective optimization model

$$ \left\{ \begin{array}{l} { \hbox{max} }{\;\alpha + \varepsilon (\mu_{c} (x )+ \mu_{t} (x ) )/2}, \\ {\text{s}}.{\text{t}} .{\;\;\;\mu_{c} (x )\ge \alpha }, \\ \quad \mu_{t} (x )\ge \alpha, \\ {\text{Contraints }}\; (3 )- (12 ) . \end{array} \right. $$
(14)

where α is an auxiliary variable which represents the overall satisfactory level of compromise (to be maximized) and ε is a small positive number. Note that a non-dominated solution is always generated when α is maximized. The single-objective model (14) can be solved using the nonlinear optimization software such as LINGO, GAMS etc.

5 Numerical example

5.1 Example description

In this section, we present an example to illustrate the efficiency of the proposed model and solution method and make comparisons.

In an example, we consider a small rail network which includes three segments and three stations (see Fig. 1). There are two outbound trains and one inbound train. All of them leave from their origin stations to station 2 and then arrive at their destination stations. Three types of locomotives are given and they are selected to constitute a train with carriages. We need to choose not only the optimal segment for outboard train to start its trip and for inboard train to complete its trip, but also the optimal assignment between locomotive and carriage. In addition, we need to determine each train’s arrival and departure times at each station. The parameter values are shown in Table 1.

Fig. 1
figure 1

A rail network containing three segments and three stations

Table 1 Parameter values in example

5.2 Energy cost saving considering locomotive assignment without emission constraints

(1) Given locomotive assignment

In order to illustrate the efficiency of the proposed model, we first apply optimization software GAMS to solve the optimal timetable without considering locomotive assignment. In this example, locomotives \( l1 \), \( l2 \), \( l3 \) are assigned to train 1, 2, and 3, respectively. The results are shown as follows:

  1. (a)

    \( H_{12} = H_{13} = 1 , { }d_{11} = 300 , { }a_{12} = 3,071.01 , { }d_{12} = 3,791.01 , { }a_{13} = 7,200 , \)

  2. (b)

    \( H_{22} = H_{23} = 1 , { }d_{21} = 0 , { }a_{22} = 2,721.64 , { }d_{22} = 3,441.64 , { }a_{23} = 6,900 , \)

  3. (c)

    \( H_{32} = H_{33} = 1 , { }d_{33} = 0 , { }a_{32} = 4,229.74 , { }d_{22} = 4,949.74 , { }a_{31} = 7,200 , \)

  4. (d)

    Energy cost is 824.25 and the total passenger-time is 783.33.

(2) Locomotive assignment considered while the number of locomotives is limited.

Now, we consider the locomotive assignment, but the number of all types of locomotives is limited. Particularly, each locomotive is assigned as only one train in this example. The results are shown as follows:

  1. (a)

    \( L_{13} = 1 ,\,H_{12} = H_{13} = 1 ,\,d_{11} = 300 ,\,a_{12} = 2,630.86 ,\,d_{12} = 3,350.86 ,\,a_{13} = 7,200 , \)

  2. (b)

    \( L_{22} = 1 ,\,H_{22} = H_{23} = 1 ,\,d_{21} = 0 ,\,a_{22} = 2,317.24 ,\,d_{22} = 3,037.24 ,\,a_{23} = 6,900 , \)

  3. (c)

    \( L_{31} = 1 ,\,H_{32} = H_{33} = 1 ,\,d_{33} = 0 ,\,a_{32} = 3,512.54 ,\,d_{22} = 4,232.54 ,\,a_{31} = 7,200 , \)

  4. (d)

    Energy cost is 821.57 and the total passenger-time is 783.33.

(3) Locomotive assignment considered while the number of locomotives is unlimited.

Furthermore, we consider the locomotive assignment, but the number of all types of locomotives is unlimited. The results are shown as follows:

  1. (a)

    \( L_{13} = 1 ,\,H_{12} = H_{13} = 1 ,\,d_{11} = 308.15 ,\,a_{12} = 2,980.92 ,\,d_{12} = 3,700.92 ,\,a_{13} = 7,200 , \)

  2. (b)

    \( L_{23} = 1 ,\,H_{22} = H_{23} = 1 ,\,d_{21} = 8.15 ,\,a_{22} = 2,072.14 ,\,d_{22} = 2,792.14 ,\,a_{23} = 6,900 , \)

  3. (c)

    \( L_{33} = 1 ,\,H_{32} = H_{33} = 1 ,\,d_{33} = 0 ,\,a_{32} = 3,863.84 ,\,d_{22} = 4,583.84 ,\,a_{31} = 7,200 , \)

  4. (d)

    Energy cost is 743.10 and the total passenger-time is 782.88.

From the computation results, it can be seen that the energy cost is reduced by 33 % and 9.85 % effectively compared to the given locomotive assignment situation.

5.3 Energy cost saving considering locomotive assignment with emission constraints

Now, assume emissions of NO x on segment \( q1 , { }q2 , { }q3 \) are restricted to 0.002, 0.003, and 0.007, while emissions of PM on segment \( q1 , { }q2 , { }q3 \) are restricted to 0.0002, 0.0004, and 0.0007. The energy cost variations with different locomotive assignments are discussed as below:

(1) Given locomotive assignment

Similar to Sect. 5.1 (1), the results are shown as follows:

  1. (a)

    \( H_{12} = H_{13} = 1 ,\,d_{11} = 300 ,\,a_{12} = 3,154.27 ,\,d_{12} = 3,874.27 ,\,a_{13} = 7,200 , \)

  2. (b)

    \( H_{22} = H_{23} = 1 ,\,d_{21} = 0 ,\,a_{22} = 2,380.71 ,\,d_{22} = 3,100.71 ,\,a_{23} = 6,576.43 , \)

  3. (c)

    \( H_{32} = H_{33} = 1 ,\,d_{33} = 0 ,\,a_{32} = 3,497.14 ,\,d_{22} = 4,217.14 ,\,a_{31} = 7,200 , \)

  4. (d)

    Then energy cost is 905.44 and the total passenger-time is 774.35.

(2) Given locomotive assignment while the number of locomotives is limited.

Similar to Sect. 5.1 (2), the results are shown as follows:

  1. (a)

    \( L_{13} = 1 ,\,H_{12} = H_{13} = 1 ,\,d_{11} = 300 ,\,a_{12} = 3,140.46 ,\,d_{12} = 3,860.46 ,\,a_{13} = 7,200 , \)

  2. (b)

    \( L_{22} = 1 ,\,H_{22} = H_{23} = 1 ,\,d_{21} = 0 ,\,a_{22} = 2,827.83 ,\,d_{22} = 3,547.83 ,\,a_{23} = 6,900 , \)

  3. (c)

    \( L_{31} = 1 ,\,H_{32} = H_{33} = 1 ,\,d_{33} = 0 ,\,a_{32} = 3,543.74 ,\,d_{22} = 4,263.74 ,\,a_{31} = 7,200 , \)

  4. (d)

    Energy cost is 844.76 and the total passenger-time is 783.33.

(3) Locomotive assignment considered while the number of locomotives is unlimited.

Similar to Sect. 5.1 (3), the results are shown as follows:

  1. (a)

    \( L_{13} = 1 ,\,H_{11} = H_{13} = 1 ,\,d_{11} = 15.22 ,\,a_{12} = 2,371.84 ,\,d_{12} = 3,091.84 ,\,a_{13} = 7,195.63 , \)

  2. (b)

    \( L_{23} = 1 ,\,H_{22} = H_{23} = 1 ,\,d_{21} = 7.30 ,\,a_{22} = 2,068.80 ,\,d_{22} = 2,788.80 ,\,a_{23} = 6,895.63 , \)

  3. (c)

    \( L_{33} = 1 ,\,H_{32} = H_{33} = 1 ,\,d_{33} = 15.63 ,\,a_{32} = 3,861.97 ,\,d_{22} = 4,581.97 ,\,a_{31} = 7,200 , \)

  4. (d)

    Energy cost is 773.41 and the total passenger-time is 789.93.

From the computation results, it can be seen that the energy cost is reduced by 6.7 % and 14.58 % effectively compared to the given locomotive assignment situation.

Surprisingly, the reduction percent of energy cost saving with segment emission restriction is better than that of without segment emission restriction. Maybe, it is concerned with the amount of segment emissions and optimal software computation capability.

5.4 Comprehensive results analysis

Finally, we apply fuzzy mathematical programing to solve this multi-objective optimization problem. First, the minimum and maximum energy and emission operation costs are calculated to be 844.96 and 1135.40, and the minimum and maximum total passenger-times are 622.86 and 783.33. Furthermore, we solve the multi-objective optimization model (13). The results are concluded as follows:

  1. (a)

    \( L_{12} = 1 ,\,H_{12} = H_{13} = 1 ,\,d_{11} = 244.38 ,\,a_{12} = 2,743.69 ,\,d_{12} = 3,463.69 ,\,a_{13} = 6,900 , \)

  2. (b)

    \( L_{21} = 1 ,\,H_{22} = H_{23} = 1 ,\,d_{21} = 1,056.93 ,\,a_{22} = 3,340.31 ,\,d_{22} = 4,060.31 ,\,a_{23} = 7,200 , \)

  3. (c)

    \( L_{33} = 1 ,\,H_{32} = H_{33} = 1 ,\,d_{33} = 500.73 ,\,a_{32} = 3,329.30 ,\,d_{22} = 4,049.30 ,\,a_{31} = 6,106.44 , \)

  4. (d)

    Energy cost is 968.70, emission cost is −43.94, and total passenger-time is 666.95.

Although the energy cost is increased, the total operation cost is diminished due to the emission allowance change. Meanwhile, compared to single energy cost optimization model in Sect. 5.2 (2), total passenger-time is reduced by 14.86 %. It seems that this fuzzy multi-objective optimization model can derive more reasonable results.

Furthermore, if the numerical example is enlarged to include more trains and segments like the model in Ref. [1], a similarity exists that the computation time is more sensitive to the number of trains than to the number of segments in the network.

6 Conclusion

We put forward an energy saving train-scheduling multi-objective optimization model, which minimizes the energy cost and exhausts emission and total trip time by considering the locomotive assignment and segment emission constraints. The fuzzy multi-objective optimization approach is employed to get the non-dominated timetable which has equal satisfaction degree for passenger-time and cost. Finally, a numerical example was presented and compared to demonstrate that the proposed model can reduce the energy consumption significantly compared with the existing models and trade off operation cost against trip time.