ersten 3 Kapitel fertig.

This commit is contained in:
Nicole Dresselhaus 2017-10-14 13:45:22 +02:00
parent 68e162a4a1
commit a411c1012b
Signed by: Drezil
GPG Key ID: 057D94F356F41E25
4 changed files with 99 additions and 53 deletions

View File

@ -180,14 +180,18 @@ continuous (given $d \ge 1$) as every $p_i$ gets blended in between $\tau_i$ and
$\tau_{i+d}$ and out between $\tau_{i+1}$, and $\tau_{i+d+1}$ as can bee seen from the two coefficients $\tau_{i+d}$ and out between $\tau_{i+1}$, and $\tau_{i+d+1}$ as can bee seen from the two coefficients
in every step of the recursion. in every step of the recursion.
\improvement[inline]{Weitere Eigenschaften erwähnen: This means that all changes are only a local linear combination between the
\newline Convex hull control--point $p_i$ to $p_{i+d+1}$ and consequently this yields to the
\newline $\sum_i N_i = 1$? convex--hull--property of B-Splines --- meaning, that no matter how we choose
\newline Bilder von Basisfunktionen zur Visualisierung. our coefficients, the resulting points all have to lie inside convex--hull of
the control--points.
\improvement[inline]{
Bilder von Basisfunktionen zur Visualisierung.
} }
For a given number of points $v_1,\dots,v_n$ we can then calculate For a given number of points $v_1,\dots,v_n$ we can then calculate
the contributions $n_{i,j}~:=~N_{j,d,\tau}$ of each control point $p_j$ to get the the contributions \linebreak[4]$n_{i,j}~:=~N_{j,d,\tau}$ of each control point $p_j$ to get the
projection from the control--point--space into the object--space: projection from the control--point--space into the object--space:
$$ $$
v_i = \sum_j n_{i,j} \cdot p_j = \vec{n}_i^{T} \vec{p} v_i = \sum_j n_{i,j} \cdot p_j = \vec{n}_i^{T} \vec{p}
@ -264,16 +268,21 @@ however, is very generic and we introduce it here in a broader sense.
The general shape of an evolutionary algorithm (adapted from The general shape of an evolutionary algorithm (adapted from
\cite{back1993overview}) is outlined in Algorithm \ref{alg:evo}. Here, $P(t)$ \cite{back1993overview}) is outlined in Algorithm \ref{alg:evo}. Here, $P(t)$
denotes the population of parameters in step $t$ of the algorithm. The denotes the population of parameters in step $t$ of the algorithm. The
population contains $\mu$ individuals $a_i$ that fit the shape of the parameters population contains $\mu$ individuals $a_i$ from the possible individual--set
we are looking for. Typically these are initialized by a random guess or just $I$ that fit the shape of the parameters we are looking for. Typically these are
zero. Further on we need a so--called *fitness--function* $\Phi : I \mapsto M$\improvement{Was ist $I,M$?\newline Bezug Genotyp/Phenotyp} that can take initialized by a random guess or just zero. Further on we need a so--called
each parameter to a measurable space along a convergence--function $c : I \mapsto *fitness--function* $\Phi : I \mapsto M$ that can take each parameter to a measurable
\mathbb{B}$ that terminates the optimization. space $M$ (usually $M = \mathbb{R}$) along a convergence--function $c : I \mapsto \mathbb{B}$
that terminates the optimization.
Biologically speaking the set $I$ corresponds to the set of possible *Genotypes*
while $M$ represents the possible observable *Phenotypes*.
The main algorithm just repeats the following steps: The main algorithm just repeats the following steps:
- **Recombine** with a recombination--function $r : I^{\mu} \mapsto I^{\lambda}$ to - **Recombine** with a recombination--function $r : I^{\mu} \mapsto I^{\lambda}$ to
generate new individuals based on the parents characteristics. generate $\lambda$ new individuals based on the characteristics of the $\mu$
parents.
This makes sure that the next guess is close to the old guess. This makes sure that the next guess is close to the old guess.
- **Mutate** with a mutation--function $m : I^{\lambda} \mapsto I^{\lambda}$ to - **Mutate** with a mutation--function $m : I^{\lambda} \mapsto I^{\lambda}$ to
introduce new effects that cannot be produced by mere recombination of the introduce new effects that cannot be produced by mere recombination of the
@ -332,9 +341,23 @@ least get suboptimal solutions fast, which then refine over time.
## Criteria for the evolvability of linear deformations ## Criteria for the evolvability of linear deformations
\label{sec:intro:rvi} \label{sec:intro:rvi}
\improvement[inline]{Nomenklatur. Was ist $\vec{U}$? Kurz Matrix--Darstellung As we have established in chapter \ref{sec:back:ffd}, we can describe a
des Problems & Rückgriff auf FFD-Kapitel.} deformation by the formula
$$
V = UP
$$
where $V$ is a $n \times d$ matrix of vertices, $U$ are the (during
parametrization) calculated deformation--coefficients and $P$ is a $m \times d$ matrix
of control--points that we interact with during deformation.
We can also think of the deformation in terms of differences from the original
coordinates
$$
\Delta V = U \cdot \Delta P
$$
which is isomorphic to the former due to the linear correlation in the
deformation. One can see in this way, that the way the deformation behaves lies
solely in the entries of $U$, which is why the three criteria focus on this.
### Variability ### Variability
@ -550,7 +573,8 @@ entfernen kann?}
For our tests we chose different uniformly sized grids and added gaussian noise For our tests we chose different uniformly sized grids and added gaussian noise
onto each control-point^[For the special case of the outer layer we only applied onto each control-point^[For the special case of the outer layer we only applied
noise away from the object] to simulate different starting-conditions. noise away from the object, so the object is still confined in the convex hull
of the control--points.] to simulate different starting-conditions.
\unsure[inline]{verweis auf DM--FFD?} \unsure[inline]{verweis auf DM--FFD?}

