Constraint--Based Local Search for Rail Container Service Planning

2 downloads 4127 Views 66KB Size Report
customer demands to a particular train service with minimum costs, but also provide .... In this section, we propose a solution algorithm for solving the linear ...
University of Leeds

SCHOOL OF COMPUTING RESEARCH REPORT SERIES Report 2003.03

Constraint--Based Local Search for Rail Container Service Planning by Nakorn Indra-Payoong, Raymond S K Kwan & Les Proll

February 2003

Abstract: This paper considers a rail container service planning problem, in which customer demands are known in advance. The existing rail service optimisation models are complex and not demand responsive. This paper focuses on constructing profitable schedules, in which service supply matches customer demands and optimises on booking preferences whilst satisfying regulatory constraints. The constraint satisfaction approach is used, in which optimisation criteria and operational requirements are formulated as soft and hard constraints respectively. We present a constraint-based local search algorithm capable of handling problems of realistic size. The algorithm minimises total violations in soft constraints and satisfies all hard constraints. It employs a randomised strategy for the selection of constraints and variables to explore, and uses a predictive constraint violation model to guide and intensify the search within more promising regions of the space. Experimental results, based on real data from the Royal State Railway of Thailand, have shown good computational performance of the new approach and suggest significant operational benefits can be achieved. Key words : Rail container service planning; Rail freight transportation; Constraint-based local search

1.

INTRODUCTION

The transportation of rail freight is a complex domain, with several processes and levels of decision, where investments are capital- intensive and usually require long-term strategic plans. In addition, the transportation of rail freight has to adapt to rapidly changing political, social, and economic environments. In general, the rail freight planning involves four main processes: path formulation, fleet assignment, schedule production, and fleet repositioning. This paper aims at constructing profitable schedules for the rail container service using a new approach.

1.1

Rail Container Service Planning Problem

Rail container service differs from conventional rail freight in several important aspects. Because of the high costs of container handling equipment, rail container networks have relatively few and widely spaced terminals. Networks with around ten terminals are common and the network flows are relatively simple. A typical container makes few or no stops and may be transferred between trains only up to a few times on its journey. In addition, small lot sizes of shipment, frequent shipment, and demand for flexible service are important characteristics in rail container transportation. Rail service profitability is basically influenced by the railway’s ability to construct schedules for which service supply matches customer demand. The need for flexible schedules is obvious because the take -up of some services in a fixed schedule may be low and not profitable. In order to create a profitable timetable, a railway operator needs to engage in a decision-making process with multiple criteria and numerous constraints, which is very challenging. This paper assumes an advance booking scheme as illustrated in Figure 1. It also assumes that all containers are homogeneous in terms of their physical dimensions, and they will be loaded on trains ready for any scheduled departure times. Note that a standard container is measured in TwentyEquivalent Unit (TEU) Tentative schedule Confirm Advance booking booking

Slack time

Week of operation

Fixed schedule

Figure 1. A short-term advance booking scheme

1

Time horizon

Customers are requested to state a preferred departure time slot in advance. A number of alternative departure times for each shipment may be specified, which might be judged from experience or by the shipment’s estimated delay costs. These alternatives not only help a railway operator consolidate customer demands to a particular train service with minimum costs, but also provide flexible departure times for the customer’s transport planning strategy.

1.2

Literature Review

