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
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
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.
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
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
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,
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.
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.
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)),
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} ∪ {β, γ}
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.
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
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.
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.
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
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
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
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;