Lösungshinweise zu Blatt 1 INTA – WS05/06. Der Baum zum Zustandsgraphen GE OBE DUI GE D MH D OB MH DUI E DOBMH OBE DUIGED MH DGE MH EDUI D OBMH DGE MH.

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmen und Datenstrukturen
Advertisements

Fashion Catalog(Modekatalog) Austin Caryl Zach Pierson Austin Caryl Zach Pierson.
Vortrag von Stephanie Weirauch Jens Pleger Peter Jancke Frank Wejmelka
Randomisierte Algorithmen Präfix Suche und Konsistentes Hashing
Breitensportangebot 2009 Kurse im Tiefwasser: (25m und 50m Becken) Speedo-Aqua-Fitness Di:08:30 Uhr- 09:15 Uhr Fr. van Koll (K2) 25m Halle Di:09:30 Uhr-
Falls Algorithmen sich selbst rekursiv aufrufen, so kann ihr Laufzeitverhalten bzw. ihr Speicherplatzbedarf in der Regel durch eine Rekursionsformel (recurrence,
Eine dynamische Menge, die diese Operationen unterstützt,
GIN 2 – Vorlesung zu Hashing, 31. Mai 2005 Prof. Dr. W. Conen FH Gelsenkirchen SS 2005.
GIN2 SS05 Prof. Dr. W. Conen, Nullsummen-Spiele - Min-Max-Suche - Alpha-Beta-Pruning (späterer Termin)
Proof-Planning. Übersicht Einleitung Proof-Planning Bridge-Taktiken Repräsentation des Gegenspiels Planungsalgorithmus Suchen mit Histories.
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
INT A – Vorlesung, Thema: Suche Prof. Dr. Wolfram Conen
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Manfred Thaller, Universität zu Köln Köln 22. Januar 2009
Einführung in die Informationsverarbeitung Teil Thaller Stunde VI: Wege und warum man sie geht Graphen. Manfred Thaller, Universität zu Köln Köln.
Problemlösen durch Suchen
Informierte Suche.
Suchbäume Richard Göbel.
Sortierverfahren Richard Göbel.
FH-Hof Künstliche Intelligenz - Suchbäume Richard Göbel.
Polymorphie (Vielgestaltigkeit)
WS Algorithmentheorie 08 – Dynamische Programmierung (3) Konstruktion optimaler Suchbäume Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (17 – Bäume: Grundlagen und natürliche Suchbäume) Prof. Th. Ottmann.
Klausur „Diskrete Mathematik II“
Algorithmen und Komplexität
Einfügen am Ende der Liste Vorher: Nachher:. Einfügen am Ende der Liste //Klasse Knoten public Knoten hintenEinfuegen(Datenelement dneu) { nachfolger.
Die Methode public Knoten einfuegenVor (Datenelement dNeu, Datenelement dVergleich) public Knoten einfuegenVor(Datenelement dNeu, Datenelement dVergleich){
für rechtwinklige Dreiecke
Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Teil I: Uninformierte Suche
Lösungshinweise zu Blatt 2
Vortrag über Graphen Von Jörg Hendricks.
20:00.
Warum Berufsunfähigkeitsversicherungen mit verzinslicher Ansammlung oder Beitragsrückgewähr keinen Sinn machen.
„Küsse deine Freunde“ – FlexKom-App teilen
Zusatzfolien zu B-Bäumen
Wiederholung: Am kürzeren Ende der Sonnenallee
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation
Information und Kommunikation
Anwendungen der Planung
Projekt 3D-MODELLIEREN © 2000 Zehentner Stefan / Trixl Thomas II. MB der HTL Saalfelden.
Hallo Ich habe eine Linie mit den Auto-Forms gezeichnet. Diese Linie soll sich um ihren linken Äußeren Punkt drehen, um etwa 40 Grad. Das Problem ist nur.
PROCAM Score Alter (Jahre)
Symmetrische Blockchiffren DES – der Data Encryption Standard
Retuschen.ppt Die folgende Schau zeigt die Möglichkeiten, mit PhotoDraw Digitalbilder zu retuschieren. Vergleichen Sie jeweils zwei Bildpaare durch fleissiges.
MINDREADER Ein magisch - interaktives Erlebnis mit ENZO PAOLO
Fortsetzung folgt jeweils nach einem Mausklick Zwei Nonnen verlassen ihren Konvent, um Kekse zu verkaufen. Eine von ihnen ist bekannt als Schwester Mathematik.
Gruppe: 31 Grundlagen wissenschaftlichen Arbeitens Algorithmen und Datenstrukturen Iris Studeny.
Wir geben jetzt den Löffel ab ;-) oder : lasst uns mal der Ulla helfen.
Fortsetzung folgt jeweils nach einem Mausklick. Zwei Nonnen verlassen ihren Konvent, um Kekse zu verkaufen. Eine von ihnen ist bekannt als Schwester Mathematik.
SFZ FN Sj. 13/14 Python 3 Rekursion Inf K1/2 Sj 13/14
Kd2 Versuchsübersicht: „Wir zaubern mit Kraft“
Analyse der Laufzeit von Algorithmen
Lernplan BMI6C Physik für den
Manfred Thaller, Universität zu Köln Köln 11. Dezemberr 2014
1 Medienpädagogischer Forschungsverbund Südwest KIM-Studie 2014 Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
Fortsetzung folgt jeweils nach einem Mausklick Zwei Nonnen verlassen ihren Konvent, um Kekse zu verkaufen. Eine von ihnen ist bekannt als Schwester Mathematik.

Der A*-Algorithmus.
Lösungshinweise zu den Suchalgorithmen. Der Baum zum Zustandsgraphen GE OBE DUI GE D MH D OB MH DUI E DOBMH OBE DUIGED MH DGE MH EDUI D OBMH DGE MH DUIEE.
Binärbäume.
ZAP 2014 Anleitung mit Lösungen
Programmiersprachen II Vorbesprechung Klausur Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 2 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 1 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
 Präsentation transkript:

Lösungshinweise zu Blatt 1 INTA – WS05/06

Der Baum zum Zustandsgraphen GE OBE DUI GE D MH D OB MH DUI E DOBMH OBE DUIGED MH DGE MH EDUI D OBMH DGE MH DUIEE EOB DGE MH GEDUI GEDUI K0 K1K2 K7 K18 K46 K45 K44 K3K4K5K6 K17K16K15K14K13K12K11K10K9K8 K19K20K21 K22 K24 K26 K27 K29 K23K25 K28 K30 K31 K32K33 K34 K35 K36 K37 K38 K39 K41K42K43 K40 (Sie durften die Knoten unter D‘s, also z.B. K19 und K20, weglassen. In einer eventuellen Klausuraufgabe werde ich einen solchen Suchbaum vorgeben und dann sagen, welche Knoten Zielzustände repräsentieren. Da kann es dann vorkommen, dass sich unterhalb dieser Knoten noch weitere Knoten befinden. Diese müssen sie dann in den ver- schiedenen Suchverfahren jeweils ignorieren (also am besten gleich durchstreichen), so, wie ich es in den folgenden Lösungen auch getan habe. Schauen sie sich bitte alle Lösungen genaun an und rechnen sie selbst nochmals einige Beispiele (die sie leicht selber finden können – wie gesagt, es reicht, einen bewerten Baum vorzugeben.)

Tiefensuche mit Wiederholungen GE OBE DUI GE D MH D OB MH DUI E DOBMH OBE DUIGED MH DGE MH EDUI D OBMH DGE MH DUIEE EOB DGE MH GEDUI GEDUI K0 K1K2 K7 K18 K46 K45 K44 K3K4K5K6 K17K16K15K14K13K12K11K10K9K8 K19K20K21 K22 K24 K26 K27 K29 K23K25 K28 K30 K31 K32K33 K34 K35 K36 K37 K38 K39 K41K42K43 K40 Tiefensuche (mit Wiederholungen, alle Lösungen): K0,K1,K3,K8,K9,K21,K22,K10,K23,K24,K4,K11,K25,K26,K12,K27,K28, K29,K2,K5,K6,K15,K36,K37,K38,K16,K39,K40,K41,K7,K17,K42,K43,K18,K44,K45,K46 Anmerkungen: Achtung, Knoten mit Zustand D werden nicht expandiert, also folgt nach K8 K9 und nach K5 K6.

Breitensuche mit Wiederholungen GE OBE DUI GE D MH D OB MH DUI E DOBMH OBE DUIGED MH DGE MH EDUI D OBMH DGE MH DUIEE EOB DGE MH GEDUI GEDUI K0 K1K2 K7 K18 K46 K45 K44 K3K4K5K6 K17K16K15K14K13K12K11K10K9K8 K19K20K21 K22 K24 K26 K27 K29 K23K25 K28 K30 K31 K32K33 K34 K35 K36 K37 K38 K39 K41K42K43 K40 Breitensuche (mit Wiederholungen, alle Lösungen): K0,K1,K2,K3,K4,K5,K6,K7,K8,K9,K10,K11,K12,K15,K16,K17,K18, K21,K22,K23,K24,K25,K26,K27,K28,K29,K36,K37,K38,K39,K40,K41,K42,K43,K44,K45,K46 Anmerkungen: Achtung, Knoten mit Zustand D werden nicht expandiert, also fehlen K19,K20,K13,K14,K30-K35

Tiefensuche ohne Wiederholungen GE OBE DUI GE D MH D OB MH DUI E DOBMH OBE DUIGED MH DGE MH EDUI D OBMH DGE MH DUIEE EOB DGE MH GEDUI GEDUI K0 K1K2 K7 K18 K46 K45 K44 K3K4K5K6 K17K16K15K14K13K12K11K10K9K8 K19K20K21 K22 K24 K26 K27 K29 K23K25 K28 K30 K31 K32K33 K34 K35 K36 K37 K38 K39 K41K42K43 K40 Tiefensuche ohne Wiederholungen, Variante 2: K0,K1,K3,K8,K9,K21 (Variante 2: Erst aufrufen, dann kontrollieren),K22, K10 (nicht K23-K24),K4,K2 -- Variante 2 macht für Tiefensuche nicht wirklich Sinn Tiefensuche ohne Wiederholungen, Variante 1 (also vorm Aufruf kontrollieren): K0,K1,K3,K8,K9, (nicht K21) K22 Beide Verfahren finden immer eine Lösung, sinnvoller ist Variante 1 (weil wir ja ohnehin alles gleich anschauen)

Tiefensuche ohne Wiederholungen, pfadweise Betrachtung GE OBE DUI GE D MH D OB MH DUI E DOBMH OBE DUIGED MH DGE MH EDUI D OBMH DGE MH DUIEE EOB DGE MH GEDUI GEDUI K0 K1K2 K7 K18 K46 K45 K44 K3K4K5K6 K17K16K15K14K13K12K11K10K9K8 K19K20K21 K22 K24 K26 K27 K29 K23K25 K28 K30 K31 K32K33 K34 K35 K36 K37 K38 K39 K41K42K43 K40 Wenn man alle Lösungen finden will, dann taugen die beiden bisherigen Varianten nicht. Man muss sich dann auf das Vermeiden von Wiederholungen in dem Pfad, den man grade betrachtet, konzentrieren, d.h. ein Aufruf für ein Kind erfolgt dann nicht, wenn es den gleichen Zustand repräsentiert, wie ein Vorgängerknoten. Implementieren kann man das, in dem man den bisherigen Pfad als Parameter beim Aufruf von Tiefensuche mit übergibt. Das ist auch nützlich, wenn man die Wege zu den gefundenen Zielknoten ausgeben will. Tiefensuche ohne Wiederholungen, pfadweise Betrachtung: K0,K1,K3,K8,K9,K22,K2,K5,K6,K15,K36,K38

Breitensuche ohne Wiederholungen GE OBE DUI GE D MH D OB MH DUI E DOBMH OBE DUIGED MH DGE MH EDUI D OBMH DGE MH DUIEE EOB DGE MH GEDUI GEDUI K0 K1K2 K7 K18 K46 K45 K44 K3K4K5K6 K17K16K15K14K13K12K11K10K9K8 K19K20K21 K22 K24 K26 K27 K29 K23K25 K28 K30 K31 K32K33 K34 K35 K36 K37 K38 K39 K41K42K43 K40 Breitensuche (ohne Wiederholungen, Variante 2): K0,K1,K2,K3,K4 (aber nicht expandieren!),K5,K6,K7 (nicht expandieren),K8,K9,K10 (K9,K10 nicht expandieren, K8 natürlich auch nicht, ist Ziel), (nicht K11,K12!), K15,K16 (beide nicht expandieren) Ende. Da wir nach allen Lösungen suchen, ist es nicht sinnvoll, den Zielknoten (wie auf den Folien, auf denen nur nach einer Lösung gesucht wird) in die CLOSED-List einzustellen! Übrigens ist es dann eigentlich insgesamt nicht sinnvoll, mit Variante 1 oder 2 auf Wiederholungen zu achten – es entstehen die gleichen Probleme, wie bei der Tiefensuche! GE OB DUI E GE D MH D OB MHEDUI GE OBE GE D MH D OB MHEDUI

Der Baum zum Zustandsgraphen mit Wegkosten GE OBE DUI GE D MH D OB MH DUI E DOBMH OBE DUIGED MH DGE MH EDUI D OBMH DGE MH DUIEE EOB DGE MH GEDUI GEDUI K0 K1K2 K7 K18 K46 K45 K44 K3K4K5K6 K17K16K15K14K13K12K11K10K9K8 K19K20K21 K22 K24 K26 K27 K29 K23K25 K28 K30 K31 K32K33 K34 K35 K36 K37 K38 K39 K41K42K43 K Einige der später nicht benutzten Kosteninformationen auf der letzten Ebene habe ich ausgelassen.

Best-First mit Wegkosten GE OBE DUI GE D MH D OB MH DUI E DOBMH OBE DUIGED MH DGE MH EDUI D OBMH DGE MH DUIEE EOB DGE MH GEDUI GEDUI K0 K1K2 K7 K18 K46 K45 K44 K3K4K5K6 K17K16K15K14K13K12K11K10K9K8 K19K20K21 K22 K24 K26 K27 K29 K23K25 K28 K30 K31 K32K33 K34 K35 K36 K37 K38 K39 K41K42K43 K Best-First (= Uniform Cost), achten auf Wiederholungen mit Variante 2: K0,K2,K1,K6,K7 (nicht expandieren), K3 (oder K3,K7),K16 (nicht expandieren),K4 (nicht expandieren),K10 (nicht expandieren), K15 (nicht expandieren)(oder K15,K10,K4 oder...), K9 (nicht expandieren), K8 Es kann für sie leichter sein, jeweils die Knoten in der Priorityliste und in der Closed-Liste mit aufzuschreiben, das vermeidet Flüchtigkeitsfehler (gilt auf für andere Verfahren, die Wiederholungen vermeiden) 0

Greedy mit Backtracking und ohne Wiederholungen (Variante 1) GE OBE DUI GE D MH D OB MH DUI E DOBMH OBE DUIGED MH DGE MH EDUI D OBMH DGE MH DUIEE EOB DGE MH GEDUI GEDUI K0 K1K2 K7 K18 K46 K45 K44 K3K4K5K6 K17K16K15K14K13K12K11K10K9K8 K19K20K21 K22 K24 K26 K27 K29 K23K25 K28 K30 K31 K32K33 K34 K35 K36 K37 K38 K39 K41K42K43 K Greedy (Schrittkosten): K0,K2,K6,(nicht K16, weil Wiederholung),K15,K38 (von dort würde es ohnehin nicht weitergehen, auch wenn der Baum größer wäre), (nicht K37), K36 (Ziel) Variante 2 macht hier keinen Sinn (weil es keine Warteschlange gibt, analog zu Tiefensuche)

Iterative Deepening mit Wiederholungen GE OBE DUI GE D MH D OB MH DUI E DOBMH OBE DUIGED MH DGE MH EDUI D OBMH DGE MH DUIEE EOB DGE MH GEDUI GEDUI K0 K1K2 K7 K18 K46 K45 K44 K3K4K5K6 K17K16K15K14K13K12K11K10K9K8 K19K20K21 K22 K24 K26 K27 K29 K23K25 K28 K30 K31 K32K33 K34 K35 K36 K37 K38 K39 K41K42K43 K40 Iterative Deepening Search (IDS): K0;K0,K1,K2;K0,K1,K3,K4,K2,K5 Es kann Sinn machen, Wiederholungen in einem Pfad zu vermeiden (s. Tiefensuche), dann wäre die Knoten- folge: K0;K0,K1,K2;K0,K1,K3, (nicht K4, weil Wiederholung auf dem Pfad GE>OB>GE),K2,K5

A* GE OBE DUI GE D MH D OB MH DUI E DOBMH OBE DUIGED MH DGE MH EDUI D OBMH DGE MH DUIEE EOB DGE MH GEDUI GEDUI K0 K1K2 K7 K18 K46 K45 K44 K3K4K5K6 K17K16K15K14K13K12K11K10K9K8 K19K20K21 K22 K24 K26 K27 K29 K23K25 K28 K30 K31 K32K33 K34 K35 K36 K37 K38 K39 K41K42K43 K Einige der später nicht benutzten Kosteninformationen und heuristischen Information habe ich weggelassen. A* mit Wiederholungen: K0,K2,K6,K1,K3,K8 (Ziel mit Wert 44 = Optimum gefunden) A* ohne Wiederholungen: K0,K2,K6,K1,K3,K8 (identisch in diesem Fall. Da Variante 2 gewollt war, wäre hier sogar die PQueue identisch, also wäre z.B. K16 enthalten – nicht aber bei Variante 1!)

Greedy mit heuristischen Infos und Backtracking GE OBE DUI GE D MH D OB MH DUI E DOBMH OBE DUIGED MH DGE MH EDUI D OBMH DGE MH DUIEE EOB DGE MH GEDUI GEDUI K0 K1K2 K7 K18 K46 K45 K44 K3K4K5K6 K17K16K15K14K13K12K11K10K9K8 K19K20K21 K22 K24 K26 K27 K29 K23K25 K28 K30 K31 K32K33 K34 K35 K36 K37 K38 K39 K41K42K43 K Einige der später nicht benutzten Kosteninformationen und heuristischen Information habe ich weggelassen. Greedy (Verwendet nur h): K0,K2,K5 (Ziel mit Wert 50 gefunden) Greedy (Verwendet h+g = f): K0,K2,K6,K15, K36 (Ziel mit Wert 54 gefunden)

Zusätzliche Anmerkungen Eine mögliche Form für Klausuraufgaben ist die folgende: –Ihnen wird ein Suchbaum vorgegeben mit bereits nummerierten Knoten, die mit den aufsummierten Kosten beschriftet sind (und eventuell mit dem Zustand, den sie repräsentieren) –Sie sollen dann für einige der bekannten Verfahren die resultierende Knotenbesuchsreihenfolge angeben – mehr Infos sind nicht erforderlich (etwa PQueue, CLOSED-List)! –Z.B. Iterative Deepening ohne auf Wiederholungen zu achten: K0; K0, K1, K2; K0, K1, K3, K4, K2... Es kann ihnen helfen, Kap. 3 und 4 aus Russell/Norvig zu lesen; für die Klausur verbindlich ist unser Vorgehen hier „Grobe“ (Ankreuz-)fragen zu den Kosten der Verfahren sollten sie beantworten können (s. unsere Folien, ihre Aufzeichnungen, Kap.3/4 aus Russell/Norvig, und eigenes Nachdenken!) –Beispiel: Ist der Speicheraufwand für Tiefensuche im allgemeinen kleiner, als der Speicheraufwand für Breitensuche –Kann UniformCost mehr Zeitaufwand verursachen, als Breitensuche, wenn die beste Lösung gefunden werden soll (die naive Breitensuche also alle Lösungen finden muß)