Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

ROZMYTE BAZY DANYCH. DEFINICJE ZBIORY ROZMYTE Definicja. Niech X oznacza obszar odniesienia (uniwersum). Zbiorem rozmytym A elementów obszaru X o funkcji.

Podobne prezentacje


Prezentacja na temat: "ROZMYTE BAZY DANYCH. DEFINICJE ZBIORY ROZMYTE Definicja. Niech X oznacza obszar odniesienia (uniwersum). Zbiorem rozmytym A elementów obszaru X o funkcji."— Zapis prezentacji:

1 ROZMYTE BAZY DANYCH

2 DEFINICJE

3 ZBIORY ROZMYTE Definicja. Niech X oznacza obszar odniesienia (uniwersum). Zbiorem rozmytym A elementów obszaru X o funkcji przynależności A (x) nazywamy zbiór uporządkowanych par: A = {, x X, A (x):X [0,1]}

4 ZBIORY ROZMYTE Elementy należące do A w stopniu niezerowym tworzą nośnik zbioru : supp (A) = {x: A (x) > 0} Elementy należące w pełni do A tworzą rdzeń zbioru : Ker (A) = {x: A (x) = 1} Elementy należące do A w stopniu większym lub równym pewnej wartości [0,1] tworzą - przekrój zbioru: A = {x: A (x) > }

5 ZBIORY ROZMYTE Jeśli x X A (x) = 0, to A jest zbiorem pustym. Maksymalną wartość funkcji przynależności nazywamy wysokością zbioru: hgt (A) = sup x X A (x) Jeśli hgt (A) = 1, to zbiór nazywamy normalnym. Sumę wartości funkcji przynależności nazywamy licznością zbioru: card(A) = x X A (x)

6 Suma: A B (x) = max( A (x), B (x)) Iloczyn: A B (x) = min( A (x), B (x)) Dopełnienie: -A (x) = 1 – A (x) Różnica: A – B (x) = min( A (x), 1 – B (x)) Operacje max i min są często oznaczane przez i. OPERACJE MNOGOŚCIOWE

7 ZBIORY ROZMYTE Zbiory rozmyte A i B są równe, jeśli x X A (x) = B (x) Zbiór A zawiera się w B, jeśli x X A (x) B (x)

8 ZBIORY ROZMYTE Równość zbiorów rozmytych A i B można ocenić za pomocą miary bliskości (A, B). Jedną z miar bliskości jest wysokość iloczynu, czyli: (A, B) = sup x min ( A (x), B (x)).

9 0 1 μ x Liczba rozmyta (7.8, 8.2, 0.2, 0.2)

10 Liczby rozmyte (7.7, 7.7, 0.2, 0.2) i (7.9, 7.9, 0.2, 0.2) 0 1 μ x 0.5

11 W logice dwuwartościowej operator implikacji I (implikator) jest odwzorowaniem: {0, 1} {0, 1} {0, 1}. Parze liczb (a, b) należących do {0, 1} odpowiada wartość I (a, b), taka że: I (a, b) = 1, dla a = 0 oraz I (a, b) = 0, dla a =1 i b = 0. Zaproponowano różne wersje rozszerzenia implikacji do postaci [0, 1] [0, 1] [0, 1]. Jednym z nich jest implikator Gödela. IMPLIKATORY

12 Jego definicję można przedstawić formalnie w sposób podobny do zapisu definicji implikacji klasycznej, z tą różnicą, że obie liczby a i b mogą przyjmować dowolne wartości z przedziału [0, 1]: I G (a, b) = 1 dla a b, I G (a, b) = b dla a > b Implikator Gödela spełnia warunki wynikające z implikacji klasycznej, czyli: I G (0, 0) = 1, I G (0, 1) = 1, I G (1, 1) = 1 oraz I G (1, 0) = 0. IMPLIKATORY

13 Ponadto I G ma następujące własności: a c I G (a, b) I G (c, b) – implikator I G (a, b) jest funkcją nierosnącą a, b c I G (a, b) I G (a, d) – implikator I G (a, b) jest funkcją niemalejącą b, I G (1, b) = b, I G (0, b) = 1, I G (a, 1) = 1, I G (a, I G (b, c)) = I G (b, I G (a, c)), I G (a, b) min (a, b) IMPLIKATORY

