Foundations of Preferences in Database Systems

Similar documents
Foundations of Preferences in Database Systems

The Preference SQL System An Overview

Universität Augsburg

A Preference-based Recommender System

Optimization of Preference Queries with Multiple Constraints

Semantic Optimization of Preference Queries

Optimization of Preference Queries with Multiple Constraints

Graph-based Algorithms for Pareto Preference Query Evaluation

Preference Queries over Sets

Preferences in Databases. Representation Composition

CP nets: representing and reasoning with preferences of multiple agents

Iterative Modification and Incremental Evaluation of Preference Queries

Eliciting Matters Controlling Skyline Sizes by Incremental Integration of User Preferences

Package rpref. August 4, 2014

CASE BASED REASONING A SHORT OVERVIEW

Multi-objective Query Processing for Database Systems

Relational Databases

[Ch 6] Set Theory. 1. Basic Concepts and Definitions. 400 lecture note #4. 1) Basics

Logical Foundations of Preference Queries

Information Granulation and Approximation in a Decision-theoretic Model of Rough Sets

On Skyline Queries and How to Choose from Pareto Sets

Read-Once Functions (Revisited) and the Readability Number of a Boolean Function. Martin Charles Golumbic

A Decision-Theoretic Rough Set Model

(Pre-)Algebras for Linguistics

Transactional Information Systems:

Computational Geometry

Lecture 1: Conjunctive Queries

Various aspects of user preference learning and recommender systems

Which Are My Preferred Items?

Transactions. Juliana Freire. Some slides adapted from L. Delcambre, R. Ramakrishnan, G. Lindstrom, J. Ullman and Silberschatz, Korth and Sudarshan

CS 377 Database Systems

Algebraic Properties of CSP Model Operators? Y.C. Law and J.H.M. Lee. The Chinese University of Hong Kong.

Lecture 6 Foundations of Data Flow Analysis

Modeling the Propagation of User Preferences

Lecture 6 Foundations of Data Flow Analysis

Query Evaluation on Probabilistic Databases

Evaluation of Conditional Preference Queries

Data Integration: Logic Query Languages

Foundations of Databases

DB Fundamentals Exam.

Top-N Query: Query Language, Distance Function and Processing Strategies

COUNTING AND PROBABILITY

Database Systems. Basics of the Relational Data Model

Perm Integrating Data Provenance Support in Database Systems

Graph theory. Po-Shen Loh. June We begin by collecting some basic facts which can be proved via bare-hands techniques.

One of the main selling points of a database engine is the ability to make declarative queries---like SQL---that specify what should be done while

Management of User Preferences in Data Intensive Applications

2.3 Algorithms Using Map-Reduce

Understandability and Semantic Interoperability of Diverse Rules Systems. Adrian Walker, Reengineering [1]

Introduction to Query Processing and Query Optimization Techniques. Copyright 2011 Ramez Elmasri and Shamkant Navathe

CSE 215: Foundations of Computer Science Recitation Exercises Set #9 Stony Brook University. Name: ID#: Section #: Score: / 4

Information Integration

THREE LECTURES ON BASIC TOPOLOGY. 1. Basic notions.

DATABASE TECHNOLOGY - 1MB025 (also 1DL029, 1DL300+1DL400)

Personalized Digital Item Adaptation in Service-Oriented Environments

Estimating the Quality of Databases

Ma/CS 6b Class 2: Matchings

Query Evaluation on Probabilistic Databases

CSE-6490B Final Exam

Foundations of Preference-based Queries

CS 6110 S14 Lecture 38 Abstract Interpretation 30 April 2014

2.1 Sets 2.2 Set Operations

Denotational Semantics. Domain Theory

Information Integration

3.1 Constructions with sets

Lecture 6: Faces, Facets

1. Lecture notes on bipartite matching

DRACULA. CSM Turner Connor Taylor, Trevor Worth June 18th, 2015

