Technicians and Interventions Scheduling for Telecommunications



Similar documents
The Problem of Scheduling Technicians and Interventions in a Telecommunications Company

Earned Value Analysis Exercise

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows

Arc Enterprise. Supervisor Text Reports. Version 5.1.x

End User Setup and Handling

WhatsUp Gold v16.1 Wireless User Guide

How To Model A System

ORACLE USER PRODUCTIVITY KIT USAGE TRACKING ADMINISTRATION & REPORTING RELEASE 3.6 PART NO. E

Research Article Average Bandwidth Allocation Model of WFQ

A Scalable Network Monitoring and Bandwidth Throttling System for Cloud Computing

CCNA Networking for Home and Small Business (Discovery 1)

USER S GUIDE for DSM@MIT

Group Mail Lists. Group Mailing Lists. Populating a Global Mail Lists 4. The Problem 6. The Solution 8. Scheduling Regular Updates 17

Updating the International Standard Classification of Occupations (ISCO) Draft ISCO-08 Group Definitions: Occupations in ICT

Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification

Monitoring Oracle Enterprise Performance Management System Release Deployments from Oracle Enterprise Manager 12c

Using Executable Enrollment Scripts

Monitoring Network DMN

Overview of Web Request Routing Through Unified ICM

ACP ThinManager Tech Notes. Terminal Services Display Clients

How To Calculate Service Credits

Exercises on ns-2. Chadi BARAKAT. INRIA, PLANETE research group 2004, route des Lucioles Sophia Antipolis, France

pm4dev, 2015 management for development series Project Schedule Management PROJECT MANAGEMENT FOR DEVELOPMENT ORGANIZATIONS

University of Michigan Health System. Determining Patient Volumes, Staffing Volumes, and Patient-to-Staff Ratios in the Cardiac Procedures Unit

Algebra 2 Notes AII.7 Functions: Review, Domain/Range. Function: Domain: Range:

Good Morning Wireless! SSID: MSFTOPEN No Username or Password Required

Introduction. Page 1

Scheduling Technicians and Tasks in a Telecommunications Company

For use with Position Manager Version Hiring Manager Portal

Frontier Tandem. Administrator User Guide. Version 2.4 January 28, 2013

On the Technician Routing and Scheduling Problem

Automatic Configuration Generation for Service High Availability with Load Balancing

IP Office 3.2 Phone Manager User Guide

IBM SPSS Direct Marketing 23

PROGRAMME MANUAL 3. APPLICATION STAGE

Installation Guide for LynxClient

Quick Sort. Implementation

Oracle OLAP. Describing Data Validation Plug-in for Analytic Workspace Manager. Product Support

IBM SPSS Direct Marketing 22

Automating Administration with SQL Agent

ABC Roster. User Manual (version 2.0)

Oracle Enterprise Manager

1 Energy Data Problem Domain. 2 Getting Started with ESPER. 2.1 Experimental Setup. Diogo Anjos José Cavalheiro Paulo Carreira

STREAMING HELP. This guide will help you improve your video quality and help you fix issues you may encounter while streaming.

Five9 Virtual Contact Center

Handheld LPC Utility Software for Windows. Operation Manual

Chancery SMS Database Split

INTEGER PROGRAMMING. Integer Programming. Prototype example. BIP model. BIP models

The Hadoop Distributed File System

Origins of Operating Systems OS/360. Martin Grund HPI

NEC Express5800 Series NEC ESMPRO AlertManager User's Guide

Silect Software s MP Author

Using MS Project in Translation Projects Management

OVERVIEW. Microsoft Project terms and definitions

ETS4 Diagnostics. KNX Association

Integrated Municipal Asset Management tool (IMAM)

Yale Software Library. PGP 9.6 for Windows

HDA Integration Guide. Help Desk Authority 9.0

Contact Center Anywhere: Supervision Manager (SM) Overview

The Second International Timetabling Competition (ITC-2007): Curriculum-based Course Timetabling (Track 3)

EXCEL SOLVER TUTORIAL

THE PREDICTIVE MODELLING PROCESS

Questions to ask clients prior to setting up a call center

MISSISSIPPI STATE UNIVERSITY Office of Planning Design and Construction Administration

sample median Sample quartiles sample deciles sample quantiles sample percentiles Exercise 1 five number summary # Create and view a sorted

