Title: Dynamic Scheduling in Mobile Workforce Management
1Dynamic Scheduling in Mobile Workforce Management
2Contents
- Automated Mobile Workforce Management
- The Workforce Scheduling Problem
- TASKFORCE System Overview
- Issues
- Current/Future Work
3Mobile 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 Telecoms Brightstar business incubator
initiative in April 2003. - a.p.solves planning and scheduling products
primarily support the management of mobile
workers via Personal Digital Assistants and
mobile telephony.
4Scope
- 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)
5Example Mobile Workforce at British Telecom
- BT Customer Access
- a.p.solves TASKFORCE products currently schedule
BTs 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.
6Work Management Organisation
- Domains Geographical
- partition of the work area
- into autonomous domains
- Domains controlled by automated work management
system - Supervised by a human controller
7Organisation How it works
Customer Service
Work allocation and visualisation
Dispatch work to technicians
- Handheld terminal
- Laptop
- Mobile
- Call Centre
- Network Service
TASKFORCE
8Organisation 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
9Workforce Management From a Scheduling Point of
View
10Scheduling Model
- Resources
- Technicians
- Vehicles and other equipment
- Activities
- provision, repair and maintenance work
- Constraints
- time windows, access restrictions
- precedence constraints
- co-op, assists, etc.
11Main 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
12Other 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
13Issues
- Dynamics/Uncertainties/Complexities of problem
- Scale
- The need for a totally automated, online, system.
14Dynamics
- 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
15Uncertainties
- 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
16Complexities
- Complex mixture of tasks
- 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 - Inter task dependencies can be complex
- coops, assists tasks
- pre-installation tasks
- stock point visits, etc
- Site access restrictions
- security access
- business opening times
- road closure, etc
17Complexities
- Geographical complexities
- diverse (London vs East Wales, etc)
- Preferred working areas
- Skills
- heterogeneous workforce
- diverse skill set
- Work type and work skill imbalances
- some geographical areas can be under resourced
- certain skills can be under resourced
- Business Rules
18Scale
- 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
19Issues
- 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
20Needed 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.
21Scheduling 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
22Reacting to Changes
- Scheduling Opportunities
- Rescheduling
- Dynamic scheduling
- Real-time scheduling
- On-line scheduling
- Reactive scheduling
23Reactive 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.
24Reactive 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.
25Execution cycle
Monitor
Analysis
Execute
Optimise
Revision
26TASKFORCE System Overview
27TASKFORCE
- Developed by BT and employed since 1997.
- TASKFORCE supports
- Resource Management
- Operations Management
- Schedule/Jeopardy Management
- Progress Management
- Scheduling Dispatching
28System Overview
29Scheduling Architecture
- Employed scheduling engines
- Intelligent Appointer
- Interrupt Scheduler
- Dynamic Scheduler
- Dispatcher
- Visualisation What-If Scheduling
30Architecture Overview
Visualiser
Intelligent Appointer
DS
Optimiser
Dispatcher
Interrupt Scheduler
Pre-scheduler
Schedule Manager
31Intelligent 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
32Interrupt 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 cant find an available resource
between these hours but can identify a sequence
of reallocations to free a technician to attend
the customer.
33Dynamic 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
34Dynamic Scheduler Techniques
- Pre-scheduling
- Reload and try to rebuild old schedule
- Tree Search assigning hard to schedule tasks
- linked 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
35Automatic 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
36Schedule 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
37Schedule Visualisation Gantt Chart
38Schedule Visualisation Map
39Current/Future Work
40Dynamic 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.
41Dynamic 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 a crew skill the sum of its crew member
skills? - Task duration
- If 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?
42Incremental Scheduler
- Instead of Rescheduling - React to changes
immediately - Combine scheduling algorithms dispatcher
- Basic Idea
- Monitor changes
- arrival of new tasks
- resources early or getting delayed
- tasks moving close to deadlines
- React 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)
43www.apsolve.com
Intelligent End-to-End Fieldforce Automation