Resolving Under Constrained and Over Constrained Systems of
- Slides: 35
Resolving Under Constrained and Over Constrained Systems of Conjunctive Constraints for Service Requests Muhammed J. Al-Muhammed David W. Embley Brigham Young University Supported by:
Outline of Presentation © The larger project § Satisfying free-form service requests § Resolving encountered difficulties © Focus on resolution for: § Under constrained systems of constraints § Over constrained systems of constraints © System demo © Concluding remarks 2
Challenges for Web Services © Help users find and use services © Reduce requirements for service and resolution specification I want to see a dermatologist between the 12 th and 15 th, at 1: 00 PM or after. The dermatologist should be within 15 miles from my home and must accept my IHC insurance. 3
A Conceptual-Modeling Solution © Domain Ontology § Has a single object set of interest (e. g. Appointment) § Establishes requirements for insertion of a single object into the object set of interest (e. g. requirements for making an appointment) § Has extensional recognizers (i. e. can match request to requirements) © Process § § Ontology Recognizes constraints Obtains information (from DB and from user) Satisfies constraints Resolves issues (if necessary) 4
Domain Ontology functional mandatory object set of interest optional 5
Domain Ontology: Data Frames Time … textual representation: ([2 -9]|1[012]? )s*: s*([0 -5]d)s*[Aa. Pp]s* . ? s* [Mm]s* . ? ) Time. At. Or. After(t 1: Time, t 2: Time) returns (Boolean) contextual keywords/phrases: (ats+)? Times+ors+after|… … Address … Distance. Between. Addresses(a 1: Address, a 2: Address) returns (Distance) … Distance … textual representation: ((d+(. d+)? )|(. d+)) … Distance. Less. Than. Or. Equal(d 1: Distance, d 2: Distance) returns (Boolean) contextual keywords/phrases: (within|nots+mores+than |<s*=|…)s+Distance … 6
Example Appointment context keywords/phrase: “appointment |want to see a |…” Time textual representation: “([2 -9]|1[012]? )s*: s*([0 -5]d)s*[Aa. Pp]s* . ? s* [Mm]s* . ? )” Time. At. Or. After(t 1: Time, t 2: Time) returns (Boolean) contextual keywords/phrases: (ats+)? Times+ors+after|… Date. Between(x 1: Date, x 2: Date, x 3: Date) returns(Boolean) contextual keywords/phrases: betweens+thes+Dates+ands+Date …. Distance textual representation: ((d+(. d+)? )|(. d+)) context keywords/phrases: miles? | kilometers? | … Distance. Less. Than. Or. Equal(d 1: Distance, d 2: Distance) returns (Boolean) contextual keywords/phrases: (within|…)s+Distance|… I want to see a dermatologist between the 12 th and 15 th, at 1: 00 PM or after. The dermatologist should be within 15 miles from my home and must accept my IHC insurance. 7
Appointment context keywords/phrase: “appointment |want to see a |…” Time textual representation: “([2 -9]|1[012]? )s*: s*([0 -5]d)s*[Aa. Pp]s* . ? s* [Mm]s* . ? )” Time. At. Or. After(t 1: Time, t 2: Time) returns (Boolean) contextual keywords/phrases: (ats+)? Times+ors+after|… Date. Between(x 1: Date, x 2: Date, x 3: Date) returns(Boolean) contextual keywords/phrases: betweens+thes+Dates+ands+Date …. Distance textual representation: ((d+(. d+)? )|(. d+)) context keywords/phrases: miles? | kilometers? | … Distance. Less. Than. Or. Equal(d 1: Distance, d 2: Distance) returns (Boolean) contextual keywords/phrases: (within|…)s+Distance|… Part of this is about finding the right ontology. I want to see a dermatologist between the 12 th and 15 th, at 1: 00 PM or after. The dermatologist should be within 15 miles from my home and must accept my IHC insurance. 8
Marked-Up Domain Ontology Distance. Less. Than. Or. Equal(d 1: Distance, “ 15”) Time. At. Or. After(t 1: Time, “ 1: 00 PM”) Date. Between(x 1: Date, “ 12 th”, “ 15 th”) Insurance. Equal(i 1: Insurance, “IHC”) 9
Relevant Object and Relationship Sets Identification 10
Relevant Object & Relationship Sets Dermatologist(y) is at Address(z) Appointment(x) is with Dermatologist(y) 11
Relevant Operations Appointment(x 0) 1 is: Time, Time. At. Or. After(t at Time(t “ 1: 00 Time. At. Or. After(t 1, “ 1: 00 PM”) 1) /PM”) Date. Between(x Appointment(x 01): is Date, at Date(x “ 12 th”, “ 15 th”) Date. Between(x 1, “ 12 th”, “ 15 th”) 1) / Insurance. Equal(i Dermatologist(x 11): accepts Insurance, Insurance(i “IHC”) 1) / Insurance. Equal(i 1, “IHC”) Distance. Less. Than. Or. Equal(d Distance. Less. Than. Or. Equal(Distance. Between. Addresses(a Dermatologist(x “ 15”)2) is at Address(a 1: Distance, 1) / Person(x 1, a 2), “ 15”) 2) / Distance. Less. Than. Or. Equal(Distance. Between. Addresses(a 1, a 2), “ 15”) … Address … Distance. Between. Addresses(a 1: Address, a 2: Address) returns (Distance) … 12
Generated Constraints Appointment(x 0) is with Dermatologist(x 1) / Appointment(x 0) is for Person(x 2) / Dermatologist(x 1) has Name(x 3) / Person(x 2) has Name(x 4) / Appointment(x 0) is on Date(x 5) / Date. Between(x 5, “ 12 th”, “ 15 th”) / Appointment(x 0) is at Time(x 6) / Time. At. Or. After(x 6, “ 1: 00 PM) / Dermatologist(x 1) is at Address(x 7) / Person(x 2) is at Address(x 8) / Distance. Less. Than. Or. Equal(Distance. Between. Addresses(x 7, x 8), “ 15”) / Dermatologist(x 1) accepts Insurance(x 9) / Insurance. Equal(x 9, “IHC”) 13
Process Ontology © Create service-request view © Generate constraints © Obtain information § From system § From user © Satisfy constraints © Resolve difficulties © Finalize service request 14
Information from System 15
Generated Database Query {<x 0, x 1, x 3, x 5, x 6, x 7, x 9> | } Appointment(x 0) is with Dermatologist(x 1) / Dermatologist(x 1) has Name(x 3) / Appointment(x 0) is on Date(x 5) / Date. Between(x 5, “ 12 th”, “ 15 th”) / Appointment(x 0) is at Time(x 6) / Time. At. Or. After(x 6, “ 1: 00 PM) / Dermatologist(x 1) is at Address(x 7) / Dermatologist(x 1) accepts Insurance(x 9) / Insurance. Equal(x 9, “IHC”) 16
Information from User © Some variables cannot be instantiated from the database. § Person(x 2) § Name(x 4) § Address(x 8) © Non-lexical values can be instantiated without particular values. © The system asks for values for lexical values. § Name (of Person) for Appointment? § Address (of Person) for Appointment? 17
Constraint Satisfaction Over the Instantiated Values © Exactly one solution: return it as the result © A few solutions: return all and ask the user to select one © Too many solutions (under constrained): resolve © No solutions (over constrained): resolve 18
Under Constrained “I want a dodge, a 2000 or newer. The Mileage should be less than 80, 000 and the price should not exceed $15, 000” Solution Make Model Price Year Mileage S 1 Dodge Stratus 9, 451. 00 2004 35, 808 S 2 Dodge Stratus 14, 995. 00 2005 1, 694 S 3 Dodge Stratus 14, 999. 00 2005 27, 543 S 4 Dodge Stratus 2, 555. 00 1997 115, 424 S 5 Dodge Stratus 6, 900. 00 2001 70, 000 Dodge Stratus 9, 975. 00 2003 34, 060 … … S 168 www. cars. com, November 2005 19
Over Constrained “I want a dodge, a 2000 or newer. The Mileage should be less than 80, 000 and the price should not exceed $4, 000. ” Sorry No car matches your request. www. cars. com, November 2005 20
Key Observations © Some (near) solutions are better than others. © People specify constraints on some concepts in a domain more often than on other concepts. 21
Fundamental Concepts: Reward, Penalty, and Expectation ©A reward is zero or a positive real number given to a solution for satisfying a constraint. © A penalty is a negative real number given to a near solution for violating a constraint. © An expectation for a concept is the probability that a constraint for the concept will be specified. 22
Fundamental Concepts: Pareto Optimality © Based on dominance relations § The reward for S 1 is as high as the reward for S 2 § For at least one reward S 1 has a higher reward © Dominated solutions are not Pareto optimal 23
Too Many Solutions: Reward-Based Ordering © Calculate © Order rewards and combine them solutions, highest combined reward first © Select the top-m Pareto optimal solutions 24
Example “I want a dodge a 2000 or newer. The mileage should be less than 80, 000 and the price should not be more than $15, 000. ” S 1 better The same S 1 better Solution Make Model Price Year Mileage -------------------------------S 1 Dodge Stratus 13, 999 2005 15, 775 S 2 Dodge Stratus 11, 998 2004 23, 404 S 3 Dodge Stratus 14, 2005 16, 008 S 4 Dodge Stratus 14, 557 2005 16, 954 S 5 Dodge Stratus 10, 590 2003 38, 608 25
Too Many Solutions: Expectation-Based Constraint Elicitation © Associate expectations with domain concepts. © Order the concepts in a domain based on their expectations. § e. g. make > price > model > … © Elicit additional constraints over unconstrained concepts. § e. g. If no preferred make provided, ask for make; if no price, ask for price; … 26
No Solution: Penalty-Based Ordering © Calculate penalties and combine them. © Order close solutions, lowest combined penalty first. © Select the top-m Pareto optimal near solutions. © Ask if constraints can be relaxed, but only ask about a few (so as not to be bothersome). 27
Can this constraint “ 1: 00 PM or after” be relaxed to “ 12: 40 PM”? Example Can this constraint “the 20 th” be relaxed to “the 19 th”? “I want to see a dermatologist on the 20 th, 1: 00 PM or after. The dermatologist should be within 5 miles from my home and must accept my IHC insurance. ” Near Solution Insurance Distance Time Date S 1 IHC 16 1: 00 PM the 19 th S 2 IHC 18 1: 10 PM the 19 th S 3 IHC 4 12: 40 PM the 19 th S 4 IHC 6 12: 50 PM the 19 th S 5 IHC 20 3: 00 PM the 19 th Near Solution Insurance=“IHC” Expectation: 0. 4 Distance 5 Expectation: 0. 3 Time “ 1: 00 PM” Expectation: 0. 8 Date=“the 20 th” Expectation: 0. 9 exp plty S 1 0. 000 0. 076 0. 167 0. 250 0. 248 S 2 0. 000 0. 090 0. 160 0. 252 S 3 0. 000 0. 007 0. 014 0. 250 0. 236 S 4 0. 000 0. 007 0. 250 0. 233 S 5 0. 000 0. 102 0. 083 0. 250 0. 256 28
Demo 29
Demo 30
Demo 31
Performance Analysis (Correspondence to Human Expectations) © Tested appointment and car-purchase domains © 16 human subjects § The best-5 near solutions from 19 appointments § The best-5 solutions from 32 cars © Compared human selection with system selection 32
Performance Analysis (appointment domain) 33
Performance Analysis (car-purchase domain) 34
Concluding Remarks © Simplification of everyday service request specification § Free-form service request § Ontology-based recognition of constraints § Constraint satisfaction © Resolution for under and over constrained requests § § © Ordered expectations Ordered penalty/reward Pareto optimality Inter-observer agreement test: “Substantial Agreement” Status of prototype implementation www. deg. byu. edu 35
- Andrea goldsmith wireless communications
- Constrained nodes and constrained networks
- Scada transport over llns with map-t
- Chapter 9 resolving conflicts and preventing violence
- The dispersive power of grating increases with increasing
- Chapter 9 resolving conflicts and preventing violence
- Recognizing and resolving abo discrepancies
- 56 spelling
- Constrained and unconstrained optimization in economics
- Resolving power equation
- Telescope equations
- Resolving power of the human eye
- Chapter 9 lesson 2 resolving conflicts
- 5 steps in resolving ethical dilemmas
- Ethical dilemma situation
- Cognitive consumer
- The favored technique for resolving conflict is
- Resolving power
- Transmission grating
- Dignity: the essential role it plays in resolving conflict
- Resolving conflict meaning
- Resolving power
- Proverb synonym crossword
- Tucker turtle pdf
- Resolving conflict creatively program
- Resolving power of grating
- Dispersive power of grating
- Resolving conflict in the local church
- Chapter 9 lesson 2 resolving conflicts answer key
- Siach reciting the word over and over
- Explain how to handing over and taking over the watch
- Svensk stormaktstid karta
- Right evaluation is the
- Over/under/otherwise evaluation is
- دکتر جین the cool bear hunt
- What is related constrained diversification