Automated Analysis and Optimization of Distributed Self-stabilizing Algorithms

Automated Analysis and Optimization of Distributed Self-stabilizing Algorithms PDF Author: Saba Aflaki
Publisher:
ISBN:
Category :
Languages : en
Pages : 67

Get Book Here

Book Description
Self-stabilization [2] is a versatile technique for recovery from erroneous behavior due to transient faults or wrong initialization. A system is self-stabilizing if (1) starting from an arbitrary initial state it can automatically reach a set of legitimate states in a finite number of steps and (2) it remains in legitimate states in the absence of faults. Weak-stabilization [3] and probabilistic-stabilization [4] were later introduced in the literature to deal with resource consumption of self-stabilizing algorithms and impossibility results. Since the system perturbed by fault may deviate from correct behavior for a finite amount of time, it is paramount to minimize this time as much as possible, especially in the domain of robotics and networking. This type of fault tolerance is called non-masking because the faulty behavior is not completely masked from the user [1]. Designing correct stabilizing algorithms can be tedious. Designing such algorithms that satisfy certain average recovery time constraints (e.g., for performance guarantees) adds further complications to this process. Therefore, developing an automatic technique that takes as input the specification of the desired system, and synthesizes as output a stabilizing algorithm with minimum (or other upper bound) average recovery time is useful and challenging. In this thesis, our main focus is on designing automated techniques to optimize the average recovery time of stabilizing systems using model checking and synthesis techniques. First, we prove that synthesizing weak-stabilizing distributed programs from scratch and repairing stabilizing algorithms with average recovery time constraints are NP-complete in the state-space of the program. To cope with this complexity, we propose a polynomial-time heuristic that compared to existing stabilizing algorithms, provides lower average recovery time for many of our case studies. Second, we study the problem of fine tuning of probabilistic-stabilizing systems to improve their performance. We take advantage of the two properties of self-stabilizing algorithms to model them as absorbing discrete-time Markov chains. This will reduce the computation of average recovery time to finding the weighted sum of elements in the inverse of a matrix. Finally, we study the impact of scheduling policies on recovery time of stabilizing systems. We, in particular, propose a method to augment self-stabilizing programs with k-central and k-bounded schedulers to study dierent factors, such as geographical distance of processes and the achievable level of parallelism.

Automated Analysis and Optimization of Distributed Self-stabilizing Algorithms

Automated Analysis and Optimization of Distributed Self-stabilizing Algorithms PDF Author: Saba Aflaki
Publisher:
ISBN:
Category :
Languages : en
Pages : 67

Get Book Here

Book Description
Self-stabilization [2] is a versatile technique for recovery from erroneous behavior due to transient faults or wrong initialization. A system is self-stabilizing if (1) starting from an arbitrary initial state it can automatically reach a set of legitimate states in a finite number of steps and (2) it remains in legitimate states in the absence of faults. Weak-stabilization [3] and probabilistic-stabilization [4] were later introduced in the literature to deal with resource consumption of self-stabilizing algorithms and impossibility results. Since the system perturbed by fault may deviate from correct behavior for a finite amount of time, it is paramount to minimize this time as much as possible, especially in the domain of robotics and networking. This type of fault tolerance is called non-masking because the faulty behavior is not completely masked from the user [1]. Designing correct stabilizing algorithms can be tedious. Designing such algorithms that satisfy certain average recovery time constraints (e.g., for performance guarantees) adds further complications to this process. Therefore, developing an automatic technique that takes as input the specification of the desired system, and synthesizes as output a stabilizing algorithm with minimum (or other upper bound) average recovery time is useful and challenging. In this thesis, our main focus is on designing automated techniques to optimize the average recovery time of stabilizing systems using model checking and synthesis techniques. First, we prove that synthesizing weak-stabilizing distributed programs from scratch and repairing stabilizing algorithms with average recovery time constraints are NP-complete in the state-space of the program. To cope with this complexity, we propose a polynomial-time heuristic that compared to existing stabilizing algorithms, provides lower average recovery time for many of our case studies. Second, we study the problem of fine tuning of probabilistic-stabilizing systems to improve their performance. We take advantage of the two properties of self-stabilizing algorithms to model them as absorbing discrete-time Markov chains. This will reduce the computation of average recovery time to finding the weighted sum of elements in the inverse of a matrix. Finally, we study the impact of scheduling policies on recovery time of stabilizing systems. We, in particular, propose a method to augment self-stabilizing programs with k-central and k-bounded schedulers to study dierent factors, such as geographical distance of processes and the achievable level of parallelism.

