Uploaded by shyampratapsingh2007

Ralf Keuthen

advertisement
Dynamic Scheduling in Mobile
Workforce Management
Ralf Keuthen
Contents





Automated Mobile Workforce Management
The Workforce Scheduling Problem
TASKFORCE System Overview
Issues
Current/Future Work
Mobile Workforce Management

a.p.solve -- A Short History
 Involved
in mobile workforce management since
1987.
 Produced two major Work Management Systems
which have evolved into the TASKFORCE products
we currently market.
 a.p.solve (100+ employees) was spun out via the
British Telecom’s Brightstar business incubator
initiative in April 2003.
 a.p.solve’s planning and scheduling products
primarily support the management of mobile
workers via Personal Digital Assistants and mobile
telephony.
Scope



Large telecommunication, cable, utility and fix
& repair companies typically maintain a
fieldforce of 100s - 10,000s of technicians
The fieldforce supplies provision of service,
repair and maintenance tasks on a daily basis
(between 1000s - 100,000s of tasks/day)
Customers
 Residential,
Business (provision, repair)
 Company itself (maintenance, repair)
Example: Mobile Workforce at British
Telecom
BT Customer Access:
 a.p.solve’s TASKFORCE products currently
schedule BT’s workforce of Service
Technicians.
 ~25,000 field technicians
 ~150,000 tasks every day across the United
Kingdom.
 A high quality service at low operational cost
needs to be delivered.
Work Management Organisation

Domains: Geographical
partition of the work area
into autonomous domains

Domains controlled by automated work
management system
Supervised by a human controller

Organisation: How it works
Customer
Service
Work allocation
and visualisation
Dispatch work to
technicians
TASKFORCE
• Handheld
terminal
• Call Centre
• Network
Service
• Laptop
• Mobile
Organisation: How it works

Customer Service:
 take
customer calls
 arrange appointments

TASKFORCE:
 provide
customer service with a selection of
appointment slots
 Allocate work to technicians
 dispatch work to technicians

Technicians
 receive
work details
 travel to and carry out work
 report back when work is finished
Workforce Management: From a
Scheduling Point of View
Scheduling Model

Resources:
 Technicians
 Vehicles

and other equipment
Activities:
 provision,

repair and maintenance work
Constraints:
 time
windows, access restrictions
 precedence constraints
 co-op, assists, etc.
Main Objectives
Right man - right time - right place - right costs
 Maximise productivity
 number
of tasks scheduled
 most efficient resource for each task

Ensure a high quality of service
 compliance
with agreed appointments & due dates
 work importance

- Minimise costs
 travel
times
 waiting/idle times
 overtime
Other Objectives

Workforce satisfaction
 task
preferences
 preferred working areas

Business rules
 every
technician gets a job
 avoid task splitting (when possible)

Avoid disturbances
 robust
schedules
 flexible schedule
Some of these contradict one another
Issues

Dynamics/Uncertainties/Complexities of
problem

Scale

The need for a totally automated, online,
system.
Dynamics

Tasks
The company and its customers can
 request
 cancel
 amend tasks (at all time!!)

Resources
Availability subject to last minute changes
 personal absence, sick leave, etc
 changes to task completion times
 vehicle breakdown
Uncertainties

Duration of tasks
Uncertain due to
 exact scale of work often unknown before a
technician arrives on site
 varying technician skill levels

Travel times
Uncertain due to
 weather
 traffic conditions

Business objectives
Resource manager can change business objectives
Complexities

Complex mixture of tasks:




Inter task dependencies can be complex




different execution target times (appointment/completeBy)
different task priorities: Infill tasks - high priority business tasks
Wide range in the duration of tasks: 8 mins - several days
coops, assists tasks
pre-installation tasks
stock point visits, etc
Site access restrictions



security access
business opening times
road closure, etc
Complexities

Geographical complexities



Skills



heterogeneous workforce
diverse skill set
Work type and work skill imbalances



diverse (London vs East Wales, etc)
Preferred working areas
some geographical areas can be under resourced
certain skills can be under resourced
Business Rules
Scale
Scale of individual problems domain dependent

Technicians:
 10s

to 100s of technicians
Tasks:
 100s
to 1000s of tasks
Scheduler needs to cope efficiently with all domains
Issues


No realistic forecasting possible!
Assumed ‘static’ environment?
 Optimised
schedules quickly become sub optimal or
even infeasible
 What is optimality in an dynamic environment?


First thing in the morning everything changes !!
(sick leave, new tasks, etc)
Building robust/flexible schedules?
 Limited
applicability
 Radical changes to the current schedule may be
desired
Needed Automation




Automated data flow from order source
systems to job dispatch.
Schedule revision must be automatic and
robust.
On line Dispatcher must be able to cope with
corrupted schedules.
The real-line monitoring of the location of
mobile technicians and their expected
completion times is important.
Scheduling Opportunities:
Impact of Personal Digital Assistants on Scheduling
Practice:
 Mobile phones, laptops, handheld terminals, the
