Response Schedule Optimizer: Demo Guide
Open optimizer · Planning JSON · Screening CSV · Original proposal · Problem definition · All worked examples
Case A maps complete timetables to synthetic aggregate expected attendance, then uses seeded ILS to find a feasible improvement. It generates no individual consumers, fits no model from purchases and implements no BO. The new operator workflow is Import → Objective & constraints → Optimize → Results. The exact 1.5 engine passed 39 independent Node checks and the pure importer passed 25. Actual HTTP file/configuration/rejection flows were exercised. Final-SHA source/course replay, Run/Pause/Finish, actual final exports and optimized-CSV reupload, invalid-file recovery, responsive and hub-navigation checks passed. Direct offline execution is unverified. See verification.json.
- Import planning data. Choose Load classroom sample, or upload CinemaPlanning.json. Use Download planning JSON / Download timetable CSV to obtain complete templates. The sample has six films, six sites, three screens per site and 90 reference showings. JSON includes definitions, response assumptions, rules and showing IDs/starts. Screenings.csv changes only the timetable against the loaded package, or classroom definitions when nothing is loaded.
- Select Review data & rules. Review the film/runtime/eligibility/cap table, site seats/tastes, uploaded showing table and time-response assumptions. The reviewed sample reference scores 4,969. Keep opening 10:00, closing 24:40, cleaning 15, minimum sites 2, film/site cap 5, response scale 130, iterations 2,600 and seed 20260829. Select Confirm settings. This installs and evaluates the uploaded reference; optimization has not run yet.
- Run optimization. Choose Run optimization / Run search, optionally Pause, or Finish search to complete the budget. Restart reference search restores the uploaded reference under the confirmed settings. The independently audited result is 4,969 → 5,247, +278 (about 5.6%), 1,742 response calls, 2,600 iterations, 89 retained showings, PASS. This is the new import-based result; release-1.4's 5,302 is not this run's evidence. Use View results when complete.
- Review results. Inspect reference, best, gain and retained-showing metrics. Select a site in the heatmap for its three-screen Gantt. Compare a site's three screens shows the confirmed search start and best result with site response totals. Choose Download timetable CSV for the five-column reimportable timetable, or Export full results JSON for input/fixture/settings, response factors, comparison records and best showings. Actual final-SHA downloads were audited: full JSON has 90 input/89 best rows and the per-show sum rounds to 5,247; timetable CSV has five columns/89 rows. Reuploading the optimized CSV in the final-source browser against the same definitions reviews at 5,247 with 89 reference shows.
The supported dataset shape is exactly six film IDs A–F, six site IDs A–F and three declared screens at each site. Reference timetables have 18–600 showings, use every screen and satisfy their room, coverage, cap, runtime/cleaning and operating rules. File size is at most 2 MiB. CSV columns are exactly:
showing_id,site_id,screen_id,film_id,start_time
Use declared IDs rather than display names, and HH:mm starts relative to the operating day (24:40 means next-day 00:40). A file with unresolved/duplicate IDs, a different supported shape, unsupported fields, invalid time/grid, overlap/cleaning, room fit, cap or coverage is rejected. An actual CSV with film X on row 2 was rejected with the field path, retained the accepted dataset and disabled Next. Reloading a valid sample recovered the 4,969→5,247 run. A retained old result must not be presented as the rejected file's score.
Step 2 settings affect real engine values. A changed setting invalidates confirmation; confirm again before another run. Rules must still admit the reference. Iterations are 100–20,000, step 100; seed is 0–2,147,483,647. The five-minute grid, day-before-17:00/prime-from-18:00 periods and .72/.94/.93 interaction rules remain fixed. To reproduce a result, keep the same accepted package, canonical reference, rules, response assumptions, budget and seed. Speed changes presentation time. The optimizer may insert/delete showings within the hard constraints, so 90 input shows can become 89 retained shows. A reviewed 100-iteration/seed-7 run gave 4,969→5,126 with 63 calls. Changing the response scale to 104 under those settings gave 3,975→4,101. Uploading Screenings.csv in that state uses the current scale 104 and reviews at 3,975; it does not replace the model with classroom defaults. Closing at 23:00 was rejected because actual reference rows ran later, and results navigation was disabled after the setting change.
The collapsed Explore a different programming decision in Results exchanges two films or adds a gap. It starts its draft from the uploaded reference, exposes affected-screen and per-show response/factor changes, and applies only a feasible draft. Application prepares another search in Step 3; the original uploaded record remains the comparison baseline. Auxiliary checks · operating-hours boundary and rejection provides a separate delay test. These are extra mechanism/feasibility experiments, not the first step of the operator flow. Old fixed-shift/default-exchange results must not be reused for the current imported fixture.
The final-source default run repeated the same result after a pause at iteration 1,605 and completion. At 390 pixels, Import and Results body width was 390 and the method dialog was 356; desktop was restored. The staged app, guide and original proposal returned to the hub; course portal → Assignment 1 → Open worked examples also passed. Course build and worked-examples/assignment integration passed separately. Direct-file execution is unverified.
Data & method exposes active model/rules and film/site tables. Its six fictional purchase rows total 13 tickets and five purchasing accounts; they illustrate the homework fields and do not fit the response model. The planning package supplies additional information beyond those purchase fields. Predicted gains are conditional on assumptions, not measured business uplift, purchased tickets, admissions or unique viewers. Local search retains the best feasible plan found; it does not prove a global optimum. The original full proposal contains broader proposed capabilities.