240 lines
6.1 KiB
TeX
240 lines
6.1 KiB
TeX
\documentclass{cel-thesis/cel-thesis}
|
|
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
% Document Parameters %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
|
|
\thesisTitle{Application of Optimization Algorithms for Channel Decoding}
|
|
\thesisType{Bachelor's Thesis}
|
|
\thesisAuthor{Andreas Tsouchlos}
|
|
\thesisAdvisor{Prof. Dr.-Ing. Laurent Schmalen}
|
|
%\thesisHeadOfInstitute{Prof. Dr.-Ing. Laurent Schmalen}
|
|
\thesisSupervisor{Dr.-Ing. Holger Jäkel}
|
|
\thesisStartDate{24.10.2022}
|
|
\thesisEndDate{24.04.2023}
|
|
\thesisSignatureDate{24.04.2023} % TODO: Signature date
|
|
\thesisLanguage{english}
|
|
\setlanguage
|
|
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
%%% Packages, Settings and Definitions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
%
|
|
% Tikz related packages
|
|
%
|
|
|
|
\usepackage{tikz}
|
|
\usepackage{tikz-3dplot}
|
|
\usepackage{pgfplots}
|
|
|
|
\usetikzlibrary{external}
|
|
\usetikzlibrary{spy}
|
|
\usetikzlibrary{shapes.geometric}
|
|
\usetikzlibrary{arrows.meta,arrows}
|
|
\tikzset{>=latex}
|
|
|
|
\pgfplotsset{compat=newest}
|
|
\usepgfplotslibrary{colorbrewer}
|
|
|
|
\tikzexternalize[prefix=build/]
|
|
|
|
%
|
|
% Generic packages
|
|
%
|
|
|
|
\usepackage[utf8]{inputenc}
|
|
\usepackage[T1]{fontenc}
|
|
\usepackage[english]{babel}
|
|
\usepackage[normalem]{ulem} % Without 'normalem' this breaks the bibliography
|
|
\usepackage{amsmath}
|
|
\usepackage{amssymb, amsfonts, latexsym}
|
|
\usepackage{float}
|
|
\usepackage{listings}
|
|
\usepackage{graphicx}
|
|
\usepackage{subcaption}
|
|
\usepackage{bm}
|
|
\usepackage{ifthen}
|
|
\usepackage{scalerel}
|
|
|
|
\usepackage{todonotes}
|
|
% Make tikz ignore '\todo' in the externalization process
|
|
\makeatletter
|
|
\renewcommand{\todo}[2][]{\tikzexternaldisable\@todo[#1]{#2}\tikzexternalenable}
|
|
\makeatother
|
|
|
|
\usepackage{acro}
|
|
\usepackage{longtable}
|
|
\usepackage{mfirstuc}
|
|
\acsetup{
|
|
uppercase/list,
|
|
make-links,
|
|
format/first-long=\itshape,
|
|
list/template = longtable,
|
|
list/name = List of Abbreviations,
|
|
}
|
|
|
|
\usepackage{caption}
|
|
\DeclareCaptionLabelFormat{bf-nodot}{\textbf{#1}~\textbf{#2}}
|
|
\captionsetup{labelformat=bf-nodot,labelsep=colon}
|
|
|
|
\usepackage{csquotes}
|
|
\usepackage[style=alphabetic, backend=biber,
|
|
doi=false,url=false,isbn=false]{biblatex}
|
|
\addbibresource{bibliography.bib}
|
|
|
|
%
|
|
% Include useful commands and definitions
|
|
%
|
|
|
|
\input{common.tex}
|
|
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
% Document %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
\input{abbreviations.tex}
|
|
|
|
\setcounter{tocdepth}{1}
|
|
|
|
\begin{document}
|
|
|
|
%
|
|
% Preliminaries
|
|
%
|
|
|
|
\pagenumbering{roman}
|
|
|
|
\maketitle
|
|
\makestatutorydeclaration
|
|
%\makeCCdeclaration
|
|
|
|
%\include{chapters/abstract}
|
|
|
|
%
|
|
% Main Document
|
|
%
|
|
|
|
\cleardoublepage
|
|
\pagenumbering{arabic}
|
|
|
|
|
|
% 1. Introduction
|
|
% - Problem definition
|
|
% - Motivation
|
|
% - Results summary
|
|
%
|
|
% 2. Theoretical Background
|
|
% 2.2 Notation
|
|
% - General remarks on notation (matrices, ...)
|
|
% - Probabilistic quantities(random variables, PDFs, ...)
|
|
% 2.1 Preliminaries: Channel Model and Modulation
|
|
% - AWGN
|
|
% - BPSK
|
|
% 2.3 Channel Coding with LDPC Codes
|
|
% - Introduction
|
|
% - Binary linear codes
|
|
% - LDPC codes
|
|
% 2.4 Decoding LDPC Codes using Belief Propagation
|
|
% - Introduction to message passing
|
|
% - Overview of BP algorithm
|
|
% 2.5 Optimization Methods
|
|
% - ADMM
|
|
% - Proximal gradient method
|
|
%
|
|
% 3. Decoding Techniques
|
|
% 3.1 Decoding using Optimization Methods
|
|
% - General methodology
|
|
% 3.2 LP Decoding using ADMM
|
|
% - Equivalent ML optimization problem
|
|
% - LP relaxation
|
|
% - ADMM as a solver
|
|
% 3.3 Proximal Decoding
|
|
% - Formulation of optimization problem
|
|
% - Proximal gradient method as a solver
|
|
%
|
|
% 4. Methodology and implementation
|
|
% 4.1 General implementation process
|
|
% - First python using numpy
|
|
% - Then C++ using Eigen
|
|
% 4.1 LP Decoding using ADMM
|
|
% - Choice of parameters
|
|
% - Selected projection algorithm
|
|
% - Adaptive linear programming decoding?
|
|
% 4.2 Proximal Decoding
|
|
% - Choice of parameters
|
|
% - Road to improved implementation
|
|
%
|
|
% 5. Analysis of Results
|
|
% 5.1 LP Decoding using ADMM
|
|
% 5.2 Proximal Decoding
|
|
% - Parameter choice
|
|
% - FER
|
|
% - Improved implementation
|
|
% 5.3 Comparison of BP, Proximal Decoding and LP Decoding using ADMM
|
|
% - Decoding performance
|
|
% - Complexity & runtime (mention difficulty in reaching conclusive
|
|
% results when comparing implementations)
|
|
%
|
|
% 6. Discussion
|
|
% - Proximal decoding improvement limitations
|
|
%
|
|
% 7. Conclusion
|
|
% - Summary of results
|
|
% - Future work
|
|
|
|
|
|
% Proposed new structure:
|
|
%
|
|
% 1. Introduction
|
|
%
|
|
% 2. Theoretical Background
|
|
% \ldots
|
|
%
|
|
% 3. Proximal Decoding
|
|
% 3.1 Theory
|
|
% 3.2 Implementation details
|
|
% 3.3 Results
|
|
% 3.x Improved implementation
|
|
%
|
|
% 4. LP Decoding using ADMM
|
|
% 4.1 Theory
|
|
% 4.2 Implementation details
|
|
% 4.3 Results and comparison with proximal
|
|
%
|
|
% 5. Discussion
|
|
%
|
|
% 6. Conclusion
|
|
|
|
\include{chapters/acknowledgements}
|
|
|
|
\tableofcontents
|
|
\cleardoublepage % make sure multipage TOCs are numbered correctly
|
|
|
|
\include{chapters/introduction}
|
|
\include{chapters/theoretical_background}
|
|
\include{chapters/proximal_decoding}
|
|
\include{chapters/lp_dec_using_admm}
|
|
\include{chapters/comparison}
|
|
% \include{chapters/discussion}
|
|
\include{chapters/conclusion}
|
|
% \include{chapters/appendix}
|
|
|
|
|
|
%\listoffigures
|
|
%\listoftables
|
|
|
|
\cleardoublepage
|
|
\phantomsection
|
|
\addcontentsline{toc}{chapter}{List of Abbreviations}
|
|
\printacronyms
|
|
|
|
\printbibliography[heading=bibintoc]
|
|
|
|
\end{document}
|
|
|