- Graphenisomorphie
-
Bei der Untersuchung graphentheoretischer Probleme kommt es meist nur auf die Struktur der Graphen, nicht aber auf die Bezeichnung ihrer Knoten an. In den allermeisten Fällen sind die untersuchten Grapheneigenschaften dann invariant bzgl. Isomorphie, die im folgenden genauer definiert wird.
Inhaltsverzeichnis
Definitionen
Seien G1=(V1,E1) und G2=(V2,E2) Graphen desselben Typs. Eine bijektive Abbildung p von V1 nach V2 heißt Isomorphismus zwischen G1 und G2, falls gilt:
- {v,w} ist Kante von G1 genau dann, wenn {p(v),p(w)} Kante von G2 ist in ungerichteten Graphen ohne Mehrfachkanten,
- (v,w) ist Kante von G1 genau dann, wenn (p(v),p(w)) Kante von G2 ist in gerichteten Graphen ohne Mehrfachkanten,
- E1({v,w})=E2({p(v),p(w)}) in ungerichteten Graphen mit Mehrfachkanten, d. h. je zwei Ecken sind mit ebensovielen Kanten verbunden wie ihre Bildecken.
- E1((v,w))=E2((p(v),p(w))) in gerichteten Graphen mit Mehrfachkanten,
- {v1,...,vk} ist Kante von G1 genau dann, wenn {p(v1),...,p(vk)} Kante von G2 ist in Hypergraphen.
Zwei Graphen heißen zueinander isomorph, falls es einen Isomorphismus zwischen ihnen gibt. Die Abbildung p heißt Automorphismus von G1 bzw. G2, falls zusätzlich G1=G2 gilt.
Prüfung auf Isomorphie
Zur Prüfung der Isomorphie zweier gegebener Graphen ist kein effizienter Algorithmus bekannt. Mehr noch, die Komplexität des bestmöglichen Algorithmus ist bis heute noch nicht bestimmt. Insbesondere ist die Isomorphie von Graphen eines der wenigen bekannten Probleme in NP, für die weder bekannt ist, ob sie in P enthalten, noch ob sie NP-vollständig sind.
Beispiel
G1 = (V1,E1) G2 = (V2,E2) p(a) = 1 p(b) = 6
p(c) = 8
p(d) = 3
p(g) = 5
p(h) = 2
p(i) = 4
p(j) = 7
Software
- http://cs.anu.edu.au/people/bdm/nauty/ - nauty, ein Programm zur Berechnung der Automorphismengruppen und der kanonischen Labelings von Graphen. Zwei Graphen sind genau dann isomorph, wenn ihre kanonischen Labelings übereinstimmen.
Wikimedia Foundation.