14 Implikatory Inne implikatory: Łukasiewicz I = min(1, 1-a+b) Kleene-Dienes I=max(1-a, b) Mamdani I=min(a,b) Zadeha I = max(1-a, min(a,b))

15 Implikatory Rozmyty implikator można wykorzystać przy określaniu stopnia zawierania się zbiorów rozmytych, (A, B), czyli określeniu w jakim stopniu jest prawdziwe twierdzenie: jeśli x A, to x B: (A, B) = inf x I ( A (x), B (x)) Zbiory A i B są równe, jeśli A B i B A. Mamy więc: (A, B) = min (inf x I ( A (x), B (x)), inf x I ( B (x), A (x))) Przy zastosowaniu implikatora Łukasiewicza otrzymujemy: (A, B) = inf x (1 – A (x) – B (x) ).

16 MODEL ZWIĄZKÓW ENCJI

17 M = {E, R, A} E – zbiór typów encji E R – zbiór typów związków R A = { A E, A R } – zbiór atrybutów encji A E i związków A R

18 POZIOMY ROZMYTOŚCI Model związków encji składa się z trzech poziomów. Na każdym z nich może występować konieczność zastosowania zbiorów rozmytych. I – Zbiory E, R, A II – Zbiory wystąpień encji i związków III – Atrybuty

19 POZIOM I i II E = { E (E)/E} R = { R (R)/R} A E = { AE (A)/A} A R = { AR (A)/A} Przyklad E = {1/Pracownik, 1/Projekt, 0.9/Klient} E = { E (e)/e}, R = { R (r)/r}, e – encja, r - związek

20 ZWIĄKI ISA Jeżeli e E 2 e E 1, to E 2 jest podzbiorem E 1, czyli E 2 E 1 E 2 (e) E 1 (e) Jeżeli E 1, E 2,..., E n są podzbiorami E, to E 1 E 2... E n E max( E 1 (e), E 2 (e),..., E n (e) ) E (e)

21 ZWIĄZKI ISA Jeśli podzbiory E 1, E 2,..., E n są rozłączne, to supp(E 1 ) supp(E 2 )... supp(E n ) = Ø Przynależność częściowa e E (e) > max( E 1 (e), E 2 (e),..., E n (e) ) = 0 Przynależność całkowita e E (e) > max( E 1 (e), E 2 (e),..., E n (e) ) > 0

22 ZWIĄZKI ISA Niech A=X będzie warunkiem przynależności do zbioru niższego rzędu. Wtedy E1 (e) = E (e) Truth(A=X), gdzie Truth(A=X) – stopień spełnienia warunku A=X Ponadto E1 (e) = E (e) AE (A) Truth(A=X)

23 ZWIĄZKI ISA Dziedziczenie wielokrotne F E 1 E 2... E n F (e) min( E 1 (e), E 2 (e),..., E n (e) )

24 DZIEDZICZENIE Zbiór atrybutów zbioru encji E i składa się ze zbioru atrybutów A E dziedziczonych od zbioru nadrzędnego E i zbioru atrybutów własnych A O i : A Ei = A E A O i AE (A) AE i (A)

25 DZIEDZICZENIE ZWIĄZKÓW R: E F [0,1] e i dziedziczy związek między e i oraz f j Stopień przynależności R (i,j) Truth(p)

26 DZIEDZICZENIE ZWIĄZKÓW STUDENT, STUD_MAG, STUD_INZ STUDENT – PRZEDMIOT, Truth(TYP=MAG) = 0,8

27 ZWIĄZKI Definicja związku rozmytego: R={(u, v, ) u E, v F, } Uczestnictwo całkowite: e E e {u (u, v, ) R, > 0} Uczestnictwo częściowe e E e {u (u, v, ) R, > 0}

28 Rf1f1 f2f2...fmfm e1e1 r 11 r 12...r 1m e2e2 r 21 r 22...r 2m... enen r n1 r n2 r nm

29 R E F {f 1 }{f 2 }...{f m }{f 1, f 2 }...{f 1,..., f m } e1e1 r 11 r 12...r 1m r 1,m+1...r 1k e2e2 r 21 r 22...r 2m r 2, m+1...r 2k... enen r n1 r n2...r nm r n,m+1...r n,k

30 PODEJŚCIE PODSTAWOWE

