ersten 3 Kapitel fertig.
This commit is contained in:
parent
68e162a4a1
commit
a411c1012b
52
arbeit/ma.md
52
arbeit/ma.md
@ -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?}
|
||||||
|
|
||||||
|
BIN
arbeit/ma.pdf
BIN
arbeit/ma.pdf
Binary file not shown.
@ -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?}
|
||||||
|
|
||||||
|
@ -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
|
||||||
|
Loading…
Reference in New Issue
Block a user