There are two principal areas of work relating to the application domain and the solution approach. Application domain. There is an increasing interest in flexible rail freight schedules in the literature, which may be distinguished into two types according to how the overall demand is met. Huntley et al (1995), Gorman (1998), and Arshad et al (2000) aggregate customers with minimum operating costs through flexible scheduling. They do not guarantee meeting individual demand. Newman and Yano (2000), Yano and Newman (2001), and Kraft (2002) share the same spirit of our study by being responsive to individual demands. The models proposed by Newman and Yano, Yano and Newman, and Kraft satisfy the service constraints fully for each customer. In contrast, our framework models the degree of customer satisfaction, computed from preferred and alternative departure times, which is then maximised as one of the optimisation criteria. Hence, some customers might not be given their most preferred departure times. We believe that this framework is more natural for supporting decision-makers, in which the rail operator can explicitly balance the tradeoff between maximising customer satisfaction and maintaining other operational criteria. Solution approach. There are numerous local search methods, such as simulated annealing, tabu search, genetic algorithms, etc., for solving large-scale combinatorial problems, which include rail freight service planning problems. For instance, Huntley et al (1995) applied simulated annealing to the problem of rail freight routing and scheduling, Marin and Salmeron (1996) evaluated a descent method, simulated annealing, and tabu search for solving large size rail freight networks, Gorman (1998) used a tabu-enhanced genetic algorithm for solving the freight railroad operating plan problem, and Arshad et al (2000) combined constraint programming with a genetic algorithm to handle the intermodal transport chain scheduling problem. However, these approaches are complex and domain specific; thus it would be very difficult to make use of them for our problem. Some domain-independent algorithms may be appropriate for our problem. Connolly (1992) introduced general purpose simulated annealing (GPSIMAN). From a feasible assignment, a 0-1 variable is randomly selected and flipped, and then an attempt is made to restore feasibility of the flipped assignment. Then, the procedure follows the same spirit of basic simulated annealing. Abramson and Randall (1999) extended GPSIMAN to solve integer programs (INTSA). They combined different structures of local move within their solver. When the solver is called, it automatically selects an appropriate local move based on the given problem description. For example, it chooses value flips for graph colouring, but chooses a 2-opt move for travelling salesman problems. Nonobe and Ibaraki (1998) proposed a tabu search approach as a general solver for constraint satisfaction problems. They used different local moves and introduced a linear relaxation to tighten a bound on the optimisation criteria. In contrast, our approach is inspired by SAT local search. SAT is a problem of deciding whether a given Boolean formula is satisfiable. When the problem is not solvable in polynomial-time, SAT local search will be employed. An attractive framework of SAT local search is that the structure of the local move is simple. GSAT (Selman et al (1992)) and WalkSAT (Selman et al (1994)) are well-known local search techniques for SAT problems. SATz-Rand, introduced by Gomes et al (1998) is a recent solver for SAT problems. Winston (1994) and Walser (1999) extended WalkSAT to WSAT(OIP), for solving integer programming problems. However, encoding of our problem into a Boolean formula or 0-1 integer constraints is large and solution structure may be difficult to maintain by simple local move and a pure randomised strategy as performed by the SAT local search.

2

2.

CONSTRAINT-BASED MODELLING OF THE RAIL CONTAINER SERVICE PLANNING PROBLEM

We formulate the rail container service planning problem as a linear constraint satisfaction problem and introduce a constraint-based local search algorithm for solving this class of constraint satisfaction problems. We model the problem that the day is divided in to x-hourly slots for booking and scheduling. The following notations will be used: Subscripts: t : schedulable time-slot (departure time), t = 1, 2, 3, …, T j : customer, j = 1, 2, 3,…, M Set: S j : set of possible departure times for customer j Ct : set of potential customers for departure time t Bt : set of potential customers for departure time t R : set of service restrictions for departure times Decision variables: xt : 1, if a train departs in slot t, 0 otherwise ytj : 1, if customer j is served by the train departing in time slot t, 0 otherwise Parameters: wtj : customer j satisfaction in departure time t d t : operator preference in departure time t P1 : minimum train loading (number of containers) P2 : maximum size of a train (number of containers) Nj : demand of customer j (number of containers) In our model, optimisation criteria and operational requirements are represented as soft and hard constraints respectively. The soft constraints are minimum number of trains, maximum customer satisfaction, and maximum departure time preference of the rail operator. The hard constraints are minimum train loading, train capacity, service restrictions, and some customer requirements. A feasible solution is an assignment to all variables in the model that satisfies all constraints in the hard category, whereas an optimal solution is a feasible solution with the minimum total degree of soft constraint violation. For a linear constraint satisfaction problem, the degree of violation v is defined as follows:

Ax ≥ b ⇒ v = max (0, b − Ax)

(1)

where A = (a ij ) is an m × n coefficient matrix, b is an m-vector and xT = (x1 , …., xn ) is the variable vector. The soft and hard constraints are given as follows: 1. The number of trains constraint (O1) – this constraint aims to minimise the number of trains on a weekly basis: T

∑x

t

≤θ;

(2)

t =1

3



∑N

θ is a lower bound on the number of trains, e.g., 



j

j

 / P2  

