All projects

Operations software

Security patrol route planner

Plans security patrols around travel time, coverage requirements and operating constraints.

30% less overlap and idle time across patrol shifts.

Stage reached
Delivered
Sector
Field operations
Organisation
Security operations

My contribution

I built the Python optimisation tool and its Google Maps integration.

  • Patrol and scheduling constraint model
  • Google Maps travel-time data
  • Operator-readable route plans

The result

30% less overlap and idle time.

Engagement

Operational analysis and decision-tool delivery

The problem

Patrol routes were coordinated by hand, with no systematic way to account for travel time, coverage obligations and overlap between teams. Guards doubled back over ground a colleague had just covered, then sat idle waiting for the next interval window. Both are paid hours, and neither shows up in a report.

How it was approached

  1. Encode the real planning rules, including required stops, intervals, dwell times and shift types, before choosing an optimisation method.
  2. Replace travel-time assumptions with Google Maps distance and duration data.
  3. Optimise against overlap and idle time rather than shortest distance, because distance was never the cost.
  4. Return plans in an operator-readable form, so a coordinator can review before field use.

How far up the stack the work reached

The sites, the guards and the inspection obligations already existed. The model, the optimiser and the output the coordinators work from were built here.

  1. Operation

    Patrol vehicles, guards and contracted coverage obligations.

  2. Rules

    Per-site inspection rules: intervals, variance, dwell and shift windows.

  3. Inputs

    Site addresses and live travel-time data from Google Maps.

  4. Compute

    Python model of routes, stops and constraints.

  5. Decision

    Optimisation across coverage, travel and idle time.

  6. Action

    Shift-by-shift route plans returned to coordinators.

Engineering load

What was built

Model the operation

Turn coverage, timing and team constraints into a solvable problem.

  • Per-location rule sets with minimum and maximum inspection intervals
  • Target dwell duration and permitted variance per site
  • Separate weekday, weekend, night and public-holiday shift profiles
  • Baseline overlap and idle-time analysis to measure against

Build the optimiser

Python optimisation against real travel data, not estimates.

  • Google Maps travel duration and distance lookups
  • Route scoring and candidate improvement
  • Constraint-aware plan generation per shift type

Make the output operational

A plan a coordinator will actually use.

  • Ordered stop lists with arrival times, travel and dwell per stop
  • Total route duration and distance per shift
  • Comparison against the existing plan before rollout

What changed

30%

Less overlap and idle time

The planner cut combined overlap and idle time across patrol shifts by 30%.

Per-shift plans

Weekday, weekend, holiday

Each shift profile generates its own route, with arrival times and dwell per stop inside the contracted interval windows.

Rule-driven

Not distance-driven

Routes respect minimum and maximum intervals, target dwell and permitted variance, rather than minimising kilometres.

Technical stack

Python

Google Maps API

Route optimisation

Operational modelling

Capabilities applied

Optimisation

Workflow analysis

Decision tooling

Operational software

Next project

AROBOTIX

Crews work from the building model instead of from spreadsheets and memory.