\documentclass{beamer}

\beamertemplatenavigationsymbolsempty

\usetheme{Boadilla}
\usecolortheme{dolphin}

\usepackage{graphicx}
\usepackage{tikz}
\usepackage{dsfont}
\usepackage{comment}

\usetikzlibrary{arrows}

\begin{document}

\title[Participatory Budgeting]{Participatory Budgeting}
\subtitle{Algorithms and Complexity}
\author{Tobias Eidelpes}

\begin{frame}
	\maketitle
\end{frame}

\begin{frame}
	\frametitle{Table of Contents}
	\tableofcontents
\end{frame}

\section{Introduction}

\begin{frame}
	\frametitle{What is Participatory Budgeting?}
	\begin{quote}
		Participatory Budgeting (PB) is a democratic process in which
		community members decide how to spend part of a public budget.
	\end{quote}
    \vspace{1cm}
    \begin{itemize}
        \setlength{\itemsep}{1.1\baselineskip}
        \item Participatory part: community members propose projects
        \item Budgeting part: each project requires a fixed amount of money
        \item Goal: Fund the \emph{best} projects without exceeding the budget
    \end{itemize}
\end{frame}

\begin{frame}
    \frametitle{How does it work?}
    \tikzstyle{blue} = [rectangle,rounded
    corners=3pt,draw=blue!50,fill=blue!20,node distance=1cm]
    \tikzstyle{red} = [rectangle,rounded corners=3pt,draw=red!50,fill=red!20]
    \tikzstyle{arrow} = [line width=1pt,->,>=triangle 60,draw=black!70]
    \begin{center}
        \begin{tikzpicture}[shorten >= 2pt,level distance=1.3cm]
            \node[blue](design){Design the process}
                child { node [blue](collect){Collect ideas}
                    child { node [blue](develop){Develop feasible projects}
                        child { node [red](vote){Vote on projects}
                            child { node [red](aggregate){Aggregate votes \& fund winners}
                            }
                        }
                    }
                }
                ;
            \draw [arrow] (design) to (collect);
            \draw [arrow] (collect) to (develop);
            \draw [arrow] (develop) to (vote);
            \draw [arrow] (vote) to (aggregate);
        \end{tikzpicture}
    \end{center}
\end{frame}