2. Customer satisfaction constraint (O2 ) – this constraint aims to maximise the total degree of customer satisfaction. In this paper, we assume that each customer holds the highest satisfaction value (3) at the preferred departure time. Satisfaction is decreased with linearly to the lowest value (1) at the last alternative departure time. The total degree of customer satisfaction is averaged and normalised on a percentage scale. Note that the satisfaction value can be defined on an arbitrary scale:

 T     ∑  ∑ wt , j y t, j  ≥ α  / ∑ N j ×  1  ;   t =1  j∈C  j  α ×100     t  α is the highest satisfaction value ×

∑N

(3)

j

j

3. Departure time preference constraint (O3 ) – the preference is stated by a railway operator to run trains at particular departure time slots. In practice a railway operator may prefer minimum change from the previous week of operation or prefer the same departure time slots over several weeks. In this paper, we assign three preference values (3, 2, 1) to the departure time slots, representing highest, moderate, and lowest preference respectively. The total degree of departure time preference is then normalised on a percentage scale. Note that, the preference value can be defined on an arbitrary scale:

 T  100  ∑ dt xt ≥ λ  × ;  t =1  λ

(4)

λ is an upper bound on the total preference value 4. Capacity constraint – the maximum capacity constraint ensures the demand must not exceed the capacity of a train, whereas the minimum capacity constraint ensures satisfactory revenue for the railway operator and spreads out the size of shipment on train services. Note that a railway operator may have to set the minimum train loading as high as possible, ideally equal to the maximum capacity of a train:

M  x t P1 ≤ x t  ∑ ytj N j  ≤ P2 ; ∀t  j =1 

(5)

5. Coverage constraint – this constraint ensures that customer can only be served by one train:

∑y

t, j

= 1; ∀j

(6)

t ∈S j

6. Consistency constraint – this constraint ensures that if departure time t is selected for customer j, a train does depart at that time. On the other hand, if departure time t is not selected for customer j, a train may or may not run at that time:

x t ≥ y t, j ; ∀ j ∈ Bt

(7)

4

7. Service restriction constraint - this constraint is a set of banned departure times. The restrictions may be pre-specified so that a railway planner schedules trains to achieve a desirable headway or to avoid congestion at the container terminal. In addition, any events known in advance that make any departure time slots unavailable, such as industrial action, can be defined so as to make the model more flexible:

x t = 0; ∀t ∈ R

3.

(8)

SOLUTION ALGORITHM

In this section, we propose a solution algorithm for solving the linear constraint satisfaction problem, and demonstrate how this algorithm may be considered as a domain-independent solver. The algorithm consists of two parts: constraint-based local search based on a randomised strategy and a predictive model which guides the search. We then propose an integrated framework for the two strategies.

3.1

Constraint-Based Local Search Algorithm

To solve a linear constraint satisfaction problem by local search, we propose a constraint-based local search algorithm derived from the SAT local search for solving the rail container service planning problem. Constraint-based local search is fundamentally based on a randomised strategy with respect to natural bounds, which are the coverage and consistency constraints described in the previous section. The search method comprises two nested loops of iterations. The outer loop starts with an initial random assignment to all variables Vj , which is not necessarily a feasible solution. Its purpose is to allow diversity in the search so that the search space may be fully explored. In the inner loop, the algorithm randomly selects an unsatisfied hard constraint and then selects two variables in that constraint to flip. Suppose that Vj takes the value vj at the start of the iteration so A = (v1 , v2 , …, vm | h), where m is the total number of variables and h is the total violation of hard constraints and one of their values is flipped to v1 and v 2 respectively. We look at the assignments of A1 = (v1 , v 2 , ..., v m | h1 ) , A2 = (v1 , v 2 , ..., vm | h2 ) and select the alternative with the smaller total hard violation. Whenever all hard constraints are satisfied, the algorithm stores the penalty of the soft violations as feasible objective values together with the associated variable values, and then restarts with a random assignment. The search restarts again when the inner iteration limit, Max_Flips, is reached and continues until the outer iteration limit, Max_Iterations, is reached. The procedure of constraint-based local search is given in Figure 2. proc Constraint-based local search input soft and hard constraints, Max_Flips, Max_Iterations output an approximately optimal feasible solution, if found for i := 1 to Max_Iterations do A := initial random assignment, possibly infeasible for j := 1 to Max_Flips do if h = 0 then return A, and soft constraint violations penalty cost C:= select-unsatisfied-hard-constraint (A) flip (C, A1 , A2 ) if (h 1 < h 2 ) then (A ← A1 ) else (A ← A2 ) end end return “no satisfaction of all hard constraints found” end Figure 2. Constraint-based local search procedur e

