13 research outputs found
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
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
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
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
Optimal algorithms for scheduling under time-of-use tariffs
We consider a natural generalization of classical scheduling problems to a setting in which using a time unit for processing a job causes some time-dependent cost, the time-of-use tariff, which must be paid in addition to the standard scheduling cost. We focus on preemptive single-machine scheduling and two classical scheduling cost functions, the sum of (weighted) completion times and the maximum completion time, that is, the makespan. While these problems are easy to solve in the classical scheduling setting, they are considerably more complex when time-of-use tariffs must be considered. We contribute optimal polynomial-time algorithms and best possible approximation algorithms. For the problem of minimizing the total (weighted) completion time 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 preemptively 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. For preemptive scheduling to minimize the makespan, we show that there is a comparably simple optimal algorithm with polynomial running time. This is true even in a certain generalized model with unrelated machines
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
Universal Sequencing on an Unreliable Machine
We consider scheduling on an unreliable machine that may experience unexpected changes in processing speed or even full breakdowns. Our objective is to minimize â wjf(Cj) for any nondecreasing, nonnegative, differentiable cost function f(Cj). We aim for a universal solution that performs well without adaptation for all cost functions for any possible machine behavior. We design a deterministic algorithm that finds a universal scheduling sequence with a solution value within 4 times the value of an optimal clairvoyant algorithm that knows the machine behavior in advance. A randomized version of this algorithm attains in expectation a ratio of e. We also show that both performance guarantees are best possible for any unbounded cost function. Our algorithms can be adapted to run in polynomial time with slightly increased cost. When jobs have individual release dates, the situation changes drastically. Even if all weights are equal, there are instances for which any universal solution is a factor of Ω(log n / log log n) worse than an optimal sequence for any unbounded cost function. Motivated by this hardness, we study the special case when the processing time of each job is proportional to its weight. We present a nontrivial algorithm with a small constant performance guarantee