Graph Theory and Complex Networks An Introduction Maarten van Steen Copyright © 2010 Maarten van Steen Published by Maarten van Steen ISBN: 978-90-815406-1-2 Edition: 1. Printing: 01 (April 2010) All rights to text and illustrations are reserved by Maarten van Steen. This work may not be copied, reproduced, or translated in whole or part without written permission of the publisher, except for brief excerpts in reviews or scholarly analysis. Use with any form of information storage and retrieval, electronic adaptation or whatever, computer software, or by similar or dissimilar methods now known or developed in the future is strictly forbidden without written permission of the publisher. To Mari ¨ elle, Max, and Elke CONTENTS Preface ix 1 Introduction 1 1.1 Communication networks . . . . . . . . . . . . . . . . . . . . . 4 Historical perspective . . . . . . . . . . . . . . . . . . . . . . . . 4 From telephony to the Internet . . . . . . . . . . . . . . . . . . 6 The Web and Wikis . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.2 Social networks . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Online communities . . . . . . . . . . . . . . . . . . . . . . . . 9 Traditional social networks . . . . . . . . . . . . . . . . . . . . 10 1.3 Networks everywhere . . . . . . . . . . . . . . . . . . . . . . . 11 1.4 Organization of this book . . . . . . . . . . . . . . . . . . . . . 13 2 Foundations 17 2.1 Formalities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Graphs and vertex degrees . . . . . . . . . . . . . . . . . . . . . 18 Degree sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Subgraphs and line graphs . . . . . . . . . . . . . . . . . . . . . 28 2.2 Graph representations . . . . . . . . . . . . . . . . . . . . . . . 31 Data structures . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Graph isomorphism . . . . . . . . . . . . . . . . . . . . . . . . 33 2.3 Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 2.4 Drawing graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 Graph embeddings . . . . . . . . . . . . . . . . . . . . . . . . . 45 Planar graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 3 Extensions 55 3.1 Directed graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Basics of directed graphs . . . . . . . . . . . . . . . . . . . . . . 57 v PERSONALIZED FOR EEGCHEN@CITYU.EDU.HK Connectivity for directed graphs . . . . . . . . . . . . . . . . . 61 3.2 Weighted graphs . . . . . . . . . . . . . . . . . . . . . . . . . . 65 3.3 Colorings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Edge colorings . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Vertex colorings . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 4 Network traversal 79 4.1 Euler tours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 Constructing an Euler tour . . . . . . . . . . . . . . . . . . . . . 82 The Chinese postman problem . . . . . . . . . . . . . . . . . . 87 4.2 Hamilton cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Properties of Hamiltonian graphs . . . . . . . . . . . . . . . . . 92 Finding a Hamilton cycle . . . . . . . . . . . . . . . . . . . . . . 97 Optimal Hamilton cycles . . . . . . . . . . . . . . . . . . . . . . 100 5 Trees 105 5.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 Trees in transportation networks . . . . . . . . . . . . . . . . . 107 Trees as data structures . . . . . . . . . . . . . . . . . . . . . . . 109 5.2 Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 5.3 Spanning trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 5.4 Routing in communication networks . . . . . . . . . . . . . . . 119 Dijkstra’s algorithm . . . . . . . . . . . . . . . . . . . . . . . . . 120 The Bellman-Ford algorithm . . . . . . . . . . . . . . . . . . . . 123 A note on algorithmic performance . . . . . . . . . . . . . . . . 127 6 Network analysis 131 6.1 Vertex degrees . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Degree distribution . . . . . . . . . . . . . . . . . . . . . . . . . 134 Degree correlations . . . . . . . . . . . . . . . . . . . . . . . . . 136 6.2 Distance statistics . . . . . . . . . . . . . . . . . . . . . . . . . . 140 6.3 Clustering coefficient . . . . . . . . . . . . . . . . . . . . . . . . 143 Some effects of clustering . . . . . . . . . . . . . . . . . . . . . 143 Local view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 Global view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 6.4 Centrality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 7 Random networks 155 7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 7.2 Classical random networks . . . . . . . . . . . . . . . . . . . . 158 Degree distribution . . . . . . . . . . . . . . . . . . . . . . . . . 159 Other metrics for random graphs . . . . . . . . . . . . . . . . . 162 vi PERSONALIZED FOR EEGCHEN@CITYU.EDU.HK 7.3 Small worlds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 7.4 Scale-free networks . . . . . . . . . . . . . . . . . . . . . . . . . 172 Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 Properties of scale-free networks . . . . . . . . . . . . . . . . . 178 Related networks . . . . . . . . . . . . . . . . . . . . . . . . . . 181 8 Modern computer networks 185 8.1 The Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 Computer networks . . . . . . . . . . . . . . . . . . . . . . . . . 187 Measuring the topology of the Internet . . . . . . . . . . . . . . 192 8.2 Peer-to-peer overlay networks . . . . . . . . . . . . . . . . . . . 195 Structured overlay networks . . . . . . . . . . . . . . . . . . . . 196 Random overlay networks . . . . . . . . . . . . . . . . . . . . . 204 8.3 The World Wide Web . . . . . . . . . . . . . . . . . . . . . . . . 212 The organization of the Web . . . . . . . . . . . . . . . . . . . . 212 Measuring the topology of the Web . . . . . . . . . . . . . . . . 214 9 Social networks 223 9.1 Social network analysis: introduction . . . . . . . . . . . . . . 225 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 Historical background . . . . . . . . . . . . . . . . . . . . . . . 227 Sociograms in practice: a teacher’s aid . . . . . . . . . . . . . . 231 9.2 Some basic concepts . . . . . . . . . . . . . . . . . . . . . . . . 234 Centrality and prestige . . . . . . . . . . . . . . . . . . . . . . . 234 Structural balance . . . . . . . . . . . . . . . . . . . . . . . . . . 240 Cohesive subgroups . . . . . . . . . . . . . . . . . . . . . . . . 246 Affiliation networks . . . . . . . . . . . . . . . . . . . . . . . . . 252 9.3 Equivalence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 Structural equivalence . . . . . . . . . . . . . . . . . . . . . . . 255 Automorphic equivalence . . . . . . . . . . . . . . . . . . . . . 258 Regular equivalence . . . . . . . . . . . . . . . . . . . . . . . . 259 Conclusions 261 Mathematical notations 267 Index 271 Bibliography 279 vii [...]... traditional textbooks on graph theory, such as random networks and various metrics for characterizing graphs 1.4 Organization of this book In the following chapters we’ll go through the foundations of graph theory and move on into parts that are normally discussed in more advanced textbooks on networks The goal of this text is to provide only an awareness and basic understanding of complex networks, for which... found in standard textbooks on graph theory Except for Chapter 6, this material is to be considered essential for studying graph theory and should in any case be covered Chapter 6 can be considered as a compilation of various metrics from different disciplines to characterize graphs, their structures, and the positions that different nodes have in networks The second part consists of Chapters 7–9 and discusses... and always up-to-date To make the material more accessible (and fun), but also to allow students to do some basic analysis of larger graphs and networks, we have been using Mathematica in combination with Combinatorica All material, including Mathematica notebooks and data on graphs are all available through the Web site The site also has some extra tools for generating graphs A Of course, slides and. .. reputation between people Figure 1.4: Examples of networks EEGCHEN@CITYU.EDU.HK 12 PERSONALIZED FOR Understanding complex networks requires the right set of tools In our case, the tools we need come from a field of mathematics known as graph theory In this book, you’ll learn about the essential elements of graph theory in order to obtain insight into modern networks Next to that, we discuss a number of... world of graphs and should also feel more comfortable with mathematical notations Graphs and vertex degrees As said, the networks that have been introduced so far are mathematically known as graphs In its simplest form, a graph is a collection of vertices that can be connected to each other by means of edges In particular, each edge of graph joins exactly two vertices Using a formal notation, a graph. .. transmitter and reader (i.e., sender and receiver), and so on In other words, these seemingly primitive communication networks had to deal with virtually the same issues as modern systems Conceptually, there is really no difference EEGCHEN@CITYU.EDU.HK 5 PERSONALIZED FOR By the middle of the 19th Century, Europe had optical telegraphic networks installed in the Scandinavian countries, France, England, Germany,... formalities in Chapter 9 1.3 Networks everywhere Communication networks and social networks are two classes of networks that many people are aware of However, there are many more networks as shown in Figure 1.4 What should immediately become clear is that networks occur in very different scientific disciplines: economics, organizational studies, social sciences, biology, logistics, and so forth What’s more,... changed I myself obtained a masters degree in Applied Mathematics (and in particular Combinatorics) before switching to Computer Science and gradually moving into the field of large-scale distributed systems My own research is by nature highly experimental, and being forced to handle large systems, bumping into the theory and practice of complex networks was almost inevitable I also never quite quit enjoying... no edges Such a trivial graph is called empty Another special case is formed by a simple graph having n vertices, with each vertex being adjacent to every other vertex This graph is also known as a complete graph A complete graph with n vertices is commonly denoted as Kn Finally, the complement of a graph G, denoted as G is the graph obtained from G by removing all its edges and joining exactly those... into complex networks, yet in a more or less rigorous way After studying this material, a student should have a pretty good idea of what makes real-world networks complex instead of complicated, and can do a lot more than just handwaving when it comes to explaining real-world phenomena While getting to that point, I also hope to have achieved two other goals: successfully teaching the foundations of graph . My own research is by nature highly experimental, and being forced to handle large systems, bumping into the theory and practice of complex networks was almost inevitable. I also never quite. to teach graph the- ory to first-year students in Computer Science and Information Science. Of course, I needed to explain why graph theory is important, so I decided to place graph theory in. Graph Theory and Complex Networks An Introduction Maarten van Steen Copyright © 2010 Maarten van Steen Published