Web based training for field technicians can be arranged by calling These Documents are required for a successful install:

INFORMATION SERVICES TECHNOLOGY GUIDE RHS STUDENT EMPLOYMENT WEB APPLICATION

Revenue Management for Transportation Problems

Avaya MultiVantage Call Center Software Basic Call Management System (BCMS) Operations

Guidelines for reporting. for Transnational Access. implemented as. Specific Support Action

Full Service Scheduler

WINDOWS PROCESSES AND SERVICES

Kaseya 2. User Guide. for Network Monitor 4.1

Efficient and Robust Allocation Algorithms in Clouds under Memory Constraints

contentaccess Analysis Tool Manual

Project Scheduling: PERT/CPM

Microsoft Excel - XP Intermediate

Configuring a Custom Load Evaluator Use the XenApp1 virtual machine, logged on as the XenApp\administrator user for this task.

Introduction to Microsoft Project 2010

VERITAS NetBackup Microsoft Windows User s Guide

TEL-500 Project Report. Auto-Dialler System. Voice Communications. Done By: - AKASH ANANTHANARAYANAN SANJEEVAKUMAR DEVARAJA

UFIT PPM - Time Reporting Training

Absolute Value Equations and Inequalities

DRV8312-C2-KIT How to Run Guide

EMPLOYEE PERFORMANCE REVIEW INSTRUCTIONS AND FORM

Microsoft HPC. V 1.0 José M. Cámara (checam@ubu.es)

BPMonline CRM + Service Desk Agent Desktop User Guide

Eliac Call Recording - Configurator Guide. Eliac. Call Recording System Ver. 2.x.

Remote Copy Technology of ETERNUS6000 and ETERNUS3000 Disk Arrays

Framework 8.1. External Authentication. Reference Manual

EIFFEL PROGRAM VADE-MECUM

MAT 151 College Algebra and MAT 182 Trigonometry Course Syllabus Spring 2014

Rescheduled User s Conference

Configuration Manager

Kaseya 2. Quick Start Guide. for Network Monitor 4.1

Transcription:

Technicians and Interventions Scheduling for Telecommunications Pierre-François Dutot, Alexandre Laugier and Anne-Marie Bustos France Telecom R&D November 10, 2006 1 General Description The constant need to maintain and develop the infrastructure underlying all the telecommunications services offered by France Telecom is the basis of this challenge proposal. With the strong development of high bandwidth Internet (ADSL) and the related services such as VoIP and television broadcasts over ADSL, the number of interventions is steadily increasing. However, with the end of the telecommunication monopoly France Telecom has to be even more competitive and therefore has to limit the growth of its group of technicians. In order to make the most out of the existing groups, we are considering a new approach to intervention scheduling. Currently, the schedules are created on a day-to-day basis, each group having a supervisor who decides who will work on which interventions. This assignment takes into account a lot of parameters that are difficult to integrate into a modelling system, such as personal affinity between technicians, tutoring, very specific knowledge of the intervention or geographical informations (where the technician lives for example). The aim of this challenge is to provide efficient schedules which will serve as a first sketch to help the supervisor in his duty. These schedules will be produced based on the formal description of the interventions and the capabilities of the technicians. We will describe in section 3 how these informations are provided as input files to the solver. Informally, a local group can be composed of between 20 and 60 technicians. There is a large number of possible interventions requiring different skills. In order to know which technician can be a part of an intervention, the skills are grouped into a small number of domains, and the level of each technician in each domain is rated. For example there can be up to twenty five domains with five levels for each domain. A technician of level 0 in one domain has no knowledge in this specific domain, whereas a technician of level 4 is an expert. To perform an intervention, the supervisor has to send a team to the intervention location, with enough qualified technicians to meet all the intervention requirements. For example, an intervention requiring one technician of level 2 in the domain d1 can be done by one technician of level 2, 3 or 4 in domain d1, but cannot be done by two technicians of level 1 in domain d1. INRIA Sophia Antipolis 1