5

3.2

Predictive Model

In this section, we describe the construction and use of a predictive constraint violation model that steers the local search by inferring, from its recent history, the likely value of a chosen variable of interest. Our effort is motivated by the observed high variance in the constraint violation measure as the search for solutions to a hard class of constraint satisfaction problems progresses. We demonstrate how we can employ the predictive model to guide and intensify the search within more promising regions of the search space. The predictive model is highlighted in Figure 3. Predictive constraint violation model Constraint-based solver (Random strategy)

Constriant violation data

Predictive model (Guided strategy)

Fix variable := value (n iterations)

Figure 3. Constraint-based local search algorithm with predictive control

Constraint violation history data. The history of constraint violation is recorded whilst the constraint-based local search algorithm performs random flip assignments. As illustrated in Table 1, each time a binary variable is flipped in its value, the degree of constraint violations associated with its two possible values are recorded. A predictive procedure is called whenever a variable in the model has been flipped a given number of times. An outcome of the predictive model is a probability of selecting a particular value for the binary variable. The variable is fixed at its predicted value for a number of iterations determined by the magnitude of the probability. When the iteration limit is reached, the variable is freed and its constraint violation history is deleted. During these iterations, other variables may become fixed. This sequence of fixing values for the variables helps intensify the search within a promising region. Table 1. Constraint violation history of a binary variable x Flipped Degree of Constraint Violation Occasion x=0 x=1 1 3 7 2 9 2 3 12 14 . N 11 6 x* : value of x that minimises constraint violation

x* 0 1 0 1

Predictive model for binary outcome . The predictive model has two main components; logit method and proportional method. The standard method for modelling the binary logit model is based on discrete choice analysis derived from random utility theory, Ben-Akiva and Lerman (1985). An individual flipped occasion n of constraint violation is derived by performing the constraint-based local search algorithm. Each flipped occasion n is set a choice value for x = 0 or x = 1, whichever has the lower constraint violation. The violated utility function is composed of two components; systematic violated utility which is measurable and assumed to be a linear function, and random utility which is assumed to be logistically distributed (logit model). The output of the model is a probability of choosing a particular value for a binary variable x. A probability Pn can then be aggregated to produce a prediction for the N flipped occasions PN. A formulation of the binary logit model is defined as follows. Violated utility is represented by the violated utility function (U). Note that in the following section, i and j denote a choice value for x = 0 and x = 1 respectively.

U i = Vi + ε i

(9)

where: Ui is a violated utility of choosing alternative i, Vi is a systematic utility, ε i is a random utility

6

A flipped occasion is set to choose alternative i, when alternative i is preferred to alternative j.

i f j ⇒ Ui > Uj

(10)

From (9) and (10)

U i > U j → (Vi + ε i ) > (V j + ε j )

(11)

Notice that a random utility (ε i and ε j ) in (11) may cause uncertainty in selection, i.e., Ui might be greater than Uj or Uj might be greater than Ui , even if the true utility satisfies Vi > Vj . Probabilistic theory is applied to find a probability of choosing alternative i for a flipped occasion n, Pn (i) as follows:

Pn (i ) = Probability U in > U jn 

(12)

where: Uin and Ujn are the estimated utilities for a flipped occasion n From Uin = Vin + εin and Ujn = Vjn + εjn thus:

(

) (

)

Pn (i) = Probability  Vin − V jn > ε jn − ε in 

(13)

The Pn (i ) depends on the distribution of the random utility ε jn - εin. We assume that ε’ = εjn - εin is logistically distributed; thus we can start from the standard logistical function

e µε ′ 1 F (ε ′) = = µε ′ 1+ e 1 + e − µε ′

(14)

The probability density function is the first derivative of the above

µe − µ ε ′ f (ε ′) = 1 + e −µ ε ′

(

)

(15)

We find, Vin −V jn

∫ f (ε ′)dε ′ = F (V

in

− V jn ) − F (− ∞ ) =

