A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Formalismo Lógico Modelagem de Preferências AULA 9 PPG107 - 2012 SISTEMAS DE BANCO DE DADOS – Pós-graduação em CC - UFU.

Apresentações semelhantes


Apresentação em tema: "Formalismo Lógico Modelagem de Preferências AULA 9 PPG107 - 2012 SISTEMAS DE BANCO DE DADOS – Pós-graduação em CC - UFU."— Transcrição da apresentação:

1 Formalismo Lógico Modelagem de Preferências AULA 9 PPG SISTEMAS DE BANCO DE DADOS – Pós-graduação em CC - UFU

2 Fórmulas de Preferência Condicional CP-NETS TCP-NETS Fórmulas de Preferência Condicional

3 Conditional Preference Rules (cp-rules) φ : Y 1 = a 1 ˄ … ˄ Y n = a n X = x > X = x Conditions over Attributes Y 1,…,Y n Preference over Attribute X [ Z ] Conditional Preference Theory = a finite set of cp-rules R (Y 1,…,Y n,….,X,…) Atributos que são excluídos da exigência Ceteris Paribus

4 Exemplo G = thriller > G = drama [ Actor ]φ : D = Hitchcock D = Hitchcock > D = D.Lynch [ Actor ] ρ : Year = 1960

5 Toda CP-Net é uma teoria de preferência condicional G D c > d t > c G= c > G = d [ ø ] G = t > G = c [ ø ] G = d D=b > D=w [ ø ] G = d D=w > D=h [ ø ] G = t D=h > D=w [ ø ] G = t D=w > D=b [ ø ] G = c D=w > D=b [ ø ] G = c D=b > D=h [ ø ] d: b > w d: w > h t: h > w t: w > b c: w > b c: b > h

6 Ordem de Preferência induzida por uma Teoria de Pref. Condicional Usa a semântica ceteris paribus para os atributos que não estão em Z U Y e que são diferentes de X Exemplo: BD(Category, Director, Year, Actor) Dir ector = F. Capra >Director = Hitchcock [Year] φ : Category = comedy O1 = (Cat=comedy, Dir = F.Capra, Year = 1960, Actor = J.Stewart) O2 = (Cat=comedy, Dir = Hitchcock,Year = 1954, Actor = J.Stewart) O1 > φ O2 Ceteris paribus Cada cp-rule φ induz uma ordem de preferência > φ

7 Ordem de Preferência Uma cp-theoria Ψ induz uma ordem de preferência > Ψ Para cada fórmula φ de Ψ considera-se a ordem induzida > φ Considera-se a união de todas estas ordens U>φ, para φ em Ψ A ordem de preferência induzida pela teoria = fecho transitivo de U>φ, para φ em Ψ > Ψ = fecho transitivo de U>φ, para φ em Ψ

8 Ordem de Preferência Teoria Ψ = { φ, ρ } Considera-se todos os pares de tuplas que pode- se ordenar diretamente utilizando a regra φ Considera-se todos os pares de tuplas que pode- se ordenar diretamente utilizando a regra ρ Considera-se a união destes dois conjuntos de pares de tuplas. Inclui-se neste conjunto todos os pares de tuplas obtidos por transitividade.

9 Ordem de Preferência abc R(A,B,C) Tuplas ordenadas diretamente pela regra φ Tuplas ordenadas diretamente pela regra ρ Primeira iteração da transitividade Segunda iteração da transitividade

10 Exemplo Cat. = thriller > Cat. = drama [ Actor ] O 1 = (Cat=thriller, Dir = Hitchcock, Year = 1960, Actor = J.Stewart) O 2 = (Cat=drama, Dir = Hitchcock, Year = 1960, Actor = P. Newman) O 3 = (Cat=drama, Dir = D.Lynch, Year = 1960, Actor = A. Hopkins) O 1 > φ O 2 O 2 > ρ O 3 Dir. = Hitchcock > Dir. = D.Lynch [ Actor ] ρ : Year = 1960 O1 > Ψ O3 Teoria Ψ = { φ, ρ } O 2 = (Cat=drama, Dir = Hitchcock, Year = 1960, Actor = P. Newman) φ : Dir = Hitchcock