31 TRZY PODEJŚCIA Podejście podstawowe: wartości atrybutów są precyzyjne, przynależność krotki do relacji jest liczbą z przedziału [0,1] Podejście oparte na teorii możliwości: wartości atrybutów są podane za pomocą rozkładów możliwości Podejście oparte na podobieństwie: dla dziedzin atrybutów definiuje się macierz podobieństwa, wartości atrybutów są podzbiorami swoich dziedzin

32 RELACJE ROZMYTE Definicja. Niech X i Y oznaczają obszary odniesienia (uniwersum). Relacją rozmytą R nazywamy zbiór rozmyty na iloczynie kartezjańskim X Y : R = {, x X, y Y, A (x,y): X Y [0,1]}

33 RELACJE ROZMYTE Klasyczna relacja jest podzbiorem iloczynu kartezjańskiego dziedzin jej atrybutów D 1 D 2 … D n. Przynależność krotek jest liczbą należącą do zbioru {0,1}. Relacja rozmyta jest zbiorem rozmytym na D 1 D 2 … D n. Każdej krotce r = (d 1, d 2,..., d n ), gdzie d i D i, przyporządkowano liczbę z przedziału [0, 1] określającą, w jakim stopniu należy ona do relacji lub, inaczej mówiąc, w jakim stopniu są przez nią spełnione warunki integralności. Zbiór {0,1} został zastąpiony przedziałem [0,1].

34 NumerNazwiskoBuddżetMiastoµ 1Kredyt Łódź1 2Finn50 000Warszawa0,8 3Polisa40 000Paryż0,4 4Makler30 000Rzym0,3 5Visa Rzym1 6Agent20 000Paryż0,2 RELACJE ROZMYTE DUŻE_PROJEKTY

35 RELACJE ROZMYTE Wartości funkcji przynależności mogą być zadane z góry lub wynikać z przeprowadzonych operacji. Relacja DUŻE_PROJEKTY mogła powstać w wyniku selekcji wykonanej na relacji PROJEKTY warunkiem rozmytym BUDŻET = DUŻY.

36 ALGEBRA RELACJI ROZMYTYCH

37 Definicje operacji algebraicznych na rozmytych relacjach są rozszerzeniem operacji klasycznych o sposób obliczania funkcji przynależności.

38 OPERACJE MNOGOŚCIOWE R, S – relacje, r, s, t - krotki Suma: R S (t) = max( R (t), S (t)) Iloczyn: R S (t) = min( R (t), S (t)) Różnica: R-S (t) = min( R (t), 1 – S (t)) Iloczyn kartezjański: R S (r, s) = min( R (r), S (s))

39 OPERACJE RELACYJNE Selekcja: F (R) (r) = min( R (r), F (r)), gdzie F (r) oznacza stopień spełnienia warunku selekcji F Projekcja: X (t) = sup r(X) = t(X) R (r). Złaczenie: R*S (t) = min( R (r), S (s))

40 NumerNazwiskoZarobkiWiekMiastoµ 1Arski Łódź1 2Barski Warszawa1 3Carski Paryż1 4Darski Rzym1 5Farski Praga1 OPERACJE RELACYJNE PRZYKŁAD PRACOWNICY

41 R (pracownicy mieszkający w Polsce) NumerNazwiskoZarobkiWiekMiastoµ 1Arski Łódź1 2Barski Warszawa1 Precyzyjny warunek selekcji OPERACJE RELACYJNE PRZYKŁAD

42 Rozmyty warunek selekcji: WIEK = Młody Młody WIEK OPERACJE RELACYJNE PRZYKŁAD

43 S ( młodzi pracownicy) 1Arski Łódź0.4 3Carski Paryż1 Rozmyty warunek selekcji: WIEK = Młody OPERACJE RELACYJNE PRZYKŁAD 1

44 R S 1Arski Łódź 1(1 0.4) 2Barski Warszawa 1(1 0) 3Carski Paryż 1(0 1) R S 1Arski Łódź 0.4(1 0.4) 2Barski Warszawa 0(1 0) 3Carski Paryż 0(0 1) R - S 1Arski Łódź 0.6(1 (1-0.4)) 2Barski Warszawa 1(1 (1-0)) 3Carski Paryż 0(0 (1-1))

