A4_5_10_P_NP - Informatik regional Dresden

Werbung
Graphische Spielereien oder mehr???
Verbinden Sie alle Punkte nach folgenden Regeln:
kein Weg darf doppelt zurückgelegt
der Anfangspunkt soll gleichzeitig der Endpunkt sein
erstellen Sie Regeln bzgl. der Punkte und Verbindungen!
Welche Bezüge zur Praxis kennen Sie?
Fachbegriffe:
Punkte  _________
Verbindungslinien  __________
Graph: Menge von ______ mit _______
Graph ist ein Modell der Wirklichkeit:
________________________________________________
Gerichteter Graph: Kanten funktionieren wie _________straßen
Rundreiseproblem – Eulerkreis (Leonard Euler 1707 – 1783):
In einem ungerichteten Graphen existiert genau dann ein Rundweg, wenn der Grad jedes
Knoten gerade ist - d.h. die Anzahl der abgehenden Kanten gerade ist! Bei n-Knoten gehen
von jedem Knoten (n – 1) Kanten ab!
Gibt es einen Rundweg,
Bei dem jeder Stadtteil A,
B, C, D besucht wird und
jede der sieben Brücken
genau einmal genutzt
wird? Skizzieren Sie den
Graphen! Überlegen Sie,
wie Sie die Stadtteile
darstellen!
Zu allen vier Gebieten von
Königsberg eine ungerade Zahl von Brücken
führt, ist der gesuchte Rundweg nicht möglich.
Das Haus von Nikolaus
Analysieren Sie die Anzahl der abgehenden Kanten!
Ungerade Anzahl von Kanten  nach dem Eulerschen
Satz gibt es keine Lösung!
Wenn man unten in einem Punkt mit 3 Kanten beginnt,
kann man alle Kanten einmal begehen und endet im
Punkt unten auf der anderen Seite ebenfalls mit 3
Kanten. (42 Lösungen oder finden Sie mehr?)
Nicht nur Rundreisen sind gesucht, häufig die
schnellste Verbindung von A nach B
Routenplaner!
Vorüberlegung: Bei 3 Knoten gab es 2 Wege –
bei 4 Knoten kommen 3 neue Wege dazu 
S
mögliche Wege: 2 * _ = _
S
S
5er-Graph: es gibt 4 Varianten den 5. Punkt mit
dem 4er Graph zu verbinden  _ * 4 = __
Allgemein: (Knoten – 1) * (Knoten -1)! Wege
Bei 12.903 Gemeinden in Deutschland
 9,88 * 10 47438 Varianten exponentieller Aufwand  nicht lösbar!
 Bessere Algorithmen sind gesucht!
S
S
S
S
Die Kanten werden gewichtet: Man merkt sich die Streckenlängen für jede Kante
Nun kann nach dem kürzesten Weg wie folgt gesucht werden (vereinfacht):
 Vom Startknoten werden alle in einem Schritt erreichbaren Konten aufgesucht
257783768
Informatik * Dresden * Meißen
1[2]
 alle „besuchten“ Kanten werden markiert und die bisher zurückgelegte summierte
Streckenlänge an die Kante geschrieben
 beim Konten mit kürzester Wegstrecke wird nach dem gleichen Verfahren
weitergearbeitet
 Kommt man an eine bereits besucht Strecke, dann braucht man diesen Weg nicht
weiter zu verfolgen
 Ende: wenn Ziel erreicht ist
 effiziente Algorithmen können den Aufwand verringern!
Grenzen der Berechenbarkeit
Eigenschaft von Algorithmen:
_________________________________
_________________________________
Die Effizienz von Algorithmen kann man unter anderem nach ihrer Rechenzeit
(Zeitkomplexität) und ihrem Speicherplatzbedarf (Platzkomplexität) beurteilen
O-Notation:
– Zu Algorithmus g (X) wird Funktion f (n) gesucht
– n entspricht Anzahl der Elemente in X
– Beispiel: f (n)  O (n2)
– O steht für „Ordnung“
– Rechenschritte zur Berechnung von g (X): (etwa) n2
Einteilung:
P-Probleme:
O
O
O
O
O
O
(1): konstant
(log n): logarithmisch
(√n): Wurzel
(n): linear
(n log n)
(n2): quadratisch
NP-Probleme:
O
O
O
O
Lösbare Probleme mithilfe determinierter Algorithmen mit
polynomialen Zeitaufwand – mit „deterministischen“ Turingmaschine
lösbar
__________________________
__________________________
__________________________
__________________________
__________________________
__________________________
__________
_
Probleme können nicht deterministisch sein (nicht eindeutig) und nicht
in Polynomialzeit gelöst werden
(cn): exponentiell
(n!): gemäß Fakultät
(nn): superexponentiell
(nc1c2...cn): hyperexponentiell
__________________________
__________________________
__________________________
__________________________
__________
_
Hinweis:
Neben den absoluten Grenzen der prinzipiellen Berechenbarkeit gibt es objektive Grenzen
der praktischen Berechenbarkeit! (Speicherkapazität, Laufzeit) Wenn es keine effizienten
Programme zur Lösung müssen Nährungsalgorithmen gesucht werden!
Weitere Beispiele für unlösbare Probleme:
_____________________________________________________________
_____________________________________________________________
_____________________________________________________________
Ungelöstes Problem der Mathematik und Informatik: Ist ______ ?
257783768
Informatik * Dresden * Meißen
2[2]
Herunterladen