The objective of our monograph is to cover the developments on the theoretical foundations of distributed symmetry breaking in the message-passing model. We hope that our monograph will stimulate further progress in this exciting area.
The focus of this monograph is on symmetry breaking problems in the message-passing model of distributed computing. In this model a communication network is represented by a n-vertex graph G = (V,E), whose vertices host autonomous processors. The processors communicate over the edges of G in discrete rounds. The goal is to devise algorithms that use as few rounds as possible. A typical symmetry-breaking problem is the problem of graph coloring. Denote by ? the maximum degree of G. While coloring G with ? + 1 colors is trivial in the centralized setting, the problem becomes much more challenging in the distributed one. One can also compromise on the number of colors, if this allows for more efficient algorithms. Other typical symmetry-breaking problems are the problems of computing a maximal independent set (MIS) and a maximal matching (MM). The study of these problems dates back to the very early days of distributed computing. The founding fathers of distributed computing laid firm foundations for the area of distributed symmetry breaking already in the eighties. In particular, they showed that all these problems can be solved in randomized logarithmic time. Also, Linial showed that an O(?2)-coloring can be solved very efficiently deterministically. However, fundamental questions were left open for decades. In particular, it is not known if the MIS or the (? + 1)-coloring can be solved in deterministic polylogarithmic time. Moreover, until recently it was not known if in deterministic polylogarithmic time one can color a graph with significantly fewer than ?2 colors. Additionally, it was open (and still open to some extent) if one can have sublogarithmic randomized algorithms for the symmetry breaking problems. Recently, significant progress was achieved in the study of these questions. More efficient deterministic and randomized (? + 1)-coloring algorithms were achieved. Deterministic ?1 + o(1)-coloring algorithms with polylogarithmic running time were devised. Improved (and often sublogarithmic-time) randomized algorithms were devised. Drastically improved lower bounds were given. Wide families of graphs in which these problems are solvable much faster than on general graphs were identified. The objective of our monograph is to cover most of these developments, and as a result to provide a treatise on theoretical foundations of distributed symmetry breaking in the message-passing model. We hope that our monograph will stimulate further progress in this exciting area.
This book presents a comprehensive review of key distributed graph algorithms for computer network applications, with a particular emphasis on practical implementation. Topics and features: introduces a range of fundamental graph algorithms, covering spanning trees, graph traversal algorithms, routing algorithms, and self-stabilization; reviews graph-theoretical distributed approximation algorithms with applications in ad hoc wireless networks; describes in detail the implementation of each algorithm, with extensive use of supporting examples, and discusses their concrete network applications; examines key graph-theoretical algorithm concepts, such as dominating sets, and parameters for mobility and energy levels of nodes in wireless ad hoc networks, and provides a contemporary survey of each topic; presents a simple simulator, developed to run distributed algorithms; provides practical exercises at the end of each chapter.
Contains a wealth of information previously scattered in research journals, conference proceedings and technical reports. Identifies more than 200 unsolved problems. Every problem is stated in a self-contained, extremely accessible format, followed by comments on its history, related results and literature. The book will stimulate research and help avoid efforts on solving already settled problems. Each chapter concludes with a comprehensive list of references which will lead readers to original sources, important contributions and other surveys.
The Boost Graph Library (BGL) is the first C++ library to apply the principles of generic programming to the construction of the advanced data structures and algorithms used in graph computations. Problems in such diverse areas as Internet packet routing, molecular biology, scientific computing, and telephone network design can be solved by using graph theory. This book presents an in-depth description of the BGL and provides working examples designed to illustrate the application of BGL to these real-world problems. Written by the BGL developers, The Boost Graph Library: User Guide and Reference Manual gives you all the information you need to take advantage of this powerful new library. Part I is a complete user guide that begins by introducing graph concepts, terminology, and generic graph algorithms. This guide also takes the reader on a tour through the major features of the BGL; all motivated with example problems. Part II is a comprehensive reference manual that provides complete documentation of all BGL concepts, algorithms, and classes. Readers will find coverage of: Graph terminology and concepts Generic programming techniques in C++ Shortest-path algorithms for Internet routing Network planning problems using the minimum-spanning tree algorithms BGL algorithms with implicitly defined graphs BGL Interfaces to other graph libraries BGL concepts and algorithms BGL classes–graph, auxiliary, and adaptor Groundbreaking in its scope, this book offers the key to unlocking the power of the BGL for the C++ programmer looking to extend the reach of generic programming beyond the Standard Template Library.
Chromatic graph theory is a thriving area that uses various ideas of 'colouring' (of vertices, edges, and so on) to explore aspects of graph theory. It has links with other areas of mathematics, including topology, algebra and geometry, and is increasingly used in such areas as computer networks, where colouring algorithms form an important feature. While other books cover portions of the material, no other title has such a wide scope as this one, in which acknowledged international experts in the field provide a broad survey of the subject. All fifteen chapters have been carefully edited, with uniform notation and terminology applied throughout. Bjarne Toft (Odense, Denmark), widely recognized for his substantial contributions to the area, acted as academic consultant. The book serves as a valuable reference for researchers and graduate students in graph theory and combinatorics and as a useful introduction to the topic for mathematicians in related fields.
Graph Algorithms for Data Science teaches you how to construct graphs from both structured and unstructured data. You'll learn how the flexible Cypher query language can be used to easily manipulate graph structures, and extract amazing insights. Graph Algorithms for Data Science is a hands-on guide to working with graph-based data in applications. It's filled with fascinating and fun projects, demonstrating the ins-and-outs of graphs. You'll gain practical skills by analyzing Twitter, building graphs with NLP techniques, and much more. These powerful graph algorithms are explained in clear, jargon-free text and illustrations that makes them easy to apply to your own projects.
This clearly structured textbook/reference presents a detailed and comprehensive review of the fundamental principles of sequential graph algorithms, approaches for NP-hard graph problems, and approximation algorithms and heuristics for such problems. The work also provides a comparative analysis of sequential, parallel and distributed graph algorithms – including algorithms for big data – and an investigation into the conversion principles between the three algorithmic methods. Topics and features: presents a comprehensive analysis of sequential graph algorithms; offers a unifying view by examining the same graph problem from each of the three paradigms of sequential, parallel and distributed algorithms; describes methods for the conversion between sequential, parallel and distributed graph algorithms; surveys methods for the analysis of large graphs and complex network applications; includes full implementation details for the problems presented throughout the text; provides additional supporting material at an accompanying website. This practical guide to the design and analysis of graph algorithms is ideal for advanced and graduate students of computer science, electrical and electronic engineering, and bioinformatics. The material covered will also be of value to any researcher familiar with the basics of discrete mathematics, graph theory and algorithms.
This book includes high-quality, peer-reviewed papers from the International Conference on Recent Advancement in Computer, Communication and Computational Sciences (RACCCS-2017), held at Aryabhatta College of Engineering & Research Center, Ajmer, India on September 2–3, 2017, presenting the latest developments and technical solutions in computational sciences. Data science, data- and knowledge engineering require networking and communication as a backbone and have a wide scope of implementation in engineering sciences. Keeping this ideology in mind, the book offers insights that reflect the advances in these fields from upcoming researchers and leading academicians across the globe. Covering a variety of topics, such as intelligent hardware and software design, advanced communications, intelligent computing technologies, advanced software engineering, the web and informatics, and intelligent image processing, it helps those in the computer industry and academia use the advances of next-generation communication and computational technology to shape real-world applications.