From f23706b93b61b6226fd02226a00fd3e879e30bbe Mon Sep 17 00:00:00 2001 From: Tobias Eidelpes Date: Fri, 15 May 2020 17:33:30 +0200 Subject: [PATCH] Finish text for max rule --- paper/termpaper.tex | 62 ++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 55 insertions(+), 7 deletions(-) diff --git a/paper/termpaper.tex b/paper/termpaper.tex index ae03ec9..c80d96e 100644 --- a/paper/termpaper.tex +++ b/paper/termpaper.tex @@ -108,7 +108,7 @@ exceed the limit $B$: \begin{equation}\label{eq:1} \sum_{p\in A}{c(p)\leq B}. \end{equation} -When projects can be divisible, i.e. completed to a fractional degree, the +When projects can be divisible, i.e., completed to a fractional degree, the authors define a function $\mu(p) : P\rightarrow [0,1]$ which maps every project to an interval between zero and one, representing the fractional degree to which this project is completed. Since the cost of each project is a function of its @@ -217,7 +217,7 @@ of this property. The third satisfaction function assumes that voters are content as long as there is at least one of the projects they have approved selected to be in the winning set. Therefore, a voter achieves satisfaction 1 when at least one approved -project ends up in the winning bundle, i.e. if $|A_v| > 0$ and 0 satisfaction +project ends up in the winning bundle, i.e., if $|A_v| > 0$ and 0 satisfaction otherwise (see equation~\ref{eq:5}). \begin{equation}\label{eq:5} sat_{0/1}(P_v,A) = @@ -228,9 +228,10 @@ otherwise (see equation~\ref{eq:5}). \end{equation} The satisfaction functions from equations~\ref{eq:4} and \ref{eq:5} can also be combined with the greedy rule, potentially giving slightly different outcomes -than $\mathcal{R}_{sat_\#}^g$. +than $\mathcal{R}_{sat_\#}^g$. An example demonstrating the greedy rule is given +in example~\ref{ex:greedy}. -\begin{example} +\begin{example}\label{ex:greedy} A set of projects $P = \{ p_2,p_3,p_4,p_5,p_6 \}$ and their associated cost $p_i$ where project $p_i$ costs $i$ and a budget limit $B = 10$ is given. Futhermore, five voters vote $v_1 = \{ p_2,p_5,p_6 \}$, $v_2 = \{ p_2, @@ -240,12 +241,59 @@ than $\mathcal{R}_{sat_\#}^g$. $\mathcal{R}_{sat_{0/1}}^g$ $\{ p_2,p_3,p_5 \}$. \end{example} -These three satisfaction functions cannot only be combined with a greedy -selection process. A different possibility is to always select a winning set of -projects that maximizes the sum of the voters' satisfaction: +Computing a solution to the problem of finding a winning set of projects by +using greedy rules can be done in polynomial time due to their iterative nature. +The downside to using a greedy selection process is that the provided solution +might not be optimal with respect to the satisfaction. + +To be able to compute optimal solutions, +\textcite{talmonFrameworkApprovalBasedBudgeting2019} suggest combining the +satisfaction functions with a maximization rule. The maximization rule always +selects a winning set of projects that maximizes the sum of the voters' +satisfaction: \begin{equation}\label{eq:6} \max_{A\subseteq P}\sum_{v\in V}sat(P_v,A) \end{equation} +The max rule can then be used with the three satisfaction functions in the same +way, giving: $\mathcal{R}_{sat_\#}^m$, $\mathcal{R}_{sat_\$}^m$ and +$\mathcal{R}_{sat_{0/1}}^m$. Example~\ref{ex:max} shows that the selection of +winning projects is not as intuitive as when using the greedy rule. Whereas it +was still possible to compute a solution without any tools for the greedy +selection, the max rule requires knowing the possible sets of projects +beforehand in order to select the bundle with the maximum satisfaction. This +hints at the complexity of the max rule being harder to solve than the greedy +rule. The authors confirm this by identifying $\mathcal{R}_{sat_\$}^m$ as weakly +\textsf{NP}-hard for the problem of finding a winning set that gives at least a +specified amount of satisfaction. The proof follows from a reduction to the +subset sum problem which asks the question of given a set of numbers (in this +case the cost associated with each project) and a number $B$ (the budget limit) +does any subset of the numbers sum to exactly $B$? Because the subset sum +problem is solvable by a dynamic programming algorithm in $O(B\cdot |P|)$ where +$P$ is the set of projects, $\mathcal{R}_{sat_\$}^m$ is solvable in +pseudo-polynomial time. Finding a solution using the rule +$\mathcal{R}_{sat_\#}^m$ however, is doable in polynomial time due to the +problem's relation to the knapsack problem. If the input is represented in +unary, a dynamic programming algorithm is bounded by a polynomial in the length +of the input. For $\mathcal{R}_{sat_{0/1}}^m$, finding a set of projects that +gives at least a certain amount of satisfaction is \textsf{NP}-hard. Assuming +that the cost of all of the projects is one unit, the rule is equivalent to the +max cover problem because we are searching for a subset of all projects with the +number of the projects (the total cost due to the projects given in unit cost) +smaller or equal to the budget limit $B$ and want to maximize the number of +voters that are represented by the subset. + +\begin{example}\label{ex:max} + Taking the initial setup from example~\ref{ex:greedy}: $P = \{ + p_2,p_3,p_4,p_5,p_6 \}$ and their associated cost $p_i$ where project $p_i$ + costs $i$, a budget limit $B = 10$ and the five voters: $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 \}$. We get $\{ p_2,p_3,p_5 \}$ for + $\mathcal{R}_{sat_\#}^m$, $\{ p_4,p_5 \}$ for $\mathcal{R}_{sat_\$}^m$ and + $\{ p_4,p_6 \}$ for $\mathcal{R}_{sat_{0/1}}^m$. Especially the last rule is + interesting because it provides the highest amount of satisfaction possible + by covering each voter with at least one project. Project $p_6$ covers + voters $v_1$ and $v_5$ and project $p_4$ voters $v_2$, $v_3$ and $v_4$. +\end{example} \printbibliography