• No results found

Stability in multi-skill workforce scheduling

N/A
N/A
Protected

Academic year: 2021

Share "Stability in multi-skill workforce scheduling"

Copied!
18
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

Stability in multi-skill workforce scheduling

Citation for published version (APA):

Firat, M., Hurkens, C. A. J., & Laugier, A. (2010). Stability in multi-skill workforce scheduling. (BETA publicatie : working papers; Vol. 326). Technische Universiteit Eindhoven.

Document status and date: Published: 01/01/2010 Document Version:

Publisher’s PDF, also known as Version of Record (includes final page, issue and volume numbers) Please check the document version of this publication:

• A submitted manuscript is the version of the article upon submission and before peer-review. There can be important differences between the submitted version and the official published version of record. People interested in the research are advised to contact the author for the final version of the publication, or visit the DOI to the publisher's website.

• The final author version and the galley proof are versions of the publication after peer review.

• The final published version features the final layout of the paper including the volume, issue and page numbers.

Link to publication

General rights

Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain

• You may freely distribute the URL identifying the publication in the public portal.

If the publication is distributed under the terms of Article 25fa of the Dutch Copyright Act, indicated by the “Taverne” license above, please follow below link for the End User Agreement:

www.tue.nl/taverne Take down policy

If you believe that this document breaches copyright please contact us at: openaccess@tue.nl

(2)

Stability in multi-skill workforce scheduling

Murat Firat, Cor Hurkens, Alexandre Laugier Beta Working Paper series 326

BETA publicatie WP 326 (working paper)

ISBN 978-90-386-2360-3 ISSN

NUR 982

(3)

Stability in multi-skill workforce scheduling

Murat Fırat † Cor Hurkens ‡ Alexandre Laugier §

Abstract

This paper analyzes stability in multi-skill workforce schedules. In our stability analysis, we extend the notion of blocking pairs as stated in the Marriage model of Gale-Shapley. It is shown that finding stable schedules is NP-Hard. In some special cases stable schedules can be constructed in polynomial time. An integer linear programming model is proposed to decrease the instability of schedules.

Keywords: multi-skill workforce schedules, stable assignments, instability, blocking pair, uni-versity admissions problem, three-dimensional matching problem.

1

Introduction

In this work, we are interested in the stability of multi-skill workforce schedules of technicians and jobs. In these schedules, teams are assigned to jobs that are processed in parallel.

The stability of the multi-skill workforce schedules is analyzed by defining preferences of the players: technicians and jobs. A schedule is said to be blocked if a technician-job pair not assigned can improve their individual preferences by being assigned. This is the same definition of a blocking pair in the milestone paper of Gale and Shapley (1962). The challenge in our scheduling problem is to satisfy the multi-dimensional skill requirements of jobs. A job can be performed by a team of technicians provided that the collective capabilities of the team are above a certain threshold. We show that constructing a feasible schedule in general is NP-Hard, and so is finding stable schedules. Several special cases of the general problem are also analyzed. Our results show that some of them can be transformed to well-known problems studied in the literature and solved efficiently. For the general case, we have initially built schedules using the combinatorial algorithm introduced by Hurkens (2009). The problem of constructing multi-skill workforce schedules has been defined by France Telecom for the 2007 ROADEF Challenge. We analyze the stability of these schedules and measure the degree of instability for those that are blocked. An Integer Linear Programming model is proposed to decrease the degree of instability by reassigning technicians to jobs.

This research is supported by France Telecom/TUE Research agreement No. ˙46145963.

Corresponding author: m.firat@tue.nl. Department of Mathematics and Computer Science, TU Eindhoven, P.O. Box 513, 5600 MB Eindhoven, Netherlands.

c.a.j.hurkens@tue.nl. Department of Mathematics and Computer Science, TU Eindhoven, P.O. Box 513, 5600 MB Eindhoven, Netherlands.

§

Alexandre.Laugier@orange-ftgroup.com. France Telecom/R&D/BIZZ/DIAM 905, rue Albert Einstein, F-06921 Sophia-Antipolis Cedex, France.

(4)

The paper is organized as follows. In section 2 we give the basic definitions and the preference structure of technicians and jobs in the multi-workforce scheduling context. section 3 includes some of our results on special cases of our scheduling problem. In section 4 our Integer Linear Programming model is explained and computational results are presented. Conclusions and future research directions are discussed in section 5.

2

Basic Definitions

This section explains basic terminology of the multi-skill workforce scheduling. In section 2.4, we mention a crucial assumption called simultaneous skill use and the rest of the terminology in this section is based on this assumption. The preference structure of technicians and jobs as well as a measurement of degree of instability is reported. In the last subsection, the problem of finding stable schedules is formally stated.

2.1 Skills

Let D be the set of skill domains representing specialization fields like software, hardware and installation. The degree of experience or expertise in skill domains is interpreted by hier-archical levels. An expert possesses the highest level and a beginner qualifies the lowest. In the problem instances, the number of skill domains and skill levels varies. Let L denote be the set of hierarchical skill levels. The skills either offered by technicians or required by jobs are expressed by matrices in RL×D.