−∞

1 1+ e

(

− µ Vin −V jn

) , F (− ∞ ) = 0

where µ is a positive scale parameter of the logistical distribution, normally we assume µ =1. Therefore, the binary logit model is obtained as follows:

Pn (i ) =

1 1+ e

−V in +V jn

=

e

Vin

(16)

e Vin + e

V jn

Violation parameters. The parameter is estimated by a probabilistic simulator using a maximum likelihood method. We consider a systematic violated utility ( Vi ) is a linear form to find parameters β 1 ,..., β k : Vi = β 1 xi,1 + β 2 xi, 2 + ... + β k xi ,k = β ⋅ xi If all the flipped occasions are independent, we can construct the likelihood function of N occasions choosing alternative i as follows:

7

L( β ) = ∏∏ Pn (i ) yin = P1 (i ) yin × P2 (i ) yin × ... × Pn ( i ) yin n =1 i ∈Jn

Pn (i ) =

eVi = Vj e ∑ j∈ Jn

e β xin ∑ e β x jn

j ∈Jn

 βx  e in ⇒ L ( β ) = ∏∏  β x jn n =1 i∈Jn ∑ e  j∈Jn 

    

yin

(17)

where: L is a likelihood function, β = model parameters, N is the number of flipped occasions, Pn (i ) is a probability of choosing alternative i for a flipped occasion n, Jn is a group of choices available (0 and 1), xin is a group of variables chosen by a flipped occasion n, xin is a group of variables not chosen by a flipped occasion n, yin is 1 if a flipped occasion n is set to choose alternative i, otherwise = 0 To simplify the calculation of parameters, natural logarithms are applied to (18), L* = ln (L ) N

[

L* ( β ) = ∑ ∑ y in β x in − ln ∑ e n =1 j∈ Jn

β x jn

]

(18)

Then, we find the derivative of L(β) by βk , equal to zero in order to obtain the values for β which maximise L* (β) βx N  e jn x jnk  ∂( β ) ∑ = ∑ ∑ y x −  =0 β x jn ∂( β k ) n=1 i∈Jn in  in e  ∑

(19)

There are k equations and k parameters; β1 , β2 , β3 ,…, βk. The procedure performs the non-linear unconstrained optimisation using the Newton-Raphson method in order to obtain the values for β (Dennis and Robert (1996)). To make a choice experiment of this relationship, we proceed to a logit model with the constraint violation as the explanatory variable and the selected value of the binary variable as the dependent variable. An example of using the logit model for a particular value of a binary variable x is given in Table 2. In order to demonstrate the performance of the logit model, we scale down our problem to 43 binary variables. Three feasible solutions and their assigned values are known by running IP branch and bound search to completion, ILOG (2002). We run the constraint-based local search for a constraint violation history data for 1,500-observational iterations. The preset number of flipped occasions for its predictive model is 10. The experimental result is given in Table 3. Table 2. Probability of choosing a particular value for a binary variable x Flipped Violation x* Violated Utility Probability of Occasion x=0 x=1 x=0 x=1 x=0 x=1 1 41 34 1 -2.0418 -1.6932 0.41 0.59 2 9 18 0 -0.4482 -0.8964 0.61 0.39 3 8 7 1 -0.3984 -0.3486 0.49 0.51 4 7 16 0 -0.3486 -0.7968 0.61 0.39 5 7 16 0 -0.3486 -0.7968 0.61 0.39 6 18 11 1 -0.8964 -0.5478 0.41 0.59 7 7 15 0 -0.3486 -0.7470 0.60 0.40 8 16 24 0 -0.7968 -1.1952 0.60 0.40 9 24 19 1 -1.1952 -0.9462 0.44 0.56 10 8 7 1 -0.3984 -0.3486 0.49 0.51 Aggregate 145 167 -7.2210 -8.3166 0.75 0.25 x* : value of x that minimises constraint violation , estimated likelihood parameter (β ) = -0.0498

8

