45,154 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
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 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 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
PSBS: Practical Size-Based Scheduling
Size-based schedulers have very desirable performance properties: optimal or
near-optimal response time can be coupled with strong fairness guarantees.
Despite this, such systems are very rarely implemented in practical settings,
because they require knowing a priori the amount of work needed to complete
jobs: this assumption is very difficult to satisfy in concrete systems. It is
definitely more likely to inform the system with an estimate of the job sizes,
but existing studies point to somewhat pessimistic results if existing
scheduler policies are used based on imprecise job size estimations. We take
the goal of designing scheduling policies that are explicitly designed to deal
with inexact job sizes: first, we show that existing size-based schedulers can
have bad performance with inexact job size information when job sizes are
heavily skewed; we show that this issue, and the pessimistic results shown in
the literature, are due to problematic behavior when large jobs are
underestimated. Once the problem is identified, it is possible to amend
existing size-based schedulers to solve the issue. We generalize FSP -- a fair
and efficient size-based scheduling policy -- in order to solve the problem
highlighted above; in addition, our solution deals with different job weights
(that can be assigned to a job independently from its size). We provide an
efficient implementation of the resulting protocol, which we call Practical
Size-Based Scheduler (PSBS). Through simulations evaluated on synthetic and
real workloads, we show that PSBS has near-optimal performance in a large
variety of cases with inaccurate size information, that it performs fairly and
it handles correctly job weights. We believe that this work shows that PSBS is
indeed pratical, and we maintain that it could inspire the design of schedulers
in a wide array of real-world use cases.Comment: arXiv admin note: substantial text overlap with arXiv:1403.599
Scheduling with Fuzzy Methods
Nowadays, manufacturing industries -- driven by fierce competition and rising
customer requirements -- are forced to produce a broader range of individual
products of rising quality at the same (or preferably lower) cost. Meeting
these demands implies an even more complex production process and thus also an
appropriately increasing request to its scheduling. Aggravatingly, vagueness of
scheduling parameters -- such as times and conditions -- are often inherent in
the production process. In addition, the search for an optimal schedule
normally leads to very difficult problems (NP-hard problems in the complexity
theoretical sense), which cannot be solved effciently. With the intent to
minimize these problems, the introduced heuristic method combines standard
scheduling methods with fuzzy methods to get a nearly optimal schedule within
an appropriate time considering vagueness adequately
Revisiting Size-Based Scheduling with Estimated Job Sizes
We study size-based schedulers, and focus on the impact of inaccurate job
size information on response time and fairness. Our intent is to revisit
previous results, which allude to performance degradation for even small errors
on job size estimates, thus limiting the applicability of size-based
schedulers.
We show that scheduling performance is tightly connected to workload
characteristics: in the absence of large skew in the job size distribution,
even extremely imprecise estimates suffice to outperform size-oblivious
disciplines. Instead, when job sizes are heavily skewed, known size-based
disciplines suffer.
In this context, we show -- for the first time -- the dichotomy of
over-estimation versus under-estimation. The former is, in general, less
problematic than the latter, as its effects are localized to individual jobs.
Instead, under-estimation leads to severe problems that may affect a large
number of jobs.
We present an approach to mitigate these problems: our technique requires no
complex modifications to original scheduling policies and performs very well.
To support our claim, we proceed with a simulation-based evaluation that covers
an unprecedented large parameter space, which takes into account a variety of
synthetic and real workloads.
As a consequence, we show that size-based scheduling is practical and
outperforms alternatives in a wide array of use-cases, even in presence of
inaccurate size information.Comment: To be published in the proceedings of IEEE MASCOTS 201
- …