FINDING EQUILIBRIUM IN A MONOPOLY PASSENGER RAILWAY MARKET: A COMPARISON OF AGENT-BASED SIMULATIONS WITH THEORETICAL PREDICTIONS Ondřej Krčál ESF MU, Department of Economics krcalo@mail.muni.cz Key words: Railway – Salop – monopoly – price – timetable Abstract: This paper presents an agent-based model of passenger rail services. It provides an algorithm that is able to find the optimal price and timetable for a service provided by a monopoly train operating company. For testing the efficiency of the algorithm, it presents a simplified setting in which the equilibrium price and timetable can be found analytically using the Salop model of competition. The paper finds that the algorithm approximates well the predicted price and timetable and that an increase in the equilibrium number of trains in the market reduces the efficiency of the algorithm. Introduction An overwhelming majority of long-distance passenger rail services in Europe are provided by state-owned monopolies. In a handful of cases, mainly in Sweden, Great Britain, and Germany, long-distance connections are served by private monopoly franchisees. The instances in which two or more train companies operate on the same track are rare. In most of these markets, including several markets in Germany and Great Britain and a few tracks in other European countries, the entry occurred thanks to the open-access regulation. The rest are British connections with competition between two franchisees operating mainly on the routes between London and regional centers. One of the reasons why authorities do not support the introduction of competition on long-distance connections might be the insufficient understanding of the impact of such policies on consumer welfare. The effect of competition on consumer is also difficult to study empirically as the number of instances of competition is limited and it is difficult to collect relevant data. Hence a potentially useful way to study competition for and in railway markets is a model simulation. Transportation economics focused mainly on development of route based models in which the effect of specific pricing strategies or timetables is studied. The most prominent examples of these models are the PRAISE model developed at the Institute for Transport Studies of the University of Leeds ([1], [4], [8]) and the model presented by Steer Davies Gleave [7] in the report prepared for the European Commission. These models do not find the equilibrium outcomes of competition. Instead, they study the effect of specific changes in prices and timetable on profits of train companies and consumer welfare using calibrated demand and supply. For finding the equilibrium price and timetable in a railway market, this paper uses an agent-based technology (see [2] and [3] for different agent-based models of markets). The algorithm presented here is the first step towards an equilibrium model of rail passenger market. It presents an algorithm that can be used for finding the equilibrium price and departure times of trains. The algorithm is tested in a simplified setting with uniformly distributed passengers in which the equilibrium price and timetable can be found analytically using the Salop model of circular city ([5]). The paper is organized in the following way. Section 1 introduces the model of a passenger rail market. Section 2 presents the results of simulations and compares them to the analytical solution of the model. Finally, the last section concludes. 1. Description of the model This section presents a model of a passenger rail service implemented in the modeling environment Netlogo 5.0.4. Each simulation of the model approximates the equilibrium price and timetable in the market. In each simulation, the model is first initialized and then moves through a number of periods. This section will describe the model in the order in which the simulation evolves. The initialized model contains the landscape (world), passengers and an initial set of train connections of a monopoly train operator. The world is a line with a length equal to 240 patches (a patch in Netlogo is a square field which side can be used as a measure of distance). The line represents 24 hours at a railway station in a departure city. Furthermore, the world wraps at both ends, so that the line can be viewed more accurately as a circle with the circumference of 240 patches and interpreted as 24 hours at a station in a sequence of identical days (e.g. a working day in the middle of the weak). The world is populated by g identical passengers who are uniformly distributed along the line. Passengers have reservation price p[r] which is the maximum price they are willing to pay for a train ticket to the destination city. Finally, the model creates n[I] initial train connections where n[I] equals to the equilibrium number of firms n[E] minus a constant λ. Each train is assigned an initial price p[0] and a random location in the landscape l[0] ∈ [0,240). The initialization is followed by a certain number of periods which can be divided in three phases: The first price-adjusting phase takes up the first T[P] periods. In this phase, the model adjusts the ticket price given the initial number of trains and timetable. The price-adjusting phase is supposed to eliminate the potential effect of the arbitrarily set initial price on simulation results. In the second phase, the model adjusts both the ticket price and timetable for a given number of train connections. The second phase lasts for T[S] periods. The third phase, called the entry phase, consists of entry cycles. Each entry cycle has a length of E periods. The total number of entry cycles is determined in the course of the simulation. The actions of the agents in a given period may be divided in two steps: 1) entry and reset and 2) adjusting price and timetables. First, I explain how the price and departure times are adjusted. In the price-setting phase, all trains may keep the current price or increase or reduce the price by a constant ε[t] which is drawn out of a uniform distribution between 0 and ε[max] in every period. Hence in each period t ≤ T[P], the monopoly train operator chooses the price p[t] + ε[t], p[t] – ε[t] or p[t] in order to maximize its profit Π[t] which is equal to the sum of profits of all its trains π[it] = p[t]q[it]/g – F, where q[it] is the number of passengers on the train, g is the total number of passengers, and F is the fixed cost of the train. I divide the train’s revenue by g in order to normalize total number of passengers to one, so that the structure of the agent-based model corresponds to the Salop model with passengers uniformly distributed on a unit circle. The choice of train i by passenger j depends on the reservation price p[r], ticket price in period t p[t], waiting time in hours h[ijt], and per-hour weighting cost w > 0. Passenger j chooses the train with the lowest p[t] + wh[ijt]^2 if p[r] > p[t] + wh[ijt]^2, and no train otherwise. In each period of the second and third phase, the train operating companies adjust the price and timetable at the same time. The individual trains consider leaving the departure time unchanged or changing it by a time step s[t] in both directions. In each period t > T[P], the time step s[t] is drawn from a uniform distribution between 0 and 240/(n[E]τ), where n[E] is the equilibrium number of trains and τ is a constant determining the maximum size of the time step. In the adjustment process in each period t > T[P], the train operator creates a random order of all its trains. In this order, each train chooses the price and departure time out of the nine possible combinations of prices p[t], p[t] + ε[t], p[t] – ε[t] and departure times l[t], l[t] + s[t], l[t] – s[t] which maximizes its profit. It means that the price may change n[t] times in period t, where n[t] is the total number of train connections. If the profits in two or more alternatives are equal, the trains choose the departure time and price according to the following preference ordering: l[t] + s[t], p[t] + ε[t]; l[t] + s[t], p[t] – ε[t]; l[t] + s[t], p[t]; l[t] – s[t], p[t] + ε[t]; l[t] – s[t], p[t] – ε[t]; l[t] – s[t], p[t]; l[t], p[t] + ε[t]; l[t], p[t] – ε[t]; l[t], p[t]. E.g. if the profits for l[t] + s[t], p[t] – ε[t] and l[t] + s[t], p[t] are equal and the profit for l[t] + s[t], p[t] + ε[t] is lower and the profits for the remaining elements of the preference ordering are lower or equal, the train company increases the departure time and reduces the price (l[t] + s[t], p[t] – ε[t]). Entry and reset occur only in the entry phase. A new train connection is created in the first periods of each entry cycle, i.e. in periods t = {T[P] + T[s] + 1, T[P] + T[s] + E + 1, T[P] + T[s] + 2E + 1,…}. The new train is assigned a random location l[t] ∈ [0,240) and the price charged in the previous period p[t][–][1]. In the last period of each entry cycle, the profit of the operator is compared with the profit E periods back (in the last period before the latest entry). If the current profit is lower (Π[t] < Π[t][–E]), the number of trains, their location, and the price from period t – E is reset. The simulation ends when the entry fails to increase the profit (i.e. when Π[t] < Π[t][–E]) in c entry cycles in a row. 2. Results In this section, I compare the results of the simulations with the solution of the model. This allows us to evaluate the overall efficiency of the model algorithm and the impact of different settings of the algorithm on its efficiency. The structure of the model resembles the Salop model with passengers uniformly distributed on a circle with a unit circumference served by a monopoly train operator with n trains (see [6] for a detailed description and the solution of the theoretical model). The profit-maximizing monopoly distributes the trains on the circle so that the distances between all the trains are identical and all passengers are served by the operator. The equilibrium number of trains is (1) where w is the waiting cost and F the fixed cost. The equilibrium price in the market is given by p[E] = p[R] – w/(2n[E])^2, where p[R] is the reservation price. The profit of the operator is the difference between its total revenue, which is equal to price as the equilibrium quantity q[E] = 1, and fixed costs of all plants π[E] = p[E] – n[E]F. The algorithm needs some time to converge to the equilibrium price and timetable. Sufficient length of the first two phases and of the entry cycle seems to be 100 periods (T[P] = T[S] = E = 100). The remaining parameter values are set as follows: the number of passengers g = 1,000; the reservation price p[r] = 1; the initial price p[0] = 0.5; the fixed cost F = {0.01, 0.02}; the equilibrium number of trains n[E] = {5, 10, 15, 20}; the per-hour weighting cost is set so that the equation (1) holds, i.e. w = 2Fn[E]^3; the initial number of trains is n[I] = n[E] – λ, where λ = 3; the maximum price step ε[max] = {0.005, 0.01}; the maximum departure-time step is s[max] = 240/(τn[E]), where n[E] is the equilibrium number of trains and the time-step constant is τ = {6, 12}; and the number of resets in a row that ends the simulation c = 2. Furthermore, I run 4 random initializations of the model for each setting of the model using random seeds 1, 2, 3, and 4 (see the random-seed function of Netlogo 5.0.4). Hence the total number of simulations is S = 128. At the end of each simulation, I measure the number of trains N, profit Π, price P, and quantity Q. The values of the variables generated in the simulations were close to the predicted values. The mean (standard deviation) of the difference between the simulated and predicted number of trains N – n[E] equals –0.047 (0.47), of the difference in profits Π – π[E] is –1.58 10^–3 (1.2 10^–3), of the difference between prices P – p[E] is –1.69 10^–3 (7.22 10^–3), and of the difference in quantities Q – q[E] equals to –0.44 10^–3 (1.23 10^–3). TAB. 1: OLS estimation Dependent variable: Profit difference (Π – π[E]) coefficient standard error p-value constant –0.0007 0.0004 0.11 fixed cost (F) 0.011 0.015 0.46 maximum price step (ε[max]) –0.04 0.03 0.18 time-step constant (τ) 5.45e–05 2.49e–05 0.03 equilibrium no. of trains (n[E]) –9.87e–05 1.34e–05 1.98e–11 S = 128 Adj. R^2 = 0.33 ln L = 726.6 Using the difference between simulated and predicted profits Π – π[E] as a measure of the efficiency of the algorithm, I regressed Π – π[E] against all exogenous variables of the model changed in the simulations (except for the random seed). Table 1 shows that a change in the fixed cost has no statistically significant effect, a reduction in the maximum-price step ε[max] and the departure-time step s[max] (a rise in the time-step constant τ) tends to increase the efficiency of the algorithm, although only a change in τ is marginally statistically significant, and a rise in the equilibrium number of trains n[E] statistically significantly reduces the efficiency of the algorithm. Conclusion This paper presents an agent-based model of a monopoly market of passenger rail services. The model contains an algorithm that approximates the equilibrium price and timetable of the operator. The efficiency of the algorithm is tested against the equilibrium price and timetable found analytically using the Salop model of circular city. The simulations show that the algorithm is efficient and that the efficiency of the algorithm depends negatively on the equilibrium number of trains in the market. Acknowledgement: This paper was created as a part of the specific research project no. MUNI/A/0781/2013 at Masaryk University. References: [1] JOHNSON, D., NASH, C., Competition and the Provision of Rail Passenger Services: A Simulation Exercise. Journal of Rail Transport Planning & Management, 2012, vol. 2, pp. 14–22 [2] KVASNIČKA, M., Simple Agent-Based Computational Model of Market Without Intermediation. In Mathematical Methods in Economics 2009. Praha: Czech University of Life Sciences Prague, 2009. pp. 204–207, ISBN 978-80-213-1963-9. [3] KRČÁL, O., An agent-based model of price flexing by chain-store retailers. In Mathematical Methods in Economics 2012. 1. vyd. Karviná: Silesian University in Opava, 2012. pp. 461-466, ISBN 978-80-7248-779-0. [4] PRESTON, J., WHELAN, G., WARDMAN, M., An Analysis of the Potential for On-track Competition in the British Passenger Rail Industry. Journal of Transport Economics, 1999, Vol. 14, pp. 77–94 [5] SALOP, S. C., Monopolistic Competition with Outside Goods. The Bell Journal of Economics, 1979, Vol. 10, pp. 141–156 [6] STANĚK, R., 2013, Market for Transport Services: Basic Framework for Welfare Analysis. Available at http://is.muni.cz/www/75243/transport_market.pdf [7] STEER DAVIES GLEAVE, EU Passenger Rail Liberalisation: Extended Impact Assessment. Report Prepared for the European Commission, 2004. [8] WHELAN, G., JOHNSON, D., Modelling the Impact of Alternative Fare Structures on Train Overcrowding. International Journal of Transport Management, 2004, Vol. 2, pp. 51–58 Ing. Ondřej Krčál ESF MU, Department of Economics Lipová 41a 602 00, Brno Czech Republic