Internet, etc



allows to dispatch tasks to mobile workers in real time
tasks are (usually) dispatched one by one
Scheduling impact:


allows to adjust the schedule to the changed environment
allows to correct (some) scheduling decisions made earlier
However, the time available to react to changes is
very limited
Reacting to Changes:
Scheduling Opportunities:

Rescheduling

Dynamic scheduling

Real-time scheduling

On-line scheduling

Reactive scheduling
Reactive Scheduling:
In a stochastic environment, such as human
resource scheduling
 Reactive scheduling
 Monitor
changes
 Analyse impact on current schedule
 Adjust schedule accordingly



schedule repair
focused re-optimisation
etc.
Reactive Scheduling Tools:







Identify processing bottlenecks
Exploit scheduling opportunities
Maintain schedule stability and existing process plans.
Refine solutions.
Repair constraint violations.
Summarise solution states for human controllers and
software agents.
Dispatch scheduling tasks to field technicians with
respect to current schedule state and customer
demand.
Execution cycle
Monitor
Execute
Analysis
Optimise
Revision
TASKFORCE System Overview
TASKFORCE
Developed by BT and employed since 1997.
TASKFORCE supports:
 Resource Management
 Operations Management
 Schedule/Jeopardy Management
 Progress Management
 Scheduling & Dispatching
System Overview
Scheduling Architecture
Employed scheduling engines:

Intelligent Appointer

Interrupt Scheduler

Dynamic Scheduler

Dispatcher

Visualisation & What-If Scheduling
Architecture Overview
Visualiser
Intelligent
Appointer
DS
Optimiser
Dispatcher
Pre-scheduler
Schedule
Manager
Interrupt
Scheduler
Intelligent Appointer


Controller/call centre support tool
Heuristic based
 find
a set of feasible appointment slots based on the
current schedule
 suggest feasible appointment slots to human
controller
 controller books appointment slot and associates
time windows with the new task
 task is sent to schedule manager
Interrupt Scheduler
Automatic Schedule Revision:
 Reallocation algorithm to support appointment
reservations.
 A customer
requests a technician to attend his
premises between 9am and 12am.
 The
system can’t find an available resource
between these hours but can identify a sequence of
reallocations to free a technician to attend the
customer.
Dynamic Scheduler: Repair/Optimisation

Responsibilities:
 Construct
high quality start-of-day schedule
 Rebuild, repair, update & re-optimise while schedule
is being executed

How it works:
 Build
provisional schedule
 Perform frequent short batch runs to rebuild a
feasible schedule
Dynamic Scheduler: Techniques

Pre-scheduling:
 Reload

Tree Search assigning hard to schedule tasks
 linked

and try to rebuild old schedule
tasks, very long tasks, very important tasks
Optimisation:
 Stochastic
Local Search
 Simulated Annealing.
Currently looking into more focused techniques such as exploring
large neighbourhoods based on an ejection chain model, Guided
Local Search, etc
Automatic Dispatcher


Online and event triggered
Rule based system.
 If
Field Technician request work then the Dispatcher
identifies a task for the technician to service.

This invariably results in the need to repair a
damaged schedule
 Schedule
analysis will produce state summary
reports that support schedule repair after an
unscheduled activity execution.
 Focal
point
 Neighbourhood of impact
 Conflict duration
 Conflict size
Schedule Visualisation
Compress schedule information and represent it
in a way that can easily be captured by the user
 Provides the human controller with:
 statistics
 tour
task tables
 Gantt chart
 map tour representation
 what-if analysis tools
Schedule Visualisation: Gantt Chart
Schedule Visualisation: Map
Current/Future Work
Dynamic Work Crew Scheduling
Fieldforce activities can often not be carried out
by a single person but need multi skilled crews
 security
reasons (gas, electric, ladder, etc.)
 activity reasons (two sides of a cable, heavy
equipment)
 specific equipment (elevator unit, crane, etc)
Examples:
 Expansion/repair of the telephone network
 Electricity/gas/water supply to new build homes
 etc.
Dynamic Work Crew Scheduling
Problems:
 Complex workpackages (set of linked tasks)
 long
tasks (2h to a few weeks)
 many intertask dependencies
 different configurations possible

Skill matching
 is

Task duration
 If

a crew skill the sum of its crew member skills?
2 people need 1 hour do 4 people need only 1/2 hour?
How and when to build, combine or break crews in
a changing environment?
Incremental Scheduler
Instead of Rescheduling - React to changes immediately


Combine scheduling algorithms & dispatcher
Basic Idea:
 Monitor



arrival of new tasks
resources early or getting delayed
tasks moving close to deadlines
 React



changes
to changes in real time
insert new tasks once they arrive
move tasks that are getting likely to failure
re-optimise parts of the schedule (focused local search)
www.apsolve.com
Intelligent End-to-End Fieldforce Automation
Download