45 NumerNazwiskoBuddżetMiastoµ 1Kredyt Łódź1 2Finn50 000Warszawa0,8 3Polisa40 000Paryż0.4 4Makler30 000Rzym0.3 5Visa Rzym1 6Agent20 000Paryż0.2 DUŻE_PROJEKTY OPERACJE RELACYJNE PRZYKŁAD 2 - PROJEKCJA

46 Miasto (DUŻE_PROJEKTY) Miastoµ Łódź1 Warszawa0,8 Paryż0,4 Rzym1 OPERACJE RELACYJNE PRZYKŁAD 2 - PROJEKCJA

47 NumerNazwiskoZarobkiWiekMiastoµ 1Arski Łódź1 2Barski Warszawa1 3Carski Łódź0,05 4Darski Poznań0,1 5Farski Łodź0,6 6Jarski Kraków0,5

48 Zarobkiµ , , , ,5 Zarobki (R) Zarobkiµ ,6

49 RS NazwiskoProjektµ Budżetµ Arski Barski Carski30, Darski10,1 Farski30,6 Jarski30,5 OPERACJE RELACYJNE PRZYKŁAD 3 - ZŁĄCZENIE

50 R*S NazwiskoProjektBudzet Arski11001 Barski Carski Darski11000,1 Farski33000,6 Jarski33000,5

51 RS NamePrRtownµPrStownµ Arski1Łódź11W-wa1 Barski2W-wa12Łódź0.8 Carski3Łódź0,053K-ów0.6 Darski1P-nań0,1 Farski3Łódź0,6 Jarski3K-ów0,5 OPERACJE RELACYJNE PRZYKŁAD 4 Podać pary miast pracownika i projektu, w którym bierze on udział

52 RtownStownµRtownStownµ ŁódźW-wa1ŁódźW-wa1 Łódź0.8W-waŁódź0.8 ŁódźK-ów0.05ŁódźK-ów0.6 P-nańW-wa0.1P-nańW-wa0.1 ŁódźK-ów0.6K-ów 0.5 K-ów 0.5

53 Dzielenie Iloraz R S relacji rozmytych R i S określa, w jakim stopniu wymagania zawarte w S są uwzględnione przez R. Do jego wyznaczenia należy wziąć pod uwagę krotki relacji R postaci (a, b), gdzie a ma ustaloną wartość oraz b obejmuje wszystkie wartości występujące w S ( S (b) > 0). Stopień przynależności a do ilorazu jest równy najmniejszej wartości stopnia spełnienia wymagań przez krotki (a, b).

54 Dzielenie Jeżeli dla każdej wartości b występującej w S istnieje w R krotka (a, b), dla której S (b) R (a, b), to wymagania są całkowicie spełnione i a w pełni należy do R, czyli R S (a) = 1. Jeżeli przyjmiemy, że dla sytuacji przeciwnej, czyli gdy istnieją krotki (a, b), takie, że S (b) > R (a, b), wartość R S (a) jest równa najmniejszej wartości R (a, b), to funkcja przynależności wyraża się wzorem:

55 Dzielenie R S (a) = min b I( S (b), R (a, b)), gdzie I jest implikatorem Gödela.

56 RABµSBµ a1a1 b1b1 1b1b1 0.7 a1a1 b2b2 0,6b2b2 0,9 a1a1 b3b3 0,8b3b3 0,5 a2a2 b1b1 0,8 a2a2 b2b2 1 a2a2 b3b3 0,7 a3a3 b1b1 1 a3a3 b3b3 0,4 DZIELENIE – PRZYKŁAD

57 ABµBµAµ a1a1 b1b1 1b1b1 0.7a1a1 0,6 a1a1 b2b2 b2b2 0,9a2a2 1 a1a1 b3b3 0,8b3b3 0,5 a2a2 b1b1 0,8 a2a2 b2b2 1 a2a2 b3b3 0,7 a3a3 b1b1 1 a3a3 b3b3 0,4 DZIELENIE – PRZYKŁAD

