 One of the most interesting lines of research in computational social choice is to use techniques and ideas from AI and theoretical computer science to design new voting methods. The main idea is to think of voting methods as solutions to an optimization problem. Consider the space of all rankings of the alternatives \(X\). Given a profile of rankings, the voting problem is to find an “optimal” group ranking (cf. the discussion or distance-based rationalizations of voting methods from Elkind et al. 2015). What counts as an “optimal” group ranking depends on assumptions about the type of the decision that the group is making. One assumption is that the voters have real-valued utilities for each candidate, but are only able to report rankings of the alternatives (it is assumed that the rankings represent the utility functions). The voting problem is to identify the candidates that maximizes the (expected) social welfare (the average of the voters’ utilities), given the  partial information about the voters’ utilities—i.e., the profile of rankings of the candidates. See Pivato 2015 for a discussion of this approach to voting and Boutilier et al. 2015 for algorithms that solve different versions of this problem. A second assumption is that there is an objectively correct ranking of the alternatives and the voters’ rankings are noisy estimates of this ground truth. This way of thinking about the voting problem was introduced by Condorcet and discussed in Section 4.3. Procaccia et al. (2016) import ideas from the theory of error-correcting codes to develop an interesting new approach to aggregate rankings viewed as noisy estimates of some ground truth. 