Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak CP’2003 Tutorial: Preference Representation and Constrained Optimization with CP-Nets Ronen I.

Slides:



Advertisements
Similar presentations
CP nets Toby Walsh NICTA and UNSW. Representing preferences Unfactored Not decomposable into parts E.g. assign utility to each outcome Factored Large.
Advertisements

Heuristic Search techniques
Comparative Succinctness of KR Formalisms Paolo Liberatore.
Chapter 11 Limitations of Algorithm Power Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
Naïve Bayes. Bayesian Reasoning Bayesian reasoning provides a probabilistic approach to inference. It is based on the assumption that the quantities of.
Interactive Configuration
Lauritzen-Spiegelhalter Algorithm
The Volcano/Cascades Query Optimization Framework
Computing Kemeny and Slater Rankings Vincent Conitzer (Joint work with Andrew Davenport and Jayant Kalagnanam at IBM Research.)
July, 7, 2004 UAI’04 Tutorial Ronen Brafman Eliciting, Modeling, and Reasoning about Preferences using CP-nets Ronen I. Brafman Ben-Gurion University.
Preference Elicitation Partial-revelation VCG mechanism for Combinatorial Auctions and Eliciting Non-price Preferences in Combinatorial Auctions.
EE 553 Integer Programming
Experiments We measured the times(s) and number of expanded nodes to previous heuristic using BFBnB. Dynamic Programming Intuition. All DAGs must have.
Graduate Center/City University of New York University of Helsinki FINDING OPTIMAL BAYESIAN NETWORK STRUCTURES WITH CONSTRAINTS LEARNED FROM DATA Xiannian.
Parallel Scheduling of Complex DAGs under Uncertainty Grzegorz Malewicz.
Best-First Search: Agendas
Discrete Structure Li Tak Sing( 李德成 ) Lectures
Probabilistic networks Inference and Other Problems Hans L. Bodlaender Utrecht University.
Modeling Qualitative Preferences Using the CP-net Model.
Hardness Results for Problems P: Class of “easy to solve” problems Absolute hardness results Relative hardness results –Reduction technique.
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
Tirgul 10 Rehearsal about Universal Hashing Solving two problems from theoretical exercises: –T2 q. 1 –T3 q. 2.
3 -1 Chapter 3 The Greedy Method 3 -2 The greedy method Suppose that a problem can be solved by a sequence of decisions. The greedy method has that each.
Constraint Satisfaction Problems
. Bayesian Networks Lecture 9 Edited from Nir Friedman’s slides by Dan Geiger from Nir Friedman’s slides.
Analysis of Algorithms CS 477/677
Computational Complexity, Physical Mapping III + Perl CIS 667 March 4, 2004.
2-Layer Crossing Minimisation Johan van Rooij. Overview Problem definitions NP-Hardness proof Heuristics & Performance Practical Computation One layer:
Chapter 11: Limitations of Algorithmic Power
Multi-Agent Organizer by Kogan Tanya Shusterman Evgeny Advisor: Domshlak Carmel.
Chapter 5 Outline Formal definition of CSP CSP Examples
Chapter 11 Limitations of Algorithm Power Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
Cmpt-225 Simulation. Application: Simulation Simulation  A technique for modeling the behavior of both natural and human-made systems  Goal Generate.
Distributed Constraint Optimization * some slides courtesy of P. Modi
1.1 Chapter 1: Introduction What is the course all about? Problems, instances and algorithms Running time v.s. computational complexity General description.
Distributed Constraint Optimization Michal Jakob Agent Technology Center, Dept. of Computer Science and Engineering, FEE, Czech Technical University A4M33MAS.
© The McGraw-Hill Companies, Inc., Chapter 3 The Greedy Method.
CP Summer School Modelling for Constraint Programming Barbara Smith 1.Definitions, Viewpoints, Constraints 2.Implied Constraints, Optimization,
An efficient distributed protocol for collective decision- making in combinatorial domains CMSS Feb , 2012 Minyi Li Intelligent Agent Technology.
Chapter 11 Limitations of Algorithm Power. Lower Bounds Lower bound: an estimate on a minimum amount of work needed to solve a given problem Examples:
Computational Complexity Polynomial time O(n k ) input size n, k constant Tractable problems solvable in polynomial time(Opposite Intractable) Ex: sorting,
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Sets.
Constraint Satisfaction Problems (CSPs) CPSC 322 – CSP 1 Poole & Mackworth textbook: Sections § Lecturer: Alan Mackworth September 28, 2012.
Preferences Toby Walsh NICTA and UNSW
Slide 1 Propositional Definite Clause Logic: Syntax, Semantics and Bottom-up Proofs Jim Little UBC CS 322 – CSP October 20, 2014.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
1 Lower Bounds Lower bound: an estimate on a minimum amount of work needed to solve a given problem Examples: b number of comparisons needed to find the.
Incompleteness and incomparability in preference aggregation: complexity results M. Silvia Pini*, Francesca Rossi*, K. Brent Venable*, and Toby Walsh**
CP Summer School Modelling for Constraint Programming Barbara Smith 2. Implied Constraints, Optimization, Dominance Rules.
1 Variable Elimination Graphical Models – Carlos Guestrin Carnegie Mellon University October 11 th, 2006 Readings: K&F: 8.1, 8.2, 8.3,
Working with Preferences Ronen Brafman Computer Science Department Ben-Gurion University.
1 Prune-and-Search Method 2012/10/30. A simple example: Binary search sorted sequence : (search 9) step 1  step 2  step 3  Binary search.
Thursday, May 9 Heuristic Search: methods for solving difficult optimization problems Handouts: Lecture Notes See the introduction to the paper.
Chap 10. Integer Prog. Formulations
1 Chapter 34: NP-Completeness. 2 About this Tutorial What is NP ? How to check if a problem is in NP ? Cook-Levin Theorem Showing one of the most difficult.
Chapter 2) CSP solving-An overview Overview of CSP solving techniques: problem reduction, search and solution synthesis Analyses of the characteristics.
Operational Research & ManagementOperations Scheduling Economic Lot Scheduling 1.Summary Machine Scheduling 2.ELSP (one item, multiple items) 3.Arbitrary.
BDDs1 Binary Tree Representation The recursive Shannon expansion corresponds to a binary tree Example: Each path from the root to a leaf corresponds to.
NP-Completeness  For convenience, the theory of NP - Completeness is designed for decision problems (i.e. whose solution is either yes or no).  Abstractly,
A Brief Maximum Entropy Tutorial Presenter: Davidson Date: 2009/02/04 Original Author: Adam Berger, 1996/07/05
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
Working with Preferences Ronen Brafman Computer Science Department Stanford University* * On leave from Ben-Gurion University.
P & NP.
Lecture 7: Constrained Conditional Models
NP-Completeness Yin Tat Lee
Analysis and design of algorithm
CP nets and Soft Constraints. Formalisms for Preferences CP-nets ◦ +ve: conditional, qualitative ◦ -ve: comparing outcomes Soft Constraints ◦ +ve: comparing.
Chapter 11 Limitations of Algorithm Power
Presented By: Darlene Banta
Deniz Beser A Fundamental Tradeoff in Knowledge Representation and Reasoning Hector J. Levesque and Ronald J. Brachman.
Presentation transcript:

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak CP’2003 Tutorial: Preference Representation and Constrained Optimization with CP-Nets Ronen I. Brafman Ben-Gurion University Carmel Domshlak Cornell University

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Overview Why Qualitative Preferences? Representing Preferences with CP-nets Comparing Outcomes Optimization and Constrained Optimization Conclusion

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Overview Why Qualitative Preferences? Representing Preferences with CP-nets Comparing Outcomes Optimization and Constrained Optimization Conclusion

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak May be I should buy a new car … Huge assortment of models Customizable accessories Customizable mechanics

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Preference specification Optimal automobile Search …

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Preference specification Search … On a red sport car I prefer a sunroof …

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Applications Product Configuration –Find an optimal feasible configuration Searching large databases on the web –Find best available vacation Personalization –Display content most appropriate for user –Adopt presentation to user device, preferences

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Common Properties Uncertainty not a serious issue  Utility functions are not needed Lay users  No/little training required  As effort-less as possible  Utility functions not desirable On-line/consumer application  Expert decision analyst not available  Fast response time desirable

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak The Bottleneck: Preference Elicitation Process Utility Functions: Not Needed, Not Desirable

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak What We Want from a Preference Model Supports simple elicitation process based on intuitive and natural statements about preferences As expressive as possible, subject to above Supports an efficient optimization process On a red sports car I prefer a sunroof …

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Overview Why Qualitative Preferences? Representing Preferences with CP-nets –Representing Conditional Preferences –Representing Relative Importance Comparing Outcomes Optimization and Constrained Optimization Conclusion

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Formal Setting 1.Set of Variables 2.Outcome space Our task: Define a preference order over O

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Example: Product Configuration Consider the problem of configuring a PC Domain variables correspond to system properties: Processor Speed, Processor Manufacturer, Screen Size, etc. Dom( Screen Size ) = {15in, 17in, 19in, 21in} Dom( Processor Manufacturer ) = {Intel, AMD}

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Example: Preference Statements I prefer a 1000 MHz processor to a 800 MHz processor I prefer a 19in screen to a 17in screen if the video card is Sony’s The CPU speed is more important than the CPU manufacturer

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Ceteris Paribus (Lat.) – all else being equal “ I prefer to have wine with my meal” What does it mean? Given two identical meals, one with wine and one without, I prefer the former. Ceteris Paribus (CP) Statements

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Conditional CP Statements “ I prefer red wine to white wine with my meal, ceteris paribus, given that meat is served” That is: given two identical meals in which meat is served, I prefer red wine to white wine. Tells us nothing about two identical meals in which meat is NOT served.

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Preferential Independence If my preferences over the values of a variable v does not depend on the values of some other variables, then v is preferentially independent of all other variables. I prefer 1000 MHz to 800 MHz (all else being equal) A subset of variables is preferentially independent of its complement if and only if, for all assignments holds

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Conditional Preferential Independence If my preferences over values of v depend on, and only on, the values of v 1, …,v k, then v is conditionally preferentially independent of V-{v 1, …,v k }, given an assignment to v 1, …,v k. I prefer 19in screen to 17in screen if video card is Sony’s (all else being equal) Let be a partition of into three disjoint non-empty sets. is conditionally preferentially independent of given if and only if, for all holds

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak CP-nets (Boutilier, Brafman, Hoos, Poole, UAI ‘99) An intuitive, qualitative, graphical model of preferences, that captures statements of conditional preferential independence. Each node represents a domain variable. The immediate parents Parents(v) of a variable v in the network are those variables that affect user’s preference over the values of v. A conditional preference table (CPT) is associated with every node in the CP-net - Provides an ordering over the values of the node for every possible parent context Parents(screen size) = { video card manuf. } Parents(operating system) = { processor speed, screen size }

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak A C DE F B Example of a CP-net

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Any acyclic CP-net defines a (consistent) partial order over the outcome space. A C B Semantics and Consistency worst best

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Cyclic CP-Nets A theory of cyclic CP-nets is emerging Computational problems typically harder In this tutorial – We restrict our attention to acyclic networks.

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Example Dinner Configuration I

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Suppose that I want to express my preference over dinner configurations, where dinner consists of a soup and a wine. Preferences: I strictly prefer fish soup to vegetable soup. I prefer red wine with a vegetable soup, and white wine with a fish soup.

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Soup Wine worst best

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Parent More Important Than Descendent Soup Wine child preferences violated parent preferences violated

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Example Dinner Configuration II

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Suppose that dinner consist of a main course, a soup, and a wine. Preferences: I strictly prefer a steak to a fish fillet. I prefer to open with a fish soup if the main course is a steak, and with a vegetable soup if the main course is a fish fillet. I prefer a red wine with a vegetable soup, and a white wine with a fish soup.

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Soup Wine Main Course

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Any questions so far?

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Adding Variable Importance into CP-networks

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Recall: Parent More Important Than Descendent Soup Wine child preferences violated parent preferences violated

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Explicit Importance Relations Relative importance statements are very natural They express the fact that one variable’s value is more important than another’s CP-nets induce an importance relation between nodes and their descendents only Let’s add an explicit importance relation

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Relative Importance Processor type is more important to me than operating system ( all else being equal). Operating system is more important than processor type ( all else being equal), if the PC is used primarily for graphical applications. If it is more important to me that the value of X be high than the value of Y be high, then X is more important than Y. If, given z  Dom( Z ), it is more important to me that the value of X be high than the value of Y be high, then X is conditionally more important than Y.

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak A C B worst best

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak A B CD E nodes  variables cp-arcs (directed) i-arcs (directed) ci-arcs (undirected) cp-tables ci-tables

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Example Choosing a Flight to a conference in USA

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Specifying My Preferences Set of relevant parameters Their possible values (Possibly conditional) preferences over parameters values Relative importance of each parameter

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Parameters & Values Day of the flight – One or Two days before the conference. Airline – British Airlines or KLM. Departure time – Morning or night. Stop-overs – Direct flight, or a flight with a stop-over in Europe. Class – Economy or business.

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak My Preferences

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Flight Day - D I have a family and much work, so I prefer to leave a day before the conference.

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Airline - A I prefer British Airways to KLM because they have a better frequent-flyer program

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Departure time - T Among the flights leaving two days before the conference I prefer to take an evening/night flight, because it will allow me to work longer at the day of the flight. However, among the flights leaving one day before the conference I prefer to take a morning/noon flight, because I hate to arrive at the last moment.

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Stop-over - S I am a smoker, and I find long non-smoking day flights difficult to cope with. Thus, I prefer a stop-over in Europe. However, on night flights I usually sleep (and don’t smoke), thus I prefer direct flights which are shorter.

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Class - C I sleep well in night flights, regardless of the class, and so at night, I prefer economy which is much cheaper. During the day I prefer to pay for a seat in business class so that I can enjoy the food, wine, and comfortable seats.

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Day of the flight Departure Time Stop-overs Class Airline

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Day of the flight Departure Time Stop-overs Class Airline

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Relative Importance Getting a more preferred flying time is more important to me than getting the preferred airline.

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Day of the flight Departure Time Stop-over Class Airline

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Conditional Relative Importance 1.On a KLM, day flight, an intermediate stop in Amsterdam is more important to me than sitting in business class. 2.Given a British Airways, night flight, having a direct flight is more important to me than getting a cheaper economy sit. 3.On a British Airways, day flight, sitting in business class is more important to me than having a stop-over.

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Day of the flight Departure Time Stop-oversClass Airline

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Questions?

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Overview Why Qualitative Preferences? Representing Preferences with CP-nets Comparing Outcomes –Dominance Queries –Ordering Queries Optimization and Constrained Optimization Conclusion

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak BEST Preference Query Data How hard is preferential comparison between a pair of alternatives with respect to a given CP-net? Any implementation of BEST involves comparison queries between pairs of alternatives …

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Dominance queries Given a CP-net N and a pair of assignments  and , determine whether N   >  If this relation holds,  is preferred to , and we say that  dominates  with respect to N. A sequence of improving flips from one assignment to another (flipping sequence) is a proof that the latter assignment is preferred to the former.

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Dominance testing for CP-nets with binary variables. Backtrack free algorithm in BBHP ‘99Remarks Linear?TreeComplexity CP-net graph

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Dominance testing for CP-nets with binary variables. Lower boundRemarks TreeComplexity CP-net graph

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Dominance testing for CP-nets with binary variables. Lower boundRemarks Tree PolytreeComplexity CP-net graph k – maximal indegree

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Dominance testing for CP-nets with binary variables. k - maximal indegree Lower boundRemarks Tree Singly-connected DAG PolytreeComplexity CP-net graph NP-complete Reduction from 3SAT

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Dominance testing for CP-nets with binary variables. Minimal flipping sequences are polynomially bounded Reduction from 3SAT k - maximal indegree Lower boundRemarks Tree NP-complete -connected DAG NP-completeSingly-connected DAG PolytreeComplexity CP-net graph

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Dominance testing for CP-nets with binary variables. NP or harder? Minimal flipping sequences are polynomially bounded Reduction from 3SAT k - maximal indegree Lower boundRemarks Tree ? DAG NP-complete -connected DAG NP-completeSingly-connected DAG PolytreeComplexity CP-net graph

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Any alternative? SORT Any difference? BEST Preference Query Data

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak There is a computational difference! Dominance query: Given a CP-net N and a pair of assignments  and , ask whether N   > . Ordering query: Given a CP-net N and a pair of assignments  and , ask whether N  > . If N  > , there exists a complete (total) preference ordering consistent with N in which  > . In such a case we say that  is consistently orderable over  with respect to N.  has to be ordered before   can be ordered before 

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Ordering Queries - I Claim 1: Let N be a CP-net, and ,  be a pair of complete assignments. If there exist a variable X in N, such that: 1.  and  assign the same values to all ancestors of X in N, and 2.given the assignment provided by  (and  ) to Parents(X),  assigns a more preferred value to X than that assigned by  then N  > .

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Ordering Queries -- II Condition provided by Claim 1 is: Testable in time linear in the number of variables, Sufficient BUT not necessary for N  > . “Partial necessity” – either N  >  or N  >  (or both) will be determined by the procedure used to answer the ordering queries.

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Ordering Queries - III Claim 2: Given a CP-net N over n variables and a set of complete assignments o 1, …, o m, ordering these assignments consistently with N can be done using ordering queries only, in time O(nm 2 ).

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Any questions?

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Overview Why Qualitative Preferences? Representing Preferences with CP-nets Comparing Outcomes Optimization and Constrained Optimization –Generating the best assignment –Generating the best feasible assignment Conclusion

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Preferential Optimization Finding the preferentially optimal outcome for an acyclic network is straightforward! A C DE F B A C DE F B

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Preferential Optimization Finding the preferentially optimal outcome for a cyclic network isn’t too hard either. A CD B 1. Find a cycle cut-set 2. For every value of the cut-set a. Optimize the resulting acyclic network given this value b. Check whether the cut-set’s value is optimal given the resulting assignment A CD B b c d a

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Constrained Optimization Input: Constraints, Preferences Output: An undominated, feasible solution or A set of undominated, feasible solutions or All undominated, feasible solutions

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Solving Constrained Optimization Problems Basic idea: Generate & Test –Generate outcomes –Test for feasibility –Test for optimality Looks bad – testing for optimality is difficult

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Ordered Generate & Test Generate outcomes in non-increasing order Test for feasibility Check for optimality: –First feasible outcome is optimal! –If more than one is needed: Maintain set of optimal solutions Compare new feasible solutions against current optimal set using dominance testing

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Compare > If dominated …     Otherwise …

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Generating a Non-increasing Sequence of Outcomes Select a topological ordering over variables (consistent with the CP-net structure) Build an assignment tree (search tree) by instantiating variables in this order –Variable values are ordered based on the CPT Leafnodes, ordered left to right provide a non-increasing sequence of outcomes

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Improvements We are generating a search tree, so we can do all the standard pruning and CSP techniques –In fact, we can view the CP-net as imposing a constraint on the variable orderings for the underlying constraint solver We can also prune a branch by using bounds (branch and bound) when: –We assign a variable to a less preferred value –Current set of constraints as strong as for some previous value of this variable

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Anytime Behavior First feasible solution is optimal! –No overhead beyond standard CSP solution Variable ordering is restricted Practical effect has not been investigated yet No item withdrawn from set of current solutions –Anytime property: set always expanded For more than one solution dominance testing needed –Can lead to considerable computational overhead

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Any questions?

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Overview Why Qualitative Preferences? Representing Preferences with CP-nets Comparing Outcomes Optimization and Constrained Optimization Conclusion –Applications –Related Techniques –Open Problems –Bibliography –Summary

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Implemented Applications Searching large databases: –Airline ticket reservation Personalization –Web-page content adaptation –Multi-media conferencing –Rich-media message adaptation Product configuration??

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Related Techniques - I Multi-attribute utility theory –User has preferences over variable values but not over their aggregates –Various techniques for make decision given this information Pareto optimal elements Additive utility function –Quantitative in nature –Does not capture conditional preferences

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Related Techniques - II Soft-constraints –Allows for variable length-constraints –Well developed techniques and algorithms –Requires much quantitative information –Does not facilitate expression of conditional preference –Does not utilize structured representations No inherent limitation – a good idea to pursue!

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Related Techniques - III Logics of preference –Much more expressive than CP-nets –Semantics not always intuitive Problematic in interpreting user statements –Typically, computationally intractable UCP-networks –Quantitative version of CP-nets –Many benefits (computational and expressive) –Requires numbers… Provides for a structured elicitation process Probably not adequate for on-line applications

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Open Problems Constrained optimization in cyclic CP-nets –Interesting problem –Easily understood structure TCP-nets –Partial results on consistency only –Partial results on complexity only Practical techniques for constrained optimization Greater expressive power

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak CP-Nets Bibliography - I First publications –Boutiler, Brafman, Geib & Poole: “Reasoning with Qualitative Ceteris Paribus Statements”, in AAAI Spring Symposium on Qualitative Preferences, Describes the constrained optimization algorithm –Boutilier, Brafman, Hoos & Poole: “Reasoning with Conditional Ceteris Paribus Statements”, in UAI’99. More formal treatment and heuristics for dominance testing Upcoming Journal publications by –Boutiler, Brafman, Domshlak, Hoos & Poole: JAIR: Describes properties of CP-Nets Special issue on preferences of Computational Intelligence Journal: Describes constrained optimization with CP-Nets Comprehensive source: –Carmel Domshlak’s Ph.D. Thesis - Ben-Gurion U.

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak CP-Nets Bibliography - II Domshlak, Brafman & Shimony: “Preferences-Based Configuration of Web Page Content”, IJCAI’01 Gudes, Domshlak & Orlov: “Remote Conferencing with Multimedia Objects”, 2 nd WS on Multimedia Data Document Engineering Brafman & Domshlak: “Introducing Variable Importance Tradeoffs into CP-Nets”, UAI’02 Domshlak, Rossi, Venable & Walsh: “Reasoning with Soft Constraints and Conditional Preferences”, IJCAI’03 Brafman & Dimopoulos: “A New Look at the Semantics and Optimization Methods for CP-Nets”, IJCAI’03

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Summary (T)CP-nets represent an intuitive and rich class of preference statements in a structured manner (T)CP-nets support an efficient constrained optimization process Much theoretical progress in recent years Much more to do

Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak Any questions?