5,314 research outputs found
Semantic rules for capability matchmaking in the context of manufacturing system design and reconfiguration
To survive in dynamic markets and meet the changing requirements, manufacturing companies must rapidly design new production systems and reconfigure existing ones. The current designer-centric search of feasible resources from various catalogues is a time-consuming and laborious process, which limits the consideration of many different alternative resource solutions. This article presents the implementation of an automatic capability matchmaking approach and software, which searches through resource catalogues to find feasible resources and resource combinations for the processing requirements of the product. The approach is based on formal ontology-based descriptions of both products and resources and the semantic rules used to find the matches. The article focuses on these rules implemented with SPIN rule language. They relate to 1) inferring and asserting parameters of combined capabilities of combined resources and 2) comparison of the product characteristics against the capability parameters of the resource (combination). The presented case study proves that the matchmaking system can find feasible matches. However, a human designer must validate the result when making the final resource selection. The approach should speed up the system design and reconfiguration planning and allow more alternative solutions be considered, compared with traditional manual design approaches.publishedVersionPeer reviewe
LIPIcs, Volume 251, ITCS 2023, Complete Volume
LIPIcs, Volume 251, ITCS 2023, Complete Volum
Bandit Social Learning: Exploration under Myopic Behavior
We study social learning dynamics where the agents collectively follow a
simple multi-armed bandit protocol. Agents arrive sequentially, choose arms and
receive associated rewards. Each agent observes the full history (arms and
rewards) of the previous agents, and there are no private signals. While
collectively the agents face exploration-exploitation tradeoff, each agent acts
myopically, without regards to exploration. Motivating scenarios concern
reviews and ratings on online platforms.
We allow a wide range of myopic behaviors that are consistent with
(parameterized) confidence intervals, including the "unbiased" behavior as well
as various behaviorial biases. While extreme versions of these behaviors
correspond to well-known bandit algorithms, we prove that more moderate
versions lead to stark exploration failures, and consequently to regret rates
that are linear in the number of agents. We provide matching upper bounds on
regret by analyzing "moderately optimistic" agents.
As a special case of independent interest, we obtain a general result on
failure of the greedy algorithm in multi-armed bandits. This is the first such
result in the literature, to the best of our knowledg
Neural Architecture Search for Image Segmentation and Classification
Deep learning (DL) is a class of machine learning algorithms that relies on deep neural networks (DNNs) for computations. Unlike traditional machine learning algorithms, DL can learn from raw data directly and effectively. Hence, DL has been successfully applied to tackle many real-world problems. When applying DL to a given problem, the primary task is designing the optimum DNN. This task relies heavily on human expertise, is time-consuming, and requires many trial-and-error experiments.
This thesis aims to automate the laborious task of designing the optimum DNN by exploring the neural architecture search (NAS) approach. Here, we propose two new NAS algorithms for two real-world problems: pedestrian lane detection for assistive navigation and hyperspectral image segmentation for biosecurity scanning. Additionally, we also introduce a new dataset-agnostic predictor of neural network performance, which can be used to speed-up NAS algorithms that require the evaluation of candidate DNNs
Surface EMG-Based Inter-Session/Inter-Subject Gesture Recognition by Leveraging Lightweight All-ConvNet and Transfer Learning
Gesture recognition using low-resolution instantaneous HD-sEMG images opens
up new avenues for the development of more fluid and natural muscle-computer
interfaces. However, the data variability between inter-session and
inter-subject scenarios presents a great challenge. The existing approaches
employed very large and complex deep ConvNet or 2SRNN-based domain adaptation
methods to approximate the distribution shift caused by these inter-session and
inter-subject data variability. Hence, these methods also require learning over
millions of training parameters and a large pre-trained and target domain
dataset in both the pre-training and adaptation stages. As a result, it makes
high-end resource-bounded and computationally very expensive for deployment in
real-time applications. To overcome this problem, we propose a lightweight
All-ConvNet+TL model that leverages lightweight All-ConvNet and transfer
learning (TL) for the enhancement of inter-session and inter-subject gesture
recognition performance. The All-ConvNet+TL model consists solely of
convolutional layers, a simple yet efficient framework for learning invariant
and discriminative representations to address the distribution shifts caused by
inter-session and inter-subject data variability. Experiments on four datasets
demonstrate that our proposed methods outperform the most complex existing
approaches by a large margin and achieve state-of-the-art results on
inter-session and inter-subject scenarios and perform on par or competitively
on intra-session gesture recognition. These performance gaps increase even more
when a tiny amount (e.g., a single trial) of data is available on the target
domain for adaptation. These outstanding experimental results provide evidence
that the current state-of-the-art models may be overparameterized for
sEMG-based inter-session and inter-subject gesture recognition tasks
Provably Feedback-Efficient Reinforcement Learning via Active Reward Learning
An appropriate reward function is of paramount importance in specifying a
task in reinforcement learning (RL). Yet, it is known to be extremely
challenging in practice to design a correct reward function for even simple
tasks. Human-in-the-loop (HiL) RL allows humans to communicate complex goals to
the RL agent by providing various types of feedback. However, despite achieving
great empirical successes, HiL RL usually requires too much feedback from a
human teacher and also suffers from insufficient theoretical understanding. In
this paper, we focus on addressing this issue from a theoretical perspective,
aiming to provide provably feedback-efficient algorithmic frameworks that take
human-in-the-loop to specify rewards of given tasks. We provide an
active-learning-based RL algorithm that first explores the environment without
specifying a reward function and then asks a human teacher for only a few
queries about the rewards of a task at some state-action pairs. After that, the
algorithm guarantees to provide a nearly optimal policy for the task with high
probability. We show that, even with the presence of random noise in the
feedback, the algorithm only takes queries on
the reward function to provide an -optimal policy for any . Here is the horizon of the RL environment, and specifies the
complexity of the function class representing the reward function. In contrast,
standard RL algorithms require to query the reward function for at least
state-action pairs where
depends on the complexity of the environmental transition.Comment: 36th Conference on Neural Information Processing Systems (NeurIPS
2022
Sampling with Barriers: Faster Mixing via Lewis Weights
We analyze Riemannian Hamiltonian Monte Carlo (RHMC) for sampling a polytope
defined by inequalities in endowed with the metric defined by the
Hessian of a convex barrier function. The advantage of RHMC over Euclidean
methods such as the ball walk, hit-and-run and the Dikin walk is in its ability
to take longer steps. However, in all previous work, the mixing rate has a
linear dependence on the number of inequalities. We introduce a hybrid of the
Lewis weights barrier and the standard logarithmic barrier and prove that the
mixing rate for the corresponding RHMC is bounded by , improving on the previous best bound of (based on the log barrier). This continues the general parallels
between optimization and sampling, with the latter typically leading to new
tools and more refined analysis. To prove our main results, we have to
overcomes several challenges relating to the smoothness of Hamiltonian curves
and the self-concordance properties of the barrier. In the process, we give a
general framework for the analysis of Markov chains on Riemannian manifolds,
derive new smoothness bounds on Hamiltonian curves, a central topic of
comparison geometry, and extend self-concordance to the infinity norm, which
gives sharper bounds; these properties appear to be of independent interest
On Age-of-Information Aware Resource Allocation for Industrial Control-Communication-Codesign
Unter dem Überbegriff Industrie 4.0 wird in der industriellen Fertigung die zunehmende Digitalisierung und Vernetzung von industriellen Maschinen und Prozessen zusammengefasst. Die drahtlose, hoch-zuverlässige, niedrig-latente Kommunikation (engl. ultra-reliable low-latency communication, URLLC) – als Bestandteil von 5G gewährleistet höchste Dienstgüten, die mit industriellen drahtgebundenen Technologien vergleichbar sind und wird deshalb als Wegbereiter von Industrie 4.0 gesehen. Entgegen diesem Trend haben eine Reihe von Arbeiten im Forschungsbereich der vernetzten Regelungssysteme (engl. networked control systems, NCS) gezeigt, dass die hohen Dienstgüten von URLLC nicht notwendigerweise erforderlich sind, um eine hohe Regelgüte zu erzielen. Das Co-Design von Kommunikation und Regelung ermöglicht eine gemeinsame Optimierung von Regelgüte und Netzwerkparametern durch die Aufweichung der Grenze zwischen Netzwerk- und Applikationsschicht. Durch diese Verschränkung wird jedoch eine fundamentale (gemeinsame) Neuentwicklung von Regelungssystemen und Kommunikationsnetzen nötig, was ein Hindernis für die Verbreitung dieses Ansatzes darstellt. Stattdessen bedient sich diese Dissertation einem Co-Design-Ansatz, der beide Domänen weiterhin eindeutig voneinander abgrenzt, aber das Informationsalter (engl. age of information, AoI) als bedeutenden Schnittstellenparameter ausnutzt.
Diese Dissertation trägt dazu bei, die Echtzeitanwendungszuverlässigkeit als Folge der Überschreitung eines vorgegebenen Informationsalterschwellenwerts zu quantifizieren und fokussiert sich dabei auf den Paketverlust als Ursache. Anhand der Beispielanwendung eines fahrerlosen Transportsystems wird gezeigt, dass die zeitlich negative Korrelation von Paketfehlern, die in heutigen Systemen keine Rolle spielt, für Echtzeitanwendungen äußerst vorteilhaft ist. Mit der Annahme von schnellem Schwund als dominanter Fehlerursache auf der Luftschnittstelle werden durch zeitdiskrete Markovmodelle, die für die zwei Netzwerkarchitekturen Single-Hop und Dual-Hop präsentiert werden, Kommunikationsfehlerfolgen auf einen Applikationsfehler abgebildet. Diese Modellierung ermöglicht die analytische Ableitung von anwendungsbezogenen Zuverlässigkeitsmetriken wie die durschnittliche Dauer bis zu einem Fehler (engl. mean time to failure). Für Single-Hop-Netze wird das neuartige Ressourcenallokationsschema State-Aware Resource Allocation (SARA) entwickelt, das auf dem Informationsalter beruht und die Anwendungszuverlässigkeit im Vergleich zu statischer Multi-Konnektivität um Größenordnungen erhöht, während der Ressourcenverbrauch im Bereich von konventioneller Einzelkonnektivität bleibt.
Diese Zuverlässigkeit kann auch innerhalb eines Systems von Regelanwendungen, in welchem mehrere Agenten um eine begrenzte Anzahl Ressourcen konkurrieren, statistisch garantiert werden, wenn die Anzahl der verfügbaren Ressourcen pro Agent um ca. 10 % erhöht werden. Für das Dual-Hop Szenario wird darüberhinaus ein Optimierungsverfahren vorgestellt, das eine benutzerdefinierte Kostenfunktion minimiert, die niedrige Anwendungszuverlässigkeit, hohes Informationsalter und hohen durchschnittlichen Ressourcenverbrauch bestraft und so das benutzerdefinierte optimale SARA-Schema ableitet. Diese Optimierung kann offline durchgeführt und als Look-Up-Table in der unteren Medienzugriffsschicht zukünftiger industrieller Drahtlosnetze implementiert werden.:1. Introduction 1
1.1. The Need for an Industrial Solution . . . . . . . . . . . . . . . . . . . 3
1.2. Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2. Related Work 7
2.1. Communications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2. Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3. Codesign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3.1. The Need for Abstraction – Age of Information . . . . . . . . 11
2.4. Dependability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.5. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3. Deriving Proper Communications Requirements 17
3.1. Fundamentals of Control Theory . . . . . . . . . . . . . . . . . . . . 18
3.1.1. Sampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.1.2. Performance Requirements . . . . . . . . . . . . . . . . . . . 21
3.1.3. Packet Losses and Delay . . . . . . . . . . . . . . . . . . . . . 22
3.2. Joint Design of Control Loop with Packet Losses . . . . . . . . . . . . 23
3.2.1. Method 1: Reduced Sampling . . . . . . . . . . . . . . . . . . 23
3.2.2. Method 2: Markov Jump Linear System . . . . . . . . . . . . . 25
3.2.3. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.3. Focus Application: The AGV Use Case . . . . . . . . . . . . . . . . . . 31
3.3.1. Control Loop Model . . . . . . . . . . . . . . . . . . . . . . . 31
3.3.2. Control Performance Requirements . . . . . . . . . . . . . . . 33
3.3.3. Joint Modeling: Applying Reduced Sampling . . . . . . . . . . 34
3.3.4. Joint Modeling: Applying MJLS . . . . . . . . . . . . . . . . . 34
3.4. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4. Modeling Control-Communication Failures 43
4.1. Communication Assumptions . . . . . . . . . . . . . . . . . . . . . . 43
4.1.1. Small-Scale Fading as a Cause of Failure . . . . . . . . . . . . 44
4.1.2. Connectivity Models . . . . . . . . . . . . . . . . . . . . . . . 46
4.2. Failure Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.2.1. Single-hop network . . . . . . . . . . . . . . . . . . . . . . . . 49
4.2.2. Dual-hop network . . . . . . . . . . . . . . . . . . . . . . . . 51
4.3. Performance Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.3.1. Mean Time to Failure . . . . . . . . . . . . . . . . . . . . . . . 54
4.3.2. Packet Loss Ratio . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.3.3. Average Number of Assigned Channels . . . . . . . . . . . . . 57
4.3.4. Age of Information . . . . . . . . . . . . . . . . . . . . . . . . 57
4.4. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5. Single Hop – Single Agent 61
5.1. State-Aware Resource Allocation . . . . . . . . . . . . . . . . . . . . 61
5.2. Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.3. Erroneous Acknowledgments . . . . . . . . . . . . . . . . . . . . . . 67
5.4. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
6. Single Hop – Multiple Agents 71
6.1. Failure Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
6.1.1. Admission Control . . . . . . . . . . . . . . . . . . . . . . . . 72
6.1.2. Transition Probabilities . . . . . . . . . . . . . . . . . . . . . . 73
6.1.3. Computational Complexity . . . . . . . . . . . . . . . . . . . 74
6.1.4. Performance Metrics . . . . . . . . . . . . . . . . . . . . . . . 75
6.2. Illustration Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
6.3. Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
6.3.1. Verification through System-Level Simulation . . . . . . . . . 78
6.3.2. Applicability on the System Level . . . . . . . . . . . . . . . . 79
6.3.3. Comparison of Admission Control Schemes . . . . . . . . . . 80
6.3.4. Impact of the Packet Loss Tolerance . . . . . . . . . . . . . . . 82
6.3.5. Impact of the Number of Agents . . . . . . . . . . . . . . . . . 84
6.3.6. Age of Information . . . . . . . . . . . . . . . . . . . . . . . . 84
6.3.7. Channel Saturation Ratio . . . . . . . . . . . . . . . . . . . . 86
6.3.8. Enforcing Full Channel Saturation . . . . . . . . . . . . . . . 86
6.4. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
7. Dual Hop – Single Agent 91
7.1. State-Aware Resource Allocation . . . . . . . . . . . . . . . . . . . . 91
7.2. Optimization Targets . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
7.3. Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
7.3.1. Extensive Simulation . . . . . . . . . . . . . . . . . . . . . . . 96
7.3.2. Non-Integer-Constrained Optimization . . . . . . . . . . . . . 98
7.4. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
8. Conclusions and Outlook 105
8.1. Key Results and Conclusions . . . . . . . . . . . . . . . . . . . . . . . 105
8.2. Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
A. DC Motor Model 111
Bibliography 113
Publications of the Author 127
List of Figures 129
List of Tables 131
List of Operators and Constants 133
List of Symbols 135
List of Acronyms 137
Curriculum Vitae 139In industrial manufacturing, Industry 4.0 refers to the ongoing convergence of the real and virtual worlds, enabled through intelligently interconnecting industrial machines and processes through information and communications technology. Ultrareliable low-latency communication (URLLC) is widely regarded as the enabling technology for Industry 4.0 due to its ability to fulfill highest quality-of-service (QoS) comparable to those of industrial wireline connections. In contrast to this trend, a range of works in the research domain of networked control systems have shown that URLLC’s supreme QoS is not necessarily required to achieve high quality-ofcontrol; the co-design of control and communication enables to jointly optimize and balance both quality-of-control parameters and network parameters through blurring the boundary between application and network layer. However, through the tight interlacing, this approach requires a fundamental (joint) redesign of both control systems and communication networks and may therefore not lead to short-term widespread adoption. Therefore, this thesis instead embraces a novel co-design approach which keeps both domains distinct but leverages the combination of control and communications by yet exploiting the age of information (AoI) as a valuable interface metric.
This thesis contributes to quantifying application dependability as a consequence of exceeding a given peak AoI with the particular focus on packet losses. The beneficial influence of negative temporal packet loss correlation on control performance is demonstrated by means of the automated guided vehicle use case. Assuming small-scale fading as the dominant cause of communication failure, a series of communication failures are mapped to an application failure through discrete-time Markov models for single-hop (e.g, only uplink or downlink) and dual-hop (e.g., subsequent uplink and downlink) architectures. This enables the derivation of application-related dependability metrics such as the mean time to failure in closed form. For single-hop networks, an AoI-aware resource allocation strategy termed state-aware resource allocation (SARA) is proposed that increases the application reliability by orders of magnitude compared to static multi-connectivity while keeping the resource consumption in the range of best-effort single-connectivity. This dependability can also be statistically guaranteed on a system level – where multiple agents compete for a limited number of resources – if the provided amount of resources per agent is increased by approximately 10 %. For the dual-hop scenario, an AoI-aware resource allocation optimization is developed that minimizes a user-defined penalty function that punishes low application reliability, high AoI, and high average resource consumption. This optimization may be carried out offline and each resulting optimal SARA scheme may be implemented as a look-up table in the lower medium access control layer of future wireless industrial networks.:1. Introduction 1
1.1. The Need for an Industrial Solution . . . . . . . . . . . . . . . . . . . 3
1.2. Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2. Related Work 7
2.1. Communications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2. Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3. Codesign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3.1. The Need for Abstraction – Age of Information . . . . . . . . 11
2.4. Dependability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.5. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3. Deriving Proper Communications Requirements 17
3.1. Fundamentals of Control Theory . . . . . . . . . . . . . . . . . . . . 18
3.1.1. Sampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.1.2. Performance Requirements . . . . . . . . . . . . . . . . . . . 21
3.1.3. Packet Losses and Delay . . . . . . . . . . . . . . . . . . . . . 22
3.2. Joint Design of Control Loop with Packet Losses . . . . . . . . . . . . 23
3.2.1. Method 1: Reduced Sampling . . . . . . . . . . . . . . . . . . 23
3.2.2. Method 2: Markov Jump Linear System . . . . . . . . . . . . . 25
3.2.3. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.3. Focus Application: The AGV Use Case . . . . . . . . . . . . . . . . . . 31
3.3.1. Control Loop Model . . . . . . . . . . . . . . . . . . . . . . . 31
3.3.2. Control Performance Requirements . . . . . . . . . . . . . . . 33
3.3.3. Joint Modeling: Applying Reduced Sampling . . . . . . . . . . 34
3.3.4. Joint Modeling: Applying MJLS . . . . . . . . . . . . . . . . . 34
3.4. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4. Modeling Control-Communication Failures 43
4.1. Communication Assumptions . . . . . . . . . . . . . . . . . . . . . . 43
4.1.1. Small-Scale Fading as a Cause of Failure . . . . . . . . . . . . 44
4.1.2. Connectivity Models . . . . . . . . . . . . . . . . . . . . . . . 46
4.2. Failure Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.2.1. Single-hop network . . . . . . . . . . . . . . . . . . . . . . . . 49
4.2.2. Dual-hop network . . . . . . . . . . . . . . . . . . . . . . . . 51
4.3. Performance Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.3.1. Mean Time to Failure . . . . . . . . . . . . . . . . . . . . . . . 54
4.3.2. Packet Loss Ratio . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.3.3. Average Number of Assigned Channels . . . . . . . . . . . . . 57
4.3.4. Age of Information . . . . . . . . . . . . . . . . . . . . . . . . 57
4.4. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5. Single Hop – Single Agent 61
5.1. State-Aware Resource Allocation . . . . . . . . . . . . . . . . . . . . 61
5.2. Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.3. Erroneous Acknowledgments . . . . . . . . . . . . . . . . . . . . . . 67
5.4. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
6. Single Hop – Multiple Agents 71
6.1. Failure Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
6.1.1. Admission Control . . . . . . . . . . . . . . . . . . . . . . . . 72
6.1.2. Transition Probabilities . . . . . . . . . . . . . . . . . . . . . . 73
6.1.3. Computational Complexity . . . . . . . . . . . . . . . . . . . 74
6.1.4. Performance Metrics . . . . . . . . . . . . . . . . . . . . . . . 75
6.2. Illustration Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
6.3. Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
6.3.1. Verification through System-Level Simulation . . . . . . . . . 78
6.3.2. Applicability on the System Level . . . . . . . . . . . . . . . . 79
6.3.3. Comparison of Admission Control Schemes . . . . . . . . . . 80
6.3.4. Impact of the Packet Loss Tolerance . . . . . . . . . . . . . . . 82
6.3.5. Impact of the Number of Agents . . . . . . . . . . . . . . . . . 84
6.3.6. Age of Information . . . . . . . . . . . . . . . . . . . . . . . . 84
6.3.7. Channel Saturation Ratio . . . . . . . . . . . . . . . . . . . . 86
6.3.8. Enforcing Full Channel Saturation . . . . . . . . . . . . . . . 86
6.4. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
7. Dual Hop – Single Agent 91
7.1. State-Aware Resource Allocation . . . . . . . . . . . . . . . . . . . . 91
7.2. Optimization Targets . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
7.3. Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
7.3.1. Extensive Simulation . . . . . . . . . . . . . . . . . . . . . . . 96
7.3.2. Non-Integer-Constrained Optimization . . . . . . . . . . . . . 98
7.4. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
8. Conclusions and Outlook 105
8.1. Key Results and Conclusions . . . . . . . . . . . . . . . . . . . . . . . 105
8.2. Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
A. DC Motor Model 111
Bibliography 113
Publications of the Author 127
List of Figures 129
List of Tables 131
List of Operators and Constants 133
List of Symbols 135
List of Acronyms 137
Curriculum Vitae 13
Inference of Resource Management Specifications
A resource leak occurs when a program fails to free some finite resource
after it is no longer needed. Such leaks are a significant cause of real-world
crashes and performance problems. Recent work proposed an approach to prevent
resource leaks based on checking resource management specifications. A resource
management specification expresses how the program allocates resources, passes
them around, and releases them; it also tracks the ownership relationship
between objects and resources, and aliasing relationships between objects.
While this specify-and-verify approach has several advantages compared to prior
techniques, the need to manually write annotations presents a significant
barrier to its practical adoption.
This paper presents a novel technique to automatically infer a resource
management specification for a program, broadening the applicability of
specify-and-check verification for resource leaks. Inference in this domain is
challenging because resource management specifications differ significantly in
nature from the types that most inference techniques target. Further, for
practical effectiveness, we desire a technique that can infer the resource
management specification intended by the developer, even in cases when the code
does not fully adhere to that specification. We address these challenges
through a set of inference rules carefully designed to capture real-world
coding patterns, yielding an effective fixed-point-based inference algorithm.
We have implemented our inference algorithm in two different systems,
targeting programs written in Java and C#. In an experimental evaluation, our
technique inferred 85.5% of the annotations that programmers had written
manually for the benchmarks. Further, the verifier issued nearly the same rate
of false alarms with the manually-written and automatically-inferred
annotations
- …