Strukturelle Bilderkennung Boris Flach FAKULTÄT I NFORMATIK , T ECHNISCHE U NIVERSITÄT D RESDEN H ABILITATIONSSCHRIFT E INGEREICHT AM : Erklärung Hiermit erkläre ich, Boris Flach, dass die Habilitationsschrift „Strukturelle Bilderkennung“ von mir selbst ohne andere als die darin angegebenen Hilfsmittel angefertigt worden ist. Wörtlich und inhaltlich übernommene Stellen wurden als solche gekennzeichnet. Dresden, den 11.06.2002 Boris Flach iii Inhaltsverzeichnis Erklärung iii Vorwort vii Danksagung ix Kapitel 1. Probleme der strukturellen Erkennung 1.1. Die Consistent Labelling Aufgabe 1.2. Unscharfe Objektklassen und Bilder mit Störungen 1.3. Statistische Formulierung der strukturellen Erkennung 1.4. Einheitliche Formulierung und Komplexitätsbetrachtungen 1 1 4 7 12 Kapitel 2. Beispiele struktureller Erkennungsaufgaben 2.1. Strukturelle Modellierung der Stereorekonstruktion 2.2. Modellierung der Jahrringstruktur in Holzoberflächen 2.3. Strukturelle Segmentierung 17 17 23 28 Kapitel 3. Lösbare MaxMin Probleme 3.1. MaxMin Aufgaben auf partiellen m-Bäumen 3.2. Der Relaxation Labelling Algorithmus 3.3. Verbände und bikonkave Funktionen 3.4. Trikonkave Funktionen und die Stern-Simplex Transformation 3.5. Beweis des Stern-Simplex Theorems 33 33 35 38 41 46 Kapitel 4. Lösbare MaxSum Probleme 4.1. Bekannte lösbare MaxSum Probleme 4.2. MaxSum Probleme mit bikonkaven Funktionen 51 52 58 Zusammenfassung 63 Literaturverzeichnis 65 v Vorwort Diese Arbeit beschäftigt sich mit struktureller Bilderkennung. Die Spezifik dieses Gebietes der Mustererkennung und Bildverarbeitung ergibt sich daraus, dass die Beschreibung komplexer bildhafter Objekte und Zusammenhänge nicht länger durch Elemente einer nicht allzu großen unstrukturierten Klassenmenge erfolgen kann. Sie wird vielmehr selbst zu einer strukturierten Größe: z.B. einem String, einem Bild oder einem Labelling eines Graphen. So ist es für uns heute selbstverständlich, wenn wir im Kern fast jeden Systems zur automatisierten Sprachverarbeitung ein Hidden Markov Modell vorfinden, in dem Sprachsignale als Phonemfolgen beschrieben werden. Dieses Modell bildet ein Bindeglied zwischen dem Sprachsignal und höheren Sprachmodellen, die von Wörterbüchern über Syntaxund Grammatikmodelle bis zu semantischen Modellen reichen. Nicht viel anders ist die Situation in der Bilderkennung: Immer mehr wird klar, dass die strukturelle Beschreibung ein geeigneter Ansatz für eine Vielzahl von Aufgaben der Bilderkennung ist. Beispiele hierfür sind die Erkennung von Plänen, Schrift und graphischen Zeichnungen, die Stereorekonstruktion, Textursegmentierung, Erkennung bildhafter zusammengesetzter Objekte u.v.m. Natürlich bringt diese Spezifik ihre Probleme mit sich. So wird bereits die Bayes Entscheidung für die Erkennung – die im einfachsten Falle arg max k p(k | x) lautet – zu einer komplizierten Optimierungsaufgabe, da hier nicht nur x ein Bild ist, sondern auch k ein Bild oder ein Labelling eines Graphen ist. Allein schon die riesige Anzahl der möglichen k macht diese Aufgabe hart. Das Lernen derartiger Modelle führt zu noch schwierigeren Aufgaben und verlangt in der Regel die Lösung von Erkennungsaufgaben als Zwischenschritt. Arbeiten aus der Zeit der Anfänge der strukturellen Erkennung „atmen“ noch die Hoffnung auf baldige Lösung dieser Probleme. Erst nach und nach wurde klar, dass sowohl die Erkennung als auch das Lernen im Rahmen allgemeiner struktureller Modelle NP-vollständig ist. Auch solche Algorithmen und Methoden wie Simulated Annealing, genetische Algorithmen u.s.w. ändern daran nicht viel, solange man nicht zeigen kann, dass mit ihnen gute Näherungen mit endlichem Zeitaufwand erhalten werden können. Das klare Verständnis dieser Schwierigkeiten führt zur Frage nach exakt und effizient lösbaren Teilklassen von Problemen der strukturellen Erkennung. Zu Beginn sollte dabei eine möglichst einheitliche abstrakte Formulierung der Aufgaben stehen, die in der scharfen, unscharfen und statistischen Variante der strukturellen Erkennung zu lösen sind. Dadurch tritt zum einen die einheitliche Struktur dieser vii viii VORWORT Aufgaben zutage, zum anderen wird auch das Wesen ihrer Unterschiede transparent. Dies haben wir im ersten Kapitel dieser Arbeit versucht. Die abstrakte Formulierung von Aufgaben führt zwar zu ihrer Allgemeingültigkeit und der Übertragbarkeit ihrer Lösungen, ruft aber in angewandten Gebieten der Informatik – wie sie die Bilderkennung eines ist – auch Fragen nach dem Anwendungsbezug hervor. Im zweiten Kapitel zeigen wir, wie und in welcher Form diese abstrakten Aufgaben in so verschiedenen Anwendungen wie der Stereorekonstruktion, der Inspektion von Holzoberflächen und der Segmentierung medizinischer Bilder auftreten. Diese Auswahl ist keinesfalls vollständig, man könnte hier noch viele andere nennen. Vielmehr repräsentiert sie Anwendungen mit denen sich der Autor beschäftigt hat und in denen die Notwendigkeit einer strukturellen Modellierung klar hervortritt. Dem weiter oben bereits genannten Hauptziel der Arbeit – exakt lösbare Teilklassen struktureller Erkennungsaufgaben zu suchen – sind die Kapitel 3 und 4 gewidmet. Obwohl im Kapitel 3 die unscharfe Erkennung und im Kapitel 4 die Maximum a-posteriori Entscheidung im Falle der statistischen Erkennung betrachtet werden, ist die Herangehensweise analog: Auf der Labelmenge wird eine zusätzliche Struktur eingeführt. In unserem Falle – die eines algebraischen Verbandes, d.h. im wesentlichen die Struktur einer teilgeordneten Menge. Man betrachtet dann Objektklassenmodelle, die gewisse Eigenschaften bezüglich dieser Struktur besitzen. Das führt zu Teilklassen von Aufgaben, die für beliebig komplexe Graphen exakt und mit polynomialer Zeitkomplexität lösbar sind. Danksagung Diese Arbeit ist in enger Zusammenarbeit mit Herrn Prof. Dr. Michail Schlesinger entstanden. Die kurzen gegenseitigen Aufenthalte in Kiew und Dresden (2-3 Wochen im Jahr) waren stets mit sehr intensiven und fruchtbaren Diskussionen ausgefüllt. Diese Art der Zusammenarbeit, bei der man sich gegenseitig über das Erreichte informiert und ständig versucht, es zu verallgemeinern und neue Fragestellungen aufzuwerfen, macht es im Nachhinein schwierig (aber nicht unmöglich) den eigenen Beitrag zu umreißen. Zweifellos überwiegt aber die Freude und die Dankbarkeit für ein – so glaube ich – seltenes Zusammentreffen sich ergänzender wissenschaftlicher Interessen und die bei ihrem produktiven Einsatz erreichbaren Resultate. Herrn Prof. Dr. Siegfried Fuchs danke ich für die Freiräume lassende und zugleich beharrlich fordernde Betreuung. Er war es, der mein Interesse für die Probleme des Bildverstehens und der Mustererkennung geweckt hat, deren manchmal quälende Schönheit sich einem wie mir, aus der Welt der mathematischen Physik Kommendem, nur nach und nach erschloss. Er war es auch, der mich bestärkte, den zu Beginn meiner Tätigkeit auf diesem Gebiet noch oft üblichen Weg wenig begründeter Heuristiken schnell zu verlassen und mich exakt formulierbaren und dennoch anwendungsbezogenen Aufgaben zuzuwenden. All meinen Kollegen am Institut für Künstliche Intelligenz der TU Dresden und ganz besonders Eeri Kask, Reinhold Osterland, Christian Brock, Stefan Bischoff, Martin Franz und Dima Schlesinger danke ich für die vielen Diskussionen und die überaus angenehme Atmosphäre, die durch ihre Kollegialität, ihren Humor und die Bereitschaft zu gemeinsamer zielorientierter wissenschaftlicher Arbeit entstand und ensteht. Dresden, im Mai 2002 Boris Flach ix KAPITEL 1 Probleme der strukturellen Erkennung 1.1. Die Consistent Labelling Aufgabe Eines der frühesten Paradigmen der Bilderkennung interpretierte Bilder als Punkte (Vektoren) eines hochdimensionalen Raumes. Im einfachsten Falle eines Raumes mit der Dimension der Anzahl der Pixel im Bild. Klassen bildhafter Objekte wurden als Regionen in diesem Raum aufgefasst, von denen man hoffte, dass sie einfacher geometrischer Natur seien. Die Erkennung bildhafter Objekte liefe dann auf die Konstruktion einfacher Funktionen – Merkmale genannt – hinaus, mittels derer die zu den verschiedenen Objektklassen gehörenden Regionen zu trennen wären. Für den Fall, dass diese Trennung – wegen Überlappungen der Regionen – nicht scharf möglich wäre, könnte man die bekannten Methoden der statistischen Erkennung (z.B. den Bayes Klassifikator) auf die Merkmale anwenden. Die Frage nach geeigneten Algorithmen für die Erkennung „reduziert“ sich in diesem Paradigma somit auf das Problem einfache geeignete Merkmale zu finden, anhand derer die Objektklassen scharf, unscharf oder statistisch getrennt werden können. Voraussetzung dafür war die Annahme über die einfache geometrische Natur der zu den Objektklassen gehörenden Regionen. Inzwischen wissen wir, dass diese Annahme für Beschreibungen komplexer bildhafter Objekte (bzw. Zusammenhänge) nicht zutrifft. Ein Bild ist eher als Abbildung einer strukturierten Menge (z.B. topologischer Raum, Gitter, Zellenkomplex) in die Menge der Grau- oder Farbwerte aufzufassen. Genauso sind auch komplexe bildhafte Objekte als Abbildungen einer strukturierten Menge in eine Menge von Symbolen aufzufassen. Sie werden in der englischsprachigen Literatur oft als „Labellings“ bezeichnet. In diesem Paradigma werden Objektklassen mit Mengen von Labellings identifiziert, wobei angenommen wird, dass diese Mengen mit konstruktiven Mitteln zu beschreiben sind. Das bisher Gesagte wird besonders anschaulich, wenn man die Erkennung von Objekten in graphischen Zeichnungen betrachtet. Die benutzten Label sind in diesem Fall Namen für lokale Bildausschnitte wie „Geradensegment“, „Ecke“ u.s.w. Komplexere Objekte wie Buchstaben, Rahmen u.s.w. werden als Komposita betrachtet, die aus diesen Primitiven aufgebaut sind. Ein erkanntes bzw. interpretiertes bildhaftes Objekt besteht somit aus einem Paar von Abbildungen: dem Bild selbst und dem beschreibenden Labelling. Obwohl man üblicherweise zwischen beiden Abbildungen unterscheidet, ist das nicht wirklich notwendig. Wir werden sie im Weiteren als Teile eines einzigen Labellings betrachten und bezeichnen sie als den observablen und den verborgenen Teil. 1 2 1. PROBLEME DER STRUKTURELLEN ERKENNUNG Objektklassen und konsistente Labellings. Das einfachste Mittel zur konstruktiven Beschreibung von Mengen von Labellings sind lokal konjunktive Prädikate. Mit ihnen lassen sich sowohl Beziehungen (constraints) zwischen verborgenen Parametern als auch Beziehungen zwischen verborgenen und observablen Parametern beschreiben. Wenn wir ohne allzu große Einschränkungen der Allgemeinheit (s. unten) den Fall zweistelliger Prädikate betrachten, so entspricht dem die Struktur eines ungerichteten Graphen G (R, E) auf dem Definitionsbereich der Labellings. Ein Labelling ist eine Abbildung x : R 7→ K der Knoten des Graphen in eine endliche Labelmenge K. Die Menge aller solcher Abbildungen sei mit A (R, K) bezeichnet. Eine Teilmenge V ⊂ R der Knoten kann dabei die Pixel des Bildes repräsentieren, während den anderen Knoten verborgene Parameter zugeordnet sind. Ähnlich kann eine Teilmenge der Label Grauwerte repräsentieren, während den anderen Labeln abstrakte Namen zugeordnet sind. Objektklassen, d.h. Teilmengen L ⊂ A (R, K), werden durch lokal konjunktive Prädikate beschrieben: Für jede Kante (r, r 0 ) ∈ E des Graphen sei ein zweistelliges Prädikat g rr0 : K × K 7→ {0, 1} definiert, wobei grr0 (k, k0 ) = 1, wenn das Paar {(r, k), (r 0 , k0 )} zulässig (konsistent) ist und grr0 (k, k0 ) = 0 sonst. Ein Labelling x gehört dann und nur dann zur Menge L, wenn grr0 (x(r), x(r 0 )) = 1 (r,r 0 )∈E gilt, mit anderen Worten, wenn es auf allen Kanten des Graphen konsistent ist. Ein zur Erkennung gegebenes Bild definiert Teilmengen von Labeln für einige oder alle Knoten des Graphen. Diese Teilmengen werden durch einstellige Prädikate qr : K 7→ {0, 1} beschrieben, die den Knoten des Graphen zugeordnet sind. Die Gesamtheit dieser Prädikate beschreibt wiederum eine Menge von Labellings – die Menge aller mit dem Bild konsistenter Labellings. Das Bild gehört dann und nur dann zur Objektklasse L, wenn sich beide Mengen schneiden, d.h. wenn mindestens ein Labelling x ∈ L mit dem Bild konsistent ist: i h i h qr (x(r)) ∧ grr0 (x(r), x(r 0 )) = 1. (1.1a) G[x] = (r,r 0 )∈E r∈R Für die Erkennung derart beschriebener bildhafter Objekte benötigt man somit einen effizienten Algorithmus zur Berechnung der Größe nh i h io G[x] = qr (x(r)) ∧ grr0 (x(r), x(r 0 )) (1.1b) x∈A (R,K) x∈A (R,K) (r,r 0 )∈E r∈R als auch zur Berechnung mindestens eines konsistenten Labellings für den Fall, dass diese Größe den Wert 1 hat. Das ist die so genannte Consistent Labelling Aufgabe. B EISPIEL 1.1. (Deformierte Ringe) Betrachten wir die folgende Klasse binärer Bilder auf dem Pixelraster {~r ∈ 2 | max(|x|, |y|) n}. Ein zulässiges Bild enthält einen deformierten schwarzen Ring, der ursprünglich konzentrisch zum Koordinatenursprung ist. Erlaubt seien Deformationen des Rings, die folgende Bedingung erfüllen: Für jeden Quadranten bleiben die beiden Grenzen monotone Kurven (je nach Quadrant monoton fallend bzw. monoton wachsend). In Abb. 1.1 sind ein 1.1. DIE CONSISTENT LABELLING AUFGABE (a) (b) 3 (c) A BBILDUNG 1.1. Deformierte Ringe. undeformierter Ring (a), ein zulässig deformierter Ring (b) und ein nicht zulässig deformierter Ring (c) gezeigt. Diese Bildklasse lässt sich wie folgt modellieren. Die Bildpixel bilden die beobachtbaren Knoten des Graphen. Zusätzlich wird jedem Pixel ein verborgener Knoten zugeordnet. Diese verborgenen Knoten bilden ein zweites „Bild“. Horizontal und vertikal benachbarte verborgene Knoten werden durch Kanten verbunden. Außerdem wird jeder verborgener Knoten durch eine Kante mit dem zugehörigen Pixelknoten verbunden. Die Labelmenge besteht aus 5 Elementen: s, w, (sichtbar), iw, rs, aw (verborgen) mit der Bedeutung schwarz, weiß, innen weiß, ring schwarz und außen weiß. Für alle Kanten die sichtbare Knoten mit verborgenen Knoten verbinden, ist die Funktion g sehr einfach: g(s, rs) = g(w, iw) = g(w, aw) = 1 und g = 0 sonst. Die Funktionen für die horizontalen und vertikalen Kanten zwischen den verborgenen Knoten werden durch ein und dieselbe Funktion f generiert. Nummeriert man die verborgenen Label in der obigen Reihenfolge mit k = 1, 2, 3, so ist f durch ( 1 wenn k0 = k oder k0 = k + 1, f (k, k0 ) = 0 sonst definiert. Für jede Kante zwischen verborgenen Knoten wählen wir die Notation (r, r0 ), wobei der erste Knoten (d.h. r) näher zum Ursprung liegt als der zweite (d.h. r0 ). Die Funktion grr0 wird durch grr0 (k, k0 ) = f (k, k0 ) definiert. Prädikate höherer Ordnung. Versucht man die Allgemeinheit dieses Ansatzes einzuschätzen, so stellt sich sofort die Frage, ob die Beschränkung auf höchstens zweistellige Prädikate die Vielfalt der beschreibbaren Mengen von Labellings wesentlich einschränkt. Wir werden zeigen, dass das nicht der Fall ist. Nehmen wir an, dass für die Beschreibung von Objektklassen n-stellige Prädikate mit n 2 verwendet werden. Dann ist die Struktur des Definitionsbereichs der Labellings nicht länger die eines Graphen. Der Definitionsbereich hat dann vielmehr die (allgemeinere) Struktur eines abstrakten Simplizialkomplex. Auf der Menge der Knoten wird ein System von Teilmengen – Simplizes genannt – ausgezeichnet, welches 4 1. PROBLEME DER STRUKTURELLEN ERKENNUNG folgende Eigenschaft hat. Ist S ⊂ R ein Element von , so ist auch jede Teilmenge von S ein Element von . Jedem Simplex der Ordnung n – oder kürzer – jedem n-Simplex (|S| = n) sei ein n-stelliges Prädikat g S : K n 7→ {0, 1} zugeordnet. Ein Labelling x ∈ A (R, K) gehört dann und nur dann zur Objektklasse L, wenn S∈ gS (x|S ) = 1 gilt, mit anderen Worten, wenn es auf jedem Simplex konsistent ist. Sei m die höchste auftretende Ordnung eines Prädikats. Für die Überführung einer derartigen Aufgabe in eine äquivalente Consistent Labelling Aufgabe mit höchstens zweistelligen Prädikaten, konstruiert man den folgenden Graph G (V, E). Jedem Simplex S ∈ wird ein Knoten v ∈ V des Graphen zugeordnet. Zwei Knoten sind in G durch eine Kante verbunden, falls die zugehörigen Simplizes gemeinsame Knoten in R haben. e der neuen Aufgabe ist K e = A (S, K), d.h. Sei S ein m-Simplex. Die Labelmenge K m e |K| = |K| . Die n-stelligen Prädikate der Ausgangsaufgabe werden durch einstellige Prädikate qev ausgedrückt. Die zweistelligen Prädikate gevv0 werden so eingeführt, dass sie die Übereinstimmung von Labellings x ∈ A (S, K) und x 0 ∈ A (S0 , K) auf der Schnittmenge U = S ∩ S0 garantieren: ( 1 wenn x|U ≡ x0 |U , gevv0 (x, x0 ) = 0 sonst. Es ist leicht zu prüfen, dass somit eine eineindeutige Zuordnung zwischen den konsistenten Labellings beider Aufgaben hergestellt ist. Ist die Ordnung der Prädikate der Ausgangsaufgabe nach oben beschränkt, so ist diese Transformation polynomial in der Anzahl der Knoten der Ausgangsaufgabe. 1.2. Unscharfe Objektklassen und Bilder mit Störungen Die im vorhergehenden Abschnitt vorgestellte Formulierung struktureller Erkennungsaufgaben als Consistent Labelling Aufgabe setzt die Erfüllung zweier Annahmen voraus: (1) Objektklassen werden durch scharfe Mengen von Labellings repräsentiert. (2) Die zu erkennenden Bilder weisen keine Störungen auf und können ebenfalls mit scharfen Mengen von Labellings identifiziert werden. Für viele Erkennungsaufgaben sind diese Annahmen nicht erfüllt und es entsteht der naheliegende Wunsch, die Consistent Labelling Aufgabe so zu verallgemeinern, dass auch der Fall unscharfer Objektklassen und/oder gestörter Bilder behandelbar wird. Die MaxMin Aufgabe. Bereits in [33] wurde eine einfache Verallgemeinerung vorgeschlagen, die unscharfe Objektklassen und unscharfe Messungen zulässt. Letzteres bedeutet, dass einer Messung – z.B. einem Bild – eine unscharfe Menge von Labellings zugeordnet wird. Die Einführung unscharfer Objektklassen und unscharfer Messungen wird erreicht, indem die bisher {0, 1}-wertigen Prädikate q r 1.2. UNSCHARFE OBJEKTKLASSEN UND BILDER MIT STÖRUNGEN und grr0 durch reellwertige Funktionen grr0 : K × K 7→ und qr : K 7→ 5 ersetzt werden. Die Operationen ∨ und ∧ werden durch max und min ersetzt. Für jedes Labelling x ∈ A (R, K) ergibt sich sein Zugehörigkeitswert zur unscharfen Objektklasse und zur unscharfen Messung durch min grr0 (x(r), x(r 0 )) und min qr (x(r)) (r,r 0 )∈E r∈R Die Funktion G[x] misst den Zugehörigkeitswert des Labellings zum Durchschnitt dieser beiden unscharfen Mengen: nh i h io (1.2a) G[x] = min min qr (x(r)) , min grr0 (x(r), x(r 0 )) . (r,r 0 )∈E r∈R Wie auch im Fall der Consistent Labelling Formulierung benötigt man hier einen effizienten Algorithmus zur Berechnung der Größen (1.2b) max G[x] und arg max G[x]. x∈A (R,K) x∈A (R,K) Wir bezeichnen diese Aufgabe als MaxMin Aufgabe. Die folgenden zwei Beispiele demonstrieren, dass die MaxMin Aufgabe nicht nur im Kontext der unscharfen Erkennung auftritt. B EISPIEL 1.2. (Clusterung) Betrachten wir Clusterungen von Datenpunkten, die den maximalen Durchmesser der Cluster minimieren. Der Durchmesser eines Clusters sei als der größte Abstand zweier zum Cluster gehörender Datenpunkte definiert. Derartige Clusterungsaufgaben lassen sich wie folgt in MaxMin Aufgaben transformieren. Jedem Datenpunkt entspreche ein Knoten eines voll verbundenen Graphen. Eine Clusterung der Datenpunkte wird durch ein Labelling x ∈ A (R, K) beschrieben, wobei die Label den Clusternummern entsprechen. Die Güte G[x] einer Clusterung wird durch (1.2a) beschrieben, wenn die Funktionen g rr0 wie folgt definiert werden: grr0 (k, k0 ) = −d(r, r 0 )δkk0 Hierbei ist d die Abstandsmatrix der Datenpunkte und δ kk0 das Kronecker Symbol. B EISPIEL 1.3. (Erkennung von Buchstaben) Betrachten wir die Menge aller topologisch einfach zusammenhängenden Buchstaben des lateinischen Alphabets (C,E,F,G,H,...). Ihr Rand ist eine einfache geschlossene Kurve. Wir definieren den Abstand zweier solcher Kurven~r1 (t) und~r2 (t) in 2 als min maxk~r1 (t) −~r2 (φ(t))k. φ t Dabei ist φ ein Homomorphismus des Kreises auf sich selbst. Diskretisiert man die Kurven~r1 (t) und~r2 (t), so entsteht eine MaxMin Aufgabe über monotonen Kurven φ(t) in einem zweidimensionalen toroidalen Gitter. Die MaxSum Aufgabe. Eine weitere Verallgemeinerung der Consistent Labelling Aufgabe entsteht, wenn die Bilder bzw. Messungen Störungen aufweisen. Sei M ⊂ A (R, K) die Menge der Labellings, die mit dem gestörten Bild konsistent 6 1. PROBLEME DER STRUKTURELLEN ERKENNUNG sind und L ⊂ A (R, K) die Menge der Labellings, die der Objektklasse entsprechen. Selbst wenn das ungestörte Bild zur Objektklasse L gehört, können wir nicht erwarten, dass sich die Mengen M und L schneiden. Es wird in dieser Situation kein Labelling x geben, welches mit der Objektklasse und der Messung konsistent ist. Ein naheliegender Ausweg ist die Betrachtung des Abstandes der beiden Mengen M und L. Dafür muss die Menge aller Labellings A (R, K) mit einer Metrik versehen werden. Ein natürlicher Ansatz sind Metriken, die bezüglich lokaler Abweichungen additiv sind: D(x, y) = ∑ d x(r), y(r) . r∈R Ein zweiter Ausweg könnte darin liegen, unter allen Labellings in M dasjenige zu suchen, für das die Anzahl der Kanten (r, r 0 ) mit nicht erfülltem Prädikat (der Objektklasse) minimal ist. Beide Varianten führen zu Aufgaben des folgenden Typs: Für jeden Knoten r des Graphen sei eine reellwertige Funktion q r : K 7→ definiert. Für jede Kante (r, r 0 ) sei eine reellwertige Funktion grr0 : K × K 7→ definiert. Der Wert eines Labellings x ∈ A (R, K) sei (1.3a) G[x] = ∑ qr (x(r)) + ∑ r∈R grr0 (x(r), x(r 0 )). (r,r 0 )∈E Gesucht wird ein Labelling mit dem höchsten Wert. Die Aufgabe besteht im Auffinden eines effizienten Algorithmus zur Berechnung von (1.3b) max G[x] und arg max G[x]. x∈A (R,K) x∈A (R,K) Wir bezeichnen diese Aufgabe als MaxSum Aufgabe. Im nächsten Abschnitt werden wir sehen, dass diese Aufgabe auch im Rahmen einer statistischen Formulierung der strukturellen Erkennung auftritt. Auch hier soll mit einem Beispiel demonstriert werden, dass sich viele andere, außerhalb der strukturellen Erkennung liegende Aufgaben, als MaxSum Aufgabe formulieren lassen. B EISPIEL 1.4. (Maximale Clique) Sei G (R, E) ein Graph. Gesucht ist seine maximale Clique. Diese Optimierungsaufgabe lässt sich leicht als MaxSum Aufgabe formulieren. Sei G (R,V ) der vollständige Graph auf der Knotenmenge R. Die Labelmenge bestehe aus zwei Elementen K = {0, 1}. Ein Labelling wird später so interpretiert, dass alle Knoten mit x(r) = 1 zur Clique gehören und alle Knoten mit x(r) = 0 nicht zur Clique gehören. Die Funktionen g rr0 werden so gewählt, dass sie Cliquen kodieren: Ist (r, r 0 ) ∈ E, d.h. eine Kante des Graphen G (R, E), so sei grr0 ≡ 0. Ist dagegen (r, r 0 ) 6∈ E, d.h. keine Kante des Graphen G (R, E), so sei ( −∞ für k = 1, k 0 = 1 und 0 grr0 (k, k ) = 0 sonst. Die Funktionen qr werden so gewählt, dass sie die Knoten der Clique „zählen“, d.h. ( 1 für k = 1 und qr (k) = 0 für k = 0. 1.3. STATISTISCHE FORMULIERUNG DER STRUKTURELLEN ERKENNUNG 7 Es ist unmittelbar klar, dass der Wert G[x] eines Labellings x dann und nur dann endlich ist, wenn x eine Clique kodiert. Mehr noch, in diesem Fall ist G[x] die Anzahl der Knoten der Clique. Somit ist die konstruierte MaxSum Aufgabe eine äquivalente Formulierung der MaxClique Aufgabe. 1.3. Statistische Formulierung der strukturellen Erkennung Die bisherige Geschichte der Muster- und Bilderkennung hat gezeigt, dass statistische Methoden einen äußerst fruchtbaren Zugang für die Erkennung und das Lernen erkennender Systeme bilden. Deswegen begann die Suche nach geeigneten statistischen Modellen für die strukturelle Erkennung praktisch zeitgleich mit den ersten Formulierungen ihrer Prinzipien. Die intensive Forschung auf diesem Gebiet hat während der letzten Dekade gezeigt, dass Markov und Gibbs Modelle auf Graphen den zur Zeit besten Zugang zu einer statistischen Formulierung der strukturellen Erkennung bieten [12, 15, 16, 31]. Diese Modelle sind zweifellos jenen Ansätzen und Methoden überlegen, die gar kein explizites Wahrscheinlichkeitsmodell formulieren (wie z.B. die unter dem Namen „Probabilistic Relaxation Labelling“ bekannte Methode [33]). Sie sind aber auch besser „ausgebauten“ Modellen wie z.B. Bayes Netzen vorzuziehen. Dafür sprechen folgende Gründe. (1) Markov bzw. Gibbs Modelle werden rein axiomatisch eingeführt. Dabei werden keine nichtaxiomatische Begriffe wie z.B. „Kausalität“ benutzt. (2) Bei der Definition von Bayes Netzen muss zusätzlich zur Struktur eines Graphen noch eine Ordnung der Knoten ausgezeichnet werden. Die Klasse der Wahrscheinlichkeitsverteilungen hängt von der gewählten Ordnung ab. Es gibt aber keinerlei Gründe anzunehmen, dass etwa für ein Pixelgitter eine Ordnung der Pixel a priori ausgezeichnet ist. (3) Bei Gibbs Modellen wird die Wahrscheinlichkeitsverteilung eindeutig durch die Gibbschen Potentiale oder durch die Paarverteilungen p rr0 (k, k0 ) für alle Kanten (r, r 0 ) des Graphen beschrieben. Die bekannten Theoreme von Hammersley und Clifford bzw. von Averintsev beweisen die Äquivalenz von Markov und Gibbs Modellen. Gibbs Modelle. Seien wie bisher G (R, E) ein Graph, K eine endliche Menge von Labeln und A (R, K) die Menge aller Labellings x : R 7→ K. Ein statistisches Modell über A (R, K) sei wie folgt definiert: (1) Die elementaren Ereignisse seien Labellings x. Der Raum der Elementarereignisse ist A (R, K). (2) Zufällige Ereignisse seien beliebige Teilmengen von A (R, K). (3) Sei P eine Wahrscheinlichkeit, d.h. eine Funktion auf der Ereignisalgebra, die die üblichen Axiome erfüllt. Berücksichtigt man dabei, dass in der strukturellen Bilderkennung durchaus oft Graphen mit |R| ∼ 106 auftreten, so wird schnell klar, dass obige Definition noch zu allgemein ist. Die Wahrscheinlichkeit P als Funktion der Elementarereignisse würde dann von Millionen Variablen abhängen. Da sich über derartigen Funktionen keine konstruktiven Algorithmen formulieren lassen, muss die Klasse der 8 1. PROBLEME DER STRUKTURELLEN ERKENNUNG Wahrscheinlichkeitsverteilungen eingeschränkt werden. Wir werden dabei genauso wie bisher vorgehen und Objektklassen durch lokale Beziehungen beschreiben, die jetzt statistische Abhängigkeiten ausdrücken. Bevor wir das tun, führen wir die folgenden Bezeichnungen ein. Sei V ⊂ R eine Teilmenge der Knoten und V = R\V ihr Komplement. Der Rand ∂V von V ist die Menge aller Knoten aus V , die mit mindestens einem Knoten r ∈ V durch eine Kante verbunden sind: ∂V = r ∈ V | ∃r0 ∈ V : (r, r0 ) ∈ E . Sind V und V 0 disjunkte Teilmengen von Knoten, so bezeichnen EV und EV 0 die Kantenmengen der induzierten Teilgraphen und EVV 0 die Menge aller Kanten zwischen V und V 0 . Weiterhin bezeichne x(V ) die Einschränkung eines Labellings x ∈ A (R, K) auf die Teilmenge V ⊂ R. Mit x(V ) wird im Weiteren aber auch die Menge aller Labellings aus A (R, K) bezeichnet, die auf V ⊂ R mit x übereinstimmen: x(V ) = y ∈ A (R, K) | y(r) = x(r) ∀r ∈ V . Wir erlauben uns diese Zweideutigkeit, da sich die genaue Bedeutung aus dem jeweiligen Kontext ergibt. Die folgende Definition führt die Klasse der Gibbschen Wahrscheinlichkeitsverteilungen auf A (R, K) ein. D EFINITION 1.1. (Gibbsche Verteilungen) Eine Wahrscheinlichkeitsverteilung P auf A (R, K) heißt Gibbsche Verteilung n-ter Ordnung, wenn R so mit der Struktur eines abstrakten Simplizialkomplex der Ordnung n versehen werden kann, dass P sich bezüglich dieser Struktur in der Form P(x) = 1 ∏ gS (x(S)) Z S∈ schreiben lässt. Hierbei sind gS strikt positive Funktionen, die den Simplizes S ∈ zugeordnet sind. Die Zahl Z ist ein Normierungsfaktor. Die Logarithmen der Funktionen gS werden als Gibbsche Potentiale bezeichnet. Ist die Ordnung der Verteilung n = 2, so ist der Simplizialkomplex ein Graph und die Funktionen g rr0 werden den Kanten des Graphen zugeordnet. Im Weiteren betrachten wir fast ausschließlich Gibbsche Verteilungen der Ordnung 2. Wir vereinbaren deswegen, die Ordnung der Verteilung nur dann explizit anzugeben, wenn sie von 2 abweicht. Im Kontext der statistischen strukturellen Erkennung entsteht sofort die Frage, ob bestimmte bedingte Verteilungen, die aus Gibbschen Verteilungen entstehen, selbst Gibbsch sind. Nehmen wir an, dass eine Messung des zu erkennenden Objekts – z.B. ein zur Erkennung vorgelegtes Bild – die Label für eine Teilmenge V ⊂ R der Knoten fixiert. Damit ist auf diesen Knoten ein Labelling x(V ) fixiert. Anhand dieser Messung und der bekannten Modellparameter sind dann Aussagen über die Label in den verborgenen Knoten zu gewinnen. Letztere lassen sich aus der bedingten Verteilung P(y(V ) | x(V )) ermitteln. Fast unmittelbar aus der Definition Gibbscher Verteilungen folgt, dass diese 1.3. STATISTISCHE FORMULIERUNG DER STRUKTURELLEN ERKENNUNG 9 bedingte Verteilung auch Gibbsch ist: P y(V ) x(V ) = 1 ∏ grr0 (y(r), y(r0 )) 0∏ grr0 (y(r), x(r0 )). e Z(x(V )) (r,r0 )∈EV (r,r )∈EVV Da das Labelling x(V ) fixiert ist, hängen die Funktionen g rr0 im zweiten Teil des Produkts jeweils nur von einer Variablen ab. Somit ist P(y(V ) | x(V )) auf dem durch V induzierten Teilgraphen Gibbsch. Genauso wichtig ist die Frage ob eingeschränkte Verteilungen des Typs P x(V ) = ∑ P x(V ), y(V ) y∈A (V ,K) Gibbsch sind. Sie entstehen durch Absummieren über alle Teillabellings y(V ) auf V ⊂ R. Leider ist diese Frage im allgemeinen Fall negativ zu beantworten: Ist die Gesamtverteilung eine Gibbsche Verteilung der Ordnung 2, so ist die eingeschränkte Verteilung i.A. eine Gibbsche Verteilung höherer Ordnung. Ihre größten Simplizes ergeben sich wie folgt (siehe [31]): Seien V i die Zusammenhangskomponenten des Teilgraphen der durch V induziert wird. Dann bilden alle Knoten des Randes ∂V i einen Simplex der Verteilung P(x(V )). Der Zusammenhang zwischen Gibbs und Markov Modellen wird durch die bekannten Theoreme von Hammersley und Clifford [5] bzw. von Averintsev [4] gegeben. Man sieht zunächst sehr leicht, dass Gibbsche Verteilungen die Markov Bedingungen der bedingten Unabhängigkeit erfüllen. Sei P z.B. eine Gibbs Verteilung der Ordnung 2. Sei weiterhin V eine Teilmenge der Knoten, V ihr Komplement und ∂V der Rand von V . Dann gilt P x(V ) | y(V ) = 1 ∏ grr0 (x(r), x(r0 )) 0∏ grr0 (x(r), y(r0 )). e Z(y(V )) (r,r0 )∈EV (r,r )∈EV ∂V Derselbe Ausdruck ergibt sich auch für P(x(V ) | y(∂V )). Folglich gilt für jede Teilmenge V und jedes Paar von Labellings x(V ) und y(V ) P x(V ) | y(V ) = P x(V ) | y(∂V ) . Somit ist jede Gibbsche Verteilung auch Markovsch. Die oben genannten Theoreme beweisen auch die Umkehrung: Ist eine strikt positive Wahrscheinlichkeitsverteilung P auf A (R, K) bezüglich des Graphen G (R, E) Markovsch, so ist sie auch Gibbsch. Ihre Simplizes sind die Cliquen des Graphen G . Die Ordnung der Gibbschen Verteilung ergibt sich somit aus der Ordnung der maximalen Clique des Graphen. Obwohl es auf den ersten Blick erscheinen mag, dass infolge dieser Theoreme Markov und Gibbs Modelle identisch sind, ist das bei Weitem nicht der Fall. Betrachten wir einen vollständigen Graph G (R, E) und Wahrscheinlichkeitsverteilungen auf A (R, K). Die Markovsche Bedingung ist hier immer erfüllt, denn für jede Teilmenge von Knoten V ⊂ R gilt ∂V = V . Andererseits bilden Gibbsche Verteilungen der Ordnung 2 auf einem vollständigen Graphen eine sehr interessante echte Teilklasse von Wahrscheinlichkeitsverteilungen. 10 1. PROBLEME DER STRUKTURELLEN ERKENNUNG Erkennungsaufgaben. Im Unterschied zur statistischen Erkennung einfacher, strukturloser Muster, treten bei der Erkennung strukturierter Objekte unterschiedliche Typen von Aufgaben auf. Dies hängt damit zusammen, dass außer der Zuordnung eines Objekts (als Ganzes) zu einer Objektklasse jetzt auch Aussagen über seine Bestandteile interessieren. Für die Formalisierung der Erkennungsaufgabe des ersteren Typs – die statistische Erkennung eines komplexen Objekts als Ganzes – nehmen wir an, dass uns mehrere Objektklassen gegeben sind, die mit Gibbschen Modellen der Ordnung 2 beschreibbar sind. Das heißt, dass für jede Objektklasse ein Graph G (R, E) und eine Labelmenge K gegeben sind, sowie eine Gibbsche Verteilung P auf A (R, K) ausgezeichnet ist. Allen Graphen sei eine Teilmenge von Knoten V ⊂ R gemeinsam, die den sichtbaren Knoten entspricht. Weiterhin sei allen Labelmengen eine Teilmenge von Labeln gemeinsam, die den möglichen Werten der Parameter in den sichtbaren Knoten entspricht. Die Messung – z.B. ein zur Erkennung vorgelegtes Bild – definiert ein Labelling x(V ) auf der Menge der sichtbaren Knoten, d.h. x(V ) : V 7→ K. Um zu entscheiden zu welcher Objektklasse das Bild gehört, muss die Wahrscheinlichkeit 1 P x(V ), y(V ) (1.4) P x(V ) = ∑ Z y(V )∈A (V ,K) = 1 grr0 (x(r), x(r 0 )) ∑ ∏ grr0 (y(r), y(r 0 ))× Z (r,r∏ 0 )∈E y(V ) (r,r 0 )∈E V V × ∏ grr0 (x(r), y(r 0 )) (r,r 0 )∈EVV für jede Objektklasse berechnet werden. Um diese Wahrscheinlichkeiten vollständig zu kennen, muss natürlich für jede Objektklasse auch die Normierungskonstante Z berechnet werden, die sich aus (1.5) Z= ∑ ∏ grr (x(r), x(r0 )) 0 x∈A (R,K) (r,r 0 )∈E ergibt. Für diesen Typ von Erkennungsaufgaben wird somit ein effizienter Algorithmus zur Berechnung von (1.4) und (1.5) benötigt. Wir bezeichnen dies als SumProd Aufgabe. Wie bereits erwähnt, stellt die Identifizierung der Bestandteile eines strukturierten Objekts bei bekannter Objektklasse einen ebenso wichtigen Typ von Erkennungsaufgaben der statistischen strukturellen Erkennung dar. Die Objektklasse sei wie bisher durch ein Gibbsches Modell (der Ordnung 2) beschrieben. Weiterhin sei eine Kostenfunktion C : A (R, K) × A (R, K) 7→ gegeben, die jedem Paar von Labellings x, x0 ∈ A (R, K) die Kosten zuordnet, die bei der Verwechslung von x mit x0 entstehen. Die Aufgabe besteht dann darin, eine Entscheidungsfunktion 1.3. STATISTISCHE FORMULIERUNG DER STRUKTURELLEN ERKENNUNG 11 E : A (V, K) 7→ A (V , K) zu konstruieren, die jedem Labelling x(V ) der sichtbaren Knoten ein Labelling der verborgenen Knoten zuordnet. Dabei soll der Erwartungswert der Kosten der Verwechslung minimiert werden: ∑ P x(V ), y(V ) C y(V ), E(x(V )) → min . E y(V ) Je nach Wahl der Kostenfunktion C entstehen dabei unterschiedliche Aufgaben. Als erstes Beispiel betrachten wir die einfache, wenn auch nicht sehr sinnvolle Kostenfunktion C(y, y0 ) = 1 − δyy0 , d.h. die Kosten seien 1 wenn sich y und y 0 in mindestens einem Knoten unterscheiden. Es spielt dabei keine Rolle in wieviel Knoten Unterschiede auftreten. Verwendet man diese Kostenfunktion, so entsteht die Maximum a-posteriori Entscheidung E x(V ) = arg max P x(v), y(V ) . y∈A (V ,K) Ersetzt man bei der Maximierung P durch ln P, so entsteht eine MaxSum Aufgabe (s.(1.3)): h i E x(V ) = arg max ∑ gerr0 (y(r), y(r 0 )) + ∑ gerr0 (y(r), x(r 0 )) . y(V ) (r,r 0 )∈E V (r,r 0 )∈EVV Hierbei haben wir die Gibbschen Potentiale ln g rr0 mit gerr0 bezeichnet. Obwohl sich diese Aufgabe in Erkennerkreisen einer ungebrochenen Popularität erfreut, weisen wir hier noch einmal darauf hin, dass sie im Rahmen der statistischen strukturellen Erkennung aus einer eher schlecht begründeten Kostenfunktion hervorgeht. Eine bessere Variante stellt die Kostenfunktion C(y, y0 ) = ∑ c y(r), y0 (r) r∈V dar. Allerdings wird in diesem Fall die entstehende Entscheidungsfunktion komplizierter: Für jeden verborgenen Knoten r ∈ V müssen die Wahrscheinlichkeiten P y(r)=k x(V ) berechnet werden. Anhand dieser Wahrscheinlichkeiten ergibt sich das optimale Labelling aus Bayes Entscheidungen, die für jeden Knoten unabhängig zu treffen sind. Für die Realisierung dieser Entscheidungsfunktion muss somit wieder eine SumProd Aufgabe des Typs (1.4) gelöst werden. Der einzige Unterschied ist hier, dass sich die Summe nicht wie in (1.4) über alle y(V ) sondern „nur“ über alle y(V \ r) erstreckt und Z nicht berechnet werden muss. Dies ändert nichts an der Komplexität der Aufgabe. Zusammenfassend lässt sich feststellen, dass bereits die Erkennung strukturierter Objekte deutlich schwieriger als die Erkennung einfacher, strukturloser Objekte ist. Obwohl das Lernen Gibbscher Modelle nicht zum Gegenstand dieser Arbeit gehört, möchten wir betonen, dass die dabei entstehenden Aufgaben noch komplizierter sind. Das wird allein schon daraus ersichtlich, dass die meisten adaptiven Lernverfahren (wie z.B. das EM-Verfahren) das Lösen einer Erkennungsaufgabe als Teil eines jeden Iterationsschrittes zur Verbesserung der Modellparameter verlangen. 12 1. PROBLEME DER STRUKTURELLEN ERKENNUNG 1.4. Einheitliche Formulierung und Komplexitätsbetrachtungen In des bisherigen Abschnitten dieses Kapitels haben wir vier Klassen von Aufgaben der strukturellen Erkennung betrachtet: Consistent Labelling, MaxMin, MaxSum und SumProd Aufgaben. Sie haben alle ihren Definitionsbereich gemeinsam: Labellings auf Graphen. Die Konsistenz, Zugehörigkeit, Qualität bzw. Wahrscheinlichkeit werden dabei durch Funktionen definiert, die den Kanten und den Knoten des Graphen zugeordnet sind. Die verschiedenen Aufgabentypen unterscheiden sich durch die Wertebereiche dieser Funktionen und durch die Operationen, die für die Definition der Konsistenz, Zugehörigkeit, Qualität bzw. Wahrscheinlichkeit eines Labellings verwendet werden. Folglich lassen sich diese verschiedenen Aufgaben einheitlich formulieren, wenn es gelingt einen verallgemeinerten Wertebereich zu finden und ihn so mit geeigneten Operationen auszustatten, dass jede der bisher diskutierten Aufgaben als Spezialfall betrachtet werden kann. Dafür eignet sich die mathematische Kategorie der Semiringe. Bevor wir diesen Begriff definieren, wiederholen wir zur Erinnerung die Definition einer (abelscher) Halbgruppe: D EFINITION 1.2. Eine Halbgruppe ist ein Paar (G, ·), bestehend aus einer Menge G sowie einer zweistelligen Operation · auf G (d.h. eine Abbildung von G×G nach G), so dass folgende Regeln erfüllt sind: (1) Assoziativität: ∀a, b, c ∈ G : (a · b) · c = a · (b · c), (2) neutrales Element: ∃e ∈ G ∀a ∈ G : e · a = a · e = a. Gilt außerdem noch das (3) Kommutativgesetz: ∀a, b ∈ G : a · b = b · a, so spricht man von einer abelschen Halbgruppe. D EFINITION 1.3. Ein Semiring ist ein Tripel (W, ⊕, ), bestehend aus einer Menge W und einem Paar zweistelliger Operationen ⊕ und , so dass gilt: (1) (W, ⊕) ist eine abelsche Halbgruppe mit dem neutralen Element 0. (2) (W, ) ist eine Halbgruppe mit dem neutralen Element 1. (3) Die zwei Operationen sind durch das Distributivgesetz a (b ⊕ c) = (a b) ⊕ (a c) verbunden und es gilt a 0 = 0. Die Operation ⊕ heißt Addition und die Operation heißt Multiplikation. Gilt außerdem noch, dass (W, ) eine abelsche Halbgruppe ist, so spricht man von einem abelschen Semiring. B EISPIEL 1.5. (Semiringe) Im Folgenden geben wir Beispiele von Semiringen an, indem wir die Menge W definieren, die Operationen ⊕ und durch gewöhnliche Operationen ausdrücken und die neutralen Elemente angeben. (1) W = {0, 1}, a ⊕ b = a ∨ b, a b = a ∧ b, 0 = 0, 1 = 1; (2) W = { , −∞, +∞}, a ⊕ b = max(a, b), a b = min(a, b), 0 = −∞, 1 = +∞; (3) W = { , −∞}, a ⊕ b = max(a, b), a b = a + b, 0 = −∞, 1 = 0; (4) W = , a ⊕ b = a + b, a b = ab, 0 = 0, 1 = 1. Mit dem Begriff des Semirings lässt sich eine einheitliche Formulierung der (⊕, )-Aufgabe konstruieren: Sei G (R, E) ein Graph, K eine Menge von Labeln 1.4. EINHEITLICHE FORMULIERUNG UND KOMPLEXITÄTSBETRACHTUNGEN 13 und (W, ⊕, ) ein Semiring. Jeder Kante (r, r 0 ) ∈ E des Graphen sei eine Funktion grr0 : K × K 7→ W zugeordnet. Jedem Knoten r ∈ R des Graphen sei eine Funktion qr : K 7→ W zugeordnet. Die generalisierte „Qualität“ G[x] eines Labellings x ∈ A (R, K) wird durch i h i h qr (x(r)) grr0 (x(r), x(r 0 )) G[x] = (r,r 0 )∈E r∈R definiert. Gesucht wird ein effizienter Algorithmus zur Berechnung der Größe h i h i 0 (1.6a) G[x] = qr (x(r)) grr0 (x(r), x(r )) . x∈A (R,K) x∈A (R,K) (r,r 0 )∈E r∈R Für die Consistent Labelling, MaxMin und MaxSum Aufgabe ist zusätzlich ein Labelling x∗ zu berechnen, welches die Bedingung (1.6b) x∗ = arg G[x] x∈A (R,K) erfüllt. Anhand der Semiringe im Beispiel 1.5 lässt sich leicht überprüfen, dass die allgemeine Formulierung der (⊕, )-Aufgabe alle bisher diskutierten Aufgaben als Spezialfälle enthält. Die einzelnen Aufgabentypen unterscheiden sich durch zusätzliche Eigenschaften ihrer Semiringe. So haben die Semiringe (1) und (2) des Beispiels 1.5 (Sie entsprechen der Consistent Labelling und der MaxMin Aufgabe) folgende zusätzliche Eigenschaften: Beide Operationen sind idempotent, d.h. a ⊕ a = a und a a = a. Außerdem gilt für sie ein zweites Distributivgesetz: a ⊕ (b c) = (a ⊕ b) (a ⊕ c). Im dritten Semiring des Beispiels (er entspricht der MaxSum Aufgabe) ist die Addition idempotent und (W \0, ) bildet eine abelsche Gruppe. Im vierten Semiring des Beispiels (er entspricht der SumProd Aufgabe) sind (W, ⊕) und (W \0, ) abelsche Gruppen. Fasst man das bisher Gesagte zusammen, so lässt sich feststellen, dass die verallgemeinerte (⊕, )-Aufgabe ein weites Spektrum von Aufgaben der modernen strukturellen Erkennung subsumiert. Die Suche nach effizienten Algorithmen zur Lösung dieser Aufgabe bzw. zur Lösung von Teilklassen dieser Aufgabe ist somit von großer theoretischer und praktischer Bedeutung für die strukturelle Erkennung und das Lernen struktureller Modelle. Hier stellt sich zunächst die Frage, ob eine der bisher betrachteten Aufgabentypen, d.h. Consistent Labelling, MaxMin, MaxSum oder SumProd allgemein und effizient lösbar ist. Das muss leider verneint werden. Alle diese Aufgaben sind im Allgemeinen NP-vollständig. Wenn wir hier von Allgemeinheit sprechen, so meinen wir, dass keine Einschränkungen für die Graphen und keine Einschränkungen für die Funktionen g rr0 bzw. qr getroffen werden. Für die MaxSum Aufgabe wurde bereits im Beispiel 1.4 demonstriert, dass sie NP-vollständig ist – denn das MaxClique Problem ist bekanntlich NP-vollständig [1]. Um zu beweisen, dass alle bisher betrachteten Aufgabentypen im Allgemeinen NP-vollständig sind, kann man wie folgt vorgehen: Zunächst zeigt man, dass die 14 1. PROBLEME DER STRUKTURELLEN ERKENNUNG Consistent Labelling Aufgabe in jede der anderen Aufgaben transformiert werden kann. Dann genügt es zu zeigen, dass die Consistent Labelling Aufgabe NPvollständig ist. Betrachten wir als Beispiel die Transformation der Consistent Labelling Aufgabe in die MaxSum Aufgabe. Sei G (R, E) der Graph der Consistent Labelling Aufgabe und seien grr0 bzw. qr ihre {0, 1}-wertigen Funktionen. Wir bilden diese Aufgabe in eine MaxSum Aufgabe mit demselben Graph und denselben Funktionen grr0 bzw. qr ab. Diese MaxSum Aufgabe hat dann und nur dann den Wert |R| + |E|, wenn die Consistent Labelling Aufgabe den Wert 1 hat, d.h. wenn mindestens ein konsistentes Labelling existiert. Genauso einfach lässt sich die Consistent Labelling Aufgabe in MaxMin und SumProd Aufgaben transformieren. Folglich genügt es zu zeigen, dass die Consistent Labelling Aufgabe NPvollständig ist, was im folgenden Beispiel demonstriert wird. B EISPIEL 1.6. (NP-Vollständigkeit der Consistent Labelling Aufgabe) Wir zeigen in diesem Beispiel, dass sich jedes 3sat Problem in eine Consistent Labelling Aufgabe transformieren lässt. Da das 3sat Problem NP-vollständig ist [1], folgt dass auch die Consistent Labelling Aufgabe NP-vollständig ist. Sei f = i fi eine boolsche Funktion der Variablen x1 , . . . , xn in konjunktiver Normalform, wobei jede der Funktionen f i von höchstens drei Variablen abhängt. Wir transformieren das 3sat Problem zunächst in eine Consistent Labelling Aufgabe mit Prädikaten dritter Ordnung. Jeder Variablen x j entspreche ein Knoten r j der Knotenmenge R. Die Labelmenge besteht aus den zwei Labeln 0 und 1. Die 3-Simplizes S i entsprechen denjenigen Tripeln von Variablen von denen die f i abhängen. Die Funktionen gSi , die den Simplizes zugeordnet werden, wählt man so, dass sie mit den f i übereinstimmen. Die entstehende Consistent Labelling Aufgabe hat dann und nur dann ein konsistentes Labelling, wenn es eine Belegung der Variablen gibt, für die f den Wert 1 annimmt. Im Abschnitt 1.1 dieses Kapitels wurde bereits gezeigt, dass eine Consistent Labelling Aufgabe mit Prädikaten der Ordnung m sich in eine Consistent Labelling Aufgabe mit Prädikaten der Ordnung 2 transformieren lässt. Etwas poetisch ausgedrückt lässt sich die Lage der Dinge so beschreiben: Wir stehen vor dem Fels der NP-vollständigen (⊕, )-Aufgabe. Ihre eminente Wichtigkeit für die strukturelle Erkennung erlaubt es nicht, an diesem Fels vorbeizugehen. Vielmehr müssen wir versuchen möglichst große Brocken aus diesem Fels herauszubrechen – Brocken die effizient lösbar sind d.h. polynomial lösbaren Teilklassen des Problems entsprechen. Jeder Fortschritt in dieser Richtung eröffnet neue Möglichkeiten für die Erkennung und das Lernen struktureller Modelle. Fragt man nach bereits bekannten effizient lösbaren Teilklassen, so stellt sich schnell heraus, dass deren Liste gar nicht so lang ist. Wir beginnen den Überblick dieser Teilklassen mit dem allereinfachsten Fall – dass G (R, E) ein Baum (bzw. ein Wald) ist. In der Klasse der Bäume sind alle betrachteten Aufgaben der Erkennung einfach lösbar. Die dabei verwendeten Algorithmen entsprechen in ihrem Prinzip der dynamischen Optimierung bzw. dynamischen Berechnung. Sie haben in der Regel die Komplexität O (n|K|2 ), wobei n die Anzahl der Knoten des Baumes ist. Das macht diese Modelle sehr attraktiv für Anwendungen. So werden etwa Hidden Markov Modelle auf Ketten extensiv in der automatisierten Spracherkennung 1.4. EINHEITLICHE FORMULIERUNG UND KOMPLEXITÄTSBETRACHTUNGEN 15 genutzt [24]. Auch in der Bildverarbeitung gibt es eine Reihe von Problemen, die mittels struktureller Modelle auf Ketten bzw. Bäumen exakt oder näherungsweise beschreibbar sind. Dazu gehören z.B. die Stereorekonstruktion und in einem gewissen Umfang die Erkennung handgeschriebener Ziffern bzw. Texte. Es ist inzwischen allgemein bekannt, dass die betrachteten Modelle auch in der Klasse partieller m-Bäume effizient lösbar sind [37, 40]. Die Komplexität dieser Algorithmen ist in der Regel O (n|K| m+1 ). Andererseits sind die Graphen, die in der strukturellen Bilderkennung auftreten, meistens komplexer als partielle m-Bäume mit beschränktem m. So ist z.B. ein quadratisches Gitter der Größe m × n (m sei o.B.d.A. kleiner als n) ein partieller m-Baum. Die Komplexität der erwähnten Algorithmen skaliert in diesem Fall exponentiell mit der Dimension des Bildes. Dasselbe gilt natürlich für alle anderen Algorithmen, die z.B. die allgemeine Consistent Labelling Aufgabe exakt lösen [19]. Derartige Algorithmen sind folglich in der Bilderkennung nicht anwendbar. Ausnahmen bilden Aufgaben, deren Graph von beschränkter Komplexität ist. In der Vergangenheit wurde deswegen intensiv nach Auswegen aus dieser Situation gesucht. So wurden z.B. Aufgaben der strukturellen Erkennung auf neuronale Netze abgebildet [23] bzw. neuronal motivierte Algorithmen wie das Simulated Annealing [26] in die Erkennung übertragen. Viele Versuche galten effizienten Näherungsalgorithmen. Andererseits hat man versucht Algorithmen, wie das bereits erwähnte Probabilistic Relaxation Labelling, die zunächst ohne klare Modellbildung „auskamen“, durch geeignete Modelle besser zu begründen [20, 27, 30]. Das klare Verständnis dessen, dass die betrachteten Aufgaben NP-vollständig sind und die bekannten Resultate der letzten Jahre zu Näherungsalgorithmen für NP-vollständige Probleme zwingen uns zu einer anderen und strengeren Herangehensweise. Betrachten wir etwa das Simulated Annealing. Dieser Algorithmus ist für die Lösung NP-vollständiger Probleme entworfen worden. Konsequenterweise skaliert er exponentiell in der Zeit. Ob das für diese oder jene Teilklasse von Aufgaben anders ist, bedarf eines Beweises. Betrachten wir zum anderen Näherungsalgorithmen. Für eine Reihe NP-vollständiger Probleme weiß man heute, dass jeder Algorithmus der diese Aufgaben näherungsweise löst, auch NP-vollständig ist. Für Algorithmen zur näherungsweisen Lösung von Aufgaben der strukturellen Erkennung müssen deswegen sowohl Angaben zur Laufzeit als auch Angaben zur erreichbaren Güte der Näherung bekannt sein. All das Gesagte legt es nahe, nach anderen exakt lösbaren Teilklassen der (⊕, )Aufgabe zu suchen. Dabei sollen diese Teilklassen nicht durch Einschränkungen an den Graph G (R, E) der Aufgabe entstehen, sondern durch Einschränkungen an die Funktionen grr0 und qr , die in (1.6) verwendet werden. So kann man z.B. die Labelmenge K mit einer zusätzlichen Struktur versehen und Funktionen g rr0 und qr betrachten, die diese Struktur „erhalten“. Möglicherweise lassen sich für solche Klassen Algorithmen finden, die (1.6) selbst auf voll verbundenen Graphen in polynomialer Zeit lösen. Ein bemerkenswerter Durchbruch in dieser Richtung wurde in den letzten Jahren speziell für die MaxSum Aufgabe erzielt [17, 22, 9, 18]. In diesen Arbeiten 16 1. PROBLEME DER STRUKTURELLEN ERKENNUNG wurde gezeigt, dass sich die MaxSum Aufgabe entweder äquivalent in eine Aufgabe der Flussmaximierung transformieren lässt oder durch eine Folge solcher Aufgaben approximiert werden kann, wenn die Labelmenge K mit der Struktur einer vollständigen Ordnung bzw. eines metrischen Raumes versehen wird und die den Kanten des Graphen zugeordneten Funktionen gewisse Bedingungen bezüglich dieser Strukturen erfüllen. Die den Knoten des Graphen zugeordneten Funktionen und der Graph selbst können dabei beliebig sein. Ausgangspunkt der gemeinsamen Forschung des Autors mit M.I. Schlesinger (IRTCITS Kiew) war dagegen der Fakt, dass Consistent Labelling Aufgaben im Fall |K| = 2 auf beliebigen Graphen mit der Komplexität O (n 3 ) lösbar sind. Das folgt bereits daraus, dass jede Consistent Labelling Aufgabe mit |K| = 2 in eine 2sat Aufgabe transformiert werden kann und letztere bekanntlich mit der Komplexität O (n3 ) lösbar ist. Eine genaue Analyse dieses angenehmen Umstandes führte zu der folgenden Verallgemeinerung für Labelmengen K mit mehr als zwei Elementen. Die Menge K sei mit der Struktur einer (Teil-) Ordnung oder genauer gesagt mit der Struktur eines Verbandes versehen. Von den Funktionen g rr0 und qr des Problems wird verlangt, dass sie bestimmte Bedingungen bezüglich dieser Struktur erfüllen. Dies führt zu einer Teilklasse von Consistent Labelling und MaxMin Aufgaben, die selbst auf vollständigen Graphen mit der Komplexität O (n 3 |K|3 ) exakt lösbar sind. Zunächst formulieren wir dabei bestimmte Bedingungen, die garantieren, dass die Aufgabe mit dem bekannten Relaxation Labelling Algorithmus exakt lösbar ist. Dann erweitern wir diese Klasse, was zu einem etwas komplizierteren Algorithmus führt. Die Grundidee des Algorithmus liegt in der iterativen Anwendung einer äquivalenten Transformation – die wir Stern-Simplex Transformation nennen – mit der sich das Ausgangsproblem in ein äquivalentes aber triviales Problem überführen lässt. Vorläufige Resultate für eine engere Klasse von MaxMin Aufgaben sind in [35, 36, 13] publiziert. Ein selbst für den Autor überraschendes Ergebnis zeigte sich bei der fast formalen Übertragung obiger Bedingungen auf den Fall von MaxSum-Semiringen. Praktisch dieselben Bedingungen führen auch hier zu einer Teilklasse von MaxSum Aufgaben, die mit polynomialem Zeitaufwand exakt lösbar sind. Dabei zeigt es sich, dass alle Aufgaben dieser Teilklasse äquivalent als lineare Optimierungsaufgaben formuliert werden können. Die Analyse dieser linearen Optimierungsaufgaben bzw. ihrer dualen Aufgaben erweist sich als guter Ausgangspunkt für die Suche nach effizienten Algorithmen zur Lösung derartiger MaxSum Aufgaben. KAPITEL 2 Beispiele struktureller Erkennungsaufgaben 2.1. Strukturelle Modellierung der Stereorekonstruktion Unter dem Begriff der 3D-Rekonstruktion eines Objektes versteht man in der Bildverarbeitung die folgende Aufgabe. Anhand gewisser Messungen soll eine parametrische Beschreibung der Oberfläche des betrachteten Objekts im euklidischen Raum E 3 gewonnen werden. Der hier verwendete Begriff einer parametrisierten Fläche im E 3 lässt sich mathematisch sehr einfach definieren: Sei U ein Gebiet einer Koordinatenebene u = (u1 , u2 ). Eine glatte Abbildung r : U 7→ E 3 heißt parametrisierte Fläche im E 3 , wenn die Vektoren der partiellen Ableitungen r i = ∂r/∂ui , i = 1, 2 in jedem Punkt u ∈ U linear unabhängig sind. Eine beliebige glatte Fläche im E 3 kann dann mittels einer Familie parametrisierter Flächen überdeckt werden, die ihrerseits als Atlas der Fläche aufgefasst wird. Infolge unvollständiger Messungen, Messfehler und anderer Störungen kann man natürlich nicht erwarten, dass die Objektoberfläche genau rekonstruiert werden kann. Im Allgemeinen wird man deswegen versuchen, eine gute Approximation der Objektoberfläche zu finden. Die weitere Formalisierung dieser Aufgabe hängt natürlich von den Messungen bzw. Messgeräten ab, die zur Verfügung stehen. Wenn z.B. das Objekt unter Laborbedingungen vermessen wird und solche Geräte wie Drehtisch, strukturiertes Licht oder Lasermessgeräte genutzt werden, so wird man die Aufgabe anders formalisieren als dann, wenn die einzigen zur Verfügung stehenden Messungen Kameraaufnahmen des Objekts aus verschiedenen Richtungen sind. Im Weiteren werden wir nur die zweite Situation betrachten und uns auf die Diskussion des binokularen Falls beschränken. Nehmen wir also an, dass als Messung zwei Aufnahmen des Objekts vorliegen, die mit parallel ausgerichteten Lochkameras aufgenommen wurden, wobei die Verbindungslinie der Projektionszentren parallel zu den Zeilen der Schirme gewesen sei und der Abstand dieser Punkte bekannt ist. Für zwei Gebiete U1 bzw. U2 der Schirme der ersten bzw. zweiten Kamera sei bekannt, dass sie das Bild ein und desselben Stücks M der Objektoberfläche enthalten und Karten entsprechen. Dann reduziert sich die 3D-Rekonstruktion von M auf die Suche korrespondierender Punkte in U1 und U2 . Präziser ausgedrückt, wird eine Abbildung x : U1 7→ U2 gesucht, die jedem Pixel in U1 sein korrespondierendes Pixel in U2 zuordnet. Dabei heißen zwei Pixel korrespondierend, wenn sie das Abbild ein und desselben Punktes der Objektoberfläche sind. Die eigentlich gesuchte parametrisierte Fläche M lässt sich dann durch elementare geometrische Berechnungen aus x gewinnen. 17 18 2. BEISPIELE STRUKTURELLER ERKENNUNGSAUFGABEN Der Ausgangspunkt für die Bestimmung der Abbildung x ist die Annahme, dass die Umgebungen korrespondierender Pixel ähnliche Farbwerte aufweisen. Dies führt zur Konstruktion eines Ähnlichkeitsmaßes, mit dem die Ähnlichkeit der Färbungen kleiner Bildbereiche gemessen wird. Im einfachsten Fall konstruiert man dann die gesuchte Abbildung x, indem man für jedes Pixel in U1 das ähnlichste Pixel in U2 findet. Präziser ausgedrückt, sucht man für jedes Pixel u 1 ∈ U1 das Pixel x(u1 ) ∈ U2 , dessen Umgebung der Umgebung von u 1 am ähnlichsten ist. Dieses Verfahren bezeichnet man als Blockmatching. In der Abb. 2.2 ist die Stereoaufnahme eines Gesichts und die durch das Blockmatching gewonnene Abbildung x gezeigt. Die Differenz der Positionen korrespondierender Pixel ist durch Grauwerte kodiert. Die Resultate, die man mit dem Blockmatching erhält, sind meistens nicht sehr gut. Das hat mehrere Gründe. Zum einen sind lokale Farbmessungen (mit Kameras) meist sehr rauschanfällig, so dass für jedes Pixel in U 1 in der Regel mehrere ähnliche Kandidaten in U2 auftreten. Das ist insbesondere dann der Fall, wenn die Färbung der Objektoberfläche ähnliche lokale Ausschnitte hat („kariertes Hemd“). Die Auswahl des besten „Kandidaten“ als korrespondierendes Pixel ist dann oft nicht die richtige. Zum anderen bleibt bei diesem Verfahren unberücksichtigt, dass die Form der für das Blockmatching benutzten Umgebung bei der Abbildung x nicht erhalten bleibt. Eine weitere Ursache sind Einschränkungen in der Wahl des Ähnlichkeitsmaßes. In den meisten Fällen kann man nicht davon ausgehen, dass die Objektoberfläche Lambertsch reflektiert, d.h. aber, dass selbst im störungsfreien Fall die Farbwerte zweier korrespondierender Pixel nicht übereinstimmen. Bessere Reflexionsmodelle benutzen den Normalenvektor der Objektoberfläche. Diese werden beim Blockmatching aber nicht betrachtet. Diese Gründe führen wie bereits gesagt dazu, dass das Blockmatching meistens keine gute Approximation der Objektoberfläche liefert. Mehr noch, oftmals repräsentiert die erhaltene Abbildung x überhaupt keine parametrisierte Fläche M im E 3 . Das hängt damit zusammen, dass zwar jeder parametrisierten Fläche M eine Korrespondenzabbildung x entspricht, aber nicht umgekehrt. Stellt man sich die oben beschriebene Kameraanordnung anschaulich vor, so wird sofort klar, dass jede Ebene, die die beiden Projektionszentren enthält, die beiden Schirme in korrespondierenden Bildzeilen schneidet und die Objektoberfläche entlang einer Kurve schneidet. Alle Punkte dieser Kurve werden folglich auf die korrespondierenden Bildzeilen abgebildet. Somit ist die Abbildung x nur dann eine zulässige Korrespondenzabbildung, wenn sie alle Punkte einer Zeile auf Punkte der korrespondierenden Zeile abbildet. Mehr noch, unter der Annahme, dass die Bilder Karten der Fläche M sind, muss die Abbildung x entlang jeder Zeile monoton sein. Und schließlich muss x eine glatte Abbildung sein, wenn M glatt ist. Die letzte Forderung kann man abschwächen, wenn man annimmt, dass M stetig und stückweise glatt ist (M könnte z.B. ein Polyeder sein). In diesem Fall muss x zumindest stetig sein. Eine Abbildung x : U1 7→ U2 ist also nur dann eine gültige Korrespondenzabbildung, wenn sie diese drei Bedingungen erfüllt – nur dann existiert eine zugehörige Fläche M. Die Bedingungen unter denen das gilt sind nicht allzu einschränkend: Die Kameras sind wie oben beschrieben ausgerichtet, die Abbilder des Flächenstücks M sind Karten und M selbst ist stetig und stückweise glatt. 2.1. STRUKTURELLE MODELLIERUNG DER STEREOREKONSTRUKTION 19 Will man die Aufgabe der 3D-Rekonstruktion unter diesen Annahmen so formulieren, dass nur zulässige Korrespondenzabbildungen betrachtet werden, so kann man die korrespondierenden Pixel nicht mehr unabhängig voneinander suchen. Es entsteht eine strukturelle Erkennungsaufgabe mit folgendem Gerüst. Der Graph der Aufgabe G (R, E) ist das Pixelgitter des Schirms der ersten Kamera bzw. der Teil des Pixelgitters, der dem zu bearbeitenden Gebiet U1 entspricht. Die Labelmenge K ist eine Teilmenge der ganzen Zahlen und kodiert die Differenz der Positionen korrespondierender Pixel – auch Disparität genannt. Die Wahl des Labels k im Knoten (d.h. Pixel) r = (u, v) würde bedeuten, dass sich das zu (u, v) korrespondierende Pixel in der Position (u + k, v) des zweiten Schirms befindet. Die Funktionen qr : K 7→ sind datenabhängig und kodieren die Ähnlichkeiten: Der Wert q r (k) ist der Wert des Ähnlichkeitsmaßes für die Umgebungen der Pixel r = (u, v) und (v + k, v) im ersten bzw. zweiten Schirm. Die den Kanten des Gitters zugeordneten Funktionen grr0 : K × K 7→ sind dagegen datenunabhängig und realisieren die strukturellen Forderungen. Man kann sie z.B. wie folgt wählen. Für alle horizontalen Kanten gelte ( −∞ wenn |k − k 0 | > m oder (k 0 − k) < −1, 0 (2.1a) grr0 (k, k ) = 0 2 −c(k − k ) sonst und für alle vertikalen Kanten gelte ( −∞ (2.1b) grr0 (k, k0 ) = −c(k − k0 )2 wenn |k − k 0 | > m, sonst. Die geforderte Stetigkeit der Korrespondenzabbildung wird durch g rr0 (k, k0 ) = −∞ für |k − k0 | > m garantiert. Die Monotonie entlang der Zeilen wird durch die Bedingung grr0 (k, k0 ) = −∞ für (k 0 − k) < −1 garantiert. Es entsteht folgende Optimierungsaufgabe für die gesuchte Korrespondenzabbildung x ∈ A (R, K): i h (2.2) x∗ = arg max ∑ qr (x(r)) + ∑ grr0 (x(r), x(r 0 )) . x∈A (R,K) r∈R (r,r 0 )∈E Das ist eine MaxSum Aufgabe, die wie wir später sehen werden, exakt und in polynomialer Zeit lösbar ist. In einer Reihe von Arbeiten (siehe z.B. [3, 38]) wurde eine analoge, aber im Kontinuum formulierte Aufgabe betrachtet. Die Summe geht dann in ein Integral über und x ist eine Abbildung des 2 in . D.h. es entsteht ein Funktional von x, welches zu minimieren ist. Diese Herangehensweise hat zwei Nachteile. Zum einen kann die „harte“ Forderung der Monotonie entlang der Zeilen nicht implementiert werden und somit ist nicht garantiert, dass nur zulässige Korrespondenzabbildungen erhalten werden. Zum zweiten gibt es keine Verfahren zur exakten Lösung dieser Aufgaben – üblicherweise wird ein Gradientenverfahren angewendet und man erhält nur ein lokales Minimum. Andererseits möchten wir nochmals betonen, dass die Aufgabe (2.2), (2.1) nur ein Gerüst für die 3DRekonstruktion ist. In ihr werden z.B. die Normalenvektoren nicht betrachtet und bei der Berechnung der lokalen Ähnlichkeitswerte werden nach wie vor Umgebungen konstanter Form benutzt. Allerdings war es bis vor kurzem ja noch nicht einmal klar, dass diese Aufgabe exakt mit polynomialem Zeitaufwand lösbar ist. 20 2. BEISPIELE STRUKTURELLER ERKENNUNGSAUFGABEN u1 u2 u3 ul−1 ul ue1 ue2 ue3 uel−1 uel A BBILDUNG 2.1. Zerlegung korrespondierender Bildstreifen in korrespondierende Rechtecke. Eindimensionale Optimierung. Lässt man die Forderung der Stetigkeit transversal zu den Zeilen weg und setzt dementsprechend die Funktionen g rr0 für alle vertikalen Kanten auf Null, so zerfällt (2.2) in unabhängige Optimierungsaufgaben auf den Zeilen. Der Graph jeder dieser Teilaufgaben ist eine Kette und sie können folglich mit dynamischer Optimierung gelöst werden. Die dabei entstehende Lösung kann dann allerdings Unstetigkeiten in v-Richtung haben – auch wenn die Objektoberfläche stetig ist. Entscheidet man sich, die Aufgabe zeilenweise unabhängig zu lösen, so kann man sie unter diesen Umständen allerdings etwas besser formulieren und sich dadurch von einem der oben genannten Nachteile befreien. Dazu erinnern wir uns, dass für die Berechnung der Ähnlichkeit zweier Pixel die Umgebungen dieser Pixel benutzt werden. Betrachtet man die eindimensionale Variante der Aufgabe (2.2) für die Zeile v0 , so gehen in die Funktionen qr auch die Farbwerte benachbarter Zeilen der beiden Bilder ein. Man kann die Aufgabe direkt auf den korrespondierenden Streifen [0, L] × [v0 − h, v0 + h] der beiden Bilder formulieren, um die „Zeile“der Korrespondenzabbildung x(., v0 ) zu erhalten. Dann müssen die für die Berechnung der Ähnlichkeit verwendeten Umgebungen nicht mehr gleichgroß sein. Somit lässt sich berücksichtigen, dass ein Ausschnitt der Objektoberfläche im Allgemeinen auf unterschiedlich große Ausschnitte der Kameraschirme abgebildet wird. Nehmen wir an, dass die gesuchte Korrespondenzabbildung x(., v 0 ) für die Zeile v0 stückweise linear approximiert werden darf. Dann lässt sich die Aufgabe wie folgt formulieren. Sei u = (u1 , . . . , ul ) eine Zerlegung des Streifens [0, L] × [v 0 − h, v0 + h] des ersten Bildes in aufeinander folgende Rechtecke mit den Grenzen u i , ui+1 und e u = (e u1 , . . . , uel ) eine analoge Zerlegung des korrespondierenden Streifens des zweiten Bildes in ebensoviele Rechtecke (s. Abb. 2.1). Das Ziel ist, die Zerlegungen so zu wählen, dass für jedes i das Rechteck [u i , ui+1 ]×[v0 −h, v0 +h] zu dem Rechteck [e ui , uei+1 ]×[v0 −h, v0 +h] korrespondiert. Dabei müssen weder die Rechtecke innerhalb eines Streifens, noch die als korrespondierend betrachteten Rechtecke gleichlang sein. Auch die Anzahl der verwendeten Rechtecke wird nicht fixiert. Für jedes Paar korrespondierender Rechtecke wird ein Ähnlichkeitsmaß g(u i , ui+1 , uei , uei+1 ) berechnet. Die Korrespondenzaufgabe entspricht dann der Optimierungsaufgabe (2.3) arg max ∑ g(ui , ui+1 , uei , uei+1 ) u,e u i unter der Nebenbedingung |u| = |e u|. Die Feinheit der stückweise linearen Approximation von x(., v0 ) und eventuell vorhandenes a-priori Wissen lassen sich durch weitere Nebenbedingungen berücksichtigen. Weiß man z.B. dass die Disparität nur 2.1. STRUKTURELLE MODELLIERUNG DER STEREOREKONSTRUKTION 21 im Intervall [D1 , D2 ] variiert, so verlangt man D1 uei − ui D2 ∀i. Die Feinheit der Approximation steuert man durch die Vorgabe eines Intervalls für die erlaubten Längen der Rechtecke: b1 ui+1 − ui b2 , b 1 uei+1 − uei b2 . Bei gegebenen Ähnlichkeitswerten g kann (2.3) mit den betrachteten Nebenbedingungen durch dynamische Optimierung gelöst werden. Anschaulich gesehen entspricht diese Modellierung der Annahme, dass der entsprechende Streifen der Objektoberfläche durch eine quasizylindrische Fläche approximiert wird: ihre Tangentialebene ist in jedem Punkt parallel zur v-Achse der Schirme. Offen bleibt bisher die Wahl des Ähnlichkeitsmaßes g(u i , ui+1 , uei , uei+1 ), mit dem die Ähnlichkeit zweier (als korrespondierend angenommener) Rechtecke berechnet wird. Einen Ansatz liefert folgende Betrachtung. Die Wahl zweier als korrespondierend angenommener Rechtecke fixiert ein viereckiges (ebenes) Stück der Objektoberfläche. Ist dieses Stück wirklich ein Teil der Objektoberfläche, so existiert eine Färbung dieses Stücks, die bei der Abbildung auf die Kameraschirme genau die Färbungen der Rechtecke erzeugt. Weiß man z.B. dass das Objekt Lambertsch reflektiert und dass die Übertragungsfunktionen beider Kameras übereinstimmen, so muss die Färbung der beiden Rechtecke, nach deren Umskalierung auf eine einheitliche Größe, übereinstimmen. In diesem Fall wäre die Summe der quadratischen Abweichungen der Farbwerte ein gutes Maß. Reflektiert die Objektoberfläche dagegen nicht Lambertsch, so muss man berücksichtigen, dass die Färbung im Bild auch von der Blickrichtung abhängt. Sind die Ausmaße des betrachteten Vierecks der Objektoberfläche klein gegen den Abstand zur Kamera, so kann die Blickrichtung für alle Punkte des Vierecks als konstant angenommen werden. Folglich unterscheidet sich die Färbung des Abbildes durch einen konstanten Faktor von der Färbung des Ausschnittes der Objektoberfläche. Dieser Faktor ist für beide Bilder unterschiedlich. Das Ähnlichkeitsmaß ergibt sich dann wie folgt. Sei R das einheitliche Rechteck auf welches beide korrespondierenden Rechtecke skaliert werden und seien f 1 : R 7→ und f2 : R 7→ ihre entsprechend skalierten (und bei Bedarf resampelten) Färbungen. Weiterhin sei f eine temporär angenommene wahre Objektfärbung. Das Ähnlichkeitsmaß entsteht durch die Minimierung des folgenden Funktionals über alle möglichen f und Faktoren c 1 und c2 : g( f1 , f2 ) = = − min f ,c1 ,c2 h ∑ (u,v)∈R 2 i 2 f1 (u, v) − c1 f (u, v) + ∑ f2 (u, v) − c2 f (u, v) . (u,v)∈R Abb. 2.2 (d) zeigt die mit diesem Verfahren erhaltene Disparitätskarte. Sie ist besser als die mit einfachem Blockmatching erhaltene Disparitätskarte, weist aber Unstetigkeiten in v-Richtung auf, obwohl die Objektoberfläche überall stetig ist. Erweiterung der Korrespondenzaufgabe. Die Betrachtungen zur zeilenweise unabhängigen Lösung führen direkt zu einer verbesserten Formulierung der Aufgabe der Stereokorrespondenz, bei der einige Schwachpunkte des Ansatzes (2.2) 22 2. BEISPIELE STRUKTURELLER ERKENNUNGSAUFGABEN (a) (c) (b) (d) A BBILDUNG 2.2. Stereoaufnahme eines Gesichts und Disparitätskarten, die mit Blockmatching (c) und Dynamischer Optimierung (d) erhalten wurden. überwunden werden. Stellen wir uns dazu vor, dass der Schirm der ersten Kamera mit Dreiecken (z.B. regulär) partitioniert sei. Die Knotenmenge R entspreche den Ecken dieser Dreiecke und sei die Struktur eines abstrakten Simplizialkomplex auf R: 3-Simplizes S sind Tripel von Knoten, die Dreiecken entsprechen und 2-Simplizes C sind Paare von Knoten, die Kanten von Dreiecken entsprechen. Man kann sich anschaulich leicht vorstellen, dass diese Partitionierung des Kameraschirms zusammen mit den Projektionszentrum eine Partitionierung des sichtbaren Raumwinkels durch Kegel mit dreieckigem Querschnitt erzeugt. Jeder Kegel schneidet aus der Objektoberfläche ein Teilstück heraus und wir approximieren diese Stücke als ebene Dreiecke. Die Abbilder dieser Dreiecke erzeugen auf dem Schirm der zweiten Kamera eine korrespondierende Partitionierung mit Dreiecken. Diese Zuordnung lässt sich durch eine Korrespondenzabbildung x : R 7→ K 2.2. MODELLIERUNG DER JAHRRINGSTRUKTUR IN HOLZOBERFLÄCHEN 23 beschreiben. Umgekehrt beschreibt eine Abbildung x ∈ A (R, K) eine korrespondierende Partitionierung des zweiten Schirms, wenn für jedes Dreieck {r 1 , r2 , r3 } ∈ das zugehörige Dreieck {r10 , r20 , r30 } dieselbe Orientierung hat. Die Ecken r i0 des zweiten Dreiecks ergeben sich dabei aus den Ecken r i = (ui , vi ) des ersten Dreiecks und den Disparitäten x(ri ): u0i = ui + x(ri ), v0i = vi . Zur Beschreibung der Güte einer Korrespondenzabbildung wird jedem 3-Simplex (Dreieck) eine Funktion qS : A (S, K) 7→ zugeordnet. Bleibt die Orientierung des Dreiecks S bei der Abbildung x(S) erhalten, so ist q S (x(S)) die Ähnlichkeit der Färbungen beider Dreiecke. Anderenfalls sei q S (x(S)) eine sehr kleine Zahl – z.B. −∞. Durch S und x(S) werden zwei (als korrespondierend betrachtete) Dreiecke fixiert, die ihrerseits ein ebenes Dreieck im Raum mit bekanntem Normalenvektor definieren. Somit lässt sich die Abhängigkeit der Färbung vom Normalenvektor im Ähnlichkeitsmaß berücksichtigen. Haben zwei Dreiecke S, S 0 des Schirms der ersten Kamera eine gemeinsame Kante, so dürfen x(S) und x(S 0 ) natürlich nicht unabhängig gewählt werden – sie müssen auf dieser Kante übereinstimmen. Das wird durch die Einführung von Funktionen gC berücksichtigt, die den 2-Simplizes (d.h. Kanten) zugeordnet werden. Haben zwei Dreiecke S, S 0 die Kante C gemeinsam, so ist ( gC (x(S), x(S0 )) = −∞ 0 wenn x(S)|C 6= x(S0 )|C und sonst. Als Formalisierung des Korrespondenzproblems entsteht somit die Aufgabe i h x∗ = arg max ∑ qS (x(S)) + ∑ gC (x(S), x(S0 )) . x∈A (R,K) S∈ C∈ Vorausgesetzt wurde die Erfüllung folgender Annahmen: − Die Objektoberfläche ist stetig und stückweise glatt. − Die Abbilder des Objekts auf den Kameraschirmen sind Karten. − Die Kameras sind parallel ausgerichtet. Nicht vorausgesetzt wurde, dass die Objektoberfläche Lambertsch reflektiert – die Abhängigkeit der abgebildeten Färbung vom Normalenvektor kann im Ähnlichkeitsmaß berücksichtigt werden. Die entstandene Aufgabe entspricht einer MaxSum Aufgabe auf einem ebenen Simplizialkomplex der Ordnung 3. 2.2. Modellierung der Jahrringstruktur in Holzoberflächen Die qualitative Bewertung von Schnittholz nach festigkeits- und optisch relevanten Kriterien setzt die Erkennung optisch erfassbarer Holzmerkmale wie Äste, Risse, Verfärbungen, Druckholz u.s.w. voraus. Die Automatisierung dieser Erkennung ist eine komplizierte Aufgabe der Bildverarbeitung. Die Schwierigkeiten liegen zum einen in der hohen Variabilität der Ausprägung der einzelnen Fehlerklassen, für die es im Gegensatz zu artifiziellen Objekten keine Normalform gibt. Zum anderen 24 2. BEISPIELE STRUKTURELLER ERKENNUNGSAUFGABEN A BBILDUNG 2.3. Aufnahme einer Holzoberfläche (Fichte). sind die zu den Fehlern assoziierten Regionen im Allgemeinen in sich strukturiert, d.h. keinesfalls homogen (s. Abb. 2.3). Seit den achtziger Jahren wird versucht, das Problem mit statistischen Methoden basierend auf lokalen Grauwert-, Farb- und Texturmerkmalen bzw. mit syntaktischen oder strukturellen Methoden zu lösen [25, 29, 39]. Bei fast allen bisherigen Ansätzen wurde u.a. aus Verarbeitungszeitgründen eine Vorklassifikation in merkmalsfreie und merkmalsbehaftete Bildausschnitte bzw. Pixel anhand lokaler Entscheidungen vorgenommen. Diese Herangehensweise basiert auf der Annahme, dass ein einfaches Modell zur Unterscheidung von merkmalsfreiem- und merkmalsbehaftetem Holz formuliert werden kann. In den bisherigen Ansätzen wurden dafür Merkmale wie Farbhistogramme, lokale Textureigenschaften u.ä. benutzt, wobei die Modellierung des merkmalsfreien Holzes weitestgehend vernachlässigt wurde [42]. Es zeigte sich, dass mit solchen einfachen Modellen keine ausreichend sichere Vorklassifikation realisiert werden kann. Dies legte es nahe, bessere (wenn auch komplexere) Modelle für merkmalsfreies Holz zu entwickeln [7]. Ist man speziell an der Erkennung von Holzmerkmalen in Nadelbaumholz interessiert, so erscheint es sinnvoll, die Jahrringe als die zu modellierenden Strukturelemente zu wählen. Betrachtet man die Grauwertverteilung eines beliebigen Farbkanals über einer Bildzeile (Die Zeilen laufen quer zum Brett) in merkmalsfreiem Holz, so ist ein Abwechseln von Monotonieintervallen zu beobachten, welches durch die sich periodisch ändernden Lignin/Zellulose Konzentrationen im Holz hervorgerufen wird (Abb. 2.4). Die Maxima und Minima entsprechen dabei den Schnittpunkten der hellen und dunklen Jahrringlinien mit der betrachteten Zeile. Dies führt zu folgendem Modellansatz für merkmalsfreies Holz mit homogenem Jahrringverlauf – oder kürzer, homogenem Holz: Für einen Bildausschnitt mit homogenem Holz seien die (dunklen und hellen) Jahrringe als Kurven in diesem Ausschnitt gegeben. Weiterhin seien die mittleren Farbwerte auf jedem Jahrring bekannt. Dann kann man eine Modellfunktion für die Farbverteilung im gesamten Ausschnitt generieren, die mit der realen Farbverteilung gut übereinstimmt. Somit erhält man eine Klasse von Modellfunktionen für Bildausschnitte mit homogenem Holz, die durch Jahrringe und Farbwerte auf ihnen „parametrisiert“ ist. 2.2. MODELLIERUNG DER JAHRRINGSTRUKTUR IN HOLZOBERFLÄCHEN (a) 25 (b) A BBILDUNG 2.4. (a) Helligkeitsverteilung im Blaukanal entlang einer Zeile in merkmalsfreiem Holz. (b) Grauwertgebirge des Blaukanals für einen Ausschnitt mit merkmalsfreiem Holz. Will man nun für einen gegebenen Bildausschnitt entscheiden, ob er homogenes Holz enthält, so muss man unter all diesen Modellfunktionen diejenige suchen, die mit der realen Farbfunktion im Ausschnitt am besten übereinstimmt. Anhand der Güte dieser Übereinstimmung kann die gewünschte Entscheidung getroffen werden. Quasi 1D-Ansatz. Für die weitere Formalisierung dieser Aufgabe müsste man zunächst ein Modell für mögliche Jahrringkurven (mögliche Krümmungen, Parallelität der Jahrringe u.s.w.) aufstellen. Das würde zu einer sehr komplizierten Optimierungsaufgabe auf einem Gitter (Bildausschnitt) führen. Wir haben zunächst darauf verzichtet und stattdessen eine quasi eindimensionale Näherung für dieses Modell entwickelt. Der zu untersuchende Bildausschnitt wird in disjunkte parallele Streifen zerlegt. Für jeden dieser Streifen werden die ihn schneidenden Jahrringe als gerade Strecken approximiert. Somit entsteht eine Einteilung des Streifens in Trapeze, die sich durch die x-Koordinaten der oberen bzw. unteren Enden der Jahrringstrecken (u, v) = ((u1 , v1 ), (u2 , v2 ), . . . , (un , vn ) beschreiben lässt (Abb. 2.5). Entsprechend einem noch zu formulierenden Gütemaß wird für jeden Streifen die beste Einteilung in Trapeze gesucht. Da die Streifen unabhängig voneinander bearbeitet werden, sind die Anfangs- und Endpunkte der erhaltenen Liniensegmente in aufeinander folgenden Streifen im Allgemeinen nicht verbunden. Ein sich anschließendes Tracking der Liniensegmente liefert den Jahrringverlauf für den gesamten Bildausschnitt. Der verwendete Trackingalgorithmus erlaubt Editieroperationen wie z.B. das Entfernen einzelner Pixel bzw. Liniensegmente. Die Bestimmung der besten Einteilung eines Streifens in Trapeze erfolgt durch die Approximation des realen Farbverlaufs mit Funktionen einer Modellklasse. Für ein einzelnes Trapez (ui , ui+1 , vi , vi+1 ) sind das monoton wachsende bzw. monoton fallende bilineare Funktionen h(x, y) mit konstantem Grauwert h l bzw. hr auf den Trapezseiten. Die Approximationsgüte ist die mittlere quadratische Abweichung 26 2. BEISPIELE STRUKTURELLER ERKENNUNGSAUFGABEN v1 vl−1 vl v2 v3 u1 u2 u3 ul−1 ul A BBILDUNG 2.5. Einteilung des Streifens in Trapeze der Modellfunktion und der realen Färbung f (x, y): g(ui , vi , ui+1 , vi+1 , hl , hr ) = ∑ xr (y) ∑ y xl (y) 2 f (x, y) − h(x, y) . Die beste Approximation ergibt sich durch Minimieren von g bezüglich der beiden Randgrauwerte hl , hr unter der Bedingung |hl − hr | > Hmin Da zunächst nicht bekannt ist, ob im Bildsegment (ui , ui+1 , vi , vi+1 ) ein Übergang von einem hellen zu einem dunklen Jahrring, oder umgekehrt stattfindet, muss die Minimierung sowohl für den monoton fallenden ǧ(ui , vi , ui+1 , vi+1 ) = min g(ui , vi , ui+1 , vi+1 , hl , hr ) , (hl − hr ) > Hmin hl ,hr als auch für den monoton wachsenden Fall berechnet werden: ĝ(ui , vi , ui+1 , vi+1 ) = min g(ui , vi , ui+1 , vi+1 , hl , hr ) , (hr − hl ) > Hmin . hl ,hr Die Approximationsgüte für die Einteilung des gesamten Streifens ist die Summe der Bewertungen der einzelnen Segmente: G[u, v] = ∑ g(ui , vi , ui+1 , vi+1 ), i dabei müssen sich monoton fallende und monoton wachsende Segmente abwechseln. Die beste Einteilung des Streifens in Trapeze erhält man durch Minimieren von G bezüglich aller zulässigen Einteilungen: (u∗ , v∗ ) = arg min G[u, v]. u,v Eventuell vorhandenes a-priori Wissen für den Bildausschnitt wie z.B. die mittlere Richtung der Jahrringe, der mittlere Abstand der Jahrringe u.s.w. wird durch die Einführung zusätzlicher Nebenbedingungen berücksichtigt. Die entstehende Aufgabe lässt sich effizient durch Dynamische Optimierung lösen. Die dabei erhaltene Approximationsgüte ist ein erstes Qualitätsmaß dafür, dass sich im Bildausschnitt homogenes Holz befindet. Das beschriebene Verfahren zur Bewertung von Bildausschnitten wurde als Routine für ein System zur Inspektion von Holzoberflächen implementiert. Die Aufgabe des Systems besteht in der Einteilung der Holzoberfläche in homogene und 2.2. MODELLIERUNG DER JAHRRINGSTRUKTUR IN HOLZOBERFLÄCHEN 27 inhomogene Regionen. Hierzu werden Bildausschnitte festgelegt, die von der Routine zu untersuchen sind. Das Inspektionssystem bildet anhand der Rückgabeparameter der von der Routine schon inspizierten angrenzenden Bereiche Hypothesen und initialisiert sie entsprechend. Stimmen die Hypothesen nicht mit den von der Routine zurückgelieferten Werten überein, verändert das Inspektionssystem den zu untersuchenden Bereich. Auf diese Art und Weise zoomt sich das Gesamtsystem in fehlerhafte Bereiche, was zu einer besseren Auflösung der Fehlergebiete führt. Für homogenes Holz dagegen kann der Bildausschnitt größer gewählt werden, was eine Verringerung der Verarbeitungszeit zur Folge hat. Abb. 2.6 zeigt das Resultat des Trackings der dunklen Jahrringe für einen Ausschnitt der Holzoberfläche. In Abb. 2.7 ist das Erkennungsresultat des Inspektionssystems für zwei Holzoberflächen gezeigt. A BBILDUNG 2.6. Ausschnitt einer Holzoberfläche und Resultat der Verfolgung dunkler Jahrringe. A BBILDUNG 2.7. Erkennungsresultate für zwei Holzoberflächen. 28 2. BEISPIELE STRUKTURELLER ERKENNUNGSAUFGABEN 2.3. Strukturelle Segmentierung Unter dem Begriff Segmentierung versteht man in der Bildverarbeitung die Bestimmung der Zerlegung eines Bildes in Gebiete – auch Segmente genannt, denen jeweils als Ganzes eine Bedeutung zugeordnet wird. Die Zerlegung selbst kann in Form eines Bildes bzw. Labellings beschrieben werden: innerhalb eines Segments erhalten alle Pixel ein und dasselbe Label. Somit entsteht eine Abbildung, die einem Bild sein Segmentbild zuordnet. Natürlich sagt die obige Definition nichts über die richtige Wahl und die Art der Beschreibung dieser Abbildung, die sowohl vom a-priori Wissen über die abgebildeten Objekte und die Bildentstehung als auch von der Aufgabenstellung selbst abhängt. Letztere Kontexte sind in der Bildverarbeitung so mannigfaltig, dass sich bisher keine universelle Formalisierung der Segmentierungsaufgabe herauskristallisiert hat. Deswegen wollen wir die weiteren Betrachtungen auf Segmentierungsaufgaben einschränken, für die aus dem a-priori Wissen (1) ein strukturelles Modell für zulässige Segmentierungen abgeleitet werden kann und (2) ein lokaler Zusammenhang zwischen den Segmentklassen und den Bildcharakteristika formulierbar ist. Segmentierungsaufgaben die diese Voraussetzungen erfüllen, lassen sich als strukturelle Erkennungsaufgaben formulieren: Für ein gegebenes Bild wird die bezüglich eines Maßes beste Segmentierung aus der strukturellen Modellklasse gesucht. Die einfachste Klasse nichttrivialer statistischer Segmentmodelle bilden Gibbsche Wahrscheinlichkeitsverteilungen zweiter Ordnung. Ist R die Menge der Bildpixel, die mit der Struktur eines Graphen G (R, E) versehen ist und K die Menge der Segmentlabel, so wird eine Segmentierung durch x ∈ A (R, K) beschrieben. Ihre a-priori Wahrscheinlichkeit ergibt sich aus P(x) = (2.4) 1 grr0 (x(r), x(r 0 )) Z (r,r∏ 0 )∈E wobei grr0 : K × K 7→ den Kanten des Graphen zugeordnete Funktionen sind. Das zu segmentierende Bild wird als eine Abbildung y ∈ A (R, F) der Menge der Pixel in eine Menge F von Farb- oder Grauwerten beschrieben. Der Zusammenhang zwischen den Segmentklassen und den Bildcharakteristika ergibt sich aus der bedingten Wahrscheinlichkeitsverteilung P(y | x), die im allereinfachsten Fall in ein Produkt P(y | x) = ∏ qr (y(r), x(r)) r∈R zerfällt. Das entspricht der Annahme, dass der Farbwert des Bildes im Pixel r nur von der Segmentklasse x(r) im selben Pixel abhängt. Zugegebenermassen ist das ein sehr einfaches Texturmodell. Für die anschließende Diskussion von Segmentmodellen wollen wir es dabei belassen, um den Blick freizuhalten. Später werden wir zu komplexeren und mehr realistischen Texturmodellen übergehen, 2.3. STRUKTURELLE SEGMENTIERUNG 29 Die Aufgabe der Segmentierung besteht unter den getroffenen Annahmen im Auffinden der Segmentierung x ∈ A (R, K) mit der höchsten a-posteriori Wahrscheinlichkeit x∗ = arg max P(x | y) = arg max x∈A (R,K) ∏ grr0 (x(r), x(r 0 )) ∏ qr (y(r), x(r)). x∈A (R,K) (r,r 0 )∈E r∈R Durch den üblichen Übergang zum Logarithmus der Wahrscheinlichkeit entsteht die MaxSum Aufgabe (2.5) x∗ = arg max ∑ ln grr0 (x(r), x(r0 )) + ∑ ln qr (y(r), x(r)) . x∈A (R,K) (r,r 0 )∈E r∈R Segmentmodelle. Das wohl einfachste und bisher am meisten verwendete Segmentmodell ist das Potts- bzw. Ising Modell [6, 14, 17]. Hierbei wird angenommen, dass benachbarte Pixel wahrscheinlicher zum selben Segment als zu unterschiedlichen Segmenten gehören. Die Funktionen g rr0 sind dann durch ( αrr0 wenn k0 = k, 0 grr0 (k, k ) = βrr0 sonst mit αrr0 > βrr0 gegeben. Kommt auch die Annahme eines homogenen Modells hinzu, so wählt man die αrr0 und βrr0 konstant, d.h. unabhängig von der Kante (r, r 0 ). Der Unterschied zwischen Potts- und Ising Modell ist nur der, dass die Anzahl |K| der Segmente im Potts Modell größer als 2 sein darf, während sie im Ising Modell gleich 2 ist. Wie wir später sehen werden, ist dieser kleine Unterschied wesentlich: Die MaxSum Aufgabe (2.5) ist für das Ising Modell polynomial lösbar. Für das Potts Modell ist sie dagegen schon NP-vollständig und kann mit polynomialem Zeitaufwand nur genähert gelöst werden [9]. Unabhängig davon sind beide Modelle unter dem Gesichtspunkt der Segmentierung sehr einfach: Die Güte einer Segmentierung ist eine Funktion der Anzahl der Kanten des Graphen, die durch die Segmentgrenzen „durchschnitten“ werden. Die deterministische Variante dieses Modells (β = 0) besitzt überhaupt nur |K| zulässige Segmentierungen: x(r) ≡ k. Eine deutliche Verbesserung lässt sich erreichen, wenn das vorhandene a-priori Wissen die Formulierung eines deterministischen Segmentmodells mittels einer Consistent Labelling Aufgabe zulässt. Bei Bedarf kann man die {0, 1}-wertigen Funktionen durch reellwertige Funktionen in (2.4) ersetzen, falls die Wahrscheinlichkeiten der zulässigen Segmentierungen nicht gleich groß sind. B EISPIEL 2.1. (Deformierte Ringsegmente) Im Bsp. 1.1 wurde eine Klasse von Labellings beschrieben, die deformierten Ringen entspricht. Zur Vereinfachung betrachten wir hier nur das Teilmodell im ersten Quadranten. Die zulässigen Segmentierungen werden durch Ringsegmente beschrieben, deren Ränder monoton fallende Kurven sind. Als Texturmodell haben wir ( | f − f0 | + 1 für k = 1, 3, qr ( f , k) = −| f − f0 | + f0 für k = 2 mit f0 = fmax /2 gewählt. Wie wir später sehen werden, kann die entstehende MaxSum Aufgabe (2.5) auf dem Gitter mit polynomialem Zeitaufwand exakt gelöst 30 2. BEISPIELE STRUKTURELLER ERKENNUNGSAUFGABEN (a) (b) (c) A BBILDUNG 2.8. (a) Segmentbild. (b) Generiertes Texturbild. (c) Resultat der Segmentierung werden. Abb. 2.8 zeigt eine zulässige Segmentierung (a), die verwendet wurde, um ein Texturbild (b) zu generieren. Die Lösung der MaxSum Aufgabe für dieses Texturbild liefert die in (c) gezeigte Segmentierung, die bis auf wenige Pixel mit den ursprünglichen Segmenten übereinstimmt. Natürlich kann man nicht erwarten, dass sich ein derartiges Modell zulässiger Segmentierungen für jede Anwendung finden lässt. Zum Beispiel tritt oft die Situation auf, dass die Modellvorstellungen über die Segmente durch gewisse Eigenschaften der sie berandenden Kurven formuliert werden. So verlangt man etwa, dass diese Kurven möglichst glatt sind, bzw. wenig Stellen mit hoher Krümmung aufweisen. Oder man verlangt, dass sie sich aus möglichst langen digitalen Strecken zusammensetzen u.s.w. Solche Modellvorstellungen führten unter anderem zu kantenorientierten Verfahren der Segmentierung, bei denen den Pixeln zunächst keine Segmentlabel zugeordnet werden, sondern nur die Pixel bzw. Stellen gesucht werden, durch die Randkurven hindurchgehen (siehe z.B. [14]). In [11] findet sich ein derartiger Ansatz, der von uns für die Segmentierung von Krebszellen (genauer gesagt – ihrer Kerne) entwickelt wurde. Es handelt sich dabei um Mikroskopaufnahmen histologischer Schnitte, in denen die DNS gefärbt wurde. Für die Segmentierung wurde ein Verfahren entwickelt, welches ein kantenorientiertes Gibbsches Modell für die Erkennung von Rändern mit einem flächenorientierten Gibbschen Modell für die Textursegmentierung kombiniert. Abb. 2.9 zeigt ein typisches Resultat der Segmentierung. Kantenorientierte Verfahren der Segmentierung haben allerdings einen Nachteil: Es ist nicht mehr garantiert, dass die gewonnenen Kurven geschlossen sind und Segmentgrenzen beschreiben. Dieser Nachteil lässt sich beseitigen, indem man die Segmentbeschreibung und die Randbeschreibung in einem Modell kombiniert. Dazu stellen wir uns den Definitionsbereich eines (Segment-) Bildes als zweidimensionalen Zellenkomplex vor und bezeichnen die 2-Zellen (d.h. Pixel) mit r ∈ R 2.3. STRUKTURELLE SEGMENTIERUNG (a) (b) (c) (d) 31 A BBILDUNG 2.9. (a) Mikroskopbild. (b) Generierte Ränder. (c) Generierte Textursegmente (d) Resultat der Segmentierung und die 1-Zellen (die Pixel berandenden Strecken) mit c ∈ C. 1 Die Menge der Segmentlabel bezeichnen wir nach wie vor mit K. Bisher wurde eine Segmentierung als Abbildung x : R 7→ K aufgefasst. Wir gehen zu einer redundanten Form über und beschreiben eine Segmentierung als ein Paar von Abbildungen x 1 , x2 mit x2 : R 7→ K und x1 : C 7→ K × K. Das Label κ = (k1 , k2 ) ∈ K × K einer 1-Zelle c entspricht dabei den Labeln der 2-Zellen r, r 0 , die von c berandet werden: x1 (c) = κ ⇔ x2 (r) = k1 , x2 (r0 ) = k2 . Die bisherige Struktur des Graphen G (R, E) wird wie folgt erweitert. Die Knotenmenge des neuen Graphen ist R ∪C. Die bisher vorhandenen Kanten (r, r 0 ) ∈ E und die ihnen zugeordneten Funktionen g rr0 werden übernommen. Zusätzlich werden Kanten zwischen Knoten r, c eingeführt, wenn die 1-Zelle c die 2-Zelle r berandet. 1Eine ausführliche Einführung in die Theorie von Zellenkomplexen als finite topologische Räu- me findet man in [28]. 32 2. BEISPIELE STRUKTURELLER ERKENNUNGSAUFGABEN Die Funktionen grc , die diesen Kanten zugeordnet werden, sind sehr einfach: ( 0 wenn k 6= k1 , grc (k, κ) = 1 wenn k = k1 . Zusätzlich kann man nun Kanten zwischen benachbarten 1-Zellen c einführen und ihnen Funktionen gcc0 : K 2 × K 2 7→ 2 zuordnen, mit denen die Modelleigenschaften der Randkurven beschreibbar sind. Texturmodelle Bei den bisherigen Betrachtungen dieses Abschnitts haben wir ein sehr einfaches Texturmodell für das zu segmentierende Bild vorausgesetzt. Innerhalb eines Segments zerfällt die Wahrscheinlichkeit P(y) für das Bild y ∈ A (R, F) in ein Produkt P(y) = ∏ qr (y(r)), ! r∈R d.h. die Farbwerte der Pixel sind statistisch voneinander unabhängig. In realistischen Texturmodellen berücksichtigt man dagegen auch statistische Abhängigkeiten der Farbwerte von Paaren von Pixeln. Im einfachsten Fall beschreibt man räumlich homogene (isotrope und anisotrope) Texturen durch Gibbsche Verteilungen, die mehrfache kurz- und langreichweitige Wechselwirkungen von Pixeln berücksichtigen. Unter der Annahme homogener Texturen ist der Graph G (R, E) der Gibbschen Verteilung translationsinvariant: Sei E 0 die Menge aller Kanten, die aus dem Knoten r0 im Ursprung des Koordinatensystems ausgehen (Die Kanten können auch als Vektoren im 2 aufgefasst werden.). Die Menge Er aller aus einem Knoten r ausgehenden Kanten entsteht durch eine Verschiebung von E 0 . Auch die Funktionen grr0 werden translationsinvariant gewählt: g rr0 = gr−r0 , d.h. jeder Kante e ∈ E0 wird eine Funktion ge zugeordnet. Für alle Kanten (r, r 0 ), die aus einer Verschiebung von e hervorgehen, ist diese Funktion dieselbe. Weiterhin kann man oft annehmen, dass die Funktionen g e nur von der Differenz der Grauwerte der entsprechenden Pixel abhängen. Geht man anschließend noch zur exponentiellen Darstellung ge ( f − f 0 ) → exp ge ( f − f 0 ) über, so wird die Wahrscheinlichkeit eines Bildes y ∈ A (R, F) eine Funktion der Histogramme der Grauwertdifferenzen He (d | y) = ∑ δ d − y(r) − y(r 0 ) , " r−r 0=e wobei e alle Kanten aus E0 durchläuft und d alle Grauwertdifferenzen durchläuft. Bezeichnet man die Funktionswerte der Funktionen der Gibbschen Verteilung mit Ge (d), so gilt h i 1 P(y) = exp ∑ ∑ He (d | y)Ge (d) . Z e∈E0 d Das erlaubt ein effizientes Schema zum Lernen der Modellparameter G e (d) anhand der Histogramme der Grauwertdifferenzen (siehe [16]). KAPITEL 3 Lösbare MaxMin Probleme Aus historischen und methodischen Gründen haben wir in den vorhergehenden Kapiteln die Consistent Labelling Aufgabe und die MaxMin Aufgabe getrennt betrachtet. Ein genauerer Blick zeigt jedoch, dass die Consistent Labelling Aufgabe ein Spezialfall der MaxMin Aufgabe ist: Für den Fall W = {0, 1} kann man die Operatoren ∨ und ∧ äquivalent als max und min schreiben. Jede Consistent Labelling Aufgabe ist somit eine spezielle MaxMin Aufgabe. Aus diesem Grund betrachten wir im weiteren nur noch MaxMin Aufgaben. Alle dafür erhaltenen Resultate gelten auch für Consistent Labelling Aufgaben. Aus Gründen der Übersichtlichkeit ziehen wir es vor, die Operatoren in Infixnotation zu verwenden und treffen für dieses Kapitel folgende Vereinbarungen. Die Operatoren ⊕ und stehen für max und min in einem Semiring W . Dessen Grundmenge sei eine Teilmenge der reellen Zahlen (vergl. Bsp. 1.5). 3.1. MaxMin Aufgaben auf partiellen m-Bäumen Bevor wir in den weiteren Abschnitten dieses Kapitels neuere Resultate zu exakt und effizient lösbaren MaxMin Aufgaben vorstellen, möchten wir in diesem Abschnitt MaxMin Aufgaben in der Klasse partieller m-Bäume betrachten. Die einfache Struktur partieller m-Bäume führt bekanntlich dazu, dass viele „harte“ (z.B. NP-vollständige) Probleme in dieser Klasse von Graphen einfach lösbar sind (siehe z.B. [40]). Auch MaxMin Aufgaben sind in der Klasse partieller m-Bäume effizient lösbar – Algorithmen dafür sind seit einiger Zeit bekannt (siehe z.B. [37]). D EFINITION 3.1. (Baumzerlegung eines Graphen) Sei G (R, E) ein Graph. Eine Baumzerlegung von G ist ein Baum T (V, D) mit einer Abbildung Φ : V 7→ P (R) der Knotenmenge des Baumes in die Potenzmenge der Knoten von G , so dass folgende Eigenschaften erfüllt sind: # (1) v∈V Φ(v) = R. (2) Für jede Kante e = (r, r 0 ) von G existiert ein Knoten v ∈ V des Baumes, so dass r, r 0 ∈ Φ(v). (3) Sind v1 , v2 zwei Knoten des Baumes und liegt v3 auf dem Weg von v1 nach v2 , so folgt Φ(v1 ) ∩ Φ(v2 ) ⊂ Φ(v3 ). Der Durchmesser einer Baumzerlegung ist die Zahl m = max v∈V |Φ(v)| − 1. Der Baumdurchmesser von G ist die kleinste Zahl m, für die eine Baumzerlegung von G mit dem Durchmesser m existiert. $ 33 34 3. LÖSBARE MAXMIN PROBLEME Die sofort entstehende Frage nach effizienten Algorithmen für die Erkennung dieser Klasse von Graphen erwies sich als durchaus nichttrivial. In [8] wurde gezeigt, dass für jedes fixiertes m ein O(n 2 ) Algorithmus existiert, der entscheidet, ob der Baumdurchmesser eines Graphen kleiner oder gleich m ist. Eine mehr konstruktiv motivierte aber äquivalente Definition ist die rekursive Definition partieller m-Bäume. D EFINITION 3.2. (Partielle m-Bäume) Sei G (R, E) ein Graph und m Graph G heißt m-Baum wenn entweder % 1. Der (1) G ein vollständiger Graph mit m Knoten ist, oder (2) In G ein Knoten r mit folgenden Eigenschaften existiert: a. Aus r gehen m Kanten aus und S(r) = {r 0 ∈ R | (r, r0 ) ∈ E} bildet eine Clique. b. Nach Entfernen des Knoten r und aller aus ihm ausgehender Kanten entsteht wieder ein m-Baum. Ein Graph G heißt partieller m-Baum, falls G Teilgraph eines m-Baumes ist. & Das folgende Lemma präzisiert die Äquivalenz beider Begriffe. % L EMMA 3.1. (o.B.) Sei G (R, E) ein Graph mit |R| m. Dann ist G genau dann ein partieller m-Baum, wenn sein Baumdurchmesser kleiner oder gleich m ist. Wie bereits erwähnt, existiert eine lange Liste von Problemen, die in der Klasse der partiellen m-Bäume mit polynomialem Zeitaufwand lösbar sind. Die Grundidee ist, das Ausgangsproblem in ein äquivalentes Problem auf einem Baum – dem der Baumzerlegung – zu überführen. Betrachten wir eine MaxMin Aufgabe, deren Graph G (R, E) den Baumdurchmesser m hat. Die Aufgabe ist durch die Labelmenge K, den Semiring (W, ⊕, ) sowie die Funktionen grr0 : K ×K 7→ W für alle Kanten und die Funktionen q r : K 7→ W für alle Knoten gegeben. Sei T (V, D), Φ eine Baumzerlegung von G mit dem Durchmesser m. Im ersten Schritt konstruiert man eine äquivalente MaxMin Aufgabe auf dem Baum T , die dann in einem zweiten Schritt gelöst wird. Für eine übersichtlichere Notation stellen wir uns die Knoten des Baumes durchnummeriert vor und bezeichnen das Bild des i-ten Knotens v i bezüglich Φ mit Ri = Φ(vi ). Die Mengen Ri enthalten höchstens m + 1 Knoten, folglich existieren auf jeder dieser Mengen höchstens |K|m+1 verschiedene Labellings xi ∈ A (Ri , K). Diese Labellings bilden die Labelmenge der neuen Aufgabe, die auf dem Baum konstruiert wird, e ist K m+1 . Für jede der Mengen Ri und jedes Labelling d.h. ihre Labelmenge K xi ∈ A (Ri , K) berechnet man dessen Wert bezüglich der Ausgangsaufgabe. Daraus ergeben sich die Funktionen qei der neuen Aufgabe: i h i h qr (xi (r)) grr0 (xi (r), xi (r0 )) . qei (xi ) = ' r∈Ri ' (r,r 0 )∈Ei Die Funktionen gei j , die den Kanten des Baumes zugeordnet sind, nehmen dagegen nur die zwei Werte 0 und 1 an. Sie „messen“ die Konsistenz von Labellings x i ∈ A (Ri , K) und x j ∈ A (R j , K). Letztere sind genau dann konsistent, wenn sie auf 3.2. DER RELAXATION LABELLING ALGORITHMUS 35 Ri j = Ri ∩ R j übereinstimmen: gei j (xi , x j ) = ( 1 0 wenn xi |Ri j ≡ x j |Ri j , sonst. Somit entspricht jedem Labelling x ∈ A (R, K) ein bezüglich ge konsistentes Labelling xe ∈ A (V, K m+1 ). Es lässt sich leicht zeigen, dass auch die Umkehrung gilt. Angenommen, dass sei nicht der Fall. Dann existiert ein bezüglich ge konsistentes Labelling sowie zwei Knoten vi , v j ∈ V mit Ri ∩ R j 6= 0/ und ein r ∈ Ri j so, dass xi (r) 6= x j (r) ist. Sind die Knoten vi und v j durch eine Kante verbunden, so ergibt sich sofort ein Widerspruch. Sind sie es nicht, so betrachtet man den Weg im Baum T , der sie verbindet. Für jeden Knoten v l in diesem Weg gilt r ∈ Ri ∩R j ⊂ Rl . Folglich entsteht auf einer Kante ein Widerspruch. Aus der Idempotenz der Operation folgt ebenso leicht, dass die Werte einander entsprechender Labellings bezüglich beider Aufgaben übereinstimmen. Damit wurde die Ausgangsaufgabe in eine äquivalente MaxMin Aufgabe auf dem Baum T transformiert. Der Aufwand für diese Transformation ist O(n|K| m+1 ) mit n = |R|, da der Baum der Zerlegung immer so wählbar ist, dass |V | |R| gilt. Für den zweiten Schritt – die Lösung einer MaxMin Aufgabe auf einem Baum – existiert ein sehr einfacher Algorithmus. Er besteht im iterativen Entfernen eines Blattes und der Konstruktion einer äquivalenten MaxMin Aufgabe auf dem verbleibenden Baum. Sei G (R, E) der im aktuellen Schritt betrachtete Baum und seien q r bzw. grr0 die aktuellen Funktionen. Man wählt ein Blatt r 0 und die einzige aus ihm ausgehende Kante (r0 , r1 ). Für die Konstruktion der reduzierten Aufgabe muss nur die Funktion qr1 neu berechnet werden: h io n gr1 r0 (k, k0 ) qr0 (k0 ) . (3.1) qer1 (k) = qr1 (k) ( ) k0 ∈K Der gesamte Algorithmus zur Lösung einer MaxMin Aufgabe auf einem partiellen m-Baum mit n Knoten hat somit die Komplexität O(n|K| 2m+2 ). Er kann weiter verbessert werden, indem man die beiden Teilschritte unter Ausnutzung der Definition 3.2 ineinander „verschränkt“. Dadurch reduziert sich die Komplexität auf O(n|K|m+1 ). 3.2. Der Relaxation Labelling Algorithmus Der bekannte Relaxation Labelling Algorithmus [41, 33, 20] ist einer der frühesten und zugleich auch interessantesten Ansätze zur Lösung der Consistent Labelling Aufgabe für beliebige Graphen. Im Unterschied zu vielen anderen Optimierungsalgorithmen wird hier nicht versucht, ein Labelling iterativ zu verbessern. Stattdessen versucht man die Aufgabe durch Anwenden einer äquivalenten Transformation iterativ zu vereinfachen. Die Verallgemeinerung dieses Ansatzes für MaxMin Aufgaben liefert den folgenden Algorithmus. Man betrachte die zu lösende Aufgabe, die durch ihren Graph, die Labelmenge und die Funktionen q und g gegeben ist, 36 3. LÖSBARE MAXMIN PROBLEME * + als Startpunkt und wende iterativ die Transformation n io h (t+1) (t) (t) (3.2a) qr (k) = qr (k) grr0 (k, k0 ) r 0 : (r,r 0 )∈E k0 ∈K (t+1) (3.2b) grr0 (t+1) (k, k0 ) = qr (t) (t+1) (k) grr0 (k, k0 ) qr0 (k0 ). (t) an. In jedem Iterationsschritt erhält man eine neue – durch die Funktionen q r und (t) grr0 gegebene – MaxMin Aufgabe. Dies wird solange wiederholt, bis ein Fixpunkt erreicht ist. Seien q∗r und g∗rr0 die im Fixpunkt erhaltenen Funktionen. Die folgenden, leicht zu beweisenden Lemmata sichern die Konvergenz des Algorithmus und liefern eine obere Schranke für den Wert der MaxMin Aufgabe. L EMMA 3.2. Die Funktionen qr und grr0 können nur abnehmen aber niemals zu(t+1) (t) (t+1) (t) nehmen, d.h. qr (k) qr (k) und grr0 (k, k0 ) grr0 (k, k0 ) für alle Knoten und Label sowie alle Kanten und Labelpaare. , , L EMMA 3.3. Die Transformation Φ : (q(t) , g(t) ) 7→ (q(t+1) , g(t+1) ) bildet jede MaxMin Aufgabe in eine äquivalente Aufgabe ab. D.h. die (Zugehörigkeits) Werte eines jeden Labellings stimmen bezüglich beider Aufgaben überein: i h i h (t+1) (t+1) qr (x(r)) grr0 (x(r), x(r 0 )) = G(t) [x]. G(t+1) [x] = * * (r,r 0 )∈E r∈R Man beweist diese Aussage durch Einsetzen von (3.2a) und (3.2b) in die obige Gleichung. L EMMA 3.4. Ist der Graph der Aufgabe zusammenhängend, so sind im Fixpunkt folgende Bedingungen erfüllt. Die Maxima der Funktionen q ∗r und g∗rr0 stimmen überein, d.h. k q∗r (k) = w∗ und k,k0 g∗rr0 (k, k0 ) = w∗ für alle Knoten und Kanten. Man überprüft leicht, dass anderenfalls der Fixpunkt noch nicht erreicht wurde. - - Das erste Lemma garantiert die Konvergenz des Verfahrens, während die Kombination des zweiten und dritten Lemmas die folgende obere Schranke für den Wert des besten Labellings liefert: (3.3) + G[x] x∈A (R,K) , w∗ . Dies ist zweifellos ein bemerkenswertes Resultat von Rosenfeld et. al. [33]. Aber garantiert es auch, dass das Verfahren eine Lösung der Aufgabe liefert? Dass dies nicht zu erwarten ist, folgt bereits aus unserem Wissen über die NP-Vollständigkeit der Aufgabe. Nach dem Erreichen des Fixpunktes wissen wir ja weder ob ein Labelling existiert, dessen Wert die Schranke annimmt, noch sind wir im Besitz eines Verfahrens solch ein Labelling zu finden, wenn wir es wüssten. Für den zweiten Teil der Aufgabe – mindestens ein Labelling x ∗ unter den besten zu finden, d.h. G[x∗ ] = + G[x] x∈A (R,K) 3.2. DER RELAXATION LABELLING ALGORITHMUS 37 – schlagen die Autoren folgendes Verfahren vor. Man betrachte für jeden Knoten r ∈ R die Teilmenge der Label Kr ⊂ K mit maximaler Bewertung q∗r (3.4) Kr = {k ∈ K | q∗r (k) = w∗ }, und für jede Kante (r, r 0 ) ∈ E die Teilmenge der Labelpaare Krr0 ∈ K × K mit maximaler Bewertung g∗rr0 (3.5) Krr0 = {(k, k0 ) ∈ K × K | g∗rr0 (k, k0 ) = w∗ }. Existiert ein Labelling x∗ ∈ A (R, K), so dass (3.6) x∗ (r) ∈ Kr und x∗ (r), x∗ (r0 ) ∈ Krr0 für alle Knoten und alle Kanten erfüllt ist, so wird (3.3) zur Gleichung und x ∗ ist eines unter den besten Labellings. Gibt es kein solches Labelling, so erweitere man die Mengen Kr und Krr0 um die Elemente mit der zweitbesten Bewertung und wiederhole die Suche nach einem Labelling u.s.w. Dies bedeutet jedoch eine (oder mehrere) Consistent Labelling Aufgaben zu lösen, die i.A. selbst NP-vollständig sind. Natürlich, so die Autoren, sei zu erwarten, dass die verbleibende Consistent Labelling Aufgabe oftmals einfacher als die Ausgangsaufgabe sein wird. Diese zweifellos richtige Aussage wird leider nicht selten so zitiert, als sei die verbleibende Aufgabe immer leicht lösbar. Das nächste (warnende) Beispiel demonstriert einen Fall, für den der Relaxation Labelling Algorithmus überhaupt keine Vereinfachung erzeugt. B EISPIEL 3.1. (Gegenbeispiel) Nehmen wir an, wir wollen die Knoten eines Tetraeders (voll verbundener Graph aus 4 Knoten) mit drei Farben so färben, dass kein Paar von einer Kante verbundener Knoten die gleiche Farbe erhält. Dies ist offensichtlich unmöglich. Formulieren wir eine äquivalente Consistent Labelling Aufgabe: Der Graph ist das Tetraeder, die Label sind die Farben und die Funktionen g seien 0 wenn k = k 0 0 0 grr (k, k ) = 1 wenn k 6= k 0 . Die Funktionen q werden nicht benötigt und können identisch 1 gewählt werden. Die Iteration (3.2) hält nach dem ersten Schritt an und liefert g ∗rr0 = g und q∗r = qr . Die rechte Seite von (3.3) ist gleich 1 und wir erhalten die Teilmengen K r = K für alle Knoten und Krr0 = (K × K) \ Diag(K) für alle Kanten. Folgt daraus die Existenz einer Färbung mit den geforderten Eigenschaften? Natürlich nicht. . Diese Betrachtungen legen es nahe, nach Situationen zu suchen, für die der Relaxation Labelling Algorithmus eine exakte Lösung und nicht nur eine obere Schranke liefert. Das Problem dabei ist zu garantieren, dass nach dem Anhalten des Algorithmus mindestens ein Labelling existiert, welches die Bedingung (3.6) erfüllt. Zu diesem Zweck versehen wir die Labelmenge mit einer zusätzlichen Struktur und betrachten Funktionen q r und grr0 , die gewisse Bedingungen bezüglich dieser Struktur erfüllen. 38 3. LÖSBARE MAXMIN PROBLEME (a) (b) (c) (d) A BBILDUNG 3.1. Beispiele von Hasse-Diagrammen geordneter Mengen. 3.3. Verbände und bikonkave Funktionen Sei K eine teilgeordnete Menge oder kürzer – eine geordnete Menge. D.h. mit anderen Worten, dass auf K eine zweistellige reflexive, antisymmetrische und transitive Relation ausgezeichnet ist. Sei B eine Teilmenge von K. Ein Element k ∈ K heißt obere Schranke von B, falls b k für alle b ∈ B. Eine obere Schranke k von B heißt kleinste obere Schranke von B (auch: Supremum von B, in Zeichen k = B), falls k k0 für alle oberen Schranken k 0 von B. Entsprechend definiert man untere Schranken und die größte untere Schranke von B (auch: Infimum von B, in Zeichen B). Eine geordnete Menge (K, ) heißt Verband (engl. lattice), falls für alle k, k0 ∈ K das Supremum {k, k0 } und das Infimum {k, k0 } existiert. Fasst man das Supremum und das Infimum von zwei Elementen als zweistellige Operationen auf (in Infixnotation k ∨ k 0 und k ∧ k0 ), so entsteht eine Algebra (K, ∧, ∨) mit folgenden Eigenschaften. Beide Operationen sind kommutativ, assoziativ und idempotent (d.h. k ∨ k = k und k ∧ k = k). Sie sind untereinander durch die Absorptionsgesetze / 1 / / 0 0 / 1 k ∨ (k ∧ k0 ) = k, k ∧ (k ∨ k 0 ) = k verbunden. Wir betrachten im weiteren nur distributive Verbände, d.h. Verbände für die zusätzlich die Distributivgesetze k ∧ (k0 ∨ k00 ) = (k ∧ k0 ) ∨ (k ∧ k00 ) k ∨ (k0 ∧ k00 ) = (k ∨ k0 ) ∧ (k ∨ k00 ) gelten. Endliche geordnete Mengen und somit auch endliche Verbände lassen sich oft durch so genannte Hasse-Diagramme darstellen. Man zeichnet für jedes Element einen Punkt und zwar den Punkt für k oberhalb des Punktes für k 0 , falls k0 k und verbindet dann beide Punkte durch ein Geradenstück, falls kein k 00 mit k0 k00 k existiert. Die Abb. 3.1 zeigt einige Beispiele. Die Hasse-Diagramme (a) und (c) stellen einen Verband dar, die Diagramme (b) und (d) aber nicht. Eine Teilmenge eines Verbandes heißt Unterverband, falls sie bezüglich der Operationen ∧ und ∨ abgeschlossen ist. Insbesondere sind Intervalle I(k 1 , k2 ) – definiert als die Menge / I(k1 , k2 ) = {k ∈ K | k1 Unterverbände. / k/ k2 } / / 3.3. VERBÄNDE UND BIKONKAVE FUNKTIONEN 39 Hat man die Labelmenge K mit der Struktur eines Verbandes (∧, ∨) versehen, so kann diese Struktur auf die Menge der Labelpaare K × K erweitert werden: Für zwei Elemente κ = (k1 , k2 ), κ0 = (k10 , k20 ) gilt κ κ0 , falls dies komponentenweise erfüllt ist. Dieselbe Struktur entsteht, wenn die Operationen ∧ und ∨ auf K × K komponentenweise definiert werden: 2 κ ∧ κ0 = (k1 ∧ k10 , k2 ∧ k20 ) und κ ∨ κ0 = (k1 ∨ k10 , k2 ∨ k20 ). Eine ausführlichere Einführung in die Theorie der Verbände und weiterführende Literaturhinweise findet man z.B. in [21]. Die Auszeichnung der Struktur eines Verbandes auf der Labelmenge K, erlaubt es ihrerseits die Menge der Funktionen q : K 7→ W und g : K ×K 7→ W zu strukturieren. Insbesondere lassen sich Klassen von Funktionen auszeichnen, die zu effizient lösbaren MaxMin Aufgaben führen. D EFINITION 3.3. (Bikonkave Funktionen) Sei (K, ∨, ∧) ein endlicher Verband und (W, ⊕, ) ein MaxMin Semiring. Eine Funktion f : K 7→ W heißt bikonkav, wenn für jedes Paar von Elementen k, k 0 ∈ K die Ungleichungen f (k ∧ k0 ) f (k ∨ k0 ) 3 3 f (k) f (k 0 ) f (k) f (k 0 ) erfüllt sind. Eine Funktion f ist genau dann bikonkav, wenn die Menge {k ∈ K | f (k) w} für jede Schwelle w ∈ W ein Unterverband von K ist. In dem folgenden Lemma betrachten wir Operationen, die angewendet auf bikonkave Funktionen, wieder bikonkave Funktionen ergeben. Insbesondere gilt das für die Operationen, die für die Konstruktion der Transformation Φ des Relaxation Labelling Algorithmus verwendet werden. L EMMA 3.5. Sei (K, ∨, ∧) ein endlicher Verband und (W, ⊕, ) ein MaxMin Semiring. Sei weiterhin K × K mit der durch K induzierten Struktur eines Verbandes versehen. Sind q, h : K 7→ W und g, f : K × K 7→ W bikonkave Funktionen, so ergeben die folgenden Operationen wiederum bikonkave Funktionen: (3.7) q h (k) = q(k) h(k) (3.8) f (k1 , k) g(k, k2 ) f ⊗M g (k1 , k2 ) = 3 4 5 (3.9) f ⊗M q (k) = 5 k k0 f (k, k0 ) q(k0 ) Interpretiert man q und h als Vektoren, sowie f und g als Matrizen, so können diese Operationen in der Reihenfolge ihres Auftretens als elementweise Multiplikation, Matrixmultiplikation und Matrix-Vektor Multiplikation bezeichnet werden. B EWEIS . Der Beweis dass die elementweise Multiplikation zweier bikonkaver Funktionen (3.7) wieder eine bikonkave Funktion ergibt, ist sehr einfach: q h (k ∨ k0 ) = q(k ∨ k0 ) h(k ∨ k0 ) q(k) q(k 0 ) h(k) h(k 0 ) = q h (k) q h (k0 ) 3 40 3. LÖSBARE MAXMIN PROBLEME und wird durch Ersetzen von ∨ mit ∧ abgeschlossen. Die Beweise der entsprechenden Aussagen für die Matrixmultiplikation (3.8) und die Matrix-Vektor Multiplikation (3.9) sind sehr ähnlich. Deswegen betrachten wir hier nur den Beweis für die Matrix-Vektor Multiplikation. Wir bezeichnen das Resultat des Produkts f ⊗ M q der Kürze halber mit h und betrachten zwei beliebige Argumente k 1 , k2 ∈ K. Für dieses Paar gilt f (ki , k) q(k) i = 1, 2. h(ki ) = 6 k Da K nach Voraussetzung endlich ist, wird das Maximum über k auf der rechten Seite der obigen Gleichung für jeweils mindestens ein Argument k i∗ erreicht. Damit folgt h(k1 ∨ k2 ) f (k1 ∨ k2 , k) q(k) 786 7 7 k f (k1 ∨ k2 , k1∗ ∨ k2∗ ) q(k1∗ ∨ k2∗ ) f (k1 , k1∗ ) q(k1∗ ) f (k2 , k2∗ ) q(k2∗ ) = h(k1 ) h(k2 ). Vollkommen analog beweist man die Gültigkeit der Ungleichung h(k 1 ∧ k2 ) h(k1 ) h(k2 ). 9 7 Das nachfolgende Beispiel illustriert einige bikonkave Funktionen. B EISPIEL 3.2. (Bikonkave Funktionen) (1) Sei K eine vollständig geordnete Menge. Jede Teilmenge von K ist auch ein Unterverband. Folglich ist jede Funktion q : K 7→ W bikonkav. (2) Sei K eine endliche Teilmenge der ganzen Zahlen. Betrachten wir die Metrik d(k, k0 ) = |k − k0 | auf K. Die Funktion g = −d ist bikonkav auf K × K. Zum Beweis stellen wir g in der Form g = f f 0 mit f (k, k 0 ) = k0 − k und f 0 (k, k0 ) = k − k0 dar. Man überprüft leicht, dass f und f 0 bikonkav sind. Folglich ist nach Lemma 3.5 auch g bikonkav. (3) Sei K wie bisher eine Teilmenge der ganzen Zahlen. Wir betrachten den Verband K n und bezeichnen seine Elemente mit κ = (k 1 , . . . , kn ). Auf diesem Verband sei die Metrik d(κ, κ0 ) = max|ki − ki0 | i gegeben. Dann ist g = −d eine bikonkave Funktion auf K 2n . Dies gilt auch für die mit der Zahl w gekappte Metrik de= d ⊕ w. T HEOREM 3.1. Eine MaxMin Aufgabe wird durch den Relaxation Labelling Algorithmus exakt gelöst, falls ihre Labelmenge so mit der Struktur eines Verbandes versehen werden kann, dass sowohl die Funktionen g rr0 : K × K 7→ W für alle Kanten, als auch die Funktionen qr : K 7→ W für alle Knoten bikonkav sind. Die Bedingung für die Funktionen qr ist automatisch erfüllt, falls K vollständig geordnet ist. 3.4. TRIKONKAVE FUNKTIONEN UND DIE STERN-SIMPLEX TRANSFORMATION 41 B EWEIS . Die durch (3.2) definierte äquivalente Transformation Φ ist eine Kombination der in Lemma 3.5 betrachteten Operationen. Folglich bildet sie bikonkave Funktionen auf bikonkave Funktionen ab. Somit sind auch die im Fixpunkt erhaltenen Funktionen g∗rr0 : K × K 7→ W und q∗r : K 7→ W bikonkav. Daraus lässt die Existenz eines Labellings ableiten, welches die Bedingung (3.6) erfüllt: Jede der in (3.4) definierten Teilmengen Kr ist jetzt ein Unterverband von K. Wir wählen für jeden Knoten r ∈ R das größte Label k r = Kr des Unterverbandes Kr und betrachten das Labelling : x(r) = kr ∀r ∈ R. Nach Voraussetzung gilt für alle Knoten q ∗r (x(r)) = w∗ . Sei (r, r 0 ) ∈ E eine beliebige Kante des Graphen. Aus den Fixpunktbedingungen und dem Lemma 3.4 folgt die Existenz zweier Label k1 x(r) und k2 x(r0 ), für die ; g∗rr0 (x(r), k2 ) ; = g∗rr0 (k1 , x(r0 )) = w∗ gilt. Da die Funktion g∗rr0 bikonkav ist, folgt g∗rr0 (x(r) ∨ k1 , x(r0 ) ∨ k2 ) = g∗rr0 (x(r), x(r 0 )) = w∗ . Da obige Gleichung für jede Kante erfüllt ist, folgt somit G[x] = w ∗ w.z.b.w. < Der geneigte Leser wird sicherlich in der Bewertung dieses Resultats mit uns übereinstimmen: Es umreißt eine Klasse von MaxMin Aufgaben, die sich mit dem Relaxation Labelling Algorithmus exakt und mit polynomialem Zeitaufwand lösen lassen. Dabei werden keine einschränkenden Annahmen über den Graph der Aufgabe gemacht – er kann beliebig kompliziert sein. Eine genauere Betrachtung zeigt allerdings, dass die Situation noch nicht ganz befriedigend ist. Vorher hatten wir bemerkt, dass jede Consistent Labelling Aufgabe exakt und mit polynomialem Zeitaufwand lösbar ist, falls die Menge der Label aus zwei Elementen besteht. Andererseits ist in diesem Falle nicht jede Funktion auf K × K bikonkav. Dies legt es nahe, nach schwächeren Bedingungen zu suchen, die für die exakte und effiziente Lösbarkeit von MaxMin Aufgaben hinreichend sind. Im nächsten Abschnitt werden wir zeigen, dass sich solche Bedingungen in der Tat finden lassen. Allerdings muss dann ein etwas komplizierterer Algorithmus in Kauf genommen werden. 3.4. Trikonkave Funktionen und die Stern-Simplex Transformation Sei (K, ∨, ∧) nach wie vor ein Verband. Für ein Tripel k 1 , k2 , k3 ∈ K von Elementen definieren wir dessen Zentrum kc = Mid(k1 , k2 , k3 ) durch kc = (k1 ∧ k2 ) ∨ (k1 ∧ k3 ) ∨ (k2 ∧ k3 ). Das Zentrum ist im Allgemeinen kein Element des Tripels. Wenn allerdings zwei Elemente des Tripels (sagen wir k1 , k2 ) ein Intervall aufspannen und das dritte Element in diesem Intervall liegt, d.h. k 3 ∈ I(k1 , k2 ), so stimmt es mit dem Zentrum überein: k3 = Mid(k1 , k2 , k3 ). Insbesondere gilt das für jedes Tripel einer vollständig geordneten Menge K. Stimmen zwei Elemente des Tripels überein, so bilden sie in jedem Verband das Zentrum des Tripels: k = Mid(k, k, k 0 ). 42 3. LÖSBARE MAXMIN PROBLEME K1 K1 K1 (a) K1 K1 (b) K1 K1 (c) K1 (d) A BBILDUNG 3.2. Beispiele trikonkaver Funktionen. Der Definitionsbereich aller Funktionen ist der Verband K = K1 ×K1 , wobei K1 vollständig geordnet ist. Das linke Bild zeigt das Zentrum (dunkler Kreis) eines Tripels von Elementen (helle Kreise). Die anderen Bilder zeigen trikonkave Funktionen. Die Funktionswerte sind durch Grauwerte kodiert (Je höher der Funktionswert umso heller der Grauwert). D EFINITION 3.4. (Trikonkave Funktionen) Sei (K, ∨, ∧) ein endlicher Verband und (W, ⊕, ) ein MaxMin Semiring. Eine Funktion f : K 7→ W heißt trikonkav, falls für jedes Tripel von Argumenten k1 , k2 , k3 ∈ K und sein Zentrum kc = Mid(k1 , k2 , k3 ) die Bedingung f (kc ) = f (k1 ) f (k2 ) f (k3 ) erfüllt ist. > Das folgende, leicht zu überprüfende Lemma zeigt, dass die Klasse der trikonkaven Funktionen die Klasse der bikonkaven Funktionen enthält. L EMMA 3.6. Jede bikonkave Funktion ist trikonkav. Die Abb. 3.2 zeigt drei Beispiele trikonkaver Funktionen. Dabei ist die in (b) dargestellte Funktion auch bikonkav, während die in (c) dargestellte Funktion zwar trikonkav aber nicht bikonkav ist. Die dritte Funktion (d) ist das elementweise Minimum der ersten beiden. Für gewisse Verbände ist jede Funktion trikonkav. Das gilt beispielsweise falls K vollständig geordnet ist und auch für den Verband K = K1 × K1 , wenn |K1 | = 2 ist. Ist eine Funktion f : K 7→ W trikonkav, so ist sie auch als Funktion f : K × K 7→ W , deren Wert nur vom ersten Argument abhängt, trikonkav auf K × K. Im folgenden Lemma betrachten wir Operationen, die die Trikonkavität erhalten. Wir werden sie für die Konstruktion eines Algorithmus zur Lösung von MaxMin Aufgaben benötigen. L EMMA 3.7. Sei (K, ∨, ∧) ein endlicher Verband und (W, ⊕, ) ein MaxMin Semiring. Sei weiterhin K × K mit der durch K induzierten Struktur eines Verbandes versehen. Sind q, h : K 7→ W und f , g : K × K 7→ W trikonkave Funktionen, so sind 3.4. TRIKONKAVE FUNKTIONEN UND DIE STERN-SIMPLEX TRANSFORMATION 43 auch die folgenden Funktionen trikonkav (vergl. Lemma 3.5): (3.10) q h (k) = q(k) h(k) (3.11) f (k1 , k) g(k, k2 ) f ⊗M g (k1 , k2 ) = ? f ⊗M q (k) = (3.12) ? k k0 f (k, k0 ) q(k0 ) . B EWEIS . Die erste Behauptung folgt unmittelbar aus der Definition trikonkaver Funktionen. Die beiden anderen Behauptungen lassen sich in sehr ähnlicher Art und Weise beweisen. Wir demonstrieren deswegen nur den Beweis für die MatrixVektor Multiplikation. Wir bezeichnen das Matrix-Vektor Produkt ( f ⊗ M q) der Kürze halber mit h und betrachten ein beliebiges Tripel k 1 , k2 , k3 ∈ K. Für das Tripel gilt f (ki , k) q(k) i = 1, 2, 3. h(ki ) = ? k Da K nach Voraussetzung endlich ist, wird das Maximum über k auf der rechten Seite der obigen Gleichung für jeweils mindestens ein Argument k i∗ erreicht. Folglich gilt h(ki ) = f (ki , ki∗ ) q(ki∗ ) für i = 1, 2, 3. Seien kc und kc∗ die Zentren der Tripel (k1 , k2 , k3 ) und (k1∗ , k2∗ , k3∗ ): kc = Mid(k1 , k2 , k3 ) und kc∗ = Mid(k1∗ , k2∗ , k3∗ ). Für h(kc ) ergibt sich damit h(kc ) = f (kc , k) q(k) ? @ A k 3 i=1 W.z.b.w. @ f (kc , kc∗ ) q(kc∗ ) f (ki , ki∗ ) q(ki∗ ) = h(k1 ) h(k2 ) h(k3 ). B Wir werden im Weiteren zeigen, dass MaxMin Aufgaben effizient lösbar sind, falls ihre Funktionen qr und grr0 trikonkav sind. Betrachten wir dazu noch einmal die allgemeine Form einer MaxMin Aufgabe ? G∗ = G[x] x∈A (R,K) (3.13) = ? nh x∈A (R,K) A r∈R i h qr (x(r)) A grr0 (x(r), x(r 0 )) (r,r 0 )∈E io Wählt man einen beliebigen Knoten r 0 ∈ R und sammelt dann alle x(r0 ) enthaltenden Terme, so lässt sich G∗ in der Form n o (3.14) G∗ = G0 [x] G1 [x] ? e x∈A (R,K) 44 3. LÖSBARE MAXMIN PROBLEME D schreiben. Hierbei ist Re = R \ r0 und das Funktional G0 hat die Form n h io (3.15) G0 [x] = qr0 (k) gr0 r (k, x(r)) , C r : (r0 ,r)∈E k wobei r, r 0 über Re laufen. Nach Ausführung der Summation über alle Label in r 0 e K). Das Funktional G1 ist dagegen von vornwird es zu einem Funktional auf A (R, e K) definiert und hat dieselbe Form wie G[x]. herein auf A (R, Nehmen wir nun für einen Moment an, dass alle Funktionen q r und grr0 trikonkav sind und dass sich G0 unter diesen Bedingungen in der äquivalenten Form G0 [x] = D hrr0 (x(r), x(r 0 )) (r,r 0 ) schreiben lässt, wobei r, r 0 ∈ Re ist. Dann hätten wir eine neue MaxMin Aufgabe erhalten, die zur Ausgangsaufgabe äquivalent ist und deren Graph um einen Knoten kleiner ist. Sind dann auch noch alle Funktionen h rr0 : K × K 7→ W wieder trikonkav, so könnte man dieses Schema solange wiederholen, bis der Graph nur noch aus zwei Knoten besteht. Die Lösung dieser einfachen verbleibenden Aufgabe ergäbe dann den Wert G∗ der Ausgangsaufgabe. Das folgende Theorem zeigt, dass dieses Schema für MaxMin Aufgaben mit trikonkaven Funktionen wirklich anwendbar ist. T HEOREM 3.2. (Stern-Simplex Transformation) Sei (K, ∨, ∧) ein endlicher Verband und (W, ⊕, ) ein MaxMin Semiring. Seien g i : K × K 7→ W , i = 1, . . . , n trikonkave Funktionen. Dann lässt sich die Funktion G : K n 7→ W , h n i gi (k, ki ) , G(k1 , . . . , kn ) = D C k∈K i=1 äquivalent in der Form G(k1 , . . . , kn ) = D hi j (ki , k j ) (i, j) : i< j schreiben. Die zweistelligen Funktionen h i j sind durch die Gleichungen h i (3.16) q(k) gi (k, ki ) g j (k, k j ) hi j (ki , k j ) = C (3.17) q(k) = D k∈K n h i=1 C gi (k, k0 ) k0 i gegeben und sind wieder trikonkav. Wir verschieben den Beweis dieses Theorems bis zum nächsten Abschnitt und fahren mit der Diskussion des sich ergebenden Algorithmus fort. Ein Iterationsschritt besteht in der Entfernung eines Knotens und der Konstruktion einer äquivalenten Aufgabe auf dem um einen Knoten verkleinerten Graph. Seien G (R, E) der aktuelle Graph sowie qr und grr0 die Funktionen der aktuellen Aufgabe. Wir wählen einen beliebigen Knoten r0 ∈ R und bezeichnen mit Re = R \ r0 die Knoe die Kantenmenge des Graphen, der tenmenge und mit E 0 = {(r, r0 ) ∈ E | r, r0 ∈ R} 3.4. TRIKONKAVE FUNKTIONEN UND DIE STERN-SIMPLEX TRANSFORMATION 45 nach der Entfernung des Knotens r0 und der von r0 ausgehenden Kanten entsteht. Mit S(r0 ) bezeichnen wir die (möglicherweise) zusätzlichen Kanten, die wir später in den neuen Graph einfügen werden: e (r0 , r), (r0 , r0 ) ∈ E}. S(r0 ) = {(r, r0 ) | r, r0 ∈ R, e ersetzen. Das ist genau der Simplex durch den wir den Stern {(r 0 , r) ∈ E | r ∈ R} 0 e e e Der Graph der neuen MaxMin Aufgabe ist G ( R, E), wobei E = E ∪ S(r0 ) die Vereinigung der Kantenmengen des von Re induzierten Graphen und des Simplex S(r 0 ) ist. e E) e leiten sich wie folgt aus den Die Formeln für die neuen Funktionen auf G ( R, Funktionen der aktuellen Aufgabe ab. Mit (3.14) startend, transformieren wir das Funktional G0 [x] entsprechend der Stern-Simplex Transformation G0 [x] = (3.18) E hrr0 (x(r), x(r 0 )). (r,r 0 )∈S(r0 ) Die mit den Kanten des Simplex S(r0 ) verknüpften Funktionen hrr0 ergeben sich aus (3.19) hrr0 (k1 , k2 ) = F [b q(k) gr0 r (k, k1 ) gr0 r0 (k, k2 )] k qb(k) = qr0 (k) (3.20) h E r : (r0 ,r)∈E h F k0 ii gr0 r (k, k0 ) . Das heißt, dass zunächst die Funktion qb für den Knoten r 0 zu berechnen ist. Dann müssen für alle Kanten des Simplex S(r 0 ) die Funktionen hrr0 berechnet werden. Durch kantenweises Multiplizieren von g rr0 mit hrr0 wird schließlich G0 [x] G1 [x] berechnet. Die Funktionen qe und ge für die neue MaxMin Aufgabe ergeben sich aus qer (k) = qr (k) (3.21) gerr0 (k, k0 ) = grr0 (k, k0 ) hrr0 (k, k0 ). (3.22) Die letztere Formel ist dabei sinngemäß anzuwenden: Ist auf einer Kante einer der Multiplikanden nicht definiert, so ist er identisch gleich 1 zu betrachten. Die Funktionen h sind nach Theorem 3.2 trikonkav, folglich sind wegen Lemma 3.7 auch die Funktionen qe und ge trikonkav. Somit kann die Stern-Simplex Transformation wiederholt angewendet werden, bis der Graph nur noch 2 Knoten hat. Die Lösung dieses einfachen verbleibenden Problems liefert – wie angekündigt – den Wert G ∗ der Ausgangsaufgabe. Es bleibt noch die Aufgabe eines der besten Labellings zu finden. Dazu betrachten wir noch einmal (3.14) und (3.15). Bezeichnet man die Qualität eines Labele so gilt e K) im Bezug auf die neue Aufgabe mit G[x], lings x ∈ A (R, G e = G0 [x] G1 [x] G[x] e Aber das Funktional G0 [x] misst ja gerade die Qualität und folglich G0 [x] G[x]. e K) von Re auf R = Re ∪ r0 . Somit der besten Erweiterung eines Labellings x ∈ A ( R, e kann jedes Labelling mit G[x] w auf zumindest eine Art und Weise zu einem G 46 3. LÖSBARE MAXMIN PROBLEME H Labelling xe : R 7→ K mit G[xe ] w erweitert werden. Daraus ergibt sich das folgende einfache Konstruktionsschema für ein bestes Labelling: Während der ersten Phase des Algorithmus (sukzessives Entfernen der Knoten) speichert man für jeden Knoten bzw. jede Kante die zum Zeitpunkt ihres Entfernens aktuelle Funktion qr bzw. grr0 . Nach Beendigung der ersten Phase wählt man eines der besten Labellings der verbleibenden (2 Knoten) Aufgabe. Sei der Wert dieses Labellings w ∗ . Davon ausgehend wählt man eine beliebige Fortsetzung dieses Labellings auf den zuletzt entfernten Knoten so, dass der Wert des erweiterten Labellings wieder w ∗ ist. So eine Fortsetzung existiert garantiert. Man wiederholt diesen Schritt, bis man ein Labelling der Ausgangsaufgabe erhält, dessen Wert immer noch w ∗ ist. Betrachten wir die Komplexität des Algorithmus. Es sind insgesamt n Iterationsschritte auszuführen, wobei im i-ten Schritt ein Graph mit (n − i) Knoten zu betrachten ist. Für die Berechnung der neuen Funktionen ge sind höchstens (n − i)(n − i − 1)/2 Dreiecke zu betrachten und für jedes von ihnen sind O(|K| 3 ) Operationen auszuführen. Wir erhalten somit im schlimmsten Fall n (n − i)(n − i − 1) 3 |K| ∼ n3 |K|3 . 2 i=1 C(n) = ∑ Operationen. Dabei wurde die Reihenfolge der Entfernung der Knoten bisher nicht betrachtet. Ist der Graph der Ausgangsaufgabe z.B. ein partieller m-Baum, so führt die richtige Wahl der Reihenfolge des Entfernens zur Komplexität C(n) ∼ nm 2 |K|3 . B EMERKUNG 3.1. In einer etwas anderen Form lässt sich der obige Algorithmus auch parallel realisieren. Dabei werden in jedem Iterationsschritt wie zuvor im Relaxation Labelling Algorithmus neue Funktionen g rr0 parallel berechnet, anstelle Knoten des Graphen zu entfernen. Die für eine Kante auszuführenden Berechnungen sind allerdings aufwendiger als für den Relaxation Labelling Algorithmus: Es müssen alle Dreiecke betrachtet werden, die diese Kante enthalten. Die Formeln für die Berechnung der neuen Funktionen auf der Kante (r, r 0 ) sind i h (t) (t+1) (t) drr0 r00 (k, k0 ) grr0 (k, k0 ) = grr0 (k, k0 ) I (t) drr0 r00 (k, k0 ) = J r 00 (t) (t) (t) grr00 (k, k00 ) qr00 (k00 ) gr0 r00 (k0 , k00 ) k00 00 00 (k, k ) Die Hilfsfunktionen drr0 r „messen“ die Qualität des besten Labellings auf dem Dreieck (r, r 0 , r00 ) unter all jenen Labellings, die auf der Kante (r, r 0 ) durch die Label k und k 0 gehen. Ein Iterationsschritt erfordert n 3 |K|3 Operationen. Das sind genauso viele, wie der ganze sequentielle Algorithmus erfordert. 3.5. Beweis des Stern-Simplex Theorems Wir beginnen den Abschnitt mit einer kurzen Wiederholung der Behauptungen des Stern-Simplex Theorems. Gegeben sei die aus n trikonkaven Funktionen g i : K × K 7→ W gebildete Funktion h n i gi (k, ki ) , G[k1 , . . . , kn ] = J I k∈K i=1 3.5. BEWEIS DES STERN-SIMPLEX THEOREMS 47 deren Definitionsbereich K n ist. Entsprechend der ersten Behauptung des Theorems lässt sich diese Funktion in der äquivalenten Form H[k1 , . . . , kn ] = hi j (ki , k j ) K i< j schreiben. Die dafür verwendeten Funktionen h i j : K ×K 7→ W sind durch folgende Gleichungen definiert: hi j (ki , k j ) = (3.23) q(k) gi (k, ki ) g j (k, k j ) L q(k) = (3.24) k∈K n K L i=1 k0 gi (k, k0 ) . Entsprechend der zweiten Behauptung des Theorems sind die h i j trikonkave Funktionen auf dem Verband K × K. Der Beweis des Theorems gliedert sich in drei Teile: A. Wir beweisen die Äquivalenz der Stern-Simplex Transformation für den Fall n = 3. Dieser Fall entspricht der einfachsten nichttrivialen Situation, in der das Simplex ein Dreieck ist. B. Anschließend beweisen wir durch vollständige Induktion die Äquivalenz der Stern-Simplex Transformation für beliebige n. C. Abschließend beweisen wir, dass alle auf dem Simplex erhaltenen Funktionen hi j trikonkav sind. Zunächst stellen wir fest, dass die Funktionen h i j direkt aus der Funktion G berechnet werden können. Dazu führt man die Projektionsoperatoren Pi , i = 1, . . . , n ein, die wie folgt definiert sind: (Pi F)(k1 , . . . , 6 ki , . . . , kn ) = L F(k1 , . . . , ki0 , . . . , kn ). ki0 Wie eine einfache Berechnung zeigt, lässt sich die Funktion h i j aus der Funktion G erhalten, indem man aus G alle Variablen bis auf k i und k j „herausprojiziert“. Folglich gilt für jedes Tupel (k1 , . . . , kn ) die Ungleichung hi j (ki , k j ) M G[k1 , . . . , kn ]. Unter Berücksichtigung der Definition der Funktion H ergibt sich die Ungleichung H(k1 , . . . , kn ) G(k1 , . . . , kn ). Sie gilt unabhängig davon, ob die Funktionen gi trikonkav sind oder nicht. Für den Beweis der Äquivalenz der Stern-Simplex Transformation genügt es somit die Gültigkeit der Ungleichung H(k 1 , . . . , kn ) G(k1 , . . . , kn ) nachzuweisen. A. Sei n = 3 und (k1 , k2 , k3 ) ein beliebiges Tripel. Wir betrachten die durch (3.23) definierten Funktionen h12 , h13 , h23 . Für jede von ihnen wird das Maximum auf der rechten Seite (3.23) für mindestens ein k erreicht. Wir bezeichnen diese Elemente ∗ , k∗ , k∗ : mit k12 13 23 ki∗j = arg q(k) gi (k, ki ) g j (k, k j ) M L N k 48 3. LÖSBARE MAXMIN PROBLEME ∗ , k ∗ , k ∗ ). Dann gilt Sei k∗ das Zentrum des Tripels ki∗j , d.h. k∗ = Mid(k12 13 23 O gi (k∗ , ki ) H(k1 , k2 , k3 ) i = 1, 2, 3. Zum Beweis betrachten wir etwa die die Funktion g 1 und bezeichen den Wert von H(k1 , k2 , k3 ) der Kürze halber mit w. Da H durch Bilden des Minimums aus h 12 , h13 , h23 entsteht, gilt h12 (k1 , k2 ) O w, h13 (k1 , k3 ) O w, h23 (k2 , k3 ) O w. Aus den ersten beiden Ungleichungen ergibt sich wegen (3.23) ∗ g1 (k12 , k1 ) O O ∗ w , g1 (k13 , k1 ) O w. ∗ ) Aus der letzten ergibt sich q(k23 w, woraus seinerseits folgt, dass für mindestens ∗ ,e ein e k1 ∈ K die Ungleichung g1 (k23 k1 ) w erfüllt ist. Betrachten wir das Tripel e (k1 , k1 , k1 ), dessen Zentrum k1 ist. Da g1 nach Voraussetzung trikonkav ist, ergibt sich ∗ ∗ ∗ e , k1 ) g1 (k13 , k1 ) g1 (k23 , k1 ) w. g1 (k∗ , k1 ) g1 (k12 O O O Die entsprechenden Ungleichungen für g 2 und g3 lassen sich auf analoge Art und Weise beweisen. Abschließend erhält man somit h 3 i G(k1 , k2 , k3 ) = gi (k, ki ) P Q O k∈K i=1 g1 (k∗ , k1 ) g2 (k∗ , k2 ) g3 (k∗ , k3 ) O H(k1 , k2 , k3 ), was die Äquivalenz des Stern-Simplex Transformation für den Fall n = 3 beweist. B. Eine aufmerksame Betrachtung des obigen Beweises zeigt, dass die Aussage auch dann noch gilt, wenn die Funktionen g i auf Produktverbänden definiert sind, deren zweite Komponenten unterschiedlich sind, d.h. g i : K × Ki 7→ W . Dieser Umstand erlaubt es, die Äquivalenz der Stern-Simplex Transformation für beliebige n 3 durch vollständige Induktion zu beweisen. Nehmen wir an, dass die Aussage für n trikonkave Funktionen gi gilt. Wegen der Idempotenz der Operation lässt sich die Funktion G im Fall von n + 1 Funktionen g i für jedes Tupel (k1 , . . . , kn+1 ) in der Form n n o G[k1 , . . . , kn+1 ] = gi (k, ki ) gn+1 (k, kn+1 ) O P Q k i=1 schreiben. Die n Funktionen gi gn+1 sind wegen Lemma 3.7 trikonkav und folglich können wir die Stern-Simplex Transformation anwenden und erhalten Q n G[k1 , . . . , kn+1 ] = e hi j (ki , k j , kn+1 ) = P i< j k e hi j (ki , k j , kn+1 ) q(k) gi (k, ki ) g j (k, k j ) gn+1 (k, kn+1 ) . Die Funktion q ist dabei wie in (3.24) definiert und trikonkav (siehe C). Für einen Moment definieren wir die Funktionen gei (k, ki ) = q(k) gi (k, ki ), die trikonkav 3.5. BEWEIS DES STERN-SIMPLEX THEOREMS 49 sind und wenden nochmals die Stern-Simplex Transformation auf jedes e hi j an. Das führt direkt zum gewünschten Resultat. C. Es bleibt zu zeigen, dass die Funktionen h i j trikonkav sind. Wir betrachten noch einmal (3.24) und überzeugen uns davon, dass q eine trikonkave Funktion auf K ist. Das folgt aus Lemma 3.7, wenn man die „Summe“ in (3.24) als Matrix-Vektor Multiplikation mit dem Vektor 1 interpretiert: g(k, k0 ) = g(k, k0 ) 1 R R k0 k0 Fasst man q als Funktion auf K × K auf, die nur vom ersten Argument abhängt, so ist sie auch dann trikonkav. Folglich sind auch die Funktionen h i j trikonkav. Damit ist der Beweis des Stern-Simplex Theorems abgeschlossen. KAPITEL 4 Lösbare MaxSum Probleme In den ersten beiden Kapiteln dieser Arbeit haben wir mehrere Aufgaben der strukturellen Erkennung aufgeführt, die sich auf eine MaxSum Aufgabe reduzieren lassen. Diese Reihe kann ohne Mühe erweitert werden. Insbesondere gilt das für alle statistisch formulierten Aufgaben der strukturellen Erkennung, bei denen das Labelling mit der höchsten a-posteriori Wahrscheinlichkeit gesucht wird. Das erklärt, warum in der Vergangenheit so viele Ansätze zur Lösung der MaxSum Aufgabe bzw. zur Lösung spezieller Instanzen dieser Aufgabe vorgeschlagen und untersucht wurden. Dabei hat man zunächst auch heuristische Ansätze und Algorithmen betrachtet, die nur suboptimale Lösungen liefern. Akzeptabel erschienen auch Verfahren, die die exakte Lösung erst nach unendlicher Laufzeit liefern. Hier hoffte man, dass man bereits nach endlicher Laufzeit gute Näherungen der Lösung erhält. Wie bereits weiter oben erwähnt, legen wir in dieser Arbeit strengere Maßstäbe an und betrachten nur Algorithmen mit polynomialer Zeitkomplexität, die entweder (1) die exakte Lösung liefern, oder (2) eine Näherungslösung mit bekannter Approximationsgüte liefern. Da die allgemeine MaxSum Aufgabe NP-vollständig ist, folgt auch hier, dass derartige Algorithmen nur für Teilklassen dieser Aufgabe existieren. Schränkt man z.B. die Komplexität des Graphen ein, auf dem die Aufgabe formuliert ist, so lässt sich ohne große Mühe zeigen, dass die Aufgabe in der Klasse partieller m-Bäume exakt und mit polynomialer Zeitkomplexität lösbar ist. Ist der Graph der Aufgabe insbesondere ein Baum, so kann man den am Ende des Abschnitts 3.1 beschriebenen Algorithmus zur Lösung der MaxMin Aufgabe wortwörtlich übernehmen und muss in der Formel (3.1) nur die Ersetzungen → + und ⊕ → max vornehmen. Das Hauptaugenmerk dieses Kapitels gilt lösbaren Teilklassen von MaxSum Aufgaben, die durch Einschränkungen an die Funktionen g rr0 und qr entstehen. Dabei werden keine einschränkenden Voraussetzungen über den Graph der Aufgabe getroffen. Auf den ersten Blick mag es erscheinen, dass man wegen der einheitlichen algebraischen Formulierung der MaxMin und der MaxSum Aufgaben als (⊕, )-Aufgabe über einem Semiring, die Resultate des vorhergehenden Kapitels formal auf MaxSum Aufgaben übertragen kann. D.h. man würde die Definitionen bikonkaver bzw. trikonkaver Funktionen auf den Fall eines MaxSum Semirings übertragen und dann den entsprechend umformulierten Relaxation Labelling Algorithmus bzw. den Stern-Simplex Algorithmus anwenden. Ein genauerer Blick zeigt jedoch, dass dies nicht möglich ist. Betrachten wir dazu Lemma 3.3, welches 51 52 4. LÖSBARE MAXSUM PROBLEME behauptet, dass die für den Relaxation Labelling Algorithmus verwendete Transformation Φ : (q(t) , g(t) ) 7→ (q(t+1) , g(t+1) ) jede MaxMin Aufgabe in eine äquivalente Aufgabe überführt. Das gilt nur unter der Voraussetzung, dass die Operationen ⊕, des Semirings idempotent sind. Dasselbe gilt für die Äquivalenz der Stern-Simplex Transformation im Falle trikonkaver Funktionen. Folglich können die im vorhergehenden Kapitel diskutierten Algorithmen nicht für MaxSum Aufgaben verwendet werden. Es wäre allerdings falsch, daraus auch gleich den Schluss zu ziehen, dass etwa die Übertragung der Definition bikonkaver Funktionen auf MaxSum Semiringe zu keiner lösbaren Teilklasse führt. Im ersten Abschnitt dieses Kapitels diskutieren wir eine bereits bekannte Teilklasse lösbarer MaxSum Probleme. Alle Aufgaben dieser Klasse lassen sich in äquivalente MaxFluss Probleme überführen. Letztere lassen sich mit polynomialem Zeitaufwand exakt lösen. Im zweiten Abschnitt werden wir diese Klasse erheblich erweitern und zeigen, dass alle Aufgaben dieser erweiterten Klasse äquivalent als lineare Optimierungsaufgaben formulierbar sind. Schließlich werden wir zeigen, dass auch jede MaxSum Aufgabe der erweiterten Klasse äquivalent als MaxFluss Aufgabe formulierbar ist. 4.1. Bekannte lösbare MaxSum Probleme Äquivalente Transformationen. Bevor wir mit der Diskussion bereits bekannter lösbarer Teilklassen von MaxSum Problemen beginnen, führen wir einige für das Weitere benötigte (und fast offensichtliche) äquivalente Transformationen des Problems ein. Die allgemeine Form einer MaxSum Aufgabe auf einem Graph G (R, E) ist (s. (1.3)) i h (4.1) max G[x] = max ∑ qr (x(r)) + ∑ grr0 (x(r), x(r 0 )) . x∈A (R,K) x∈A (R,K) r∈R (r,r 0 )∈E Wählt man eine beliebige Kante (r, r 0 ) ∈ E des Graphen und verändert die ihr zugeordnete Funktion grr0 um eine Konstante c, d.h grr0 (k, k0 ) → grr0 (k, k0 ) + c, so entsteht eine äquivalente MaxSum Aufgabe: Der Wert G[x] jedes Labellings x ∈ A (R, K) stimmt in beiden Aufgaben bis auf die additive Konstante c überein. Genauso kann man auch jeden beliebigen Knoten r ∈ R des Graphen wählen und die ihm zugeordnete Funktion qr um eine Konstante ändern. Somit lässt sich jedes MaxSum Problem z.B. in eine Normalform überführen, bei der die Maxima aller Funktionen grr0 – d.h. maxk,k0 grr0 (k, k0 ) – und die Maxima aller Funktionen q r mit einer im Voraus gewählten Konstante – z.B. Null – übereinstimmen. Ebenso leicht sieht man, dass jede MaxSum Aufgabe (4.1) in eine äquivalente Aufgabe überführbar ist, bei der nur noch Funktionen g rr0 , aber keine Funktionen qr vorkommen: (4.2) max G[x] = max x∈A (R,K) ∑ gerr0 (x(r), x(r 0 )). x∈A (R,K) (r,r 0 )∈E Dies erreicht man z.B. durch die Wahl qr0 (k0 ) qr (k) + grr0 (k, k) + ∀(r, r0 ) ∈ E, gerr0 (k, k) = nr nr 0 4.1. BEKANNTE LÖSBARE MAXSUM PROBLEME 53 wobei nr die Valenz des Knotens r ist. Unter bestimmten Umständen ist es dagegen sinnvoll die Umkehrung dieser Vorgehensweise zu verwenden, um eine Normalform von (4.1) mit möglichst einfachen Funktionen g rr0 zu erhalten: gerr0 (k, k) = −arr0 (k) + grr0 (k, k) − ar0 r (k0 ) qer (k) = qr (k) + ∑ arr0 (k) ∀(r, r0 ) ∈ E ∀r ∈ R. r 0 : (r,r 0 )∈E Dabei werden die Funktionen arr0 so gewählt, dass die neuen, den Kanten des Graphen zugeordneten Funktionen gerr0 möglichst einfach werden. So kann man z.B. durch eine geeignete Wahl der Funktionen a rr0 erreichen, dass die neuen Funktionen gerr0 die Eigenschaft ∑ gerr (k, k0 ) = 0 0 ∀(r, r 0 ) ∈ E , ∀k ∈ K k0 ∑ gerr (k, k0 ) = 0 0 ∀(r, r 0 ) ∈ E , ∀k0 ∈ K k haben. Stellt man sich die Funktionen gerr0 in Form einer Tabelle bzw. Matrix vor, so ist das gleichbedeutend damit, dass die Summe der Matrixelemente für jede Zeile und jede Spalte Null ist. Man überprüft leicht, dass diese Normalform durch die folgende Wahl der Funktionen arr0 (k) erreicht wird: arr0 (k) = 1 1 grr0 (k, k) − ∑ ∑0 grr0 (k, k) |K| k0 2|K|2 k,k ar0 r (k0 ) = 1 1 grr0 (k, k) − g 0 (k, k) 2 ∑ rr |K| ∑ 2|K| k k,k0 Der Fall |K| = 2. Ausgangspunkt aller bisher entdeckten effizient lösbaren Teilklassen von MaxSum Aufgaben waren die Arbeiten von Picard et.al. [32] und von Greig et.al. [17]. In diesen Arbeiten werden MaxSum Aufgaben mit zweielementigen Labelmengen K betrachtet. Durch Anwenden obiger Transformationen kann jede solche MaxSum Aufgabe in eine Normalform überführt werden, bei der die Funktionen grr0 für jede Kante (r, r 0 ) ∈ E die Form grr0 (k, k0 ) = αrr0 δkk0 haben. Hierbei ist αrr0 eine reelle Zahl und δkk0 das Kronecker Symbol.1 Sind nun die Zahlen αrr0 für alle Kanten (r, r 0 ) ∈ E nichtnegativ, so lässt sich die MaxSum Aufgabe in eine äquivalente MinSchnitt Aufgabe transformieren. Dieser wiederum entspricht eine duale MaxFluss Aufgabe, die effizient – d.h. mit polynomialer Zeitkomplexität – lösbar ist. Die den Knoten r ∈ R zugeordneten Funktionen q r können dabei beliebig sein. Wir erinnern hier kurz an die Definitionen der Aufgabe der Suche eines minimalen trennenden Schnitts (MinSchnitt) und der Aufgabe der Suche eines maximalen Flusses (MaxFluss) in einem gerichteten Graphen mit Kantenkapazitäten (auch 1Dies entspricht dem im Abschnitt 2.3 diskutierten Ising Modell. 54 4. LÖSBARE MAXSUM PROBLEME S Netzwerk genannt). Sei G (R, E) ein gerichteter Graph und c : E 7→ eine nichtnegative Funktion. Die Werte c(r, r 0 ) dieser Funktion werden als Kantenkapazitäten bezeichnet. In der Menge R der Knoten seien zwei Knoten ausgezeichnet, die mit q und s bezeichnet sind (Quelle und Senke). Ein die Quelle q von der Senke s trennender Schnitt, ist eine Partitionierung der Knotenmenge R in zwei Teilmengen Q und S, so dass Q ∩ S = 0/ , Q ∪ S = R , q ∈ Q, und s ∈ S erfüllt ist. Die Kosten eines Schnitts sind durch C(Q, S) = ∑ c(r, r0 ) (r,r 0 )∈E r∈Q, r 0 ∈S definiert. Die Aufgabe besteht im Auffinden eines trennenden Schnitts mit minimalen Kosten. Die MaxFluss Aufgabe ist wie folgt definiert. Ein Fluss (von q nach s) ist eine Abbildung f : E 7→ , die folgendes erfüllt: S 0 T f (r, r0 ) ∑ r 0 ∈E T c(r, r0 ) f (r0 , r) = ∑ r 0 ∈A r f (r, r0 ) ∀(r, r0 ) ∈ E ∀r ∈ R \ {q, s} r hierbei ist Er die Menge aller Endknoten von Kanten mit Anfangsknoten r und A r die Menge aller Anfangsknoten von Kanten mit Endknoten r. Der Fluss durch jede Kante ist nach Bedingung (1) nichtnegativ und durch die Kapazität beschränkt. Die zweite Bedingung besagt, dass aus jeder Kante genausoviel herausfließt, wie hineinfließt (mit Ausnahme von q und s). Der Wert eines Flusses ist die Zahl W(f) = ∑ r∈Eq f (q, r) − ∑ r∈Aq f (r, q) = ∑ r∈As f (r, s) − ∑ f (s, r). r∈Es Die Aufgabe besteht im Auffinden eines Flusses mit maximalem Wert. Das folgende Theorem von Ford und Fulkerson stellt einen Zusammenhang zwischen beiden Aufgaben her. T HEOREM 4.1. (o.B.) In jedem Netzwerk ist der Wert eines maximalen Flusses von der Quelle q zur Senke s gleich der Kapazität eines minimalen q und s trennenden Schnitts. Dieses Theorem erlaubt die Überführung jeder MinSchnitt Aufgabe in eine äquivalente MaxFluss Aufgabe. Für letztere gibt es eine Vielzahl effizienter Algorithmen (siehe z.B. [2] und [40]). Der zur Zeit beste bekannte Algorithmus zur Lösung der MaxFluss Aufgabe ist eine optimale Variante des Preflow-Push Algorithmus und hat die Komplexität O[n 2 e log(n2 /e)]. Hierbei ist n die Anzahl der Knoten und e die Anzahl der Kanten des Graphen der Aufgabe. Kommen wir nun zur angekündigten Überführung der MaxSum Aufgabe in eine MinSchnitt Aufgabe. Ohne Beschränkung der Allgemeinheit nehmen wir an, dass die Label der Aufgabe 0 und 1 sind und bringen die MaxSum Aufgabe mittels der 4.1. BEKANNTE LÖSBARE MAXSUM PROBLEME 55 oben diskutierten Transformationen in die Normalform 1 G[x] = ∑ βr x(r) + ∑ ∑ αrr0 x(r)x(r0 ) + (1 − x(r))(1 − x(r 0 )) . 2 r r0 r Greig et.al. haben gezeigt, dass sich diese Aufgabe in eine äquivalente MinSchnitt Aufgabe überführen lässt, wenn alle α rr0 nichtnegativ sind. Der Graph der MinSchnitt Aufgabe besteht aus der Knotenmenge R der MaxSum Aufgabe und den zwei zusätzlichen Knoten q und s. Für jedes Paar von Knoten r und r 0 , die in der MaxSum Aufgabe durch eine (ungerichtete) Kante verbunden sind, werden im Graph der MinSchnitt Aufgabe die zwei gerichteten Kanten (r, r 0 ) und (r0 , r) eingeführt. Ihre Kapazitäten stimmen überein und sind gleich α rr0 . Jeder Knoten r mit βr > 0 wird durch eine gerichtete Kante (q, r) mit der Quelle verbunden. Die Kapazität dieser Kante ist βr . Jeder Knoten r mit βr 0 wird durch eine gerichtete Kante (r, s) mit der Senke verbunden. Die Kapazität dieser Kante ist −β r . Ein Labelling x ∈ A (R, K) wird wie folgt als trennender Schnitt interpretiert: U Q = {r ∈ R | x(r) = 1} ∪ q, S = {r ∈ R | x(r) = 0} ∪ s. Die Kosten eines Schnitts sind C[x] = ∑ x(r) max[0, −βr ] + ∑ 1 − x(r) max[0, βr ] + r r + 2 1 αrr0 x(r) − x(r 0 ) . ∑ ∑ 2 r r0 Eine einfache Berechnung zeigt, dass die Kosten eines trennenden Schnitts bis auf eine Konstante, die nicht von x abhängt, mit −G[x] übereinstimmen. Somit lässt sich im Falle zweielementiger Labelmengen |K| = 2 jede MaxSum Aufgabe mit nichtnegativen αrr0 in eine äquivalente MinSchnitt Aufgabe überführen. Diese wiederum lässt sich durch den Übergang zu der dazu dualen MaxFluss Aufgabe effizient lösen. Der Fall |K| > 2. Es dauerte noch einmal zehn Jahre, bis es Ishikava et.al. [22] und Boykov et.al. [10, 9] gelang, die oben beschriebenen Resultate für den Fall |K| > 2 zu verallgemeinern. Wir diskutieren zunächst die von Ishikava et.al. gefundene Klasse exakt lösbarer MaxSum Probleme, die durch folgende Eigenschaften charakterisiert wird. Die Labelmenge K der MaxSum Aufgabe ist vollständig geordnet. Für das Weitere nehmen wir ohne Beschränkung der Allgemeinheit an, dass K ein endliches Intervall der Menge der ganzen Zahlen ist. Die den Kanten des Graphen G (R, E) der MaxSum Aufgabe zugeordneten Funktionen g rr0 hängen nur von der Differenz der Label ab: grr0 (k, k0 ) = frr0 (k − k0 ) und die Funktionen f rr0 : K 7→ V 2 f (k) sind konkav, d.h. für jedes k ∈ K gilt W f (k − 1) + f (k + 1). Die den Knoten des Graphen zugeordneten Funktionen q r können dagegen beliebig sein. Unter diesen Bedingungen kann die MaxSum Aufgabe in eine äquivalente MaxSchnitt Aufgabe transformiert und effizient gelöst werden. Wir verzichten hier 56 4. LÖSBARE MAXSUM PROBLEME auf die Beschreibung dieser Transformation, da wir die eben beschriebene Klasse exakt lösbarer MaxSum Probleme im nächsten Abschnitt erheblich erweitern werden. Im übernächsten Abschnitt zeigen wir dann, wie die entsprechende Transformation für die allgemeinere Klasse zu konstruieren ist. Wir wollen nun vielmehr die Arbeiten von Boykov et.al. [10, 9] vorstellen, die Klassen von MaxSum Aufgaben betrachten, die zwar nicht exakt lösbar sind, für die aber effiziente Näherungsalgorithmen existieren. Eine dieser Klassen ist wie folgt definiert. Die Labelmenge K sei mit einer Metrik d versehen, d.h. (1) (2) (3) X d(k, k 0 ) 0 d(k, k 0 ) = 0 ⇔ k = k0 d(k, k 0 ) d(k, k00 ) + d(k00 , k0 ). Y Betrachtet werden MaxSum Aufgaben, deren Funktionen g rr0 bis auf einen (negativen) Faktor mit der Metrik übereinstimmen: grr0 (k, k0 ) = −αrr0 d(k, k0 ), αrr0 X 0. Die den Knoten des Graphen zugeordneten Funktionen q r können hingegen beliebig sein. B EISPIEL 4.1. Im Abschnitt 2.3 haben wir das Potts Modell als einfaches Segmentmodell betrachtet. Zugehörige MaxSum Aufgaben liegen in der eben beschriebenen Klasse. Die Metrik ist hierbei durch d(k, k 0 ) = 1 − δkk0 gegeben. In [9] wurde gezeigt, dass auf dem Potts Modell basierende MaxSum Aufgaben NP-vollständig sind. Z Der von den Autoren vorgeschlagene Algorithmus besteht grob gesagt in der iterativen Verbesserung eines zum Startzeitpunkt beliebig gewählten Labellings. In jedem Iterationsschritt wird eine Aufgabe (4.3) x(t+1) = arg max max G[x] k∈K x∈Uk (x(t) ) gelöst, wobei Uk (x) ⊂ A (R, K) eine gewisse Suchumgebung des Labellings x ist. Der Algorithmus stoppt, wenn das aktuelle Labelling nicht mehr verbessert werden kann. Der prinzipielle Gedanke ist natürlich nicht neu, nur wurden bisher nur sehr kleine Suchumgebungen verwendet – z.B. solche, bei denen jedes y ∈ U(x) durch Ändern eines Labels in einem einzigen Knoten aus x hervorgeht (|U(x)| = |R|(|K| − 1)). Im Gegensatz dazu verwenden Boykov et.al. wirklich große Suchumgebungen Uk (x). Dadurch verbessert sich die erreichbare Approximationsgüte und – was noch viel wichtiger ist – sie wird garantiert besser als eine gewisse Schranke. Die Suchumgebung Uk (x) ⊂ A (R, K) enthält alle Labellings y, die durch folgende Änderung aus dem Labelling x hervorgehen: Sei V ⊂ R eine beliebig wählbare Teilmenge von Knoten. Für alle Knoten dieser Teilmenge nimmt y das Label k an, d.h. y(r) = k ∀r ∈ V . Für alle anderen Knoten werden die Label von x übernommen, d.h. y(r) = x(r) ∀r ∈ R \ V . Mit anderen Worten: Ein Labelling y ∈ U k (x) kann sich in beliebig vielen Knoten von x unterscheiden, muss dort aber den Wert y(r) = k annehmen. Die Autoren bezeichnen dies als „k-expansion move“. Es ist 4.1. BEKANNTE LÖSBARE MAXSUM PROBLEME 57 unmittelbar klar, dass die Kardinalität des gesamten, in einem Iterationsschritt verwendeten Suchbereichs U(x) = ∪kUk (x) kein Polynom in |R| ist. Somit ist auch die Lösung der Aufgabe (4.3) – sie muss in jedem Iterationsschritt neu gelöst werden – bei weitem nicht trivial. Für die Klasse der „metrischen“ MaxSum Probleme ist sie dennoch effizient lösbar. Der in der zitierten Arbeit vorgestellte Beweis dieser Aussage ist recht kompliziert und umständlich, weswegen wir es vorziehen, den viel eleganteren und sehr einfachen Beweis zu diskutieren, der auf [34] basiert. Seine Hauptidee ist die Überführung jeder in (4.3) auftretenden Teilaufgabe arg max G[y] y∈Uk (x) e= in eine äquivalente MaxSum Aufgabe mit einer zweielementigen Labelmenge K {0, 1}. Der Graph dieser Aufgabe wird durch die Knotenmenge Re = {r ∈ R | x(r) 6= k} induziert. Die zwei Label 0 und 1 kodieren ob y im betreffenden Knoten mit x übereinstimmt, d.h. y(r) = x(r) oder aber sich von x unterscheidet, d.h. y(r) 6= x(r). Im letzteren Fall ist y(r) = k. Somit kodiert jedes Labelling der neuen Aufgabe genau ein y aus Suchumgebung Uk (x). Die Funktionen qer der neuen MaxSum Aufgabe sind qer (0) = qr (x(r)) − d x(r), k ∑ αrr0 r 0 ∈R\Re qer (1) = qr (k) . Die Funktionen gerr0 der neuen Aufgabe (aufgeschrieben in Matrixform) sind d x(r), x(r 0) d x(r), k gerr0 = −αrr0 . d k, x(r0 ) 0 Aus der Dreiecksungleichung für die Metrik d folgt dann unmittelbar, dass diese Aufgabe in der von Greig et.al. gefundenen Klasse lösbarer MaxSum Aufgaben liegt. Folglich zerfällt die Lösung von (4.3) für jeden Iterationsschritt in die Lösung von |K| MaxSum Aufgaben mit zweielementigen Labelmengen. Die Approximationsgüte des Algorithmus hängt von der Zahl c= maxk,k0 ∈K d(k, k0 ) mink6=k0 ∈K d(k, k0 ) ab. Sind alle qr nichtpositiv und bezeichnen x bzw. x ∗ das gefundene bzw. das optimale Labelling, so gilt −G[x] [ −2cG[x∗ ]. Natürlich ist diese Approximationsgüte nicht für jede Metrik d gut. Für das Potts Modell ist c = 1, aber imFalle einer mit der Zahl M gekappten linearen Metrik d(k, k0 ) = min M, |k − k0 | ist c = M und die gefundene Lösung kann 2M-mal schlechter als die optimale Lösung sein. In [18] wird ein Algorithmus beschrieben, 58 4. LÖSBARE MAXSUM PROBLEME der speziell im letzteren Fall für alle M eine Näherungslösung mit dem Approximationsfaktor 4 liefert. 4.2. MaxSum Probleme mit bikonkaven Funktionen Die größte bisher bekannte Klasse exakt und effizient lösbarer MaxSum Probleme ist die von Ishikava et.al. gefundene Klasse, die wir im vorhergehenden Abschnitt beschrieben haben. Wir werden diese Klasse erheblich erweitern, indem wir den Begriff der Bikonkavität (siehe Abschnitt 3.3) von MaxMin Semiringen auf MaxSum Semiringe übertragen. Wir erinnern noch einmal an die Definition bikonkaver Funktionen für MaxMin Semiringe: Eine Funktion g : K 7→ W , die auf einem endlichen Verband (K, ∨, ∧) definiert ist und Werte in einem MaxMin Semiring (W, ⊕, ) annimmt, heißt bikonkav, wenn für jedes Paar von Argumenten k, k 0 die Ungleichung \ g(k ∧ k0 ) g(k ∨ k0 ) g(k) g(k 0 ) erfüllt ist. Wir übertragen diese Bedingung formal auf MaxSum Semiringe – indem wir unter der Operation nicht mehr die Bildung des Minimums, sondern die gewöhnliche Addition + verstehen. Daraus ergibt sich die folgende Definition bikonkaver Funktionen mit Werten in MaxSum Semiringen. D EFINITION 4.1. (Bikonkave Funktionen) Sei (K, ∨, ∧) ein endlicher Verband. Eine reellwertige Funktion g : K 7→ heißt bezüglich des Semirings ( , max, +) bikonkav, wenn für jedes Paar von Argumenten k, k 0 die Ungleichung ] (4.4) ] g(k ∧ k 0 ) + g(k ∨ k0 ) \ g(k) + g(k 0 ) ^ erfüllt ist. Im folgenden betrachten wir einige Beispiele und Eigenschaften bikonkaver Funktionen. Dabei interessiert uns insbesondere der Fall, dass der Verband K, auf dem die Funktion definiert ist, entweder vollständig geordnet ist oder ein Produkt vollständig geordneter Mengen ist. Der erste Fall ist trivial: Ist K vollständig geordnet, so ist jede Funktion g : K 7→ bikonkav. Gehen wir zu dem interessanteren Fall über, dass g eine Funktion auf dem Produktverband (K × K, ∨, ∧) ist, wobei wir annehmen, dass K vollständig geordnet ist. Um zu überprüfen, ob eine gegebene Funktion g : K × K 7→ bikonkav ist, müssten wir die in der Definition angegebene Ungleichung für jedes Paar von Argumenten κ = (k 1 , k2 ) und κ0 = (k10 , k20 ) betrachten. Aufgrunddessen, dass ( , +) eine Gruppe ist, kann man dies vereinfachen. Wir betrachten dazu die Funktion g als quadratische Matrix und führen den linearen Operator der „Ableitung“ D ein: g(1, 1) g(1, 2) . . . g(1, n) 1 0 0 ... 0 0 g(2, 1) g(2, 2) . . . g(2, n) −1 1 0 . . . 0 0 G= D= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . g(n, 1) g(n, 2) . . . g(n, n) 0 0 0 . . . −1 1 ] ] ] Man überprüft leicht, dass die Matrixelemente von D T GD außer in der letzten Spalte und Zeile mit H(k1 , k2 ) = G(k1 , k2 ) + G(k1 + 1, k2 + 1) − G(k1 + 1, k2 ) − G(k1 , k2 + 1) 4.2. MAXSUM PROBLEME MIT BIKONKAVEN FUNKTIONEN 59 übereinstimmen. Betrachten wir nun ein beliebiges Paar von Argumenten κ = (k1 , k2 ), κ0 = (k10 , k20 ) und die zu überprüfende Bedingung g(k1 ∧ k10 , k2 ∧ k20 ) + g(k1 ∨ k10 , k2 ∨ k20 ) − g(k1 , k2 ) − g(k10 , k20 ) _ 0 Die Größe auf der linken Seite dieser Ungleichung stimmt aber mit i2 j2 ∑ ∑ H(i, j) i=i1 j= j1 überein, wobei i von i1 = k1 ∧ k10 bis i2 = (k1 ∨ k10 ) − 1 läuft und j von j1 = k2 ∧ k20 bis j + 2 = (k2 ∨ k20 ) − 1 läuft. Wir erhalten somit folgendes Resultat: Die Funktion g ist genau dann bikonkav, wenn ihre Ableitung D T GD überall (bis auf die letzte Zeile und Spalte) nichtnegativ ist. B EISPIEL 4.2. Sei K vollständig geordnet und g : K × K 7→ dem Verband (K × K, ∨, ∧). Habe g die Form ` eine Funktion auf g(k1 , k2 ) = f (k2 − k1 ), wobei f konkav ist (siehe Abschnitt 4.1). Dann ist g eine bikonkave Funktion. Um dies zu zeigen, genügt es die Ableitung D T GD zu betrachten: Sie ist überall nichtnegativ, da f konkav ist. a D EFINITION 4.2. (Bikonkave MaxSum Probleme) Ein MaxSum Problem mit vollständig geordneter Labelmenge heißt bikonkav, wenn die Funktionen g rr0 : K × K 7→ für alle Kanten (r, r 0 ) bikonkav sind. Die Funktionen qr können dabei beliebig sein. ` a Das obige Beispiel zeigt, dass die von Ishikava et.al. gefundene Klasse von MaxSum Problemen eine Teilmenge der bikonkaven MaxSum Probleme bildet. Im Falle |K| = 2 stimmen beide Klassen überein und entsprechen der von Greig et.al. gefundenen Klasse. Für |K| 2 ist die Klasse bikonkaver MaxSum Probleme die umfassendere. MaxSum Probleme und lineare Optimierung. Das Hauptziel dieses Kapitels ist der Nachweis folgender Behauptung: Bikonkave MaxSum Probleme mit vollständig geordneter Labelmenge lassen sich mit polynomialem Zeitaufwand exakt lösen. Wir werden zunächst zeigen, dass jede solche MaxSum Aufgabe äquivalent als konvexe Optimierungsaufgabe formuliert werden kann. Letztere lässt sich in eine lineare Optimierungsaufgabe überführen. Ihre duale Aufgabe erweist sich schließlich als eine MaxFluss (genauer – eine MaxPreFluss) Aufgabe, für die mehrere effiziente Algorithmen bekannt sind. Wir gehen ohne Beschränkung der Allgemeinheit davon aus, dass die MaxSum Aufgabe in einer Normalform vorliegt, bei der nur die Funktionen g rr0 auftreten. Sei G (R, E) wie bisher ein Graph und K eine vollständig geordnete Labelmenge. Seien weiterhin grr0 : K × K 7→ bikonkave Funktionen, die den Kanten des Graphen zugeordnet sind. Die MaxSum Aufgabe lautet _ ` (4.5) max ∑ grr0 (x(r), x(r 0 )). x∈A (R,K) (r,r 0 )∈E 60 4. LÖSBARE MAXSUM PROBLEME Diese Aufgabe lässt sich wie folgt in vektorieller Form notieren. Sei |K| = n und seien ~ek ∈ n die Basisvektoren ~ek = (0, . . . , 1, . . . , 0) für k = 1, . . . , n. Fasst man die Funktionen grr0 als n × n Matrizen Grr0 auf, so lässt sich die obige MaxSum Aufgabe in der Form max ∑ ~ex(r) · Grr0 ·~ex(r0 ) b x∈A (R,K) (r,r 0 ) schreiben. Wir führen die neue Basis~sk ∈ n , k = 1, . . . , n ein, die durch~sk = (0, . . . , 1, . . . , 1) definiert wird. Der Zusammenhang zwischen beiden Basen wird durch die linearen Operatoren 1 0 0 ... 0 1 0 0 ... 0 0 1 1 0 . . . 0 und D = L−1 = −1 1 0 . . . 0 0 L= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 1 ... 1 0 0 0 . . . −1 1 b beschrieben: ~sk = L ·~ek und ~ek = D ·~sk . Die zu L inverse Matrix D stimmt dabei mit der weiter oben eingeführten Ableitung überein. In der neuen Basis hat die MaxSum Aufgabe die Form max ∑ ~sx(r) · Hrr ·~sx(r ) , 0 x∈A (R,K) (r,r 0 ) 0 wobei wir DT Grr0 D mit Hrr0 bezeichnet haben. Schreibt man dies in Koordinaten aus und berücksichtigt dabei, dass die letzte Komponente aller Basisvektoren mit 1 übereinstimmt, so erhält man n o n−1 n−1 max ∑ ∑ Hrr0 (k, k0 ) sr (k) sr0 (k0 ) + ∑ ∑ qr (k) sr (k) s (r,r 0 ) k,k0 r k Die linearen Terme entstehen aus Termen der Form Hrr0 (k, n)sr (k)sr0 (n), d.h. es gilt ∑ qr (k) = Hrr0 (k, n). r 0 : (r,r 0 )∈E Da die Komponenten der Vektoren ~s nur die Werte 0 oder 1 annehmen, kann man weiterhin sr (k)sr0 (k0 ) auch in der Form min sr (k), sr0 (k0 ) schreiben. Somit entsteht die zur ursprünglichen MaxSum Aufgabe äquivalente diskrete Optimierungsaufgabe n n ∑ ∑ Hrr0 (k, k0 ) min sr (k), sr0 (k0 ) + ∑ ∑ qr (k)sr (k) (r,r 0 )∈E k,k0 sr (k) = 0, 1 ; c 0 sr (1) c c ... sr (n) c r k=1 1. Hierbei haben wir bereits n ← (n − 1) umbezeichnet. Im nächsten Schritt relaxiert man diese diskrete Aufgabe in eine kontinuierliche Optimierungsaufgabe, indem man für jeden Knoten r des Graphen die konvexe Hülle der n + 1 Vektoren ~s betrachtet P = {~σ ∈ b n |0 c σ(1) c ... c σ(n) c 1} . 4.2. MAXSUM PROBLEME MIT BIKONKAVEN FUNKTIONEN 61 Die dabei entstehende kontinuierliche Aufgabe ist somit auf dem konvexen Polyeder P|R| definiert und lautet (4.6a) ∑ ∑ Hrr (k, k0 ) min 0 (r,r 0 )∈E k,k0 (4.6b) ~σr ∈ P ∀r ∈ R. σr (k), σr0 (k0 ) + ∑ ∑ qr (k)σr (k) → max r k σ T HEOREM 4.2. Jede MaxSum Aufgabe mit vollständig geordneter Labelmenge K und bikonkaven Funktionen grr0 lässt sich äquivalent als konvexe Optimierungsaufgabe formulieren. B EWEIS . Wir beweisen zunächst die zweite Behauptung – dass die Aufgabe (4.6) (von unten) konvex ist, wenn die Funktionen g rr0 der MaxSum Aufgabe (4.5) bikonkav sind. Die Matrizen Hrr0 in (4.6) entsprechen den Matrizen D T Grr0 D, aus denen die letzte Zeile und letzte Spalte entfernt wurden. Da G rr0 bikonkav ist, sind folglich alle Matrixelemente von Hrr0 größer oder gleich Null. Nun ist aber das Minimum zweier (von unten) konvexer Funktionen auch konvex. Dasselbe gilt für lineare Kombinationen solcher Funktionen mit nichtnegativen Koeffizienten. Folglich ist (4.6) eine (von unten) konvexe Aufgabe, falls alle g rr0 bikonkav sind. Für den Nachweis der Äquivalenz beider Aufgaben genügt es zu zeigen, dass das Maximum der Zielfunktion von (4.6) immer auch auf einer der Ecken des Polyeders P|R| erreicht wird: Denn genau diese Ecken entsprechen ja den Labellings der MaxSum Aufgabe. Sei σ∗ Lösung der konvexen Optimierungsaufgabe und bezeichne kr∗ für jeden Knoten r ∈ R das höchste Label, für das σ ∗r (kr∗ ) < 1 gilt: kr∗ = max {k ∈ K | σ∗r (k) < 1} . Wir zeigen, dass dann σ mit σr (k) = ( 1 0 für k > kr∗ für k kr∗ d auch eine Lösung von (4.6) ist. Dazu fixieren wir alle σ r (k) = 1 für k > kr∗ und variieren alle anderen σr (k), indem wir sie mit einem α > 0 skalieren. Da alle betrachteten σr (k) kleiner als 1 sind, kann der Skalierungsfaktor α auch größer als 1 sein, ohne dass dabei der Definitionsbereich der Optimierungsaufgabe verlassen wird. Der Teil der Zielfunktion, der sich bei dieser Skalierung ändert, hat wieder dieselbe Form (4.6), nur mit dem Unterschied, dass die Summe über k, k 0 im „quadratischen“ Teil jetzt nur bis kr∗ bzw. kr∗0 läuft. Die uniforme Skalierung führt somit zur Multiplikation des variablen Teils der Zielfunktion mit dem Faktor α. Wäre er von Null verschieden, so würde die Zielfunktion entweder für α < 1 oder für α > 1 wachsen. Das ergäbe einen Widerspruch zu der Annahme, dass σ ∗ Lösung der Aufgabe ist. Folglich muss dieser Teil der Zielfunktion Null sein. Somit ist auch σ eine Lösung von (4.6), w.z.b.w. e 62 4. LÖSBARE MAXSUM PROBLEME Durch die Einführung zusätzlicher Variabler und Bedingungen lässt sich die konvexe Aufgabe in eine lineare Optimierungsaufgabe überführen: (4.7a) ∑ ∑ Hrr (k, k0 ) λrr (k, k0 ) + ∑ ∑ qr (k) σr (k) → max σ,λ 0 (r,r 0 )∈E k,k0 f σr (1) (4.7b) 0 (4.7c) λrr0 (k, k0 ) f f ... f 0 σr (k) σr (n) f r 1 λrr0 (k, k0 ) f k σr0 (k0 ) Wendet man auf die dazu duale Aufgabe einige elementare Umformungen an, so entsteht folgende lineare Optimierungsaufgabe in den Variablen y r (k) und frr0 (k, k0 ): (4.8a) ∑ ∑ max 0, qr (k) − yr (k) + yr (k − 1) − ∑ ∑ frr0 (k, k0 ) → min r k 0 (4.8b) | frr0 (k, k )| (4.8c) yr (k) g f r 0 k0 0 Hrr0 (k, k ), 0 frr0 (k, k ) = − fr0 r (k0 , k) 0 Sie entspricht einer MaxPreFluss Aufgabe. Deren Graph hat die Knotenmenge R × K und folgende gerichtete Kanten: Zwei Knoten (r, k) und (r 0 , k0 ) sind durch eine bidirektionale Kante verbunden, wenn (r, r 0 ) ∈ E ist. Die Kapazität beider Kanten ist Hrr0 (k, k0 ). Außerdem gibt es gerichtete Kanten vom Knoten (r, k) zum Knoten (r, k + 1). Ihre Kapazität ist ∞. Jeder Knoten (r, k) hat entweder einen Ladungsüberschuss (qr (k) > 0) oder Ladungsmangel (qr (k) < 0). Ziel der Aufgabe ist es, so viel wie möglich Ladungsüberschuss in die Knoten mit Ladungsmangel zu verteilen. Der Fluss entlang der Kante (r, k), (r 0 , k0 ) ist dabei f rr0 (k, k0 ). Für solche Aufgaben sind mehrere effiziente Algorithmen bekannt (siehe z.B. [2, 40]). Somit haben wir gezeigt, dass jede MaxSum Aufgabe mit vollständig geordneter Labelmenge K und bikonkaven Funktionen g rr0 effizient lösbar ist. Der Graph der Aufgabe kann dabei beliebig – z.B. auch vollständig verbunden sein. Zusammenfassung In dieser Arbeit haben wir verschiedene Aufgabentypen diskutiert, die im Rahmen der scharfen, fuzzy bzw. statistischen Formulierung der strukturellen Erkennung auftreten. Alle diese Aufgaben lassen sich unter Verwendung des Begriffs eines Semirings im algebraischen Sinne einheitlich formulieren und entsprechen dann einer (⊕, )-Aufgabe auf Labellings von Graphen. Trifft man keine einschränkenden Annahmen über den Graph (z.B. zyklenfrei, partieller m-Baum) und über die Funktionen, mit denen die „Bewertung“ eines Labellings definiert wird, so erweist sich die Aufgabe als NP-vollständig. Eines der wichtigsten Ziele dieser Arbeit war zu zeigen, dass geeignete Einschränkungen an die o.g. Funktionen zu anwendungsrelevanten Teilklassen dieser Probleme führen, die selbst für vollständig verbundene Graphen effizient und exakt lösbar sind. Dies ist insbesondere für die strukturelle Bilderkennung wichtig, da die hier auftretenden Graphen im Allgemeinen komplexer als Bäume oder partielle m-Bäume sind. Wir haben dafür den Weg der Einführung einer zusätzlichen Struktur auf der Labelmenge – in unserem Fall die eines algebraischen Verbandes – gewählt. Damit gelang es für die unscharfe Formulierung der Erkennung eine Teilklasse von Problemen zu finden, die mittels des bekannten Relaxation Labelling Algorithmus exakt und mit polynomialem Zeitaufwand lösbar ist. Für eine umfassendere Teilklasse wurde ein Algorithmus gefunden, der das Problem mittels der SternSimplex Transformation iterativ vereinfacht und schließlich in ein zur Ausgangsaufgabe äquivalentes triviales Problem überführt. Für eine analoge Teilklasse so genannter MaxSum Probleme, die u.a. in der statistischen Formulierung der strukturellen Erkennung auftreten, wurde gezeigt, dass sie sich äquivalent als konvexe Optimierungsaufgabe ausdrücken lassen. Deren duale Aufgabe erweist sich als MaxPreFluss Aufgabe und lässt sich effizient lösen. Obwohl wir in dieser Arbeit nicht auf die Probleme des Lernens der betrachteten Modelle eingegangen sind, fällt es nicht schwer einzusehen, dass obige Resultate eine notwendige Voraussetzung dafür sind. Versucht man etwa EM-Algorithmen für das Lernen struktureller Modelle zu verwenden, so zeigt sich, dass man in jeder Iteration eine Aufgabe zu lösen hat, die der Erkennung entspricht. Die in dieser Arbeit erzielten Resultate eröffnen somit neue Möglichkeiten und Fragestellungen für das Lernen struktureller Modelle. Ein unseres Wissens offenes Problem ist die Suche nach Teilklassen Gibbscher Wahrscheinlichkeitsverteilungen, für die polynomiale Algorithmen zur Berechnung marginaler Wahrscheinlichkeiten existieren. Diese Wahrscheinlichkeiten 63 64 ZUSAMMENFASSUNG werden bereits für die Erkennung benötigt, falls man im Gegensatz zu der heute oft verwendeten Maximum a-posteriori Entscheidung eine realistischere additive Kostenfunktion für Fehlentscheidungen zugrunde legt. Der Wunsch solche Teilklassen zu finden hat noch einen viel tieferen Grund: Damit könnte man untersuchen, ob die Verknüpfung der zwei schweren Aufgaben (a) Lernen der Gibbs Verteilung anhand von Stichproben. (b) Erkennung anhand der marginalen Wahrscheinlichkeiten durch eine äquivalente Entscheidungsfunktion ersetzt werden kann, die direkt über der Stichprobe definiert wird. Dies würde einen Durchbruch für intelligente lernende Systeme bedeuten, u.a. auch deswegen, weil damit die Notwendigkeit einer expliziten Modellierung entfiele. Die in dieser Arbeit betrachtete Formulierung von Erkennungsaufgaben, bei der die verborgene Beschreibung strukturierter Objekte durch Labellings auf Graphen ausgedrückt wird, kann in einem gewissen (nicht streng formalen) Sinne als Verallgemeinerung regulärer Grammatiken auf beliebige Graphen betrachtet werden. Ungeachtet der Mächtigkeit dieses Formalismus, entsteht hier der Wunsch auch kontextfreie Grammatiken entsprechend zu verallgemeinern. Dabei genügt es natürlich nicht, Definitionen logisch widerspruchsfrei auf beliebige Graphen zu erweitern. Der Wert jeder solchen Verallgemeinerung misst sich daran, ob es gelingt, wirklich neue bzw. bisher als kompliziert geltende Aufgaben der strukturellen Bilderkennung mittels solcher Formalismen zu lösen. Literaturverzeichnis [1] Alfred V. Aho, John E. Hopcroft, and Jeffrey D. Ullman, The design and analysis of computer algorithms, Addison Wesley, 1974. [2] Ravindra K. Ahuja, Thomas L. Magnanti, and James B. Orlin, Network flows, Prentice Hall, 1993. [3] Luis Alvarez, Rachid Deriche, Javier Sanchez, and Joachim Weickert, Dense disparity map estimation respecting image discontinuities: A PDE and scale-space based approach, Rapport de recherche 3874, INRIA, 2000. [4] M. B. Averintsev, Description of Markov random fields using Gibbs conditional probabilities, Probability Theory and Applications XVII (1972), no. 1, 21–35, (in Russian). [5] J. E. Besag, Spatial interaction and the statistical analysis of lattice systems, Journal of the Royal Statistical Society / B B36 (1974), 259–302. [6] Julian Besag, On the statistical analysis of dirty pictures, Journal of the Royal Statistical Society / B 48 (1986), no. 3, 259–302. [7] S. Bischoff, B. Flach, E. Kask, and S. Fuchs, Automatische Extraktion von festigkeits- und optisch relevanten Merkmalen aus Farbbildern von Schnittholzoberflächen, Technical Report TUD-FI00-03, TU–Dresden, Mai, 2000. [8] H.L. Bodlaender, A linear-time algorithm for finding tree-decompositions of small treewidth, SIAM J. Comput 25 (1996), no. 6, 1305–1317. [9] Y. Boykov, O. Veksler, and R. Zabih, Fast approximate energy minimization via graph cuts, Proc. of the 7. Intl. Conf. on Computer Vision, vol. 1, 1999, pp. 377–384. [10] Yuri Boykov, Olga Veksler, and Ramin Zabih, Markov random fields with efficient approximations, IEEE Conference on Computer Vison and Pattern Recognition, 1998, pp. 648–655. [11] C. Brock, B. Flach, E. Kask, and R. Osterland, Objektsegmentierung durch Textur- und Randextraktion, Mustererkennung 1996 (B. Jähne, P. Geißler, H. Haußecker, and F. Hering, eds.), Informatik aktuell, Springer Verlag, 1996, pp. 55–62. [12] R Chellappa and Jain A. (eds.), Markov random fields: Theory and application, Academic Press, Boston, 1993. [13] Boris Flach and Michail I. Schlesinger, A class of solvable consistent labeling problems, Advances in Pattern Recognition (F.J. Ferri, J.M. Inesta, A. Amin, and P. Pudil, eds.), Lecture Notes in Computer Science, vol. 1876, Springer Verlag, 2000, pp. 462–471. [14] Donald Geman, Stuart Geman, Christine Graffigne, and Ping Dong, Boundary detection by constrained optimization, IEEE Transactions on Pattern Analysis and Machine Intelligence 12 (1990), no. 7, 609–628. [15] Stuart Geman and Donald Geman, Stochastic relaxation, Gibbs distributions and the bayesian restoration of images, IEEE Transactions on Pattern Analysis and Machine Intelligence 6 (1984), no. 6, 721–741. [16] G. L. Gimmel’farb, Texture modeling by multiple pairwise pixel interactions, IEEE Transactions on Pattern Analysis and Machine Intelligence 18 (1996), 1110–1114. [17] D. M. Greig, B. T. Porteous, and A. H. Scheult, Exact maximum a posteriori estimation for binary images, Journal of the Royal Statistical Society B. 51 (1989), no. 2, 271–279. [18] Anupam Gupta and Eva Tardos, A constant factor approximation algorithm for a class of classification problems, ACM Symposium on Theory of Computing, 2000, pp. 652–658. [19] R. M. Haralik and L. Shapiro, Computer and robot vision, Addison Wesley, 1993. 65 66 LITERATURVERZEICHNIS [20] Robert A. Hummel and Steven A. Zucker, On the foundations of relaxation labeling processes, IEEE Transactions on Pattern Analysis and Machine Intelligence 5 (1983), no. 3, 267–286. [21] Thomas Ihringer, Allgemeine Algebra, Teubner Studienbücher Mathematik, B.G.Teubner, Stuttgart, 1993. [22] H. Ishikawa and D. Geiger, Segmentation by grouping junctions, Proceedings of IEEE Conference on Computer Vision and Pattern Recognition, 1998, pp. 125–131. [23] W. Tao J. Feng and H. Burkhardt, A neural network approach to the consistent labeling problem, Proc. of the IEEE Intern. Conf. on Neural Networks (San Francisco, CA,), no. II, March 1993, pp. 678–683. [24] Shigeru Katagiri (ed.), Handbook of neural networks for speech processing, Artech House, Boston, 2000. [25] Hannu Kauppinen and Olli Silven, A color vision approach for grading lumber, Selected papers from the 9th Scandinavian Conference on Image Analysis, 1995, pp. 367–370. [26] S. Kirpatrick, C.D. Gelatt, Jr., and M. Vecchi, Optimization by simulated annealing, Science 220 (1983), 671–680. [27] J. Kittler and E. R. Hanckock, Combining evidence in probabilistic relaxation, International Journal of Pattern Recognition and Artificial Intelligence 3 (1989), no. 1, 29–51. [28] V. I. Kovalevski, Shape in picture, ch. A New Concept for Digital Geometry, pp. 37–51, Springer, 1994. [29] Jouko Lampinen and Seppo Smolander, Self-organizing feature extraction in recognition of wood surface defects and color images, International Journal of Pattern Recognition and Artificial Intelligence 10 (1996), no. 1. [30] M. Pelillo and A.M. Fanelli, Autoassociative learning in relaxation labeling networks, PRL 18 (1997), no. 1, 3–12. [31] Patrick Perez and Fabrice Heitz, Restriction of a Markov random field on a graph and multiresolution image analysis, Rapport de Recherche 2170, INRIA, 1994. [32] J. C. Picard and H. D. Ratcliff, Minimum cuts and related problems, Networks 5 (1975), 357– 370. [33] Azriel Rosenfeld, Robert A. Hummel, and Steven A. Zucker, Scene labeling by relaxation operations, IEEE Transactions on Systems, Man, and Cybernetics 6 (1976), no. 6, 420–433. [34] Dmitrij Schlesinger, Privatmitteilung. [35] M. I. Schlesinger and B. Flach, Monotone conjuctive structures of second order, Proc. of UKROBRAZ-98, Kiev (Taras Vintsiuk, ed.), 1998, pp. 29–33. [36] , Some solvable subclasses of structural recognition problems, Czech Pattern Recognition Workshop 2000 (Tomaš Svoboda, ed.), 2000, invited paper, pp. 55–61. [37] M.I. Schlesinger, Mathematical methods of image processing, Naukova Dumka, Kiev, 1989, (in Russian). [38] Daniel Sharstein, View synthesis using stereo vision, Lecture Notes in CS, Springer, 1999. [39] Xin Tian, Dave Cown, Peter Bayne, and Scott Mitchell, Timbersee–a new lumber grading system for automated feature extraction and defect recognition using texture analysis, Proc. of 3rd. International Wood Scanning Seminar, Sweden, 1998. [40] Jan van Leeuwen, Handbook of theoretical computer science, vol. A, ch. Graph Algorithms, pp. 525–632, Elsevier, Amsterdam, 1992. [41] D.L. Waltz, Generating semantic descriptions from drawings of scenes with shadows, Technical Report A1271, MIT, 1972. [42] G. Wendland and R. Fischer, Self learning algorithms for online image segmentation on wooden surfaces, Proc. of 3rd. International Wood Scanning Seminar, Sweden, 1998.