Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Sept. 30, 2003CP’2003 CP-Nets Tutorial Brafman & Domshlak CP’2003 Tutorial: Preference Representation and Constrained Optimization with CP-Nets Ronen I."— Presentation transcript:

1 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

2 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

3 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

4 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

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

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

7 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

8 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

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

10 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 …

11 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

12 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

13 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}

14 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

15 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

16 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.

17 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

18 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

19 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 }

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

21 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

22 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.

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

24 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.

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

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

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

28 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.

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

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

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

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

33 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

34 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.

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

36 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

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

38 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

39 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.

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

41 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.

42 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

43 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.

44 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.

45 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.

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

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

48 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.

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

50 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.

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

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

53 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

54 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 …

55 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.

56 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

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

58 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

59 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

60 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

61 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

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

63 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 

64 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  > .

65 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.

66 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 ).

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

68 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

69 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

70 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

71 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

72 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

73 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

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

75 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

76 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

77 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

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

79 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

80 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??

81 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

82 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!

83 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

84 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

85 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, 1997. 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.

86 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

87 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

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


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

Similar presentations


Ads by Google