Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Neues, eckiges Rad durch altes, rundes Rad ersetzt. #11

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 14 additions & 11 deletions einleitung.tex
Original file line number Diff line number Diff line change
Expand Up @@ -11,27 +11,30 @@
Network Science versucht, diese Eigenschaften zu finden und zu verstehen.
Hierzu vereinigt es Methoden aus Mathematik, Informatik, und Physik.

\vspace{-2em}
\floatmarginfigure{
\begin{marginfigure}
\scalebox{0.9}{
\begin{tikzpicture}[
box/.style={draw, minimum width=8em, minimum height=2.5em, inner sep=0.2em, align=center},
arr/.style={draw, >={LaTeX[width=1em,length=1em]}, thick, ->, labelcolor}
]
\node[box] (s0) at (0, 0.0em) {Algorithmen-\\[-0.4em]entwurf};
\node[box] (s1) at (0, -4.5em) {Theoretische \\[-0.4em] Analyse};
box/.style={draw, minimum width=10em, minimum height=2.5em, inner sep=0.2em, align=center},
arr/.style={draw, >={LaTeX[width=1em,length=1em]}, thick, ->, labelcolor},
every node/.style={font=\marginfont},
]
\node[box] (s0) at (0, 0.0em) {Algorithmenentwurf};
\node[box] (s1) at (0, -4.5em) {Theoretische Analyse};
\node[box] (s2) at (0, -9.0em) {Implementierung};
\node[box] (s3) at (0,-13.5em) {Experimentelle \\[-0.4em] Analyse};
\node[box] (s3) at (0,-13.5em) {Experimentelle Analyse};

\path[arr] (s0) to (s1);
\path[arr] (s1) to (s2);
\path[arr] (s2) to (s3);

\path[arr] (s3.east) to ++(1.5em,0) |- (s0);
\path[arr] (s3.east) to ++(1.5em,0) |- (s2);
\end{tikzpicture}}
\caption{Algorithm Engineering Zyklus}
\label{fig:intro/algorithm-engineering}}
\end{tikzpicture}
}
\caption{Zyklus im Algorithm Engineering}
\label{fig:intro/algorithm-engineering}
\end{marginfigure}

Ziel des \emph{Algorithm Engineering} ist es, die Spaltung zwischen Theorie und Praxis im Algorithmenentwurf zu überbrücken.
Es geht also darum, theoretisch effiziente als auch praktisch schnelle und implementierbare Algorithmen zu entwickeln.
Hierbei kommt oft die in \cref{fig:intro/algorithm-engineering} dargestellte zyklische Entwurfsmethode zum Einsatz:
Expand Down
33 changes: 18 additions & 15 deletions grad_sequenzen.tex
Original file line number Diff line number Diff line change
Expand Up @@ -367,21 +367,6 @@ \section{Chung-Lu Graphen}
\subsection{Rejection Sampling}
Im Folgenden verallgemeinern wird die sog. Verwerfungsmethode (rejection sampling), die wir bereits in einer sehr einfachen Ausprägung beim Ziehen ohne Zurücklegen und Generieren einfacher Graphen genutzt haben.
Damals war die Kernidee jedes Mal etwa:
\floatmarginfigure{
\begin{tikzpicture}
\node[draw, minimum width=4cm, minimum height=4cm] {};

\foreach \x in {-18, -16, ..., 18} {
\foreach \y in {-18, -16, ..., 18} {
\node[circle, inner sep=0, minimum width=0.5mm, fill] at (\x mm, \y mm) {};
}
}
\node[fill=blue, opacity=0.2, cloud, minimum width=3.8cm, minimum height=2.5cm] (c) at (0,0) {};
\node[draw, cloud, minimum width=3.8cm, minimum height=2.5cm] (c) at (0,0) {Ziel};
\end{tikzpicture}
\caption{Rejection Sampling für Uniforme Verteilung}
\label{fig:rejection-uniform}
}
Wir nutzen einen stochastischen Prozess, der uns Vorschläge unterbreitet (proposal distribution).
Dieser Prozess hatte bereits die gewünschte Verteilung, lieferte aber u.\,U. Vorschläge, die wir kategorisch ablehnen mussten;
beim $\Gnm$-Modell mussten wir bereits gezogene Kanten zurückweisen.
Expand All @@ -393,6 +378,24 @@ \subsection{Rejection Sampling}
Die Zielverteilung ist ebenfalls uniform -- allerdings über einer eingeschränkten Grundgesamtheit.
Das Gitter ist auch auf dieser uniform verteilt.

\begin{marginfigure}
\begin{tikzpicture}[
every node/.style={font=\marginfont},
]
\node[draw, minimum width=4cm, minimum height=4cm] {};

\foreach \x in {-18, -16, ..., 18} {
\foreach \y in {-18, -16, ..., 18} {
\node[circle, inner sep=0, minimum width=0.5mm, fill] at (\x mm, \y mm) {};
}
}
\node[fill=blue, opacity=0.2, cloud, minimum width=3.8cm, minimum height=2.5cm] (c) at (0,0) {};
\node[draw, cloud, minimum width=3.8cm, minimum height=2.5cm] (c) at (0,0) {Ziel};
\end{tikzpicture}
\caption{Rejection Sampling für uniforme Verteilung}
\label{fig:rejection-uniform}
\end{marginfigure}

Ein weiteres Beispiel ist ein normaler Spielwürfel mit sechs gleich wahrscheinlichen Seiten, die von $1$ bis $6$ beschriftet sind.
Wir können mit diesem Würfel uniform aus \set{1,2,3,4,5} ziehen:
Falls eine Sechs gewürfelt wird, verwerfen wir diese und versuchen es erneut.
Expand Down
9 changes: 1 addition & 8 deletions style.tex
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@
\sidecaptionvpos{table}{t}
\renewcommand*\sidecaptionrelwidth{0.75}
\captionsetup[table]{format=plain, font={color=sidecolor,small}}
\DeclareCaptionStyle{marginfigure}{format=plain, labelfont={sf,color=labelcolor,small}, textfont={sl,sf,small}}
\DeclareCaptionStyle{marginfigure}{format=plain, labelfont={sf,color=labelcolor}, textfont={sf}}
\DeclareCaptionStyle{sidecaption}{format=plain, font={color=sidecolor, small}, labelfont={sf,color=labelcolor}, textfont={sl,sf}}
\DeclareCaptionStyle{sidecapfmt}{format=plain, font={color=sidecolor, small}, labelfont={sf,color=labelcolor}, textfont={sl,sf}}

Expand Down Expand Up @@ -371,11 +371,4 @@
}{
\resettocdepth
\end{subappendices}
}

\newcommand{\floatmarginfigure}[1]{
\begin{figure}[h]%
\aside{\ \par \vspace{-0.5em} #1}%
\vspace{-1.5em}
\end{figure}
}