21,627 research outputs found
Scheduling Algorithms for Procrastinators
This paper presents scheduling algorithms for procrastinators, where the
speed that a procrastinator executes a job increases as the due date
approaches. We give optimal off-line scheduling policies for linearly
increasing speed functions. We then explain the computational/numerical issues
involved in implementing this policy. We next explore the online setting,
showing that there exist adversaries that force any online scheduling policy to
miss due dates. This impossibility result motivates the problem of minimizing
the maximum interval stretch of any job; the interval stretch of a job is the
job's flow time divided by the job's due date minus release time. We show that
several common scheduling strategies, including the "hit-the-highest-nail"
strategy beloved by procrastinators, have arbitrarily large maximum interval
stretch. Then we give the "thrashing" scheduling policy and show that it is a
\Theta(1) approximation algorithm for the maximum interval stretch.Comment: 12 pages, 3 figure
Near-Optimal Sensor Scheduling for Batch State Estimation: Complexity, Algorithms, and Limits
In this paper, we focus on batch state estimation for linear systems. This
problem is important in applications such as environmental field estimation,
robotic navigation, and target tracking. Its difficulty lies on that limited
operational resources among the sensors, e.g., shared communication bandwidth
or battery power, constrain the number of sensors that can be active at each
measurement step. As a result, sensor scheduling algorithms must be employed.
Notwithstanding, current sensor scheduling algorithms for batch state
estimation scale poorly with the system size and the time horizon. In addition,
current sensor scheduling algorithms for Kalman filtering, although they scale
better, provide no performance guarantees or approximation bounds for the
minimization of the batch state estimation error. In this paper, one of our
main contributions is to provide an algorithm that enjoys both the estimation
accuracy of the batch state scheduling algorithms and the low time complexity
of the Kalman filtering scheduling algorithms. In particular: 1) our algorithm
is near-optimal: it achieves a solution up to a multiplicative factor 1/2 from
the optimal solution, and this factor is close to the best approximation factor
1/e one can achieve in polynomial time for this problem; 2) our algorithm has
(polynomial) time complexity that is not only lower than that of the current
algorithms for batch state estimation; it is also lower than, or similar to,
that of the current algorithms for Kalman filtering. We achieve these results
by proving two properties for our batch state estimation error metric, which
quantifies the square error of the minimum variance linear estimator of the
batch state vector: a) it is supermodular in the choice of the sensors; b) it
has a sparsity pattern (it involves matrices that are block tri-diagonal) that
facilitates its evaluation at each sensor set.Comment: Correction of typos in proof
Learning Scheduling Algorithms for Data Processing Clusters
Efficiently scheduling data processing jobs on distributed compute clusters
requires complex algorithms. Current systems, however, use simple generalized
heuristics and ignore workload characteristics, since developing and tuning a
scheduling policy for each workload is infeasible. In this paper, we show that
modern machine learning techniques can generate highly-efficient policies
automatically. Decima uses reinforcement learning (RL) and neural networks to
learn workload-specific scheduling algorithms without any human instruction
beyond a high-level objective such as minimizing average job completion time.
Off-the-shelf RL techniques, however, cannot handle the complexity and scale of
the scheduling problem. To build Decima, we had to develop new representations
for jobs' dependency graphs, design scalable RL models, and invent RL training
methods for dealing with continuous stochastic job arrivals. Our prototype
integration with Spark on a 25-node cluster shows that Decima improves the
average job completion time over hand-tuned scheduling heuristics by at least
21%, achieving up to 2x improvement during periods of high cluster load
Pfair scheduling of generalized pinwheel task systems
[[abstract]]The scheduling of generalized pinwheel task systems is considered. It is shown that pinwheel scheduling is closely related to the fair scheduling of periodic task systems. This relationship is exploited to obtain new scheduling algorithms for generalized pinwheel task systems. When compared to traditional pinwheel scheduling algorithms, these new algorithms are both more efficient from a run-time complexity point of view, and have a higher density threshold, on a very large subclass of generalized pinwheel task systems.
- …