Scheduling with Many Shared Resources

2025-05-03 0 0 790.68KB 26 页 10玖币
侵权投诉
Scheduling with Many Shared Resources
Max A. Deppert !
Kiel University, Kiel, Germany
Klaus Jansen !
Kiel University, Kiel, Germany
Marten Maack !
Paderborn University, Paderborn, Germany
Simon Pukrop !
Paderborn University, Paderborn, Germany
Malin Rau !
Universität Hamburg, Hamburg, Germany
Abstract
Consider the many shared resource scheduling problem where jobs have to be scheduled on identical
parallel machines with the goal of minimizing the makespan. However, each job needs exactly
one additional shared resource in order to be executed and hence prevents the execution of jobs
that need the same resource while being processed. Previously a (2
m/
(
m
+ 1))-approximation
was the best known result for this problem. Furthermore, a 6
/
5-approximation for the case with
only two machines was known as well as a PTAS for the case with a constant number of machines.
We present a simple and fast 5/3-approximation and a much more involved but still reasonable
1.5-approximation. Furthermore, we provide a PTAS for the case with only a constant number
of machines, which is arguably simpler and faster than the previously known one, as well as a
PTAS with resource augmentation for the general case. The approximation schemes make use of the
N-fold integer programming machinery, which has found more and more applications in the field of
scheduling recently. It is plausible that the latter results can be improved and extended to more
general cases. Lastly, we give a 5/4εinapproximability result for the natural problem extension
where each job may need up to a constant number (in particular 3) of different resources.
2012 ACM Subject Classification Theory of computation Scheduling algorithms
Keywords and phrases
Scheduling, Approximation, Parallel Identical Machines, Resource Con-
straints, Conflicts
Funding
Max A. Deppert: Supported by the German Research Foundation (DFG) project JA
612/25-1
Klaus Jansen: Supported by the German Research Foundation (DFG) project JA 612/25-1
Marten Maack: Supported by the German Research Foundation (DFG) within the Collaborative
Research Centre “On-The-Fly Computing” under the project number 160364472 — SFB 901/3.
Simon Pukrop: Supported by the German Research Foundation (DFG) within the Collaborative
Research Centre “On-The-Fly Computing” under the project number 160364472 — SFB 901/3.
Malin Rau: Supported by DFG Research Group ADYN under grant DFG 411362735
1 Introduction
We consider the problem of makespan minimization on identical parallel machines with many
shared resources, or many shared resources scheduling (MSRS) for short. In this problem,
we are given
m
identical machines, a set
J
of
n
jobs, and a processing time or size
pjN0
for each job
j∈ J
. Furthermore, each job needs exactly one additional shared resource in
order to be executed and no other job needing the same resource can be processed at the
same time. Hence, the jobs are partitioned into (non-empty) classes
C
, i.e.,
SC
=
J
, such
arXiv:2210.01523v1 [cs.DS] 4 Oct 2022
2 Scheduling with Many Shared Resources
that each class corresponds to one of the resources. A schedule (
σ, t
)maps each job to a
machine
σ
:
J → {
1
, . . . , m}
and a starting time
t
:
J N0
. It is called valid if no two
jobs overlap on the same machine and no two jobs of the same class are processed in parallel,
i.e.:
j, j0 J , j 6=j0with σ(j) = σ(j0):t(j) + pjt(j0)or t(j0) + p0
jt(j)
c∈ C :j, j0c, j 6=j0:t(j) + pjt(j0)or t(j0) + p0
jt(j)
The makespan
Cmax
of a schedule is defined as
maxj∈J t
(
j
) +
pj
and the goal is to find a
schedule with minimum makespan. Note that MSRS also models the case in which some
jobs do not need a resource since in this case private resources can be introduced.
State of the Art and Motivation.
The study of scheduling problems with additional
resources has a long and rich tradition. Already in 1983, Blazewicz et al. [
4
] provided a
classification for such problems along with basic hardness results and several additional
surveys have been published since then [
2
,
3
,
12
]. The MSRS problem, in particular, was
introduced by Hebrard et al. [
17
] who considered the scheduling of download plans for Earth
observation satellites and provided a (2
m/
(
m
+1))-approximation for the problem. Strusevich
[
29
] revisited MSRS and presented an additional application in human resource management.
Moreover, he provided a faster, alternative (2
m/
(
m
+ 1))-approximation that is claimed
to be simpler as well, and a 6
/
5-approximation for the case with only two machines. The
work also extends the three field notation for scheduling problems based on the convention
for additional resources introduced in [
4
] to encompass the problem at hand. In particular,
MSRS is denoted as
P|res ·
111
|Cmax
in this notation. The most recent result regarding
MSRS is due to Dósa et al. [
11
] who provided an efficient polynomial time approximation
scheme (EPTAS) for MSRS with a constant number of machines. In fact, the EPTAS even
works for a more general setting where each job
j
additionally may only be assigned to a
machine belonging to a given set M(j)of eligible machines.
We employ standard notation regarding approximation schemes: A polynomial time
approximation scheme (PTAS) provides a polynomial time (1 +
ε
)-approximation for each
ε >
0. It is called efficient, or EPTAS, if its running time is of the form
f
(1
)
poly
(
|I|
)where
f
is some function and
|I|
the encoding length of the instance
I
. Moreover, an EPTAS is
called fully polynomial time approximation scheme (FPTAS) if the function
f
is a polynomial.
Since MSRS includes makespan minimization on identical machines (without resource
constraints) as a subproblem, it is NP-hard already on two machines and strongly NP-hard
if the number of machines is part of the input due to straightforward reductions from the
partition and 3-partition problem, respectively. Hence, approximation schemes are essentially
the best we can hope for.
The MSRS problem has also been considered with regard to the total completion time
objective [
23
,
24
]. The study of this variant is motivated by a scheduling problem in the
semiconductor industry. On one hand, the authors show NP-hardness for generalizations
of the problem, and on the other, they argue that the approach yielding a polynomial time
algorithm for total completion time minimization in the absence of resource constraints leads
to a (2 1/m)-approximation for the considered problem.
Another way of looking at MSRS is to consider it as variant of scheduling with conflicts,
where a conflict graph is given in which the jobs are the vertices and no two jobs connected by
an edge may be processed at the same time. This problem was introduced for unit processing
times by Baker and Coffman in 1996 [
1
]. It is known to be APX-hard [
14
] already on two
machines with job sizes at most 4 and a bipartite agreement graph, i.e., the complement of
M. A. Deppert, K. Jansen, M. Maack, S. Pukrop, and M. Rau 3
the conflict graph. There are many positive and negative results for different versions of this
problem (see, e.g., [
1
,
14
] and the references therein). For instance, the problem is NP-hard
on cographs with unit-size jobs but polynomial time solvable if the number of machines is
constant [6]. Note that in the case of MSRS, we have a particularly simple cograph, i.e., a
collection of disjoint cliques.
Results.
We present a 5
/
3-approximation in Section 2, a 3
/
2-approximation in Section 3,
approximation schemes in Section 4, and inapproximability results in Section 5. Note that
the 5
/
3- and 3
/
2-approximation have better approximation ratios than the previously known
(2m/(m+ 1))-approximation already for 6 and 4 machines, respectively.
The 5
/
3-approximation is a simple and fast algorithm that is based on placing full classes
of jobs taking special care of classes containing jobs with particularly big sizes and of classes
with large processing time overall. While the 3
/
2-approximation reuses some of the ideas
and observations of the first result, it is much more involved. To achieve the second result,
we first design a 3
/
2-approximation for the instances in which jobs cannot be too large
relative to the optimal makespan and then design an algorithm that carefully places classes
containing such large jobs and uses the first algorithm as a subroutine for the placement of
the remaining classes. Note that our approaches are very different to the one in [
17
], which
successively chooses jobs based on their size and the size of the remaining jobs in their class
and then inserts them with some procedure designed to avoid resource conflicts, and the one
in [29], which merges the classes into single jobs to avoid resource conflicts.
We provide an EPTAS for the variant of MSRS where the number of machines is
constant and an EPTAS with resource augmentation for the general case. In particular, we
need
b
(1 +
ε
)
mc
many machines in the latter result. Both results make use of the basic
framework introduced in [
19
] which in turn utilizes relatively recent algorithmic results
for integer programs (IPs) of a particular form – so-called N-fold IPs. Compared to the
mentioned work by Dósa et al. [
11
] – which provides an EPTAS for the case with a constant
number of machines as well – our result is arguably simpler and faster (going from at least
triply exponential in
m/ε
to doubly exponential). We also provide the result with resource
augmentation for the general case, which may be refined in the future to work without
resource augmentation as well. Moreover, it seems plausible that the use of N-fold IPs in
the context of scheduling with additional resources may lead to further results in the future,
which do not have to be limited to approximation schemes.
Finally, we provide inapproximability results for variants of MSRS where each job may
need more than one resource. In particular, we show that there is no better than 5
/
4-
approximation for the variant of MSRS with multiple resources per job, unless
P
=
NP
,
even if no job needs more than three resources and all jobs have processing time 1, 2 or 3.
Previously, the APX-hardness result due to Even et al. [
14
] for scheduling with conflicts was
known, which did focus on a different context and in particular does not provide bounds
regarding the number of resources a job may require.
Further Related Work.
As mentioned above, there exists extensive research regarding
scheduling with additional resources and we refer to the surveys [
2
4
,
12
] for an overview.
For instance, the variant with only one additional shared renewable resource where each job
needs some fraction of the resource capacity has received a lot of attention (see [
21
,
22
,
26
,
27
]
for some relatively recent examples). Interestingly, Hebrard [
17
] pointed out that this basic
setting is more closely related MSRS than it first appears: Consider the case that we have
dedicated machines, i.e., each job is already assigned to a machine and we only have to
4 Scheduling with Many Shared Resources
choose the starting times, each job needs one unit of the singly additional shared resource,
and the shared resource has some integer capacity. This problem is equivalent to MSRS if
the multiple resources taken on the roles of the machines and the machines take the role of
the single resource. Hence, results for variants of this setting translate to MSRS as well. For
instance, MSRS can be solved in polynomial time if at most two classes include more than
one job [25] and [16] yields a (3 + ε)-approximation.
Scheduling with conflicts has also been studied from the orthogonal perspective, where
jobs that are in conflict may not be processed on the same machines. This problem was
already studied in the 1990’s (see e.g. [
6
,
7
]), and there has been a series of recent results
[
10
,
15
,
28
] regarding the setting corresponding to MSRS where the conflict graph is a
collection of disjoint cliques.
Preliminaries.
We introduce some additional notation, and a first observation that will be
used throughout the following sections.
For any set of jobs
X
let
p
(
X
) =
PjXpj
denote its total processing time. Also let
p
(
j
) =
pj
for all jobs
j∈ J
. While creating or discussing a schedule, for any machine
m
denote by
p
(
m
)the (current) total load of jobs on that machine
m
. Subsequently, for a set
of machines M,p(M) = PmMp(m).
For any combination of a set
X { J ,C }
, a relation
{ <, ,, > }
, and a num-
ber
λ
, we define
Xλ
=
{xX|p(x)λ}
. Furthermore, given an interval
v
let
Xv
=
{xX|p(x)v}
. For example it holds that
J>1/2
=
{j∈ J | p(j)>1/2}
and
C(1/2,3/4]
=
{c∈ C | p(c)(1/2,3/4] }.
INote 1. It holds that OPT max {p(J)
m,maxc∈C p(c)}.
Hence, we assume that
m < |C|
as otherwise there is a trivial schedule with one machine per
class. Furthermore, let us assume that we sort the jobs in decreasing order of processing
time. Consider the jobs
jm
and
jm+1
at position
m
and
m
+ 1. Note that it has to hold that
OPT p
(
jm
) +
p
(
jm+1
), since either
jm+1
has to be scheduled on the same machine as one
of the first mjobs, or two of the first mjobs have to be scheduled at the same machine.
2 A 5/3-approximation
In this section we introduce a first simple algorithm that gives some intuition on the problem
that will be used more cleverly in the next section. We start by lower bounding the makespan
T
of an optimal schedule and construct a schedule with makespan at most
5
3T
. The algorithm
works by placing full classes of jobs in a specific order. More precisely, first classes that
contain a job of size at least
1
2T
, then classes with total processing time larger than
2
3T
, and
lastly all residual classes get placed.
ITheorem 2.
There exists an algorithm that, for any instance
I
of MSRS, finds a schedule
with makespan bounded by
5
3T
in
O
(
|I|
)steps, where for the jobs
jm
and
jm+1
with
m
-th and
(
m
+1)-st largest processing time we define
T
:=
max {1
mp(J),maxc∈C p(c), p(jm) + p(jm+1)}
.
As noted earlier,
T
denotes a lower bound on the makespan. We scale each job by 1
/T
.
As a consequence all jobs have a processing time in (0
,
1] and the total load is bounded by
m
.
Denote by CB+:= {c∈ C | |c∩ J>1/2|= 1 }all classes containing a job of size greater than
1
/
2. We aim to find a schedule with makespan in [1
,
5
/
3]. The following two observations
are directly implied by the definition of T.
IObservation 3. For each class c∈ C it holds that |c∩ J>1/2| ≤ 1.
M. A. Deppert, K. Jansen, M. Maack, S. Pukrop, and M. Rau 5
IObservation 4. It holds that |CB+|=|J>1/2| ≤ m.
Lastly, we address classes with a large total processing time.
ILemma 5.
Each class
c∈ C>2/3\ CB+
can be partitioned into parts
c1
and
c2
=
c\c1
such
that 1/3p(c1)2/3and p(c2)2/3. This partition can be found in time O(|c|).
Proof.
If there exists a job
j>
in
c
with
p
(
j>
)
>
1
/
3, we define
c1
=
{j>}
and
c2
=
c\c1
. Note
that
c
does not contain a job with processing time larger than 1
/
2and hence,
p
(
c1
)
(1
/
3
,
1
/
2]
and p(c2) = p(c)p(c1)<11/3=2/3.
Otherwise, greedily add jobs from
c
to an empty set
c1
until
p
(
c1
)
1
/
3and set
c2
=
c\c1
.
Since all the jobs of
c
have processing time at most 1
/
3, it holds that
p
(
c1
)
[1
/
3
,
2
/
3].
Consequently, it holds that p(c2)2/3as well. J
Algorithm: Algorithm_5/3
I
Step 1. Consider all classes containing a job with processing time larger than 1
/
2,
CB+
.
Each of these classes is assigned to an individual machine, and all jobs from such a class are
scheduled consecutively, see Figure 1a.
I
Step 2. Consider all remaining classes with total processing time larger than 2
/
3,
C>2/3\CB+
.
Try to add these classes on the machines filled with the classes
CB+
and afterward proceeds
to empty machines, see Figure 1b. If the considered machine has load in (1
,
5
/
3],close the
machine and no longer attempt to place any other job on it. Note that after placing the classes
CB+
all machines remained open. Let
mi
be the machine we try to place class
c∈ C>2/3\ CB+
on. If
mi
has load
p
(
mi
)
5
/
3
p
(
c
), place the entire class on this machine and close it.
Otherwise, partition the class
c
in two parts
c1
and
c2
such that
p
(
c2
)
p
(
c1
)
2
/
3(cf.
Lemma 5). Place the larger part
c1
on the current machine starting at 5
/
3
p
(
c1
)and close
it, moving to the next machine. All jobs on this machine are delayed such that the first job
starts at
p
(
c2
). All jobs from
c2
are scheduled between 0and
p
(
c2
)on this machine. If it has
load of at least 1, this machine is closed as well.
I
Step 3 (Greedy). Finally, place the classes
C2/3\ CB+
, see Figure 1c. Consider the residual
machines one after another and add each class
c∈ C2/3\ CB+
entirely to the considered
machine. As soon as the load of a machine exceeds 1close it and move to the next.
5
3
4
3
1
2
3
1
3
0
J1J2
J3J4J5
(a) Classes with large jobs
5
3
4
3
1
2
3
1
3
0
J1
J2J3
J4
J5
(b) Placing large classes
5
3
4
3
1
2
3
1
3
0
J1
J2J3
J4
J5
(c) Adding all other classes
Figure 1 The three steps of the algorithm (where J>1/2={J1,...,J5})
摘要:

SchedulingwithManySharedResourcesMaxA.Deppert!KielUniversity,Kiel,GermanyKlausJansen!KielUniversity,Kiel,GermanyMartenMaack!PaderbornUniversity,Paderborn,GermanySimonPukrop!PaderbornUniversity,Paderborn,GermanyMalinRau!UniversitätHamburg,Hamburg,GermanyAbstractConsiderthemanysharedresourcescheduling...

展开>> 收起<<
Scheduling with Many Shared Resources.pdf

共26页,预览5页

还剩页未读, 继续阅读

声明:本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。玖贝云文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知玖贝云文库,我们立即给予删除!
分类:图书资源 价格:10玖币 属性:26 页 大小:790.68KB 格式:PDF 时间:2025-05-03

开通VIP享超值会员特权

  • 多端同步记录
  • 高速下载文档
  • 免费文档工具
  • 分享文档赚钱
  • 每日登录抽奖
  • 优质衍生服务
/ 26
客服
关注