Kleiner Ausflug in Logik und Verkehrssteuerung

Werbung
Kleiner Ausflug in Logik
und Verkehrssteuerung
Ein logisches Rätsel
Ausgangslage: Drei Frauen stehen
hintereinander. Jede trägt einen Hut auf dem Kopf
und sieht nur die Hüte der voran stehenden
Personen. Die Hüte sind entweder weiss oder
schwarz. Nicht alle Hüte haben dieselbe Farbe.
Frage: Kann eine Frau die Farbe des eigenen Hutes
nennen? (Wir gehen davon aus, dass eine Frau dies
Schwarz?
Schwarz?
auch tut, falls sie es kann.)
Weiss?
Weiss?
Ja, es geht!
•
Falls die hinterste Frau vorne zwei gleichfarbige
Hüte sieht, entscheidet sie sich für die andere
Farbe. Nicht alle Hüte haben ja die gleiche Farbe.
•
Falls die hinterste Frau nichts sagt, weiss die
mittlere Frau, dass ihr Hut die andere Farbe hat
als der von der vordersten Frau. Denn sonst hätte
ja die hinterste Frau zwei gleiche Hüte gesehen und
dies gesagt.
…logisch?
Idee: logische Formel zur Sicherheit
an einer Strassenkreuzung!
Anforderung: keine Kollisionen bei Kreuzungen!
B
A
Kollision möglich!...
Was muss gelten, damit keine Kollisionen möglich
sind? Wie kann man das spezifizieren?
Programm heute
• Interaktive Einführung „Logik“ (40‘)
– Logik als Grundlage der Rationalität
– Einführung Aussagenlogik
• Aussagen
• Operatoren
• Wahrheitstabellen
• Aufgaben zu LogicTraffic (45‘)
– Selbstständig Aufgaben lösen, mit Compi
– Lösungen besprechen
Logik als Grundlage
der Rationalität
Logik ist letztendlich die Grundlage
jeglicher Wissenschaft und jeglicher
rationaler Argumentation.
Das heisst: Wir alle müssen einige Grundregeln des
logischen Denkens akzeptieren, sonst gibt es kein
„vernünftiges“ Denken (und Handeln).
Der Satz vom Widerspruch
Eine Aussage kann nicht gleichzeitig
mit ihrem Gegenteil wahr sein.
– z.B.: „Zürich ist ein Kontinent.“ und
„Zürich ist kein Kontinent.“ kann
nicht gleichzeitig wahr sein.
– weder beweis- noch widerlegbar.
J Aristoteles, Begründer der Logik
* 384 v. Chr. in Stageira
† 322 v. Chr. in Chalkis
Logische Folgerung
z.B.:
Aussage 1: „Wenn es regnet, wird die Straße nass.“
Aussage 2: „Es regnet.“
Folgerung: „Die Straße wird nass.“
Aus den zwei Aussagen “wenn A,
dann B“ und „A“ kann die Aussage
„B“ hergeleitet werden.
J Auf diese Weise können wir argumentieren und mittels
gemeinsam anerkannten „Regeln“ und wahren Aussagen neue
Aussagen als wahr herleiten.
Was sind Aussagen?
Aussagen sind Sätze, die entweder
wahr (1) oder falsch (0) sind.
• 2+4=6
• Zürich ist die Hauptstadt der Schweiz.
• Peter (23) ist älter als Paul (17).
Keine Aussagen:
• Wo ist der Bahnhof?
• Ruhe jetzt!
1
0
1
unklar!
• Bern ist eine schöne Stadt.
• Dieses Wasser (20°) ist kalt.
Zusammengesetzte Aussagen…
…sind ebenfalls Aussagen, also
auch entweder wahr oder falsch.
• Peter (23) ist älter als Paul (17) und 4+4=9.
• Peter (23) ist älter als Paul (17) und 2+4=6.
• Zürich ist die Hauptstadt der Schweiz oder Bern
die Hauptstadt der Schweiz.
0
1
ist
1
Aussagenlogik
Aussagen…
…werden durch Variablen repräsentiert
…haben Wahrheitswert (wahr/falsch, resp. 0/1)
• A = „Zürich ist die Hauptstadt der Schweiz.“
• B = „2+4=6“
0
1
Aussagenlogische Formeln sind zusammengesetzte
Aussagen:
– Wahrheitswert (wahr/falsch, resp. 0/1)
• A UND B
• A ODER B
• (NICHT A) UND B
0
1
1
George Boole
Begründer der Aussagenlogik
– englischer Mathematiker
* 1815 in Lincoln
† 1864 in Ballintemple (Irland)
ÖBoolesche Variablen
– Können immer nur einen von zwei Werten annehmen
• true/false, wahr/falsch, 1/0
– In vielen Programmiersprachen als „Datentyp“ vorhanden
• Oft gebraucht für bedingte Anweisungen
• z.B. in Java, C, PHP, Pascal oder VisualBasic
Logische Operatoren
• Logische Operatoren verbinden Aussagen zu neuen
(zusammengesetzten) Aussagen
• Welche Operatoren gibt es?
ÖNICHT, UND, ODER
- Sind die gebräuchlichsten, es gibt noch mehr. (z.B.
wenn/dann)
NICHT (Negation)
Abgekürzte Schreibweise: ¬
• Wahrheitstabelle:
A
¬A
0
1
1
0
UND (Konjunktion)
• Abgekürzte Schreibweise: ∧
• Wahrheitstabelle:
A
B
A∧B
0
0
0
0
1
0
1
0
0
1
1
1
ODER (Disjunktion)
• Abgekürzte Schreibweise: ∨
• Wahrheitstabelle:
A
B
A∨B
0
0
0
0
1
1
1
0
1
1
1
1
Aussagenlogik (Kurzreferenz)
Variablen
Negation
“NICHT“
Konjunktion Disjunktion
“UND“
“ODER“
A
B
¬A
A∧B
A∨B
0
0
1
0
0
0
1
1
0
1
1
0
0
0
1
1
1
0
1
1
Ö Aussagenlogischen Formeln, z.B.:
- (¬A∧B)∨(A∨¬B)
- A∨(¬B∨¬C)∧(D∨B)
Jetzt Aussagen praktisch:
Verkehrssteuerung & Logik
Verkehrssituation:
B
A
Aussagen:
• A = „Spur A hat grün.“
• B = „Spur B hat grün.“
Aufgabe: Beschreibe obige Situation mit einer zusammengesetzten Aussage! (d.h. mit Hilfe von logischen Operatoren
und der den Variablen A und B.)
Bemerkung: Benutze dazu die erhaltene Tabelle.
Jetzt Aussagen praktisch:
Verkehrssteuerung & Logik
Verkehrssituation:
Aussagen:
• A = „Spur A hat grün.“
• B = „Spur B hat grün.“
B
A
Lösung: A ∧ (¬B)
Aufgabe: Beschreibe obige Situation mit einer zusammengesetzten Aussage! (d.h. mit Hilfe von logischen Operatoren
und der den Variablen A und B.)
Bemerkung: Benutze dazu die erhaltene Tabelle.
Lösung: A ∧ (¬B)
A
A
A
A
A
B
A ∧ (¬B)
1
0
1
B
B
B
B
Lösung: A ∧ (¬B)
A
A
A
A
B
A
B
A ∧ (¬B)
0
0
0
1
0
1
B
B
B
Lösung: A ∧ (¬B)
A
A
A
A
B
B
B
B
A
B
A ∧ (¬B)
0
0
0
0
1
0
1
0
1
Lösung: A ∧ (¬B)
A
A
A
A
B
B
B
B
A
B
A ∧ (¬B)
0
0
0
0
1
0
1
0
1
1
1
0
Wahrheitstabelle
Gibt für alle Kombinationen der Variablenwerte die
Wahrheitswerte einer aussagenlogischen Formel an.
A
B
A
B
A ∧ (¬B)
0
0
0
0
1
0
1
0
1
1
1
0
Aufgabe: Wie wird diese Zeile interpretiert?
Idee: Formel zur Sicherheit
an einer Strassenkreuzung!
Anforderung: keine Kollisionen bei Kreuzungen!
B
A
Kollision möglich!...
Was muss gelten, damit keine Kollisionen möglich
sind? Wie sieht die Wahrheitstabelle aus? Gibt es
aussagenlogische Formeln dafür?
Programm „LogicTraffic“
Grundidee: Finde eine aussagenlogische
Formel, welche die gegebene
Verkehrssituation sicher macht.
ÖVerschiedene Strategien!
LogicTraffic
Verkehrs–
situation
Wahr–
heits–
tabelle
Formel zur
Wahrheitstabelle
Formeleditor
Statusanzeige
unsicher
(Kollisionen möglich)
sicher
(keine Kollisionen, aber
mehr Grünphasen möglich)
optimal
(keine Kollisionen und nicht
mehr Grünphasen möglich)
Maus - Interaktionspunkte
Visualisierung des Parse-Baums
LogicTraffic - Demo!
Jetzt Ihr…
• Anleitung durchlesen
• Aufgaben bearbeiten mit Hilfe von LogicTraffic
Herunterladen