The Homicidal Chauffeur

Derivations, not just simulations: teaching applied mathematics with scientific Python

Animation of the optimal chase: the pursuer's blue path curves and loops while the evader's dashed red path makes a sharp mid-chase turn at the starred point, until the capture circle finally closes on the evader at t = 12.1.

Can a fast car with a bounded turning radius always catch a slower but perfectly agile pedestrian? Rufus Isaacs posed this pursuit-evasion problem at RAND in 1951, and it became the founding example of differential game theory. This project works the problem end to end in open scientific Python: every governing equation is derived symbolically with SymPy, then lambdified into the NumPy/SciPy code that simulates and plots it — so the chain from mathematical claim to rendered figure is executable and inspectable at every link, and an automated test suite cross-checks the derivations against the numerics.

The artifacts here trace the arc of the work. The interactive notebook came first — an open-ended exploration of the idea — and became the basis for a SciPy 2026 talk submission. When the talk was accepted, the slides were built from the same notebook. And because the work aligns so directly with the SciPy Proceedings' mission of executable, reproducible, version-controlled research artifacts, it also grew into an executable paper developed to the proceedings guidelines. Start wherever suits you.

* The paper link currently points to the submitted pull request; it will migrate to the canonical SciPy Proceedings page when it goes live.