2.2 Technicians

In the schedules under consideration we are given a set T of technicians. The skills of a technician t are specified by St∈ RL×D as follows:

St(l,d)= (

1 if t is qualified at level l in skill domain d,

0 otherwise. ,

The skill level of the technician t in skill domain d is given by max h

{0} ∪ {l ∈ L|St(l,d)> 0}

i . For example, let |D| = 4 and |L| = 3. We may have the following skill matix:

St=   1 1 1 0 1 1 1 0 1 0 1 0  

Above, we see that technician t has the highest skill level, namely three, in domains 1 and 3. He has no skill in domain 4 and level two in domain 2.

Every technician has a skill value which is found by aggregating the skills in all domains at all levels with corresponding weights. Let t denote the skill value of technician t and let W ∈ RL×D be the skill weight matrix. Now 

(5)

t= X l∈L X d∈D W(l,d)St(l,d)= hW, Sti

Let T0⊆ T be a team of technicians. The skill of T0 is defined as the skill sum of individual technicians in the team and is denoted by ST0 =P

t∈T0St. Similarly, T0 denotes the skill value

of team T0 and it is found by T0 = hW, ST0i.

2.3 Jobs

In the multi-skill workforce scheduling problem instances, a set J = {j1, j2, . . . } of jobs is

given. Jobs require certain skill qualifications and are processed in parallel. The skills required to perform a task are expressed by a skill requirement matrix. Let task j ∈ J have skill requirement matrix RQj ∈ RL×D. Entries of RQj specify how many technicians are needed

for the corresponding skill domain-skill level pair. For example, RQ(2,1)j = 2 means that task j requires (at least) 2 technicians that have a competence in domain 1 of level 2 or higher. Skill requirements are cumulative in the sense that any requirement in higher level is carried to lower levels. Therefore we have:

l0 ≤ l ⇒ RQ(lj0,d) ≥ RQ(l,d)j , ∀j ∈ J, l, l0 ∈ L, d ∈ D

Let T (j) ⊆ T denote the team of technicians assigned to job j. Team T (j) is said to be a feasible team for job j if it meets the job j’s skill requirements, specified by RQj ∈ RL×D.

Feasibility of the assignment (T (j), j) is expressed by the inequality ST (j)≥ RQj. For example,

let |D| = 4 and |L| = 3, and let the requirement matrix for job j be as follows:

RQj =   1 2 0 0 1 1 0 0 1 0 0 0  

In the above example, RQ(1,2)j = 2 tells us that there must be at least two technicians contributing to the team skill at ST (j)(1,2).

Let RQ∗j ∈ RL×D denote the non-cumulative or explicit skill requirement of job j. RQ∗ j is

obtained from RQj as follows:

RQ∗(l,d)j = (

RQ(l,d)j if l = |L|, RQ(l,d)j − RQ(l+1,d)j if 0 < l < |L|.

The explicit skill requirement of the above example turns out to be as follows:

RQ∗j =   0 1 0 0 0 1 0 0 1 0 0 0  

(6)

2.4 Contributions to Jobs

In this section we provide some definitions in our multi-skill workforce scheduling context. The following assumption makes our scheduling problem different from the ones studied in the literature.

Assumption 1 Technicians can use their skills in more than one skill domain simultaneously and we call this simultaneous skill use.

In a skill domain d , the contribution level of a technician t to a job j is defined as the maximum level that is both explicitly required by the job and reached by the technician. It is denoted by CONd(t,j) and found by the following:

CONd(t,j)= max h {0} ∪ {l ∈ L|0 < RQ∗(l,d)j and 0 < S (l,d) t } i . (1)

The vector which includes contribution levels in domains of technician t to job j is called contribution vector and it is denoted by CON(t,j)∈ RD.

Definition 2 Let j ∈ J and t1, t2 ∈ T . If CON(t1,j) = CON(t2,j), then technicians t1 and t2

are interchangeable with respect to job j.

If technicians t1 and t2 are interchangeable and T (j) is a feasible team for job j such that

t1 ∈ T (j) and t26∈ T (j), then the team [T (j) \ {t1}] ∪ {t2} is also feasible the job j.

The highest contribution level for a technician is generally in domains in which he has relatively high skill. Those domains are more important for technicians in deciding which job suits them better. This point leads us to favorite domains. The favorite domain of technician t is the one in which the technician can achieve the maximum contribution level in any schedule of an instance and it is denoted by d∗t ∈ D.

Note that the favorite domain of a technician is not simply the one in which he has highest skill level, but besides that there must also exist a job requiring this skill level. Ties are broken by choosing the domain with minimum index.

Definition 3 A technician t is called necessary for a job j if and only if the job j cannot be performed without t, that is ∃(l, d) ∈ L × D such that ST \{t}(l,d) < RQ(l,d)j . Let N (j) denote the set of technicians necessary for job j.

The feasibility of a schedule is maintained if and only if a team of enough skilled technicians is assigned to every job and each technician is involved in at most one team.

2.5 Preference Structure

In the classical Marriage model of Gale and Shapley (1962), if a matching between two sets of players contains a pair of players both preferring one another to their currently assigned partners, then the matching is unstable and this pair is called a blocking pair. Matchings that contain no blocking pairs are called stable. In this paper, we define a preference structure within our multi-skill workforce framework. Preferences are determined in the following way: a technician prefers working at the highest possible level in his favorite domain. From a job’s point of view,

(7)

the preference criterion is skill value. The less overqualified a technician group is, the more it is preferred.

Let J (t) be the job to which technician t in T is currently assigned. Technician t prefers job j to his current job J (t) if and only if CONd

∗ t

(t,J (t))< CON d∗t

(t,j). We denote this by J (t) <tj.

In the multi-skill workforce schedules, it is not easy for jobs to evaluate a single technician, since they need a team rather than an individual. The preference of jobs is based on the efficiency in skills. Teams having less skill excess are liked more. We say that “j likes t” if and only if there exists T0 such that T0 ⊂ (T (j) ∪ {t}), t ∈ T0 and 

T0 < T (j). Note that this preference is

schedule dependent.

Let two technicians t, t0 with t < t0 be interchangeable with respect to a job j. Then

j prefers t due to his less skill value. We denote this by t0 <j t. Note that this is schedule

independent preference and it is called a pairwise comparison of interchangeable technicians. The jobs requiring skills in a few domains have more pairwise comparisons than jobs that require skills in a high number of domains.

In the classical Gale-Shapley stability if two players from different sets like each other more than their current partners, then they block the current matching. We adapt this idea of blocking pairs to our scheduling context. The pair (t, j) is said to block a schedule if and only if J (t) <tj and j likes t. The set of blocking pairs is denoted by Φ.

Remark 4 If t0 <j t and if in a schedule t0 ∈ T (j), then “j likes t”.

A recent study of K. Eriksson and O. Häggström (2008) argues that the proportion of blocking pairs among all possible pairs is usually the best measure of instability. We follow this idea of measuring instability and define the instability of a schedule as follows:

Definition 5 The ratio |Φ||J| is defined as the degree of instability.

2.6 Stable Scheduling Problem

In this section we define our problem of finding stable schedules and we denote our general scheduling problem by nD-nL-nT.

Problem: nD-nL-nT Instance:

The sets D = {d1, . . . }, L = {1, . . . }, T = {t1, . . . , tm}, J = {j1, j2, . . .}, the weight

matrix W ∈ RL.

The skills {St1, . . . , Stm} ⊂ RL and skill requirements {RQj1, . . . } ⊂ RL.

Question: Does there exist a stable schedule?

3

Some Results on Special Cases

The subset of problem instances in which there is one skill domain is denoted by 1D-nL-nT. The special case nD-nL-nT(1-D Jobs) is the subset of problem instances in which we have any number of domains but each job requires skills only in one domain. In nD-1L-2T, jobs are performed by teams of two technicians and in a skill domain technicians are either skilled or not.

(8)

3.1 Special case: 1D-nL-nT

Our first result is about finding stable schedules in this special case. The following theorem gives the result.

Theorem 6 In feasible 1D-nL-nT instances, stable schedules can be constructed in polynomial time.

Proof. We show that 1D-nL-nT can be transformed to the university admissions problem instance (subsection 3.1.1). We show how a stable admission is converted into a 1D-nL-nT schedule and the separation algorithm due to Baïou and Balinski (2000) finds in in at most O(|U ||A|) time a stable admission or reports that no stable admission exists (subsection 3.1.2). We also prove that stable admissions result in stable schedules (Lemma 9). 

We need to introduce some terminology to analyze the special case. In 1D-nL-nT, we may drop the skill domain index and denote the explicit skill requirement of job j ∈ J at level l by RQ∗(l)j .

Definition 7 In 1D-nL-nT, a sub job of a job is the non-zero explicit skill requirement of a job at a certain level. If RQ∗(l)j > 0, then the corresponding sub job is denoted by SJ(j,l).

The appeal of sub job SJ(j,l) to technician t is defined as follows:

APP(t,SJ(j,l))= St(l)(CON(t,j)|L| + l). (2) Note that in the appeal of sub job SJ to technician t, there exists a lexicographic importance. The most important factor is the contribution and second is the level of the subjob. The value zero of an appeal means that the subjob is not feasible for the technician.

Definition 8 In 1D-nL-nT, assume that (t, j) is a blocking pair. Then a technician t0 ∈ T (j) such that (T (j) \ {t0}) ∪ {t} is a feasible team for job j and t< t0, is called disliked

tech-nician.

3.1.1 Transformation to the University Admissions Problem

The university admission problem is a well-studied problem in the literature, see for example Gale and Sotomayor (1985), Baïou and Balinski (2000).

Problem: University Admissions Problem Instance:

A set of universities U = {u1, . . . }, a set of applicants A = {a1, . . . } and each

applicant lists in order of preference the universities he wishes to attend and each university lists in order of preference the applicants it is willing to admit. University u has a quota qu giving an upper bound on the number of applicants it can admit.

(9)

Applicant a’s preference for u1 over u2 is written as u1 <a u2 and universities’ preferences

are expressed similarly. Applicant a and university u are said to be acceptable to each other if a prefers to be accepted by u than to be unassigned and u prefers to accept a than to accept fewer than qu candidates. We now show the polynomial time transformation of 1D-nL-nT instance to the university admissions instance.

• Decompose jobs into sub jobs.

• For every element ti∈ T , create a corresponding applicant a(ti).

• For every sub job SJ(j,l), create a corresponding university u(SJ(j,l)) with a quota

qu(SJ(j,l)) = RQ

∗(l) j .

• Preferences: – If APP(t,SJ

(j,l))> 0, then a(t) and u(SJ(j,l)) are acceptable to each other.

– If APP(t,SJ

(j,l))< APP(t,SJ(j0,l0)), then u(SJ(j,l)) <a(t) u(SJ(j0,l0)).

– If t0 < t, then a(t) <u(SJ

(j,l))a(t

0).

– In case of equal appeals or skill values, preferences are determined consistently based on job and technician indices.

3.1.2 Converting admissions to 1D-nL-nT schedules

In a stable admission, if the a(t) is assigned to u(SJ(j,l)), then in the corresponding schedule we have t ∈ T (j). Every such technician-sub job assignment is feasible due to the definition on appeals in equation (2). Teams are determined by the assigned technicians to all sub jobs. A feasible schedule is obtained if all universities are assigned to a number of applicants equal to their quotas. Having an admission in which some universities did not fill their quotas corresponds to the case that there is no stable schedule solution in 1D-nL-nT. Stable admissions in which all universities admit students equal to their quotas result in stable 1D-nL-nT schedules as shown in Lemma 9. A stable admission, if it exists, can be found in at most O(|U ||A|) time by the separation algorithm of Baïou and Balinski (2000).

Lemma 9 In 1D-nL-nT, the schedule constructed from a corresponding stable university ad-mission assignment solution is stable.

Proof. Assume that we are given a 1D-nL-nT instance and it is transformed to a university admissions problem instance. Assume that a stable admission is found and converted to a 1D-nL-nT schedule.

Suppose the contrary, and let (t, j) be a blocking pair, hence j likes t and J (t) <tj.

As j likes t, there exists a disliked technician t0 ∈ T (j) with t < t0. In the

assign-ment solution, a(t0) must be matched to u(SJ(j,l))) and a(t) to u(SJ(J (t),l0)). And we have

a(t0) <u((SJ(j,l))a(t).

As J (t) <t j, we have that CON(t,J (t)) < CON(t,j), so APP(t,SJ(J (t),l0)) < APP(t,SJ(j,l)),

(10)

It follows that the pair (a(t), u(SJ(j,l))) blocks the assignment, contradicting the stability of the university admissions solution.

The following lemma points out that stable schedules can be found in polynomial time for feasible 1D-nL-nT instances.

Lemma 10 Stable schedules always exist for feasible 1D-nL-nT instances.

Proof. A blocking pair (t, j) can be removed simply by swapping the blocking technician t and the disliked technician t0. Feasibility for J (t) is maintained because t0 > t, so Sl

t0 ≥ Stl, for

all levels l. Note that this reasoning only holds when we have one skill domain. It follows that stability can be attained by removing all blocking pairs in this way.

Remark 11 In nD-nL-nT(1-D Jobs), stable schedules can be constructed in polynomial time by following the procedure in Theorem 6.

3.2 Special case: nD-1L-2T

Let nD-1L-2T denote the set of instances in which jobs have always teams of two technicians. Our second main result is given in the following theorem.

Theorem 12 Constructing a feasible schedule in nD-1L-2T is NP-Hard.

Proof. The reduction is from the following variant of the three-dimensional matching prob-lem; see Garey and Johnson (1979).

Problem: Three-Dimensional Matching

Instance: An integer n. Three pairwise disjoint sets A = {a1, . . . , an}, B =

{b1, . . . , bn}, and C = {c1, . . . , cn}. A set X ⊆ A × B × C of triples.

Question: Does there exist a subset X0 ⊆ X of n triples, such that every element in A ∪ B ∪ C occurs in exactly one triple in X0?

Let us consider an arbitrary instance of the three-dimensional matching problem and trans-late it into a corresponding instance of our scheduling problem.

• For every element ai ∈ A, create a corresponding job Job(ai).

• For every element bj ∈ B, create a corresponding technician Tech(bj). • For every element ck∈ C, create a corresponding technician Tech(ck). • Set of skill domains D = {d(i, k)|i = 1, . . . , n, k = 1, . . . , n} ∪ {β, γ}

(11)

Skills and skill requirements are defined as follows: RQ(d)Job(a

i) = 1 for d ∈ {d(i, 1), . . . , d(i, n), β, γ}, 0 otherwise. (3)

STech(b(d)

j)= 1 for d ∈ {d(i, k)|(ai, bj, ck) ∈ X} ∪ {β}, 0 otherwise. (4)

STech(c(d)

k)= 0 for d ∈ {d(1, k), . . . , d(n, k), β}, 1 otherwise. (5)

We now show that YES answer to the scheduling question corresponds with a YES answer to the three-dimensional matching problem and vice-versa.

Assume that we are given a feasible schedule of teams |T (J ob(ai))| = 2, for all J ob(ai). Due

to the requirements in (3), we have: 1 = RQ(β)J ob(a

i)≤ S

(β)

T (J ob(ai))⇒ 1 ≤ T (J ob(ai)) ∩ T (T ech(B)) (6)

1 = RQ(γ)J ob(a

i)≤ S

(γ)

T (J ob(ai))⇒ 1 ≤ T (J ob(ai)) ∩ T (T ech(C)) (7)

Therefore we see that T (Job(ai)) = {Tech(bj), Tech(ck)}. According to the skill definitions

(5) we have STech(cd(i,k)

k)= 0. However the requirements (3) force the team T (J ob(ai)) to have skill

in domain d(i, k), so we must have Sd(i,k)Tech(b

j)= 1. Therefore by (4) we see that (ai, bj, ck) ∈ X.

Feasibility of the schedule implies that every technician is in exactly one team and every job is performed, hence this coincides with a YES answer in the three-dimensional matching problem. If a subset of the set X is given with the desired property in the three-dimensional matching problem, then the triples in the subset can be directly translated to teams and a feasible schedule is obtained. This simple argument shows that a YES answer to the three-dimensional matching problem leads to a YES answer to the scheduling question.

4

An ILP Approach to nD-nL-nT

In section 3.2 we have seen that 1L-2T is NP-Hard, and so is the general problem nD-nL-nT. Therefore we formulated an integer linear programming model. The model reassigns technicians to jobs with the hope that the blocking pairs disappear and no new blocking pairs are formed. We aim to obtain a feasible schedule with minimum degree of instability. Table 1 lists sets, indices, parameters and decision variables of the model.

(12)

Table 1: Sets, indices, parameters and variables of the reassignment model

Sets T set of all technicians

J set of all jobs

Φ set of blocking pairs, Φ ⊂ T × J Indices t, t0 technician index, t, t0∈ T

j, j0 job index, j, j0∈ J

Parameters T (j) set of technicians assigned to j, T (j) ⊆ T

I(j) set of interchangeable technician pairs of j, I(j) ⊆ T × T

T (j) total skill value of technicians in T (j), T (j)=Pt∈T (j)t

J (t) job to which t is currently assigned Binary Variables xtj indicates that t is assigned to j

zt indicates that t leaves the team of j and both t and j get worse

ξjt0t indicates that t is assigned j although t <jt0

γt(αt) indicates that contribution of t is increased (decreased)

yj(vj) indicates that the skill excess of j is increased (decreased)

maximize X (t,j)∈Φ (γt+ vj) − X t∈T zt− X j∈J   X (t0t)∈I(j):t< jt0 ξjt0t   subject to: X j∈J xtj ≤ 1 , ∀t ∈ T (8) X t∈T Stxtj ≥ RQj , ∀j ∈ J (9) X j<tJ (t) xtj ≤ |J |αt , ∀t ∈ T (10) X J (t)<tj xtj ≥ γt , ∀t ∈ T (11) X t∈T txtj− T (j) ≤ M yj , ∀j ∈ J (12) T (j)− X t∈T txtj ≥ vj , ∀j ∈ J (13) yj + vj ≤ 1 , ∀j ∈ J (14) αt+ yj ≤ 1 , ∀(t, j) : J (t) <tj, (t, j) 6∈ Φ (15) X j0< tj xtj0 + yj ≤ 1 , ∀(t, j) : “j likes t”, (t, j) 6∈ Φ (16) αt+ yJ (t)− 1 ≤ zt , ∀t ∈ T (17) X j0< t0j xt0j0 + xtj ≤ 1 + ξjt0t , ∀(t, t0) ∈ I(j) : t <j t0, ∀j ∈ J, (18) xtj, yj, vj, αt, γt, zt, ξjt0t∈ {0, 1} , ∀t ∈ T, j ∈ J

Constraints (8) and (9) ensure the feasibility of the solution. Each technician can be assigned to at most one team and technicians assigned to a job must satisfy the skill requirements of that

(13)

Table 2: Reassignment results of schedules

|D| |L| No.Instances INITIAL (%) FINAL (%)

3 2 20 70 100 5 4 103 1.9 75.7 6 6 182 33.5 63.2 8 3 234 30.0 37.6 15 4 576 4.0 83.7 20 3 335 3.3 75.2 job.

Let t ∈ T and j ∈ J . If the contribution of a technician t to the assigned job decreases, then it is captured by αt= 1 in constraints (10). If the value of γtcomes out as 1, then constraint (11)

ensures that technician t is assigned to another job offering higher contribution level. Similarly, if the skill value of job j increases, then it is captured by yj = 1 in constraint (12). If the value

of vj comes out as 1, then constraint (13) ensures that job j is assigned to another team of technicians having less skill value. Clearly, skill value of a job either increases or decreases and this is stated in constraints (14).

Constraints (15) and (16) are related to the cases in which blocking pairs may be constructed. In those cases either a technician likes a job or a job likes a technician but a blocking pair is not constructed yet. In such cases, if the situations of both technician and job get worse, than it is likely that they become a blocking pair and hence those cases are forbidden.

Another case that may lead to a blocking pair is separating a technician from his current job and having worse situations for both technician and job in the new assignment. Then they may desire being assigned to each other and form a blocking pair. This case is captured by zt= 1 in constraints (17) and in the objective positive values for zt are penalized.

As it is mentioned in section 2.5, jobs can compare the technicians pairwise and the cases mentioned in remark 4 are punished in constraints (18), since they lead to blocking pairs.

4.1 Computational Results

In order to see how our reassignment procedure decreases the degree of instability, we con-ducted experiments with different number of skill domain and skill levels. Table 2 lists the instances by specifying number of skill domains, number of skill level, number of instances in the first three columns. In total 1450 instances are constructed to test the reassignment pro-cedure. The initial schedules of these instances are built using the combinatorial algorithm introduced by Hurkens (2009). The last two columns of Table 2 show the percentage of stable schedules before and after the reassignment. Our IP model found stable schedules in all in-stances when |D| = 3 and |L| = 2. However in instance group with |D| = 8 and |L| = 3, it can not decrease the degree of instability as it does in other instance groups.

(14)

5

Conclusions and Future Research

In this paper, we studied the stability of multi-skill workforce schedules. The preference structure of technicians and jobs are defined in such a way that skill efficiency is cared for. In general, the problem of constructing stable schedules is shown to be NP-Hard. Some special cases are analyzed and some of them turned out to be solvable in polynomial time. An Integer Linear Programming model is proposed for the general case to decrease the degree of instability as much as possible.

The following points are still open for further studies:(1) Does there exist a certificate to show that for a given problem instance stability can not be attained? (2) If a problem instance cannot have a stable schedule, what is the minimum achievable degree of instability? (3)Are there any other special cases in which stable schedules always exist and can be constructed in polynomial time?

In stable schedules, expert technicians are assigned to easy jobs if their expertise is not needed. If some uncertainty is introduced to our scheduling problem by having unexpected job arrivals just before the basic schedule starts, then the experts who are busy with easy jobs can be assigned to those new jobs. From this point of view, stability seems a property of a schedule contributing to robustness.

6

Acknowledgments

Thanks are due to Gerhard J. Woeginger for helpful discussions and advices in the complexity results.

References

Baïou, M., and Balinski, M., 2000, “The stable admissions polytope", Mathematical Program-ming, Vol. 87, No:3, pp. 427-439.

Eriksson, K. and Häggström, O., 2008, “Instability of matchings in decentralized markets with various preference structures", International Journal of Game Theory, Vol. 36, pp. 409-420. Gale, D. and Shapley, L.S., 1962, “College admissions and the stability of marriage", The

Amer-ican Mathematical Monthly, Vol. 69, No:1, pp. 9-15.

Gale, D. and Sotomayor, M., 1985, “Some remarks on the stable matching problem", Discrete Applied Mathematics, Vol. 11, pp. 223–232.

Garey, M.R. and Johnson, D.S., 1979, ‘Computers and Intractability: A Guide to the Theory of NP-Completeness, Freeman, San Francisco, pp. 221.

Hurkens, C.A.J., 2009, “Incorporating the strength of MIP modeling in schedule construction", RAIRO Operations Research, Vol. 43, pp. 409-420.

(15)

Working Papers Beta 2009 - 2010

nr. Year Title Author(s)

335 333 332 331 330 329 328 327 326 325 324 323 322 2010 2010 2010 2010 2010 2010 2010 2010 2010 2010 2010 2010

Attaining stability in multi-skill workforce scheduling

An exact approach for relating recovering surgical patient workload to the master surgical schedule

Efficiency evaluation for pooling resources in health care

The Effect of Workload Constraints in Mathematical Programming Models for Production Planning

Using pipeline information in a multi-echelon spare parts inventory system

Reducing costs of repairable spare parts supply systems via dynamic scheduling

Identification of Employment Concentration and Specialization Areas: Theory and Application A combinatorial approach to multi-skill workforce scheduling

Stability in multi-skill workforce scheduling

Maintenance spare parts planning and control: A framework for control and agenda for future research

Near-optimal heuristics to set base stock levels in a two-echelon distribution network

Inventory reduction in spare part networks by selective throughput time reduction

The selective use of emergency shipments for service-contract differentiation

Murat Firat, Cor Hurkens

P.T. Vanberkel, R.J. Boucherie, E.W. Hans, J.L. Hurink, W.A.M. van Lent, W.H. van Harten

Peter T. Vanberkel, Richard J. Boucherie, Erwin W. Hans, Johann L. Hurink, Nelly Litvak

M.M. Jansen, A.G. de Kok, I.J.B.F. Adan

Christian Howard, Ingrid Reijnen, Johan Marklund, Tarkan Tan

H.G.H. Tiemessen, G.J. van Houtum

F.P. van den Heuvel, P.W. de Langen, K.H. van Donselaar, J.C. Fransoo

Murat Firat, Cor Hurkens

Murat Firat, Cor Hurkens, Alexandre Laugier

M.A. Driessen, J.J. Arts, G.J. v. Houtum, W.D. Rustenburg, B. Huisman

R.J.I. Basten, G.J. van Houtum

M.C. van der Heijden, E.M. Alvarez, J.M.J. Schutten

E.M. Alvarez, M.C. van der Heijden, W.H. Zijm

(16)

321 320 319 318 317 316 315 314 313 2010 2010 2010 2010 2010 2010 2010 2010 2010 2010

Heuristics for Multi-Item Two-Echelon Spare Parts Inventory Control Problem with Batch Ordering in the Central Warehouse

Preventing or escaping the suppression mechanism: intervention conditions

Hospital admission planning to optimize major resources utilization under uncertainty

Minimal Protocol Adaptors for Interacting Services

Teaching Retail Operations in Business and Engineering Schools

Design for Availability: Creating Value for Manufacturers and Customers

Transforming Process Models: executable rewrite rules versus a formalized Java program Getting trapped in the suppression of

exploration: A simulation model

A Dynamic Programming Approach to Multi-Objective Time-Dependent Capacitated Single Vehicle Routing Problems with Time Windows

B. Walrave, K. v. Oorschot, A.G.L. Romme

Nico Dellaert, Jully Jeunet.

R. Seguel, R. Eshuis, P. Grefen.

Tom Van Woensel, Marshall L. Fisher, Jan C. Fransoo.

Lydie P.M. Smets, Geert-Jan van Houtum, Fred Langerak.

Pieter van Gorp, Rik Eshuis.

Bob Walrave, Kim E. van Oorschot, A. Georges L. Romme

S. Dabia, T. van Woensel, A.G. de Kok

312 2010

Tales of a So(u)rcerer: Optimal Sourcing Decisions Under Alternative Capacitated Suppliers and General Cost Structures

Osman Alp, Tarkan Tan

311 2010

In-store replenishment procedures for perishable inventory in a retail environment with handling costs and storage constraints

R.A.C.M. Broekmeulen, C.H.M. Bakx

310 2010 The state of the art of innovation-driven business

models in the financial services industry

E. Lüftenegger, S. Angelov, E. van der Linden, P. Grefen

309 2010 Design of Complex Architectures Using a Three

Dimension Approach: the CrossWork Case R. Seguel, P. Grefen, R. Eshuis

308 2010 Effect of carbon emission regulations on

transport mode selection in supply chains

K.M.R. Hoen, T. Tan, J.C. Fransoo, G.J. van Houtum

307 2010 Interaction between intelligent agent strategies

for real-time transportation planning

Martijn Mes, Matthieu van der Heijden, Peter Schuur

306 2010 Internal Slackening Scoring Methods Marco Slikker, Peter Borm, René van den

Brink

305 2010 Vehicle Routing with Traffic Congestion and

Drivers' Driving and Working Rules

A.L. Kok, E.W. Hans, J.M.J. Schutten, W.H.M. Zijm

304 2010 Practical extensions to the level of repair

analysis

R.J.I. Basten, M.C. van der Heijden, J.M.J. Schutten

(17)

and Critical Link in Global Supply Chain Performance

302 2010

Capacity reservation and utilization for a manufacturer with uncertain capacity and demand

Y. Boulaksil; J.C. Fransoo; T. Tan

300 2009 Spare parts inventory pooling games F.J.P. Karsten; M. Slikker; G.J. van

Houtum

299 2009 Capacity flexibility allocation in an outsourced

supply chain with reservation Y. Boulaksil, M. Grunow, J.C. Fransoo

298 2010 An optimal approach for the joint problem of level

of repair analysis and spare parts stocking

R.J.I. Basten, M.C. van der Heijden, J.M.J. Schutten

297 2009

Responding to the Lehman Wave: Sales

Forecasting and Supply Management during the Credit Crisis

Robert Peels, Maximiliano Udenio, Jan C. Fransoo, Marcel Wolfs, Tom Hendrikx

296 2009

An exact approach for relating recovering surgical patient workload to the master surgical schedule

Peter T. Vanberkel, Richard J. Boucherie, Erwin W. Hans, Johann L. Hurink,

Wineke A.M. van Lent, Wim H. van Harten

295 2009

An iterative method for the simultaneous optimization of repair decisions and spare parts stocks

R.J.I. Basten, M.C. van der Heijden, J.M.J. Schutten

294 2009 Fujaba hits the Wall(-e) Pieter van Gorp, Ruben Jubeh, Bernhard

Grusie, Anne Keller

293 2009 Implementation of a Healthcare Process in Four

Different Workflow Systems

R.S. Mans, W.M.P. van der Aalst, N.C. Russell, P.J.M. Bakker

292 2009 Business Process Model Repositories -

Framework and Survey

Zhiqiang Yan, Remco Dijkman, Paul Grefen

291 2009 Efficient Optimization of the Dual-Index Policy

Using Markov Chains

Joachim Arts, Marcel van Vuuren, Gudrun Kiesmuller

290 2009 Hierarchical Knowledge-Gradient for Sequential

Sampling

Martijn R.K. Mes; Warren B. Powell; Peter I. Frazier

289 2009

Analyzing combined vehicle routing and break scheduling from a distributed decision making perspective

C.M. Meyer; A.L. Kok; H. Kopfer; J.M.J. Schutten

288 2009 Anticipation of lead time performance in Supply

Chain Operations Planning

Michiel Jansen; Ton G. de Kok; Jan C. Fransoo

287 2009 Inventory Models with Lateral Transshipments: A

Review

Colin Paterson; Gudrun Kiesmuller; Ruud Teunter; Kevin Glazebrook

286 2009 Efficiency evaluation for pooling resources in

health care

P.T. Vanberkel; R.J. Boucherie; E.W. Hans; J.L. Hurink; N. Litvak

285 2009 A Survey of Health Care Models that Encompass

Multiple Departments

P.T. Vanberkel; R.J. Boucherie; E.W. Hans; J.L. Hurink; N. Litvak

284 2009 Supporting Process Control in Business

Collaborations

S. Angelov; K. Vidyasankar; J. Vonk; P. Grefen

283 2009 Inventory Control with Partial Batch Ordering O. Alp; W.T. Huh; T. Tan 282 2009 Translating Safe Petri Nets to Statecharts in a R. Eshuis

(18)

Structure-Preserving Way

281 2009 The link between product data model and

process model J.J.C.L. Vogelaar; H.A. Reijers

280 2009 Inventory planning for spare parts networks with

delivery time requirements I.C. Reijnen; T. Tan; G.J. van Houtum

279 2009 Co-Evolution of Demand and Supply under

Competition B. Vermeulen; A.G. de Kok

278

277 2010

2009

Toward Meso-level Product-Market Network Indices for Strategic Product Selection and (Re)Design Guidelines over the Product Life-Cycle

An Efficient Method to Construct Minimal Protocol Adaptors

B. Vermeulen, A.G. de Kok

R. Seguel, R. Eshuis, P. Grefen

276 2009 Coordinating Supply Chains: a Bilevel

Programming Approach Ton G. de Kok, Gabriella Muratore

275 2009 Inventory redistribution for fashion products

under demand parameter update G.P. Kiesmuller, S. Minner

274 2009

Comparing Markov chains: Combining

aggregation and precedence relations applied to sets of states

A. Busic, I.M.H. Vliegen, A. Scheller-Wolf

273 2009 Separate tools or tool kits: an exploratory study

of engineers' preferences

I.M.H. Vliegen, P.A.M. Kleingeld, G.J. van Houtum

272 2009

An Exact Solution Procedure for Multi-Item Two-Echelon Spare Parts Inventory Control Problem with Batch Ordering

Engin Topan, Z. Pelin Bayindir, Tarkan Tan

271 2009 Distributed Decision Making in Combined

Vehicle Routing and Break Scheduling

C.M. Meyer, H. Kopfer, A.L. Kok, M. Schutten

270 2009

Dynamic Programming Algorithm for the Vehicle Routing Problem with Time Windows and EC Social Legislation

A.L. Kok, C.M. Meyer, H. Kopfer, J.M.J. Schutten

269 2009 Similarity of Business Process Models: Metics

and Evaluation

Remco Dijkman, Marlon Dumas, Boudewijn van Dongen, Reina Kaarik, Jan Mendling

267 2009 Vehicle routing under time-dependent travel

times: the impact of congestion avoidance A.L. Kok, E.W. Hans, J.M.J. Schutten

266 2009 Restricted dynamic programming: a flexible

framework for solving realistic VRPs

J. Gromicho; J.J. van Hoorn; A.L. Kok; J.M.J. Schutten;

Referenties

GERELATEERDE DOCUMENTEN

n Dinamiese/ballistiese aksie moet gebruik word; Die massa moet na die voorste voet verplaas word;. Die arms moet gestrek wees en die polsgewrigte ferro met die

The results on the real datasets in the orthologous space (Table S8 (B)) were rather poor and similar to what was observed for the synthetic data: when the dataset contains too

Teaching and learning the language skills (listening, speaking, reading and writing) are means of achieving the dimension targets. Examples of skill outcomes for

If, similar to the evening shifts, front agents during the day assign their idle time to back tasks such as the handling of Q-messages, staffing requirements drop for the back

We see that the equivalent problems to the vehicle refueling problem in lot sizing and in network flow are also solved in O(n log n) time.. The ques- tion coming to mind is that “Is

The immediate example is a matching of active skill and passive load in which an active skill (technician group of a team) has more technicians than needed for the passive

Keywords: stability, marriage problem, multi-skill workforce schedules, stable assignments, instability, blocking pair, integer programming model..

The factors that were pointed out as most important in both the case study and the survey are considered key factors in integral workforce planning for the manufacturing