2,883 research outputs found
Throughput Maximization in Multiprocessor Speed-Scaling
We are given a set of jobs that have to be executed on a set of
speed-scalable machines that can vary their speeds dynamically using the energy
model introduced in [Yao et al., FOCS'95]. Every job is characterized by
its release date , its deadline , its processing volume if
is executed on machine and its weight . We are also given a budget
of energy and our objective is to maximize the weighted throughput, i.e.
the total weight of jobs that are completed between their respective release
dates and deadlines. We propose a polynomial-time approximation algorithm where
the preemption of the jobs is allowed but not their migration. Our algorithm
uses a primal-dual approach on a linearized version of a convex program with
linear constraints. Furthermore, we present two optimal algorithms for the
non-preemptive case where the number of machines is bounded by a fixed
constant. More specifically, we consider: {\em (a)} the case of identical
processing volumes, i.e. for every and , for which we
present a polynomial-time algorithm for the unweighted version, which becomes a
pseudopolynomial-time algorithm for the weighted throughput version, and {\em
(b)} the case of agreeable instances, i.e. for which if and only
if , for which we present a pseudopolynomial-time algorithm. Both
algorithms are based on a discretization of the problem and the use of dynamic
programming
Greed Works -- Online Algorithms For Unrelated Machine Stochastic Scheduling
This paper establishes performance guarantees for online algorithms that
schedule stochastic, nonpreemptive jobs on unrelated machines to minimize the
expected total weighted completion time. Prior work on unrelated machine
scheduling with stochastic jobs was restricted to the offline case, and
required linear or convex programming relaxations for the assignment of jobs to
machines. The algorithms introduced in this paper are purely combinatorial. The
performance bounds are of the same order of magnitude as those of earlier work,
and depend linearly on an upper bound on the squared coefficient of variation
of the jobs' processing times. Specifically for deterministic processing times,
without and with release times, the competitive ratios are 4 and 7.216,
respectively. As to the technical contribution, the paper shows how dual
fitting techniques can be used for stochastic and nonpreemptive scheduling
problems.Comment: Preliminary version appeared in IPCO 201
Non-preemptive Scheduling in a Smart Grid Model and its Implications on Machine Minimization
We study a scheduling problem arising in demand response management in smart
grid. Consumers send in power requests with a flexible feasible time interval
during which their requests can be served. The grid controller, upon receiving
power requests, schedules each request within the specified interval. The
electricity cost is measured by a convex function of the load in each timeslot.
The objective is to schedule all requests with the minimum total electricity
cost. Previous work has studied cases where jobs have unit power requirement
and unit duration. We extend the study to arbitrary power requirement and
duration, which has been shown to be NP-hard. We give the first online
algorithm for the general problem, and prove that the problem is fixed
parameter tractable. We also show that the online algorithm is asymptotically
optimal when the objective is to minimize the peak load. In addition, we
observe that the classical non-preemptive machine minimization problem is a
special case of the smart grid problem with min-peak objective, and show that
we can solve the non-preemptive machine minimization problem asymptotically
optimally
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.Comment: 17 pages; A preliminary version of this paper with a subset of
results appeared in the Proceedings of MFCS 201
Fast divide-and-conquer algorithms for preemptive scheduling problems with controllable processing times – A polymatroid optimization approach
We consider a variety of preemptive scheduling problems with controllable processing times on a single machine and on identical/uniform parallel machines, where the objective
is to minimize the total compression cost. In this paper, we propose fast divide-and-conquer algorithms for these scheduling problems. Our approach is based on the observation that each scheduling problem we discuss can be formulated as a polymatroid optimization problem.
We develop a novel divide-and-conquer technique for the polymatroid optimization problem and then apply it to each scheduling problem. We show that each scheduling problem can
be solved in O(Tfeas(n) log n) time by using our divide-and-conquer technique, where n is the number of jobs and Tfeas(n) denotes the time complexity of the corresponding feasible scheduling problem with n jobs. This approach yields faster algorithms for most of the scheduling problems discussed in this paper
- …