Einführung in das Invarianzprinzip

Werbung
Einführung in das Invarianzprinzip
Florian Schweizer
Mathecamp
28.03.2017
Einführung
Übungsaufgaben
Halbinvarianten
Motivation
Betrachtet diesen Kreis, der in sechs Sektoren eingeteilt ist. Wir erlauben,
die Zahl in je zwei benachbarten Feldern um jeweils 1 zu erhöhen.
In welcher Reihenfolge muss man die Zahlen erhöhen, damit am Ende in
allen Feldern dieselbe Zahl steht?
1
0
0
0
1
0
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Definition: Invarianzprinzip
Gegeben sei eine Zustandsmenge und ein Algorithmus (eine Vorschrift),
der vorgibt, wie ein Zustand in einen anderen überführt wird.
Eine Invariante ist eine Eigenschaft, die für alle Zustände gilt, die mit
dem Algorithmus erreicht werden können.
Es geht darum zu entscheiden, ob von einem Startzustand aus ein
bestimmter Zielzustand erreicht werden kann.
Philosophisch: Wenn sich Dinge ändern, suche das, was gleich bleibt.
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Beispiel I
Auf einer Tafel stehen die Zahlen 1 bis n.
Ihr dürft euch zwei beliebige Zahlen a und b aussuchen und durch die
Zahl a + b ersetzen. Das wird immer wiederholt.
Am Ende bleibt eine Zahl übrig – beweise, dass diese Zahl 1 + 2 + · · · + n
ist.
Invariante: Die Summe aller Zahlen an der Tafel bleibt stets gleich und
diese beträgt am Anfang genau 1 + 2 + · · · + n.
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Beispiel II
Auf einer Tafel stehen die Zahlen 0 bis 2n, wobei n eine ungerade Zahl ist.
Es ist erlaubt, zwei Zahlen a und b zu streichen und dafür stattdessen die
Zahl |a − b| zu ergänzen.
Wir möchten zeigen, dass die letzte verbleibende Zahl ungerade ist.
Im Startzustand ist die Summe aller Zahlen eine ungerade Zahl. Der
Algorithmus lässt dies (die Parität der Summe) invariant.
Wenn nur noch eine Zahl auf der Tafel steht, ist sie ungerade.
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Vorgehen
Gegeben seien eine Problemstellung mit Anfangszustand, Algorithmus
und Endzustand. Kann der Endzustand erreicht werden?
1
Bestimme Start- und Zielzustand.
2
Finde eine Eigenschaft, die im Anfangszustand gilt und bei
Anwendung des Algorithmus erhalten bleibt. → Invariante
3
Zeige, dass die Invariante bewirkt, dass der Endzustand eintritt bzw.
nicht eintreten kann.
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Aufgabenblock 1
Bearbeitet die Aufgaben 1 bis 3.
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Der Ritter und der kleine Drache
Startzustand: Bestie mit 15 Köpfen.
Erlaubte Aktion: 4 Köpfe entfernen oder 6 Köpfe hinzunehmen.
Zielzustand: Keine Köpfe (Bestie tot).
Invariante: Die Anzahl der Köpfe ist ungerade.
⇒ Der Zielzustand kann nicht erreicht werden. (Schade!)
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Invertierende Schachbretter
Startzustand: 8 × 8-Schachbrett mit nur einem schwarzen Feld.
Erlaubte Aktion: Die Farben eine Zeile oder Spalte invertieren.
Zielzustand: Alle Felder schwarz.
Invariante: Die Anzahl der schwarzen Felder ist ungerade.
⇒ Der Zielzustand kann nicht erreicht werden. (Gesamtzahl ist gerade.)
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Schachbretter überdecken 1
Startzustand: 8 × 8-Schachbrett, bei dem zwei sich diagonal
gegenüberliegende Ecken fehlen.
Erlaubte Aktion: Dominosteine auf das Brett legen.
Zielzustand: Alle Felder sind überdeckt.
Invariante: Es sind gleich viele weiße und schwarze Felder überdeckt.
⇒ Der Zielzustand kann nicht erreicht werden. (#schwarz < #weiß)
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Aufgabenblock II
Bearbeitet Aufgaben 4 bis 8.
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Der Ritter und der große Drache
Startzustand: Bestie mit 777 Köpfen.
Erlaubte Aktion: 15 Köpfe entfernen oder 32 Köpfe entfernen, wobei
dann 1337 Köpfe hinzukommen.
Zielzustand: Keine Köpfe (Bestie tot).
Invariante: Die Anzahl der Köpfe ist 2 mod 5.
⇒ Der Zielzustand kann nicht erreicht werden. (Schade!)
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Kreissegmente
Startzustand:
0
0
1
0
0
1
Erlaubte Aktion: Wert in zwei benachbarten Feldern um je 1 erhöhen.
Zielzustand: Alle Zahlen gleich.
Invariante: Die alternierende Summe der Felder beträgt 2.
⇒ Der Zielzustand kann nicht erreicht werden.
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Schachbretter überdecken 2
Startzustand: 8 × 8-Schachbrett.
Erlaubte Aktion: 1 × 4-Rechteck auf das Brett legen.
Zielzustand: Nur noch ein 2 × 2-Quadrat ist nicht überdeckt.
Idee: Beschrifte die Felder, sodass ein 1 × 4-Rechteck, jede Zahl einmal
trifft.
Invariante: Es ist jede Zahl gleich oft überdeckt.
⇒ Der Zielzustand kann nicht erreicht werden. (Betrachte Quadrate.)
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Chamäleons
Startzustand: 14 gelbe, 16 rote und 18 blaue Chamäleons.
Erlaubte Aktion: Je ein Chamäleon von zwei Farben in zwei Chamäleons
der dritten Farbe verwandeln.
Zielzustand: 48 Chamäleons derselben Farbe.
Invariante: Die Differenzen der Anzahlen bleiben modulo 3 gleich.
Beispiel: #rot − #gelb ≡ 2 mod 3.
⇒ Der Zielzustand kann nicht erreicht werden. (Im Zielzustand sind die
Differenzen 0 bzw. 48 ≡ 0 mod 3.)
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Das Spatzenproblem
Startzustand: Auf sechs im Kreis stehenden Häusern sitzt je ein Spatz.
Erlaubte Aktion: Ein Spatz im Uhrzeigersinn ein Haus und zugleich einen
Spatz in die andere Richtung ein Haus weiter bewegen.
Zielzustand: Alle Spatzen auf einem Dach.
Invariante: Für die gewichtete Summe S = 1s1 + 2s2 + . . . + 6s6 der
Anzahlen der Spatzen si gilt S ≡ 3 mod 6.
⇒ Der Zielzustand kann nicht erreicht werden. (Wenn alle Spatzen auf
einem Dach sitzen, müsste S durch 6 teilbar sein.)
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Definition: Halbinvariante
Bei einer Invariante bleibt eine Eigenschaft immer konstant.
Eine Halbinvariante ist eine Eigenschaft, die sich durch Anwendung des
Algorithmus nur in eine Richtung verändert.
Beispiel: Im Startzustand ist die Summe von Zahlen 15. Durch den
Algorithmus wird die Summe kleiner oder bleibt gleich, wird aber definitiv
nicht größer. Dann kann die Summe nie 16 werden.
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Einführung
Übungsaufgaben
Halbinvarianten
Infizierte Zelle
Startzustand: 10 × 10-Schachbrett mit 9 zufälligen infizierten Zellen.
Erlaubte Aktion: Felder mit mindestens zwei kranken Nachbarn infizieren.
Zielzustand: Alle Felder infizieren.
(Halb-)Invariante: Der Umfang des infizierten Gebiets wird nicht größer.
⇒ Der Zielzustand kann nicht erreicht werden. (Umfang nie 40.)
Florian Schweizer
Einführung in das Invarianzprinzip
Mathecamp
Herunterladen