30,635 research outputs found
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
SELFISHMIGRATE: A Scalable Algorithm for Non-clairvoyantly Scheduling Heterogeneous Processors
We consider the classical problem of minimizing the total weighted flow-time
for unrelated machines in the online \emph{non-clairvoyant} setting. In this
problem, a set of jobs arrive over time to be scheduled on a set of
machines. Each job has processing length , weight , and is
processed at a rate of when scheduled on machine . The online
scheduler knows the values of and upon arrival of the job,
but is not aware of the quantity . We present the {\em first} online
algorithm that is {\em scalable} ((1+\eps)-speed
-competitive for any constant \eps > 0) for the
total weighted flow-time objective. No non-trivial results were known for this
setting, except for the most basic case of identical machines. Our result
resolves a major open problem in online scheduling theory. Moreover, we also
show that no job needs more than a logarithmic number of migrations. We further
extend our result and give a scalable algorithm for the objective of minimizing
total weighted flow-time plus energy cost for the case of unrelated machines
and obtain a scalable algorithm. The key algorithmic idea is to let jobs
migrate selfishly until they converge to an equilibrium. Towards this end, we
define a game where each job's utility which is closely tied to the
instantaneous increase in the objective the job is responsible for, and each
machine declares a policy that assigns priorities to jobs based on when they
migrate to it, and the execution speeds. This has a spirit similar to
coordination mechanisms that attempt to achieve near optimum welfare in the
presence of selfish agents (jobs). To the best our knowledge, this is the first
work that demonstrates the usefulness of ideas from coordination mechanisms and
Nash equilibria for designing and analyzing online algorithms
Analysis, classification and comparison of scheduling techniques for software transactional memories
Transactional Memory (TM) is a practical programming paradigm for developing concurrent applications. Performance is a critical factor for TM implementations, and various studies demonstrated that specialised transaction/thread scheduling support is essential for implementing performance-effective TM systems. After one decade of research, this article reviews the wide variety of scheduling techniques proposed for Software Transactional Memories. Based on peculiarities and differences of the adopted scheduling strategies, we propose a classification of the existing techniques, and we discuss the specific characteristics of each technique. Also, we analyse the results of previous evaluation and comparison studies, and we present the results of a new experimental study encompassing techniques based on different scheduling strategies. Finally, we identify potential strengths and weaknesses of the different techniques, as well as the issues that require to be further investigated
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
Fast-Convergent Learning-aided Control in Energy Harvesting Networks
In this paper, we present a novel learning-aided energy management scheme
() for multihop energy harvesting networks. Different from prior
works on this problem, our algorithm explicitly incorporates information
learning into system control via a step called \emph{perturbed dual learning}.
does not require any statistical information of the system
dynamics for implementation, and efficiently resolves the challenging energy
outage problem. We show that achieves the near-optimal
utility-delay tradeoff with an
energy buffers (). More interestingly,
possesses a \emph{convergence time} of , which is much faster than the time of
pure queue-based techniques or the time of approaches
that rely purely on learning the system statistics. This fast convergence
property makes more adaptive and efficient in resource
allocation in dynamic environments. The design and analysis of
demonstrate how system control algorithms can be augmented by learning and what
the benefits are. The methodology and algorithm can also be applied to similar
problems, e.g., processing networks, where nodes require nonzero amount of
contents to support their actions
The Power of Online Learning in Stochastic Network Optimization
In this paper, we investigate the power of online learning in stochastic
network optimization with unknown system statistics {\it a priori}. We are
interested in understanding how information and learning can be efficiently
incorporated into system control techniques, and what are the fundamental
benefits of doing so. We propose two \emph{Online Learning-Aided Control}
techniques, and , that explicitly utilize the
past system information in current system control via a learning procedure
called \emph{dual learning}. We prove strong performance guarantees of the
proposed algorithms: and achieve the
near-optimal utility-delay tradeoff
and possesses an convergence time.
and are probably the first algorithms that
simultaneously possess explicit near-optimal delay guarantee and sub-linear
convergence time. Simulation results also confirm the superior performance of
the proposed algorithms in practice. To the best of our knowledge, our attempt
is the first to explicitly incorporate online learning into stochastic network
optimization and to demonstrate its power in both theory and practice
- …