85 research outputs found
On Index Policies for Stochastic Minsum Scheduling
Minimizing the sum of completion times when scheduling jobs on identical parallel machines is a fundamental scheduling problem. Unlike the well-understood deterministic variant, it is a major open problem how to handle stochastic processing times. We show for the prominent class of index policies that no such policy can achieve a distribution-independent approximation factor. This strong lower bound holds even for simple instances with deterministic and two-point distributed jobs. For such instances, we give an -approximative list scheduling policy
Changing Bases: Multistage Optimization for Matroids and Matchings
This paper is motivated by the fact that many systems need to be maintained
continually while the underlying costs change over time. The challenge is to
continually maintain near-optimal solutions to the underlying optimization
problems, without creating too much churn in the solution itself. We model this
as a multistage combinatorial optimization problem where the input is a
sequence of cost functions (one for each time step); while we can change the
solution from step to step, we incur an additional cost for every such change.
We study the multistage matroid maintenance problem, where we need to maintain
a base of a matroid in each time step under the changing cost functions and
acquisition costs for adding new elements. The online version of this problem
generalizes online paging. E.g., given a graph, we need to maintain a spanning
tree at each step: we pay for the cost of the tree at time
, and also for the number of edges changed at
this step. Our main result is an -approximation, where is
the number of elements/edges and is the rank of the matroid. We also give
an approximation for the offline version of the problem. These
bounds hold when the acquisition costs are non-uniform, in which caseboth these
results are the best possible unless P=NP.
We also study the perfect matching version of the problem, where we must
maintain a perfect matching at each step under changing cost functions and
costs for adding new elements. Surprisingly, the hardness drastically
increases: for any constant , there is no
-approximation to the multistage matching maintenance
problem, even in the offline case
On the Complexity of Conditional DAG Scheduling in Multiprocessor Systems
As parallel processing became ubiquitous in modern computing systems, parallel task models have been proposed to describe the structure of parallel applications. The workflow scheduling problem has been studied extensively over past years, focusing on multiprocessor systems and distributed environments (e.g. grids, clusters). In workflow scheduling, applications are modeled as directed acyclic graphs (DAGs). DAGs have also been introduced in the real-time scheduling community to model the execution of multi-threaded programs on a multi-core architecture. The DAG model assumes, in most cases, a fixed DAG structure capturing only straight-line code. Only recently, more general models have been proposed. In particular, the conditional DAG model allows the presence of control structures such as conditional (if-then-else) constructs. While first algorithmic results have been presented for the conditional DAG model, the complexity of schedulability analysis remains wide open. We perform a thorough analysis on the worst-case makespan (latest completion time) of a conditional DAG task under list scheduling (a.k.a. fixed-priority scheduling). We show several hardness results concerning the complexity of the optimization problem on multiple processors, even if the conditional DAG has a well-nested structure. For general conditional DAG tasks, the problem is intractable even on a single processor. Complementing these negative results, we show that certain practice-relevant DAG structures are very well tractable
How Unsplittable-Flow-Covering helps Scheduling with Job-Dependent Cost Functions
Generalizing many well-known and natural scheduling problems, scheduling with
job-specific cost functions has gained a lot of attention recently. In this
setting, each job incurs a cost depending on its completion time, given by a
private cost function, and one seeks to schedule the jobs to minimize the total
sum of these costs. The framework captures many important scheduling objectives
such as weighted flow time or weighted tardiness. Still, the general case as
well as the mentioned special cases are far from being very well understood
yet, even for only one machine. Aiming for better general understanding of this
problem, in this paper we focus on the case of uniform job release dates on one
machine for which the state of the art is a 4-approximation algorithm. This is
true even for a special case that is equivalent to the covering version of the
well-studied and prominent unsplittable flow on a path problem, which is
interesting in its own right. For that covering problem, we present a
quasi-polynomial time -approximation algorithm that yields an
-approximation for the above scheduling problem. Moreover, for
the latter we devise the best possible resource augmentation result regarding
speed: a polynomial time algorithm which computes a solution with \emph{optimal
}cost at speedup. Finally, we present an elegant QPTAS for the
special case where the cost functions of the jobs fall into at most
many classes. This algorithm allows the jobs even to have up to many
distinct release dates.Comment: 2 pages, 1 figur
Stochastic and Robust Scheduling in the Cloud
Users of cloud computing services are offered rapid access to computing resources via the Internet.
Cloud providers use different pricing options such as (i) time slot reservation in advance at a fixed
price and (ii) on-demand service at a (hourly) pay-as-used basis. Choosing the best combination
of pricing options is a challenging task for users, in particular, when the instantiation of computing
jobs underlies uncertainty.
We propose a natural model for two-stage scheduling under uncertainty that captures such
resource provisioning and scheduling problem in the cloud. Reserving a time unit for processing
jobs incurs some cost, which depends on when the reservation is made: a priori decisions, based
only on distributional information, are much cheaper than on-demand decisions when the actual
scenario is known. We consider both stochastic and robust versions of scheduling unrelated
machines with objectives of minimizing the sum of weighted completion times Pj wjCj and the makespan maxj Cj . Our main contribution is an (8+)-approximation algorithm for the min-sum
objective for the stochastic polynomial-scenario model. The same technique gives a (7.11 + )-
approximation for minimizing the makespan. The key ingredient is an LP-based separation
of jobs and time slots to be considered in either the first or the second stage only, and then
approximately solving the separated problems. At the expense of another our results hold for
any arbitrary scenario distribution given by means of a black-box. Our techniques also yield
approximation algorithms for robust two-stage scheduling
A Universal Error Measure for Input Predictions Applied to Online Graph Problems
We introduce a novel measure for quantifying the error in input predictions. The error is based on a minimum-cost hyperedge cover in a suitably defined hypergraph and provides a general template which we apply to online graph problems. The measure captures errors due to absent predicted requests as well as unpredicted actual requests; hence, predicted and actual inputs can be of arbitrary size. We achieve refined performance guarantees for previously studied network design problems in the online-list model, such as Steiner tree and facility location. Further, we initiate the study of learning-augmented algorithms for online routing problems, such as the online traveling salesperson problem and the online dial-a-ride problem, where (transportation) requests arrive over time (online-time model). We provide a general algorithmic framework and we give error-dependent performance bounds that improve upon known worst-case barriers, when given accurate predictions, at the cost of slightly increased worst-case bounds when given predictions of arbitrary quality
Optimal Algorithms and a PTAS for Cost-Aware Scheduling
We consider a natural generalization of classical scheduling
problems in which using a time unit for processing a job causes some
time-dependent cost which must be paid in addition to the standard
scheduling cost. We study the scheduling objectives of minimizing the
makespan and the sum of (weighted) completion times. It is not dicult
to derive a polynomial-time algorithm for preemptive scheduling to minimize
the makespan on unrelated machines. The problem of minimizing
the total (weighted) completion time is considerably harder, even on a
single machine. We present a polynomial-time algorithm that computes
for any given sequence of jobs an optimal schedule, i.e., the optimal set of
time-slots to be used for scheduling jobs according to the given sequence.
This result is based on dynamic programming using a subtle analysis
of the structure of optimal solutions and a potential function argument.
With this algorithm, we solve the unweighted problem optimally in polynomial
time. Furthermore, we argue that there is a (4+")-approximation
algorithm for the strongly NP-hard problem with individual job weights.
For this weighted version, we also give a PTAS based on a dual scheduling
approach introduced for scheduling on a machine of varying speed
Optimal Algorithms for Scheduling under Time-of-Use Tariffs
We consider a natural generalization of classical scheduling problems in which using a time unit for processing a job causes some time-dependent cost which must be paid in addition to the standard scheduling cost. We study the scheduling objectives of minimizing the makespan and the sum of (weighted) completion times. It is not difficult to derive a polynomial-time algorithm for preemptive scheduling to minimize the makespan on unrelated machines. The problem of minimizing the total (weighted) completion time is considerably harder, even on a single machine. We present a polynomial-time algorithm that computes for any given sequence of jobs an optimal schedule, i.e., the optimal set of time-slots to be used for scheduling jobs according to the given sequence. This result is based on dynamic programming using a subtle analysis of the structure of optimal solutions and a potential function argument. With this algorithm, we solve the unweighted problem optimally in polynomial time. For the more general problem, in which jobs may have individual weights, we develop a polynomial-time approximation scheme (PTAS) based on a dual scheduling approach introduced for scheduling on a machine of varying speed. As the weighted problem is strongly NP-hard, our PTAS is the best possible approximation we can hope for
- …