Introduction to Distributed Self-Stabilizing Algorithms

Introduction to Distributed Self-Stabilizing Algorithms PDF Author: Karine Altisen
Publisher: Springer Nature
ISBN: 3031020138
Category : Computers
Languages : en
Pages : 147

Get Book Here

Book Description
This book aims at being a comprehensive and pedagogical introduction to the concept of self-stabilization, introduced by Edsger Wybe Dijkstra in 1973. Self-stabilization characterizes the ability of a distributed algorithm to converge within finite time to a configuration from which its behavior is correct (i.e., satisfies a given specification), regardless the arbitrary initial configuration of the system. This arbitrary initial configuration may be the result of the occurrence of a finite number of transient faults. Hence, self-stabilization is actually considered as a versatile non-masking fault tolerance approach, since it recovers from the effect of any finite number of such faults in an unified manner. Another major interest of such an automatic recovery method comes from the difficulty of resetting malfunctioning devices in a large-scale (and so, geographically spread) distributed system (the Internet, Pair-to-Pair networks, and Delay Tolerant Networks are examples of such distributed systems). Furthermore, self-stabilization is usually recognized as a lightweight property to achieve fault tolerance as compared to other classical fault tolerance approaches. Indeed, the overhead, both in terms of time and space, of state-of-the-art self-stabilizing algorithms is commonly small. This makes self-stabilization very attractive for distributed systems equipped of processes with low computational and memory capabilities, such as wireless sensor networks. After more than 40 years of existence, self-stabilization is now sufficiently established as an important field of research in theoretical distributed computing to justify its teaching in advanced research-oriented graduate courses. This book is an initiation course, which consists of the formal definition of self-stabilization and its related concepts, followed by a deep review and study of classical (simple) algorithms, commonly used proof schemes and design patterns, as well as premium results issued from the self-stabilizing community. As often happens in the self-stabilizing area, in this book we focus on the proof of correctness and the analytical complexity of the studied distributed self-stabilizing algorithms. Finally, we underline that most of the algorithms studied in this book are actually dedicated to the high-level atomic-state model, which is the most commonly used computational model in the self-stabilizing area. However, in the last chapter, we present general techniques to achieve self-stabilization in the low-level message passing model, as well as example algorithms.

Distributed Optimization: Advances in Theories, Methods, and Applications

Distributed Optimization: Advances in Theories, Methods, and Applications PDF Author: Huaqing Li
Publisher: Springer Nature
ISBN: 9811561095
Category : Technology & Engineering
Languages : en
Pages : 243

Get Book Here

Book Description
This book offers a valuable reference guide for researchers in distributed optimization and for senior undergraduate and graduate students alike. Focusing on the natures and functions of agents, communication networks and algorithms in the context of distributed optimization for networked control systems, this book introduces readers to the background of distributed optimization; recent developments in distributed algorithms for various types of underlying communication networks; the implementation of computation-efficient and communication-efficient strategies in the execution of distributed algorithms; and the frameworks of convergence analysis and performance evaluation. On this basis, the book then thoroughly studies 1) distributed constrained optimization and the random sleep scheme, from an agent perspective; 2) asynchronous broadcast-based algorithms, event-triggered communication, quantized communication, unbalanced directed networks, and time-varying networks, from a communication network perspective; and 3) accelerated algorithms and stochastic gradient algorithms, from an algorithm perspective. Finally, the applications of distributed optimization in large-scale statistical learning, wireless sensor networks, and for optimal energy management in smart grids are discussed.

