Einführung in die Methoden der Künstlichen Intelligenz. Suchverfahren / Uninformierte Suche

Größe: px
Ab Seite anzeigen:

Download "Einführung in die Methoden der Künstlichen Intelligenz. Suchverfahren / Uninformierte Suche"

Transkript

1 Einführung in die Methoden der Künstlichen Intelligenz Suchverfahren / Uninformierte Suche Prof. Dr. Manfred Schmidt-Schauß SoSe 08 Stand der Folien: 9. pril 08

2 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Motivation für Suchverfahren Beispiele: Spiele: Suche nach dem besten Zug Logik: Suche nach einer Herleitung einer ussage genten: Suche nach der optimalen nächsten ktion Planen: Suche nach einer Folge von ktionen eines intelligenten genten. Optimierung: Suche eines Maximums einer mehrstelligen Funktion auf den reellen Zahlen M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

3 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Repräsentation eines Suchproblems nfangssituationen Nachfolgerfunktion Ein Test auf Zielsituation M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

4 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Repräsentation eines Suchproblems nfangssituationen Nachfolgerfunktion Ein Test auf Zielsituation Normalerweise nicht gegeben: Der gesamte Suchgraph! (Entspricht online-graph-lgorithmen) M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

5 Beispiele: Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Schach nfangssituation: Eine Stellung im Spiel Nachfolgerfunktion: Mögliche Züge Zielsituation: Wenn man gewonnen hat Gesucht: Zug der zum Gewinn führt Deduktionssystem nfangssituation: Zu beweisende ussage, Menge von xiomen und bewiesenen Sätzen Nachfolgerfunktion: Deduktionsregeln Zielsituation: Beweis Gesucht: Beweis für Planen nfangssituation: Startort; und: Formale Beschreibung des interessierenden Bereichs z.b. Fahrplan, Nachfolgerfunktion: Zugverbindungen usw. Zielsituation: ngekommen am Zielort. Gesucht: Plan, der Reise ermöglicht. M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

6 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: n Damen Platziere auf n n Schachbrett n Damen, so dass keine die andere bedroht M.Schmidt-Schauß KI SoSe 08 Suchverfahren 5/8

7 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: n Damen, mögliche Lösung Platziere auf n n Schachbrett n Damen, so dass keine die andere bedroht M.Schmidt-Schauß KI SoSe 08 Suchverfahren 6/8

8 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: n Damen, mögliche Suche Platziere die Damen zeilenweise nacheinander, und backtracke bei Konflikt. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

9 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: n Damen, mögliche Suche Platziere die Damen zeilenweise nacheinander, und backtracke bei Konflikt. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

10 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: n Damen, mögliche Suche Platziere die Damen zeilenweise nacheinander, und backtracke bei Konflikt. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

11 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: n Damen, mögliche Suche Platziere die Damen zeilenweise nacheinander, und backtracke bei Konflikt. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

12 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: n Damen, mögliche Suche Platziere die Damen zeilenweise nacheinander, und backtracke bei Konflikt. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

13 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: n Damen, mögliche Suche Platziere die Damen zeilenweise nacheinander, und backtracke bei Konflikt. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

14 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: n Damen, mögliche Suche Platziere die Damen zeilenweise nacheinander, und backtracke bei Konflikt. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

15 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: n Damen, mögliche Suche Platziere die Damen zeilenweise nacheinander, und backtracke bei Konflikt. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

16 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: n Damen, mögliche Suche Platziere die Damen zeilenweise nacheinander, und backtracke bei Konflikt. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

17 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: n Damen, mögliche Suche Platziere die Damen zeilenweise nacheinander, und backtracke bei Konflikt. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

18 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: n Damen, mögliche Suche Platziere die Damen zeilenweise nacheinander, und backtracke bei Konflikt. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

19 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: n Damen, mögliche Suche Platziere die Damen zeilenweise nacheinander, und backtracke bei Konflikt. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

20 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: n Damen, mögliche Suche Platziere die Damen zeilenweise nacheinander, und backtracke bei Konflikt. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

21 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Beispiel: Missionare und Kannibalen Missionare und Kannibalen sind auf einer Seite eines Flusses. Boot mit maximal zwei Plätzen Bedingung: uf keiner Uferseite Kannibalen in der Überzahl Gesucht: Plan zur Überquerung des Flusses M.Schmidt-Schauß KI SoSe 08 Suchverfahren 8/8