Binary file not shown.

View File

@ -148,20 +148,21 @@ Unless otherwise noted the following holds:
\tightlist \tightlist
\item \item
lowercase letters \(x,y,z\)\\ lowercase letters \(x,y,z\)\\
refer to real variables and represent a point in 3D--Space. refer to real variables and represent the coordinates of a point in
3D--Space.
\item \item
lowercase letters \(u,v,w\)\\ lowercase letters \(u,v,w\)\\
refer to real variables between \(0\) and \(1\) used as coefficients refer to real variables between \(0\) and \(1\) used as coefficients
in a 3D B--Spline grid. in a 3D B--Spline grid.
\item \item
other lowercase letters\\ other lowercase letters\\
refer to other scalar (real) variables. refer to other scalar (real) variables.
\item \item
lowercase \textbf{bold} letters (e.g. \(\vec{x},\vec{y}\))\\ lowercase \textbf{bold} letters (e.g. \(\vec{x},\vec{y}\))\\
refer to 3D coordinates refer to 3D coordinates
\item \item
uppercase \textbf{BOLD} letters (e.g. \(\vec{D}, \vec{M}\))\\ uppercase \textbf{BOLD} letters (e.g. \(\vec{D}, \vec{M}\))\\
refer to Matrices refer to Matrices
\end{itemize} \end{itemize}
\chapter{Introduction}\label{introduction} \chapter{Introduction}\label{introduction}
@ -169,15 +170,15 @@ Unless otherwise noted the following holds:
\improvement[inline]{Mehr Bilder} \improvement[inline]{Mehr Bilder}
Many modern industrial design processes require advanced optimization Many modern industrial design processes require advanced optimization
methods due to the increased complexity. These designs have to adhere to methods due to the increased complexity resulting from more and more
more and more degrees of freedom as methods refine and/or other methods degrees of freedom as methods refine and/or other methods are used.
are used. Examples for this are physical domains like aerodynamic Examples for this are physical domains like aerodynamic (i.e.~drag),
(i.e.~drag), fluid dynamics (i.e.~throughput of liquid) --- where the fluid dynamics (i.e.~throughput of liquid) --- where the complexity
complexity increases with the temporal and spatial resolution of the increases with the temporal and spatial resolution of the simulation ---
simulation --- or known hard algorithmic problems in informatics or known hard algorithmic problems in informatics (i.e.~layouting of
(i.e.~layouting of circuit boards or stacking of 3D--objects). Moreover circuit boards or stacking of 3D--objects). Moreover these are typically
these are typically not static environments but requirements shift over not static environments but requirements shift over time or from case to
time or from case to case. case.
Evolutionary algorithms cope especially well with these problem domains Evolutionary algorithms cope especially well with these problem domains
while addressing all the issues at hand\cite{minai2006complex}. One of while addressing all the issues at hand\cite{minai2006complex}. One of
@ -228,7 +229,7 @@ the original author used, namely \emph{regularity}, \emph{variability},
and \emph{improvement potential}. We introduce these term in detail in and \emph{improvement potential}. We introduce these term in detail in
Chapter \ref{sec:intro:rvi}. In the original publication the author Chapter \ref{sec:intro:rvi}. In the original publication the author
could show a correlation between these evolvability--criteria with the could show a correlation between these evolvability--criteria with the
quality and potential of such optimization. quality and convergence speed of such optimization.
We will replicate the same setup on the same objects but use \acf{FFD} We will replicate the same setup on the same objects but use \acf{FFD}
instead of \acf{RBF} to create a local deformation near the control instead of \acf{RBF} to create a local deformation near the control
@ -332,16 +333,20 @@ between \(\tau_i\) and \(\tau_{i+d}\) and out between \(\tau_{i+1}\),
and \(\tau_{i+d+1}\) as can bee seen from the two coefficients in every and \(\tau_{i+d+1}\) as can bee seen from the two coefficients in every
step of the recursion. step of the recursion.
\improvement[inline]{Weitere Eigenschaften erwähnen: This means that all changes are only a local linear combination between
\newline Convex hull the control--point \(p_i\) to \(p_{i+d+1}\) and consequently this yields
\newline $\sum_i N_i = 1$? to the convex--hull--property of B-Splines --- meaning, that no matter
\newline Bilder von Basisfunktionen zur Visualisierung. how we choose our coefficients, the resulting points all have to lie
inside convex--hull of the control--points.
\improvement[inline]{
Bilder von Basisfunktionen zur Visualisierung.
} }
For a given number of points \(v_1,\dots,v_n\) we can then calculate the For a given number of points \(v_1,\dots,v_n\) we can then calculate the
contributions \(n_{i,j}~:=~N_{j,d,\tau}\) of each control point \(p_j\) contributions \linebreak[4]\(n_{i,j}~:=~N_{j,d,\tau}\) of each control
to get the projection from the control--point--space into the point \(p_j\) to get the projection from the control--point--space into
object--space: \[ the object--space: \[
v_i = \sum_j n_{i,j} \cdot p_j = \vec{n}_i^{T} \vec{p} v_i = \sum_j n_{i,j} \cdot p_j = \vec{n}_i^{T} \vec{p}
\] or written for all points at the same time: \[ \] or written for all points at the same time: \[
\vec{v} = \vec{N} \vec{p} \vec{v} = \vec{N} \vec{p}
@ -420,14 +425,17 @@ broader sense.
The general shape of an evolutionary algorithm (adapted from The general shape of an evolutionary algorithm (adapted from
\cite{back1993overview}) is outlined in Algorithm \ref{alg:evo}. Here, \cite{back1993overview}) is outlined in Algorithm \ref{alg:evo}. Here,
\(P(t)\) denotes the population of parameters in step \(t\) of the \(P(t)\) denotes the population of parameters in step \(t\) of the
algorithm. The population contains \(\mu\) individuals \(a_i\) that fit algorithm. The population contains \(\mu\) individuals \(a_i\) from the
the shape of the parameters we are looking for. Typically these are possible individual--set \(I\) that fit the shape of the parameters we
initialized by a random guess or just zero. Further on we need a are looking for. Typically these are initialized by a random guess or
so--called \emph{fitness--function} just zero. Further on we need a so--called \emph{fitness--function}
\(\Phi : I \mapsto M\)\improvement{Was ist $I,M$?\newline Bezug Genotyp/Phenotyp} \(\Phi : I \mapsto M\) that can take each parameter to a measurable
that can take each parameter to a measurable space along a space \(M\) (usually \(M = \mathbb{R}\)) along a convergence--function
convergence--function \(c : I \mapsto \mathbb{B}\) that terminates the \(c : I \mapsto \mathbb{B}\) that terminates the optimization.
optimization.
Biologically speaking the set \(I\) corresponds to the set of possible
\emph{Genotypes} while \(M\) represents the possible observable
\emph{Phenotypes}.
The main algorithm just repeats the following steps: The main algorithm just repeats the following steps:
@ -435,14 +443,14 @@ The main algorithm just repeats the following steps:
\tightlist \tightlist
\item \item
\textbf{Recombine} with a recombination--function \textbf{Recombine} with a recombination--function
\(r : I^{\mu} \mapsto I^{\lambda}\) to generate new individuals based \(r : I^{\mu} \mapsto I^{\lambda}\) to generate \(\lambda\) new
on the parents characteristics.\\ individuals based on the characteristics of the \(\mu\) parents.\\
This makes sure that the next guess is close to the old guess. This makes sure that the next guess is close to the old guess.
\item \item
\textbf{Mutate} with a mutation--function \textbf{Mutate} with a mutation--function
\(m : I^{\lambda} \mapsto I^{\lambda}\) to introduce new effects that \(m : I^{\lambda} \mapsto I^{\lambda}\) to introduce new effects that
cannot be produced by mere recombination of the parents.\\ cannot be produced by mere recombination of the parents.\\
Typically this just adds minor defects to individual members of the Typically this just adds minor defects to individual members of the
population like adding a random gaussian noise or amplifying/dampening population like adding a random gaussian noise or amplifying/dampening
random parts. random parts.
\item \item
@ -507,8 +515,21 @@ deformations}\label{criteria-for-the-evolvability-of-linear-deformations}
\label{sec:intro:rvi} \label{sec:intro:rvi}
\improvement[inline]{Nomenklatur. Was ist $\vec{U}$? Kurz Matrix--Darstellung As we have established in chapter \ref{sec:back:ffd}, we can describe a
des Problems & Rückgriff auf FFD-Kapitel.} deformation by the formula \[
V = UP
\] where \(V\) is a \(n \times d\) matrix of vertices, \(U\) are the
(during parametrization) calculated deformation--coefficients and \(P\)
is a \(m \times d\) matrix of control--points that we interact with
during deformation.
We can also think of the deformation in terms of differences from the
original coordinates \[
\Delta V = U \cdot \Delta P
\] which is isomorphic to the former due to the linear correlation in
the deformation. One can see in this way, that the way the deformation
behaves lies solely in the entries of \(U\), which is why the three
criteria focus on this.
\subsection{Variability}\label{variability} \subsection{Variability}\label{variability}
@ -730,8 +751,9 @@ entfernen kann?}
For our tests we chose different uniformly sized grids and added For our tests we chose different uniformly sized grids and added
gaussian noise onto each control-point\footnote{For the special case of gaussian noise onto each control-point\footnote{For the special case of
the outer layer we only applied noise away from the object} to the outer layer we only applied noise away from the object, so the
simulate different starting-conditions. object is still confined in the convex hull of the control--points.}
to simulate different starting-conditions.
\unsure[inline]{verweis auf DM--FFD?} \unsure[inline]{verweis auf DM--FFD?}

View File

@ -16,7 +16,7 @@
\usepackage{color} %\colorbox \usepackage{color} %\colorbox
\usepackage{dsfont} %\mathds \usepackage{dsfont} %\mathds
\usepackage{draftwatermark} \usepackage{draftwatermark}
\SetWatermarkLightness{0.9} % default: 0.8 \SetWatermarkLightness{0.95} % default: 0.8
\usepackage{epigraph} \usepackage{epigraph}
% \usepackage{euler} % euler: uni, eucal: baake, ohne: standard % \usepackage{euler} % euler: uni, eucal: baake, ohne: standard
\usepackage{eucal} % euler calligraphy \usepackage{eucal} % euler calligraphy