Self-stabilization

Self-stabilization PDF Author: Shlomi Dolev
Publisher: MIT Press
ISBN: 9780262041782
Category : Computers
Languages : en
Pages : 212

Get Book Here

Book Description
Shlomi Dolev presents the fundamentals of self-stabilization and demonstrates the process of designing self-stabilizing distributed systems.

Self-Stabilizing Systems

Self-Stabilizing Systems PDF Author: Ted Herman
Publisher: Springer Science & Business Media
ISBN: 3540298142
Category : Business & Economics
Languages : en
Pages : 237

Get Book Here

Book Description
This book constitutes the refereed proceedings of the 7th International Symposium on Self-Stabilizing Systems, SSS 2005, held in Barcelona, Spain, in October 2005. The 15 revised full papers presented were carefully reviewed and selected from 33 submissions. The papers address classical topics of self-stabilization, prevailing extensions to the field, such as snap-stabilization, code stabilization, self-stabilization with either dynamic, faulty or Byzantine components, or deal with applications of self-stabilization, either related to operating systems, security, or mobile and ad hoc networks.

Distributed Self-stabilizing Algorithms

Distributed Self-stabilizing Algorithms PDF Author: Srinivasan Chandrasekar
Publisher:
ISBN:
Category : Algorithms
Languages : en
Pages : 62

Get Book Here

Book Description


Distributed Optimization and Learning

Distributed Optimization and Learning PDF Author: Zhongguo Li
Publisher: Elsevier
ISBN: 0443216371
Category : Technology & Engineering
Languages : en
Pages : 288

Get Book Here

Book Description
Distributed Optimization and Learning: A Control-Theoretic Perspective illustrates the underlying principles of distributed optimization and learning. The book presents a systematic and self-contained description of distributed optimization and learning algorithms from a control-theoretic perspective. It focuses on exploring control-theoretic approaches and how those approaches can be utilized to solve distributed optimization and learning problems over network-connected, multi-agent systems. As there are strong links between optimization and learning, this book provides a unified platform for understanding distributed optimization and learning algorithms for different purposes. Provides a series of the latest results, including but not limited to, distributed cooperative and competitive optimization, machine learning, and optimal resource allocation Presents the most recent advances in theory and applications of distributed optimization and machine learning, including insightful connections to traditional control techniques Offers numerical and simulation results in each chapter in order to reflect engineering practice and demonstrate the main focus of developed analysis and synthesis approaches

Designing Self-stabilizing Algorithms for Practical Distributed Systems

Designing Self-stabilizing Algorithms for Practical Distributed Systems PDF Author: Mikhail Nesterenko
Publisher:
ISBN:
Category :
Languages : en
Pages : 102

Get Book Here

Book Description


Distributed Computing

Distributed Computing PDF Author: Yehuda Afek
Publisher: Springer
ISBN: 364241527X
Category : Computers
Languages : en
Pages : 609

Get Book Here

Book Description
This book constitutes the proceedings of the 27th International Symposium on Distributed Computing, DISC 2013, held in Jerusalem, Israel, in October 2013. The 27 full papers presented in this volume were carefully reviewed and selected from 142 submissions; 16 brief announcements are also included. The papers are organized in topical sections named: graph distributed algorithms; topology, leader election, and spanning trees; software transactional memory; shared memory executions; shared memory and storage; gossip and rumor; shared memory tasks and data structures; routing; radio networks and the SINR model; crypto, trust, and influence; and networking.

Implementation of Self Stabilizing Algorithms in Distributed Environment

Implementation of Self Stabilizing Algorithms in Distributed Environment PDF Author: Sridevi Jaldu
Publisher:
ISBN:
Category :
Languages : en
Pages : 142

Get Book Here

Book Description