Nachdem ich mich gestern den ganzen Tag damit herumgeärgert habe, einen ziemlich kaputten GPS-Track in etwas sinnvoll darstellbares zu verwandeln gibt es heute nun noch die längliche Beschreibung dessen, was an jenem Dienstag eigentlich so im Lauterbrunnental passiert ist…
Urlaub Tag 3: James Bond und Wasserfall
28. Juli 2018, 21:04 Uhr von UweDie zweite Wanderung des Urlaubs führte durchs Lauterbrunnental zu Wasserfällen und hinterher noch hoch auf nen Berg mit atemberaubender Aussicht. So wars jedenfalls geplant, das Ergebnis war dann geringfügig anders.
Urlaub Tag 2: Seeuferspaziergang
27. Juli 2018, 14:40 Uhr von UweDie erste Wanderung des Urlaubs war zur Eingewöhnung gedacht und führte schön im Schatten am Seeufer entlang, bevor es am Aussichtspunkt eines Wasserfalls nach oben ging. Das war jedenfalls der Plan. Und der war gar nicht mal so doof.
Urlaub Tag 2: Am Wasser gebaut
26. Juli 2018, 14:43 Uhr von UweDie erste Wanderung des Urlaubs führte am Seeufer zu einem Wasserfall, danach noch ein wenig am Wasser entlang und schließlich in ein Café zu einem Eisbecher. Außerdem wurde Bahn und Schiff gefahren und Sonnenschein genossen.
Urlaub Tag 1
25. Juli 2018, 11:35 Uhr von UweMir ist keine bessere Überschrift eingefallen, und außer einer Fahrt über rund 671 km (plus einer Taxifahrt und einem WM-Finale) ist ja eigentlich auch nicht viel passiert…
Urlaub Tag 1: Anreise
24. Juli 2018, 10:36 Uhr von UweErstaunlicherweise begann der Urlaub in diesem Jahr nicht am 10.8. (wie in den letzten Jahren immer), sondern schon etwas früher. An diesem ersten Tag ging es ohne größere Umstände in die Schweiz, wo dann die erste Amtshandlung darin bestand, das Fußball-WM-Finale anzuschauen…
Urlaub ist anstrengend
23. Juli 2018, 17:04 Uhr von UweLetzte Woche war ich im Urlaub. In der Schweiz. Warum? Weils da schön ist. Der große Unterschied zum letztjährigen Urlaub war die Tatsache, dass dieses Mal auf Wunsch einer einzelnen Mutter die gesamte Familie inklusive Lieblingsbruder mitfuhr und ich den Reiseleiter geben durfte/sollte/musste. Im Gegenzug wurden alle Kosten übernommen. Guter Deal, das. Also so im Großen und Ganzen, ein paar nervige Kleinigkeiten gabs da natürlich schon.
Fazit
Fangen wir einfach mal hinten an, denn wo wir sind ist vorn, und wenn wir hinten sind ist hinten vorn (Familienmotto): Schöner Urlaub, sehr schöne Landschaft, sehr entspanntes Reisen, schönes Wetter, gutes Essen, perfekte Organisation (war ja euch meine Aufgabe *hust*). Ich muss allerdings kritisch bemängeln, dass ich eine ganze Woche in der Schweiz war und nicht eine lila Kuh gesehen habe…
„Ich habe einen Plan“ (Egon Olsen)
Die Urlaubsplanung begann so um Weihnachten herum, damit man überhaupt die notwendigen Hotelzimmer gebucht kriegt. Die Schweiz ist gut besucht, und mittendrin machen die dann auch noch so komische Veranstaltungen wie Jungfrau-Marathon und ähnliches, wo dann Langstreckenläufer und ähnlich Bemackte alle Hotelkapazitäten belegen. Daraus ergab sich eine An- und Abreise an einem Sonntag, was insgesamt besehen aber gar nicht mal so verkehrt war. Fahrkarten konnte man dann erst drei Monate vor Fahrtantritt erwerben, und damit war auch schon alles relevante geregelt. Es fehlten noch ein paar Tourenvorschläge und Wanderroutenplanspiele, aber das war dann auch nicht mehr das große Problem.
Zur Urlaubsvorbereitung gehörte dann auch das Einlatschen der Wanderschuhe, was ich mit wöchentlichen Einheiten hier im Flachlandwald abhakte, wohingegen meine Eltern wiederholt irgendwo durch den Harz liefen. Und plötzlich war der Urlaub ran, man warf sämtliche für notwendig befundenen Klamotten in irgendwelche Koffer und schulterte Verpflegungsrucksäcke, und dann standen meine Eltern letzten Samstag bei mir auf der Matte, denn losgehen sollte es anderntags vom Nürnberger Hauptbahnhof aus. Aber das ist dann Teil des nächsten Eintrages.
Dienstliches Reisen
21. Juni 2018, 21:08 Uhr von UweIch durfte diese Woche dienstlich verreisen wegen eines Workshops. Das ist ansich nix besonderes, Workshops werden viele abgehalten, Dienstreisende gibts auch wie Sand am Meer, aber für mich war es die erste Dienstreise seit zwei Jahren, und die erste ins europäische Ausland überhaupt. Es ging nämlich nach Frankreich, genauer gesagt nach Toulouse.
Ferrophile Breitensuche
17. Juni 2018, 18:37 Uhr von UweIm letzten halben Jahr war ich (mit Pausen natürlich) damit beschäftigt, eine Frage eines Bekannten zu beantworten. Der hatte mich nämlich sinngemäß folgendes gefragt: Welche Ziele kann ich erreichen, wenn ich morgens in einen Zug einsteige und maximal x Stunden unterwegs sein will? Die Onlinesuche der Bahn hilft in dem Fall nicht weiter, denn die will ja wissen von wo nach wo ich fahren will, damit sie mir fünf verschiedene Verbindungen mit 12 verschiedenen Preisen ausspucken kann. Also musste man sich da selbst was stricken.
Fahrplandaten sammeln
Schritt eins zur Lösung war das Einsammeln der Fahrplandaten. Das geht zum Beispiel, indem man die Webseiten der verschiedenen Bahnverwaltungen Europas hernimmt, sich dort die Abfahrtspläne der Bahnhöfe anzeigen lässt und diese Daten dann erfasst. Natürlich schreibt man die sich nicht von Hand ab, da baute ich mir ein kleines Programm, was das Abschreiben für mich erledigt. Einzelne Bahnverwaltungen (wie die Schweizer) bieten auch komplette Datenpakete im gtfs-Format an (General Transit Feed Specification, eigentlich gedacht für Busse und Straßenbahnen, weniger für das Eisenbahnnetz eines ganzen Landes).
Technisch gesehen steht dahinter eine einfache Breitensuche: Man pflegt eine Liste von Bahnhöfen und eine Liste von Zügen, erstere enthält anfangs einen beliebigen Startbahnhof, die andere ist leer. Dazu hält man zwei Listen, in denen man sich merkt, welche Bahnhöfe bzw. Züge man schon geprüft hat. Solange nun die Bahnhofsliste nicht leer ist, macht man folgendes: Man sucht die Daten aller Züge, die an diesem Bahnhof halten und die man noch nicht bearbeitet hatte und speichert diese in der Zugliste. Nun arbeitet man die Zugliste ab und prüft, an welchen Bahnhöfen die Züge so halten. Bahnhöfe, die man noch nicht bearbeitet hat, trägt man in die Bahnhofsliste ein. Nachdem man nun alle aktuell in der Zugliste befindlichen Züge verarbeitet hat, hat man neue Einträge in der Bahnhofsliste, und kann nun wieder beim ersten Eintrag der Bahnhofsliste fortfahren. Dieses Wechseln zwischen Bahnhofsliste und Zugliste wiederholt sich solange, bis man alle irgendwie erreichbaren Bahnhöfe abgeklappert hat.
Da das Eisenbahnnetz in Europa recht dicht ist und es viele internationale Verbindungen gibt, findet man so nicht nur die Bummelzüge nach Kleinkleckersdorf, sondern eben auch Verbindungen bis nach Peking und Wladiwostok (angebunden via Transsibirischer Eisenbahn von Moskau aus). Das ist zwar in keinem Fall mehr an einem Tag erreichbar, aber ich wollte in der Lage sein, mit beliebigen Startbahnhöfen, Umsteigeparametern und Reisezeiten zu arbeiten, ergo wurde erstmal alles eingesammelt was irgendwie erreichbar ist. Deswegen brauchte das Skript auch ein paar Monate zum Durchlaufen und hatte am Ende über 34000 Bahnstationen und etwa die zehnfache Zahl an Zügen erfasst.
Datenauswertung
Nachdem nun sämtliche Zugfahrten mehr oder minder genau erfasst waren (ich bin der Einfachheit halber davon ausgegangen, dass alle Züge täglich fahren), konnte es ans Beantworten der eigentlichen Frage gehen: Auch hier kommt wieder eine Breitensuche zum Einsatz, die vom gewählten Startbahnhof aus alle in Frage kommenden Züge benutzt, um einfach ziellos irgendwohin zu fahren. Von allen potentiellen Reisezielen wird dann wieder weitergesucht, ob man von dort via Umsteigen in andere Züge noch weiterfahren kann. Die Suche wird beendet, wenn man entweder die einstellbare Zeitgrenze oder die ebenfalls einstellbare maximale Anzahl von Umsteigevorgängen erreicht hat. D.h. man kann nun z.B. suchen, von wo aus man innerhalb von zwei Stunden mit höchstens einmal Umsteigen von einem beliebigen Bahnhof Europas aus fahren kann. Das Ergebnis wird dann als Textdatei gespeichert und enthält alle erreichbaren Zielbahnhöfe inkl. der dahin führenden Zugverbindung.
Visualisierung
Weil ein Bild mehr sagt als eine lange Liste von Ortsnamen, von denen man die wenigsten schon mal gehört hat, soll das ganze auch auf einer Karte angezeigt werden. Dazu musste ich zunächst mal die geographischen Positionen der Bahnhöfe herausfinden, was zum Glück anhand von Eintragungen in OpenStreetMap noch vergleichsweise einfach war (bis auf die Lückenhaftigkeit der Daten…). Das Programm spuckt nun eine kml-Datei aus, die man sich mittels Google Earth anzeigen lassen kann. Für den Blogeintrag ist das aber wieder doof, weil ich hier nun gerne Screenshots zeigen wollen würde, was aber wiederum rechtliche Probleme mit einer Firma nach sich zieht, die sich bessere Anwälte leisten kann als ich. Also hab ich das ganze nochmal umgebaut und gebe nun die Daten in einer Form aus, die ich mit OpenStreetMap-Tools verarbeiten kann. Und damit lassen sich nun auch schöne Screenshots zusammenpuzzeln.
Probleme
Der Ansatz ist natürlich lange nicht perfekt. Das beginnt schon bei der Tatsache, dass nicht jeder Zug täglich fährt, das Programm als auch Verbindungen errechnen kann, die es in der Realität gar nicht gibt. Außerdem gabs sicherlich Fehler in der Datenerfassung, es kann gut sein, dass diverse Züge (gerade im Ausland) einfach in meinem Datenbestand fehlen. Dann gibt es noch lustige logistische Schwierigkeiten: So ist zum Beispiel der Bahnhof Leipzig (der Startbahnhof meines Bekannten) betrieblich in zwei Bahnhöfe aufgeteilt, einen Tunnelbahnhof und den eigentlichen Hauptbahnhof. Für mein Programm sind das zwei völlig getrennte Einheiten, so dass man nun Verbindungen von Leipzig Hbf über Leipzig Messe nach Leipzig Hbf (tief) erhält, was natürlich wenig sinnvoll ist, da man statt 20 min Bahnfahrt auch 2 Min zu Fuß gehen kann. Ähnlich ist es mit dem Berliner Hauptbahnhof, der auch aus mehreren Ebenen besteht, und in der Form gibt es noch zahllose weitere Bahnhöfe.
Besonders auffällig ist es bei den großen Bahnhöfen in Paris. Weil die Franzmänner ja ein bissl chaotisch sind, gibts da sechs große Kopfbahnhöfe, und an jedem fahren nur Züge in bestimmte Regionen Frankreichs ab. Wer also am Gare de l’Est ankommt und zum Gare Montparnasse muss, darf erstmal mit der Metro durchs Pariser Stadtzentrum. Leider fehlen aber die Metroverbindungen in meinem Datensatz. Mein Programm würde also Bummelzüge aus dem Pariser Vorortverkehr nutzen, um von einem Pariser Bahnhof zum anderen zu gelangen, was deutlich länger dauert als mit der Metro. Besonders krass ist das beim Umsteigen zwischen Gare de l’Est und Gare du Nord, denn da spuckt mein Programm eine Bummelzugroute mit zweimal Umsteigen und über einer Stunde Fahrzeit aus, in der Realität kann man die Strecke in 10 Minuten laufen, da beide Bahnhöfe nur durch zwei Querstraßen getrennt sind. Die Preußen waren da vernünftiger, die haben die öchzig Berliner Kopfbahnhöfe irgendwann durch eine durchgehende Bahnstrecke ersetzt.
Beispiel (Bilder statt Worte und so)