Table 3 shows that our aggregated predicted value for each binary variable is relatively close to its value in a known feasible solution. This implies that if we fix the variables at their predicted values for a number of iterations, the size of the search space would be decreased exponentially. Note that the success of the predictive model relies on two main factors. Firstly, the nature of the combinatorial problem, which is hard and with few feasible solutions. If there are many feasible solutions, it is likely that a variable will take different values in several of them, which will make the predicted value less useful. In this study, we constrain the feasible solutions by a lower bound on the number of trains and the minimum number of containers required for a train. Secondly, the random nature of the constraintbased local search algorithm allows diversity in the search so that the space may be fully explored. The proportional method is called when the proportion of any one value in x* is greater than a preset percentage of the N flipped occasions. This procedure is basically designed to save computation. A probability of choice value 0 for the number of flipped occasions N, PN (0) is defined as: N

PN (0) =

∑x n =1

* n

−1 (20)

N

The probability of binary choice value is used to fix values for the varia bles for a preset number of iterations as the logit method does, which is shown in Table 3. Table 3. Predicted value by predictive constraint violation model Var Known Prediction Aggregated Prediction No. Feasible No. Utility (Probability) Value x=0 x=1 x=0 x=1 1 (0, 1) 1 -7.22 -8.31 0.75 0.25 2 1 1 -12.68 -11.26 0.19 0.81 3 0 1 -21.52 -28.92 1.00 0.00 0 2 -8.09 -8.69 0.65 0.35 4 0 1 -19.31 -22.45 0.96 0.04 5 1 1 -17.19 -16.45 0.32 0.68 6 0 1 -2.81 -2.50 0.42 0.58 7 0 1 -7.85 -10.69 0.94 0.06 0 2 -10.48 -11.05 0.65 0.35 8 0 1 -10.04 -11.12 0.75 0.25 0 2 -5.28 -6.94 0.84 0.16 9 (0, 1) 1 -14.10 -16.92 0.94 0.06 10 (0, 1) 1 -18.91 -21.34 0.92 0.08 . N Fixed iterations* = probability × a preset number of iterations, e.g., 10.

4.

CASE STUDY

4.1

Background and Input Data

Fixed Iteration* x=0 x=1 7 3 2 8 10 0 7 3 10 0 3 7 4 6 10 0 7 3 7 3 8 2 9 1 9 1

The eastern-line rail container service in Thailand is facing a considerable increase in container traffic between Bangkok and the eastern region, which is the gateway of the country. In 2002, statistics showed that more than 150,000 containers were transported by rail there. Over one hundred customers and several thousand containers per week are served. At present, the Royal State Railway of Thailand provides a weekly fixed schedule, in which a certain number of trains are provided in fixed departure time slots.

9

To evaluate our rail container service model, we test it on four successive weeks data from the Royal State Railway of Thailand and 184 shipping companies (customers). The problem description is summarised in Table 4. Table 4. Problem description Test Customers Containers Case W1 134 2907 W2 116 2316 W3 84 1370 W4 109 2625

4.2

Train Supplies 3876 2856 1907 3400

Fixed Trains 57 42 28 50

M in Train Loading 30-60 30-60 30-60 30-60

Train Capacity 68 68 68 68

Computational Results

In this section, we present the experimental results regarding the implemented framework of our constraint-based local search, and compare results from the model we propose with current practice. We also compare the constraint-based local search algorithm with IP branch and bound search. Note that, in this paper, the predictive model is not incorporated in our constraint-based local search algorithm for the test cases discussed in section 4.1. The computational results using the constraintbased local search for the test cases are shown in tables 5-8. Each table shows the constraint-based local search using different the minimum train loadings, the value of the multiple optimisation criteria, the number of nodes, the number of flips, and the average computational time for 10 runs of our constraint-based local search algorithm. We try different values of Max_Flips. In most of our experiments, a large value of Max_Flips works well for large problems, more than a hundred customers with a large value of minimum train loading. This is because large problems have a large degree of constraint violation. Therefore a large number of Max_Flips is necessary to allow our constraint-based local search algorithm to move into feasible regions. The OPL Studio version 3.5.1 with CPLEX solver, ILOG (2002), is used to perform IP branch-and-bound search to completion, and all our experiments are performed on a Pentium IV 1,500 MHz. To test the efficiency of the algorithm, we test using different values for the minimum train loading for the IP branch-and-bound method and our constraint-based local search method. We find that when the capacity leeway (train capacity - minimum train loading) becomes small, the two algorithms show an enormous increase in computational time. Using the branch and bound algorithm on our model, large problems, more than a hundred customers with a small value of minimum train loading of up to 50 containers could be solved. This may be useful since it can be used for comparison. The branch and bound algorithm fails to complete the search within 24 hours when the minimum train loading is 60 containers or more. This may be not acceptable in practice because there is a preference for small capacity leeway for operational cost reasons. In most cases, our constraint-based local search algorithm performs similarly to the branch and bound algorithm; however, it is more effective in the sense that the approximate optimal solution can be found with a large value of minimum train loading within viable time. Table 5. Solutions for test case W1 Min IP branch-and-bound search Constraint-based local search train Criterion Nodes CPU Criterion Flips load O1 O2 O3 (×106) (hrs) O1 O2 O3 (×106) 30 64 97 81 0.00 0.01 72 98 85 0.10 35 61 97 79 0.00 0.01 75 100 87 0.08 40 58 97 79 0.16 0.27 66 98 81 0.32 45 55 96 75 0.49 0.82 54 96 74 0.52 50 51 96 74 0.78 1.30 57 96 75 0.65 55 49 93 73 2.06 3.43 46 95 72 0.76 60 >24 45 93 72 1.14 65 >24 O1, O2, and O3 are objectives referred to in section 2

