Diplom-/Bachelor- /Masterarbeit

"Lineare Algebra Ansätze für die effiziente Berechnung von Gröbnerbasen"



Allgemeine Beschreibung und Ziele:


Zahlreiche Probleme in der Wissenschaft und der Industrie (insbesondere geometrische Probleme, z. B. inverses kinematisches Problem für einen Roboter oder Feststellung der Proteinfunktionen aus der geometrischen Form der Moleküle) lassen sich auf die Lösung algebraischer Gleichungssysteme reduzieren. Im Gegensatz zu linearen Gleichungssystemen, für die wohlbekannte Lösungsverfahren mit  linearen bis kubischen Laufzeiten seit Jahrhunderten existieren, wurde ein Algorithmus für die Analyse und Lösung nichtlinearer Gleichungssysteme erst vor ca. 40 Jahren entdeckt (Buchberger-Algorithmus). Das zentrale Element dabei ist der Begriff der Gröbnerbasis. Wie von E. Mayr und A. Meyer gezeigt wurde, kann die Laufzeit der Gröbnerbasenberechnung im Worst Case doppeltexponentiell in Abhängigkeit von der Anzahl der Variablen steigen, was bestimmte Gleichungssysteme unlösbar macht. Allerdings scheinen  solche doppeltexponentiell wachsende Berechnungskosten nur für bestimmte „pathologische“ Fälle vorhanden zu sein. Man hofft nämlich, dass viele praxisrelevante Probleme sich viel effizienter behandeln lassen, vorausgesetzt, eine effiziente Implementierung des modifizierten Buchberger-Algorithmus ist vorhanden.Das Ziel dieser Arbeit ist die Weiterentwicklung bereits vorhandener Software, und, insbesondere, die Konzeption möglichst effizienter Implementierung eines modernen Ansatzes für Gröbnerbasenberechnung, der auf der Linearen Algebra basiert, und sich aufgrund zu groß werdender Matrizen nicht direkt implementieren lässt.

Aufgabensteller:

Prof. Dr. Ernst W. Mayr

Betreuer:

Dmytro Chibisov    

Genaue Beschreibung der Ziele:

Ähnlich wie die Gausssche Eliminationsprozedur im Falle linearer Gleichungen, eliminiert auch der Buchberger-Algorithmus die Unbekannten, indem bestimmte Operationen mit Termen und Koeffizienten für je zwei Polynome durchgeführt werden. Die ursprünglichen sowie resultierenden Polynome werden gespeichert und immer neue Paare von Polynomen werden iterativ solange gebildet, bis die gespeicherten Polynome eine Gröbnerbasis bilden.Man kann allerdings zeigen, dass erstens die Reihenfolge der Betrachtung der Paare kritisch für die Laufzeiten des Verfahrens ist und zweitens der größte Anteil der Paare,mit denen man rechnet, überflüssig ist, sodass die Prozessorzeit umsonst verschwendet wird(so genannte Reduktionen zu Null). Heutzutage ist man weit davon entfernt, die optimale Reihefolge der Berechnungen mit vertretbaren Kosten berechnen zu können. Allerdings wurden einige heuristische Strategien vorgeschlagen, die in vielen Fällen zur deutlichen Effizienzsteigerung führen.Was das Problem der Erkennung der überflüssigen Berechnungen betrifft, wurden vor kurzem einige interessante Ideen für die effiziente Gröbnerbasenberechnung vorgeschlagen, die auf der Linearen Algebra basieren (ursprünglich eingeführt von Lazard, und später modifiziert und realisiert in so genannten Faugere-Algorithmen F4 and F5).  Indem man das Problem der Gröbnerbasenberechnung geschickt auf die Triangulierung bestimmter Matrizen transformiert, wird es möglich die überflüssigen Berechnungen zu vermeiden. Jedoch führt die Senkung der Berechnungszeit auf diese Art zum Wachstum des notwendigen Speicherplatzes, denn die Matrizen werden zu groß und überschreiten schnell jede vorhandene Speicherkapazität. Der Ausweg bietet sich in der Kompression der Matrizen. Die Matrixkompression in einer oder anderen Form reduziert den notwendigen Speicherplatz, macht den Algorithmus jedoch komplizierter. Um den Lineare Algebra Ansatz zu bewerten und einen vernünftigen Kompromiss zwischen Speicher- und Prozessorzeitverbrauch zu erreichen, soll in der Diplomarbeit dieser Ansatz implementiert werden. Dabei wird der Wert insbesondere auf spezielle Formen der Matrizen gelegt, die bei Behandlung verbreiteter praxisrelevanter geometrischer Probleme entstehen.Nach der Evaluierung und Entwurf der Datenstrukturen und Algorithmen für effiziente Lineare Algebra soll zuerst die vorhandene Gröbnerbasen-Software in C++ unter der Berücksichtigung neuer Ansätze erweitert werden. Damit können im abschließenden Teil der Arbeit experimentelle Berechnungen durchgeführt und Laufzeitergebnisse mit verbreiteter Software für Gröbnerbasen  (z.B. Maple oder CoCoA) verglichen werden. Die besonders reizvolle Herausforderung kann dabei sein, zum Beispiel, nicht nur zu versuchen, existierende Systeme im Bezug auf die Laufzeit zumindest für spezielle Beispiele zu schlagen, sondern vielmehr einige Probleminstanzen zu berechnen, die bis jetzt wegen der oben erklärten Effizienzhindernisse von niemandem berechnet werden konnten.    

Voraussetzungen:

Interesse an mathematischen Fragestellungen und Algorithmen.
Erfahrung mit C/C++ und Computer Algebra Systemen (z.B. Maple) vorteilhaft, aber nicht zwingend.