22 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Eine Kodierung des Problems Zustand: (#M, #K, Boot (< oder >), #M, # K) Start: (M, K, <, 0M, 0K) Ziel: (0M, 0K, >, M, K) Nachfolger des Startzustands: (M, K, >, M, 0K) verboten (M, K, >, M, 0K) verboten (M, K, >, M, K) (M, K, >, 0M, K) (M, K, >, 0M, K) M.Schmidt-Schauß KI SoSe 08 Suchverfahren 9/8

23 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Suchbaum (usschnitt) (,,<,0,0) (,,>,,0) (,,>,,0) (,,>,,) (,,>,0,) (,,>,0,) (,,<,,0) (,,<,0,) (,,<,0,0) (,,<,0,0) (,,<,0,) (,,<,0,0) M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

24 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Suchbaum (usschnitt) (,,<,0,0) (,,>,,0) (,,>,,0) (,,>,,) (,,>,0,) (,,>,0,) (,,<,,0) (,,<,0,) (,,<,0,0) (,,<,0,0) (,,<,0,) (,,<,0,0) Ineffizienzen: Doppelte Knoten Schon versuchte Situationen nicht noch einmal Verwende gerichteten Graphen statt Baum M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

25 Suchgraph Einführung Blind Search n-damen Missionare & Kannibalen Modellierung (,,<,0,0) (,,>,0,) (,,>,,) (,,<,0,) (,0,>,0,) (,,<,0,) (,,>,,) (,,<,,) (0,,>,,) (0,,<,,0) (0,,>,,) (0,,<,,) (0,0,>,,) (,,>,0,) M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

26 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Lösung zur Variante mit einem Ruder-Kannibale lle Missionare können rudern, aber nur ein Kannibale. Eine Lösung mit Zuständen ist rechts: (,,,<,0,0,0) (,,,>,,,0) (,,,<,0,,0) (,0,0>,0,,) (,0,,<,0,,0) (,0,,>,,,0) (,,,<,,,0) (,,0,>,,,) (,,0,<,,0,) (0,,0,>,,0,) (0,,,<,,0,0) (0,,0,>,,,) (,,0,<,,,) (0,0,0,>,,,) (,,0,>,0,,) M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

27 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Modellierung des Problems ist wichtig! Nicht-Berücksichtigung wichtiger Tatsachen: Kannibalen: Ein-und ussteigen aus dem Boot ist nicht berücksichtigt! Sollte man die Zustände während des Bootfahrens berücksichtigen? Die gewählte Repräsentation bestimmt die Struktur des Suchraumes. Z.B. Modellierung: Missionare und Kannibalen haben eine Identität Zustand: Menge der Identitäten auf der Startseite und B falls das Boot auf der Startseite Start: {M, M, M, K, K, K, B} Ziel: Ist diese Repräsentation besser / schlechter? M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

28 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Modellierung () Start {M, M, M, K, K, K, B} hat (!) Nachfolger. {M, M, K, K, K }. {M, M, K, K, K }. {M, M, K, K, K }. {M, M, M, K, K } 5. {M, M, M, K, K } 6. {M, M, M, K, K } 7. {M, K, K, K } 8. {M, K, K, K } 9. {M, M, K, K } 0. {M, M, K, K }. {M, M, K, K }. {M, K, K, K }. {M, M, K, K }. {M, M, K, K } 5. {M, M, K, K } 6. {M, M, K, K } 7. {M, M, K, K } 8. {M, M, K, K } 9. {M, M, M, K } 0. {M, M, M, K }. {M, M, M, K } Davon sind erlaubt In dieser Repräsentation ist die Suche sehr viel schwieriger! M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

29 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Suchraum, nzahl der Zustände nzahl Zustände bei Varianten des MK-Problems: MK normal: = MK Ruder-Kannibale = 8 MK Ruder-Missionare, = 7 Ruder-Kannibale (hat eine Lösung) MK Namen: 6 = 8 ber: i.a. sind Zustandsräume sehr groß bzw. unendlich. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 5/8

30 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Suchraum, Suchgraph Suche nach Lösung = Suche in einem gerichten Graphen ber: Der Graph ist nicht explizit gegeben! Suchgraph (Suchraum) gegeben durch: Knoten: Situation, Zustände Kanten: implizit als Nachfolger-Funktion N nfangssituation Zieltest: Entscheidbarer Test, ob Knoten Zielknoten Entsprechung: online-suche in nicht explizit gegebenen Graphen. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 6/8

31 Eigenschaften Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Verzweigungsrate des Knotens K (branching factor): nzahl der direkten Nachfolger von K, also N(K). K K K... K n K n N(K) = {K,..., K n } N(K) = n Mittlere Verzweigungsrate des Suchraumes: Durchschnittliche Verzweigungsrate aller Knoten. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

32 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Wahl und Optimierung der Repräsentation Hinweise und Heuristiken: Symmetrien ausnutzen. Z.B lle Missionare gleich, d.h. die nzahl ist ausreichend. Nicht relevante Information weglassen. Z.B. den Zustand auf dem Fluss, Zustände während des Ein-ussteigens. Verbotene / irrelevante Zustände nicht erzeugen. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 8/8

33 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Eigenschaften() Größe des Suchraumes ab Knoten K in Tiefe d: nzahl Knoten, die von K aus in d Schritten erreichbar sind D.h. N d (K), wobei N (M) = {N(L) L M} und N i (K) = N(N i (K)). K K K K K5 K6 K7 K8 K9 K0 K K K K K5 K6 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 9/8

34 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Eigenschaften() Größe des Suchraumes ab Knoten K in Tiefe d: nzahl Knoten, die von K aus in d Schritten erreichbar sind D.h. N d (K), wobei N (M) = {N(L) L M} und N i (K) = N(N i (K)). K K K K K5 K6 K7 K8 K9 K0 K K K K K5 K6 Größe des Suchraums ab K in Tiefe = 5 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 9/8

35 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Eigenschaften() Größe des Suchraumes ab Knoten K in Tiefe d: nzahl Knoten, die von K aus in d Schritten erreichbar sind D.h. N d (K), wobei N (M) = {N(L) L M} und N i (K) = N(N i (K)). K K K K K5 K6 K7 K8 K9 K0 K K K K K5 K6 Größe des Suchraums ab K in Tiefe = 5 Größe des Suchraums ab K in Tiefe = 8 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 9/8

36 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Eigenschaften () Eine Suchstrategie ist vollständig, wenn sie einen Zielknoten nach endlichen vielen Schritten findet, falls dieser existiert, und erreichbar ist. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

37 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung Kombinatorische Explosion Üblicherweise: mittlere Verzweigungrate > Suche ist exponentiell in der Tiefe des Suchraums das nennt man auch: kombinatorische Explosion Die meisten Suchprobleme sind NP-hart (NP-vollständig), wenn der vollständige Suchraum in der Problembeschreibung enthalten ist. M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

38 Blind Search Einführung Blind Search Tiefensuche It. Vertiefen Rückw.- & Bidir. Suche Eingabe: Blind Search = Nicht-informierte Suche Nur der Suchgraph ist (implizit) gegeben keine anderen Informationen (z.b. Heuristik) Menge der initialen Knoten Menge der Zielknoten, bzw. eindeutige Festlegung der Eigenschaften der Zielknoten Nachfolgerfunktion N usgabe: Pfad zum Zielknoten (falls dieser existiert) M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

39 Nicht-informierte Suche, allg. lgorithmus Nicht-informierte Suche Datenstrukturen: L = Menge von Knoten, markiert mit Weg dorthin Eingabe: Setze L := Menge der initialen Knoten mit leerem Weg lgorithmus: Wenn L leer ist, dann breche ab. Wähle einen beliebigen Knoten K aus L. Wenn K ein Zielknoten ist, dann gebe aus: Zielknoten und Weg dorthin (d.h. Weg im Graphen dorthin) Wenn K kein Zielknoten, dann nehme Menge N(K) der direkten Nachfolger von K und verändere L folgendermaßen: L := (L N(K)) \ {K} (Wege entsprechend anpassen) Mache weiter mit Schritt M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

40 Nicht-informierte Suche, allg. lgorithmus Nicht-informierte Suche Datenstrukturen: L = Menge von Knoten, markiert mit Weg dorthin Eingabe: Setze L := Menge der initialen Knoten mit leerem Weg lgorithmus: Wenn L leer ist, dann breche ab. Wähle einen beliebigen Knoten K aus L. Wenn K ein Zielknoten ist, dann gebe aus: Zielknoten und Weg dorthin (d.h. Weg im Graphen dorthin) Wenn K kein Zielknoten, dann nehme Menge N(K) der direkten Nachfolger von K und verändere L folgendermaßen: L := (L N(K)) \ {K} (Wege entsprechend anpassen) Mache weiter mit Schritt Keine Strategie!, nichtdeterministisch M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

41 Tiefensuche Einführung Blind Search Tiefensuche It. Vertiefen Rückw.- & Bidir. Suche lgorithmus Tiefensuche Datenstrukturen: L = Liste (Stack) von Knoten, markiert mit Weg dorthin Eingabe: Füge die initialen Knoten in die Liste L ein. lgorithmus: Wenn L die leere Liste ist, dann breche ab. Wähle ersten Knoten K aus L, sei R die Restliste. Wenn K ein Zielknoten ist, dann gebe aus: Zielknoten und Weg dorthin (d.h. Weg im Graphen dorthin) Wenn K kein Zielknoten, dann sei N(K) die (geordnete) Liste der direkten Nachfolger von K, mit dem Weg dorthin markiert L := N(K) ++ R. (wobei ++ Listen zusammenhängt) Mache weiter mit. M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

42 Beispiel Tiefensuche M.Schmidt-Schauß KI SoSe 08 Suchverfahren 5/8

43 Beispiel Tiefensuche m nfang: 6 7 L := [(, [])] M.Schmidt-Schauß KI SoSe 08 Suchverfahren 5/8

44 Beispiel Tiefensuche Knoten 6 7 K := (, []) R := [] NF (K) = [,,, 5] L := [(, []), (, []), (, []), (5, [])]++R = [(, []), (, []), (, []), (5, [])] M.Schmidt-Schauß KI SoSe 08 Suchverfahren 5/8

45 Beispiel Tiefensuche Knoten 6 7 K := (, []) R := [(, []), (, []), (5, [])] NF () = [6, 7] L := [(6, [, ]), (7, [, ])]++R = [(6, [, ]), (7, [, ]), (, []), (, []), (5, [])] M.Schmidt-Schauß KI SoSe 08 Suchverfahren 5/8

46 Beispiel Tiefensuche Knoten 6 K := (6, [, ]) R := [(7, [, ]), (, []), (, []), (5, [])] NF (6) = [] L := []++R = [(7, [, ]), (, []), (, []), (5, [])] 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 5/8

47 Beispiel Tiefensuche Knoten 6 K := (7, [, ]) R := [(, []), (, []), (5, [])] NF (7) = [] L := [(, [,, 7])]++R = [(, [,, 7]), (, []), (, []), (5, [])] 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 5/8

48 Beispiel Tiefensuche Knoten 6 K := (, [,, 7]) R := [(, []), (, []), (5, [])] NF () = [] L := []++R = [(, []), (, []), (5, [])] 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 5/8

49 Beispiel Tiefensuche Knoten 6 K := (, []) R := [(, []), (5, [])] NF () = [8] L := [(8, [, ])]++R = [(8, [, ]), (, []), (5, [])] 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 5/8

50 Beispiel Tiefensuche Knoten 6 K := (8, [, ]) R := [(, []), (5, [])] NF (8) = [] L := [(, [,, 8])]++R = [(, [,, 8]), (, []), (5, [])] 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 5/8

51 Beispiel Tiefensuche Knoten 6 K := (, [,, 8]) R := [(, []), (5, [])] NF () = [6] L := [(6, [,, 8, ])]++R = [(6, [,, 8, ]), (, []), (5, [])] 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 5/8

52 Beispiel Tiefensuche Knoten 6 K := (6, [,, 8, ]) R := [(, []), (5, [])] Ziel(6) == True gebe,,8,,6 aus 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 5/8

53 Tiefensuche in Haskell dfs ::(a -> Bool) -- Zieltest (goal) -> (a -> [a]) -- Nachfolgerfunktion (succ) -> [a] -- Startknoten -> Maybe (a, [a]) -- Ergebnis: Just (Zielknoten,Pfad) -- oder Nothing dfs goal succ stack = -- Einfuegen der nfangspfade, dann iterieren mit go go [(k,[k]) k <- stack] where go [] = Nothing -- lles abgesucht, nichts gefunden go ((k,p):r) goal k = Just (k,p) -- Ziel gefunden otherwise = go ([(k,k :p) k <- succ k] ++ r) M.Schmidt-Schauß KI SoSe 08 Suchverfahren 6/8

54 Eigenschaften der Tiefensuche Komplexität (worst-case) bei fester Verzweigungrate c > : Platz: linear in der Tiefe Zeit: exponentiell in der Tiefe des Zielknotens Vollständigkeit: Nicht vollständig, wenn der Suchgraph unendlich groß ist M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

55 Unvollständigkeit der Tiefensuche 5 Zielknoten wird nie besucht! 6 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 8/8

56 Varianten der Tiefensuche Tiefensuche mit Tiefenbeschränkung k Wenn Tiefe k überschritten, setze NF (K) = Findet Zielknoten, die maximal in Tiefe k liegen In Haskell: dfsbistiefe goal succ stack maxdepth = -- wir speichern die Tiefe mit in den Knoten auf dem Stack: go [(k,maxdepth,[k]) k <- stack] where go [] = Nothing -- lles abgesucht, nichts gefunden go ((k,i,p):r) goal k = Just (k,p) -- Ziel gefunden i > 0 = go ([(k,i -, k :p) k <- succ k] ++ r) otherwise = go r -- Tiefenschranke erreicht M.Schmidt-Schauß KI SoSe 08 Suchverfahren 9/8

57 Varianten der Tiefensuche () Tiefensuche mit Sharing Merke bereits besuchte Knoten, um Knoten nicht doppelt zu besuchen (bei zyklischen Suchgraphen!) Speichern der besuchten Knoten: Hashtabelle Platz: nzahl der besuchten Knoten (wegen Speicher für schon untersuchte Knoten) Zeit: n log(n) mit n = nzahl der untersuchten Knoten. Pragmatische Verbesserung: Nur maximal l viele Knoten speichern (damit der Platz beschränkt ist) M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

58 Tiefensuche mit Sharing dfssharing goal succ stack = -- Einfuegen der nfangspfade, dann mit iterieren mit go, -- letzes rgument ist die Merkliste go [(k,[k]) k <- stack] [] where go [] mem = Nothing -- lles abgesucht, nichts gefunden go ((k,p):r) mem goal k = Just (k,p) -- Ziel gefunden k elem mem = go r mem -- Knoten schon besucht otherwise = go ([(k,k :p) k <- succ k] ++ r) (k:mem) M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

59 Varianten beim Backtracking Vorgestelltes Verfahren Chronologisches Backtracking Varianten Dynamic Backtracking Dependency-directed Backtracking bkürzungen, wenn sichergestellt ist, dass kein Zielknoten übersehen wird. M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

60 Breitensuche Einführung Blind Search Tiefensuche It. Vertiefen Rückw.- & Bidir. Suche lgorithmus Breitensuche Datenstrukturen: L = Menge von Knoten markiert mit Weg Eingabe: Füge die initialen Knoten in die MengeL ein. lgorithmus: Wenn L leer ist, dann breche ab. Wenn L einen Zielknoten K enthält, dann gebe aus: K und Weg dorthin. Sonst, sei N(L) Menge aller direkten Nachfolger der Knoten von L, mit einem Weg dorthin markiert. Mache weiter mit Schritt und L := N(L). M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

61 Beispiel Breitensuche M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

62 Beispiel Breitensuche m nfang: 6 7 L := {(, [])} M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

63 Beispiel Breitensuche Iteration 6 L := {(, [])} NF (L) = {,,, 5} L := {(, []), (, []), (, []), (5, [])} 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

64 Beispiel Breitensuche Iteration 6 L := {(, []), (, []), (, []), (5, [])} NF (L) = NF () NF () NF () NF (5) = {6, 7, 8, 9, 0, } L := {(6, [, ]), (7, [, ]), (8, [, ]), (9, [, ]), (0, [, 5]), (, [, 5])} 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

65 Beispiel Breitensuche Iteration 6 L := {(6, [, ]), (7, [, ]), (8, [, ]), (9, [, ]), (0, [, 5]), (, [, 5])} NF (L) = NF (6) NF (7) NF (8) NF (9) NF (0) NF () = {,,, 5} L := {(, [,, 7]), (, [,, 8]), (, [,, 9]), (5, [, 5, 0])} 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

66 Beispiel Breitensuche Iteration 6 L := {(, [,, 7]), (, [,, 8]), (, [,, 9]), (5, [, 5, 0])} NF (L) = NF () NF () NF () NF (5) = {6, 7} L := {(6, [,, 8, ]), (7, [,, 9, ])} 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

67 Beispiel Breitensuche Iteration 6 L := {(6, [,, 8, ]), (7, [,, 9, ])} L enhält Zielknoten gebe,,8,,6 aus 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

68 Breitensuche in Haskell bfs goal succ start = go [(k,[k]) k <- start] -- Pfade erzeugen where go [] = Nothing -- nichts gefunden go rs = case filter (goal. fst) rs of -- ein Zielknoten enthalten? -- Nein, mache weiter mit allen Nachfolgern [] -> go [(k,k :p) (k,p) <- rs, k <- succ k] -- Ja, dann stoppe: (r:rs) -> Just r M.Schmidt-Schauß KI SoSe 08 Suchverfahren 5/8

69 Eigenschaften Einführung Blind Search Tiefensuche It. Vertiefen Rückw.- & Bidir. Suche Komplexität (worst-case) bei fester Verzweigungrate c > Platz: nzahl der Knoten in Tiefe d, d.h. O(c d ) = exponentiell in der Tiefe d! Zeit: nzahl } der Knoten {{ in Tiefe d } + (n log n) = }{{} n Mengenbildung O(c d ( + d log c)) Vollständigkeit Die Breitensuche ist vollständig! (bei endlicher Verzweigungrate) M.Schmidt-Schauß KI SoSe 08 Suchverfahren 6/8

70 Fazit: Tiefen- und Breitensuche Tiefensuche Breitensuche Zeit O(c d ) O(c d ( + d log c)) Platz O(c d) O(c d ) Vollständig nein ja M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

71 Iteratives Vertiefen iterative deepening Kompromiss a la Vollständige Tiefensuche Pseudo-lgorithmus: k := 0; Tiefensuche mit Tiefenschranke k; wenn Ziel gefunden dann breche ab, und gebe Ziel und Weg aus sonst k := k + ; 5 gehe zu M.Schmidt-Schauß KI SoSe 08 Suchverfahren 8/8

72 Iteratives Vertiefen in Haskell idfs goal succ stack = let -- alle Ergebnisse mit sukzessiver Erh"ohung der Tiefenschranke allesuchen = [dfsbistiefe goal succ stack i i <- [..]] in case filter isjust allesuchen of [] -> Nothing -- Trotzdem nichts gefunden (r:rs) -> r -- sonst erstes Ergebnisse M.Schmidt-Schauß KI SoSe 08 Suchverfahren 9/8

73 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k = 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

74 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,,,5 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

75 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,,,5 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

76 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,,,5 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

77 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,,,5 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

78 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,,,5 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

79 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,8,,9,5,0, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

80 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,8,,9,5,0, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

81 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,8,,9,5,0, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

82 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,8,,9,5,0, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

83 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,8,,9,5,0, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

84 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,8,,9,5,0, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

85 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,8,,9,5,0, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

86 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,8,,9,5,0, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

87 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,8,,9,5,0, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

88 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,8,,9,5,0, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

89 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,8,,9,5,0, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

90 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,,8,,,9,,5,0,5, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

91 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,,8,,,9,,5,0,5, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

92 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,,8,,,9,,5,0,5, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

93 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,,8,,,9,,5,0,5, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

94 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,,8,,,9,,5,0,5, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

95 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,,8,,,9,,5,0,5, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

96 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,,8,,,9,,5,0,5, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

97 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,,8,,,9,,5,0,5, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

98 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,,8,,,9,,5,0,5, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

99 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,,8,,,9,,5,0,5, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

100 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,,8,,,9,,5,0,5, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

101 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,,8,,,9,,5,0,5, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

102 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,,8,,,9,,5,0,5, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

103 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,,8,,,9,,5,0,5, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

104 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k =,,6,7,,,8,,,9,,5,0,5, 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

105 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k = 5,,6,7,,,8,,6 Ziel 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

106 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k = 5,,6,7,,,8,,6 Ziel 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

107 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k = 5,,6,7,,,8,,6 Ziel 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

108 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k = 5,,6,7,,,8,,6 Ziel 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

109 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k = 5,,6,7,,,8,,6 Ziel 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

110 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k = 5,,6,7,,,8,,6 Ziel 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

111 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k = 5,,6,7,,,8,,6 Ziel 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

112 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k = 5,,6,7,,,8,,6 Ziel 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

113 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche k = 5,,6,7,,,8,,6 Ziel 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

114 Beispiel: Iterative Tiefensuche Reihenfolge der Knotenbesuche besuchte Knoten! 7 M.Schmidt-Schauß KI SoSe 08 Suchverfahren 0/8

115 Eigenschaften der iterativen Tiefensuche Komplexität (worst-case) bei mittlerer Verzweigungsreate c > Platz: Linear in der Tiefe Zeit:? (wird gleich behandelt) Vollständigkeit Die iterative Tiefensuche ist vollständig (bei endlicher Verzweigungrate) M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

116 Zeitbedarf iteratives Vertiefen () Näherung: n i= a i an+ a Tiefensuche mit Tiefenbeschränkung k k lle Knoten besuchen: c i i= c ist (mittlere) Verzweigunsrate. Im Mittel besuchte Knoten (Zielknoten in Tiefe k): 0.5 ( k c i ) 0.5 ( ck+ c ) i= Iteratives Vertiefen bis Tiefe k, im Mittel, Zielknoten in Tiefe k: k Tiefensuchen für Tiefe,..., k +Tiefensuche für Tiefe k (Hälfte der Knoten) = k i= c i+ ck+ c ( c ) M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

117 Zeitbedarf iteratives Vertiefen () Näherung: = k i= n i= a i an+ a c i+ ck+ c ( c ) = k c i+ i= c ( ck+ c ) ( k c i ) c k i= c ( ck+ c ) ck+ c (( c ) c ) ( ck+ c ) = ( ck+ ) c ck+ (c ) c ( c ) ( ck+ ) ( ck+ (c ) c ) M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

118 Zeitbedarf iteratives Vertiefen () Faktor Iteratives Vertiefen Tiefensuche bis k: c k+ ck ( (c ) c ) 0.5 ( ck+ c ) = c k+ (c ) 0.5 ( ck+ c ) Tabelle der ca.-werte des Faktors q = c + ist c q, 67, 5..., + = c + M.Schmidt-Schauß KI SoSe 08 Suchverfahren /8

119 Bemerkungen zur iterativen Tiefensuche llgemeine Idee dabei: Spare Platz, opfere Zeit (speichern vs. neu berechnen) Gegensätzlich zum dynamischen Programmieren: Dort: Opfere Platz für schnellere Zeit M.Schmidt-Schauß KI SoSe 08 Suchverfahren 5/8

120 Varianten Einführung Blind Search Tiefensuche It. Vertiefen Rückw.- & Bidir. Suche Nutze Platz: Speichere Knoten, die bereits expandiert wurden, und betrachte sie nicht neu keine wiederholten Expansionen Speichere einen Teil des letzten Suchbaums (z.b. den linken Teil), damit er beim nächsten mal nicht betrachtet werden muss. Kombiniere Breitensuche mit Tiefensuche: erst in die Breite, ab dort dann Tiefensuche M.Schmidt-Schauß KI SoSe 08 Suchverfahren 6/8

121 Rückwärtssuche Idee Suche nicht vom Start das Ziel, sondern umgekehrt Statt Nachfolgerfunktion benutze Vorgängerfunktion Lohnswert? Lohnt, wenn die Verzweigungsrate der Vorgängerfunktion kleiner ist, als die der Nachfolgerfunktion Problematisch: Finde algorithmische Beschreibung der Vorgängerfunktion M.Schmidt-Schauß KI SoSe 08 Suchverfahren 7/8

122 Bidirektionale Suche Suche vorwärts (ab Start) und rückwärts (von einem Ziel) Erfordert Vergleich der momentan expandierten Knoten (Speichern und Schnittmenge) Vorteil z.b. bei Breitensuche: Platz: statt c d nur (c d/ ) Doppelt so tief suchen in gleichem Platz (wenn #Eingangsknoten #usgangsknoten) Nachteil: Schnittbildung nach jedem Schritt, und Vorgängerund Nachfolgerfunktion nötig. M.Schmidt-Schauß KI SoSe 08 Suchverfahren 8/8

Motivation für Suchverfahren. Einführung in die Methoden der Künstlichen Intelligenz. Suchverfahren / Uninformierte Suche

Motivation für Suchverfahren. Einführung in die Methoden der Künstlichen Intelligenz. Suchverfahren / Uninformierte Suche Motivation für Suchverfahren Einführung in die Methoden der Künstlichen Intelligenz Suchverfahren / Uninformierte Suche Prof. Dr. Manfred Schmidt-Schauß SoSe 06 Beispiele: Spiele: Suche nach dem besten

Mehr

Einführung in die Methoden der Künstlichen Intelligenz. Suchverfahren / Uninformierte Suche

Einführung in die Methoden der Künstlichen Intelligenz. Suchverfahren / Uninformierte Suche Einführung in die Methoden der Künstlichen Intelligenz Suchverfahren / Uninformierte Suche PD Dr. David Sabel SoSe 0 Stand der Folien:. pril 0 Einführung Blind Search n-damen Missionare & Kannibalen Modellierung

Mehr

Künstliche Intelligenz

Künstliche Intelligenz Künstliche Intelligenz Vorlesung 2: Suchverfahren Uninformierte Suche 1/143 STARKE UND SCHWACHE KI-HYPOTHESE Schwache KI-Hypothese Maschinen (Computer, Roboter,... ) können agieren, alsob sie intelligent

Mehr

Künstliche Intelligenz

Künstliche Intelligenz Künstliche Intelligenz Vorlesung 4: Suchverfahren Informierte Suche 1/132 INFORMIERTE SUCHSTRATEGIEN (ISS) Benutzt neben der Definition des Problems auch problemspezifisches Wissen. Findet Lösungen effizienter

Mehr

Einführung in die Methoden der Künstlichen Intelligenz. Suche bei Spielen

Einführung in die Methoden der Künstlichen Intelligenz. Suche bei Spielen Einführung in die Methoden der Künstlichen Intelligenz Suche bei Spielen Prof. Dr. Manfred Schmidt-Schauß SoSe 2016 Stand der Folien: 12. Mai 2016 Zwei-Spieler-Spiele Ziel dieses Abschnitts Intelligenter

Mehr

Zustandsraumsuche: Blinde und Heuristische Suche. Blinde und Heuristische Suche

Zustandsraumsuche: Blinde und Heuristische Suche. Blinde und Heuristische Suche Zustandsraumsuche: Blinde und Heuristische Suche Einführung in die KI Übungsstunde am 01.11.04 Benmin Altmeyer 1 Heute im Angebot Was ist Suche? Suche als Probemlösung Zustandsraumsuche Vollständigkeit

Mehr

Inhalt. Kognitive Systeme 1. Expansion eines impliziten Suchraums Netz aller möglichen Schritte. Impliziter Suchraum. Uninformierte Suche

Inhalt. Kognitive Systeme 1. Expansion eines impliziten Suchraums Netz aller möglichen Schritte. Impliziter Suchraum. Uninformierte Suche Inhalt Uninformierte Suche Dr.-Ing. Bernd Ludwig Lehrstuhl für Künstliche Intelligenz Friedrich-Alexander-Universität Erlangen-Nürnberg 04.11.2009 1 Implizite Suchgraphen 2 Tiefensuche 3 Breitensuche 4

Mehr

Kognitive Systeme 1. Uninformierte Suche. Dr.-Ing. Bernd Ludwig

Kognitive Systeme 1. Uninformierte Suche. Dr.-Ing. Bernd Ludwig Kognitive Systeme 1 Uninformierte Suche Dr.-Ing. Bernd Ludwig Lehrstuhl für Künstliche Intelligenz Friedrich-Alexander-Universität Erlangen-Nürnberg 04.11.2009 Dr.-Ing. Bernd Ludwig (Lehrstuhl KI) Kognitive

Mehr

Uninformierte Suche in Java Informierte Suchverfahren

Uninformierte Suche in Java Informierte Suchverfahren Uninformierte Suche in Java Informierte Suchverfahren Stephan Schwiebert WS 2008/2009 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln 8-Damen-Problem Gegeben: Schachbrett

Mehr

Uninformierte Suche in Java Informierte Suchverfahren

Uninformierte Suche in Java Informierte Suchverfahren Uninformierte Suche in Java Informierte Suchverfahren Stephan Schwiebert WS 2009/2010 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Suchprobleme bestehen aus Zuständen

Mehr

Einführung in die Methoden der Künstlichen Intelligenz. Suche bei Spielen

Einführung in die Methoden der Künstlichen Intelligenz. Suche bei Spielen Einführung in die Methoden der Künstlichen Intelligenz Suche bei Spielen Dr. David Sabel WS 2012/13 Stand der Folien: 5. November 2012 Zwei-Spieler-Spiele Ziel dieses Abschnitts Intelligenter Agent für

Mehr

Zwei-Spieler-Spiele. Einführung in die Methoden der Künstlichen Intelligenz. Suche bei Spielen. Schach. Schach (2)

Zwei-Spieler-Spiele. Einführung in die Methoden der Künstlichen Intelligenz. Suche bei Spielen. Schach. Schach (2) Einführung in die Methoden der Künstlichen Intelligenz Suche bei Spielen Prof. Dr. Manfred Schmidt-Schauß Ziel dieses Abschnitts Intelligenter Agent für Zweipersonenspiele Beispiele: Schach, Dame, Mühle,...

Mehr

Zwei-Spieler-Spiele. Einführung in die Methoden der Künstlichen Intelligenz. Suche bei Spielen. Schach. Schach (2)

Zwei-Spieler-Spiele. Einführung in die Methoden der Künstlichen Intelligenz. Suche bei Spielen. Schach. Schach (2) Einführung in die Methoden der Künstlichen Intelligenz Suche bei Spielen PD Dr. David Sabel SoSe 24 Ziel dieses Abschnitts Intelligenter Agent für Zweipersonenspiele Beispiele: Schach, Dame, Mühle,...

Mehr

Einführung in Heuristische Suche

Einführung in Heuristische Suche Einführung in Heuristische Suche Beispiele 2 Überblick Intelligente Suche Rundenbasierte Spiele 3 Grundlagen Es muss ein Rätsel / Puzzle / Problem gelöst werden Wie kann ein Computer diese Aufgabe lösen?

Mehr

Zwei-Spieler-Spiele. Einführung in die Methoden der Künstlichen Intelligenz. Suche bei Spielen. Schach. Schach (2)

Zwei-Spieler-Spiele. Einführung in die Methoden der Künstlichen Intelligenz. Suche bei Spielen. Schach. Schach (2) Einführung in die Methoden der Künstlichen Intelligenz Suche bei Spielen Prof. Dr. Manfred Schmidt-Schauß Ziel dieses Abschnitts Intelligenter Agent für Zweipersonenspiele Beispiele: Schach, Dame, Mühle,...

Mehr

Zustände und Knoten. Vorgänger Information: Tiefe = 4 ΣKosten=4 Expandiert: ja. Zustand Aktion: right. Aktion: down

Zustände und Knoten. Vorgänger Information: Tiefe = 4 ΣKosten=4 Expandiert: ja. Zustand Aktion: right. Aktion: down Zustände und Knoten Zustände: Schnappschüsse der Welt Knoten: Datenobjekte, welche Zustände repräsentieren und weitere Information enthalten Vorgängerknoten (im Baum 1) Nachfolgerknoten (im Baum b) mit

Mehr

1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie

1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie Gliederung 1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie 4/3, Folie 1 2010 Prof. Steffen Lange - HDa/FbI

Mehr

9.1 Tiefensuche. Grundlagen der Künstlichen Intelligenz. 9.1 Tiefensuche. 9.2 Iterative Tiefensuche. 9.3 Blinde Suche: Zusammenfassung

9.1 Tiefensuche. Grundlagen der Künstlichen Intelligenz. 9.1 Tiefensuche. 9.2 Iterative Tiefensuche. 9.3 Blinde Suche: Zusammenfassung Grundlagen der Künstlichen Intelligenz 21. März 2014 9. Klassische Suche: Tiefensuche und iterative Tiefensuche Grundlagen der Künstlichen Intelligenz 9. Klassische Suche: Tiefensuche und iterative Tiefensuche

Mehr

Grundlagen der Künstlichen Intelligenz

Grundlagen der Künstlichen Intelligenz Grundlagen der Künstlichen Intelligenz 9. Klassische Suche: Tiefensuche und iterative Tiefensuche Malte Helmert Universität asel 21. März 2014 Tiefensuche Iterative Tiefensuche linde Suche: Zusammenfassung

Mehr

Übersicht. Künstliche Intelligenz: 3. Problemlösen durch Suche Frank Puppe 1

Übersicht. Künstliche Intelligenz: 3. Problemlösen durch Suche Frank Puppe 1 Übersicht I Künstliche Intelligenz II Problemlösen 3. Problemlösen durch Suche 4. Informierte Suchmethoden 5. Constraint-Probleme 6. Spiele III Wissen und Schlußfolgern IV Logisch Handeln V Unsicheres

Mehr

Suchverfahren. Kapitel Algorithmische Suche

Suchverfahren. Kapitel Algorithmische Suche Kapitel 2 Suchverfahren 2.1 Algorithmische Suche Oft hat man in einer vorgegebenen Problemlösungs-Situation die Aufgabe, einen bestimmten Zweck zu erreichen, einen (Aktions-)Plan für einen Agenten zu entwickeln,

Mehr

Kapitel 5: Suchverfahren: Backtracking

Kapitel 5: Suchverfahren: Backtracking Kapitel 5: Suchverfahren: Backtracking Prof. Dr. F. Otto (Universität Kassel) Entwurf und Analyse von Algorithmen 278 / 541 Suchverfahren: Backtracking Viele Probleme lassen sich als Suchprobleme formulieren.

Mehr

Einführung in die Methoden der Künstlichen Intelligenz. Klausurvorbereitung Überblick, Fragen,...

Einführung in die Methoden der Künstlichen Intelligenz. Klausurvorbereitung Überblick, Fragen,... Einführung in die Methoden der Künstlichen Intelligenz Klausurvorbereitung Überblick, Fragen,... PD Dr. David Sabel SoSe 2014 Stand der Folien: 18. Juli 2014 Klausur Termin: Donnerstag 31. Juli um 9.15h

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Kürzeste Wege Maike Buchin 4. und 6.7.2017 Einführung Motivation: Bestimmung von kürzesten Wegen ist in vielen Anwendungen, z.b. Routenplanung, ein wichtiges Problem. Allgemeine

Mehr

Wissensbasierte Systeme. Kombinatorische Explosion und die Notwendigkeit Heuristischer Suche. Heuristiken und ihre Eigenschaften

Wissensbasierte Systeme. Kombinatorische Explosion und die Notwendigkeit Heuristischer Suche. Heuristiken und ihre Eigenschaften 1 Michael Beetz Technische Universität München Wintersemester 2004/05 Kombinatorische Explosion und die Notwendigkeit Heuristischer Suche 2 3 der Eigenschaften der 4 : 8-Puzzle 5 Heuristiken und ihre Eigenschaften

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Graphdurchläufe Maike Buchin 22. und 27.6.2017 Graphexploration Motivation: Für viele Zwecke will man den gesamten Graphen durchlaufen, zb. um festzustellen ob er (stark) zusammenhängt.

Mehr

Beispiele. mit. Beispiel 2.3. Suche einen Weg von nach. Tiefensuche bzw. Breitensuche.

Beispiele. mit. Beispiel 2.3. Suche einen Weg von nach. Tiefensuche bzw. Breitensuche. 2. Suchverfahren Uninformierte Suchverfahren Beispiel 2.4. Ein Weinhändler hat drei Krüge, einen von 9 Liter, einen von 7 Liter und einen von 4 Liter Inhalt. Auf den Krügen sind keine Litermarkierungen

Mehr

Grundlagen der Künstlichen Intelligenz

Grundlagen der Künstlichen Intelligenz Grundlagen der Künstlichen Intelligenz 9. Klassische Suche: Baumsuche und Graphensuche Malte Helmert Universität Basel 13. März 2015 Klassische Suche: Überblick Kapitelüberblick klassische Suche: 5. 7.

Mehr

Große Lösungsräume. Leon Schmidtchen Hallo Welt Seminar - LS Leon Schmidtchen Große Lösungsräume Hallo Welt Seminar - LS2

Große Lösungsräume. Leon Schmidtchen Hallo Welt Seminar - LS Leon Schmidtchen Große Lösungsräume Hallo Welt Seminar - LS2 Große Lösungsräume Leon Schmidtchen 1.06.201 Hallo Welt Seminar - LS 2!1 Gliederung Motivation Brute Force Backtracking Pruning Leon Schmidtchen Branch & Bound 1.06.201 Hallo Welt Seminar - LS 2 Wann soll

Mehr

Wissensbasierte Suche

Wissensbasierte Suche Wissensbasierte Suche Jürgen Dorn Inhalt uninformierte Suche wissensbasierte Suche A* und IDA* Algorithmus Suche in Und/Oder-Graphen Jürgen Dorn 2003 Wissensbasierte Suche 1 Suche Suche in (expliziten

Mehr

Algorithmen und Datenstrukturen 2-1. Seminar -

Algorithmen und Datenstrukturen 2-1. Seminar - Algorithmen und Datenstrukturen 2-1. Seminar - Dominic Rose Bioinformatics Group, University of Leipzig Sommersemster 2010 Outline 1. Übungsserie: 3 Aufgaben, insgesamt 30 28 Punkte A1 Spannbäume (10 8

Mehr

Künstliche Intelligenz

Künstliche Intelligenz Künstliche Intelligenz 3. Suche Dr. Claudia Schon schon@uni-koblenz.de Institute for Web Science and Technologies 1 Diese Folien basieren auf den Folien von PD Dr. Matthias Thimm, Universität Koblenz-Landau,

Mehr

Beweise aus dem Fach Grundzüge der Künstlichen Intelligenz

Beweise aus dem Fach Grundzüge der Künstlichen Intelligenz Beweise aus dem Fach Grundzüge der Künstlichen Intelligenz Alexander Pacha TU Wien - Matr. Nr.: 0828440 alexander.pacha@tuwien.ac.at 1 Begriserklärungen Für die folgenden Beweise werden zuerst folgende

Mehr

Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20

Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20 Suche in Spielbäumen Suche in Spielbäumen KI SS2011: Suche in Spielbäumen 1/20 Spiele in der KI Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche Einschränkung von Spielen auf: 2 Spieler:

Mehr

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen 186.172 Algorithmen und Datenstrukturen 1 VL 4.0 Übungsblatt 4 für die Übung

Mehr

Einfacher Problemlösungsagent. Übersicht. Begriffsdefinitionen für Einfach-Probleme

Einfacher Problemlösungsagent. Übersicht. Begriffsdefinitionen für Einfach-Probleme Übersicht I Künstliche Intelligenz II Problemlösen 3. Problemlösen durch Suche 4. Informierte Suchmethoden 5. Constraint-Probleme 6. Spiele III Wissen und Schlußfolgern IV Logisch Handeln V Unsicheres

Mehr

Algorithmen & Komplexität

Algorithmen & Komplexität Algorithmen & Komplexität Angelika Steger Institut für Theoretische Informatik steger@inf.ethz.ch Breitensuche, Tiefensuche Wir besprechen nun zwei grundlegende Verfahren, alle Knoten eines Graphen zu

Mehr

10.1 Blinde Suche Blinde Suche. Grundlagen der Künstlichen Intelligenz Breitensuche: Einführung BFS-Tree. 10.

10.1 Blinde Suche Blinde Suche. Grundlagen der Künstlichen Intelligenz Breitensuche: Einführung BFS-Tree. 10. Grundlagen der Künstlichen Intelligenz 13. März 2015 10. Klassische Suche: Grundlagen der Künstlichen Intelligenz 10. Klassische Suche: Malte Helmert Universität asel 13. März 2015 10.1 linde Suche 10.2

Mehr

(a, b)-bäume / 1. Datenmenge ist so groß, dass sie auf der Festplatte abgespeichert werden muss.

(a, b)-bäume / 1. Datenmenge ist so groß, dass sie auf der Festplatte abgespeichert werden muss. (a, b)-bäume / 1. Szenario: Datenmenge ist so groß, dass sie auf der Festplatte abgespeichert werden muss. Konsequenz: Kommunikation zwischen Hauptspeicher und Festplatte - geschieht nicht Byte für Byte,

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Datenstrukturen: Anordnung von Daten, z.b. als Liste (d.h. in bestimmter Reihenfolge) Beispiel: alphabetisch sortiertes Wörterbuch... Ei - Eibe - Eidotter... als Baum (d.h.

Mehr

Algorithmen und Datenstrukturen 1-5. Seminar -

Algorithmen und Datenstrukturen 1-5. Seminar - Algorithmen und Datenstrukturen 1-5. Seminar - Dominic Rose Bioinformatics Group, University of Leipzig Wintersemester 2009/10 Outline 5.+6. Übungsserie: 5 Aufgaben, insgesamt 40 Punkte A17 Baum-Traversierung

Mehr

Datenstrukturen. einfach verkettete Liste

Datenstrukturen. einfach verkettete Liste einfach verkettete Liste speichert Daten in einer linearen Liste, in der jedes Element auf das nächste Element zeigt Jeder Knoten der Liste enthält beliebige Daten und einen Zeiger auf den nächsten Knoten

Mehr

Algorithmen und Datenstrukturen 1 VU 6.0 Nachtragstest SS Oktober 2014

Algorithmen und Datenstrukturen 1 VU 6.0 Nachtragstest SS Oktober 2014 Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen 186.813 Algorithmen und Datenstrukturen 1 VU 6.0 Nachtragstest SS 2014 22. Oktober

Mehr

Vortrag. Suchverfahren der Künstlichen Intelligenz. Sven Schmidt (Technische Informatik)

Vortrag. Suchverfahren der Künstlichen Intelligenz. Sven Schmidt (Technische Informatik) Vortrag Suchverfahren der Künstlichen Intelligenz Sven Schmidt (Technische Informatik) Suchverfahren der Künstlichen Intelligenz Grundlagen Zustandsraumrepräsentation Generische Suche Bewertung von Suchstrategien

Mehr

Algorithmen und Datenstrukturen Übung #4 BFS/DFS, Wachstum von Funktionen

Algorithmen und Datenstrukturen Übung #4 BFS/DFS, Wachstum von Funktionen Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Algorithmen und Datenstrukturen Übung #4 BFS/DFS, Wachstum von Funktionen Christian Rieck, Arne Schmidt 22.11.2018 Heute 12 Breiten-

Mehr

Klausur zur Vorlesung Künstliche Intelligenz

Klausur zur Vorlesung Künstliche Intelligenz Klausur zur Vorlesung Künstliche Intelligenz Ulrich Furbach Claudia Obermaier Arbeitsgruppe Künstliche Intelligenz Fachbereich Informatik, Universität Koblenz-Landau 13.03.2009 Name: Vorname: Matrikelnummer:

Mehr

Künstliche Intelligenz

Künstliche Intelligenz Künstliche Intelligenz Vorlesung 3: Suchverfahren Informierte Suche 1/78 WIEDERHOLUNG Bislang uninformierte Strategien BFS, DFS, Iteratives Vertiefen, Bidirektionale Suche Wichtige Begriffe: Suchraum,

Mehr

Algorithmen und Datenstrukturen Tafelübung 14. Jens Wetzl 8. Februar 2012

Algorithmen und Datenstrukturen Tafelübung 14. Jens Wetzl 8. Februar 2012 Algorithmen und Datenstrukturen Tafelübung 14 Jens Wetzl 8. Februar 2012 Folien Keine Garantie für Vollständigkeit und/oder Richtigkeit Keine offizielle Informationsquelle LS2-Webseite Abrufbar unter:

Mehr

Pro Informatik 2009: Objektorientierte Programmierung Tag 18. Marco Block-Berlitz, Miao Wang Freie Universität Berlin, Institut für Informatik

Pro Informatik 2009: Objektorientierte Programmierung Tag 18. Marco Block-Berlitz, Miao Wang Freie Universität Berlin, Institut für Informatik Tag 18 Marco Block-Berlitz, Miao Wang Freie Universität Berlin, Institut für Informatik 09.09.2009 Agenda Tag 16 Datenstrukturen Abstrakte Datentypen, ADT Folge: Stack, Queue, Liste, ADT Menge: Bäume:

Mehr

NAME, VORNAME: Studiennummer: Matrikel:

NAME, VORNAME: Studiennummer: Matrikel: TU Ilmenau, Fakultat IA Institut für Theoretische Informatik FG Komplexitätstheorie und Effiziente Algorithmen Prof. Dr. (USA) M. Dietzfelbinger Klausur Algorithmen und Datenstrukturen SS08, Ing.-Inf.

Mehr

Künstliche Intelligenz

Künstliche Intelligenz Künstliche Intelligenz Vorlesung 4: Suchverfahren Informierte Suche 1/135 WIEDERHOLUNG BISLANG... Uninformierte Strategien: bearbeiten den Suchraum systematisch, aber ohne problemspezifisches Wissen ab.

Mehr

Graphdurchmusterung, Breiten- und Tiefensuche

Graphdurchmusterung, Breiten- und Tiefensuche Prof. Thomas Richter 18. Mai 2017 Institut für Analysis und Numerik Otto-von-Guericke-Universität Magdeburg thomas.richter@ovgu.de Material zur Vorlesung Algorithmische Mathematik II am 18.05.2017 Graphdurchmusterung,

Mehr

Algorithmen. Von Labyrinthen zu. Gerald Futschek

Algorithmen. Von Labyrinthen zu. Gerald Futschek Von Labyrinthen zu Algorithmen Gerald Futschek Wie kommt man aus einem Labyrinth (griechisch: Haus der Doppelaxt, wahrscheinlich Knossos auf Kreta) Labyrinth heraus? Labrys Grundriss des Palastes von Knossos

Mehr

Grundlagen der KI + Reasoning Agents

Grundlagen der KI + Reasoning Agents Grundlagen der KI + Reasoning Agents Prof. Thielscher Welche heuristischen Suchverfahren gibt es? Erläutern Sie A* am Beispiel. Aufbau und Schlussfolgerungen von Bayesschen Netzen. Thielscher drängt auf

Mehr

So suchen Sie zuerst nach der Breite

So suchen Sie zuerst nach der Breite Künstliche Intelligenz 3. Suche Dr. Claudia Schon schon@uni-koblenz.de Institute for Web Science and Technologies 1 Diese Folien basieren auf den Folien von PD Dr. Matthias Thimm, Universität Koblenz-Landau,

Mehr

? P = NP Die 1 Million $ Frage. Prof. Dr. Hans Jürgen Ohlbach P =? NP

? P = NP Die 1 Million $ Frage. Prof. Dr. Hans Jürgen Ohlbach P =? NP ? P = NP Die 1 Million $ Frage Prof. Dr. Hans Jürgen Ohlbach 1 Historie 23 Hilbertsche Probleme aus dem Jahr 1900 Derzeit 10 gelöst 5 ungelöst 8 unklar formuliert oder teilweise gelöst David Hilbert 1886

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Graphen (1) Darstellung Traversierung Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 441 Generalisierung von Bäumen Verallgemeinerung (von Listen zu Graphen)

Mehr

Einführung in die Informatik 2

Einführung in die Informatik 2 Einführung in die nformatik 2 raphenexploration Sven Kosub A Algorithmik/Theorie komplexer Systeme Universität Konstanz E 202 Sven.Kosub@uni-konstanz.de Sprechstunde: Freitag, 12:30-14:00 Uhr, o.n.v. Sommersemester

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Prof. Martin Lercher Institut für Informatik Heinrich-Heine-Universität Düsseldorf Teil 10 Suche in Graphen Version vom 13. Dezember 2016 1 / 2 Vorlesung 2016 / 2017 2 /

Mehr

Breitensuche BFS (Breadth First Search)

Breitensuche BFS (Breadth First Search) Breitensuche BFS (Breadth First Search) Algorithmus BREITENSUCHE EINGABE: G = (V, E) als Adjazenzliste, Startknoten s V 1 Für alle v V 1 If (v = s) then d[v] 0 else d[v] ; 2 pred[v] nil; 2 Q new Queue;

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Graphen (2) Spannbäume Kürzeste Wege Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 455 Wiederholung Traversierung eines Graphen via Tiefendurchlaufs

Mehr

Künstliche Intelligenz Einführung in Prolog

Künstliche Intelligenz Einführung in Prolog Künstliche Intelligenz Einführung in Prolog Stephan Schwiebert WS 2009/2010 Sprachliche Informationsverarbeitung Institut für Linguistik versität zu Köln Backtracking Backtracking uninformiertes, universelles

Mehr

8.1 Blinde Suche. Grundlagen der Künstlichen Intelligenz. Klassische Suche: Überblick. 8. Klassische Suche: Breitensuche und uniforme Kostensuche

8.1 Blinde Suche. Grundlagen der Künstlichen Intelligenz. Klassische Suche: Überblick. 8. Klassische Suche: Breitensuche und uniforme Kostensuche Grundlagen der Künstlichen Intelligenz 17. März 2014 8. Klassische Suche: Breitensuche und uniforme Kostensuche Grundlagen der Künstlichen Intelligenz 8. Klassische Suche: Breitensuche und uniforme Kostensuche

Mehr

23. November Betweenness Centrality Closeness Centrality. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 108

23. November Betweenness Centrality Closeness Centrality. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 108 23. November 2011 Betweenness Centrality Closeness Centrality H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 108 Betweenness Centrality Grundlegende Idee: Ein Knoten ist wichtig, wenn er auf

Mehr

Informatik II, SS 2016

Informatik II, SS 2016 Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 10 (27.5.2016) Binäre Suchbäume II Algorithmen und Komplexität Zusätzliche Dictionary Operationen Dictionary: Zusätzliche mögliche Operationen:

Mehr

Intelligente Systeme

Intelligente Systeme Intelligente Systeme Heuristische Suchalgorithmen Prof. Dr. R. Kruse C. Braune {rudolf.kruse,christian.braune}@ovgu.de Institut für Intelligente Kooperierende Systeme Fakultät für Informatik Otto-von-Guericke-Universität

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 11 (4.6.2014) Binäre Suchbäume II Algorithmen und Komplexität Binäre Suchbäume Binäre Suchbäume müssen nicht immer so schön symmetrisch sein

Mehr

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V.

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V. Kapitel 4 Graphenalgorithmen 4.1 Definitionen Definition 4.1.1. Der Graph G = (V, E) ist über die beiden Mengen V und E definiert, wobei V die Menge der Knoten und E die Menge der Kanten in dem Graph ist.

Mehr

Model Checking mit Büchi Automaten

Model Checking mit Büchi Automaten Ingo Weigelt Softwaretechnik 3 16.05.2007 Übersicht 1 Automaten über unendlichen Wörtern ω-automaten Büchi-Automaten 2 Model Checking mit Büchi Automaten Konstruktion von A Konstruktion von A S Leerheitstest

Mehr

Heuristische Suchverfahren

Heuristische Suchverfahren Heuristische Suchverfahren Suchprozesse sind ein wichtiger Bestandteil unterschiedlicher Problemlöseverfahren z.b. Bestimmung der Konfliktmenge in Produktionssystemen Suche nach resolvierbaren Klauseln

Mehr

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung Gliederung der Vorlesung. Fallstudie Bipartite Graphen. Grundbegriffe 3. Elementare Graphalgorithmen und Anwendungen 4. Minimal spannende Bäume 5. Kürzeste Pfade 6. Traveling Salesman Problem 7. Flüsse

Mehr

Datenstrukturen und Algorithmen. 7. Suchen in linearen Feldern

Datenstrukturen und Algorithmen. 7. Suchen in linearen Feldern Datenstrukturen und Algorithmen 7. Suchen in linearen Feldern VO 708.031 Suchen in linearen Feldern robert.legenstein@igi.tugraz.at 1 Inhalt der Vorlesung 1. Motivation, Einführung, Grundlagen 2. Algorithmische

Mehr

Algorithmen und Datenstrukturen 2. Dynamische Datenstrukturen

Algorithmen und Datenstrukturen 2. Dynamische Datenstrukturen Algorithmen und Datenstrukturen 2 Dynamische Datenstrukturen Algorithmen für dynamische Datenstrukturen Zugriff auf Variable und Felder durch einen Ausdruck: Namen durch feste Adressen referenziert Anzahl

Mehr

Algorithmen I - Tutorium 28 Nr. 9

Algorithmen I - Tutorium 28 Nr. 9 Algorithmen I - Tutorium 28 Nr. 9 29.06.2017: Spaß mit Graphen und Graphtraversierung Marc Leinweber marc.leinweber@student.kit.edu INSTITUT FÜR THEORETISCHE INFORMATIK (ITI), PROF. DR. JÖRN MÜLLER-QUADE

Mehr

Abschätzung der Suchbaumgröße

Abschätzung der Suchbaumgröße Effiziente Algorithmen Lösen NP-vollständiger Probleme 263 Abschätzung der Suchbaumgröße Der Schätzwert für die Suchbaumgröße war 3529. Lassen wir das Programm laufen, ergibt sich, daß 1830 gültige Positionen

Mehr

7. Dynamische Datenstrukturen Bäume. Informatik II für Verkehrsingenieure

7. Dynamische Datenstrukturen Bäume. Informatik II für Verkehrsingenieure 7. Dynamische Datenstrukturen Bäume Informatik II für Verkehrsingenieure Übersicht dynamische Datenstrukturen Wozu? Oft weiß man nicht von Beginn an, wieviele Elemente in einer Datenstruktur untergebracht

Mehr

9. Heuristische Suche

9. Heuristische Suche 9. Heuristische Suche Prof. Dr. Rudolf Kruse University of Magdeburg Faculty of Computer Science Magdeburg, Germany rudolf.kruse@cs.uni-magdeburg.de S Heuristische Suche Idee: Wir nutzen eine (heuristische)

Mehr

Kapitel 4: Netzplantechnik Gliederung der Vorlesung

Kapitel 4: Netzplantechnik Gliederung der Vorlesung Gliederung der Vorlesung 1. Grundbegriffe 2. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege 4. Netzplantechnik 5. Minimal spannende Bäume 6. Traveling Salesman Problem 7. Flüsse in Netzwerken

Mehr

Zweite Klausur Datenstrukturen und Algorithmen SS 2015

Zweite Klausur Datenstrukturen und Algorithmen SS 2015 Lehrstuhl für Informatik Klausur 14.09.015 Prof. aa Dr. Ir. Joost-Pieter Katoen hristian Dehnert, Friedrich Gretz, Benjamin Kaminski, Thomas Ströder Zweite Klausur Datenstrukturen und lgorithmen SS 015

Mehr

Netzwerkverbindungsspiele

Netzwerkverbindungsspiele Netzwerkverbindungsspiele Algorithmische Spieltheorie Sommer 2017 Annamaria Kovacs Netzwerkverbindungsspiele 1 / 12 Local Connection Spiel Computer (oder autonome Systeme) sind die Spieler (Knoten). Sie

Mehr

Algorithmen & Komplexität

Algorithmen & Komplexität Algorithmen & Komplexität Angelika Steger Institut für Theoretische Informatik steger@inf.ethz.ch Breitensuche, Tiefensuche Wir besprechen nun zwei grundlegende Verfahren, alle Knoten eines Graphen zu

Mehr

Grundlagen der Künstlichen Intelligenz

Grundlagen der Künstlichen Intelligenz Grundlagen der Künstlichen Intelligenz 6. Klassische Suche: Datenstrukturen für Suchalgorithmen Malte Helmert Universität Basel 7. März 2014 Klassische Suche: Überblick Kapitelüberblick klassische Suche:

Mehr

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 1: Grundlagen der algorithmischen Graphentheorie

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 1: Grundlagen der algorithmischen Graphentheorie Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 1: Grundlagen der algorithmischen Graphentheorie Dipl-Math. Wolfgang Kinzner 2.4.2012 Kapitel 1: Grundlagen der algorithmischen Graphgentheorie

Mehr

Effizienter Planaritätstest Vorlesung am

Effizienter Planaritätstest Vorlesung am Effizienter Planaritätstest Vorlesung am 23.04.2014 INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER Satz Gegebenen einen Graphen G = (V, E) mit n Kanten und m Knoten, kann in O(n + m) Zeit

Mehr

Algorithmen und Datenstrukturen (für ET/IT)

Algorithmen und Datenstrukturen (für ET/IT) Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 05 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München Programm heute Einführung Grundlagen von Algorithmen Grundlagen

Mehr

Algorithmische Geometrie: Schnittpunkte von Strecken

Algorithmische Geometrie: Schnittpunkte von Strecken Algorithmische Geometrie: Schnittpunkte von Strecken Nico Düvelmeyer WS 2009/2010, 3.11.2009 3 Phasen im Algorithmenentwurf 1. Konzentration auf das Hauptproblem 2. Verallgemeinerung auf entartete Eingaben

Mehr

Kapitel 3: Kürzeste Pfade Gliederung der Vorlesung

Kapitel 3: Kürzeste Pfade Gliederung der Vorlesung Gliederung der Vorlesung 1. Grundbegriffe 2. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege 4. Minimale spannende Bäume 5. Färbungen und Cliquen 6. Traveling Salesman Problem 7. Flüsse in

Mehr

Sokoban. Knowledge Engineering und Lernen in Spielen. Mark Sollweck Fachbereich 20 Seminar Knowledge Engineering Mark Sollweck 1

Sokoban. Knowledge Engineering und Lernen in Spielen. Mark Sollweck Fachbereich 20 Seminar Knowledge Engineering Mark Sollweck 1 Sokoban Knowledge Engineering und Lernen in Spielen Mark Sollweck 29.04.2010 Fachbereich 20 Seminar Knowledge Engineering Mark Sollweck 1 Überblick Sokoban Spielregeln Eigenschaften Lösungsansatz IDA*

Mehr

Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1

Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1 Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1 Aufgabe 1. / 16 P Instruktionen: 1) In dieser Aufgabe sollen Sie nur die Ergebnisse angeben. Diese können Sie direkt bei den Aufgaben notieren. 2) Sofern

Mehr

Gliederung. Tiefensuche. Kurz notiert. Zur Motivation: Breitensuche. Seminar Systementwurf Ralf Cremerius

Gliederung. Tiefensuche. Kurz notiert. Zur Motivation: Breitensuche. Seminar Systementwurf Ralf Cremerius Seminar Systementwurf Ralf Cremerius Gliederung Teil ): als effizientes Suchverfahren auf Graphen Teil ): zur Bestimmung der Starken Zusammenhangskomponenten in Graphen Kurz notiert Zur Motivation: Abgearbeiteter

Mehr

10. Übungsblatt zu Algorithmen I im SS 2010

10. Übungsblatt zu Algorithmen I im SS 2010 Karlsruher Institut für Technologie Institut für Theoretische Informatik Prof. Dr. Peter Sanders G.V. Batz, C. Schulz, J. Speck 0. Übungsblatt zu Algorithmen I im SS 00 http//algo.iti.kit.edu/algorithmeni.php

Mehr

2 Problemlösen und Suche

2 Problemlösen und Suche Universität Bielefeld Was ist Problemlösen? Problemlösen und Suche. Vorlesung: Suchprobleme und Suchalgorithmen; heuristische Suche Methoden der Künstlichen Intelligenz Ipke Wachsmuth WS 003/00 Unter Problemlösen

Mehr

Vorlesung Informatik 2 Algorithmen und Datenstrukturen

Vorlesung Informatik 2 Algorithmen und Datenstrukturen Vorlesung Informatik 2 Algorithmen und Datenstrukturen (18 Bäume: Grundlagen und natürliche Suchbäume) Prof. Dr. Susanne Albers Bäume (1) Bäume sind verallgemeinerte Listen (jedes Knoten-Element kann mehr

Mehr

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Approximationsalgorithmen für NP-harte Optimierungsprobleme Approximationsalgorithmen für NP-harte Optimierungsprobleme Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 1 / 18 Was tun mit NP-harten Problemen? Viele praxisrelevante

Mehr

Smart Graphics: Search 1

Smart Graphics: Search 1 Smart Graphics: Search 1 Lecture Smart Graphics Andreas Butz 23.11.2010 1 Über den Studiengang und das Forschungsgebiet Medieninformatik informieren Studenten, Interessenten sowie deren Familie und Freunde

Mehr

Aufgaben zur Klausurvorbereitung

Aufgaben zur Klausurvorbereitung Vorlesung Graphen und Optimierung Sommersemester 2013/14 Prof. S. Lange Aufgaben zur Klausurvorbereitung Hier finden Sie eine Reihe von Übungsaufgaben, die wir an den beiden Vorlesungsterminen am 29.01.2014

Mehr

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Approximationsalgorithmen für NP-harte Optimierungsprobleme Approximationsalgorithmen für NP-harte Optimierungsprobleme Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 4. Januar 2011 Berthold Vöcking, Informatik 1 () Vorlesung

Mehr

Informatik II, SS 2016

Informatik II, SS 2016 Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 13 (8.6.2016) Graphenalgorithmen I Algorithmen und Komplexität Graphen Knotenmenge V, typischerweise n V Kantenmenge E, typischerweise

Mehr

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Übersicht: Graphen. Definition: Ungerichteter Graph. Definition: Ungerichteter Graph

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Übersicht: Graphen. Definition: Ungerichteter Graph. Definition: Ungerichteter Graph Programm heute Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 07 Dr. Stefanie Demirci Computer Aided Medical Procedures Technische Universität München 7 Fortgeschrittene Datenstrukturen Graphen

Mehr

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012 utomaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2012 Dr. Sander Bruggink Übungsleitung: Jan Stückrath Sander Bruggink utomaten und Formale Sprachen 1 Der CYK-lgorithmus Beispiel

Mehr