Database Theory VU , SS Introduction: Relational Query Languages. Reinhard Pichler

DC Area Business Objects Crystal User Group (DCABOCUG) Data Warehouse Architectures for Business Intelligence Reporting.

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18

Relational Model, Relational Algebra, and SQL

Carnegie Mellon Univ. Dept. of Computer Science Database Applications. General Overview - rel. model. Overview - detailed - SQL

Summary. Boolean Addition

High-Level Small-Step Operational Semantics for Software Transactions

Topological Data Analysis - I. Afra Zomorodian Department of Computer Science Dartmouth College

A Survey on Representation, Composition and Application of Preferences in Database Systems

Logic as a Query Language: from Frege to XML. Victor Vianu U.C. San Diego

Modeling multidimensional database

Intersection of sets *

Relational Model & Algebra. Announcements (Tue. Sep. 3) Relational data model. CompSci 316 Introduction to Database Systems

Students interpret the meaning of the point of intersection of two graphs and use analytic tools to find its coordinates.

8.NS.1 8.NS.2. 8.EE.7.a 8.EE.4 8.EE.5 8.EE.6

Access-Control Policies via Belnap logic: expressive composition and simple analysis

Negations in Refinement Type Systems

Point-Set Topology II

Chapter 3. Algorithms for Query Processing and Optimization

CREATING AN AD HOC QUERY

Intelligent flexible query answering Using Fuzzy Ontologies

Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Chapter 6 Outline. Unary Relational Operations: SELECT and

Mathematically Rigorous Software Design Review of mathematical prerequisites

Chapter 1. Preliminaries

Algorithms for Query Processing and Optimization. 0. Introduction to Query Processing (1)

Dominant Graph: An Efficient Indexing Structure to Answer Top-K Queries

Consistent Subtyping for All

Research Directions of OLAP Personalizaton

TOPICS. Integers Properties of addition and. Rational Numbers Need for rational numbers. Exponents or Powers Introduction to Exponents or

Information Systems. Relational Databases. Nikolaj Popov

WHY WE NEED AN XML STANDARD FOR REPRESENTING BUSINESS RULES. Introduction. Production rules. Christian de Sainte Marie ILOG

Informationslogistik Unit 4: The Relational Algebra

Transcription:

Foundations of Preferences in Database Systems Werner Kießling Institute of Computer Science University of Augsburg W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 1

Overview 1. Motivation 2. Preference Model 3. Preference Engineering 4. Preference Algebra 5. Preference Query Model 6. Related Work 7. Summary and Ongoing Work [For technical details: see the proceedings] W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 2

1. Motivation The importance of preferences: Preferences are ubiquitous in all our daily and business lives. Importance has been addressed by various scientific communities. For database and Internet communities: - Personalization of search engines and of Web services - Deficiencies: Empty result & flooding effect Choice of an appropriate preference model: Preferences are NOT hard constraints. Preferences are NOT necessarily numbers. Preferences are NOT necessarily total orders. [Video] W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 3

Motivation (cont d) An intuitive notion of preferences: Preferences are personalized wishes: I like A better than B There may exist incomparable items. Better than may be defined qualitatively or quantitatively. Preferences may be complex, covering multiple attributes. Preferences may come from different, even conflicting sources. W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 4

2. Preference Model Formal semantics of preferences: Given a set A of attribute names with a domain of values dom(a). A preference P is a strict partial order P = (A, <P) on dom(a). x <P y is interpreted as I like y better than x. Some familiar special cases: Chain preference (total order): for all x y: x <P y y <P x Anti-chain preference: <P = Dual preference P δ = (A, <P δ ): x <P y iff y <P x Subset preference P = (S, <P): S dom(a) W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 5