10

CPU (hrs) 0.33 0.27 1.09 1.42 1.86 2.44 6.96 >24

The model results can be compared against current practice under multiple criteria. In this study, we have not used any weighting scheme for the criteria of the model because they are difficult to measure in a consistent way. For example, deciding on whether to select a lower number of trains or a higher total degree of customer satisfaction is not that simple since the first one gives a direct reduction in operating costs, and the second gives indirect benefit by improving the level of customer service. Table 6. Solutions for test case W2 Min IP branch-and-bound search train Criterion Nodes CPU load O1 O2 O3 (×106) (hrs) O1 30 65 94 81 0.01 0.02 72 35 59 94 78 0.01 0.05 51 40 52 89 74 0.12 0.39 55 45 44 82 72 0.43 0.72 51 50 42 82 72 1.27 2.12 39 55 41 82 65 2.40 3.93 40 60 37 78 63 7.80 13.2 36 65 >24 O1, O2, and O3 are objectives referred to in section 2

Constraint-based local search Criterion Flips CPU O2 O3 (×106) (hrs) 99 85 0.07 0.41 92 74 0.08 0.55 93 75 0.35 1.28 91 72 0.38 1.44 81 64 0.86 3.51 79 64 1.06 6.64 78 65 1.22 8.15 >24

To select the best train schedules, a railway operator may balance the tradeoff amongst those criteria by experience or may rank them in terms of their relative importance. For example, if the number of trains is deemed to be important, the schedule with the lower number of trains is considered, otherwise the schedule with the higher total customer satisfaction is chosen instead. In most cases, the model results show some reduction on the number of trains used as well as reflecting a good degree of customer satisfaction and departure time preference through our flexible demand responsive schedules. Table 7. Solutions for test W3 Min IP branch-and-bound search train Criterion Nodes CPU load O1 O2 O3 (×106) (hrs) O1 30 36 97 62 0.00 0.05 42 35 33 96 56 0.01 0.07 35 40 30 96 52 0.12 0.20 29 45 25 96 42 0.28 0.46 27 50 25 96 25 1.03 1.72 24 55 23 93 38 2.57 4.28 25 60 >24 22 65 >24 O1, O2, and O3 are objectives referred to in section 2

Constraint-based local search Criterion Flips CPU O2 O3 (×106) (hrs) 98 67 0.04 0.67 97 51 0.02 0.52 96 52 0.25 1.22 96 42 0.79 2.75 96 44 0.88 4.02 96 25 0.80 2.16 85 31 2.16 10.18 >24

Table 8. Solution for test case W4 Min IP branch-and-bound search train Criterion Nodes CPU load O1 O2 O3 (×106) (hrs) O1 30 64 94 81 0.01 0.11 72 35 62 90 79 0.12 0.19 60 40 57 90 79 0.23 0.28 53 45 52 87 74 0.41 0.52 54 50 52 87 74 0.89 1.41 53 55 47 82 73 3.68 4.77 42 60 >24 65 >24 O1, O2, and O3 are objectives referred to in section 2

