358 lines
10 KiB
TeX
358 lines
10 KiB
TeX
%===============================================================================
|
|
% Zweck: KTR-Präsentation-Vorlage
|
|
% Erstellt: 15.04.2013
|
|
% Update: 04.07.2016
|
|
% Autor: M.G.
|
|
%===============================================================================
|
|
|
|
%\newcommand*{\footcite}[1]{\footnote{\autocite{#1}}}
|
|
|
|
\newcommand\ratio{169}
|
|
\documentclass[10pt,aspectratio=\ratio,
|
|
%draft,
|
|
%handout,
|
|
compress
|
|
]{beamer}
|
|
|
|
\newcommand\meta{../meta}
|
|
\input{\meta/config/commands}
|
|
|
|
|
|
\def\signed #1{{\leavevmode\unskip\nobreak\hfil\penalty50\hskip2em
|
|
\hbox{}\nobreak\hfil(#1)%
|
|
\parfillskip=0pt \finalhyphendemerits=0 \endgraf}}
|
|
|
|
\newsavebox\mybox
|
|
\newenvironment{aquote}[1]
|
|
{\savebox\mybox{#1}\begin{fancyquotes}}
|
|
{\signed{\usebox\mybox}\end{fancyquotes}}
|
|
|
|
|
|
\input{\meta/config/hyphenation}
|
|
|
|
\setbeamertemplate{caption}[numbered]
|
|
%\numberwithin{figure}{section}
|
|
|
|
|
|
%\bibliographystyle{plain}
|
|
\bibliography{../ThesTeX/content/literature.bib}
|
|
|
|
\begin{document}
|
|
%===============================================================================
|
|
% Zum Kompilieren latexmk ausführen.
|
|
% Konfiguration in texmaker: Options -> Configure Texmaker -> Quick Build -> Select Latexmk + ViewPD
|
|
% Entsprechende Informationen in den config/metainfo verändern
|
|
% Zur Auswahl der Sprache im folgenden Befehl
|
|
% ngerman für deutsch eintragen, english für Englisch.
|
|
%===============================================================================
|
|
\selectlanguage{english}
|
|
\ifnum\ratio<169
|
|
\frame{\titlepage}
|
|
\else
|
|
\frame[plain]{\titlepage}
|
|
\fi
|
|
|
|
%\AtBeginSection[]
|
|
%{
|
|
% \frame<handout:0>
|
|
% {
|
|
% \frametitle{Outline}
|
|
% \tableofcontents[currentsection,hideallsubsections]
|
|
% }
|
|
%}
|
|
|
|
%\AtBeginSubsection[]
|
|
%{
|
|
% \frame<handout:0>
|
|
% {
|
|
% \frametitle{Outline}
|
|
% \tableofcontents[sectionstyle=show/hide,subsectionstyle=show/shaded/hide,subsubsectionstyle=hide]
|
|
% }
|
|
%}
|
|
|
|
\AtBeginSubsubsection[]
|
|
{
|
|
\frame<handout:0>
|
|
{
|
|
\frametitle{Outline}
|
|
\tableofcontents[sectionstyle=show/hide,subsectionstyle=show/shaded/hide,subsubsectionstyle=show/shaded/hide]
|
|
}
|
|
}
|
|
|
|
\newcommand<>{\highlighton}[1]{%
|
|
\alt#2{\structure{#1}}{{#1}}
|
|
}
|
|
|
|
\newcommand{\icon}[1]{\pgfimage[height=1em]{#1}}
|
|
|
|
\section*{}
|
|
\phantomsection
|
|
\begin{frame}{Content}
|
|
\tableofcontents[hideallsubsections]
|
|
\end{frame}
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
%%%%%%%%%% Content starts here %%%%%%%%%%
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
\section{Location based Games}
|
|
\begin{frame}{Location based Games}
|
|
\framesubtitle{Put the 'fun' in education}
|
|
\begin{columns}
|
|
\column{0.55\linewidth}
|
|
Intersection of GIS and gaming technology\footnotemark
|
|
\begin{itemize}
|
|
\item Game actions tied to real-world spatial places ('Break the magic circle')%TODO citation
|
|
\item Locomotion as essential game part
|
|
\item Foster recognition of environment
|
|
\item Focus through game related tasks
|
|
\item Trade-offs between board and race style games\footnotemark
|
|
\end{itemize}
|
|
\column{.45\linewidth}
|
|
\image{.5\textwidth}{gg2}{Geogame map view}{img:gg2}
|
|
\end{columns}
|
|
\addtocounter{footnote}{-1}
|
|
\footcitetext{Ahlqvist2018}\stepcounter{footnote}
|
|
\footcitetext{1705427}
|
|
\end{frame}
|
|
|
|
\section{Goal definition}
|
|
\begin{frame}{Goal definition}
|
|
\framesubtitle{A Framework for the Analysis of Spatial Game Data}
|
|
\begin{itemize}
|
|
\item Framework for analysis
|
|
\item Two target groups:
|
|
\begin{itemize}
|
|
\item Expert users/researchers
|
|
\item Staging/designing staff
|
|
\end{itemize}
|
|
\item Integration of external data (questionaire results)
|
|
\item Adaptable for multiple games
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}{Components}
|
|
Prerequisites: Game log
|
|
\begin{itemize}
|
|
\item Creation
|
|
\item Storage
|
|
\end{itemize}
|
|
New components
|
|
\begin{itemize}
|
|
\item Per-game importer (Web client, File loader, …)
|
|
\item Analyzer modules (number crunching)
|
|
\item Output \& Visualization (CSV, [Geo]JSON, KML, Graphs, …)
|
|
\item Interface (Configuration)
|
|
\item Cross-game comparisons
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{State of research}
|
|
\frame<handout:0>
|
|
{
|
|
\tableofcontents[sectionstyle=show/hide,hideothersubsections]
|
|
}
|
|
|
|
\subsection{Log processing}
|
|
\begin{frame}{Modern log processing stacks}
|
|
Technologies: Collection, Time-series databases, Frontend
|
|
\begin{itemize}
|
|
\item ELK (Elastic search, Logstash, Kibana)\autocite{andreassen2015monitoring} \autocite{yang2016aggregated} \autocite{steinegger2016analyse} \autocite{sanjappa2017analysis}
|
|
\item Collectd, Influx DB, Grafana \autocite{komarek2017metric}
|
|
\item …
|
|
\end{itemize}
|
|
\begin{itemize}
|
|
\item[+] widely deployed
|
|
\item[+] powerful query languages %TODO example
|
|
\item mainly web/container/hardware monitoring
|
|
\item[-] spatial analysis: heavily anonymised
|
|
\item[-] fast-paced enviroment
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\subsection{Pedestrian traces}
|
|
\begin{frame}{Analyzing pedestrian movement}
|
|
\framesubtitle{… based on GPS logs}
|
|
\begin{itemize}
|
|
\item GPS overestimates systematically \autocite{Ranacher_2015}
|
|
\item GPS is a suitable instrument for spatio-temporal data\autocite{van_der_Spek_2009}
|
|
\item Activity mining
|
|
\begin{itemize}
|
|
\item Overview: \autocite{Gong_2014}
|
|
\item Speed-based Clustering \autocite{ren2015mining}
|
|
%\item \autocite{Ferrante_2016} % closed access
|
|
\item Machine Learning \autocite{pattern_recog} %TODO
|
|
\end{itemize}
|
|
\item E.g.: Improve tourist management \autocite{tourist_analysis2012}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
|
|
\begin{frame}{Heatmap}
|
|
\image{.81\textwidth}{strava}{Heatmap: Fitnesstracker\autocite{strava}}{img:strava}
|
|
\end{frame}
|
|
|
|
\begin{frame}{Space-time cube}
|
|
\image{.72\textwidth}{space-time}{Space-time cube examples\autocite{bach2014review}}{img:spacetime}
|
|
\end{frame}
|
|
|
|
\begin{frame}{Generaliziation}
|
|
\image{\textwidth}{generalization}{Trajectories and generalizations with varying radius parameter \autocite{adrienko2011spatial}}{img:generalization}
|
|
\end{frame}
|
|
|
|
\begin{frame}{Trajectory patterns}
|
|
\image{\textwidth}{traj-pattern}{Flock and meet trajectory pattern\autocite{jeung2011trajectory}}{img:traj-pattern}
|
|
\end{frame}
|
|
|
|
\subsection{Analyzing games}
|
|
\begin{frame}{Analyzing gamez}
|
|
\begin{itemize}
|
|
\item there's more than heatmaps
|
|
\item combine position with game actions
|
|
\item identify patterns, balancing issues
|
|
\item manual processes %\citetitle{Drachen2013}\citetitle{AHLQVIST20181}
|
|
\end{itemize}
|
|
\vspace{-42pt}
|
|
%\image{.5\textwidth}{game-an}{chat logs with players location \autocite{Drachen2013}}{img:chatlogs}
|
|
%\image{.5\textwidth}{ac3-death}{identify critical sections \autocite{Drachen2013}}{img:ac3death}
|
|
\twofigures{0.5}{game-an}{chat logs with players location}{img:chatlogs}{ac3-death}{identify critical sections}{img:ac3death}{game analytics \cite{Drachen2013}}{fig:gameanal}
|
|
\end{frame}
|
|
|
|
\subsection{Location based games}
|
|
\begin{frame}{Analyzing location based games}
|
|
\begin{itemize}
|
|
\item fragebögen (prä + post; p-hacking)
|
|
\end{itemize}
|
|
TODO: cite \footcite{Schaal2017} %TODO
|
|
\end{frame}
|
|
|
|
\subsection{Summary}
|
|
\begin{frame}{Summary}
|
|
\begin{itemize}
|
|
\item Log processing: Powerful stacks
|
|
\item Movement analysis: Large field already explored (GPS influcene, Patterns, Behavior recognition, …)
|
|
\item Track rendering: Track (with attributes), Space-time cube, Heatmap, …
|
|
\item Spatial analysis of digital games with GIS
|
|
\item Analysis of location based games: Labourious manual process
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Solution approach}
|
|
\frame<handout:0>
|
|
{
|
|
\tableofcontents[sectionstyle=show/hide,hideothersubsections]
|
|
}
|
|
\subsection{Requirements}
|
|
\begin{frame}{Requirements}
|
|
\framesubtitle{Wait, what did I want to do again?}
|
|
\begin{itemize}
|
|
\item Per-game importer (Web client, File loader, …)
|
|
\item Analyzer modules (number crunching)
|
|
\item Output \& Visualization (CSV, [Geo]JSON, KML, Graphs, …)
|
|
\item Interface (Configuration)
|
|
\begin{itemize}
|
|
\item Expert users/researchers
|
|
\item Staging/designing staff
|
|
\end{itemize}
|
|
\item Cross-game comparisons
|
|
\item Integration of external data (questionaire results)
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\subsection{Architecture}
|
|
\begin{frame}{Experiment: Kibana}
|
|
\image{.85\textwidth}{kibana}{Game trace in Kibana}{img:kibana}
|
|
\end{frame}
|
|
\begin{frame}{Experiment: Kibana}
|
|
\image{.85\textwidth}{kibana2}{Game trace in Kibana}{img:kibana2}
|
|
\end{frame}
|
|
|
|
\begin{frame}{Architecture}
|
|
\begin{itemize}
|
|
\item Based on map-reduce
|
|
\item Map: analysis
|
|
\begin{itemize}
|
|
\item Iterate Log entries
|
|
\item Feed log entry through analyzer queue
|
|
\begin{itemize}
|
|
\item Augment entries
|
|
\item Filter entries
|
|
\item Sequential order
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\item Reduce: Collect summaries from analyzers
|
|
\begin{itemize}
|
|
\item Rendering
|
|
\item Postprocessing, Comparison, …
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\image{.5\textwidth}{../../ThesTeX/images/flowchart.pdf}{flowchart}{img:flow}
|
|
\end{frame}
|
|
|
|
\section{Outlook: Implementation}
|
|
|
|
\begin{frame}{Implementation}
|
|
\begin{columns}
|
|
\column{0.55\linewidth}
|
|
Analysis
|
|
\begin{itemize}
|
|
\item Python (3.6)
|
|
\item Standalone library/CLI tool
|
|
\item Web based configuration/Runner/API(flask)
|
|
\end{itemize}
|
|
Rendnering
|
|
\begin{itemize}
|
|
\item Matplotlib, Numpy
|
|
\begin{itemize}
|
|
\item Graphs
|
|
\end{itemize}
|
|
\item Javascript
|
|
\begin{itemize}
|
|
\item Leaflet
|
|
\item Web visualization: Maps, Tracks, …
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\pic{.5\textwidth}{matplotlib}
|
|
\column{0.4\linewidth}
|
|
\pic{.5\textwidth}{python}
|
|
\pic{.4\textwidth}{flask}
|
|
\pic{.4\textwidth}{leaflet}
|
|
\end{columns}
|
|
\end{frame}
|
|
|
|
\begin{frame}{Configuration \& results}
|
|
\twofigures{0.5}{oeb-kml}{Analyzer configuration}{img:oebkml}{oeb-ge}{Result visiualized}{img:oebge}{Example: Generate KML tracks (BioDiv2Go; Oberelsbach2016)}{fig:oeb2016}
|
|
\end{frame}
|
|
|
|
\begin{frame}{ActivityMapper}
|
|
\image{.7\textwidth}{track-fi}{Combined screen activity and spatial progress}{img:trackfi}
|
|
\end{frame}
|
|
|
|
\begin{frame}{Graphs}
|
|
\begin{columns}
|
|
\column{0.45\linewidth}
|
|
\image{\textwidth}{simu-retries}{Experimentational rounds}{img:retries}
|
|
\column{0.45\linewidth}
|
|
\image{\textwidth}{speed}{Speed distribution}{img:speed}
|
|
\end{columns}
|
|
\end{frame}
|
|
\begin{frame}{Graphs}
|
|
\image{.9\textwidth}{time-rel}{Time distribution}{img:time}
|
|
\end{frame}
|
|
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
%%%%%%%%%% References %%%%%%%%%%
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\section*{}
|
|
\begin{frame}[allowframebreaks]{References}
|
|
\def\newblock{\hskip .11em plus .33em minus .07em}
|
|
\scriptsize
|
|
\setbeamertemplate{bibliography item}[text]
|
|
\printbibliography
|
|
\normalsize
|
|
\end{frame}
|
|
|
|
|
|
|
|
\end{document}
|