Recognizing single-peaked preferences on an arbitrary graph: Complexity and algorithms
Résumé
We study in this paper single-peakedness on arbitrary graphs. Given a collection of preferences (rankings of alternatives), we aim to determine a connected graph on which the preferences are single-peaked, in the sense that all the preferences are traversals of $G$. Note that a collection of preferences is always single-peaked on the complete graph. We propose an Integer Linear Programming formulation (ILP) of the problem of minimizing the number of edges in $G$ or the maximum degree of a vertex in $G$. We prove that both problems are NP-hard in the general case. However, we show that if the optimal number of edges is $m-1$ (where $m$ is the number of candidates) then any optimal extreme point solution of the continuous relaxation of the ILP is integer and thus the integrality constraints can be relaxed. This provides an alternative proof of the polynomial time complexity of recognizing single-peaked preferences on a tree. We prove the same result for the case of a path (an axis), providing here also an alternative proof of polynomiality of the recognition problem. Furthermore, we provide a polynomial time procedure to recognize single-peaked preferences on a pseudotree (a connected graph that contains at most one cycle). We also give some experimental results, both on real and synthetic datasets.