current TeX and code

This commit is contained in:
2017-05-08 14:38:14 +02:00
parent ea887af537
commit 7021034e6d
8 changed files with 107 additions and 43 deletions

View File

@@ -2,13 +2,14 @@
% intro
\commentByFrank{reihenfolge so jetzt klar?}
Within our experiments we will first have a look at model optimizations to reduce the error
between model predictions and real-world conditions.
Hereafter we examine the resulting accuracy when using the optimized models for localization
using just the \docWIFI{} component without additional sensors or assumptions.
Within our experiments we will first have a look at model optimizations to reduce the error (in \decibel)
between model predictions and real-world conditions in section \ref{sec:evalModelOpt}.
%
Hereafter, in section \ref{sec:evalWifiMeter} we examine the resulting accuracy (in \meter)
when using the optimized models for localization solely by the \docWIFI{} component without additional sensors, assumptions or filtering.
%
Finally, all models are evaluated in the context of our indoor localization system \refeq{eq:recursiveDensity},
using additional smartphone sensors and the building's floorplan.
using additional smartphone sensors and the building's floorplan in section \ref{sec:evalFiltered}.
All optimizations and evaluations took place within two adjacent buildings (4 and 2 floors, respectively)
and two connected outdoor regions (entrance and inner courtyard),
@@ -35,9 +36,10 @@
% -------------------------------- optimization -------------------------------- %
\subsection{Model optimization}
\label{sec:evalModelOpt}
As the signal strength prediction model is the core of the absolute positioning component
described in section \ref{sec:system}, we start with the model parameter optimization (see \ref{sec:optimization}).
described in section \ref{sec:system}, we start with the model parameter optimization (see section \ref{sec:optimization}).
\mTXP{}, \mPLE{} and \mWAF{} will be estimated based on some reference measurements using
various optimization strategies. The results of those optimization strategies are compared
with each other and an empiric parameter choice:
@@ -48,7 +50,7 @@
\reffig{fig:referenceMeasurements} depicts the location of the used 121 reference measurements.
Each location was scanned 30 times ($\approx$ \SI{25}{\second} scan time),
non-permanent \docAP{}s were removed, the values were grouped per physical transmitter (see \ref{sec:vap})
non-permanent \docAP{}s were removed, the values were grouped per physical transmitter (see section \ref{sec:vap})
and aggregated to form the average signal strength per transmitter.
\begin{figure}
@@ -64,8 +66,8 @@
\begin{subfigure}[t!]{0.48\textwidth}
\input{gfx2/model-bboxes.tex}
\caption{
Each distinct floor-color denotes one model (7 in total) for {\em \optPerRegion{}}.
Often more than one bounding box is needed to approximate the region's shape.
Each distinct floor-color denotes a region (6 indoors, 1 outdoors) for {\em \optPerRegion{}}.
Often more than one bounding box is needed to describe the region's shape.
}
\label{fig:modelBBoxes}
\end{subfigure}
@@ -120,17 +122,17 @@
\item{
{\em\optParamsAllAP{}} is the same as above, except that the three parameters are optimized
using the reference measurements. However, all transmitters share the same three parameters.
using the reference measurements (convex function). All transmitters share the same three parameters.
}
\item{
{\em\optParamsEachAP{}} optimizes the three parameters per \docAP{} instead of using the same
parameters for all.
parameters for all. This still denotes a convex function per transmitter.
}
\item{
{\em\optParamsPosEachAP{}} does not need any prior knowledge and will optimize all six parameters
(3D position, \mTXP, \mPLE, \mWAF) based on the reference measurements.
(3D position, \mTXP, \mPLE, \mWAF) based on the reference measurements (non-convex function).
}
\item{
@@ -345,11 +347,11 @@
% -------------------------------- wifi walk error -------------------------------- %
\subsection{\docWIFI{} location estimation error}
\label{sec:evalWifiMeter}
\todo{uebergang jetzt besser?}
Having optimized several signal strength prediction models, we can now examine the resulting localization
accuracy for each. For now, this will just cover the \docWIFI{} component itself.
The impact of adding additional sensors and a transition model will be evaluated later.
accuracy (in \meter) for each. For now, this will just cover the \docWIFI{} component itself.
The impact of fusing additional sensors and a adding prior knowledge provided by a transition model will be evaluated later.
%Using the optimized model setups and the measurements $\mRssiVec$ determined by scanning for nearby \docAPshort{}s,
@@ -381,7 +383,8 @@
In \refeq{eq:bestWiFiPos} $\mu_{i,\mPosVec}$ is the signal strength for \docAP{} $i$,
installed at location $\mPosVec$, returned from the to-be-examined prediction model.
For all comparisons, we use a constant uncertainty of $\sigma = \SI{8}{\decibel}$.
For all comparisons, we use a constant uncertainty of $\sigma = \SI{8}{\decibel}$,
which is an empirical choice based on prior experiments.
The quality of the estimated location is determined by using the Euclidean distance between estimation
$\mPosVec^*$ and the pedestrian's ground truth position at the time the scan $\mRssiVec$
@@ -403,6 +406,9 @@
\caption{
Overview of all conducted paths, each starting at the denoted rectangle.
Outdoor areas are marked in green.
The length of the paths is as follows:
path 1: \SI{207}{\meter}, path 2: \SI{138}{\meter}, path 3: \SI{86}{\meter}, path 4: \SI{140}{\meter},
and path 5: \SI{97}{\meter}.
}
\label{fig:allWalks}
\end{figure}
@@ -491,10 +497,10 @@
as likely as the pedestrian's actual location, we examined various approaches.
Unfortunately, most of which did not provide a viable enhancement under all conditions for the performed walks.
\commentByFrank{ja, eig gehoert das vor in die theorie, aber da es so kurz ist und vorne immer die ueberleitung kaputt macht
oder anderen dingen vorgreifen wuerde, steht es hier}
%\commentByFrank{ja, eig gehoert das vor in die theorie, aber da es so kurz ist und vorne immer die ueberleitung kaputt macht
%oder anderen dingen vorgreifen wuerde, steht es hier}
The misclassification-rate is determined by counting the amount of (random) locations within
the building that produce a similar probability \refeq{eq:wifiProb} as the actual ground-truth
the building that produce a similar probability \refeq{eq:wifiProb} compared to the actual ground-truth
position.
One possibility to dissolve such an equal \docWIFI{}-likelihood between two (or more) locations is,
@@ -574,6 +580,7 @@
% -------------------------------- final system -------------------------------- %
\subsection{Filtered location estimation error}
\label{sec:evalFiltered}
After examining the \docWIFI{} component on its own, we will now analyze the impact of previously discussed model
optimizations on our smartphone-based indoor localization system described in section \ref{sec:system}, based on

View File

@@ -28,7 +28,7 @@
knowledge to work. To infer the probability of the pedestrian currently
residing at an arbitrary location, the signal strengths received
by the smartphone are compared with the signal strengths which should be received at this
location (prior knowledge). As RF-signals are highly dependent
location (prior knowledge). As radio frequency (RF) signals are highly dependent
on the surroundings, those values can change rapidly within meters.
%
That is why fingerprinting became popular, where the required prior knowledge

View File

@@ -47,7 +47,8 @@
%This induces both, the need for more complex prediction models and the need for filtering approaches
%to limit the impact of potentially erroneous readings.
%
Approaches based on timing like TOA and TDOA, as used within the GPS, or methods estimating the signal's angle-of-arrival (AOA)
Approaches based on timing like time of arrival (TOA) and time difference of arrival (TDOA),
as used within the GPS, or methods estimating the signal's angle of arrival (AOA)
are more accurate, and mostly invariant to architectural obstacles \cite{TimeDifferenceOfArrival1, TOAAOA}.
Especially signal runtimes are unaffected by walls and thus allow for stable distance estimations, if the used components
support measuring time-delays down to a few picoseconds. This is why those techniques often need special (measurement) hardware

View File

@@ -26,7 +26,7 @@
The corresponding observation vector, given by the smartphone's sensors, is defined as
%
\begin{equation}
\mObsVec = (\mRssiVecWiFi{}, \mObsSteps, \mObsHeadingRel, \mObsHeadingAbs, \mPressure, \mObsGPS) \enspace.
\mObsVec = (\mRssiVecWiFi{}, \mObsSteps, \mObsHeadingRel, \mObsHeadingAbs, \mPressure, \mObsGPSVec) \enspace.
\end{equation}
%
$\mRssiVecWiFi$ contains the signal strength measurements of all \docAP{}s (\docAPshort{}s) currently visible to the phone,
@@ -34,7 +34,9 @@
$\mObsHeadingRel$ the (relative) angular change since the last filter-step,
$\mObsHeadingAbs$ the vague absolute heading as provided by the magnetometer,
$\mPressure$ the ambient pressure in hPa and
$\mObsGPS = ( \mObsGPSlat, \mObsGPSlon, \mObsGPSaccuracy)$ the current location (if available) given by the GPS.
$\mObsGPSVec = ( \mObsGPSlat, \mObsGPSlon, \mObsGPSaccuracy)$ the current location given by the GPS.
If the latter is currently not available, this is indicated by a special value combination, which
is checked within the evaluation.
Assuming statistical independence, the state-evaluation density from \refeq{eq:recursiveDensity} can be written as
@@ -60,7 +62,8 @@
Absolute location information is provided by $p(\vec{o}_t \mid \vec{q}_t)_\text{wifi}$ and
$p(\vec{o}_t \mid \vec{q}_t)_\text{gps}$, if available.
$p(\vec{o}_t \mid \vec{q}_t)_\text{gps}$, if available. Otherwise, their probability
is uniformly distributed (same likelihood for any location).
The vague absolute heading provided by
the smartphone's magnetometer is included using a simple heuristic for
$p(\vec{o}_t \mid \vec{q}_t)_\text{abshead}$. Finally, the barometer is used
@@ -70,7 +73,8 @@
Furthermore, the smartphone's IMU is used to infer the number of steps
and the relative turn angle the pedestrian has taken since the last filter-update.
While those values could be used within the evaluation \refeq{eq:evalDensity}
we apply them within the transition model to estimate the pedestrian's potential
we apply them within the transition model (see \cite{Koeping14-PSA, Ebner2016OPN})
to estimate the pedestrian's potential
movement $p(\mStateVec_{t} \mid \mStateVec_{t-1}, \mObsVec_{t-1})$ within the building.
Using real values to perform this movement-update instead of just scattering randomly
along the floorplan followed by downvoting within the evaluation \refeq{eq:evalDensity}
@@ -82,15 +86,20 @@
%
Compared to this reference, absolute heading and GPS have been added as additional sensors
to further enhance the localization. As can be seen in \refeq{eq:evalAbsHead} and \refeq{eq:evalGPS},
their values are incorporated using a simple distribution that models each sensor's uncertainty.
their values are incorporated using a distribution (normalized by $\xi$) that matches each sensor's uncertainty.
The difference between the GPS' estimation and potential state $\mStateVec$ is given by the
Euclidean 2D $\text{distance}(\dots)$ in \refeq{eq:evalGPS}.
\begin{equation}
p(\vec{o}_t \mid \vec{q}_t)_\text{abshead}
=
= \xi
\begin{cases}
0.7 & | \mObsVec_{\mObsHeadingAbs} - \mStateVec_{\mStateHeading} | < \SI{120}{\degree} \\
0.7 & | \mObs_t^{\mObsHeadingAbs} - \mState_t^{\mStateHeading} | < \SI{120}{\degree} \\
0.3 & \text{else}
\end{cases}
,\enskip
\xi = \text{const}
\label{eq:evalAbsHead}
\end{equation}
@@ -104,7 +113,7 @@
), \enskip
d = \text{distance}(
(\mObsGPS_\text{lat}, \mObsGPS_\text{lon}),
(\mStateVec_x, \mStateVec_y)
(\mState_t^x, \mState_t^y)
), \enskip
\sigma = \mObsGPS_\text{accuracy}
\label{eq:evalGPS}
@@ -116,8 +125,8 @@
and the pedestrian is required to move outdoors to enter the next facility.
Indoors the GPS will usually not provide viable location estimations and the system has to
solely rely on the smartphone's \docWIFI{} observations.
Therefore its crucial for this component to supply location
Therefore its crucial for the \docWIFI{} component to supply location
estimations that are as accurate as possible,
while the component itself must be easy to set-up and maintain.
\todo{ueberleitung besser?}
%\todo{ueberleitung besser?}