A strong constraint here is that teams are formed for the day and should not change during one day. This is due to the limited number of available cars, and to the time it would take to get several teams back to a central point to mix the teams. Finally, interventions also have some characteristics such as a duration, a priority (which determines due dates for completing interventions), a fixed cost if an external company is hired to do it and a list of interventions which have to be completed before starting the intervention. 2 Mathematic Model In this section we will provide a formal description of the problem and of the validity of a schedule. 2.1 Notations Technicians The technicians characteristics are described by the following constants: P (t, j) is equal to 1 if the technician t is working on day j, 0 otherwise. This is to account for sickness, training, holidays, etc. C(t, i) is the skill level of technician t with respect to the competence domain i. Interventions Here are the characteristics of the interventions: T (I) is the execution time of the intervention I. R(I, i, n) is the required number of technicians of level n in the competence domain i to complete intervention I. P red(i) is the list of interventions which have to be completed before starting intervention I. P rio(i) is the priority for intervention I. This priority is not taken into account for the validity of a schedule, but it is part of the evaluation of the quality of schedules. The P red(i 1 ) list is not an exhaustive list of all ancestors of I 1 but only of direct parents of I 1. For example I 1 can depend on I 2 (I 2 P red(i 1 )), which itself depends on I 3 (with I 3 P red(i 2 ) and I 3 / P red(i 1 )). However, since I 2 has to wait for the end of I 3 and I 1 has to wait for I 2, I 3 is an ancestor of I 1. Remark that the required number of technicians at a given level for an intervention is cumulative since a technician of a given level is also qualified for all the smaller levels of the same competence domain. For example, if C(t, i) equals to three, the technician t can work on interventions requiring only a skill level of two. Therefore an intervention requiring for domain i at least one technician of level three and one technician of level two will have its requirements noted: 2

R(I, i, 1) R(I, i, 2) R(I, i, 3) R(I, i, 4) 2 2 1 0 2.2 Definition of a Schedule A schedule is the definition of teams for each day and a schedule of interventions to teams each day. e(t, j) is the team number of technician t for the day j. Team number 0 is a special team which is composed of the non-working technicians. d(i) is the day when intervention I is made. s(i) is the starting time of intervention I. a(i) is the team number affected to I. A is the budget available for hiring interventions to an external company. A schedule is a definition of these four functions. 2.3 Validity of Schedules A schedule has to verify a large number of constraints to be valid. First if a technician is not working he is in team 0: t, j, P (t, j) = 0 e(t, j) = 0 (1) Let Ĩ be the set of not abandoned interventions, then we will say that an intervention belonging to Ĩ is a planed intervention. And no planed interventions are made by the non-working team: Ĩ, a(i) > 0 (2) Two interventions assigned on the same day to the same team are done at different times (a team cannot work on two different interventions at the same time, i.e. the second starts after the first one has been finished). Interventions are made in different places and teams are sharing cars, so team members are always working together: I 1, I 2, Ĩ (a(i 1) = a(i 2 )) and (d(i 1 ) = d(i 2 )) (s(i 1 ) + T (I 1 ) s(i 2 )) or (s(i 2 ) + T (I 2 ) s(i 1 )) (3) We also have to ensure that all predecessors are completed before starting an intervention: I 1 Ĩ, I 2 P red(i 1 ) Ĩ, (d(i 1) > d(i 2 )) or (d(i 1 ) = d(i 2 ) and s(i 2 ) + T (I 2 ) s(i 1 )) (4) 3

Clearly if an intervention I 2 P red(i 1 ) is not a planed intervention then I 1 cannot be a planed intervention, thus we have : I 2 P red(i 1 ) : if I 2 Ĩ I 1 Ĩ (5) And the working days are long but strictly limited to a certain 1 number of hours H max : I Ĩ, 0 s(i) and s(i) + T (I) H max (6) To work on an intervention, a team has to meet the requirements. For a given skill domain i and level n, intervention I requires at least R(I, i, n) technicians. Noting T ech(i) the set of technicians working on intervention I (T ech(i) = {t a(i) = e(t, d(i))}), we have the following constraint: I Ĩ, i, n, t T ech(i):c(t,i) n 1 R(I, i, n) (7) The total amount of cost for hired interventions cannot exceded the total budget A. 3 Input Files There are three input files for each data instance: 1. The summary file "instance" 2. The list of interventions "interv list" 3. The list of technicians "tech list" instance This file only holds the general details of the considered instance, which are the name, the number of domains, the number of levels, the number of technicians, the number of interventions and the fixed cost for the interventions that were abandoned to external company. Sometimes, if the schedule is too tight, it is necessary to hire an external company to work on interventions. To emulate this, the participants can choose not to schedule interventions for a fixed cost abandon. For the first qualification phase, the fixed cost is 0. A typical file would be: name domains level techs interv abandon myexample 3 2 20 100 0 In this file, as in all the following files, the data separator is a single white space. 1 In our practical problem, the time is split in time units with 120 time units per day. 4

