Update
This commit is contained in:
parent
6ae93e74f5
commit
7b4f3b8625
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
.ipynb_checkpoints
|
2
jupyter/Makefile
Normal file
2
jupyter/Makefile
Normal file
@ -0,0 +1,2 @@
|
||||
all:
|
||||
jupyter nbconvert --to html "The Art of Memory Loss.ipynb" --config jupyter_nbconvert_config.py
|
@ -3,7 +3,7 @@
|
||||
<head><meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
<title>Untitled</title><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.10/require.min.js"></script>
|
||||
<title>The Art of Memory Loss</title><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.10/require.min.js"></script>
|
||||
|
||||
|
||||
|
||||
@ -15556,7 +15556,7 @@ $$
|
||||
</div>
|
||||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
|
||||
<p>Wir können alle Übergangswahrscheinlichkeiten $P(s \to s')$ elegant als Matrix $M$ notieren:</p>
|
||||
<p>Wir können alle Übergangswahrscheinlichkeiten $P(s \to s')$ als Matrix $M$ notieren:</p>
|
||||
$$
|
||||
M =
|
||||
\begin{pmatrix} m_{LL} & m_{LR} \\ m_{RL} & m_{RR}
|
||||
@ -15564,6 +15564,259 @@ M =
|
||||
\begin{pmatrix} 1 - p & p \\ q & 1-q
|
||||
\end{pmatrix}
|
||||
$$
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="cell-id=4287f203" class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
|
||||
<div class="jp-Cell-inputWrapper">
|
||||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||||
</div>
|
||||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
|
||||
<p>Wir schreiben die Wahrscheinlichkeiten, dass der Frosch zum Zeitpunkt $t$ in $L$ oder $R$ ist, als Vektoren.</p>
|
||||
$$
|
||||
X_0 = \begin{pmatrix}1 \\ 0\end{pmatrix}
|
||||
$$
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="cell-id=25a506f5" class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
|
||||
<div class="jp-Cell-inputWrapper">
|
||||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||||
</div>
|
||||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
|
||||
<p>Ein Zeitschritt $t=0 \to t=1$ verändert die Verteilung gemäß $M$:</p>
|
||||
$$
|
||||
X_0 = \begin{pmatrix}1 \\ 0\end{pmatrix} \to \begin{pmatrix}1-p \\ p \end{pmatrix} = X_1
|
||||
$$
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="cell-id=0d56b780" class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
|
||||
<div class="jp-Cell-inputWrapper">
|
||||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||||
</div>
|
||||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
|
||||
<h1 id="Matrixmultiplikation">Matrixmultiplikation<a class="anchor-link" href="#Matrixmultiplikation">¶</a></h1>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="cell-id=5db5186d" class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
|
||||
<div class="jp-Cell-inputWrapper">
|
||||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||||
</div>
|
||||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
|
||||
<p>Den Folgezustand von $X = \begin{pmatrix}L & R\end{pmatrix}$ mit Übergangsmatrix $M$ berechnen wir als</p>
|
||||
$$
|
||||
\begin{align*}
|
||||
\begin{pmatrix}L' \\ R'\end{pmatrix}^T &= \begin{pmatrix}L & R\end{pmatrix} \cdot M \\
|
||||
&= \begin{pmatrix}L & R\end{pmatrix} \cdot \begin{pmatrix} \color{green}{1 - p} & \color{orange}{p} \\ \color{green}{q} & \color{orange}{1-q} \end{pmatrix} \\
|
||||
=& \begin{pmatrix}L \cdot \color{green}{(1 - p)} + R \cdot \color{green}{q} \\
|
||||
L \cdot \color{orange}{p} + R \cdot \color{orange}{(1-q)}
|
||||
\end{pmatrix}^T
|
||||
\end{align*}
|
||||
$$
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="cell-id=782d4f7a" class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
|
||||
<div class="jp-Cell-inputWrapper">
|
||||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||||
</div>
|
||||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
|
||||
<blockquote>
|
||||
<p>Man berechnet die neuen Einträge als "Zeile mal Spalte"</p>
|
||||
</blockquote>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div><div id="cell-id=e9f7e2f6" class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
|
||||
<div class="jp-Cell-inputWrapper">
|
||||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||||
</div>
|
||||
<div class="jp-InputArea jp-Cell-inputArea">
|
||||
<div class="jp-InputPrompt jp-InputArea-prompt">In [27]:</div>
|
||||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||||
<div class="CodeMirror cm-s-jupyter">
|
||||
<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">sympy</span> <span class="kn">import</span> <span class="n">symbols</span> <span class="k">as</span> <span class="n">S</span><span class="p">,</span> <span class="n">Matrix</span> <span class="k">as</span> <span class="n">Mat</span>
|
||||
<span class="n">p</span><span class="p">,</span> <span class="n">q</span> <span class="o">=</span> <span class="n">S</span><span class="p">(</span><span class="s2">"p q"</span><span class="p">)</span>
|
||||
<span class="n">M</span> <span class="o">=</span> <span class="n">Mat</span><span class="p">([[</span><span class="mi">1</span><span class="o">-</span><span class="n">p</span><span class="p">,</span> <span class="n">p</span><span class="p">],</span> <span class="p">[</span><span class="n">q</span><span class="p">,</span> <span class="mi">1</span><span class="o">-</span><span class="n">q</span><span class="p">]])</span>
|
||||
</pre></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div id="cell-id=daddfd1e" class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
|
||||
<div class="jp-Cell-inputWrapper">
|
||||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||||
</div>
|
||||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
|
||||
<h2 id="Beispiele">Beispiele<a class="anchor-link" href="#Beispiele">¶</a></h2>$$
|
||||
\begin{pmatrix}1 & 0\end{pmatrix}\cdot M = \begin{pmatrix}1-p & p\end{pmatrix}
|
||||
$$
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="cell-id=c1a6597e" class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
|
||||
<div class="jp-Cell-inputWrapper">
|
||||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||||
</div>
|
||||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
|
||||
$$
|
||||
\begin{align*}
|
||||
\begin{pmatrix}1 \\ 1\end{pmatrix}^T\cdot M &= \begin{pmatrix} (1-p) + q \\ p + (1-q)\end{pmatrix}^T \\
|
||||
& = \begin{pmatrix} (1-p) + q \\ p +(1-q)\end{pmatrix}^T \\
|
||||
\end{align*}
|
||||
$$
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div><div id="cell-id=aa2e9aca" class="jp-Cell jp-CodeCell jp-Notebook-cell ">
|
||||
<div class="jp-Cell-inputWrapper">
|
||||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||||
</div>
|
||||
<div class="jp-InputArea jp-Cell-inputArea">
|
||||
<div class="jp-InputPrompt jp-InputArea-prompt">In [29]:</div>
|
||||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||||
<div class="CodeMirror cm-s-jupyter">
|
||||
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">v1</span> <span class="o">=</span> <span class="n">Mat</span><span class="p">([[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">]])</span>
|
||||
<span class="n">v1</span> <span class="o">*</span> <span class="n">M</span>
|
||||
</pre></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="jp-Cell-outputWrapper">
|
||||
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
|
||||
</div>
|
||||
|
||||
|
||||
<div class="jp-OutputArea jp-Cell-outputArea">
|
||||
<div class="jp-OutputArea-child jp-OutputArea-executeResult">
|
||||
|
||||
<div class="jp-OutputPrompt jp-OutputArea-prompt">Out[29]:</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="jp-RenderedLatex jp-OutputArea-output jp-OutputArea-executeResult" data-mime-type="text/latex">
|
||||
$\displaystyle \left[\begin{matrix}1 - p & p\end{matrix}\right]$
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div><div id="cell-id=b31deb83" class="jp-Cell jp-CodeCell jp-Notebook-cell ">
|
||||
<div class="jp-Cell-inputWrapper">
|
||||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||||
</div>
|
||||
<div class="jp-InputArea jp-Cell-inputArea">
|
||||
<div class="jp-InputPrompt jp-InputArea-prompt">In [25]:</div>
|
||||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||||
<div class="CodeMirror cm-s-jupyter">
|
||||
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">v2</span> <span class="o">=</span> <span class="n">Mat</span><span class="p">([[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">]])</span>
|
||||
<span class="n">v2</span> <span class="o">*</span> <span class="n">M</span>
|
||||
</pre></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="jp-Cell-outputWrapper">
|
||||
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
|
||||
</div>
|
||||
|
||||
|
||||
<div class="jp-OutputArea jp-Cell-outputArea">
|
||||
<div class="jp-OutputArea-child jp-OutputArea-executeResult">
|
||||
|
||||
<div class="jp-OutputPrompt jp-OutputArea-prompt">Out[25]:</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="jp-RenderedLatex jp-OutputArea-output jp-OutputArea-executeResult" data-mime-type="text/latex">
|
||||
$\displaystyle \left[\begin{matrix}- p + q + 1 & p - q + 1\end{matrix}\right]$
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div id="cell-id=8a0fa546" class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
|
||||
<div class="jp-Cell-inputWrapper">
|
||||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||||
</div>
|
||||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
|
||||
<h1 id="Fr%C3%B6sche-brauchen-Zufall">Frösche brauchen Zufall<a class="anchor-link" href="#Fr%C3%B6sche-brauchen-Zufall">¶</a></h1><div class="alert alert-info">
|
||||
<p>Viele Leute werfen Münzen in den Teich der Frösche.
|
||||
Wir sollen einen Frosch aussuchen, der der neue Schatzmeister werden soll.
|
||||
Wie können wir aus den 7 Fröschen <strong>fair</strong> einen auswählen?</p>
|
||||
</div>
|
||||
<p><strong>Bedingungen</strong>:</p>
|
||||
<ul>
|
||||
<li>Jeder Frosch wird mit $\frac{1}{7}$ ausgewählt</li>
|
||||
<li>Zufall nur durch die Münzen</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div><div id="cell-id=5d3f53ad" class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
|
||||
<div class="jp-Cell-inputWrapper">
|
||||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||||
</div>
|
||||
<div class="jp-InputArea jp-Cell-inputArea">
|
||||
<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div>
|
||||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||||
<div class="CodeMirror cm-s-jupyter">
|
||||
<div class=" highlight hl-ipython3"><pre><span></span>
|
||||
</pre></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div id="cell-id=9514b1c1" class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
|
||||
<div class="jp-Cell-inputWrapper">
|
||||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||||
</div>
|
||||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
|
||||
<ul>
|
||||
<li>die Berechnung von ganzfrüh aus der Tabelle nenen wir Matrixmultiplikation.</li>
|
||||
<li>MM captures the idea that "</li>
|
||||
<li>denn, wir können Lineare Algebra machen. $v_0^T\cdot{}M = v_1$</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -15572,18 +15825,15 @@ $$
|
||||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||||
</div>
|
||||
<div class="jp-InputArea jp-Cell-inputArea">
|
||||
<div class="jp-InputPrompt jp-InputArea-prompt">In [4]:</div>
|
||||
<div class="jp-InputPrompt jp-InputArea-prompt">In [26]:</div>
|
||||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||||
<div class="CodeMirror cm-s-jupyter">
|
||||
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## Frösche brauchen Zufall</span>
|
||||
|
||||
<span class="p">:::</span><span class="n">info</span>
|
||||
<span class="n">Viele</span> <span class="n">Leute</span> <span class="n">werfen</span> <span class="n">Münzen</span> <span class="ow">in</span> <span class="n">den</span> <span class="n">Teich</span> <span class="n">der</span> <span class="n">Frösche</span><span class="o">.</span> <span class="n">Wir</span> <span class="n">sollen</span> <span class="n">einen</span> <span class="n">Frosch</span> <span class="n">aussuchen</span><span class="p">,</span> <span class="n">der</span> <span class="n">der</span> <span class="n">neue</span> <span class="n">Schatzmeister</span> <span class="n">werden</span> <span class="n">soll</span><span class="o">.</span> <span class="n">Wie</span> <span class="n">können</span> <span class="n">wir</span> <span class="n">aus</span> <span class="n">den</span> <span class="mi">7</span> <span class="n">Fröschen</span> <span class="o">**</span><span class="n">fair</span><span class="o">**</span> <span class="n">einen</span> auswählen<span class="o">?</span>
|
||||
|
||||
<span class="p">:::</span>
|
||||
|
||||
<span class="o">**</span><span class="n">Bedingungen</span><span class="o">**</span><span class="p">:</span>
|
||||
<span class="o">-</span> <span class="n">Jeder</span> <span class="n">Frosch</span> <span class="n">wird</span> <span class="n">mit</span> <span class="err">$</span>\<span class="n">frac</span><span class="p">{</span><span class="mi">1</span><span class="p">}{</span><span class="mi">7</span><span class="p">}</span><span class="err">$</span> <span class="n">ausgewählt</span>
|
||||
<span class="o">-</span> <span class="n">Zufall</span> <span class="n">nur</span> <span class="n">durch</span> <span class="n">die</span> <span class="n">Münzen</span>
|
||||
|
||||
<span class="o">---</span>
|
||||
|
||||
@ -15668,7 +15918,7 @@ $$
|
||||
|
||||
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="application/vnd.jupyter.stderr">
|
||||
<pre>
|
||||
<span class="ansi-cyan-fg"> Cell </span><span class="ansi-green-fg">In[4], line 3</span>
|
||||
<span class="ansi-cyan-fg"> Cell </span><span class="ansi-green-fg">In[26], line 3</span>
|
||||
<span class="ansi-red-fg"> :::info</span>
|
||||
^
|
||||
<span class="ansi-red-fg">SyntaxError</span><span class="ansi-red-fg">:</span> invalid syntax
|
@ -130,13 +130,7 @@
|
||||
}
|
||||
},
|
||||
"source": [
|
||||
"## Frösche Simulieren\n",
|
||||
"\n",
|
||||
"<div class=\"alert alert-success\">\n",
|
||||
" \n",
|
||||
"Wie oft ist der Frosch im Schnitt in $l$, wie oft in $r$?\n",
|
||||
"\n",
|
||||
"</div>"
|
||||
"## Frösche Simulieren"
|
||||
]
|
||||
},
|
||||
{
|
||||
@ -162,25 +156,13 @@
|
||||
"# Los geht's!"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "68dd379a",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "subslide"
|
||||
}
|
||||
},
|
||||
"source": [
|
||||
"## Frösche Simulieren"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 2,
|
||||
"execution_count": 5,
|
||||
"id": "41017b8e",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "fragment"
|
||||
"slide_type": "subslide"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
@ -189,8 +171,8 @@
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"100000/100000\n",
|
||||
" 0.2473 of the time at 0 (24735 total)\n",
|
||||
" 0.7527 of the time at 1 (75265 total)\n"
|
||||
" 0.2495 of the time at 0 (24945 total)\n",
|
||||
" 0.7506 of the time at 1 (75055 total)\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
@ -238,7 +220,10 @@
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "subslide"
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"hide_cell"
|
||||
]
|
||||
},
|
||||
"source": [
|
||||
"## Frösche Analysieren\n",
|
||||
@ -258,7 +243,10 @@
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "fragment"
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"hide_cell"
|
||||
]
|
||||
},
|
||||
"source": [
|
||||
"<div class=\"alert alert-success\">\n",
|
||||
@ -322,7 +310,10 @@
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "fragment"
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"hide_cell"
|
||||
]
|
||||
},
|
||||
"source": [
|
||||
"<div class=\"alert alert-info\">\n",
|
||||
@ -345,7 +336,10 @@
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "subslide"
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"hide_cell"
|
||||
]
|
||||
},
|
||||
"source": [
|
||||
"## Frösche Analysieren\n",
|
||||
@ -534,7 +528,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "aa49d253",
|
||||
"id": "12dde881",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "subslide"
|
||||
@ -556,7 +550,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "49223769",
|
||||
"id": "7ded753c",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "fragment"
|
||||
@ -571,15 +565,16 @@
|
||||
]
|
||||
},
|
||||
{
|
||||
"attachments": {},
|
||||
"cell_type": "markdown",
|
||||
"id": "da7c1cee",
|
||||
"id": "0c8c91ad",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "subslide"
|
||||
}
|
||||
},
|
||||
"source": [
|
||||
"Wir können alle Übergangswahrscheinlichkeiten $P(s \\to s')$ elegant als Matrix $M$ notieren:\n",
|
||||
"Wir können alle Übergangswahrscheinlichkeiten $P(s \\to s')$ als Matrix $M$ notieren:\n",
|
||||
"\n",
|
||||
"$$\n",
|
||||
"M = \n",
|
||||
@ -590,9 +585,245 @@
|
||||
"$$"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "4287f203",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "fragment"
|
||||
}
|
||||
},
|
||||
"source": [
|
||||
"Wir schreiben die Wahrscheinlichkeiten, dass der Frosch zum Zeitpunkt $t$ in $L$ oder $R$ ist, als Vektoren.\n",
|
||||
"\n",
|
||||
"$$\n",
|
||||
"X_0 = \\begin{pmatrix}1 \\\\ 0\\end{pmatrix}\n",
|
||||
"$$"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "25a506f5",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "fragment"
|
||||
}
|
||||
},
|
||||
"source": [
|
||||
"Ein Zeitschritt $t=0 \\to t=1$ verändert die Verteilung gemäß $M$:\n",
|
||||
"\n",
|
||||
"$$\n",
|
||||
"X_0 = \\begin{pmatrix}1 \\\\ 0\\end{pmatrix} \\to \\begin{pmatrix}1-p \\\\ p \\end{pmatrix} = X_1\n",
|
||||
"$$"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "0d56b780",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "subslide"
|
||||
}
|
||||
},
|
||||
"source": [
|
||||
"# Matrixmultiplikation"
|
||||
]
|
||||
},
|
||||
{
|
||||
"attachments": {},
|
||||
"cell_type": "markdown",
|
||||
"id": "5db5186d",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "subslide"
|
||||
}
|
||||
},
|
||||
"source": [
|
||||
"Den Folgezustand von $X = \\begin{pmatrix}L & R\\end{pmatrix}$ mit Übergangsmatrix $M$ berechnen wir als\n",
|
||||
"\n",
|
||||
"$$\n",
|
||||
"\\begin{align*}\n",
|
||||
"\\begin{pmatrix}L' \\\\ R'\\end{pmatrix}^T &= \\begin{pmatrix}L & R\\end{pmatrix} \\cdot M \\\\\n",
|
||||
"&= \\begin{pmatrix}L & R\\end{pmatrix} \\cdot \\begin{pmatrix} \\color{green}{1 - p} & \\color{orange}{p} \\\\ \\color{green}{q} & \\color{orange}{1-q} \\end{pmatrix} \\\\\n",
|
||||
"=& \\begin{pmatrix}L \\cdot \\color{green}{(1 - p)} + R \\cdot \\color{green}{q} \\\\\n",
|
||||
"L \\cdot \\color{orange}{p} + R \\cdot \\color{orange}{(1-q)} \n",
|
||||
"\\end{pmatrix}^T\n",
|
||||
"\\end{align*}\n",
|
||||
"$$"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "782d4f7a",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "fragment"
|
||||
}
|
||||
},
|
||||
"source": [
|
||||
"> Man berechnet die neuen Einträge als \"Zeile mal Spalte\""
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 4,
|
||||
"execution_count": 27,
|
||||
"id": "e9f7e2f6",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "skip"
|
||||
}
|
||||
},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"from sympy import symbols as S, Matrix as Mat\n",
|
||||
"p, q = S(\"p q\")\n",
|
||||
"M = Mat([[1-p, p], [q, 1-q]])"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "daddfd1e",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "subslide"
|
||||
}
|
||||
},
|
||||
"source": [
|
||||
"## Beispiele\n",
|
||||
"\n",
|
||||
"$$\n",
|
||||
"\\begin{pmatrix}1 & 0\\end{pmatrix}\\cdot M = \\begin{pmatrix}1-p & p\\end{pmatrix}\n",
|
||||
"$$"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "c1a6597e",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "fragment"
|
||||
}
|
||||
},
|
||||
"source": [
|
||||
"$$\n",
|
||||
"\\begin{align*}\n",
|
||||
"\\begin{pmatrix}1 \\\\ 1\\end{pmatrix}^T\\cdot M &= \\begin{pmatrix} (1-p) + q \\\\ p + (1-q)\\end{pmatrix}^T \\\\\n",
|
||||
"& = \\begin{pmatrix} (1-p) + q \\\\ p +(1-q)\\end{pmatrix}^T \\\\\n",
|
||||
"\\end{align*}\n",
|
||||
"$$"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 29,
|
||||
"id": "aa2e9aca",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "fragment"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/latex": [
|
||||
"$\\displaystyle \\left[\\begin{matrix}1 - p & p\\end{matrix}\\right]$"
|
||||
],
|
||||
"text/plain": [
|
||||
"Matrix([[1 - p, p]])"
|
||||
]
|
||||
},
|
||||
"execution_count": 29,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"v1 = Mat([[1, 0]])\n",
|
||||
"v1 * M"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 25,
|
||||
"id": "b31deb83",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "fragment"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/latex": [
|
||||
"$\\displaystyle \\left[\\begin{matrix}- p + q + 1 & p - q + 1\\end{matrix}\\right]$"
|
||||
],
|
||||
"text/plain": [
|
||||
"Matrix([[-p + q + 1, p - q + 1]])"
|
||||
]
|
||||
},
|
||||
"execution_count": 25,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"v2 = Mat([[1, 1]])\n",
|
||||
"v2 * M"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "8a0fa546",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "fragment"
|
||||
}
|
||||
},
|
||||
"source": [
|
||||
"# Frösche brauchen Zufall\n",
|
||||
"\n",
|
||||
"<div class=\"alert alert-info\">\n",
|
||||
"\n",
|
||||
"Viele Leute werfen Münzen in den Teich der Frösche.\n",
|
||||
"Wir sollen einen Frosch aussuchen, der der neue Schatzmeister werden soll. \n",
|
||||
"Wie können wir aus den 7 Fröschen **fair** einen auswählen?\n",
|
||||
" \n",
|
||||
"</div>\n",
|
||||
"\n",
|
||||
"**Bedingungen**:\n",
|
||||
"- Jeder Frosch wird mit $\\frac{1}{7}$ ausgewählt\n",
|
||||
"- Zufall nur durch die Münzen\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"id": "5d3f53ad",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "fragment"
|
||||
}
|
||||
},
|
||||
"outputs": [],
|
||||
"source": []
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "9514b1c1",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
"slide_type": "fragment"
|
||||
}
|
||||
},
|
||||
"source": [
|
||||
"- die Berechnung von ganzfrüh aus der Tabelle nenen wir Matrixmultiplikation.\n",
|
||||
"- MM captures the idea that \"\n",
|
||||
"- denn, wir können Lineare Algebra machen. $v_0^T\\cdot{}M = v_1$"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 26,
|
||||
"id": "9d30de72",
|
||||
"metadata": {
|
||||
"slideshow": {
|
||||
@ -605,7 +836,7 @@
|
||||
"evalue": "invalid syntax (2451516634.py, line 3)",
|
||||
"output_type": "error",
|
||||
"traceback": [
|
||||
"\u001b[0;36m Cell \u001b[0;32mIn[4], line 3\u001b[0;36m\u001b[0m\n\u001b[0;31m :::info\u001b[0m\n\u001b[0m ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid syntax\n"
|
||||
"\u001b[0;36m Cell \u001b[0;32mIn[26], line 3\u001b[0;36m\u001b[0m\n\u001b[0;31m :::info\u001b[0m\n\u001b[0m ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid syntax\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
@ -614,12 +845,9 @@
|
||||
"## Frösche brauchen Zufall\n",
|
||||
"\n",
|
||||
":::info\n",
|
||||
"Viele Leute werfen Münzen in den Teich der Frösche. Wir sollen einen Frosch aussuchen, der der neue Schatzmeister werden soll. Wie können wir aus den 7 Fröschen **fair** einen auswählen?\n",
|
||||
"\n",
|
||||
":::\n",
|
||||
"\n",
|
||||
"**Bedingungen**:\n",
|
||||
"- Jeder Frosch wird mit $\\frac{1}{7}$ ausgewählt\n",
|
||||
"- Zufall nur durch die Münzen\n",
|
||||
"\n",
|
||||
"---\n",
|
||||
"\n",
|
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@
|
||||
../bootstrap/css/bootstrap.css
|
Loading…
Reference in New Issue
Block a user