- Support preferences specified in a variety of preference languages with various levels of expressivity
- Handle multiple stakeholders at different levels of authority who may hold possibly conflicting preferences
- Ability to deal with alternatives that are composite in nature
- Transparency and accountability to the user, i.e., explain to the user the rationale behind choosing some alternative(s) as preferred given his/her preferences
Presently, the iPref-R is available for preferences specified in CP-nets, TCP-nets (with unconditional relative importance) and CI-nets for decision problems involving a single stakeholder. It is implemented in Java.
- Download iPref-R as a runnable jar
- Download iPref-R as a runnable jar including Java source
- Javadoc for the source code
- Input: A CP-net, TCP-net in XML format or CI-net in text format which will be translated into an SMV model corresponding to the induced preference graph of the CP-net, TCP-net or CI-net.
- Example 1: CP-net with consistent preferences (cycle-free induced preference graph)
- Example 2: CP-net with inconsistent preferences (cycles in the induced preference graph)
- Example 3: TCP-net with consistent preferences (cycle-free induced preference graph)
- Example 4: CI-net with consistent preferences (cycle-free induced preference graph)
- Requirements: Ensure that either the NuSMV model checker (that can be invoked from the command line using the command "NuSMV"), or the Cadence SMV model checker (that can be invoked from the command line using the command "smv") must be installed in the system. Note that the implementation is tested with NuSMV 2.4.3, but should work with later versions as well.
- Resoning Tasks:
- Consistency Testing: Is the induced preference graph cycle-free? Returns true or false along with a counterexample (cycle) if any.
- Dominance Testing: Does morePreferredOutcome dominate lessPreferredOutcome? Returns true or false along with proof (path from less preferred to most preferred outcome).
- Next Preferred Computation: Returns the next preferred outcome in a total ordering inconsistent with the induced preference graph. Note: This method has to be called within a session.
- Weak Order Computation: Computes a sequence of set of outcomes at subsequent levels in an optimistic minimal weak order extension inconsistent with the induced preference graph.
The theoretical foundations of the tool can be found in the paper Dominance Testing via Model Checking by Santhanam et al. (AAAI 2010).
Other related publications
Collaborating Labs and Groups