View File

@@ -17,7 +17,7 @@
\label{eq:wifiObs}
\end{equation}
where matching a single signal strength observation against the reference is given by
\noindent where matching a single signal strength observation against the reference is given by
\begin{equation}
p(\mRssi_i \mid \mPosVec) =
@@ -127,6 +127,8 @@
The target function \refeq{eq:optTarget} optimizes the model-parameters for one \docAP{} by reducing the squared error between
reference measurements $s_{\mPosVec} \in \vec{s}$ with well-known location $\mPosVec$ and corresponding
model predictions $\mu_{\mPosVec}$.
The number of floors between $\mPosVec$ and the transmitter's location $\mPosAPVec$ is
$\text{floors}(\mPosVec,\mPosAPVec)$.
\begin{equation}
\epsilon^* =
@@ -189,7 +191,7 @@
%\end{figure}
Such functions demand for optimization algorithms, that are able to deal with non-convex functions.
We thus used a genetic algorithm to perform this task.
We thus used a genetic algorithm to perform this task \cite{goldberg89}.
However, initial tests indicated that while being superior to simplex
and similar algorithms, the results were not yet satisfying as the optimization often did not converge.
@@ -198,9 +200,11 @@
genetic algorithm: The initial population is now uniformly sampled from the known range. During each iteration,
the best \SI{25}{\percent} of the population are kept and the remaining entries are
re-created by modifying the best entries with uniform random values within
$\pm$\SI{10}{\percent} of the known range. The result is stabilized by narrowing the allowed modification range
$\pm$\SI{10}{\percent} of the known range.
Inspired by {\em cooling} known from simulated annealing \cite{Kirkpatrick83optimizationby},
the result is stabilized by narrowing the allowed modification range
%(starting at \SI{10}{\percent})
over time, often referred to as {\em cooling} \cite{Kirkpatrick83optimizationby}.
over time.
\subsection{Modified Signal Strength Model}
@@ -300,7 +304,7 @@
\label{eq:wifiQuality}
\end{equation}
\subsection {Virtual \docAP{}s}
\subsection {Virtual \docAP{}s (VAP)}
\label{sec:vap}
Assuming normal conditions, the received signal strength at one location will also (strongly) vary over time