Preference Model (cont d) A choice of base preference constructors POS(A, POS-set) POS(transmission, {automatic}) NEG(A, NEG-set) NEG(make, {Ferrari}) POS/NEG(A, POS-set; NEG-set) POS/NEG(color, {yellow}; {gray}) POS/POS(A, POS1-set; POS2-set) POS/POS(category, {cabriolet}; {roadster}) EXP(A, E-graph) EXP(color, {(green, yellow), (green, red), (yellow, white)}) AROUND(A, z) AROUND(price, 40000) BETWEEN(A, [low, up]) BETWEEN(mileage, [20000, 30000]) LOWEST(A) LOWEST(fuel_consumption) HIGHEST(A) HIGHEST(horsepower) SCORE(A, f), f: dom(a) -> R x <P y iff f(x) < f(y) W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 6

Preference Model (cont d) A choice of complex preference constructors Given P1 = (A1, <P1) and P2 = (A2, <P2); A1 and A2 may overlap. Pareto preference P: P1 and P2 are equally important P = (A1 A2, <P1 P2) Prioritized preference P: P1 is more important than P2 P = (A1 A2, <P1&P2) Numerical preference P: Ranking-function F: R R -> R P = (A1 A2, <rank F (P1, P2)) W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 7

Preference Model (cont d) Inductive construction of preference terms Each base, subset or dual preference is a preference term. Given preference terms P1 and P2, P is a preference term iff - Pareto preference: P := P1 P2 - Prioritized preference: P := P1 & P2 - Numerical preference: P := rank F (P1, P2) - Intersection preference: P := P1 P2 - Disjoint union preference: P := P1 + P2 - Linear sum preference: P := P1 P2 Theorem: Each preference term defines a preference W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 8

3. Preference Engineering E-commerce scenario Julia and Leslie want to buy a used car from their car dealer Michael. Julia has a complex customer preference Q1: P1 := POS/POS(category, {cabriolet}; {roadster}) P2 := POS(transmission, {automatic}) P3 := AROUND(horsepower, 100) P4 := LOWEST(price) P5 := NEG(color, {gray}) Q1 = ({color, category, transmission, horsepower, price}, <Q1) := P5 & ((P1 P2 P3) & P4) W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 9

Preference Engineering (cont d) Michael has domain knowledge about cars: P6 := HIGHEST(year-of-construction) Michael has his own vendor preferences, of course: P7 := HIGHEST(commission) Michael is a fair play guy, performing this query expansion: Q2 = ({color, category, transmission, horsepower, price, year-of-construction, commission}, <Q2) := (Q1 & P6) & P7 = ((P5 & ((P1 P2 P3) & P4)) & P6) & P7 W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 10

Preference Engineering (cont d) Now Leslie enters the scene. She has a different color taste: P8 := POS/NEG(color, {blue}; {gray, red}) Julia still insists on her color preference P5. Leslie convinces Julia that money should matter as much as color. Q1 adapted to this new situation reads as follows: Q1 * = ({color, category, transmission, horsepower, price}, <Q1 * ) := (P5 P8 P4) & (P1 P2 P3) Finally Michael expands Q2 * and the story might end that everybody is happy with the query result... W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 11

4. Preference Algebra Commutative and associative laws for preference terms More basic laws for preference terms Discrimination theorem for P1 & P2 ( more important than ) P1 & P2 P1 + (A1 «& P2) P1 & P2 P1 if P1 = (A, <P1) and P2 = (A, <P2) Non-discrimination theorem for P1 P2 ( equally important ) P1 P2 (P1 & P2) (P2 & P1) P1 P2 P1 P2 if P1 = (A, <P1) and P2 = (A, <P2) W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 12

5. Preference Query Model Preferences and database query languages The Best-Matches-Only (BMO) query model: Preferences are soft selection conditions (not every wish can become true). Perfect choices are the maximal elements of a given preference P. BMO query result: Retrieve perfect choices, if present in the database. Otherwise deliver best-matching alternatives, but nothing worse. Preference query: (declarative semantics) Given P = (A, <P) and a relation R, R[A] dom(a). Consider P R = (R[A], <P): s[p](r) := {t R t[a] max(p R )} s[p groupby A](R) := s[a & P](R) W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 13