In diesem Bild sieht man die Ziele, die man von Erlangen aus innerhalb von einer Stunde (rot) bzw. zwei Stunden (orange) umsteigefrei erreichen kann. Man erkennt folgende Verbindungen:
- S-Bahn Bamberg-Erlangen-Nürnberg-Hartmannshof
- Regionalzüge Nürnberg-Erlangen-Bamberg-Coburg und Nürnberg-Erlangen-Bamberg-Lichtenfels (und weiter nach Jena)
- Regionalzüge Nürnberg-Erlangen-Bamberg-Schweinfurt-Würzburg
- ICE-Verbindungen nach München über Ingolstadt bzw. Treuchtlingen und Augsburg
- ICE-Verbindungen nach Halle und Leipzig über Erfurt
Die Fahrzeit von 2:45h oder so nach Jena ist natürlich alles andere als witzig, vor allem wenn man bedenkt dass man mit einem Schlenker über Erfurt inzwischen mal eben eine Stunde einsparen kann. Die Strecke über die Rampen des Thüringer Waldes stammt ja aus der Zeit als Deutschland noch nen Kaiser hatte (der nicht Beckenbauer hieß). Und da zuckelt man eben heute noch mit Tempo 70 herum.
Das ist der gleiche Kartenausschnitt (mit Link zur vollen Karte), nur dass man nun (fast) alle Ziele sieht, die man mit einmaligem Umsteigen in zwei Stunden erreichen kann. Deutlich zu erkennen sind die sternförmig von Nürnberg ausgehenden Bahnstrecken Richtung Würzburg, Regensburg, Ansbach und Treuchtlingen. Zahlreiche weitere neue Verbindungen kommen in den ICE-Knoten Erfurt und Ingolstadt zustande. Weniger sichtbar ist die Tatsache, dass man nun auch einige Ziele, die man umsteigefrei erreichen kann, durch einmaliges Umsteigen schneller erreichen kann (z.B. mit dem ICE von Erlangen nach Nürnberg und von dort weiter mit der S-Bahn Richtung Hartmannshof).
Wenn man nun die Reisezeit verlängert und nicht umsteigen mag, kommt am Ende dies hier heraus: In Richtung Süden ist nach etwas über einer Stunde Schluss in München. Nach Norden geht es über Leipzig und Halle hinaus über Bitterfeld und Wittenberg nach Berlin und von dort aus landet man nach ungefähr fünf Stunden Hamburg bzw. nach etwa 5h 30min Rostock.
Und nun kann man mit den Parametern Reisezeit und Umsteigezahl herumspielen… Die allermeisten Verbindungen sind ab 3x Umsteigen optimal – zumindest innerhalb Deutschlands. Man erreicht auch so ziemlich jede Ecke Deutschlands in weniger als acht Stunden von Erlangen aus.
Im Gesamtbild sieht das bei einer maximalen Reisezeit von zehn Stunden dann so aus:
Die ersten Stationen im Ausland sind hier in Österreich, etwa Salzburg und Innsbruck, aber auch Strasbourg, später gefolgt von den Benelux-Staaten. Noch etwas später folgt die Schweiz, hier macht sich der Umweg um den Bodensee zeitlich bemerkbar. In Frankreich fallen die isoliert liegenden Punkte im Westen und Süden auf – das sind TGV-Bahnhöfe, von denen aus man wiederum mit Regionalzügen weiterfahren könnte – so entsteht die sternförmige Struktur um Dijon herum. Ebenso fällt auf, dass man Paris deutlich schneller erreicht als viele Orte im Nordosten Frankreichs, etwa Rouen. Im Osten hingegen fällt auf, dass man hier nur vergleichsweise langsam vorankommt, in Polen erreicht man Wroclaw und Poznan noch relativ schnell, aber viel weiter geht es nicht. Weiter südlich macht sich hingegen die schnelle Durchquerung Österreichs in Richtung Ungarn bemerkbar.
Von Leipzig aus in alle Welt
Mein Kumpel wollte nun aber nicht von Erlangen aus losfahren, sondern von Leipzig. Also hat mein Programm das alles auch nochmal lustig für den Startbahnhof Leipzig Hbf ausgerechnet. Und das sieht dann ungefähr so aus:
Sieht ja soweit ganz nett aus, hat aber einen großen Haken – es ist nicht die ganze Wahrheit. Wie weiter oben beschrieben gibts am Leipziger Hauptbahnhof ja noch die Tiefbahnsteige. Und die sind betrieblich ein anderer Bahnhof. Das heißt es fehlen hier die ganzen S-Bahnen des mitteldeutschen S-Bahn-Netzes, die von Leipzig aus in Richtung Halle, Dessau, Wittenberg, Hoyerswerda oder Zwickau fahren. Sobald man aber Umsteigevorgänge mit in Betracht zieht passt das wieder halbwegs, da man natürlich auch anderswo (z.B. Leipzig-Messe in die S-Bahn einsteigen kann, die dann zu den Tiefbahnsteigen fährt). Allerdings braucht man so halt rein rechnerisch 22 min, um vom Hauptbahnhof zum Marktplatz zu kommen. Da wäre man zu Fuß ungefähr doppelt so schnell… Ich gehe trotzdem mal aus, dass das meinem Kumpel egal ist – er wohnt in Leipzig, da will er kaum zum Marktplatz fahren, sondern eher Fernverkehrsreiseziele der Größenordnung Amsterdam, Prag oder Paris aufgelistet haben. Wobei… Leipzig ist ja ein klein Paris (sagte Goethe, und Goethe muss es wissen, der wusste schließlich vieles und das meiste besser).
Also weiter im Text, das eigentliche Endergebnis ist ja die Karte mit maximalen Umsteigeverbindungen und zehn Stunden Reisezeit. Und die sieht so aus:
Wenn man das nun mit der weiter oben gezeigten Karte von den Erlanger Verbindungen vergleicht, stellt man im Wesentlichen folgendes fest: Richtung Westen ändert sich nicht viel, man schafft es entlang der TGV-Strecken in Frankreich nicht ganz so weit Richtung Marseille und Bordeaux, aber Paris wird bequem im gesetzten Zeitraum erreicht. Richtung Norden kommt man ein gutes Stück weiter, nämlich bis zu den nördlichen Spitzen Dänemarks sowie nach Schweden. Richtung Süden kommt man erwartungsgemäß nicht so weit, Erlangen liegt halt schon mal 1.5h Fahrzeit weiter südlich. Venedig muss man damit von der Liste streichen, ebenso den Großteil Sloweniens und Ungarns. Im Osten hingegen kommt man von Leipzig aus wieder weiter, so erreicht man in Polen eine ganze Reihe weiterer Ziele wie Krakau, Warschau oder Danzig.
Krach vom Fach
10. Juni 2018, 16:05 Uhr von UweNachdem letzte Woche hochkulturelles Sightseeing angesagt war, gabs dieses Wochenende mehr was für die Ohren – Konzertbesuch der schwermetallischen Art war angesagt: Arch Enemy und Iron Maiden nämlich. Fürs Auge gabs natürlich auch ordentlich Show zu gucken, aber mehr dazu an geeigneter Stelle.






Kommentare