Warum manuelle Disposition an ihre Grenzen stößt
Im laufenden Betrieb treten Störungen nicht einzeln auf – sie kaskadieren. Ein Fahrzeugausfall auf Linie 7 führt zu Anschlussbrüchen am Hauptbahnhof, die wiederum Überfüllungen auf drei Folgelinien verursachen. Ein menschlicher Disponent kann diese Kettenreaktionen nicht in Echtzeit überblicken, geschweige denn optimal lösen.
Klassische Dispositionssysteme bieten bestenfalls Regelwerke: „Wenn Fahrzeug ausfällt, sende Reservebus." Doch diese Regeln berücksichtigen weder die aktuelle Fahrgastnachfrage noch die Verfügbarkeit von Personal, noch die Auswirkungen auf den Gesamtfahrplan. Das Ergebnis: suboptimale Entscheidungen, unnötige Leerfahrten und frustrierte Fahrgäste.
Unsere Echtzeit-Disposition löst dieses Problem grundlegend anders. Statt starrer Regeln nutzen wir einen trainierten RL-Agenten, der den gesamten Betriebszustand erfasst und in Millisekunden die global optimale Umplanung berechnet – unter Berücksichtigung aller Nebenbedingungen, von Arbeitszeitgesetzen bis zu Ladeständen bei E-Bussen.
class RealtimeDispatcher:
"""Echtzeit-Störungsreaktion."""
def __init__(self, config):
self.rl_agent = PPOAgent(state_dim=256)
self.milp_solver = GurobiSolver(config)
self.itcs_client = VDV454Client()
async def handle_disruption(self, event):
# 1. Betriebszustand erfassen
state = await self.itcs_client.get_state()
# 2. RL-Agent: Sofort-Empfehlung (<200ms)
action = self.rl_agent.act(state.encode())
# 3. MILP: Validierung & Feinplanung
plan = self.milp_solver.reoptimize(
current=state, hint=action
)
# 4. Dispositionsvorschlag an Leitstelle
return DispositionProposal(
reassignments=plan.vehicles,
reroutes=plan.routes,
confidence=plan.gap
)
Automatische Reaktion auf jede Betriebsstörung
Für jeden Störungstyp sind spezialisierte Umplanungsstrategien hinterlegt, die durch den RL-Agenten situativ gewichtet und kombiniert werden. Das System lernt kontinuierlich aus historischen Störungsdaten und verbessert seine Reaktionsqualität über die Zeit.
Fahrzeugausfälle
Sofortige Identifikation des nächsten verfügbaren Ersatzfahrzeugs unter Berücksichtigung von Position, Fahrzeugtyp, Ladestand (E-Bus) und verbleibender Umlaufzeit. Automatische Neuberechnung der betroffenen Umläufe in unter 30 Sekunden.
Personalausfälle
Regelkonforme Ersatzsuche unter Einhaltung von ArbZG, Ruhezeiten und Qualifikationsanforderungen. Das System prüft automatisch Bereitschaftsdienste, Springerfahrer und mögliche Diensttausche – und schlägt die kostengünstigste Alternative vor.
Streckensperrungen
Automatische Berechnung von Umleitungsrouten auf Basis des aktuellen Straßennetzes. Berücksichtigung von Fahrzeuggröße, Wendemöglichkeiten und Haltestellenerreichbarkeit. Integration von Echtzeit-Verkehrsdaten für realistische Fahrzeitprognosen.
Verspätungskaskaden
Frühzeitige Erkennung von Verspätungswellen durch prädiktive Modelle. Proaktive Anpassung von Anschlüssen, Wendezeiten und Umlauffolgen, bevor die Kaskade den Gesamtfahrplan destabilisiert. Priorisierung nach Fahrgastaufkommen.
Anschlussbrüche
Echtzeit-Bewertung von Anschlussbeziehungen: Warten oder weiterfahren? Das System berechnet die Gesamtauswirkung auf alle betroffenen Fahrgäste und entscheidet auf Basis der minimalen Gesamtwartezeit – nicht nach starren Warteregeln.
Witterungsbedingte Störungen
Integration von Wetterdaten und Straßenzustandsmeldungen. Automatische Anpassung von Fahrzeiten, Aktivierung von Winterfahrplänen und präventive Umplanung bei Unwetterwarnungen – bevor die Störung eintritt.
services:
realtime-dispatcher:
model: PPO-Agent v3.2
state_dim: 256
latency: <200ms
interface: VDV 453/454
milp-reoptimizer:
solver: Gurobi 11
warm_start: true
max_solve_time: 30s
gap_tolerance: 0.02
demand-forecaster:
model: LSTM-Transformer
horizon: 120min
accuracy: >92%
itcs-connector:
protocol: VDV 454 / SIRI-SX
polling: 5s
fallback: REST API
Drei Schichten der Echtzeit-Reaktion
Unsere Architektur trennt bewusst zwischen sofortiger Reaktion und optimaler Planung. Der RL-Agent liefert in unter 200 Millisekunden eine erste Handlungsempfehlung – gut genug, um sofort zu reagieren. Parallel berechnet der MILP-Solver die mathematisch optimale Lösung, die nach maximal 30 Sekunden vorliegt.
Die dritte Schicht ist die prädiktive Komponente: LSTM-basierte Nachfrageprognosen erkennen Störungsmuster, bevor sie eintreten. So kann das System proaktiv gegensteuern – etwa durch vorzeitige Verstärkerfahrten bei prognostiziertem Fahrgastanstieg.
Die Kommunikation mit Ihrem ITCS erfolgt über standardisierte VDV 453/454-Schnittstellen und SIRI-SX. Kein Austausch Ihres Leitsystems erforderlich – unsere Module docken als Microservices an.
Messbare Verbesserungen im Störungsmanagement
Reaktionszeit RL-Agent
MILP-Neuberechnung
Weniger Ausfallminuten
Fahrzeuge gleichzeitig
Echtzeit-Expertise aus dem Operations Research
Echtzeit-Disposition ist kein Feature, das man einem bestehenden System „dazuschaltet". Sie erfordert tiefes Verständnis von Optimierungstheorie, Reinforcement Learning und den betrieblichen Realitäten im ÖPNV. Unser Team vereint alle drei Kompetenzen.
Wir haben RL-Agenten trainiert, die in digitalen Zwillingen realer Verkehrsnetze über 10 Millionen Störungsszenarien durchgespielt haben. Wir kennen die Fallstricke: von der Reward-Shaping-Problematik über die Sim-to-Real-Gap bis zur Integration in Legacy-ITCS-Systeme. Und wir wissen, dass die beste Technologie nichts nützt, wenn der Disponent ihr nicht vertraut – deshalb bauen wir transparente Systeme mit erklärbaren Entscheidungen.
Echtzeitdisposition für Ridepooling & On-Demand-Verkehr
Ridepooling verändert den ÖPNV grundlegend: Fahrgäste buchen Fahrten in Echtzeit, Fahrzeuge bündeln Anfragen dynamisch und Routen entstehen on-the-fly. Dieses Modell funktioniert nur mit einer Dispositionslogik, die in Millisekunden entscheidet – und dabei Bündelungseffizienz, Umwegfaktoren und Wartezeiten gleichzeitig optimiert.
Unser System löst das Ridepooling-Dispositionsproblem als dynamisches Vehicle-Routing-Problem mit Zeitfenstern (DVRPTW). Der RL-Agent bewertet eingehende Fahrtanfragen in unter 100 Millisekunden und entscheidet: Welches Fahrzeug nimmt die Anfrage auf? Wo wird eingesammelt? Welche bestehenden Fahrgäste werden wie umgeroutet? Dabei garantiert das System maximale Umwegfaktoren – kein Fahrgast fährt länger als nötig.
Die MILP-Komponente übernimmt die Flottenplanung im Hintergrund: Wie viele Fahrzeuge werden in welchem Gebiet zu welcher Tageszeit benötigt? Wo sollten Fahrzeuge vorpositioniert werden, um Anfahrtszeiten zu minimieren? Diese strategische Schicht wird alle 15 Minuten neu berechnet und passt die Flottendisposition an die aktuelle Nachfragelage an.
class RidepoolingDispatcher:
"""Echtzeit-Bündelung von Fahrtanfragen."""
def __init__(self, config):
self.rl_agent = PPOAgent(state_dim=512)
self.router = OSRMRouter(config)
self.fleet = FleetManager(config)
async def handle_request(self, request):
# 1. Fahrzeugkandidaten identifizieren
candidates = self.fleet.get_nearby(
origin=request.pickup,
radius_km=3.0,
capacity_min=request.pax
)
# 2. RL-Agent: Beste Insertion (<100ms)
insertion = self.rl_agent.evaluate(
candidates, request,
max_detour_factor=1.4
)
# 3. Route neu berechnen
route = self.router.optimize(
vehicle=insertion.vehicle,
stops=insertion.updated_stops
)
# 4. Fahrgast-ETA & Bestätigung
return BookingConfirmation(
pickup_eta=route.eta_pickup,
dropoff_eta=route.eta_dropoff,
pooling_factor=route.efficiency
)
Dynamische Bündelung
Eingehende Fahrtanfragen werden in Echtzeit mit bestehenden Routen abgeglichen. Der Algorithmus berechnet für jedes Fahrzeug die optimale Insertion-Position – unter Berücksichtigung von Umwegfaktoren, Kapazitätsgrenzen und garantierten Abholzeiten. Bündelungsraten von über 60% sind realistisch.
Flottenrebalancing
Leere Fahrzeuge werden proaktiv in Gebiete mit prognostizierter Nachfrage vorpositioniert. LSTM-basierte Nachfrageprognosen analysieren historische Buchungsdaten, Wetterdaten und Veranstaltungskalender, um die optimale Fahrzeugverteilung alle 15 Minuten neu zu berechnen.
Intermodale Verknüpfung
Ridepooling als Zubringer zum Linienverkehr: Das System kennt die Fahrpläne von Bus und Bahn und plant Ridepooling-Fahrten so, dass Fahrgäste ihre Anschlüsse erreichen. Bei Verspätungen im Linienverkehr werden Ridepooling-Routen automatisch angepasst.
class DemandResponsiveDispatcher:
"""Bedarfsverkehr mit Echtzeitauslastung."""
def __init__(self, config):
self.occupancy = OccupancyTracker()
self.demand_model = LSTMForecaster()
self.scheduler = MILPScheduler(config)
async def optimize_service(self):
# 1. Echtzeitauslastung erfassen
load = self.occupancy.get_realtime(
sources=['APC', 'WiFi', 'Ticketing']
)
# 2. Nachfrage prognostizieren (2h)
forecast = self.demand_model.predict(
current=load,
horizon_min=120
)
# 3. Bedarfsfahrten disponieren
schedule = self.scheduler.plan(
demand=forecast,
fleet=self.fleet.available(),
min_occupancy=0.4
)
# 4. Dynamische Anpassung
return ServicePlan(
trips=schedule.trips,
vehicles=schedule.assignments,
expected_load=forecast.avg
)
Echtzeitdisposition im Bedarfsverkehr
Der klassische Linienverkehr mit starren Fahrplänen stößt in ländlichen Regionen und Schwachlastzeiten an wirtschaftliche Grenzen. Bedarfsverkehr – ob als Rufbus, AST (Anruf-Sammel-Taxi) oder flexibler Flächenbetrieb – bietet die Lösung. Doch ohne intelligente Echtzeitdisposition bleibt Bedarfsverkehr ineffizient: Fahrzeuge fahren halb leer, Wartezeiten sind unvorhersehbar und die Betriebskosten explodieren.
Unser System verbindet Echtzeitauslastungsdaten mit prädiktiver Nachfragemodellierung. Automatische Fahrgastzählsysteme (APC), WLAN-Sensorik und Ticketing-Daten liefern sekundengenau die aktuelle Auslastung jedes Fahrzeugs. Daraus berechnet das System, wo in den nächsten zwei Stunden Nachfrage entstehen wird – und disponiert Bedarfsfahrten proaktiv, bevor Fahrgäste überhaupt buchen.
Das Ergebnis: Bedarfsverkehr, der sich wie Linienverkehr anfühlt – mit garantierten Abholzeiten unter 15 Minuten, Bündelungsraten über 60% und einer Fahrzeugauslastung, die den Betrieb wirtschaftlich tragfähig macht. Gleichzeitig sinken die Betriebskosten pro Fahrgastkilometer um bis zu 40% gegenüber konventionellem Bedarfsverkehr ohne Echtzeitoptimierung.
Garantierte Abholzeit
Bündelungsrate
Kosten pro Fahrgast-km
Prognosegenauigkeit
Echtzeitauslastung
Sekundengenaue Erfassung der Fahrzeugauslastung über APC-Sensoren, WLAN-Tracking und Ticketing-Daten. Das System erkennt Auslastungsspitzen in Echtzeit und löst automatisch Verstärkerfahrten aus oder leitet Fahrgäste auf alternative Verbindungen um – bevor Überfüllung entsteht.
Prädiktive Disposition
LSTM-Transformer-Modelle prognostizieren die Nachfrage für die nächsten zwei Stunden auf Haltestellenebene. Faktoren wie Wochentag, Uhrzeit, Wetter, Schulferien und lokale Veranstaltungen fließen in die Prognose ein. Bedarfsfahrten werden proaktiv geplant – nicht erst auf Anfrage.
Flexible Bedienformen
Vom Rufbus über Anruf-Sammel-Taxis bis zum vollflexiblen Flächenbetrieb: Das System unterstützt alle Bedienformen und kann diese dynamisch kombinieren. In Spitzenzeiten fährt der Bus auf fester Route, in Schwachlastzeiten wechselt er automatisch in den Bedarfsmodus.