\begin{frame}
	\frametitle{A general framework for PB}
    \begin{itemize}
        \setlength{\itemsep}{1\baselineskip}
        \item Projects $P=\{p_1,\dots,p_m\}$
            \begin{itemize}
                \setlength{\itemsep}{.7\baselineskip}
                \item Each project $p\in P$ has associated cost
                    $c(p):P\rightarrow\mathbb{R}$
                \item Projects are either divisible or indivisible (discrete)
            \end{itemize}
        \item Select a set $P'\subseteq P$ as \emph{winning projects} not
            exceeding total budget $B$
            \begin{itemize}
                \setlength{\itemsep}{.7\baselineskip}
                \item Discrete case: $\sum_{p\in P'}c(p)\leq B$
                \item Divisible case: $\mu(p): P\rightarrow [0,1]$ with
                    $\sum_{p\in P'}c(\mu(p))\leq B$
            \end{itemize}
    \end{itemize}
\end{frame}

\begin{frame}
    \frametitle{A general framework for PB ctd.}
    \begin{itemize}
        \setlength{\itemsep}{1\baselineskip}
        \item Voters $V=\{v_1,\dots,v_n\}$
            \begin{itemize}
                \setlength{\itemsep}{.5\baselineskip}
                \item Express preferences over individual projects in $P$ or
                    over subsets in $\mathcal{P}(P) := \{P'\,|\,P'\subseteq P\}$
                \item Preference elicitation is dependent on the input method
                    (approval-based, ranked orders)
            \end{itemize}
        \item Aggregation methods
            \begin{itemize}
                \item Aggregation methods combine votes to determine a set
                    of winning projects
                \item Are usually tied to the input method
                \item Rules are used to select projects w.r.t. desired
                    properties of the outcome (fairness, welfare)
            \end{itemize}
    \end{itemize}
\end{frame}

\begin{frame}
    \frametitle{Input and aggregation methods}
    Example input methods:
    \begin{itemize}
        \item Approval preferences
        \item Ranked orders
        \item Utility-based preferences
    \end{itemize}
    \vspace{0.2cm}
    Example aggregation methods:
    \begin{itemize}
        \item Maximizing social welfare
        \item Greedy selection
        \item Fairness-based selection
    \end{itemize}
    \vspace{0.2cm}
    Aggregation methods depend on how voters elicit their preferences.
\end{frame}

\begin{frame}
    \frametitle{Approval-based budgeting methods}
    \begin{itemize}
        \item Voters approve a subset of projects
        \item Voter preferences are assumed to be \emph{dichotomous}
        \item A \emph{satisfaction function} provides a metric for voter
            satisfaction
    \end{itemize}
    \begin{block}{An approval-based budgeting scenario}
        A budgeting scenario is a tuple $E = (P,V,c,B)$ where $P =
        \{p_1,\dots,p_m\}$ is a set of projects, $V$ is a set of voters, $c :
        P\rightarrow\mathbb{N}$ is a cost function associating each project
        $p\in P$ with its cost $c(p)$ and $B\in\mathbb{N}$ is a budget limit. A
        voter $v\in V$ specifies $P_v\subseteq P$, containing all approved
        items.
    \end{block}
    \begin{block}{Budgeting method $\mathcal{R}$}
        A budgeting method $\mathcal{R}$ takes a budgeting scenario $E$ and
        returns a bundle $A\subseteq P$ where the total cost of the items in
        $A$ does not exceed the budget limit $B$.
    \end{block}
\end{frame}

\begin{frame}
    \frametitle{Satisfaction functions}
    \begin{block}{Satisfaction function}
        A satisfaction function $sat : 2^P\times 2^P\rightarrow\mathbb{R}$ with
        a set $P$ of items, a voter $v$ and her approval set $P_v$ and a bundle
        $A\subseteq P$ provides the satisfaction $sat(P_v,A)$ of $v$ from the
        bundle $A$. The set of approved items by $v$ that end up in the winning
        bundle is denoted by $A_v = P_v\cap A$.
    \end{block}
    \begin{exampleblock}{$sat_\#(P_v,A)$}
        $sat_\#(P_v,A) = |A_v|$: The satisfaction of voter $v$ is the number of
        funded items that are approved.
    \end{exampleblock}
\end{frame}

\begin{frame}
    \frametitle{Satisfaction functions ctd.}
    \begin{exampleblock}{$sat_\$(P_v,A)$}
        $sat_{\$}(P_v,A) = \sum_{p\in A_v}{c(p) = c(A_v)}$: The satisfaction of voter
        $v$ is the total cost of her approved and funded items.
    \end{exampleblock}
    \begin{exampleblock}{$sat_{0/1}(P_v,A)$}
        \[ sat_{0/1}(P_v,A) =
            \begin{cases}
                1 & \text{if } |A_v|>0 \\
                0 & \text{otherwise}
            \end{cases}
        \]
        A voter $v$ has satisfaction 1 if at least one of her approved items is
        funded and 0 otherwise.
    \end{exampleblock}
\end{frame}

\begin{frame}
    \frametitle{Rules for selecting a winning bundle}
    {\Large Let $sat$ be a satisfaction function:}
    \begin{block}{Max rules}
        The rule $\mathcal{R}_{sat}^m$ selects a bundle which maximizes the sum
        of voters' satisfaction: $\mathsf{max}_{A\subseteq P}\sum_{v\in
        V}{sat(P_v,A)}$
    \end{block}
    \begin{block}{Greedy rules}
        The rule $\mathcal{R}_{sat}^g$ iteratively adds an item $p\in P$ to $A$,
        seeking to maximize $\sum_{v\in V}{sat(P_v,A\cup\{p\})}$.
    \end{block}
    \begin{block}{Proportional greedy rules}
        The rule $\mathcal{R}_{sat}^p$ iteratively adds an item $p\in P$ to $A$
        seeking to maximize the sum of satisfaction per unit of cost.
    \end{block}
\end{frame}

\begin{frame}
    \frametitle{Example budgeting scenarios}
    \begin{block}{A budgeting scenario}
        Items $P = \{p_2,p_3,p_4,p_5,p_6\}$ and their associated cost $p_i$
        where $p_i$ costs $i$. Budget limit $B=10$ and 5 voters vote
        $v_1=\{p_2,p_5,p_6\}$, $v_2=\{p_2,p_3,p_4,p_5\}$, $v_3=\{p_3,p_4,p_5\}$,
        $v_4=\{p_4,p_5\}$ and $v_5=\{p_6\}$.
    \end{block}
    \begin{exampleblock}{Combining max rule with $sat_\#$}
        Under $\mathcal{R}_{|A_v|}^m$ the winning bundle is $\{p_2,p_3,p_5\}$.
        The total satisfaction is 8.
    \end{exampleblock}
    \begin{exampleblock}{Combining greedy rule with $sat_\#$}
        Under $\mathcal{R}_{|A_v|}^g$ the winning bundle is $\{p_4,p_5\}$ (first
        selecting $p_5$). The total satisfaction is 7.
    \end{exampleblock}
    \begin{exampleblock}{Combining max rule with $sat_{0/1}$}
        Under $\mathcal{R}^m_{sat_{0/1}}$ the winning bundle is $\{p_4,p_6\}$,
        achieving max satisfaction.
    \end{exampleblock}
\end{frame}

\begin{frame}
    \frametitle{}
\end{frame}

\section{Future Directions}

\begin{frame}
	\frametitle{Future Areas of Interest}
	\begin{itemize}
		\item Multi-dimensional constraints
		\item Hybrid models
		\item Complex resident preferences
		\item Market-based approaches
		\item The role of information
		\item Research spanning the entire PB process
	\end{itemize}
\end{frame}

\begin{frame}
	\centering
	\Large
	Thank you for your attention! \\
	Questions \& Answers
\end{frame}

\end{document}
