- Controls
- arrow keys, F for fullscreen, N for speaker notes
- Speakers
- Moaz, slides 1 to 5 · Ahmed, slides 6 to 10
Live demo script
Before the session, in a terminal at the project root:
.venv\Scripts\activate
python run_demo.py > $null # warm up once; figures are in outputs/Open outputs/demo_report.html in a browser tab, and keep the terminal large (font 14+).
| Time | Do | Say |
|---|---|---|
| 0:00-0:30 | python run_demo.py and scroll to === INPUT |
"A generated Tuesday: 20 orders, windows of 15-60 min, 3 vans with shifts starting 08:00/09:00/10:00, depot at Midtown Center. Travel times are the NN's predictions times 1.2." |
| 0:30-1:30 | Scroll to === INTEGRATION LOOP | "Loop 1: the CSP has 2 rules from the NN, for example the JFK order 16 conflicts with order 10. A* finds that van 0 cannot do JFK at 15:00-15:30 and then Upper East Side at 15:45, it would be 2.1 min late. That pair becomes a learned rule; loop 2: all on time." |
| 1:30-2:15 | === A* SEARCH TRACE | "Each line is an expansion: where the van is, what it has visited, clock, g, h, f. h is admissible because it uses the cheapest time over all later departures, plus a waiting bound. Here f stays at 461: the window bound is already tight." Then SEARCH COUNTERS: "Same routes, A* 68 nodes vs UCS 132." |
| 2:15-3:15 | === CSP PRUNING | "Same constraints, solvers switched on and off. (a) this day: BT 384 assignments, FC 21, FC+AC-3 20. (b) a hard rush-hour instance: 4,136 -> 1,701 -> 1,188, and 20 with most-constrained-first ordering." |
| 3:15-4:00 | === NN ON vs OFF | "We replay each plan 50 times with real trip durations from the held-out week. NN on: 0.68 late per day; NN off, distance only: 0.70; historical: 1.38. One day is anecdotal; over 10 seeds with tight windows it is 5.2% vs 8.1% late." |
| 4:00-4:30 | Browser: demo_report.html - map, timeline, constraint graph |
"Coloured routes per van; the timeline shows arrival vs window and waiting; the dashed red edge is the learned rule." |
| 4:30-5:00 | python run_demo.py --impossible |
"Now order 0 is moved to JFK with a window of 08:00-08:20. The system says NO SOLUTION, explains that the earliest arrival is 08:48 even for the earliest van, and suggests widening that window by 30 min." |
If something fails live: the full console output is saved in outputs/demo_log.txt, and the figures are already in outputs/. Show those instead.
Optional, if time allows: python -m pytest -q (38 passed in about 2 s).