How the Scheduler Works

Understanding how *blinkpilot* finds optimal time slots for your work

This guide explains how blinkpilot's smart scheduler finds the best available time slots for your work segments.

How Scheduling Works

When you need to schedule a work segment, the scheduler:

  1. Analyzes the assignee's calendar for available time
  2. Checks constraints like working hours, breaks, and existing work
  3. Calculates travel times to and from the job location
  4. Validates working hour limits to prevent overloading
  5. Ranks options by efficiency and presents the best choices

The Timeblock System

The scheduler divides each day into 96 timeblocks of 15 minutes each:

TimeblockTime
000:00
3208:00
4812:00
6817:00
9523:45

This allows precise scheduling in 15-minute increments.

What the Scheduler Checks

1. Working Hours

The assignee's working schedule defines when they're available:

  • Start and end times for each day
  • Which days they work (e.g., Monday-Friday)
  • Maximum hours per day

2. Existing Work

The scheduler prevents double-booking by checking:

  • Already scheduled tasks
  • Time needed for travel between jobs
  • Required break periods

3. Absences

Any recorded absences block scheduling:

  • Vacation days
  • Sick leave
  • Other time off

4. Equipment Availability

If the job requires equipment:

  • Checks if equipment is available at the proposed time
  • Considers equipment quantity (need 2 units but only 1 free? Blocked)

5. Dependent Tasks

If this segment depends on a previous segment:

  • Cannot start before the dependency is complete
  • Scheduler only shows slots after the dependency end time

Travel Time Calculation

The scheduler calculates realistic travel times:

Travel From Previous Location

  • First job of the day: Travel from company base
  • Subsequent jobs: Travel from the previous customer location

Travel To Next Location

  • For the last job: Travel back to base is included in workload calculation

Note: Travel times use geographic coordinates and typical driving speeds. Real-time traffic is not factored in.

Working Hours Validation

The scheduler respects daily working hour limits:

Regular Hours

  • Based on the assignee's working schedule (e.g., 8 hours)
  • Includes execution time AND travel time

Overtime Allowance

  • If configured, slots slightly exceeding regular hours may appear
  • These are marked with an overtime indicator
  • Shows utilization percentage (e.g., 105%)

What Counts Toward Daily Hours

ActivityCounts?
Execution timeYes
Travel to jobYes
Travel between jobsYes
Travel back to baseYes
BreaksNo

How Slots Are Ranked

Each slot receives a cost score - lower is better.

Factors Affecting Cost

FactorEffect
Date proximityEarlier dates score better
Geographic clusteringJobs near other work that day score better
Work type groupingSimilar work types grouped together score better

The slot with the lowest cost is marked as Best.

What Makes a Slot Unavailable

A time slot won't appear if:

  • Outside working hours
  • Overlaps with existing work
  • During an absence
  • Required equipment is unavailable
  • Would exceed daily hour limit
  • Before a dependent task completes

Output: Multiple Options

The scheduler typically provides multiple slot options:

  • Best option - Lowest cost score, recommended
  • Alternative options - Other valid choices
  • Each shows: time, date, travel time, and total duration

You choose which slot works best for your situation.

Limitations

The scheduler cannot:

  • Schedule without a valid customer address
  • Override hard constraints (working hours, absences)
  • Predict real-time traffic conditions
  • Schedule during equipment maintenance periods