View File

@@ -2761,3 +2761,18 @@ year = {1967}
number = {4598},
pages = {671--680}
}
@book{goldberg89,
added-at = {2017-04-11T02:23:13.000+0200},
author = {Goldberg, D. E.},
biburl = {https://www.bibsonomy.org/bibtex/2af6ec8ef88eb576d7ecc8ac3a84126a3/geovani},
interhash = {79bb58f1d9d57b042cf0f771784d4adb},
intrahash = {af6ec8ef88eb576d7ecc8ac3a84126a3},
keywords = {},
owner = {gregor},
publisher = {Addison-Wesley},
timestamp = {2017-04-11T02:23:13.000+0200},
title = {Genetic Algorithms in Search, Optimization, and Machine Learning},
year = 1989
}

View File

@@ -42,7 +42,8 @@
\newcommand{\mSteps}{n_\text{steps}}
\newcommand{\mObsSteps}{\mSteps}
\newcommand{\mObsGPS}{\vec{g}}
\newcommand{\mObsGPS}{g}
\newcommand{\mObsGPSVec}{\vec{g}}
\newcommand{\mObsGPSlat}{\text{lat}}
\newcommand{\mObsGPSlon}{\text{lon}}
\newcommand{\mObsGPSaccuracy}{\text{accuracy}}