ToolJovia
Calculators

Weighted Booking Selection Workbench

Choose a maximum-value set of nonoverlapping bookings on one resource and inspect the accepted intervals.

✓ Browser-local processing

Loading tool…

How to use Weighted Booking Selection Workbench

Sort exact finish times, locate each compatible prefix and compare taking or skipping each booking through dynamic programming.

  1. Use the example as the schema; replace its labels and entered model assumptions.
  2. Sort exact finish times, locate each compatible prefix and compare taking or skipping each booking through dynamic programming.
  3. Calculate, inspect the complete witnesses and limitations, then copy or download the JSON report.

Good to know

  • 0–500 distinct bookings. Nonnegative decimal-string start/end/value, each at most 1 billion; every end must exceed its start. One numeric time unit and one value unit.
  • Intervals are half-open: touching endpoints are compatible. One resource with no turnaround gap, calendar, capacity splitting or prerequisites. Equal optimal values keep the existing prefix and may omit zero-value rows.
  • Local calculation with no upload, input persistence or outside lookup. Model JSON is limited to 30,000 characters and 10,000 values. Decimal quantities are strings with up to six places; count fields use plain JSON integers. Exact fractions are capped at 8,192 bits. The complete JSON output is limited to 1,000,000 characters; approximate numbers preserve their stored values. Unsupported states fail explicitly.

Common questions

Why not simply accept the most valuable booking first?

A single high-value booking can block several compatible bookings with a greater combined value. The dynamic program compares complete compatible prefixes instead of using that greedy rule.

Are my model inputs saved or sent to a server?

No. This model runs in the current browser tab and creates a local JSON download. It does not save your input or call an external data service.

Keep going with related tools

All calculators →