5.1 Graphentheorie Ulrik Brandes Die Graphentheorie ist ein Zweig der Diskreten Mathematik, dessen Entstehung für gewöhnlich auf eine 1736 erschienene Arbeit von Leonhard Euler über das so genannte Königsberger Brückenproblem zurückgeführt wird (Euler 1936). Sie hat in der zweiten Hälfte des letzten Jahrhunderts eine rasante Ausbreitung erfahren und ist gleichzeitig auch zu einem wichtigen Teilgebiet der Informatik geworden. Wesentlicher Grund dafür ist, dass aus dem Zusammenspiel von Beziehungen zwischen Objekten, unabhängig von deren Art und Kontext, häufig ähnliche strukturelle Fragestellungen und Lösungsansätze erwachsen. In der reinen Graphentheorie werden deshalb keine Annahmen darüber gemacht, um was es sich bei den Objekten handelt und welche Bedeutung die Beziehungen haben. Indem von allem abstrahiert wird, was sich nicht als Konsequenz aus dem bloßen Vorhandensein paarweiser Beziehungen ergibt, beschränkt sich die Graphentheorie auf den strukturellen Kern einer Fragestellung. Dadurch ist es möglich, Konzepte und Verfahren (formal) in beliebige Anwendungskontexte zu übertragen oder sogar Lösungen für Probleme zu entwickeln, die bisher noch in keinem Kontext überhaupt als solche formuliert wurden. In Bezug auf Beziehungsstrukturen ist die Rolle der Graphentheorie damit vergleichbar mit derjenigen, welche die Statistik für Häufigkeiten spielt. Aus der Allgemeinheit des Modells ergeben sich einige wichtige Konsequenzen für die Anwendung auf sozialwissenschaftliche Fragestellungen, die zwar eigentlich selbstverständlich erscheinen, aber trotzdem häufig außer Acht gelassen oder zumindest nicht in vollem Umfang bedacht werden: 1. 2. 3. Wie die ganze Mathematik ist die Graphentheorie abstrakt, da nicht die modellierten Gegenstände, sondern nur einige der im jeweiligen Kontext wesentlichen Eigenschaften derselben behandelt werden. Dies macht den Umgang mit ihr mitunter mühsam, hat aber den Vorteil der Präzision und der Übertragbarkeit von Erkenntnissen. Notwendige Bedingung für die Anwendbarkeit von graphentheoretischen Methoden ist, dass ihre oft impliziten Voraussetzungen erfüllt sind. Netzwerkforschung kann also nur mit ausreichender, in der Regel theoriegeleiteter Fundierung zu relevanten Ergebnissen führen, andernfalls wird auch noch so anspruchsvolle graphentheoretische Analyse vor allem Scheinpräzision erzeugen. Graphentheoretische Methoden werden in so ziemlich jedem Wissen- und Wirtschaftszweig verwendet und entwickelt. Entsprechend breit gestreut und teils idiomatisch sind die Konzepte. Verschiedene Dinge werden mitunter gleich bezeichnet und gleiche Dinge verschieden. Bei der Übertragung ist also einerseits Vorsicht geboten, andererseits existiert ein riesiger Methodenfundus, dessen Exploration sich lohnen kann. 346 Ulrik Brandes In diesem Kapitel kann natürlich nur eine kurze Einführung wesentlicher Begriffe geleistet werden. Es soll gezeigt werden, dass viele der – oft eher metaphorisch – als Netzwerk bezeichneten Strukturen sich durch bestimmte Typen von Graphen, deren Elemente meist durch eine Reihe von Attributen näher beschrieben werden, modelliert werden können, und welche Sorten von Eigenschaften dabei erhalten bleiben. Neben einer Einführung in die Terminologie soll dadurch auch eine Bewusstseinsschärfung für Modellierungsaspekte erfolgen. Von den zahlreichen weiterführenden Büchern zum Thema seien hier nur ein grundlegendes (Diestel 2006), ein algorithmisches (Krumke und Noltemeier 2005), ein besonders anschauliches (Nitzsche 2005), ein historisch bedeutsames (König 1936) und ein durch soziale Netzwerke beeinflusstes (Harary et al. 1965) genannt. 1 Graphen Ein Graph G (V E ) ist ein Paar aus einer Menge V von Knoten (engl. vertices, oft auch nodes oder points), welche die Akteure des Netzwerks repräsentieren, und einer Menge E von Kanten (engl. edges, oft auch links, ties oder lines), die Beziehungen zwischen den Akteuren repräsentieren. Wir bezeichnen die Anzahl1 der Knoten eines Graphen G (V E ) durchgängig mit n _ V _ , und die Anzahl seiner Kanten mit m _ E _ . Abbildung 1: Beispiele eines schlichten ungerichteten Graphen und eines gerichteten Multigraphen (a) schlicht, ungerichtet, bipartit (b) gerichteter Multigraph 1.1 Richtungen und Vielfachheiten Sind die repräsentierten Beziehungen symmetrisch, dann kommt es bei einer Kante nur darauf an, welche Knoten durch sie verbunden sind. Die Kantenmenge zu einer symmetrischen Beziehung besteht daher aus (ungeordneten) Paaren von Knoten, E {{v w} v w V} , die als ungerichtete Kanten bezeichnet werden. 1 Sozialnetzwerke haben naturgemäß eine endliche Zahl von Akteuren, es sei aber angemerkt, dass in der Graphentheorie auch unendliche Graphen betrachtet werden. Graphentheorie 347 Sind die beiden Akteure einer Beziehung hingegen in unterschiedlicher Weise daran beteiligt, z.B. weil einer vom anderen Nachrichten empfängt, dann darf diese Asymmetrie im Modell nicht verloren gehen. Die Kantenmenge besteht in solchen Fällen aus geordneten Paaren von Knoten, E V u V { (u v ) v w V} , die als gerichtete Kanten bezeichnet werden. Ein Graph wird daher auch als gerichtet oder ungerichtet bezeichnet, je nachdem, ob seine Kantenmenge aus gerichteten oder ungerichteten Kanten besteht. In seltenen Fällen werden auch beide Arten von Kanten im selben Graphen verwendet und dieser dann als gemischter Graph bezeichnet. Wenn verschiedene Instanzen der Beziehung zwischen denselben Akteuren unterscheidbar sein sollen, wird für die Kanten eine Multimenge verwendet, d.h. eine Menge, bei der für jedes enthaltene Element zusätzlich eine Vielfachheit (Anzahl der verschiedenen Vorkommen) anzugeben ist. Eine Kante mit Vielfachheit größer eins heißt dann Mehrfachoder parallele Kante, und ein Graphen mit Mehrfachkanten heißt Multigraph. Soll betont werden, dass keine Mehrfachkanten unterschieden werden, wird der Graph als einfach bezeichnet. Steht ein Akteur mit sich selbst in Beziehung, d.h. gibt es einen Knoten v V mit { v v } E bzw. ( v v ) E , so spricht man von einer Schleife (engl. loop). Ein Graph ohne Schleifen heißt schleifenfrei. Ein schlichter Graph enthält weder Schleifen noch Mehrfachkanten. Der Graph in Abbildung 1 ist ein Beispiel dafür. Die Unterscheidung verschiedener Graphentypen ist eine notwendige Komplikation, die einerseits die Anwendbarkeit der Graphentheorie stark erweitert und ohne die vielfach keine schlüssigen Vereinbarungen für analytische Konzepte getroffen werden könnten. Schon so einfache Kenngrößen wie die Dichte, also das Verhältnis der Anzahl vorhandener Kanten m zur Anzahl der möglichen Kanten (mehr dazu im nächsten Kapitel) könnten sonst gar nicht sinnvoll bestimmt werden. In einem schlichten ungerichteten Graphen mit n _V _ Knoten ist die maximale Anzahl der Kanten nämlich § · ¨n¸ ¨2¸ © ¹ n ( n 1) 2 (Anzahl der un- geordneten Paare aus verschiedenen Knoten), in einem einfachen gerichteten Graphen dagegen n 2 (Anzahl der geordneten Paare einschließlich Schleifen). Bei den in diesem Kapitel vorgestellten Konzepten sollte daher immer überprüft werden, ob die Formulierung für eine bestimmte Graphenart anwendbar ist. Da gerichtete Multigraphen offensichtlich den allgemeinsten bisher vorgekommenen Typ darstellen, sind die meisten Konzepte dafür formuliert und für speziellere Graphentypen möglicherweise zu modifizieren. 348 Ulrik Brandes Tabelle 1: Beispiele für Graphenmodelle verschiedenen Typs Netzwerk Verwandtschaft Akteure Personen Beziehung familiäre Beziehungen finanzielle Beteiligung Graphentyp schlicht, ungerichtet Kapitalverflechtung Firmen & Banken bibliographisch Personen & Aufsätze Autorenschaft bimodal, bipartit, ungerichtet Zitationen Autoren Zitation gerichteter Multigraph (mit Schleifen) bimodal, gerichtet 1.2 Attribute Akteure und Beziehungen eines Netzwerks sind durch bloße Angabe ihres Vorhandenseins in der Regel unzureichend beschrieben. Um Graphenmodelle mit zusätzlichen Informationen anzureichern, werden daher Knoten- und Kantenattribute hinzugefügt. Diese können einfache Beschriftungen sein, die lediglich der Identifikation oder Zuordnung dienen (und werden dann in der formalen Analyse meist nicht berücksichtigt), oder sie modifizieren Qualität oder Quantität eines Graphenelements und sind daher entscheidend für die Analyse. In letzterem Fall spricht man von bewerteten Graphen (engl. valued graphs). Bewertungen können Daten beliebigen Typs sein, z.B. kann man mit einem Knotenattribut O V o {A B C} die Akteure in drei Gruppen einteilen oder durch ein Kantenattribut Z E o [01] die Wahrscheinlichkeit für das Funktionieren einer Verbindung angeben. Typ und Bedeutung der Attribute hängen wie das spezielle Graphenmodell vom Anwendungskontext ab, und es ist auch hier darauf zu achten, dass nur damit kompatible Analyseformen angewandt werden. Ein Beispiel dafür wird weiter unten im Abschnitt über Wege gegeben. Hinzu kommt, dass sich die geeignete Darstellung mancher Arten von Attributen erst aus der anzuwendenden Analysemethode ergibt. 1.3 Bimodale, bipartite und Hypergraphen Ein besonders häufiger Fall von Knotenattributen ist dieEinteilung in zwei Gruppen prinzipiell verschiedener Akteure, z.B. Personen und Organisationen, denen sie angehören, oder Personen und Dokumente, die sie verfasst haben. Man spricht dann von bimodalen Netzwerken (engl. two-mode network). Oft ist es sogar so, dass die Beziehungen nur zwischen Akteuren unterschiedlichen Typs bestehen können (kein/e Person/Dokument verfasst ein/e andere/s). Ein bimodales Netzwerk kann äquivalent auch durch einen so genannten Hypergraphen repräsentiert werden. In einem Hypergraphen G (V E ) besteht die Kantenmenge E aus Teilmengen der Knotenmenge; an einer (Hyper-)Kante können also mehr als zwei Knoten beteiligt sein. Für bimodale Netzwerke fasst eine Hyperkante alle Knoten des einen Graphentheorie 349 Typs zusammen, die mit einem gemeinsamen Knoten des anderen Typs in Beziehung stehen. Ein Beispiel zeigt Abbildung 2. Abbildung 2: Die gleichen Mitgliedschaftsdaten als bimodaler Graph aus Direktoren (rund) und Aufsichtsräten (rechteckig), als Hypergraph (Aufsichtsräte umschließen darin vertretene Direktoren) und als zwei Multigraphen (Aufsichtsräte mit gemeinsamen Direktoren bzw. Netzwerk gemeinsamer Zugehörigkeiten) (a) bimodal (b) Hypergraph (c) zwei unimodale Die Modellierung des bimodalen Graphen durch einen Hypergraphen setzt voraus, dass es keine Beziehungen zwischen Akteuren gleichen Typs gibt. Dies ist eine Grapheigenschaft, die auch unabhängig von einer bekannten Einteilung in zwei Gruppen vorliegen kann. Ein Graph heißt daher bipartit (engl. bipartite), wenn seine Knoten auf mindestens eine Weise so in zwei Teilmengen partitioniert werden können, dass keine Kanten innerhalb einer der beiden Mengen verläuft. Die Graustufen in Abbildung 1 definieren eine solche Bipartition. Bimodal und bipartit bezeichnen also nicht ganz den gleichen Sachverhalt: für einen bipartiten Graphen kann es verschiedene Einteilungen in je zwei intern nicht verbundene Gruppen geben, während in einem bimodalen Graphen die Einteilung bereits (durch extrinsische Attribute) festgelegt ist und zumindest grundsätzlich auch Beziehungen zwischen Knoten gleichen Typs bestehen können (im obigen Beispiel etwa Organisationen, die anderen Organisationen angehören). Im nächsten Abschnitt wird gezeigt, wie aus bipartiten bimodalen Graphen neue Beziehungen zwischen Knoten desselben Typs abgeleitet werden können (für Personen etwa die mit der Organisationsanzahl bewertete Beziehung gemeinsamer Zugehörigkeit). 1.4 Multiplexität Sind die Kanten eines Graphen typisiert, d.h. werden mehrere Beziehungsarten in einem Netzwerk zusammen betrachtet, handelt es sich um ein Mehrfachnetzwerk (engl. multiplex network). Je nach Zusammenhang ist es besser, Mehrfachkanten zwischen Knoten zu verwenden, wenn die Akteure in Beziehungen verschiedenen Typs stehen (eine für jede vorkommende Beziehungsart), oder die Kanten eines einfachen Graphen mit der Menge der jeweils zutreffenden Beziehungstypen zu beschriften. 350 Ulrik Brandes 1.5 Dynamik Zu den interessantesten Attributen, die Netzwerkelemente aufweisen können, zählt ihre Veränderung über die Zeit. Längsschnitt-Netzwerke (engl. longitudinal networks) werden durch dynamische Graphen modelliert, es sind allerdings so viele Klassen zu unterscheiden, dass auf eine ausführliche Behandlung verzichtet wird. Für die Analysemöglichkeiten macht es nämlich einen großen Unterschied, ob Kanten hinzukommen und/oder aus dem Graphen herausfallen können, ob die Knotenmenge veränderlich ist, ob sich Attributwerte ändern können, ob die Änderungen getaktet sind (z.B. Erhebungswellen bei Paneldaten) oder kontinuierlich (z.B. zeitlich erfasste Ereignisbeziehungen) auftreten können u.s.w. Viele dieser Varianten bedingen außerdem nochmals weitere Varianten der nachstehenden Konzepte; unter welchen Voraussetzungen sollen z.B. zwei Akteure in einem zeitlich veränderlichen Netzwerk als verbunden betrachtet werden? 2 Isomorphie und Teilgraphen Um Netzwerkstrukturen vergleichen oder Arten von Teilstrukturen untersuchen zu können, braucht man eine Möglichkeit, Graphen zueinander in Beziehung setzen zu können. Abbildung 3: Der Graph H enthält einen Kreis der Länge vier und ist siebenmal im Graphen G enthalten (ein Vorkommen hervorgehoben) Zwei Graphen G1 (V1 E1 ) und G2 (V2 E2 ) heißen isomorph, G1 # G2 , wenn es eine bijektive Abbildung I V1 o V2 gibt, die (u v) E1 (I (u ) I (v)) E2 für alle ( u v ) E erfüllt. Bijektiv bedeutet dabei, dass jeder Knoten aus V2 genau einem Knoten in V1 zugeordnet wird, die Abbildung ist also umkehrbar. Isomorphe Graphen sind strukturell, d.h. wenn man alle Attribute und sonstigen Identifikationen weglässt, nicht zu unterscheiden. 1 Graphentheorie 351 Zu einem Graphen G (V E ) und einer Teilmenge seiner Knoten V c V ist der knoteninduzierte Teilgraph G[V c] (V c { (u v ) E u v V c}) . Der von einer Kantenteilmenge E c E kanteninduzierte Teilgraph G[ E c] (V c E c) enthält alle Knoten V c V , die an mindestens einer Kanten von E c beteiligt sind. Allgemein besteht ein Teilgraph aus einer Teilmenge von Knoten und Kanten, sodass mindestens die Endknoten der Kantenteilmenge vorhanden sind. Ein Graph G enthält einen anderen Graphen H , falls H zu einem Teilgraphen von G isomorph ist. Häufig interessieren z.B. möglichst große Cliquen, d.h. Teilgraphen, in denen jeder Knoten mit jedem anderen verbunden ist. 3 Knotengrad In einem schlichten Graphen ist der Grad, deg(v ) , eines Knotens v V definiert als die Anzahl der Kanten, an denen er beteiligt ist, deg(v ) _ {e E v e} _ In gerichteten Graphen ist zu unterscheiden, ob v Anfangs- oder Endknoten der jeweiligen Kanten ist. Entsprechend sind der Eingangsgrad deg (v) _ {e E e (v w) } _ und Ausgangs grad deg (v) _ {e E e (u v) } _ definiert. Mit Grad wird in gerichteten Graphen dann die Summe aus Ein- und Ausgangsgrad bezeichnet. Die Knotengrade der Graphen aus Abbildung 1 sind in Abbildung 4 Grundlage der Knotendarstellung. Abbildung 4: Graphische Darstellung von ungerichteten Knotengraden durch Fläche und von Ein- und Ausgangsgraden durch Seitenverhältnisse (a) Knotengrade (b) Ein- und Ausgangsgrade Obwohl der Knotengrad eine lokal definierte Größe ist, lassen sich aus ihm bereits interessante Eigenschaften eines Netzwerks bestimmen. So ist die Summe der Knotengrade gerade doppelt so groß wie die Kantenzahl, woraus sich ein Zusammenhang zwischen dem durchschnittlichen Knotengrad und der Dichte ergibt (siehe den nächsten Abschnitt). Eine wichtige Statistik ist die Gradverteilung ( pd )d 012…, wobei pd die relative Häufigkeit bezeichnet, 352 Ulrik Brandes mit welcher der Knotengrad d auftritt. Ist pd im Wesentlichen proportional zu d eine Konstante J ! 0 , spricht man von Skaleninvarianz (engl. scale-free network). 4 J für Wege Neben den direkten Beziehungen, die durch Kanten repräsentiert sind, interessieren fast immer auch die indirekten Beziehungen in einem Netzwerk. Abbildung 5: Ein kürzester Weg von A nach B . (a) ohne Kantenattribut (b) mit Kantenlängen Ein (gerichteter) Weg ist eine Folge von Kanten derart, dass der Anfangspunkt einer Kante der Endpunkt der vorhergehenden ist. Sind zwei Knoten s t V durch einen Weg verbunden, heißt der Weg auch (s t ) -Weg, und t von s aus erreichbar. Erreichbarkeit ist die grundlegende indirekte Beziehung zwischen Knoten und Basis für eine Vielzahl von Analysemethoden, die in diesem Buch besprochen werden. Ein Weg, der an keinem Knoten zweimal ankommt, heißt einfach, und ein Weg, der am selben Knoten beginnt und endet, heißt geschlossen und auch Kreis oder Zykel. Die Länge eines Weges ist die Anzahl seiner Kanten und der (graphentheoretische) Abstand zweier Knoten s t V ist die Länge eines kürzesten (s t ) -Weges. Gibt es keinen (s t ) -Weg, wir das Abstand oft als unendlich aufgefasst. Mit Hilfe der Weglängen lässt sich beispielsweise der Durchmesser eines Graphen als der größte Abstand zweier seiner Knoten erklären. Als weitere Kenngröße für die Struktur eines Netzwerks ist auch der durchschnittliche Abstand unter der Bezeichnung charakteristische Weglänge gebräuchlich. Geringe charakteristische Weglänge ist eine wesentliche Eigenschaft von Graphen, die als kleine Welten (engl. small worlds) bezeichnet werden. Sind die Kanten des Graphen mit Attributen versehen, lassen sich daraus auch Attribute für Wege ableiten. Ist z.B. G E o R eine Abbildung, die jeder Kante e E eine reelle Zahl G (e) R als Länge zuordnet, wird die Länge eines Weges oft als die Summe der Längen seiner Kanten vereinbart und der Abstand zweier Knoten s t V wieder als Graphentheorie 353 die Länge eines kürzesten (s t ) -Weges. Dies verallgemeinert den erstgenannten Längenbegriff, da er als Sonderfall, in dem alle Kantenlängen gleich eins sind, enthalten ist. Das Beispiel in Abbildung 5 zeigt, dass sich durch die Hinzunahme von Kantenattributen Eigenschaften von Wegen ändern können. Als weiteres Beispiel betrachte mit Z E o [01] die Wahrscheinlichkeit 0 d Z (e) d 1 des Funktionierens einer Kommunikationsverbindung e E . Dann ist z.B. das Produkt der Kantenfunktionswahrscheinlichkeiten die Wahrscheinlichkeit für das Funktionieren eines Kommunikationsweges bei voneinander unabhängig auftretenden Ausfällen, und die Wahrscheinlichkeit für das Bestehen irgendeiner Verbindung zwischen zwei Knoten eine deutlich komplizierte Funktion der Kantenbewertungen. 5 Zusammenhang Erreichbarkeit ist unter anderem Grundlage für die Zerlegung von Netzwerken in ihre wesentlichen Bestandteile. Ein Graph heißt stark zusammenhängend, wenn jeder Knoten von jedem anderen aus erreichbar ist und (schwach) zusammenhängend, wenn jeder Knoten von jedem anderen auf ungerichteten Wegen erreichbar ist. Die maximalen zusammenhängenden Teilgraphen sind dann die starken bzw. schwachen Zusammenhangskomponenten. Der Graph in Abbildung 1(b) ist schwach zusammenhängend, hat aber vier (farblich markierte) starke Zusammenhangskomponenten. Ein Graph der durch Wegnahme jeder beliebigen Kante unzusammenhängend würde, ist kreisfrei (enthielte der Graph einen Kreis, so könnte eine seiner Kanten entfernt werden, ohne den Graphen zu zerlegen) und heißt Baum. Entfernt man aus dem Graphen H in Abbildung 3 eine Kante, so wird daraus entweder ein Baum, oder er zerfällt in zwei Zusammenhangskomponenten. Bäume sind typisch für Organigramme und andere hierarchische Strukturen. 6 Literatur Diestel, Reinhard, 2006: Graphentheorie. Heidelberg: Springer. Euler, Leonhard, 1736: Solutio problematis ad geometriam situs pertinentis. Commentarii Academiae Scientiarum Imperialis Petropolitanae 8: 128-140. Harary, Frank, Robert Z. Norman und Dorwin Cartwright, 1965: Structural Models: An Introduction to the Theory of Directed Graphs. New York: John Wiley & Sons. König, Denes, 1936: Theorie der endlichen und unendlichen Graphen: Kombinatorische Topologie der Streckenkomplexe. Leipzig: Akademische Verlagsgesellschaft. Krumke, Sven O. und Hartmut Noltemeier, 2005: Graphentheoretische Konzepte und Algorithmen. Wiesbaden: Vieweg+Teubner. Nitzsche, Manfred, 2005: Graphen für Einsteiger. Wiesbaden: Vieweg+Teubner.