25,569 research outputs found
Neural Feedback Scheduling of Real-Time Control Tasks
Many embedded real-time control systems suffer from resource constraints and
dynamic workload variations. Although optimal feedback scheduling schemes are
in principle capable of maximizing the overall control performance of
multitasking control systems, most of them induce excessively large
computational overheads associated with the mathematical optimization routines
involved and hence are not directly applicable to practical systems. To
optimize the overall control performance while minimizing the overhead of
feedback scheduling, this paper proposes an efficient feedback scheduling
scheme based on feedforward neural networks. Using the optimal solutions
obtained offline by mathematical optimization methods, a back-propagation (BP)
neural network is designed to adapt online the sampling periods of concurrent
control tasks with respect to changes in computing resource availability.
Numerical simulation results show that the proposed scheme can reduce the
computational overhead significantly while delivering almost the same overall
control performance as compared to optimal feedback scheduling.Comment: To appear in International Journal of Innovative Computing,
Information and Contro
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
Fuzzy Feedback Scheduling of Resource-Constrained Embedded Control Systems
The quality of control (QoC) of a resource-constrained embedded control
system may be jeopardized in dynamic environments with variable workload. This
gives rise to the increasing demand of co-design of control and scheduling. To
deal with uncertainties in resource availability, a fuzzy feedback scheduling
(FFS) scheme is proposed in this paper. Within the framework of feedback
scheduling, the sampling periods of control loops are dynamically adjusted
using the fuzzy control technique. The feedback scheduler provides QoC
guarantees in dynamic environments through maintaining the CPU utilization at a
desired level. The framework and design methodology of the proposed FFS scheme
are described in detail. A simplified mobile robot target tracking system is
investigated as a case study to demonstrate the effectiveness of the proposed
FFS scheme. The scheme is independent of task execution times, robust to
measurement noises, and easy to implement, while incurring only a small
overhead.Comment: To appear in International Journal of Innovative Computing,
Information and Contro
Human-Machine Collaborative Optimization via Apprenticeship Scheduling
Coordinating agents to complete a set of tasks with intercoupled temporal and
resource constraints is computationally challenging, yet human domain experts
can solve these difficult scheduling problems using paradigms learned through
years of apprenticeship. A process for manually codifying this domain knowledge
within a computational framework is necessary to scale beyond the
``single-expert, single-trainee" apprenticeship model. However, human domain
experts often have difficulty describing their decision-making processes,
causing the codification of this knowledge to become laborious. We propose a
new approach for capturing domain-expert heuristics through a pairwise ranking
formulation. Our approach is model-free and does not require enumerating or
iterating through a large state space. We empirically demonstrate that this
approach accurately learns multifaceted heuristics on a synthetic data set
incorporating job-shop scheduling and vehicle routing problems, as well as on
two real-world data sets consisting of demonstrations of experts solving a
weapon-to-target assignment problem and a hospital resource allocation problem.
We also demonstrate that policies learned from human scheduling demonstration
via apprenticeship learning can substantially improve the efficiency of a
branch-and-bound search for an optimal schedule. We employ this human-machine
collaborative optimization technique on a variant of the weapon-to-target
assignment problem. We demonstrate that this technique generates solutions
substantially superior to those produced by human domain experts at a rate up
to 9.5 times faster than an optimization approach and can be applied to
optimally solve problems twice as complex as those solved by a human
demonstrator.Comment: Portions of this paper were published in the Proceedings of the
International Joint Conference on Artificial Intelligence (IJCAI) in 2016 and
in the Proceedings of Robotics: Science and Systems (RSS) in 2016. The paper
consists of 50 pages with 11 figures and 4 table
Reinforcement Learning for Automatic Test Case Prioritization and Selection in Continuous Integration
Testing in Continuous Integration (CI) involves test case prioritization,
selection, and execution at each cycle. Selecting the most promising test cases
to detect bugs is hard if there are uncertainties on the impact of committed
code changes or, if traceability links between code and tests are not
available. This paper introduces Retecs, a new method for automatically
learning test case selection and prioritization in CI with the goal to minimize
the round-trip time between code commits and developer feedback on failed test
cases. The Retecs method uses reinforcement learning to select and prioritize
test cases according to their duration, previous last execution and failure
history. In a constantly changing environment, where new test cases are created
and obsolete test cases are deleted, the Retecs method learns to prioritize
error-prone test cases higher under guidance of a reward function and by
observing previous CI cycles. By applying Retecs on data extracted from three
industrial case studies, we show for the first time that reinforcement learning
enables fruitful automatic adaptive test case selection and prioritization in
CI and regression testing.Comment: Spieker, H., Gotlieb, A., Marijan, D., & Mossige, M. (2017).
Reinforcement Learning for Automatic Test Case Prioritization and Selection
in Continuous Integration. In Proceedings of 26th International Symposium on
Software Testing and Analysis (ISSTA'17) (pp. 12--22). AC
- …