Constraint-based local search Criterion Flips CPU O2 O3 (×106) (hrs) 95 84 0.03 0.45 89 78 0.07 0.85 89 74 0.55 1.62 90 74 0.69 2.22 90 72 0.83 3.06 74 68 1.15 4.24 >24 >24

11

5.

CONCLUSIONS

In this paper, we formulate the problem of rail container service planning as a linear constraint satisfaction problem and solve this problem by a constraint-based local search algorithm. The ability to find an optimal train schedule along with satisfying customer demand using demand consolidation leads to some reductions in rail operational cost, and also enhances the level of customer service through responsive flexible schedules. The constraint based-local search algorithm is suitable for solving problems with over a hundred customers and with a large value of minimum train loading. It might also be an alternative to other local search methods because it simply starts with random initial assignments and uses a simple variable flip as a structure of move operator. Therefore it requires less significant effort in designing the structure of local move and algorithm to fit new business conditions. In addition, preliminary results of our predictive model on a scaled down problem show that it is a promising method for choosing the particular value for a binary variable in the model, which is used to guide and intensify the search within more fruitful regions of the search space.

BIBLIOGRAPHY Abramsom, D. and M. Randall (1999). A Simulated Annealing Code for General Integer Linear Programs. Annuals of Operation Research. 86 3-24. Arshad, F., A. EL-Rhalibi, and G. Kelleher (2000). Information Management within Intermodal Transport Chain Scheduling. European Project PISCES Report, Liverpool John Moores University, UK. Ben-Akiva, M. and S. R. Lerman (1985). Discrete Choice Analysis: Theory and Application to Predict Travel Demand, MIT Press Connolly, D. (1992). General Purpose Simulated Annealing. Journal of the Operational Research Society. 43 495-505. Cordeau, J., P. Toth, and D. Vigo (1998). A Survey of Optimisation Models for Train Routing and Scheduling. Transportation Science. 32 380-404. Dennis, J. E. and B. S. Robert (1996). Numerical Methods for Unconstrained Optimization and Nonlinear Equations, Society for Industrial & Applied Mathematics. Gomes, C. P., B. Selman, and H. Kautz (1998). Boosting Combinatorial Search Through Randomisation. In Proceeding of AAAI-98. AAAI Press. Gorman, M. F. (1998). An Application of Genetic and Tabu Searches to the Freight Railroad Operating Plan Problem. Annals of Operations Research. 78 51-69. Huntley, C. L., D. E. Brown, D. E. Sappington,and B. P. Markowicz (1995). Freight Routing and Scheduling at CSX Transportation, Interface. 25(3) 58-71. ILOG (2002). ILOG OPL Studio Version 3.5.1 Reference Manual. ILOG Inc. Indra-Payoong, N. R.S.K. Kwan, and L.G. Proll (2002). Strategic Scheduling of Containerised Rail Freight Using Constraint Programming, ORS Local Search Workshop, 16-17 April, London. Kraft, E. R. (2002). Scheduling Railway Freight Delivery Appointments Using a Bid Price Approach. Transportation Research. 36A 145-165. Marin, A. and J. Sameron (1996). Tactical Design of Rail Freight Networks. Part II: Local Search Methods With Statistical Analysis. European Journal of Operational Research. 94 43-53. Newman, A. M. and C. A. Yano (2000). Scheduling Direct and Indirect Trains and Containers in an Intermodal Setting. Transportation Science. 34 256-270. Nonobe, K. and T. Ibaraki (1998). A Tabu Search Approach to Constraint Satisfaction Problem as a General Problem Solver. European Journal of Operational Research.106 2-3. Selman, B., H. Levesque, and D. Mitchell (1992). A New Method for Solving Hard Satisfiability Problems. In Proceeding AAAI-92, 440-446. Selman, B., H. Kautz, and B. Cohen (1994). Noise Strategies for Improving Local Search. In Proceeding AAAI-94, 337-343. Walser, J. P. (1999). Integer Optimisation by Local Search, A Domain-Independent Approach. Lecture Notes in Artificial Intelligence 1636. Springer-Verlag. Winston, W. L. (1994). Operations Research – Applications and Algorithms. Duxbury Press. Yano, C. A. and A. M. Newman (2001). Scheduling Trains and Containers with Due Dates and Dynamic Arrivals. Transportation Science. 35 181-191.

12