Preference Query Model (cont d) Properties of BMO Non-monotonicity of BMO queries: Being better than is not a property of a single value. BMO query results adapt to the quality of data in the database. Adaptive AND/OR-like filter effect of BMO queries: Nuisances from the empty result are defeated: Implicit query relaxation Nuisances from the flooding effect are defeated: On-the-fly filtering of worse results Tedious parametric search and boolean expert search are obsolete. W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 14

Preference Query Model (cont d) Decomposition laws Decomposition of prioritized queries: s[p1 & P2](R) = s[p1](r) s[p2 groupby A1](R) s[p1 & P2](R) = s[p2](s[p1](r)), if P1 is a chain [ cascade of preferences ] Decomposition of Pareto queries: s[p1 P2](R) = (s[p1](r) s[p2 groupby A1](R)) (s[p2](r) s[p1 groupby A2](R)) YY(P1 & P2, P2 & P1) R W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 15

6. Related Work Original idea for preferences in deductive database systems: Datalog_S (Kießling, Güntzer; 1994) Subsumption lattices (Köstler, Kießling, Thöne, Güntzer; 1995) Preference SQL: (Kießling, Köstler; 1997) Extension of Standard SQL by a preferring-clause Product release by spin-off Database Preference Software GmbH (1999) Preference XPATH: (Kießling, Hafenrichter, Fischer, Holland; 2001) Implementation of proposed preference model for XML databases. W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 16

Related Work (cont d) Sample Preference SQL query: [See my talk on Preference SQL, Session Industry 6] SELECT * FROM used_cars WHERE make = 'Opel' PREFERRING (category = 'cabriolet' ELSE category <> 'roadster') AND price AROUND 40000 AND HIGHEST(power) AND mileage BETWEEN 20000, 30000; Sample Preference XPATH query: /CARS/CAR #[ (@fuel_economy) highest and (@mileage) lowest ]# prior to (@color) in ("black", "white") and (@price) around 10000 W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 17

Related Work (cont d) The SKYLINE operator: (Borzsonyi, Kossmann, Stocker; 2001) Restricted form of Pareto queries P = P 1 P 2 P n, each P i must be a LOWEST or HIGHEST preference (hence a chain). The ranked query model ( top-k ): SQL/MM multi-feature queries, SQL text extenders / cartridges XML full-text queries (Theobald, Weikum; 2000) P = rank F (SCORE(A 1, f 1 ),, SCORE(A n, f n )) The framework of Chomicki: (2002) Preferences as strict partial orders; & preference constructor; winnow operator W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 18

7. Summary and Ongoing Work Foundations of preferences in database systems: Foundation matters. This framework unifies and extends existing approaches. Various implementations exist. (Performance was NOT the focus here.) Highlights: Preferences as strict partial orders enable an intuitive semantics, covering qualitative as well as numerical methods. An extensible repertoire of powerful preference constructors serves a wide spectrum of database applications. A systematic approach towards preference engineering is enabled. Preferences as soft constraints and the BMO query model. Preference algebra and decomposition laws. W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 19

Summary and Ongoing Work (cont d) It s a Preference World Preference research at the Univ. of Augsburg: Automation of B2B sales processes: P-Bargainer, P-Agent Preference J2EE application server: P-Services Preference engineering: P-News Preference maintenance: P-Miner, P-Repository Preference query languages: Preference XPATH Preference performance: P-Optimizer, SR-Combine Funding: DFG, FORSIP (www.forsip.de) [Bavarian Research Cooperation for Situated, Individualized and Personalized Man-Machine Interaction] W. Kießling, 28th Intern. Conf. on Very Large Databases (VLDB 2002), Hong Kong, 21.08.02 20