# 1. Einführung ## Modellbildung - **Modell**: Vereinfachte Darstellung eines Systems - **Simulation**: Virtuelles Experiment ## Mathematische Modellierung - Features, Größen ( Objekte z.B. Staub, Wandposter ; Parameter z.B. Temperatur, Druck) - Wechselwirkungen (Temperatur auf Personen im Raum; Druck und Staub) - Eindeutige Lösung: Existiert eine Lösung und ist sie eindeutig? - Abhängigkeit von Initialwerten: Je nachdem wo man in einem Shooter startet, sind die Überlebenschancen unterschiedlich gut. - Genauigkeit / Auflösung: Personenströme als Flüssigkeit modellieren, kann nicht eine einzelne Person darstellen. ## Modellarten - **Diskret**: In Schritten Simuliert - **Kontinuierlich**: In Echtzeit / stetig Simuliert - **Deterministisch**: Immer das gleiche Ergebnis, mit den gleichen Anfangsbedingungen - **Stochastisch**: Zufällige Ergebnisse, auch mit den gleichen Anfangsbedingungen (z.B. Würfel) - **Inverse**: Ausgangsbedingungen aus Ergebnissen bestimmen oder Ergebnisse aus Ausgangsbedingungen bestimmen ### Skalen - 1D, 2D, 3D, so einfach wie möglich, so komplex wie nötig - Abstraktionsebene: Menschen, Zellen oder Moleküle, oder gar Atome ## Diskretitierung - Gitterbreite h (delta zwischen punkten) # 2. Geometrische Modellierung ## Rigid Body Anforderungen - keine losen Teile (Zusammenhängend) - keine 1D-Teile (z.B Linie, Punkt) - Es muss ein Innen und Außen geben (Volumen) - keine Löcher - keine Überlappungen - Orientierbar (Außen und Innen unterscheidbar) - Manigfaltig möglich (Zwei körper teilen sich eine Kante) ![alt text](image.png) ## Darstellungsformen (Speicherung) - Vertecies (Ecken), Edges (Kanten), Faces (Flächen) - $n_{v} - n_{e} + n_{f} = 2$ (Euler-Formel) -> Gilt für Rechtecke und Dreiecke ### vef-Graph > Es werden nur die Koordinaten der **Eckpunkte** gespeichert, Kanten und Flächen speichern referenzen. Dadurch werden änderungen an den Eckpunkten automatisch in den Kanten und Flächen übernommen. \ > Eine **Kante** wird durch zwei Eckpunkte definiert. \ > Eine **Fläche** durch drei Kanten. \ ![alt text](image-1.png) ## Volumenmodell ![alt text](image-3.png) ### Spacetree - **Balanzierung**: Jeder Knoten entweder **0** oder **4** Kinder (Eine Fläche 2 hat Angrezende Flächen) ![alt text](image-7.png) ![alt text](image-4.png) #### Codierung ![alt text](image-10.png) #### Linearisierung ![alt text](image-11.png) # 3. Spieltheorie ## Definition - **Gewissheit**: Konsequenzen zu Aktionen bekannt - **Risiko**: Wahrscheinlichkeit von Konsequenz zu Aktion teilweise bekannt - **Unsicherheit**:keine Konsequenz zu Aktion bekannt **Modellierung** - Numbers of Players $N=\{1,2, \ldots, n\}$ - Anzahl Aktionen (Strategien)$A_i\qquad i\in \mathbb{N}$ - Menge Aktionsprofile (Strategieprofile) $A=\{\left( a_i \right)_{i\in \mathbb{N}}, a_i\in A_i, i\in\mathbb{N} \}$ - Auszahlungsfunktion $u_i: A\rightarrow\mathbb{R}$ ## Unterteilung - **Kooperation** - **kooperative Spiele**: Spieler kooperieren müssen um zu gewinnen. - **nicht-kooperative Spiele**: Spieler konkurrieren um zu gewinnen / spielen gegeneinander. (z.B. nur einer kann gewinnen) - **Serie** - **simultane Spiele**: In einem Durchlauf treffen alle für sich gleichzeitig die Wahl. - **sequentielle Spiele**: Regeln wer wann Entscheiden darf.Sequenzielle Abfolge. ## Darstellung - Bimatrixform / Normalform - Gewinn wird angezeigt ($u_i$, $u_i$) ![bimatrix](image-12.png) ## Reine Strategien ### Gefangenen-Dilema - Zwei Subjects $A_1\textrm{ und }A_2$ - Mögliche Aktionen - **Leugnen L**: Niedrigere Strafe (2 Jahre) - **Gestehen G**: Volle Strafe 5 (Kronzeuge) oder 8 Jahre ### Nash-Gleichgewicht > Ist das Optimale Ergebnis für **alle** Spieler - Wenn ein Spieler durch Ändern seiner Strategie, seinen Gewinn erhöhen kann, ist der aktuelle Zustand nicht im Nash-Gleichgewicht. **Vorsicht!**: - Jede Zelle muss einzeln betrachtet werden - WICHTIG: Nicht mit der gleichen Strategie vergleichen - Nash-Gleichgewicht muss für BEIDE Spieler gelten ![nash](image-14.png) #### Dominante Strategien > Eine Strategie die besser oder gleich gut ist wie alle anderen Strategien (>=) **Beispiel:** Sicht von S1: - S2 nimmt Leugnen: Nimmt S1 Gestehen = 8, nimmt S1 Leugnen = 6. 8 >= 6 - S2 nimmt Gestehen: Nimmt S1 Gestehen = 3, nimmt S1 Leugnen = 0. 3 >= 0 - Kreuzen sich Dominante Strategien, ist dort das Nash-Gleichgewicht (aber nicht umgekehrt) #### Stark Dominante Strategien > Eine Strategie die echt besser ist als alle anderen Strategien (>) #### Falke-Taube-Spiel #### Zwei-Personen-Nullsummenspiel - Spieler 2 will gewinn maximieren, Spieler 1 will verlust minimieren - nicht jedes 2PNS in reinen Strategien hat ein Nash-Gleichgewicht. - **Gewinnfunktion**: $u_2 = -u_1$ - Matrixform ![bimatrix_und_matrix](image-13.png) ##### Konservative Strategien - Wenn die Konservate Strategie beider Spieler gleich ist, ist dort ein Nash-Gleichgewicht. **MinMax-Strategie** Was sollte ich höchstens verlieren? > 1. Mache eine liste mit dem jeweils größten Verlust > 2. Daraus wähle den kleinsten Verlust $$U_{-} = \min_{i}(\max_{j}(a_{ij}) )$$ **MaxMin-Strategie** Was sollte ich mindestens gewinnen? > 1. Mache eine liste mit dem minimalen gewinn > 2. Daraus wähle den größten Gewinn $$U_{+} = \max_{j}(\min_{i}(a_{ij}) )$$ **Sattelpunkt** > Nash-Gleichgewicht, wenn die Untergrenze und Obergrenze übereinstimmen. Dort ist auch der Sattelpunkt. $$U_{-} = a_{i^* j^*} = U_{+}$$ ![alt text](image-15.png) ## Gemischte Strategien > Spieler entscheidet zufällig zwischen Strategien - Jede Strategie hat eine Wahrscheinlichkeit. $p_i$ - Alle Wahrscheinlichkeiten addieren sich zu 1: $\sum_{i} p_i = 1$ - Minimum 2 Strategien **Beispiel Spieler 1:** $$p_1 = 70\%$$ $$p_2 = 1-p_1 = 30\%$$ **Beispiel Spieler 2:** $$q_1 = 60\%$$ $$q_2 = 1-q_1 = 40\%$$ >Summe aus allen Zellen, eine Zelle wird mit der Wahrscheinlichkeit von Zeile und Spalte Multipliziert. **ACHTUNG KANN MAN NUR GRAPHISCH LÖSEN** ![alt text](image-19.png) ### Lösen von Gemischten Strategien > **Tip**: Beim Vereinfachen nicht die Klammern ausmultiplizeren, weil man einfach kürzen kann. 1. Setze Erwartungswerte gleich von Beiden Strategien für Beide Spieler **Berechnen von q aus Sicht von Spieler 1** $$\mu_{S_{11}} = \mu_{S_{12}}$$ **Berechnung von p aus Sicht von Spieler 2** $$\mu_{S_{21}} = \mu_{S_{22}}$$ 2. Einsetzen der Erwartungswerte und U- und U+ ausrechnen 3. Wenn U- und U+ gleich sind, ist das Nash-Gleichgewicht > **INFO**: Wenn eine Freie Variable in der Gleichung ist, die gleichung in abhängigkeit von der freien Variable umstellen, nash-gleichgewicht ist dann von z.B. s abhängig. ![alt text](image-20.png) ![alt text](image-22.png) ## Gruppenentscheidungen - Menge an Auswahlmöglichkeiten - Jeder Möglichkeit wird eine Zahl ( $k \isin \N$ ) zugeordnet ( Rang ) - Rangabbildung ist Surjetiv (Jede Möglichkeit hat einen Rang. Ein Rang kann aber mehrmals auftreten ) ### Relationen $$r(x) < r(y): \text{x ist besser als y}$$ $$x \ R \ y: \text{x steht in Relation zu y}$$ >reflexiv schließt asymetrisch aus und umgekehrt - **transitiv**: $x \ R \ y \ und \ y \ R \ z \Rightarrow x \ R \ z$ - $\text{Wenn 2 < 3 und 3 < 4, dann auch 2 < 4}$ - **reflexiv**: $x \ R \ x$ - $\text{2 <= 2}$ - **asymetrisch**: $x \ R \ y \And y \ R \ x \Rightarrow False$ - $\text{2 < 3, aber nicht 3 < 2}$ ### Präferenzen ![](image-23.png) ![alt text](image-24.png) >*Lesen*: Von links starten dann relation dann rechts ![](image-26.png) ### Extern/Intern Diktator ![alt text](image-27.png) ### Rangaddition >Jede Wahlmöglichkeit wird mit der Summe der Ränge bewertet. Die Wahlmöglichkeit mit der niedrigsten Summe ist die beste. ![alt text](image-29.png) ![](image-30.png) ### Condorcet-Verfahren (BEI MINUTE 40:00 bis 1:10:00) ![alt text](image-32.png) ![](image-33.png) ### Einstimmigkeit ![alt text](image-34.png) ![alt text](image-37.png) - I.e. Irrelevante Änderungen hinten in der Reihenfolge, dürfen nicht vorne in der Reihenfolge etwas ändern. ![](image-38.png) ![alt text](image-39.png) # 4. Automaten - **Forderung**: Simulation schneller als Echtzeit ## Bestandteile - **Zellraum**: Spielfeld, i.d.R. eine Matrix in der jedes Element einer Zelle entspricht - **Zustandsmenge**: Menge aller möglichen ( diskrete ) Zustände einer Zelle -> State Machine - **Nachbarschaftsbeziehung**: Zustände der Nachbarzellen werden berücksichtigt - **diskrete Zeit**: Zustandsänderung eines ZA erfolgt in diskreten Zeitschritten $\delta t$ (z.B. 1s) - **lokale übergangsfunktion**: Berechnet den Zustand $Z_{t+\delta t}$ einer Zelle aus dem aktuellen Zustand $Z_t$ und den Zuständen der Nachbarzellen ## Nachbarzellen (im 2D und Schachbrett ) - **Moore-Nachbarschaft**: 8 Zellen um die Zelle - **Von-Neumann-Nachbarschaft**: 4 Zellen um die Zelle ## Übergangsfunktion ( Beispiel Conways Game of Life) ```python def transition_function(cell, neighbors): if cell == 0 and sum(neighbors) == 3: # Wenn Zelle tot und 3 Nachbarn lebendig return 1 # Dann wird die Zelle wiederbelebt elif cell == 1 and sum(neighbors) in [2, 3]: # Wenn Zelle lebendig und 2 oder 3 Nachbarn lebendig return 1 else: return 0 ``` ## Game of Life Start mit 2D-Gitter. Jede Zelle ist entweder lebendig oder tot und ändert ihren Zustand gemäß der Nachbarzellen: \ Eine lebende Zelle mit 2 oder 3 lebenden Nachbarn bleibt am Leben, sonst stirbt sie. Eine tote Zelle mit genau 3 lebenden Nachbarn wird lebendig. Es werden ALLE Zellen mit dem aktuellen Zustand und den Nachbarzellen betrachtet, daraus wird der nächste Zustand berechnet, damit die Zellen parallel aktualisiert werden. **Kurzfassung**: - Grid anlegen (2D-Liste) - Jede Runde Nachbarn zählen - Nach obigen Regeln neue Zustände berechnen - Endlos aktualisieren und ausgeben. # Mathe schriftlich rechnen ## Dividieren ![alt text](image-16.png) ## Multiplizieren ![alt text](image-18.png)