58 ALGEBRA RELACJI ROZMYTYCH - PRZYKŁADY Podane przykłady dotyczą następującej bazy danych: PROJ(P#, NAZWA, BUDŻET, MIASTO) PRAC(E#, NAZWISKO, ZAWÓD, WIEK) KONTR(P#, E#, KWOTA)

59 PRZYKŁAD 1 Numery pracowników mających kontrakty o wysokości około 5000 za udział w realizacji projektu P1

60 PRZYKŁAD 1 Numery pracowników mających kontrakty o wysokości około 5000 za udział w realizacji projektu P1 1.Wykonujemy selekcję na relacji KONTR z warunkiem F = (P# = P1 KWOTA = Około 5000): R1 = F ( KONTR) Stopień przynależności wartości krotki r do relacji R1 wynosi: R1 (r) = KONTR (r) Około 5000 (r(P1,KWOTA))

61 PRZYKŁAD 1 2. Następnie rzutujemy R1 na E#: R2 = E# ( R1) Stopień przynależności krotki t do relacji R2 wynosi: R2 (t) = sup t(E#) = r(E#) R1 (r)

62 PRZYKŁAD 1 Ostatecznie otrzymujemy: R = E# ( F (KONTR)) Stopień przynależności krotki t do relacji R wynosi: R (t) = sup t(E#) = r(E#) ( KONTR (r) Około_5000 (r(P1,KWOTA)))

63 Nazwiska młodych pracowników mających kontrakty o wysokości około 5000 za udział w realizacji projektu P1 PRZYKŁAD 2

64 Nazwiska młodych pracowników mających kontrakty o wysokości około 5000 za udział w realizacji projektu P1 1.Selekcja na PRAC z warunkiem WIEK = Młody: R1 = WIEK=Młody (PRAC). Przynależność krotki r1 do R1 wynosi: R1 (r1) = PRAC (r1) Młody (r1(WIEK)) PRZYKŁAD 2

65 2. Selekcja na KONTR z warunkiem F (poprzedni przykład) R2 = F (KONTR), Przynależność krotki r2 do R2 wynosi: R2 (r2) = KONTR (r2) Około_5000 (r2(P1,KWOTA)) 3. Złączenie R1 i R2 R3 = R1* R2 Przynależność krotki r3 do R3 wynosi: R3 (r3) = R1 (r1) eq (r1(E#), r2(E#)) R2 (r2) eq (a,b) = 1 jeżeli a = b oraz eq (a,b) = 0, jeżeli a b PRZYKŁAD 2

66 4. Projekcja na NAZWISKO R4 = NAZWISKO ( R3 ) Przynależność krotki r4 do R4 wynosi: R4 (r4) = sup r4(NAZWISKO) = r3(NAZWISKO) R3 (r3)

67 PRZYKŁAD 2 Ostatecznie otrzymujemy R = NAZWISKO ( WIEK=Młody (PRAC) * F (KONTR) ) Przynależność krotki t do R wynosi: R (t) = sup t(NAZWISKO) = r(NAZWISKO) ( PRAC (r) Młody (r(WIEK)) eq (r(E#),s(E#)) KONTR (s) Około_5000 (s(P1,KWOTA)))

68 Zawody młodych pracowników mających kontrakty o wysokości około 5000 za udział w realizacji projektu P1 PRZYKŁAD 3

69 Zawody młodych pracowników mających kontrakty o wysokości około 5000 za udział w realizacji projektu P1 1.Wykorzystamy wynik z poprzedniego przykładu R1 = WIEK=Młody (PRAC) * F (KONTR) Przynależność krotki r1 do R1 wynosi: R (r1) = PRAC (r) Młody (r(WIEK)) eq (r(E#),s(E#)) KONTR (s) Około_5000 (s(P1,KWOTA)) PRZYKŁAD 3

70 2. Wykonujemy projekcję R2 = ZAWÓD ( R1) Przynależność krotki r2 do R2 wynosi: R2 (t) = sup t[ZAWÓD] = r[ZAWÓD] R3 (r) PRZYKŁAD 3

71 Ostatecznie otrzymujemy: R = ZAWÓD ( WIEK=Młody (PRAC) * F (KONTR) ) Przynależność krotki t do R wynosi: R (t) = sup t[ZAWÓD] = r[ZAWÓD] ( PRAC (r) Młody (r(WIEK)) eq (r(E#),s(E#)) KONTR (s) Około_5000 (s(P1,KWOTA))) PRZYKŁAD 3

72 Numery młodych pracowników, którzy nie mają żadnego kontraktu wyższego niż około 5000 PRZYKŁAD 4

73 Numery młodych pracowników, którzy nie mają żadnego kontraktu wyższego niż około Wyznaczamy numery młodych pracowników R1 = E# ( WIEK = Młody (PRAC)) Przynależność krotki r1 do R1 wynosi: R1 (r1) = sup r1(E#)=r(E#) ( PRAC (r) Młody (r(WIEK))) PRZYKŁAD 4

74 2. Wyznaczamy numery pracowników którzy mają przynajmniej jeden kontrakt wyższy niż około 5000 R2 = E# ( KWOTA> Około_5000 (KONTR)) Przynależność krotki r2 do R2 wynosi: R1 (r2) = sup r2(E#)=r(E#) ( KONTR (s) wyższy niż około_5000 (s(KWOTA))) 3. Wyznaczamy odpowiedź R3 = R1 – R2 Przynależność krotki r3 do R3 wynosi: R3 (r3) = R1 (r3) (1 - R2 (r3)) PRZYKŁAD 4

75 Ostatecznie otrzymujemy: R = E# ( WIEK = Młody (PRAC)) – E# ( KWOTA> Około_5000 (KONTR)) Przynależność krotki t do R wynosi: R (t) = sup t(E#)=r(E#) ( PRAC (r) Młody (r(WIEK))) (1 – sup t(E#)=s(E#) ( KONTR (s) wyższy niż około_5000 (s(KWOTA))) PRZYKŁAD 4

76 Numery pracowników, którzy uczestniczą w realizacji wszystkich projektów o wysokich budżetach i każdy ich kontrakt dotyczący takiego projektu jest większych niż około 5000 PLN. PRZYKŁAD 5

77 1. Wyznaczenie kluczy kontraktów większych niż około 5000 dotyczących projektów o wysokich budżetach R1 = P#, E# ( KWOTA > Około 5000 (KONTR) * BUDŻET = Wysoki (PROJ)) Przynależność krotki r1 do R1 wynosi: R1 (r1) = sup r1(P#,E#)=s(P#,E#) ( PROJ (r) wysoki (r(BUDŻET) eq (r(P#),s(P#)) KONTR (s) Większy niż około_5000 (s(KWOTA))) PRZYKŁAD 5

78 2. Wyznaczenie numerów projektów o wysokich budżetach R2 = P# ( BUDŻET = Wysoki (PROJ)) Przynależność krotki r2 do R2 wynosi: R2 (r2) = sup r2(P#)=r(P#) ( PROJ (r) wysoki (r(BUDŻET))) 3. Wyznaczanie odpowiedzi R3 = R1 R2 Przynależność krotki r3 do R3 wynosi: R3 (r3(e#)) = min p# I G ( R2 (r2(p#)), R1 (r1(e#, p#)) PRZYKŁAD 5

79 Ostatecznie otrzymujemy: R = P#, E# ( KWOTA > Około 5000 (KONTR) * BUDŻET = Wysoki (PROJ)) P# ( BUDŻET = Wysoki (PROJ)) R (e#) = min p# I G ( R2 (p#), R1 (e#, p#)) gdzie R2 (p#) = sup p#=r(P#) ( PROJ (r) wysoki (r(BUDŻET))) oraz R1 (e#,p#) = sup (p#,e#)=s(P#,E#) ( PROJ (r) wysoki (r(BUDŻET) eq (r(P#),s(P#)) KONTR (s) Większy niż około_5000 (s(KWOTA)))

80 ZAPYTANIA NIEPRECYZYJNE W SQL Język SQLf

81 ZAPYTANIA NIEPRECYZYJNE W SQL Podobnie jak w SQLu główną konstrukcją języka SQLf jest blok o następującej strukturze: SELECT DISTINCT A 1, A 2, …, A n FROM R 1, R 2, …, R m WHERE Wf; gdzie Wf oznacza rozmyty (fuzzy) warunek.

82 W wyniku realizacji bloku otrzymujemy rozmytą relację Rf. Operacja SELECT DISTINCT jest złożeniem algebraicznych operacji selekcji i projekcji. Przynależność krotki f do Rf jest więc równa: F (f(A 1, A 2, …, A n )) = sup r(Ai) = f(Ai), i = 1, 2, …n ( R (r) Wf (r)) Dla pojedynczego atrybutu otrzymujemy: SELECT DISTINCT A FROM R WHERE Wf (a) = max r.A=a ( fc (r) R (r)) (a) = max r R r.A=a ( fc (r)) (przy R (r) = 1)

83 Kwerenda z wykorzystaniem dwóch relacji: R(A, B), S(C, D) SELECT DISTINCT A, C FROM R, S WHERE Wf1 AND WF2 AND B D; Wf1 – warunek rozmyty dotyczący R, Wf2 – warunek rozmyty dotyczący S, B D –rozmyty warunek złączenia Rf (a, c) = max r.A= a s.C=c ( fc1 (r) fc2 (s) R (r), S (s) (r.B, s.D))

84 OPERATOR IN A IN SELECT B FROM R WHERE Wf IN (a) = sup r.b=a ( R (r) Wf (r)) PREDYKAT EXISTS EXISTS (SELECT * FROM R WHERE Wf) EXISTS (Z) = sup r Z (r), gdzie Z (r) = R (r) Wf (r), czyli EXISTS (Z) = sup r ( R (r) Wf (r))

85 PRZYKŁAD 1 Numery pracowników mających kontrakty o wysokości około 5000 za udział w realizacji projektu P1

86 PRZYKŁAD 1 Numery pracowników mających kontrakty o wysokości około 5000 za udział w realizacji projektu P1 SELECT DISTINCT E# FROM KONTR WHERE P# = P1 AND KWOTA = Około 5000; (e#) = max r.E#=e# r.P#=P1 ( fc (r) KONTR (r) )

87 Nazwiska młodych pracowników mających kontrakty o wysokości około 5000 za udział w realizacji projektu P1 PRZYKŁAD 2

88 Nazwiska młodych pracowników mających kontrakty o wysokości około 5000 za udział w realizacji projektu P1 SELECT NAZWISKO FROM PRAC WHERE WIEK = Młody AND E# IN (SELECT E# FROM KONTR WHERE P# = P1 AND KWOTA = OKOŁO 5000) (nazwisko) =max nazwisko=r.NAZWISKO min ( PRAC (r), Młody (r.WIEK), sup r.E#=s.E# min ( KONTR (s), Około 5000 (s.KWOTA)) PRZYKŁAD 2

89 Numery młodych pracowników, którzy nie mają żadnego kontraktu wyższego niż około 5000 PRZYKŁAD 3

90 Numery młodych pracowników, którzy nie mają żadnego kontraktu wyższego niż około 5000 SELECT E# FROM PRAC WHERE WIEK = Młody AND NOT EXISTS (SELECT * FROM KONTR WHERE E# = PRAC.E# AND KWOTA > OKOŁO 5000) (e#) = max e#=r.E# ( PRAC (r) Młody (r.WIEK), 1 – sup r.E#=E# min ( KONTR (r), Większy niż około 5000 (r.KWOTA)) PRZYKŁAD 3

91 Numery pracowników, którzy uczestniczą w realizacji wszystkich projektów o wysokich budżetach i każdy ich kontrakt dotyczący takiego projektu jest wyższy niż około 5000 PLN. PRZYKŁAD 4

92 Numery pracowników, którzy uczestniczą w realizacji wszystkich projektów o wysokich budżetach i każdy ich kontrakt dotyczący takiego projektu jest wyższy niż około 5000 PLN. SELECT DISTINCT E# FROM KONTRAKTY K WHERE KWOTA > OKOŁO 5000 AND NOT EXISTS (SELECT P# FROM PROJEKTY WHERE BUDZET = WYSOKI AND P# NOT IN (SELECT P# FROM KONTRAKTY WHERE K.E# = E# AND KWOTA > OKOŁO 5000)) PRZYKŁAD 4

93 SELECT DISTINCT E# FROM KONTRAKTY K WHERE KWOTA > OKOŁO 5000 AND NOT EXISTS (SELECT * FROM PROJEKTY WHERE BUDZET = WYSOKI AND P# NOT IN (SELECT P# FROM KONTRAKTY WHERE K.E# = E# AND KWOTA > OKOŁO 5000)) (e#) = sup e#=s[E#] min ( KONTR (s), Większy niż 5000 (s), 1 – sup r min ( PROJ (r), Wysoki (r.BUDZET), 1 – sup s[E#] = e# r[P#] = s[P#] min ( KONTR (r), Większy niż 5000 (r)))


Pobierz ppt "ROZMYTE BAZY DANYCH. DEFINICJE ZBIORY ROZMYTE Definicja. Niech X oznacza obszar odniesienia (uniwersum). Zbiorem rozmytym A elementów obszaru X o funkcji."

Podobne prezentacje


Reklamy Google