11 Grafo de Dependência Grafo associado a uma teoria Ψ Vértices: atributos que aparecem em Ψ Arcos: a) (Y,X) onde Y aparece do lado esquerdo da regra e X do lado direito da regra na parte da ordenação. (Y,X) onde Y aparece do lado direito da regra na parte de ordenação e X aparece dentro de colchetes do lado direito da regra

12 Exemplo Cat. = thriller > Cat. = drama [Y] φ 1 : Dir = Lynch Dir. = Hitchcock > Dir. = D.Lynch [C] φ 2 : Year = 1960 Y D C Dir. = D.Lynch > Dir. = Hitchcock φ 3 : Year = 1954 Dir = D.Lynch > Dir = Hitchcock [Y]φ 4 : Cat = drama

13 Ordens Locais ordem sobre o domínio dos atributos: Sejam A1,…,An = atributos que aparecem na parte esquerda das regras Sejam B1, …, Bk = atributos que aparecem na parte direita das regras (parte da ordenação) Cada tupla t sobre os atributos (A1,…,An) determina uma ordem local sobre o domínio do atributo Bj, ( 1 j k )

14 Consistência Local Uma teoria é localmente consistente se as ordens locais produzidas em cada atributo do lado direito são irreflexivas.

15 Teoria Consistente A cp-theoria Ψ é consistente se > Ψ é irreflexiva Não se pode deduzir o 1 > Ψ o 2 e o 2 > Ψ o 1 Teste de Consistência (Wilson 2004) Ψ é consistente se seu grafo de dependência é acíclio e Ψ é localmente consistente

16 Exemplo Cat = thriller > Cat = drama [Y] φ 1 : Dir = Lynch Dir = Hitchcock > Dir = D.Lynch [C] φ 2 : Year = 1960 Y D C Attributes = Y, D, C Dom(Y) = {1960, 1954} Dom(D) = {Hitch, Lynch} Dom(C) = {t, d} Dir = D.Lynch > Dir = Hitchcock φ 3 : Year = 1954 Database: O1 = (1960, Lynch, thriller) O2 = (1960, Hitch, drama) O3 = (1954, Lynch, drama) O1: hitch>lynch dom(D) thriller>drama dom(C) O2: hitch >lynch dom(D) O3: lynch > hitch dom(D) Dir = D.Lynch > Dir = Hitchcock [Y]φ 4 : G = drama O2 > O1 > O3 > O2 Ordem local sobre dom(D) não é irreflexiva !

17 Tuplas Preferidas Lista os atributos (X 1,…,X n ) na ordem compatível com o grafo de dependência graph(Ψ) Pega o melhor valor x 1 de dom(X 1 ) Pega o melhor valor x 2 de dom(X 2 ) conditionado a x 1 … Observação: como a ordem não é total, pode haver diversas tuplas preferidas

18 Exemplo φ 1 : Dir = Hitchcock Dir. = Hitchcock > Dir. = D.Lynch φ 2 : Year = 1960 Dir. = D.Lynch > Dir. = Hitchcock φ 3 : Year = 1954 Cat. = thriller > Cat. = drama Y D C Cat = drama > Cat = comedy φ 3 : Year = 1954 Y > D > C Melhor valor para Y : qualquer um Y = 1960 Best D = Hitch D = Hitch Best C = thriller O = (1960, Hitch, thriller) é uma tupla preferida. Y = 1954 Best D = Lynch D = Lynch Best C = drama O = (1954, Lynch, drama) é outra tupla preferida

