On The Capacitated Scheduling Problemwith Conflict Jobs Minh Hoàng Hà and Duy Manh Vu ORLab, Faculty of Information Technology VNU University of Engineering and Technology Hanoi, Vietnam
Trang 1On The Capacitated Scheduling Problem
with Conflict Jobs
Minh Hoàng Hà and Duy Manh Vu
ORLab, Faculty of Information Technology
VNU University of Engineering and Technology
Hanoi, Vietnam minhhoang.ha@vnu.edu.vn
manhvdm@gmail.com
Yakov Zinder School of Mathematical and Physical Sciences University of Technology Sydney Sydney, Australia yakov.zinder@uts.edu.au
Trung Thanh Nguyen Department of Informatics Haiphong University Haiphong, Vietnam ttnguyen.cs@gmail.com
Abstract—The paper is concerned with scheduling jobs on
parallel identical machines under the restrictions imposed by
a conflict graph The nodes of this conflict graph represent jobs
and each edge indicates that the jobs associated with the nodes,
incident to this edge, can not be processed concurrently The
jobs have a common due date and each job has the associated
weight The goal is to maximise the total weight of jobs which
completion times do not exceed the due date The considered
scheduling model was motivated by the problem arising in the
telecommunication industry The paper identifies polynomially
solvable and NP-hard particular cases and presents two mixed
integer linear programming formulations together with their
comparison by means of computational experiments
Index Terms—Scheduling, conflict jobs, complexity, mixed
integer linear programming, approximation algorithms
I INTRODUCTION
Consider a set of n jobs J = {1, , n} which are to be
processed on m > 1 parallel identical machines Each job
j ∈ J requires pjunits of processing time, can be assigned for
processing to only one of the machines and must be processed
by this machine without preemptions, i.e once a machine
starts processing a job it continues this processing without
interruptions until its completion
A schedule σ specifies for each job j its starting time Sj(σ)
Since the preemptions are not allowed, the completion time of
job j in this schedule is
Cj(σ) = Sj(σ) + pj Any two jobs j and g, assigned for processing to the same
machine, must satisfy one of the following inequalities: either
Sj(σ) ≥ Cg(σ) or Sg(σ) ≥ Cj(σ)
The restriction on what jobs can be processed in parallel
when are assigned to different machines is given by a conflict
graph G(J, E), where the set of nodes is the set of jobs and
each edge [j, g] designates that j and g can not be processed
concurrently In other words, if [j, g] ∈ E, then in each
schedule σ, either Sj(σ) ≥ Cg(σ) or Sg(σ) ≥ Cj(σ) even
if j and g are assigned to different machines
The jobs have the common due date T and each job j has the associated weight wj The goal is to construct a schedule with the largest value of
F (σ) =X
j∈J
where
Uj(t) =
wj if t ≤ T
0 otherwise .
In what follows, if it is clear what schedule is considered, instead of the notation Sj(σ), Cj(σ) will be used Sj, Cj The considered scheduling problem has been motivated by
a joint project with a mobile network operator This operator needs to run various computer programs, which are referred to
as Change Requests The company has a team of technicians Each of these technicians can execute at most one Change Request at a time on her/his computer without interruption These Change Requests adjust configuration or some param-eters of the network and each affects a pre-determined group
of mobile subscribers The Change Requests have different priorities (which can be modelled by associating with each Change Request a certain nonnegative weight) Any two Change Requests that affect two parts of the network which have common elements cannot be executed concurrently The programs must be run only during the working hours So, it may be not possible to execute all the programs during one shift
The scheduling model with parallel identical machines and
a conflict graph has many other applications and has been intensively studied Most of these publications are concerned with the makespan objective function
Cmax(σ) = maxj∈JCj(σ)
To the best of authors’ knowledge, none of these publications considered the objective function (1) Since the makespan minimisation problem is NP-hard even if there are only two machines and no conflict graph [1], the major efforts have been focused on determining the borderline separating the NP-hard cases and the cases for which polynomial-time algorithms are known as well as on constructing approximation algorithms and the analysis of their performance
978-1-7281-3003-3/19/$31.00 ©2019 IEEE
Trang 2The considered particular cases were specified by
restric-tions on the jobs’ processing times, the number of machines,
and the conflict graph Thus, for the case of general conflict
graph, [2] proves that if m ≥ 3, then the problem is NP-hard
in the strong sense even when pj = 1 for all j ∈ J Jobs
j with pj = 1 are commonly referred to in the literature on
scheduling as the unit execution time (UET) jobs In contrast to
the case of m ≥ 3, the problem with UET jobs is polynomially
solvable for m = 2 by constructing a maximum matching
in the complement to the conflict graph [2] Furthermore, if
m = 2, then the makespan minimisation problem is
polynomi-ally solvable if pj∈ {1, 2}, for all j ∈ J, [3] The makespan
minimisation problem with UET jobs has been also considered
in [4], [5], [6], [7], [8] As has been proven in [4], this problem
is NP-hard for the bipartite graphs, cographs, and for the
interval graphs This problem is also NP-hard for permutation
graphs [8] and for complements comparability graphs [6]
In contrast, the existence of polynomial-time algorithms for
the makespan minimisation problem with UET jobs has been
proven for trees [2] and for split graphs [6] and [4] An
approximation algorithm with a performance guarantee can
be found in [3] together with the references to other similar
results
The remainder of this paper is organized as follows Section
II presents some NP-hardness results together with particular
cases for which can be proven the existence of a
polynomial-time algorithms Two mixed integer linear programs are
pro-posed in Section IV Their testing and comparison by means of
computational experiments can be found in Section V Section
VI presents conclusions and suggests the directions of further
research
II COMPUTATIONALCOMPLEXITY
In this section we focus on the approximability of the
CSPCJ problem We first give a formal definition of an
approximation algorithm for a maximization problem
Definition 1: Let M be a maximization problem and α ∈
(0, 1] be a real value, an α-approximation algorithm A for M
is a polynomial-time algorithm that for every input x of M
produces a solution A(x) whose value is at least α · OP T (x),
where OP T (x) is the optimal value for x
We now prove the first hardness of approximation result for
the CSPCJ problem It turns out that if we allow the number
of machines to be arbitrary large, CSPCJ is even hard to solve
approximately
Theorem 1: Unless P = NP, there is no n1−
-approximation algorithm for the scheduling problem, for any
fixed constant > 0, even when all the jobs have same weight
and length
Proof We use a gap-preserving reduction [9] from
the NP-complete problem MAXIMUM INDEPENDENT SET
(MIS), which asks, given an (undirected) graph G = (V, E),
to find a subset V0 ⊆ V of maximal size such that no two
vertices in V0 are adjacent It is well-known that MIS does
not admit a n1−-approximation algorithm, unless P = NP
[10] Let G = (V, E) be a problem instance of MIS, we
create a corresponding instance I of the scheduling problem as follows There is n = |V | identical machines and n identical jobs, each corresponds to a vertex in V Two jobs i, j are
in conflict if and only if they are connected by an edge
in E We prove that any independent set V0 of size n0 of
G will yield a job schedule of size n0 to the instance I, and vice-versa Indeed, let V0 be an independent set of size
n0, then by allocating n0 jobs corresponding to vertices in
V0 to arbitrary n0 machines (one to each single machine),
we obtain a schedule S of size exactly n0 Therefore, the inapproximability of MIS will immediately transfer to our scheduling problem, and the theorem is complete q
By a greedy algorithm one can prove that the CSPCJ problem can be approximated to within a factor of O(1/m) Due to the space constraint we omit the proof here and leave
it to a full version of the paper
Theorem 2:If There is a O(1/m)-approximation algorithm for the CSPCJ problem with unit-length jobs
III SOLVABLECASES
In the following, we will show that the problem CSPCJ with three machines is tractable if all the jobs have same weight and unit length
Theorem 3:Suppose that all the jobs have the same weight and length The CSPCJ problem can be solved in polynomial time if there are only two machines
Proof The idea is to show the equivalence between the CSPCJ problem and the maximum matching problem on general graph for which there is already a polynomial-time algorithm with running time O(|V |2 · |E|) (see Edmonds’ blossom algorithm [11]) Indeed, let ¯G = (V, ¯E) be the com-plement1of the graph G = (V, E), in which an edge (i, j) ∈ ¯E indicates the non-conflict between these two vertices i and
j Now, suppose that π is an optimal assignment of jobs to machines in which i1, i2, , ik are the jobs processed in this order by the machine 1, and j1, j2, , jl are the jobs processed in this order by the machine 2, where k, l are the positive integers such that max{k, l} ≤ T Without loss of generality, one can assume that there is an index ` such that the first jobs ir, jr are non-conflict for all r ≤ `, and ir, js
are in conflict for all r, s ≥ ` (see the example below where the value of ` is 8) Then M = {(i1, j1), , (i`, j`)} forms
a matching on the graph ¯G It is easy to see that M must be
a maximum matching on ¯G If not, there exists a matching
M0 with |M0| > |M|, and M0 induces a partial assignment
of jobs to machines By adding greedily remaining jobs to machines we obtain an assignment of size greater than k + l, which contradicts the optimality of π Hence, solving CSPCJ is equivalent to finding a maximum matching on the complement
A special case is when the processing times are taken from the domain {1, 2}, and it remains open whether the problem can be solved efficiently in this case
1 Note that some articles call this graph ¯ G agreement graph and use it instead of G.
Trang 3Machine 1
Machine 2
i 1
j 1
i 2 i 8
j 2 j 8
i 9 i 10
j 9 j 10
Figure 1: An example of an optimal assignment of jobs to
machines The jobs (i1, j1), (i2, j2), , (i8, j8) are pair-wise
non-conflict, while the remaining jobs i9, i10, j9, j10 conflict
with each other
Conjecture 1: The CSPCJ problem can be solved in
poly-nomial time if there are only two machines with processing
times pj∈ {1, 2}
IV MATHEMATICALPROGRAMMINGFORMULATIONS
A First formulation
Let K = {1, 2, , |K|} be the set of positions that a job
can be processed on a machine The cardinality of this set |K|
can be estimated by T /tmin where tmin = mini∈Jpi The
formulation denoted by F1 and uses the following variables:
• xijk: binary variables set to 1 if job i is done by machine
j at kthposition
• ti: starting time of job i
• zjk : the completion time of a job at kth position by
machine j
• yk: binary variables (k = (i, j) ∈ C) used to handle
conflict constraint It is set to 1 if i is finished before
starting time of j, and set to 0, otherwise
The problem can be formulated as:
(F1) Maximize X
i∈J
X
j∈M
X
k∈K
qixijk (2)
s.t ti+ pi≤ T + B(1−X
j∈M
X
k∈K
xijk) ∀i ∈ J (3) X
j∈M
X
k∈K
X
i∈J
xijk ≤ 1 ∀j ∈ M, k ∈ K (5)
zj(k−1)≤ zjk ∀j ∈ M, k ∈ K, k > 1 (6)
ti+ pi≤ zjk+ B(1 − xijk) ∀i ∈ J, j ∈ M, k ∈ K (7)
ti≥ zj(k−1)− B(1 − xijk) ∀i ∈ J, j ∈ M, k ∈ K (8)
ti+ pi ≤ tj+ Byk ∀k = (i, j) ∈ C (9)
tj+ pj≤ ti+ B(1 − yk) ∀k = (i, j) ∈ C (10)
xijk∈ {0, 1} ∀i ∈ J, j ∈ M, k ∈ K (11)
yk∈ {0, 1} ∀k = (i, j) ∈ C (12)
zjk∈ R+ j ∈ M, k ∈ K (14) Objective function (2) is to maximize the number of complete
jobs with priorities as highest as possible Constraints (3)
ensure the machine’s capacity when they enforce every job
must be finished before T Constraints (4) imply each job is
processed on no more than one machine at only one position while constraints (5) make sure that each machine can do at most once job at one position Constraints (6) indicate a job must be complete after its precedence Constraints (7) and (8) express the relationship among z-variables and the others Conflict constraints are satisfied by constraints (9) and (10) Finally, Constraints (11)-(14) define variables’ domain In this formulation, B is a very large number and can be estimated
by the summation of the capacity and the execution time of all jobs which have a conflict with other jobs The number of variables in F1 is O(|J |.|M |.|K|+|C|), and that of constraints
is O(|J |.|M |.|K| + |C|)
B Second formulation
We now present the second MIP model that is denoted by F2 for the problem It uses three types of variables as follows:
• xij : binary variables equal to 1 if job i is done by machine j
• ti: starting time of job i
• yij: binary variables equal to 1 if job i is completed before starting time of job j
The problem can be stated as:
(F2) Maximize X
i∈J
X
j∈M
s.t ti+ pi≤ T +B(1 −X
j∈M
xij) ∀i ∈ J (16) X
j∈M
ti+ pi ≤ tj+ B(1−yij) ∀i, j ∈ J, i 6= j (18)
yij+ yji≥ xim+ xjm− 1 ∀i, j ∈ J, i 6= j, m ∈ M (19)
yij+ yji≥ 1 ∀(i, j) ∈ C (20) xij ∈ {0, 1} ∀i ∈ J, j ∈ M (21)
yij ∈ {0, 1} ∀i, j ∈ J (23) Similarly to (F1), constraints (16) imply capacity require-ments Constraints (17) ensure that each job is processed
on no more than one machine Constraints (18) express the relationship between variables t and y Constraints (19) say that if two jobs i and j are processed on the same machine, one job must be completed before starting time of another They are used to avoid the overlap among jobs processed on the same machine Conflict constraints are assured by constraints (20) Constraints (21)-(23) define variables’ domain Similarly
to F1, B in Constraints (17) and (19) is a very large number and can be estimated by the summation of the capacity and the execution time of all jobs which have a conflict with other jobs The number of variables in the formulation (F2)
is O(|J |2 + |M |.|J |), while the number of constraints is O(|J |2.|M | + |C|)
Trang 4V EXPERIMENTALRESULTS
In this section, we discuss our computational experiments
with the models of Sections IV The mixed integer
program-ming models are implemented with C++ and solved using
CPLEX 12.8 with default settings All experiments are done
on a server with an Intel® Xeon® E5620 2.40 Ghz processor,
running Windows with 1.5-GHz Ram and 1-hour running time
limits for each instance We randomly generate instances with
following parameters:
• The number of jobs n is set to {12, 16}
• The number of machines m is set to {2, 4}
• The capacity of each machine T is set to {15, 30, 60}
• The priority of each jobs is set to a random integer from
1 to 5
• Two jobs are randomly considered conflict such that
the number of conflict pairs is equal to r.n where
r ∈ {0.2, 0.5, 1}
• The processing time of each job is a random integer from
dT /4e to bT /2c (setting 1) or from 1 to bT /2c (setting
2)
Totally, we have 72 instances, each is denoted by
Cn-m-r-T -s where n, m, T and r are self-defined while s ∈ {1, 2}
implies the setting related to the generation of jobs’ processing
time For example, C12-2-0.2-15-1 represents an instance with
12 jobs, 2 machines, the ratio of the number of conflict pairs
over the number of jobs equal to 0.2, the capacity set to 15, and
the first setting of processing times Tables I and II report the
results on the instances with 12 and 16 jobs, respectively For
each model (F1 or F2), from left to right, the columns present
the number of unscheduled jobs Nu, objective value Obj,
gap, and running time of each model For F1, we additionally
report the maximum number of possible positions K on each
machine Some runs which do not reach the time limit of
3600 seconds and nevertheless have not obtained the optimal
solution raise an “out of memory” exception In two columns
"Gap" and "T ime", the numbers in bold represent the better
formulation
The obtained results show that both formulations can solve
optimally instances up to 16 jobs and 4 machines Our main
observation is that F1 can dominate F2 only on the instances
with the first setting of the processing time while on the second
setting F2 performs better Over 72 instances, F1 can solve 42
instances while F2 can solve 55 instances successfully F1 can
handle 11 instances that F2 cannot All of these 11 instances
are generated with the first setting of the processing time This
can be explained by the fact that in this setting, the number of
possible positions on a machine K is relatively small (only 3
or 4) leading to less number of variables in the formulation F1
The results also show that the instances become harder when
the number of jobs increases But the hardness of the instances
does not necessarily depend on the number of machines
The instances with 4 machines are successfully solved more
than ones with 2 machines And finally, we observe that the
instances tend to be easier if more jobs are done in the solution
(See columns N in Tables I and II)
K N u Obj Gap T ime N u Obj Gap T ime C12-2-0.2-15-1 3 6 26 0 0.02 6 26 0 2478.93 C12-2-0.2-15-2 12 3 35 20 3057.97 3 35 0 66.05 C12-2-0.2-30-1 3 7 24 0 0.20 7 24 0 122.69 C12-2-0.2-30-2 12 4 27 22.22 3600.00 4 27 0 21.01 C12-2-0.2-60-1 3 7 20 0 1.08 7 20 0 42.21 C12-2-0.2-60-2 12 1 38 2.63 3600.01 1 38 0 23.72 C12-2-0.5-15-1 3 6 23 0 0.01 6 23 0 1189.53 C12-2-0.5-15-2 12 3 29 27.57 3600.02 3 29 0 19.29 C12-2-0.5-30-1 3 6 23 0 0.06 6 23 0 19.72 C12-2-0.5-30-2 12 7 23 73.91 3600.00 7 23 0 86.33 C12-2-0.5-60-1 4 6 24 0 48.62 6 24 0 38.29 C12-2-0.5-60-2 12 1 40 2.5 3600.01 1 40 0 56.31 C12-2-1.0-15-1 3 6 25 0 0.01 6 25 0 1062.62 C12-2-1.0-15-2 12 1 39 2.56 3600.02 1 39 0 509.22 C12-2-1.0-30-1 3 6 27 0 0.02 6 27 0 504.24 C12-2-1.0-30-2 7 5 24 36.24 3600.01 4 24 0 778.14 C12-2-1.0-60-1 4 6 26 0 29.36 6 26 0 6.26 C12-2-1.0-60-2 12 1 35 5.71 3600.01 1 35 0 15.27 C12-4-0.2-15-1 3 0 37 0 0.03 0 37 0 0.06 C12-4-0.2-15-2 12 0 36 0 0.34 0 36 0 0.06 C12-4-0.2-30-1 3 2 38 0 182.62 2 38 0 131.51 C12-4-0.2-30-2 12 0 34 0 0.13 0 34 0 0.07 C12-4-0.2-60-1 4 2 33 9.09 3600.01 2 33 0 71.06 C12-4-0.2-60-2 12 0 36 0 0.19 0 36 0 0.10 C12-4-0.5-15-1 3 0 37 0 0.07 0 37 0 0.09 C12-4-0.5-15-2 5 1 38 2.63 3600.00 1 38 0 42.00 C12-4-0.5-30-1 3 1 30 0 37.39 1 30 0 8.62 C12-4-0.5-30-2 12 0 38 0 0.21 0 38 0 0.09 C12-4-0.5-60-1 4 1 37 2.70 3600.01 1 37 0 20.29 C12-4-0.5-60-2 12 0 31 0 0.13 0 31 0 0.10 C12-4-1.0-15-1 3 0 41 0 0.14 0 41 0 0.09 C12-4-1.0-15-2 7 0 36 0 0.94 0 36 0 0.13 C12-4-1.0-30-1 3 2 30 0 17.98 2 30 0 1.92 C12-4-1.0-30-2 12 0 33 0 0.53 0 33 0 0.13 C12-4-1.0-60-1 3 3 31 0 52.68 3 31 0 3.65 C12-4-1.0-60-2 12 1 24 0 1.57 1 24 0 0.73
Table I: Detailed results on the instances with 12 jobs
VI CONCLUSION ANDDISCUSSION
We have studied in this paper an interesting variant of the scheduling problem when some conflicting jobs cannot
be scheduled concurrently on different machines, and the available capacity on each machine is limited The objective here is not to minimize the makespan, but to maximize the total weights of finished jobs To the best of our knowledge, this is the first time such a scheduling problem has been studied We have shown the first hardness results as well
as the approximability and the solvability of the problem for some classes of special conflict graphs At the heart of our contribution, we introduce the two mixed integer linear programming models to formulate the problem and develop first exact methods The computational results on randomly generated instances show that our exact methods based on two models can solve instances with 16 jobs to optimality And we recommend to use the first formulation (F1) when the number of possible jobs that can be done on a machine
is no greater than 4 For other cases, the second formulation (F2) is recommended
Our work raises many interesting open questions for future works and we would like to mention below some of them
Trang 5Instance F1 F2
K N u Obj Gap T ime N u Obj Gap T ime
C16-2-0.2-15-1 3 10 24 0 0.01 10 24 82.47 3599.99
C16-2-0.2-15-2 15 7 35 57.14 3600.01 6 35 31.43 3600.01
C16-2-0.2-30-1 3 10 28 0 0.02 10 28 50 3600.01
C16-2-0.2-30-2 15 5 39 20.51 3451.76 5 39 7.69 3600.01
C16-2-0.2-60-1 4 10 22 0 89.62 11 22 0 1506.69
C16-2-0.2-60-2 16 4 36 25.00 2886.27 5 36 8.33 3600.01
C16-2-0.5-15-1 3 10 23 0 0.01 10 23 78.09 3600.00
C16-2-0.5-15-2 15 5 38 26.32 3600.01 5 38 7.89 3600.01
C16-2-0.5-30-1 3 10 27 0 0.02 10 27 14.81 3600.01
C16-2-0.5-30-2 16 5 39 15.38 3584.62 4 39 0 2018.24
C16-2-0.5-60-1 4 10 25 0 168.87 10 25 0 2438.46
C16-2-0.5-60-2 16 6 37 24.32 3599.99 6 37 0 126.64
C16-2-1.0-15-1 3 10 27 0 0.01 10 27 44.44 3600.00
C16-2-1.0-15-2 15 6 39 28.21 3600.02 6 39 23.08 3600.01
C16-2-1.0-30-1 3 10 27 0 0.03 10 27 58.72 3600.01
C16-2-1.0-30-2 7 9 26 61.54 3600.01 9 26 19.23 3600.02
C16-2-1.0-60-1 4 10 30 0 690.11 10 30 0 1563.72
C16-2-1.0-60-2 16 4 36 19.44 3496.38 5 36 0 3087.46
C16-4-0.2-15-1 3 4 44 0 0.05 4 44 11.37 3600.00
C16-4-0.2-15-2 15 1 45 2.22 3600.02 1 45 2.22 3600.00
C16-4-0.2-30-1 3 4 40 0 0.06 4 40 15 3600.01
C16-4-0.2-30-2 16 3 45 6.67 3600.02 3 45 4.44 3600.01
C16-4-0.2-60-1 4 5 33 21.21 1799.79 5 33 15.15 3599.99
C16-4-0.2-60-2 16 1 51 1.96 3600.01 1 51 0 1409.63
C16-4-0.5-15-1 3 4 46 0 0.05 4 46 10.87 3600.00
C16-4-0.5-15-2 15 2 49 6.12 3600.01 3 49 2.04 3600.02
C16-4-0.5-30-1 3 5 51 0 368.24 5 51 5.88 3600.01
C16-4-0.5-30-2 15 2 38 7.89 3600.01 2 38 7.89 3599.99
C16-4-0.5-60-1 4 6 42 26.12 3600.01 6 42 0 2745.56
C16-4-0.5-60-2 12 2 47 4.26 3600.01 2 47 0 143.96
C16-4-1.0-15-1 3 4 42 0 0.09 4 42 9.52 3600.00
C16-4-1.0-15-2 15 0 57 0 0.52 0 57 0 0.24
C16-4-1.0-30-1 3 4 42 0 0.14 4 42 0 3568.83
C16-4-1.0-30-2 16 0 46 0 0.56 0 46 0 0.20
C16-4-1.0-60-1 4 5 44 9.05 3600.01 5 44 0 242.86
C16-4-1.0-60-2 16 0 47 0 1.19 0 47 0 0.23
Table II: Detailed results on the instances with 16 jobs
1) Is it possible to have a polynomial-time algorithm for
the case of two machines with processing time pj ∈
{1, 2, 3}?
2) Is the CSPCJ problem with two machines and p ∈
{1, 2, 3} is NP-hard for arbitrary bipartite agreement
graphs?
3) Is CSPCJ NP-hard for the case of two machines with
processing time pj ∈ {1, 2, 3, 4}?
4) How is it hard to approximate the CSPCJ problem when
the processing times are in {1, 2, 3, 4}?
5) Is it possible to apply two proposed models to formulate
the problem with the objective function minimizing the
makespan?
ACKNOWLEDGMENT
This work has been supported by VNU University of
Engineering and Technology under project number CN18.17
The manuscript of the paper was finished during the research
stay of the first and last authors at the Vietnamese Institute for
Advanced Studies in Mathematics (VIASM) We would like
to express our sincere thanks to the institution for their kind
hospitality and support
REFERENCES [1] M Garey and D Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness W H Freeman and Company, 1979 [2] B S Baker and E G C Jr., “Mutual exclusion scheduling,” Theor Comput Sci., vol 162, no 2, pp 225–243, 1996.
[3] G Even, M M Halldórsson, L Kaplan, and D Ron, “Scheduling with conflicts: online and offline algorithms,” J Scheduling, vol 12, no 2,
pp 199–224, 2009.
[4] H L Bodlaender and K Jansen, “Restrictions of graph partition problems part I,” Theor Comput Sci., vol 148, no 1, pp 93–109, 1995.
[5] F Gardi, “Mutual exclusion scheduling with interval graphs or related classes, part I,” Discrete Applied Mathematics, vol 157, no 1, pp 19–
35, 2009.
[6] Z Lonc, “On complexity of some chain and antichain partition prob-lems,” in Proceedings of the 17th International Workshop, ser WG ’91 London, UK: Springer-Verlag, 1992, pp 97–104.
[7] H L Bodlaender and K Jansen, “On the complexity of scheduling incompatible jobs with unit-times,” in Mathematical Foundations of Computer Science 1993, 18th International Symposium, MFCS’93, Gdansk, Poland, August 30 - September 3, 1993, Proceedings, 1993,
pp 291–300.
[8] K Jansen, “The mutual exclusion scheduling problem for permutation and comparability graphs,” Inf Comput., vol 180, no 2, pp 71–81, 2003.
[9] V Vazirani, Approximation Algorithms, 2nd ed Springer-Verlag, 2003 [10] J Håstad, “Clique is hard to approximate within n1−,” in 37th Annual Symposium on Foundations of Computer Science, FOCS ’96, Burlington, Vermont, USA, 14-16 October, 1996, 1996, pp 627–636.
[11] J Edmonds, “Paths, trees, and flowers,” Can J Math., vol 17, pp 449–467, 1965.