• Keine Ergebnisse gefunden

Hochschule f¨ ur Technik und Wirtschaft

N/A
N/A
Protected

Academic year: 2022

Aktie "Hochschule f¨ ur Technik und Wirtschaft"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Hochschule f¨ ur Technik und Wirtschaft

Studiengang Praktische Informatik Prof. Dr.–Ing. Damian Weber

Effiziente Algorithmen – ¨ Ubung 5

Aufgabe 1 (Graph Coloring)

Ziel der ¨Ubung ist die effiziente Implementierung der beiden vorgestellten Algorith- men zum Graphenf¨arbungsproblem

• das Greedy–Verfahren (im folgenden GCGREEDY): zuf¨allige Reihenfolgen (=Permutationen) von Knoten, es wird jeweils die kleinste Farbe eingetragen, die keinen Konflikt verursacht

• die iterative Berechnung von Independent Sets (im folgenden GCIS): jedes Independent Set wird mit einer neuen Farbe gef¨arbt

Ansatzpunkte f¨ur praktische Untersuchungen:

• alle zu den folgenden Punkten gesammelten Erkenntnisse legen Sie zweckm¨assi- gerweise in einer separaten ASCII-Datei ab

• messen Sie die Laufzeiten beider Implementierungen (1000 Knoten, Kanten- wahrscheinlichkeit 0.5)

• l¨aßt sich beim GCGREEDY durch wiederholte Ausf¨uhrung auf unterschiedli- chen Knotenreihenfolgen die Qualit¨at der Ausgabe erh¨ohen? Untersuchen Sie, wie oft man GCGREEDY sinnvollerweise ablaufen l¨aßt, bis sich das Ergebnis kaum noch verbessert.

• W¨ahlen Sie beim GCGREEDY die Knoten in absteigenden Knotengraden aus (qsort benutzen). Erh¨alt man manchmal/immer/fast immer ein qualitativ bes- seres Ergebnis? Welchen Preis zahlt man in der Laufzeit hierf¨ur?

• Sollte man bei den absteigenden Knotengraden nur die noch nicht gef¨arbten Knoten in Betracht ziehen und daher nach jeder F¨arbung eines Knotens neu sortieren?

Seite 1 von 2

(2)

• Implementieren Sie GC-IS unter Zuhilfenahme Ihrer bestehenden Independent–

Set–Implementierung.

• w¨ahlen Sie selbst Spezialf¨alle aus, an denen die beiden Algorithmen verglichen werden k¨onnen

– Anzahl Knoten mit maximalem Grad festlegen, den Rest durch Kanten- wahrscheinlichkeit belegen oder

– einen festen Knotengrad f¨ur alle Knoten vorgeben

• testen Sie die Verfahren an den bekannten Testf¨allen unter http://mat.gsia.cmu.edu/COLOR/instances.html

Seite 2 von 2

Referenzen

ÄHNLICHE DOKUMENTE

d) F¨ uhren Sie auf obigem Graphen Breadth–First–Search aus aus, begin- nend mit Knoten 1. Finden Sie die k¨ urzesten Wege inklusive Distanzen von Knoten 1 zu

Ziffern, Blanks und Sonderzeichen wurden nicht verschl¨ usselt; außerdem wurde die Groß–/Kleinschreibung beibehalten (Beispiel: wird der Buchstabe x zu y verschl¨ usselt, dann auch X

Implementieren Sie eine Klasse znz, die das Rechnen modulo n vereinfacht; diese Klasse sollte f¨ ur alle Instanzen das gleiche n verwenden. Es sollte so sein, daß man dieses n

• Sie k¨onnen die Primzahlerzeugung dahingehend beschleunigen, daß Sie einen Primzahltest f¨ ur q erst dann anwenden, wenn Sie sicher sind, daß q nicht durch kleine Primzahlen

• Geben Sie alle L¨ osungsbl¨ atter ab und versehen Sie jedes mit Ihrem Namen und Ihrer Matrikelnummer. • Die zur Verf¨ ugung stehende Zeit betr¨ agt

Ziffern, Blanks und Sonderzeichen wurden nicht verschl¨ usselt; außerdem wurde die Groß–/Kleinschreibung beibehalten (Beispiel: wird der Buchstabe x zu y verschl¨ usselt, dann auch X

Studiengang Kommunikationsinformatik Studiengang Praktische

Studiengang Kommunikationsinformatik Studiengang Praktische Informatik Prof. Hierzu definiere man eine Klasse RSA, die als Attribute die BigInteger–Werte n, p, q, e, d, phi und die