BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//pretalx//pretalx.com//pydata-amsterdam2026//speaker//9XPET3
BEGIN:VTIMEZONE
TZID:CET
BEGIN:STANDARD
DTSTART:20001029T040000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
TZNAME:CET
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:20000326T030000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3
TZNAME:CEST
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
END:DAYLIGHT
END:VTIMEZONE
BEGIN:VEVENT
UID:pretalx-pydata-amsterdam2026-XJJUQH@pretalx.com
DTSTART;TZID=CET:20260911T100500
DTEND;TZID=CET:20260911T105000
DESCRIPTION:Modern railway systems operate under tight capacity constraints
 \, especially during planned maintenance. In this talk\, we present a Pyth
 on-based timetable optimization system that generates feasible alternative
  schedules while staying as close as possible to the original plan.\nWe wa
 lk through how a real-world optimization problem\, based on the Periodic E
 vent Scheduling Problem (PESP) and Station Capacity Model (SCM)\, can be t
 ranslated into a scalable Python application. The talk covers modeling dec
 isions\, solver integration\, and practical trade-offs between solver-agno
 stic frameworks (Pyomo) and solver-specific implementations (Gurobipy).\nB
 eyond the optimization model itself\, we highlight lessons learned from bu
 ilding and maintaining an optimization codebase\, including object-oriente
 d design\, and handling growing model complexity.\nThis talk is aimed at d
 ata scientists\, operations researchers\, and software developers interest
 ed in applying optimization techniques in Python to real-world systems.\nA
 ttendees will leave with practical insights into modeling\, implementation
  choices\, and scaling optimization workflows in Python.
DTSTAMP:20260710T150504Z
LOCATION:Unconference
SUMMARY:Scheduling at Scale: Building a Railway Timetable Optimizer in Pyth
 on - Willem Feijen
URL:https://pretalx.com/pydata-amsterdam2026/talk/XJJUQH/
END:VEVENT
END:VCALENDAR
