Skip to content

Commit

Permalink
tex files for documentation added
Browse files Browse the repository at this point in the history
  • Loading branch information
jost-1 committed Aug 2, 2021
1 parent f1f413f commit 533064d
Show file tree
Hide file tree
Showing 11 changed files with 492 additions and 0 deletions.
138 changes: 138 additions & 0 deletions documentation/000_config_files/Makros.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
% Zahlenräume
\newcommand{\F}{\{0, 1\}}
\newcommand{\FR}{[0, 1]}
\newcommand{\N}{\mathbbm{N}}
\newcommand{\Z}{\mathbbm{Z}}
\newcommand{\Q}{\mathbbm{Q}}
\newcommand{\R}{\mathbbm{R}}

\newcommand{\B}{\mathbbm{B}}
\newcommand{\BB}{\mathcal{B}}

\renewcommand{\L}{\mathbbm{L}}
\newcommand{\LL}{\mathcal{L}}

% Landau-Symbol
\newcommand{\OO}{\mathcal{O}}

% Operatoren
\newcommand{\argmain}{\mathrm{\mathop{argmin}}}
\newcommand{\argmax}{\mathrm{\mathop{argmax}}}
%\renewcommand{\vec}{\mathop{vec}}
%\newcommand{\mat}{\mathop{mat}}
\newcommand{\proj}{\mathrm{\mathop{proj}}}
\newcommand{\conv}{\mathrm{\mathop{conv}}}
%\newcommand{\face}[1]{\left\{#1\right\}}
%\newcommand{\prob}{\mathbb P}

\newcommand{\card}[1]{\lvert #1 \rvert}
\newcommand{\abs}[1]{\lvert #1 \rvert}
\newcommand{\norm}[1]{\lVert #1 \rVert}
\newcommand{\lrnorm}[1]{\left\lVert #1 \right\rVert}

\renewcommand{\binom}[1]{\left(\begin{array}{c} #1 \end{array}\right)}
\newcommand{\choice}[1]{\left\{\begin{array}{rl} #1 \end{array}\right.}
\newcommand{\cvector}[1]{\left(\begin{array}{c} #1 \end{array}\right)}
\renewcommand{\matrix}[2]{\left(\begin{array}{*{#1}{c}} #2 \end{array}\right)}

% Mathematische Akzente
\newcommand{\sol}[1]{\bar{#1}}
\newcommand{\arb}[1]{\hat{#1}}
\newcommand{\nom}[1]{\hat{#1}}
\newcommand{\pert}[1]{\tilde{#1}}
\newcommand{\inc}[1]{\tilde{#1}}
\newcommand{\alt}[1]{\hat{#1}}

% Indexmengen
\newcommand{\iset}[1]{\mathcal{#1}}
\newcommand{\iB}{\iset{B}}
\newcommand{\iT}{\iset{T}}
\newcommand{\iTO}{\alt{\iset{T}}}
\newcommand{\iR}{\iset{R}}
%newcommand{\iP}{\iset{P}}

\newcommand{\set}[1]{\{#1\}}

% Anführungszeichen
\newcommand{\sqm}[1]{`#1'}
\newcommand{\qm}[1]{``#1''}

% Kommentare
\newcommand{\Todo}[1]{\textcolor{red}{#1}}

% Abkürzungen
\newcommand{\ie}{i.e.\ }
\newcommand{\Wlog}{w.l.o.g.\ }
\newcommand{\Wlogc}{w.l.o.g.}
\newcommand{\WLOGc}{W.l.o.g.}
\newcommand{\cf}{cf.\ }
\newcommand{\eg}{e.g.\ }
\newcommand{\etc}{etc.\ }
\newcommand{\wrt}{w.r.t.\ }

% Fette Tabelleneinträge
\newcommand{\cbf}[1]{\textbf{\boldmath{#1}}}

% Optimierungsprobleme
\newcommand{\st}{\mathrm{s.t.}}
\newcommand{\find}{\mathrm{find}}

\newlength\mysinglespace
\setlength\mysinglespace{0.5\baselineskip}

\newlength\objspace
\setlength\objspace{2\mysinglespace}

\newlength\conspace
\setlength\conspace{\mysinglespace}

\newlength\cconspace
\setlength\cconspace{3\mysinglespace}

\newenvironment{mip}{\alignat{4}}{\endalignat}
\newenvironment{lmip}[1]{\subequations \label{#1} \alignat{4}}{\endsubequations\endalignat}
\newcommand{\objective}[2]{#1\>\>\>\> & #2 \span\span\span\span\span\span}
\newcommand{\stconstraint}[4]{\st\>\>\>\> && #1 && \;\;\;\, #2 & \;\;\;\, #3 && \quad \begin{array}{l} #4 \end{array}}
\newcommand{\constraint}[4]{&& #1 && \;\;\;\, #2 & \;\;\;\, #3 && \quad \begin{array}{l} #4 \end{array}}
\newcommand{\lobjective}[3]{#1\>\>\>\> & #2 \span\span\span\span\span\span \label{#3}}
\newcommand{\lstconstraint}[5]{\st\>\>\>\> && #1 && \;\;\;\, #2 & \;\;\;\, #3 && \quad \begin{array}{l} #4 \end{array} \label{#5}}
\newcommand{\lconstraint}[5]{&& #1 && \;\;\;\, #2 & \;\;\;\, #3 && \quad \begin{array}{l} #4 \end{array} \label{#5}}

%% Allowing for models on multiple pages
\allowdisplaybreaks

% Changing display of equations in models from 1b to 1.2
\patchcmd\subequations
{\theparentequation\alph{equation}}
{\subequationsformat}
{}{}

\newcommand{\subequationsformat}{\theparentequation.\arabic{equation}}



% styles
%% Node styles
\tikzstyle{black_circle}=[fill=none, draw=black, shape=circle, tikzit fill=white]

%% Edge styles
\tikzstyle{black_edge}=[-]
\tikzstyle{blue_edge}=[-, draw=blue]
\tikzstyle{red_edge}=[-, draw=red]
\tikzstyle{black_arrow}=[fill=none, ->]




% Gleichungsarrays


% Theoremumgebungen
\newtheorem{theorem}{Theorem}[section]
\newtheorem{corollary}[theorem]{Corollary}
\newtheorem{definition}[theorem]{Definition}
\newtheorem{remark}[theorem]{Remark}
\newtheorem{observation}[theorem]{Observation}
\newtheorem{proposition}[theorem]{Proposition}
\newtheorem{example}[theorem]{Example}

68 changes: 68 additions & 0 deletions documentation/000_config_files/Packages.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
% Mehr Operatoren und Symbolen, verschiedene Theoremumgebungen
% und Darstellungsoptionen
\usepackage{amsmath,amssymb,amsthm}
\usepackage{eurosym}
\usepackage{mathtools}
\mathtoolsset{showonlyrefs}
\usepackage{color}

% Zum besseren Definieren von Abkürzungen
\usepackage{xspace}

% Float-Paket, H-Befehl für Tabellen, schöneres Tabellendesign
\usepackage{float}
\restylefloat{table}
\usepackage{booktabs}
\usepackage{paralist}

% Grafiken
\usepackage{graphicx}
\usepackage{epstopdf}
\DeclareGraphicsExtensions{.pdf,.eps,.png}
\usepackage{subfig}
\usepackage{stackengine}

% Adressenangabe der Autoren per Fußnote
\usepackage{authblk}

% Zitieren mit Nachname und Jahr
\usepackage[authoryear]{natbib}

% Erweiterte Optionen für Aufzählungen
\usepackage{enumitem}

% Schönere Symbole für Zahlenräume
\usepackage{bbm}

% Berechnen von Größen
\usepackage{calc}

% Todos
\usepackage{todonotes}
\presetkeys{todonotes}{inline}{}

% Jonasz's packages
\usepackage[short]{optidef}
\usepackage{lscape}
\usepackage{tikz}
\usepackage{000_config_files/tikzit}
\usepackage{graphicx}
\usepackage{mathrsfs}

\addtolength{\oddsidemargin}{-.875in}
\addtolength{\evensidemargin}{-.875in}
\addtolength{\textwidth}{1.75in}

\addtolength{\topmargin}{-.875in}
\addtolength{\textheight}{1.75in}

% \usepackage{floatrow}
% % Table float box with bottom caption, box width adjusted to content
% \newfloatcommand{capbtabbox}{table}[][\FBwidth]

\usepackage{csquotes}
\MakeOuterQuote{"}

\usepackage{authblk}
\usepackage[ruled,vlined]{algorithm2e}
\usepackage{tabularx}
42 changes: 42 additions & 0 deletions documentation/000_config_files/tikzit.sty
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
\usepackage{tikz}
\usetikzlibrary{backgrounds}
\usetikzlibrary{arrows}
\usetikzlibrary{shapes,shapes.geometric,shapes.misc}

% this style is applied by default to any tikzpicture included via \tikzfig
\tikzstyle{tikzfig}=[baseline=-0.25em,scale=0.5]

% these are dummy properties used by TikZiT, but ignored by LaTex
\pgfkeys{/tikz/tikzit fill/.initial=0}
\pgfkeys{/tikz/tikzit draw/.initial=0}
\pgfkeys{/tikz/tikzit shape/.initial=0}
\pgfkeys{/tikz/tikzit category/.initial=0}

% standard layers used in .tikz files
\pgfdeclarelayer{edgelayer}
\pgfdeclarelayer{nodelayer}
\pgfsetlayers{background,edgelayer,nodelayer,main}

% style for blank nodes
\tikzstyle{none}=[inner sep=0mm]

% include a .tikz file
\newcommand{\tikzfig}[1]{%
{\tikzstyle{every picture}=[tikzfig]
\IfFileExists{#1.tikz}
{\input{#1.tikz}}
{%
\IfFileExists{./figures/#1.tikz}
{\input{./figures/#1.tikz}}
{\tikz[baseline=-0.5em]{\node[draw=red,font=\color{red},fill=red!10!white] {\textit{#1}};}}%
}}%
}

% the same as \tikzfig, but in a {center} environment
\newcommand{\ctikzfig}[1]{%
\begin{center}\rm
\tikzfig{#1}
\end{center}}

% fix strange self-loops, which are PGF/TikZ default
\tikzstyle{every loop}=[]
3 changes: 3 additions & 0 deletions documentation/01_introduction.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
DB Cargo Polska works with the Chair of Analytics and Mixed Integer Optimization at Friedrich-Alexander-Universität Erlangen-Nürnberg to build a prototype of a new planning tool, which would come up with locomotive schedules and driver rosters simultaneously. As of today, the industry standard is to plan locomotives and drivers separately. The reason for this is the fact that both the planning areas are challenging on their own, and -- without computational support -- it would be impossible to consider both the areas at the same time. Such fragmented approaches were criticised in the literature already in 1980s' -- see for example \cite{raff_routing_1983}.

The purpose of the presented benchmarks is to present a set of instances, which we derived in collaboration with the industrial partner, as well as the procedures required to come up with complete Binary Programming models for these instances. In this work, we will only introduce the naive formulation of the mentioned binary models. Formulation improvements, as well as the algorithms to efficiently solve these models will be introduced in Deliverables D4.2 and D4.3.
2 changes: 2 additions & 0 deletions documentation/100_appendix_shift_reports.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
\input{99_appendix_inputs/example_shift_visualization_loco}
\input{99_appendix_inputs/example_shift_vizualization_driver}
Loading

0 comments on commit 533064d

Please sign in to comment.