Mehrkriterielle Optimierung mit Metaheuristiken

Slides:



Advertisements
Ähnliche Präsentationen
Christian Scheideler SS 2009
Advertisements

Eine dynamische Menge, die diese Operationen unterstützt,
Programmierung 1 - Repetitorium
Diskrete Mathematik I Wintersemester 2007 A. May
Schnelle Matrizenoperationen von Christian Büttner
Übungsbetrieb Di neuer Raum HZO 60
Claudio Moraga; Gisbert Dittrich
Prof. Dr. W. Conen 15. November 2004
7. Natürliche Binärbäume
R. Der - Vorlesung Algorithmen und Datenstrukturen (Magister)
Kapitel 3: Listen Lineare Liste: endliche Folge von Elementen eines Grundtyps (n>=0), leere Liste falls n=0 Listenelemente besitzen.
WS Algorithmentheorie 13 - Kürzeste (billigste) Wege Prof. Dr. Th. Ottmann.
WS Algorithmentheorie 05 - Treaps Prof. Dr. Th. Ottmann.
Dynamische Programmierung (2) Matrixkettenprodukt
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (23 – Sortieren vorsortierter Daten) Prof. Th. Ottmann.
Halbzeit: Kurze Wiederholung
Sortieren vorsortierter Daten
Vorlesung Informatik 2 Algorithmen und Datenstrukturen Halbzeit: Was haben wir bisher gelernt? Prof. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (06 – Reduktion endlicher Automaten) Prof. Dr. Th. Ottmann.
WS Algorithmentheorie 08 – Dynamische Programmierung (2) Matrixkettenprodukt Prof. Dr. Th. Ottmann.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 16 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Hauptseminar Automaten und Formale Sprachen
§17 Produkte und Quotienten von Vektorräumen
Effiziente Algorithmen
Computational Thinking Suchen und Sortieren [Ordnung muss sein…]
Einführung in die Programmierung
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Mehrkriterielle Optimierung mit Metaheuristiken
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Mehrkriterielle Optimierung mit Metaheuristiken
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Praktische Optimierung
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Fundamente der Computational Intelligence (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering Wintersemester.
Fundamente der Computational Intelligence (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering Wintersemester.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Ausgewählte Kapitel der Computational Intelligence (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering Sommersemester.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Mehrkriterielle Optimierung mit Metaheuristiken
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung Wintersemester 2013/14 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Programmierung
Chair of Software Engineering Einführung in die Programmierung Prof. Dr. Bertrand Meyer Lektion 15: Topologisches Sortieren Teil 1: Problemstellung und.
Einführung in die Programmierung Prof. Dr. Bertrand Meyer
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Fundamente der Computational Intelligence (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering Wintersemester.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Analyse der Laufzeit von Algorithmen
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Datenstrukturen für den Algorithmus von.
Gliederung der Vorlesung
Vorlesung AVL-Bäume/Algorithmen-
Vorlesung AVL-Bäume/Algorithmen-
Praktische Optimierung
 Präsentation transkript:

Mehrkriterielle Optimierung mit Metaheuristiken Sommersemester 2006 Mehrkriterielle Optimierung mit Metaheuristiken (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering (LS XI) Fachgebiet Computational Intelligence

Kapitel 2: Grundlagen Definition 2.1: Binäre Relation R  A x A, wobei A eine Menge. Binäre Relation auf A heißt reflexiv, falls a  A: (a,a)  R, irreflexiv, falls a  A: (a,a)  R, symmetrisch, falls a,b  A: (a,b)  R  (b,a)  R asymmetrisch, falls a,b  A: (a,b)  R  (b,a)  R antisymmetrisch, falls a,b  A: (a,b)  R und (b,a)  R  a = b transitiv, falls a,b,c  A: (a,b)  R und (b,c)  R  (a,c)  R total (oder konnex), falls a,b  A: (a,b)  R oder (b,a)  R ■ Rudolph: MOMH (SS 2006) ● Kap. 2: Grundlagen

Kapitel 2: Grundlagen Definition 2.2: Binäre Relation auf A heißt Quasiordnung (oder Präordnung)  reflexiv, transitiv Äquivalenzrelation  reflexiv, transitiv, symmetrisch partielle Ordnung (oder Halbordnung)  reflexiv, transitiv, antisymmetrisch lineare Ordnung  totale Halbordnung strenge partielle Ordnung  irreflexiv, transitiv ■ Rudolph: MOMH (SS 2006) ● Kap. 2: Grundlagen

Kapitel 2: Grundlagen Definition 2.3: Sei A eine Menge und R eine Relation über A. Das Paar (A, R) heißt quasigeordnete Menge, falls R Quasiordnung halbgeordnete Menge, falls R Halbordnung total oder linear geordnete Menge, falls R lineare Ordnung ■ Rudolph: MOMH (SS 2006) ● Kap. 2: Grundlagen

Kapitel 2: Grundlagen Satz 2.1: Sei (A, ≼) eine quasigeordnete Menge. (1) Falls a ≺ b : a ≼ b und nicht b ≼ a, dann ≺ strenge Halbordnung. (2) Falls a ~ b : a ≼ b oder b ≼ a, dann ~ Äquivalenzrelation. Beweis: ad (2): ~ reflexiv (weil ≼ reflexiv) und symmetrisch (durch Definition). Sei a,b,c  A: a ~ b und b ~ c. Aus Transitivität von ≼ folgt: a ≼ b ≼ c  a ≼ c und c ≼ b ≼ a  c ≼ a, so dass aus a ≼ c und c ≼ a endlich a ~ c folgt. ad (1): ≺ irreflexiv (durch Definition). ■ Rudolph: MOMH (SS 2006) ● Kap. 2: Grundlagen

Kapitel 2: Grundlagen Definition 2.4: Sei (A, ≼) eine halbgeordnete Menge und ≺ strenge Halbordnung gemäß Satz 1. Falls a ≺ b für gewisse a,b  A, dann wird b von a dominiert. Verschiedene a,b  A sind vergleichbar, falls entweder a ≺ b oder b ≺ a; sonst sind sie unvergleichbar (symbolisiert durch a || b). (A, ≼) heißt Kette, falls alle verschiedene a,b  A vergleichbar. (A, ≼) heißt Antikette, falls alle verschiedene a,b  A unvergleichbar. ■ Bemerkungen: Kette = linear geordnete Menge (R, ≤) ist Kette (Rd, ≼) mit x ≼ y : 8 i: xi ≤ yi und x ≠ y ist keine Kette für d > 1. ■ und aber Bsp: Rudolph: MOMH (SS 2006) ● Kap. 2: Grundlagen

Kapitel 2: Grundlagen Definition 2.5: Sei (A, ≼) eine halbgeordnete Menge und ≺ strenge Halbordnung gemäß Satz 1. a*  A minimales Element falls kein a  A existiert mit a ≺ a*. M(A,≼) bezeichnet Menge der minimalen Elemente. M(A,≼) vollständig, falls a  A existiert a*  M(A,≼) mit a* ≼ a. ■ Bemerkungen: minimale Elemente haben gewisse „Optimalitätseigenschaft“ M(A,≼) vollständig, falls A endlich (und für viele andere Fälle) ■ Rudolph: MOMH (SS 2006) ● Kap. 2: Grundlagen

Kapitel 2: Grundlagen Laufzeit: O(n2) Wie finden wir Menge der minimalen Elemente M(A,≼) ? Annahme: A sei endlich mit n = |A| Algorithmus 2.1: A* = { } // am Ende: A* = M(A,≼) for (i = 1; i ≤ |A|; i++) { for (j = 1; j ≤ |A|; j++) if (a[j] ≼ a[i]) break; if (j > |A|) then A* = A*  { a[i] } } Laufzeit: O(n2) → geht das schneller? Nein! In dieser Allgemeinheit nicht! Rudolph: MOMH (SS 2006) ● Kap. 2: Grundlagen

Kapitel 2: Grundlagen Beschleunigung möglich, falls Halbordnung bestimmte Struktur hat! Halbordnung im Rd für d > 1: a ≼ b , 8 i = 1, …, d: ai ≤ bi Æ a  b Beispiel: Algorithmus 1 6 5 3 7 2 1 8 9 4 Laufzeit: O(n2) wie gehabt! erste Verbesserung: falls a[i] ≼ a[j] dann Element j aus Liste löschen → keine Verbesserung der worst case Schranke Rudolph: MOMH (SS 2006) ● Kap. 2: Grundlagen

Kapitel 2: Grundlagen besser: Beispiel: Algorithmus 2.2 6 5 3 7 2 1 8 9 4 sortieren bzgl. 1. Komponente (bei Gleichheit bzgl. 2. Komponente) O(n log n) 1 2 3 4 5 6 7 8 9 wähle 2. Komponente des 1. Elements lösche alle Elemente rechts davon bis 2. Komponente kleiner dieses Element wird neues Auswahlelement (n) Rudolph: MOMH (SS 2006) ● Kap. 2: Grundlagen

Kapitel 2: Grundlagen Definition 2.6 Sei x, y 2Rd. x heisst lexikographisch kleiner als y, wenn gilt: x ¹lex y :, Entweder xi < yi oder xi = yi Æ (xi+1, …, xd) ¹lex (yi+1, … yd). x(1) , x(2) , …, x(n) 2Rd heisst lexikographisch geordnet , x(1) ¹lex x(2) ¹lex … ¹lex x(n) ■ Rudolph: MOMH (SS 2006) ● Kap. 2: Grundlagen

/ Kapitel 2: Grundlagen Lemma 2.1 Sei x(1) , x(2) , …, x(n) lexikographisch geordnet. 8 i = 1, …, n-1 : 9 j > i: x(j) ¹ x(i) . Beweis: Folgt unmittelbar aus lexikographischer Sortierung. ■ / Lemma 2.2 Sei X = { x(1) , x(2) , …, x(n) } lexikographisch geordnet. Dann ist x(1) 2 M(X, ¹). Beweis: Folgt unmittelbar aus Lemma 2.1. ■ Rudolph: MOMH (SS 2006) ● Kap. 2: Grundlagen

Kapitel 2: Grundlagen Korrektheit von Algorithmus 2.2 für d = 2 Sei X = { x(1) , x(2) , … , x(n) } lexikographisch geordnet. Sei i 2 { 1, …, n } derart, dass x(i) 2 M(X, ¹). → Wg. Lemma 2.2 können wir mit i = 1 beginnen. Es gilt 8 j: j > i: x2(i) < x2(j) oder x2(i) = x2(j) oder x2(i) > x2(j)  x(i) ¹ x(j) da 1. Komponente ≤  x(i) ¹ x(j) Ç x(i) = x(j) wenn 1. Komp. < wenn 1. Komp. =  x(i) k x(j) da 1. Komponente < und 9 k > j: x(k) ¹ x(j) (Lemma 2.1)  x(j) 2 M(X, ¹) Rudolph: MOMH (SS 2006) ● Kap. 2: Grundlagen

Kapitel 2: Grundlagen Lemma 2.3: Sei Cd(n) max. Anzahl Vergleiche, um M(V, ≤) mit finitem V ½ Rd zu bestimmen.. Es gilt: Cd-1(n) ≤ Cd(n) für d ≥ 2 und n = |V| < 1. Beweis: z.Z.: Berechnung für (d-1)-dim. Menge nicht schwerer als für d-dim. Menge! - Sei U ½ Rd-1 mit |U| = n ) Cd-1(n) Vergleiche nötig für M(U, ≤). Erweitere jedes u 2 U mit weiterer Komponente mit demselben Wert w ) v =def (u, w)‘ = (u1, u2, …, ud-1, w)‘ 2 V. - Offensichtlich: u 2 M(U, ≤) , v = (u, w) 2 M(V, ≤), da w = const. für alle u. - Wir brauchen Cd(n) Vergleiche für M(V, ≤) und bekommen M(U, ≤) durch Streichen der zusätzlichen Komponente w ) wir erhalten M(U, ≤) in höchstens Cd(n) Vergleichen! ) Cd-1(n) ≤ Cd(n) ■ Rudolph: MOMH (SS 2006) ● Kap. 2: Grundlagen

/ Kapitel 2: Grundlagen d > 2, n = 2q, q 2N Algorithmus 2.3 R = { x(1), …, x(n/2) }, S = { x(n/2+1), …, x(n) } und jeweils lex. sortieren R* = M(R, ¹), S* = M(S, ¹) T* = { s 2 S* | 9 r 2 R*: r ¹ s } Ausgabe: R* [ T* / Cd(n) ≤ 2 Cd(n/2) + Fd (n/2, n/2) Schritt 2 Schritt 3 Rudolph: MOMH (SS 2006) ● Kap. 2: Grundlagen

Kapitel 2: Grundlagen d > 2, n = 2q, q 2N Kung et al. (1975), JACM 22(4):469-476 Rudolph: MOMH (SS 2006) ● Kap. 2: Grundlagen