19 Exercício Considere a relação R(A,B,C,D) e as seguintes regras de preferências: A = a B=b1 > B = b2 [D] B = b1 C=c1 > C=c2 [D] A = a C = c2 > C=c3 [D] C = c1 D = d1 > D=d2 [A] a) Esta cp-teoria é consistente ? a) Dê o grafo BTG associado a esta cp-teoria, sabendo que dom(A) = {a,a1}, dom(B) = {b1,b2}, dom(C) = {c1,c2,c3}, dom(D) = {d1,d2}

20 CPref-SQL: A query language supporting conditional preferences Fabiola Pereira Sandra de Amo – Marcos Roberto Ribeiro Federal University of Uberlandia- Brazil

21 Motivação Movies(Title, Director, Genre, Year) My preferences: (1) For Woody Allens films: I prefer comedies better than thrillers. (2) For Robert Altmans films: I prefer thrillers to comedies. (3) For comedies: I prefer the more recent ones, produced after Query: Give the titles of the films which most fulfill my wishes among those stored in the database, produced after 1975.

22 CPref-SQL Query CREATE PREFERENCES MyPrefs AS If D = wa then (G=c) > (G=t) AND If D = ra then (G=t) > (G=c) AND If G = c then (Y 1990) > (Y < 1990) SELECT MOVIES.Titles FROM MOVIES WHERE Year > 1975 ACCORDING TO PREFERENCES MyPrefs Hard Constraint Soft Constraint A Conditional Preference Theory (cp-theory) = Set of Preference Rules

23 CPref-SQL SQL + SelectBest (R) F = cp-teoria sobre a rela ç ão R Semântica( Best Match Only semantics) SelectBest (R) = { t ε R | não existe t ε R, t > t } F

24 Bloco básico de CPref-SQL SELECT FROM WHERE ACCORDING TO PREFERENCES GROUP BY ORDER BY

25 Plano de Execução básico R1R1 RnRn … WHERE (hard constraints) ----: OPERADOR DE SELEÇÃO SelectBest (PREFERENCES) ---: NOVO OPERADOR BEST SELECT : OPERADOR DE PROJEÇÃO FROM ----: OPERADOR DE JUNÇÃO

26 CPrefSQL não é mais expressiva que SQL !! CPrefSQL pode ser convertida em SQL CREATE OR REPLACE VIEW Rules (title,genre,years,director,actor,tit,gen,yea,dir,act) AS (SELECT * FROM movies M, movies M1 WHERE M.genre = drama' AND M1.genre = musical' AND M.director = M1.director AND M.years = M1.years) UNION (SELECT * FROM movies M, movies M1 WHERE M.years = 90 AND M1.years = 80 and M.genre = M1.genre) UNION (SELECT * FROM movies M, movies M1 WHERE M.years = 80 and M1.years = 80 and M.genre = drama and M1.genre = comedy and M.director = M1.director and M.actor = M1.actor); CREATE PREFERENCES mypref FROM movies AS genre = drama > genre = musical [1,5] AND years = 90 > years = 80 [1,4,5] AND IF years = 80 THEN genre = drama > genre = comedy [1]

27 WITH RECURSIVE Recursion ( tit, gen, yea, dir, act, title, genre, years, director, actor ) AS ( ( SELECT * FROM Rules ) UNION ( SELECT M.title, M.genre, M.years, M.director, M.actor, R.title, R.genre, R.years, R.director, R.actor FROM Rules M, Recursion R WHERE M.tit = R.tit AND M.gen = R.gen AND M.yea = R.yea M.dir = R.dir AND M.act = R.act ) ) SELECT * FROM movies WHERE genre <> romance ACCORDING TO PREFERENCES mypref SELECT * FROM movies WHERE genre <> romance EXCEPT SELECT R.title, R.genre, R.years, R.director, R.actor FROM Recursion R; CPrefSQL não é mais expressiva que SQL !! CPrefSQL pode ser convertida em SQL


Carregar ppt "Formalismo Lógico Modelagem de Preferências AULA 9 PPG107 - 2012 SISTEMAS DE BANCO DE DADOS – Pós-graduação em CC - UFU."

Apresentações semelhantes


Anúncios Google