Modeling High-Speed Rail for Germany
I’ve used a ridership model to construct a proposal for American high-speed rail – but what about the country I live in? There’s an election this year and one of the contested issues is climate change, and with growing passenger rail advocacy, it’s not outside the realm of possibility that there will be a large federal investment in dedicated high-speed lines (“NBS”). So I think it’s useful to model what German intercity rail will look like if there is greater investment in NBSes, culminating in a nationwide network such that ICEs will spend nearly all the time on NBSes or occasionally heavily upgraded legacy lines (“ABS”) rather than on slower lines.
If anything, I’m more optimistic about this network on the 15-year horizon than about American high-speed rail. Germany is slowly building more lines, like Stuttgart-Ulm, with Ulm-Munich, Frankfurt-Mannheim, Hanover-Bielefeld, and Frankfurt-Fulda on the horizon. People are also studying the prospects of a more expansive map as part of Deutschlandtakt additions, but unfortunately many 200 km/h ABSes are considered good enough even if they’re in easy terrain for a 300 km/h NBS, like Berlin-Halle/Leipzig.
The model
The professional way to model ridership is to split the travel zone, in this case the entire country, into very small pieces. I’m instead going to use an approximation with metropolitan areas and divisions thereof. For an illustration of my model’s level of sophistication, see below:

The gravity model to use is approximately,
The justification for the exponent 2 in the gravity model is that the elasticity of ridership with respect to trip times appears to be close to -2. The justification for the exponent 0.8 is that it empirically appears true when considering Japanese cities’ Shinkansen ridership to Tokyo; the reason for this is that metropolitan areas comprise many different subsections, and the ones farther from city center have longer effective trip time counting connection time to the train station, and larger metropolitan areas tend to have longer distance from the center to the edge.
In the linked paper, the elasticity remains -2 even at short distances. However, we’re going to assume a minimum distance below which the elasticity vanishes, to avoid predicting infinite ridership as distance goes to zero. If distance is expressed in km, the best-fit constant is 75,000, with populations and annual ridership both in millions, and then if there’s no minimum distance, the model predicts Frankfurt (with 4 million people) to Mannheim (2.8 million, 75 km away) has 92 million annual riders just between the two regions, which is utter nonsense. In Japan, ridership looks like the floor is 500 km. In Germany, I’m going to round this to 2.5 hours, and because in practice it’s a bit more than 500 km, I’m going to round the constant 0.3/2.5^2 down to 1.8. We thus get,
The network
This is the current draft of what I think Germany should build:

This isn’t too different from past maps I made. Berlin-Hanover is 60 minutes on this map and not 75 as on previous maps; a nonstop Velaro Novo can do it in 60 minutes, and the projected ridership is high enough that a half-hourly stopping train for service to Wolfsburg is viable in addition to a core express service. The branch point in the Rhine-Ruhr is moved to Dortmund, which slightly slows down service to Cologne and requires more tunnels, but improves frequency to the system massively, since Dortmund is a connection point to regional trains. Göttingen-Erfurt is dropped – all it does is connect Hanover and Hamburg with Erfurt, which is very small, and speed up travel to Nuremberg and Munich by 30 minutes, which is interesting but not enough to justify 100 km of high-speed rail.
Frankfurt still has an awkward-looking loop, whose purpose is to permit trains from Mannheim to enter the central tunnel to be constructed from the east and then run through to Cologne. However, this may not be necessary – trains from Cologne to Mannheim could just as well skip Frankfurt Hbf, serving Frankfurt at the airport or at a new station to be constructed at Frankfurt Süd, analogous to Cologne-Deutz for north-south through-trains. The expected traffic level is so high that the hit to Cologne-Frankfurt frequency is not awful, and the network complexity added by the skip isn’t higher than that added by having Frankfurt-Mannheim trains enter the tunnel from both directions depending on onward destination.
The network trip times are expressed in multiples of 15 minutes, with some places where timed connections are desirable, such as Fulda between Berlin-Frankfurt and Hamburg-Munich trains. However, overall, the traffic density predicted by the model is so high that on the stronger lines, like Cologne-Frankfurt, the timetable would not look like an integrated timed transfer system but rather the more continuous rapid transit-style model seen in Japan.
The power of polycentricity
The 0.8 exponent in the formula for ridership means that if we get to divide a single metropolitan area into subregions, then its ridership will increase. This is only justifiable if trains serve all such subregions; if the trains only serve some subregions, then we have to subtract them out. When we analyze New York or Tokyo, we can’t just add up each part of the metropolitan area separately – if we do so we must remove unserved sections like Long Island or Chiba, and the effect turns out to be similar to just lumping the metro area together.
However, in the Rhine-Ruhr, trains do serve nearly all sections of the region. The shape of the network there is such that intercity trains will continue stopping at Dortmund, Bochum, Essen, Duisburg, Wuppertal, Dusseldorf, and Cologne, at a minimum. The only recognizable centers without stops are Bonn and Mönchengladbach, and Bonn is connected to Cologne by streetcar.
Dividing cities and counties that are in the Rhine-Ruhr metropolitan region into the influence zones of the seven cities with stops based on what is the closest, we get Dortmund with 1.8 million, Bochum with 0.5, Essen 2, Duisburg 1, Wuppertal 0.9, Dusseldorf 2.3 (2 if we subtract out Mönchengladbach), and Cologne 2.9. Adding them up with exponents 0.8 is equivalent to considering a monocentric metropolitan core of 18.1 million; if we subtract out Mönchengladbach, it’s 17.6 million. This is enormous – larger than Paris and London, where only one high-speed rail stop is possible per train.
This also means we need to separately consider domestic and international traffic. Randstad is polycentric as well, and at a minimum there should be stops at Utrecht (1 million), Amsterdam (2.5), and Rotterdam (3.5), which means the region acts like a monocentric region of 9 million. The upshot is that if there were a 300 km/h train connecting Utrecht with Dusseldorf and Cologne with onward connections at both ends, and fares were st at domestic ICE rates and not Thalys rates, the connection between the two conurbations alone would generate about 17 million passengers a year. Of course, the model thinks all trip times up to 2.5 hours are equivalent, and the most distant city pair, Rotterdam-Dortmund, would be perhaps 1:45, but onward connections to German cities like Mannheim, Stuttgart, and Hanover are all 2:30 or longer with a 300 km/h Dutch line, and so there are benefits to constructing such a line over running at lower speed within the Netherlands.
To the extent the Frankfurt-Mannheim region can be thought of as a polycentric megaregion, the same is true there. Frankfurt, by which I mean Hesse-Darmstadt minus Bergstrasse, is 3.7 million people; Mainz is 0.6; the Rhine-Neckar (including Bergstrasse) is 2.4 million; Karlsruhe is 1.1 million; Stuttgart is 2.5 million. The model thinks that these regions combined generate 25 million annual trips to the Rhine-Ruhr.




