It is known that certain reasoning tasks, in particular that of dominance (e.g., given a CP-net N and two outcomes or items, which if either is preferred according to N?), are computationally complex — NP-hard or worse. However, there is a growing base of heuristic algorithms for dominance testing. This bolsters the case for more widespread use of CP-nets in practice.
In this tutorial we hope to introduce participants to CP-nets and methods for using them. Those familiar with preference representations will be interested in our demonstration of a new GUI for visualizing CP-nets, recent approaches to dominance testing, an algorithm to generate CP-nets uniformly at random, and results of extensive human-subjects experiments. We expect participants to complete the session with an increased appreciation for the usefulness and usability of CP-nets.
We will then look at common preference reasoning tasks: finding the optimal outcome, finding the k-best outcomes, aggregating multiple preferences, and comparing two outcomes. We will introduce simple algorithms for the first two, and then introduce the notion of a flipping sequence, first graphically and then formally. Flipping sequences provide the underlying semantics for comparisons; the existence question, given N and outcomes o and o', of a flipping sequence from o' to o is called the dominance testing problem.
We will describe some of the available dominance testing algorithms, including Boutilier, et al.'s initial heuristics and more recent approaches based on planning and Santhanam et al.'s work on model-checking. We will propose a dominance-testing competition, which we hope to organize in conjunction with an AI conference in 2017. We expect that the competition will also allow for remote entries to encourage broader participation.
Next, we will present some of the CP-net learning algorithms and discuss their applicability and why they are needed. We will describe the human-subjects test recently run by our colleagues in the related fields of quantitative psychology and behavioral economics, and the data that is (or will be) available from those tests. We will also discuss the challenges inherent in such experiments.
There are many notions of preference aggregation. We will present work on voting with CP-nets and on probabilistic CP-nets (PCP-nets) as preference aggregation representations.
Finally, we will discuss the use of "randomly generated" CP-nets, and the statistical biases introduced by most work up to now. We will introduce an algorithm for uniformly generating CP-nets at random and discuss the sort of questions that can be explored using such generation.