interv list This file holds all the details on the interventions. Each line of this file corresponds to an intervention, except for the first line which recalls the meaning of each column. Here is the beginning of a typical interv list file: number time preds prio cost d1 1 d1 2 d2 1 d2 2 d3 1 d3 2 1 40 [ ] 1 200 0 0 0 0 1 0 2 12 [1] 3 350 1 0 0 0 0 0 3 52 [1 2] 3 500 1 1 1 0 1 0 In this example, intervention number 2 takes 12 units of time, it has to wait for the completion of intervention 1, its priority is 3, it has a cost of 350 and it needs one technician of level 1 in domain 1. The cost is only taken into account if the intervention is abandonned to an external company. The priority of a task is between 1 and 4, interventions with the lowest priority being the most urgent ones. tech list As the name suggests, this file is for technicians. As for interventions, each line holds the data of one technician. Here is a sample of a technician file: tech d1 d2 d3 dispo 1 0 0 0 [ ] 2 1 0 2 [2 4] 3 2 1 1 [ ] Here, technician 2 is of level 1 in domain 1 and of level 2 in domain 3, and is unavailable for days 2 and 4. 4 Output Files The output files are based on the same principle of separate interventions and technicians. There are therefore two different output files: 1. tech teams 2. interv dates tech teams The partition of technicians into teams is summarized in this file. The total number of days is unbounded but minimizing the schedule length will be an important part of the evaluation. Here is how the output should look like: 5

day not working team1 team2 team3 etc. 1 [3 5 8] [1 2 7] [4] [6 9] 2 [ ] [1 5] [3] [2 8] [7] [4 6 9] 3 [2 5 8] [1 3 7 9] [4 6] In this example on the second day all workers are available (team 0 which is the special team of non-working technicians is empty), and the technicians are grouped in five different teams defined within brackets. interv dates The second output file is for interventions. Each intervention is summarized with a line where the day and time of the intervention are written along with the team affected to it. interv day time team 1 3 55 2 2 1 27 3 3 1 0 1 In this example intervention one start on day 3 after 55 units of time and is done by team 2 (the technicians doing the intervention are those affected to team 2 on day 3 of course). 5 Program Options For our evaluation scripts, we ask you to provide an executable called ftsched, with the following options: -t TIME to stop the program execution after TIME seconds (caution: this is real time, not cputime). The test machine will be totally dedicated and the tests will be done sequentially, therefore all the teams will have the same amount of cpu power. -n INSTANCE to load the data associated with the instance INSTANCE. The input files will be in the folder../data/instance/. To summarize, the command: /home/login/roadef/prog/ftsched -t 300 -n March2005 will load the data files in folder /home/login/roadef/data/march2005/ and run the program for at most 300 seconds. Warning: the tests will be run with -t 1200 (20 minutes). 6 Ranking the programs There are three sets of data used for the challenge: set A holds instances which are made public at the beginning of the challenge. This set is used to select participants for the final phase. 6

set B is disclosed after the first qualification phase and will be used for the final ranking. set X is undisclosed and will also be used for final ranking. The scoring procedure will give a value to each schedule produced by the participants program according to the following rules: The ending time t 1 of the last scheduled intervention of priority 1 is extremely important, The ending time t 2 of the last scheduled intervention of priority 2 is very important, The ending time t 3 of the last scheduled intervention of priority 3 is important, The total time t 4 of the schedule is also of interest. For all the phases, the score for each schedule will be: t 1 28 + t 2 14 + t 3 4 + t 4 Remark, an ending time is the number of unit times since the begining of the schedule. If the last scheduled intervention of priority 1 is finished at day 3, time 60, t 1 will be 300 (=2*120+60). To rank the participants in the qualification phase, we will normalize the score on each schedule by the best score achieved by a participant for this schedule, and then sum on all the schedules. Francetelecom reserves the possibility to bring some nimor modifications on the subject if needed. 7