Pet photographer session booking calculator

Calculate feasible precedence schedule and completion time with your own figures.

Your numbers

Use the units shown. Results update as you change valid inputs.

Use feasible precedence schedule and completion time to compare changes to your inputs. The method and limits below explain the scope.

Examples

Examples

Try the starting example

Photography tasks [minutes,zero-based predecessors]; enter JSON
[[10,[]],[30,[0]],[20,[1]],[60,[1]]]
Available interchangeable workers (count)
2
Earliest start (minute)
0
Required completion deadline (minute)
40
Feasible precedence schedule (JSON)
[{"task":1,"worker":1,"start":0,"end":10},{"task":2,"worker":1,"start":10,"end":40},{"task":3,"worker":1,"start":40,"end":60},{"task":4,"worker":2,"start":40,"end":100}]
Completion time (minute)
100
Deadline overrun (minutes)
60

Try another scenario

Photography tasks [minutes,zero-based predecessors]; enter JSON
[[15,[]],[40,[0]],[25,[1]],[80,[1]]]
Available interchangeable workers (count)
1
Earliest start (minute)
10
Required completion deadline (minute)
50
Feasible precedence schedule (JSON)
[{"task":1,"worker":1,"start":10,"end":25},{"task":2,"worker":1,"start":25,"end":65},{"task":3,"worker":1,"start":65,"end":90},{"task":4,"worker":1,"start":90,"end":170}]
Completion time (minute)
170
Deadline overrun (minutes)
120
Calculation method

Calculation method

Feasible precedence schedule (JSON)

Repeatedly choose earliest-start ready task and earliest-free worker; tie by task index then worker. Tasks are nonpreemptive.

Completion time (minute)

Maximum scheduled task end.

Deadline overrun (minutes)

max(0,completion−deadline).

Symbols and units
a
Photography tasks [minutes,zero-based predecessors]; enter JSON
b
Available interchangeable workers (count)
c
Earliest start (minute)
d
Required completion deadline (minute)

Use the units shown. A list keeps the order in which you enter its values. The symbol ^ means “raised to the power of”.

Assumptions & limits

Assumptions & limits

  • Photography setup, travel, sessions and editing are explicit predecessor tasks; one or more interchangeable workers, without animal-behavior assumptions. Supported limits: All numeric inputs and computed intermediates must remain finite. Supported numeric input magnitude is zero or 1e-12 through 1e12 in absolute value; reject values outside this bounded range. All lists/JSON record tables are limited to 100 records unless a stricter bound is stated; reject malformed record arity and wrong member types. 1..100 tasks; positive durations; predecessor indices exist and graph is acyclic; workers 1..20. Interchangeable workers; no specialist equipment constraints unless encoded as dependencies.
Are these inputs private?

These calculations run in your browser. A shared link contains the values you choose to share. Only questions submitted to the separate AI finder are sent to OpenAI.

Share this page
Share this calculator

Leave unchecked to share the page without your entered values.