Rozmyte zapytania do baz danych

Podobne dokumenty
Modele danych i ich ewolucja

Plan wykładu. Rozmyte zapytania do Baz Danych. Wstęp. Wstęp informacja rozmyta. Logika rozmyta w Bazach Danych nieprecyzyjne wartości atrybutów

Technologie i systemy oparte na logice rozmytej

SZTUCZNA INTELIGENCJA

Inteligencja obliczeniowa

Inżynieria Wiedzy i Systemy Ekspertowe. Niepewność wiedzy. dr inż. Michał Bereta Politechnika Krakowska

SZTUCZNA INTELIGENCJA

Systemy OLAP I. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska

ZBIORY ROZMYTE I WNIOSKOWANIE PRZYBLIŻONE

Logika Stosowana. Wykład 5 - Zbiory i logiki rozmyte Część 1. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017

Wnioskowanie rozmyte. Krzysztof Patan

PODSTAWY BAZ DANYCH. 19. Perspektywy baz danych. 2009/2010 Notatki do wykładu "Podstawy baz danych"

STANDARDOWE FUNKCJE PRZYNALEŻNOŚCI. METODY HEURYSTYCZNE wykład 6. (alternatywa dla s) (zdef. poprzez klasę s) GAUSSOWSKA F.

Systemy OLAP I. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska

I. Podstawowe pojęcia i oznaczenia logiczne i mnogościowe. Elementy teorii liczb rzeczywistych.

WYKŁAD 10 Rozmyta reprezentacja danych (modelowanie i wnioskowanie rozmyte)

Rozmyte systemy doradcze

Sztuczna inteligencja : Zbiory rozmyte cz. 2

Zasada rozszerzania. A U A jest zbiorem rozmytym, B jest obrazem zbioru A Przeniesienie rozmytości A w odwzorowaniu f na zbiór B. sup.

Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych

Bazy danych wykład dwunasty. dwunasty Wykonywanie i optymalizacja zapytań SQL 1 / 36

Problemy złożone trudno jest analizować precyzyjnie Wiedza eksperta w złożonych przypadkach daje się opisać tylko w sposób nieprecyzyjny, np.

SID Wykład 7 Zbiory rozmyte

Przestrzenne bazy danych Podstawy języka SQL

Sztuczna inteligencja: zbiory rozmyte

PRZEWODNIK PO PRZEDMIOCIE

Systemy baz danych i hurtowni danych

Systemy OLAP II. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska

INFORMATYKA GEODEZYJNO- KARTOGRAFICZNA Relacyjny model danych. Relacyjny model danych Struktury danych Operacje Oganiczenia integralnościowe

Model relacyjny. Wykład II

Układy logiki rozmytej. Co to jest?

Indeksy w bazach danych. Motywacje. Techniki indeksowania w eksploracji danych. Plan prezentacji. Dotychczasowe prace badawcze skupiały się na

PRZEWODNIK PO PRZEDMIOCIE

Model relacyjny. Wykład II

K1A_W11, K1A_W18. Egzamin. wykonanie ćwiczenia lab., sprawdzian po zakończeniu ćwiczeń, egzamin, K1A_W11, K1A_W18 KARTA PRZEDMIOTU

Interwałowe zbiory rozmyte

Wykład I. Wprowadzenie do baz danych

Program wykładu. zastosowanie w aplikacjach i PL/SQL;

Podstawy sztucznej inteligencji

Lingwistyczne podsumowania baz danych.inteligentne generowanie s

1 Wstęp do modelu relacyjnego

Sylabus do programu kształcenia obowiązującego od roku akademickiego 2014/15

Jest to zasadniczo powtórka ze szkoły średniej, być może z niektórymi rzeczami nowymi.

Logika rozmyta typu 2

Reprezentacja rozmyta - zastosowania logiki rozmytej

Logika Stosowana. Wykład 7 - Zbiory i logiki rozmyte Część 3 Prawdziwościowa logika rozmyta. Marcin Szczuka. Instytut Informatyki UW

METODY INTELIGENCJI OBLICZENIOWEJ wykład 6

PRZEWODNIK PO PRZEDMIOCIE

Projektowanie hurtowni danych

1. Wstęp do logiki. Matematyka jest nauką dedukcyjną. Nowe pojęcia definiujemy za pomocą pojęć pierwotnych lub pojęć uprzednio wprowadzonych.

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

LOGIKA I TEORIA ZBIORÓW

Wykład XII. optymalizacja w relacyjnych bazach danych

Projektowanie baz danych

Wprowadzenie do baz danych

Logika Stosowana. Wykład 1 - Logika zdaniowa. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017

Zagadnienia AI wykład 1

domykanie relacji, relacja równoważności, rozkłady zbiorów

Cel przedmiotu. Wymagania wstępne w zakresie wiedzy, umiejętności i innych kompetencji 1 Język angielski 2 Inżynieria oprogramowania

Wykład 7 Implementacja języka SQL w systemach baz danych Oracle sortowanie, funkcje agregujące i podzapytania.

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

Projektowanie relacyjnych baz danych

Bazy danych. Plan wykładu. Zależności funkcyjne. Wykład 2: Relacyjny model danych - zależności funkcyjne. Podstawy SQL.

Wprowadzenie do języka SQL

PLAN WYKŁADU BAZY DANYCH MODEL DANYCH. Relacyjny model danych Struktury danych Operacje Integralność danych Algebra relacyjna HISTORIA

Jeśli X jest przestrzenią o nieskończonej liczbie elementów:

1 Zbiory i działania na zbiorach.

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

Systemy baz danych. Notatki z wykładu

LITERATURA. C. J. Date; Wprowadzenie do systemów baz danych WNT Warszawa 2000 ( seria Klasyka Informatyki )

Rozpatrzymy bardzo uproszczoną bazę danych o schemacie

Semantyka rachunku predykatów

Bazy danych Algebra relacji Wykład dla studentów matematyki

Technologie baz danych

Wspomaganie podejmowania decyzji w rozmytych bazach danych metodą AHP

W narzędziu typu Excel, Calc czy Gnumeric napisz formułę logiczną która wyznaczy wartośd przynależności dla podanej temperatury do zbioru gorąco.

Technologie baz danych

ALGORYTM PROJEKTOWANIA ROZMYTYCH SYSTEMÓW EKSPERCKICH TYPU MAMDANI ZADEH OCENIAJĄCYCH EFEKTYWNOŚĆ WYKONANIA ZADANIA BOJOWEGO

Elementy logiki matematycznej

0.1. Logika podstawowe pojęcia: zdania i funktory, reguły wnioskowania, zmienne zdaniowe, rachunek zdań.

Bazy danych. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski

RBD Relacyjne Bazy Danych

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM,

Pojęcie bazy danych. Funkcje i możliwości.

Grupa kursów: Wykład Ćwiczenia Laboratorium Projekt Seminarium 15 30

Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa.

INŻYNIERIA WIEDZY I SYSTEMY EKSPERTOWE

Wstęp Wprowadzenie do BD Podstawy SQL. Bazy Danych i Systemy informacyjne Wykład 1. Piotr Syga

Teoretyczne podstawy informatyki

Bazy danych Wykład zerowy. P. F. Góra

System zarządzania bazą danych SZBD (ang. DBMS -Database Management System)

Kurs logiki rozmytej. Wojciech Szybisty

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

opisuje nazwy kolumn, wyrażenia arytmetyczne, funkcje nazwy tabel lub widoków warunek (wybieranie wierszy)

Systemy GIS Tworzenie zapytań w bazach danych

Zadanie 0 gdy nie mamy logiki rozmytej. Zadanie 1- gdy już mamy logikę rozmytą

PRZEWODNIK PO PRZEDMIOCIE

Matematyka I. BJiOR Semestr zimowy 2018/2019 Wykład 1

Algebra relacji. nazywamy każdy podzbiór iloczynu karteziańskiego D 1 D 2 D n.

Hurtownie danych. Przetwarzanie zapytań. ZAPYTANIA NA ZAPLECZU

Transkrypt:

Krzysztof Dembczyński Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska Technologie Wytwarzania Oprogramowania Semestr letni 2005/06

Plan wykładu Systemy baz i hurtowni danych wprowadzenie do wykładu Modele danych i ewolucja systemów baz danych Proces ekstrakcji, transformacji i ładowania (ETL) Projektowanie hurtowni danych Systemy OLAP Analiza i Eksploracja danych Internet jako baza danych (Dawid Weiss)

Plan wykładu 1 Logika rozmyta 2 Podejście rozmyte w relacyjnych systemach baz danych 3 4 Transformacja zapytań rozmytych do modelu relacyjnego 5 Architektura systemu rozmytych zapytań do baz danych

Wstęp Wykorzystanie logiki boolowskiej w systemach baz danych ogranicza uwzględnienie wszelkiego rodzaju nieprecyzyjności. Zapytania w tych systemach sa ciagle dalekie od języka naturalnego i bardzo restrykcyjne. Czasami użytkownik odpytujac bazę danych nie chce definiować ostrych i precyzyjnych warunków wyszukiwania. Innymi słowy, czasami użytkownik chce, aby pewna nieprecyzyjność była dopuszczalna - podobnie jak w języku naturalnym.

Wstęp Zapytanie: Wyszukaj doświadczonych pracowników z niewielkimi żadaniami płacowymi. Zapytanie w SQL SELECT Name, Experience, Salary FROM Workers WHERE Experience >= 3 and Salary <= 3000

Wstęp Powstaje pytanie: co z pracownikami majacymi doświadczenie 2 i pół letnie oraz wymagania dotyczace pensji mniejsze od 2500, co z pracownikami z bardzo dużym doświadczeniem (10-letnim) i żadaniami płacowymi ok. 3500.

Wstęp Odpowiedzia jest PODEJŚCIE ROZMYTE. Podejście to pozwala na nakładanie elastycznych warunków i ograniczeń oraz na wyrażanie zapytań w bardziej naturalny sposób. Zapytanie w SQLf SELECT Name, Experience, Salary FROM Workers WHERE Experience IS HIGH and Salary IS MEDIUM

Plan wykładu 1 Logika rozmyta 2 Podejście rozmyte w relacyjnych systemach baz danych 3 4 Transformacja zapytań rozmytych do modelu relacyjnego 5 Architektura systemu rozmytych zapytań do baz danych

Plan wykładu 1 Logika rozmyta 2 Podejście rozmyte w relacyjnych systemach baz danych 3 4 Transformacja zapytań rozmytych do modelu relacyjnego 5 Architektura systemu rozmytych zapytań do baz danych

Logika rozmyta Logika rozmyta: Zaproponowane w 1965 przez Lotfi Zadeh a, Dzisiaj wiele teoretycznych rozwinięć na całym świecie, Również wiele zastosowań praktycznych, Kamery wideo: ustawianie ostrości i stabilizacja ostrości, Pralka automatyczna, Rozmyta automatyczna przekładnia, Metro w mieście Sendai: sterowanie za pomoca systemu rozmytego Popularność w Japonii, sceptyczne podejście świata zachodniego

Logika rozmyta Źródła i motywacje Język naturalny a świat komputerów (języków binarnych): Co oznacza termin wysoki człowiek? dla ludzi? dla komputera? Modelowanie złożonych problemów, Procesy wnioskowania, postrzegania i podejmowania decyzji przez człowieka Dziedziny, w których intuicja i ocena subiektywna ma znaczenie jednak nie jest to lekarstwo na wszystko, Logika rozmyta dostarcza matematycznego narzędzia reprezentacji nieprecyzyjności.

Logika rozmyta Modelowanie zgodne z językiem naturalnym: Definicja osoby wysokiej: 180cm w logice 0-1; co z 179,9cm? Może lepsza definicja: powyżej i ok. 180cm, Przynależność do zbioru Zbiory klasyczne zawieraja obiekty, które spełniaja precyzyjne cechy przynależności, np. od 175 do 185cm, Zbiory rozmyte zawieraja obiekty, które spełniaja nieprecyzyjne cechy przynależności, np. ok. 180 cm.

Logika rozmyta Definicja zbioru Niech X będzie przestrzenia informacji: Zbiór A = {x X : x spełnia pewne warunki}. Możemy też posłużyć się funkcja przynależności: µ A (x) = { 1 x A 0 x A

Logika rozmyta Rozszerzenie (uogólnienie) cechy przynależności: Zbiory określone na przestrzeni X, które uwzględniaja stopień przynależności Zadeh nazwał zbiorami rozmytymi (ang. fuzzy sets), Kluczowa różnica między zbiorami nierozmytymi a rozmytymi jest funkcja przynależności. Zbiór rozmyty jest zawsze opisany funkcja, która odwzorowuje przestrzeń X w przedział od 0 do 1.

Logika rozmyta Definicja zbioru rozmytego Zbiorem rozmytym A w przestrzeni X jest zbiór uporzadkowanych par: A = {(x, µ A ) : x X}, gdzie µ A : X 0, 1 jest funkcja przynależności zbioru rozmytego A

Logika rozmyta Przykład: zbiór ludzi młodych 1 x 20 40 x µ A (x) = 20 20 < x 40 0 x > 40

Logika rozmyta Podstawowe definicje: Nośnikiem (ang. support) zbioru rozmytego A nazywamy zbiór elementów, dla których wartość przynależności µ A (x) > 0, Rdzeniem (ang. core) zbioru rozmytego A nazywamy zbiór elementów, dla którego wartość przynależności jest µ A (x) = 1, Wysokościa zbioru rozmytego A jest największa wartość funkcji przynależności, tzn. h = sup x X µ A (x), Zbiór rozmyty jest znormalizowany, jeśli jego wysokość jest równa 1, Zbiór rozmyty jest wypukły jeżeli dla jakichkolwiek x y z µ A (y) min{µ A (x), µ A (z)}.

Logika rozmyta Reprezentacja zbiorów rozmytych: Reprezentacja dyskretna Jeśli przestrzeń X jest dyskretna i skończona, to zbiór rozmyty jest reprezentowany w sposób następujacy: { µ A (x 1 ) A = + µ A(x 2 ) + + µ } { A(x n ) = x 1 x 2 x n Wymagane sa dwa wektory do reprezentacji (wektor definiujacy przestrzeń X, wektor określajacy wartości przynależności do zbioru) Przykład reprezentacji dyskretnej M - zbiór studentów madrych, X = {Poldek, Hieronim, Jasiu, Gosia} { 0.3 M = Poldek + 0 Hieronim + 1 Jasiu + 0.7 } Gosia i } µ A (x n ). x n

Logika rozmyta Reprezentacja zbiorów rozmytych: Reprezentacja dla ciagłej X { } µ A (x) A =. x Reprezentacja trójkatna D = (20, 30, 40), Reprezentacja trapezoidalna D = (20, 30, 40, 50)

Logika rozmyta Interpretacja zbioru rozmytego Na stole stoja dwie szklanki z płynem: 1. 95% szansy, że jest zdrowy i dobry 2. przynależność do klasy płynów zdrowych i dobrych Która szklankę wybierzesz będac świadomym, że 5% szansy oznacza, że szklanka jest wypełniona niezdrowa ciecza, nie wykluczajac trucizny? Interpretacja: Prawdopodobieństwo a priori P = 0.95 staje się a posteriori = 1.0 lub 0. Albo płyn był zdrowy, albo nie. Wartość przynależności ( = 0.95) pozostaje taka sama po spróbowaniu. Oznacza, że płyn należy do zdrowych i dobrych w dużym stopniu.

Logika rozmyta Zbiory rozmyte moga modelować: Stopień podobieństwa, Stopień preferencji, Stopień niepewności.

Logika rozmyta Zbiory klasyczne i operacje na nich: Suma: A B = {x : x A x B} Iloczyn: A B = {x : x A x B} Dopełnienie: A = {x : x / A x X} Różnica: A/B = {x : x A x / B} Powyższe możemy zapisać również w następujacy sposób: Suma: A B µ A B (x) = µ A (x) µ B (x) = = max(µ A (x), µ B (x)) Iloczyn: A B µ A B (x) = µ A (x) µ B (x) = = min(µ A (x), µ B (x)) Dopełnienie: A µ A (x) = 1 µ A (x) Zawieranie: A B µ A (x) µ B (x)

Logika rozmyta Operacje na zbiorach rozmytych: Suma: A B µ A B (x) = µ A (x) µ B (x) = = max(µ A (x), µ B (x)) Iloczyn: A B µ A B (x) = µ A (x) µ B (x) = = min(µ A (x), µ B (x)) Dopełnienie: A µ A (x) = 1 µ A (x) Zawieranie: A B µ A (x) µ B (x)

Logika rozmyta Definicja iloczynu kartezjańskiego Niech A 1, A 2,..., A n będa klasycznymi zbiorami. Zbiór wszystkich takich n-tek (a 1, a 2,..., a n ), gdzie a 1 A 1, a 2 A 2,..., a n A n jest nazywany iloczynem kartezjańskim (zapis A 1 A 2 A n ) Przykład: A = {0, 1}, B = {a, b, c} A B = {(0, a), (0, b), (0, c), (1, a), (1, b), (1, c)} Definicja relacji Podzbiór iloczynu kartezjańskiego A 1 A 2 A n jest nazywany n-elementowa relacja nad zbiorami A 1, A 2,..., A n.

Logika rozmyta Funkcja charakterystyczna Siła relacji mierzona jest za pomoca funkcji charakterystycznej χ: { 1 (x, y) X Y χ X Y (x, y) = 0 (x, y) / X Y Przykład: X = {1, 2, 3}, Y = {a, b, c} R = {(1, a), (1,, c), (2, b), (2, c), (3, a)} X Y R a b c 1 1 0 1 2 0 1 1 3 1 0 0

Logika rozmyta Funkcja charakterystyczna Siła relacji mierzona jest za pomoca funkcji charakterystycznej χ: { 1 (x, y) X Y χ X Y (x, y) = 0 (x, y) / X Y Przykład: Dla wartości ciagłych: R = {(x, y) : y 2x, x X, y Y } lub: χ R (x, y) = { 1 y 2x 0 y < 2x

Logika rozmyta Operacje na relacjach: Niech R i S będa relacjami w przestrzeni kartezjańskiej X Y : Suma: R S χ R S (x, y) = max(χ R (x, y), χ S (x, y)) Iloczyn: R S χ R S (x, y) = min(χ R (x, y), χ S (x, y)) Dopełnienie: R χ R (x, y) = 1 χ R (x, y) Zawieranie: R S χ R (x, y) χ S (x, y)

Logika rozmyta Relacje rozmyte Różnica polega na zamianie binarnej funkcji χ, na fukcję µ reprezentujac a różne stopnie siły relacji z 0, 1. Stad relacja rozmyta R jest odwzorowaniem X Y w przedział 0, 1, gdzie siła jest wyrażona funkcja przynależności µ R (x, y). Operacje na relacjach: Suma: R S µ R S (x) = max(µ R(x, y), µ S(x, y)) Iloczyn: R S µ R S (x, y) = min(µ R(x, y), µ S(x, y)) Dopełnienie: R µ R (x, y) = 1 µ R(x, y) Zawieranie: R S µ R(x, y) µ S(x, y)

Logika rozmyta Logika klasyczna i rozmyta: Logika klasyczna Załóżmy, że mamy dwa twierdzenia: P: prawda, że x A, Q: prawda, że x B. Prawdziwość mierzona jest następujaco: Jeżeli x A, T (P) = 1, w przeciwnym przypadku T (P) = 0, Jeżeli x B, T (Q) = 1, w przeciwnym przypadku T (Q) = 0.

Logika rozmyta Spójniki logiczne: Dysjunkcja: P Q : x A x B: T (P Q) = max(t (P), T (Q)) Koniunkcja: P Q : x A x B: T (P Q) = min(t (P), T (Q)) Negacja: jeżeli T (P) = 1, to T (P) = 0 jeżeli T (P) = 0, to T (P) = 1 Implikacja: P Q : x / A x B: T (P Q) = T ( P Q) Równoważność: P Q : { 1, jeżeli T (P) = T (Q), T (P Q) = 0, jeżeli T (P) T (Q)

Logika rozmyta Logika rozmyta Załóżmy, że twierdzenie P jest przypisane do zbioru A, wtedy wartość prawdziwa twierdzenia będzie wyrażona: T ( P) = µ A (x), gdzie µ A (x) 0, 1 Stopień prawdziwości T ( P) odpowiada stopniowi przynależności x do A.

Logika rozmyta Logika rozmyta: Niech P będzie określone na zbiorze A, a Q na zbiorze B, wtedy: Negacja: T ( P) = 1 T ( P) Dysjunkcja: P Q: x jest A lub B T ( P Q) = max(t ( P), T ( Q)) Koniunkcja: P Q: x jest A i B T ( P Q) = min(t ( P), T ( Q)) Implikacja: P Q: jeżeli x jest A, to x jest B T ( P Q) = max( T ( P), T ( Q)) = = max{min[µ A(x), µ B(x)], 1 µ A(x)}

Logika rozmyta Paradoksy klasycznej teorii mnogości i logiki: Golibroda z Sevilli goli wszystkich i tylko tych mężczyzn, którzy sami się nie gola, kto goli golibrodę? Lubię wszystkich tych i tylko tych, którzy sami siebie nie lubia, Czy mieszkaniec Krety kłamie mówiac: wszyscy Kretyńczycy sa kłamcami, Niech Z będzie zbiorem, którego elementami sa wszystkie zbiory nie będace swoimi elementami, czy może istnieć taki zbiór? Czy teoria zbiorów rozmytych jest rozwiazaniem paradoksów? Może inne teorie?

Plan wykładu 1 Logika rozmyta 2 Podejście rozmyte w relacyjnych systemach baz danych 3 4 Transformacja zapytań rozmytych do modelu relacyjnego 5 Architektura systemu rozmytych zapytań do baz danych

Podejście rozmyte w relacyjnych bazach danych Podsumuwujac, tradycyjne systemy baz danych projektowane sa pod katem: efektywnego przechowywania, szybkiego i wygodnego dostępu do danych, które sa precyzyjne. W świecie rzeczywistym częściej operujemy informacja nieprecyzyjna i niepewna. Często operujemy wiedza subiektywna - wyrażona za pomoca precyzyjnych wartości może stracić pierwotne znaczenie. Pozyskujac wiedzę z danych precyzyjnych może nam zależeć na przetwarzaniu nieprecyzyjnych zapytań i otrzymaniu rozmytych odpowiedzi.

Podejście rozmyte w relacyjnych bazach danych Podsumuwujac, tradycyjne systemy baz danych projektowane sa pod katem: efektywnego przechowywania, szybkiego i wygodnego dostępu do danych, które sa precyzyjne. W świecie rzeczywistym częściej operujemy informacja nieprecyzyjna i niepewna. Często operujemy wiedza subiektywna - wyrażona za pomoca precyzyjnych wartości może stracić pierwotne znaczenie. Pozyskujac wiedzę z danych precyzyjnych może nam zależeć na przetwarzaniu nieprecyzyjnych zapytań i otrzymaniu rozmytych odpowiedzi.

Informacja nieprecyzyjna Niepewność (będzie padać o 5 popołudniu) Nieprecyzyjność (Paweł ma między 25 a 28 lat) Im mniejsza precyzja, tym większa pewność stwierdzenia. Niewyraźna i stopniowana (Paweł jest młody) Niespójna informacja (Paweł ma mniej niż 25 lat; Paweł ma 30 lat)

Informacja nieprecyzyjna Źródła informacji nieprecyzyjnej: Złożoność procesu, Niewiedza, Przypadek i losowość, Niemożliwość dokonania dokładnych pomiarów, Ogólnikowość wyrażona w języku naturalnym, Nieprecyzyjność zapytań.

Podejście rozmyte w bazach danych Przechowywanie, uaktualnianie i przetwarzanie rozmytych danych: częściowe zawieranie się krotek, nieprecyzyjne wartości atrybutów krotek wyrażone za pomoca zbiorów rozmytych. : rozszerzenie systemów relacyjnych, w celu wykonywania zapytań rozmytych do danych relacyjnych, rozszerzenie systemów relacyjnych, w celu uzyskanie rozmytych baz danych (przechowywana jest informacja rozmyta) i wykonywania rozmytych zapytań. Rozmyte zależności: rozmyte zależności funkcyjne, redundancja krotek.

Relacja rozmyta W klasycznych bazach danych krotka albo występuje w danej relacji albo nie występuje. W relacjach rozmytych dana krotka może występować w jakimś stopniu występowanie częściowe, tzw. krotki ważone (ang. Weighted Tuples). Interpretacja: spełnialność podanego pojęcia lub pewność Przykład: samochód ciężarowy, samochód osobowy, samochów z kratka :)

Rozmyte zapytania Nieprecyzyjne (rozmyte) warunki Znajdź wszystkich podatników, których zarobki były mniejsze od 30 000 PLN. Znajdź wszystkich podatników, których zarobki były małe.

Rozmyte zapytania Nieprecyzyjne (rozmyte) operatory Znajdź wszystkie kraje, których trzy importowane dobra były takie same jak trzy eksportowane dobra przez Polskę Znajdź wszystkie kraje, których trzy importowane dobra były prawie takie same jak trzy eksportowane dobra przez Polskę

Rozmyte zapytania Nieprecyzyjne (rozmyte) kwantyfikatory Znajdź firmy których wszyscy klienci sa urzędnikami państwowymi. Znajdź firmy których prawie wszyscy klienci sa urzędnikami państwowymi.

Badania i projekty Propozycja języka SQLf oraz innych Toczace się prace naukowe Oprogramowanie FQUERY dla MS Access Oprogramowanie komercyjne Fuzzy Query TM firmy Sonalysts (http://fuzzy.sonalysts.com/) Projekt na pgfoundry: dodatek do postgresql (http://pgfoundry.org/projects/ifpg/)

Plan wykładu 1 Logika rozmyta 2 Podejście rozmyte w relacyjnych systemach baz danych 3 4 Transformacja zapytań rozmytych do modelu relacyjnego 5 Architektura systemu rozmytych zapytań do baz danych

Rozmyta algebra relacji Systemy relacyjne bazuja na algebrze relacji. W przypadku rozmytych zapytań musimy posłużyć się rozmyta algebra relacji. Suma: Różnica: Iloczyn kartezjański: µ R S (t) = µ R (t) µ S (t) µ R S (t) = µ R (t) (1 µ S (t)) µ R S (t 12 ) = µ R (t 1 ) µ S (t 2 )

Rozmyta algebra relacji Projekcja: czy może być rozmyta projekcja? Selekcja µ P1 P 2 P 3 (t) = µ P1 (t) µ P2 (t) µ P3 (t) Ograniczenie za pomoca progu przynależności do relacji, Wybór n krotek o największej przynależności, Wyświetlenie wszystkich krotek z niezerowa przynależnościa.

Wyszukiwanie nie polega już na znajdowaniu obiektów w pełni odpowiadajacych zadanym kryteriom wyszukiwania. Spełnienie kryteriów wyszukiwania jest wyrażane w stopniach, co pozwala na uzyskanie odpowiedzi dla zapytań, które w tradycyjnych systemach zwróciłyby wynik pusty. Dodatkowo stopień spełniania pozwala na zrangować otrzymane wyniki, w przeciwieństwie do pokazywania długiej listy wyników.

Podejścia do reprezentacji nieprecyzyjności Reprezentacja danych Można rozróżnić dwa podejścia: oparte na podobieństwie oparte na rozkładach możliwości

Elementy rozmyte w zapytaniach do baz danych Predykaty atomowe oparte na termach lingwistycznych: młody, wysoki Predykaty atomowe oparte na podobieństwie termów lingwistycznych: informatyka sztuczna inteligencja Predykaty zmodyfikowane: bardzo, mniej więcej, raczej, antonimy Predykaty złożone: rozmyte operatory sumy i iloczynu Rozmyte operatory: około, trochę więcej, itp. Kwantyfikatory Rozmyte łaczenie relacji Rozmyte funkcje agregujace Grupowanie po wartościach rozmytych

Przykład Załóżmy, że mamy firmę pośredniczac a w znajdowaniu pracy. Przechowywane sa dane na temat pracowników i pracodawców. Naszym zadaniem jest znalezienie odpowiednień pracy dla każdego pracownika. Przykład jest zaczerpnięty z ksiazki: Yen, Y., Langari, R., Fuzzy Logic: Intelligence, Control, and Information, Prentice Hall, 1998

Przykład: Workers FName LName Age Job_Type Expertise Salary Bob McLedon 23 Academic AI 2200 Rob Mucker 27 Industry Expert 3800 Systems Nancy McCay 40 Management Statistics 3500 John Hunt 54 Management Robotics 6500

Przykład: Job Employer Job_Type Expertise Location Texas A&M Academic AI Texas Sun Industry Expert California Microsystems Systems Harvard Academic Expert Boston University Systems NASA Management Robotics California

Podejście bazujace na podobieństwie Podejście wykorzystuje termy ligwistyczne, wartości nominalnych dziedzin atrybutów, np. takich jak Job_Type lub Education Nieprecyzyjność jest zdefiniowana za pomoca tzw. macierzy podobieństwa, która przechowuje stopień podobieństwa dla każdej pary termów lingwistycznych.

Macierz podobieństwa Robotics Expert AI Statistics Systems Robotics 1.0 0.6 0.6 0.2 Expert 0.6 1.0 0.9 0.2 Systems AI 0.6 0.9 1.0 0.2 Statistics 0.2 0.2 0.2 1.0

Definicja Relacja podobieństwa S na dziedzinie D jest relacja rozmyta, która przypisuje każdej parze wartości dziedziny D wartość z przedziału 0, 1, tzn. S : D D 0, 1. Relacja S spełnia trzy poniższe własności dla każdego x, y, z należacego do D: zwrotność: S D (x, x) = 1, symetryczność: S D (x, y) = S D (y, x) przechodniość: S D (x, z) max y D (min(s D (x, y), S D (y, z))). Tworzac tablicę podobieństwa należy pamiętać, że podobieństwo pomiędzy elementem x i z, wyraża się wzorem: S D (x, z) = min y D (S D (x, y), S D (y, z))

Podejście bazujace na rozkładzie możliwości Podejście bazujace na rozkładzie możliwości zamienia sposób reprezentacji wartości atrybutów z liczbowych na lingwistyczne. Na przykład, na atrybucie Age, którego dziedzina jest oryginalnie liczbowa, możemy wprowadzić następujace termy lingwistyczne: Baby, Young, Middle, Mature, Old. które sa zdefiniowane przez odpowiednie rozkłady możliwości

Rozkład możliwości

Rozmyte zapytania Wynikiem rozmytego zapytania jest rozmyta relacja. Oznacza to, że wyniki moga zostać posortowane według malejacego stopnia spełnienia kryteriów wyszukiwania.

Składnia języka SQLf _j (język bazujacy na SQLf SELECT [THRESHOLD th][quantity q][top t] <attributes> FROM <tables> WHERE <fuzzy conditions> GROUP BY <attributes> HAVING <fuzzy conditions> ORDER BY <attributes>;

Zapytanie SELECT Lname, Age FROM Workers WHERE Age IS YOUNG ; wyniki Lname Age fuzzy_degree McLedon 23 0.85 Mucker 27 0.65

Rozmyte zapytanie SELECT THRESHOLD 0.5 Lname, Expertise FROM Workers WHERE #Expertise IS AI ; Wynik Lname Expertise fuzzy_degree McLedon AI 1.0 Hunt Expert Systems 0.9 Mucker Robotics 0.6

Rozmyte zapytanie SELECT TOP 3 Lname, Expertise FROM Workers WHERE #Expertise IS AI ; Wynik Lname Expertise fuzzy_degree McLedon AI 1.0 Hunt Expert Systems 0.9 Mucker Robotics 0.6

Rozmyte zapytanie SELECT TOP 3 Employer, Location FROM Job WHERE #Location IS Boston WITH RESPECT TO DISTANCE ;

Rozmyte zapytanie SELECT Lname, Salary FROM Workers WHERE Salary IS LESS 2900; Wynik Lname Salary fuzzy_degree McLedon 2200 1.0 McCay 3000 0.9

Rozmyte zapytanie SELECT Lname, Age FROM Workers WHERE Age IS VERY YOUNG ; Wynik Lname Age fuzzy_degree McLedon 23 0.22 Mucer 27 0.04

Rozmyte zapytanie SELECT THRESHOLD 0.5 Lname, Workers.Expertise, Employer, Job.Expertise FROM Workers W, Job J WHERE Workers.JobType = Job.JobType AND #Workers.Expertise IS Job.Expertise ORDER BY Lname;

Wynik Lname Workers Expert. Employer Job Expert. fuzzy degree McLedon AI Texas A&M AI 1.0 McLedon AI Harvard Expert 0.9 University Systems Mucker Expert Systems Sun Micro. Expert Systems 1.0 Hunt Robotics NASA Robotics 1.0

Rozmyte zapytanie SELECT Lname, Age, Salary FROM Workers WHERE Age IS Middle AND Salary IS Middle ; Wynik Lname Age Salary fuzzy degree McLedon 23 2200 0.53 Mucer 27 3800 0.48 McCay 40 3000 0.33

Rozmyte zapytanie SELECT THRESHOLD 0.6 #Expertise, count(*) FROM Workers GROUP BY #Expertise; Wynik Expertise count(*) AI 3 Expert Systems 3 Robotics 3 Statistics 1

Rozmyta projekcja Projekcja rozmyta polega na fuzzyfikacji każdej krotki ze względu na zbiory rozmyte zdefiniowane na dziedzinach tych atrybutów, które zostały wyspecyfikowane w zapytaniu.

Rozmyta projekcja SELECT Lname, Age, Age FROM Workers ORDER BY Lname; Wynik Lname Age Age fuzzy_degree Hunt 55 OLD 0.666 Hunt 55 MATURE 0.333 McCay 40 MATURE 0.666 McCay 40 MIDDLE 0.333 McLedon 23 MIDDLE 0.533 McLedon 23 YOUNG 0.466 Mucer 27 MIDDLE 0.800 Mucer 27 YOUNG 0.200

Plan wykładu 1 Logika rozmyta 2 Podejście rozmyte w relacyjnych systemach baz danych 3 4 Transformacja zapytań rozmytych do modelu relacyjnego 5 Architektura systemu rozmytych zapytań do baz danych

Implementacja systemu rozmytych zapytań Wszystko od poczatku najtrudniejsze ale można najbardziej zoptymalizować. Klasyczne zapytania do bazy danych i przetwarzanie odpowiedzi prędkość działania, przetwarzanie na serwerze czy u klienta? Transformacja zapytań rozmytych do zapytań klasycznych Czy jest w ogóle możliwa?

Transformacja zapytania SQLf _j Zapytanie w SQLf _j SELECT Lname FROM Workers WHERE Age IS Middle ; Róznoważne zapytanie SQL SELECT Lname FROM Workers WHERE Age between 30 and 50;

Transformation zapytań rozmytych Algorytm transformacji składa się z dwóch faz. W pierwszej fazie, leksykalna i gramatyczna poprawność rozmytych zapytań jest sprawdzana. W drugiej fazie, warunki oraz termy rozmyte zamieniane sa w odpowiednie warunki boolowskie oraz wartości klasyczne. Wykorzystywane sa dodatkowe dwie relacje: possibility oraz similarity

Dodatkowa relacja possibility Table Attribute Linguistic a b c d Variable Workers Age Baby 0 0 15 20 Workers Age Young 15 20 30 35 Workers Age Middle 30 35 45 50 Workers Age Mature 45 50 60 65 Workers Age Old 60 65 100 100

Dodatkowa relacja similarity Table Attribute Variable_1 Variable_2 degree Workers Expertise Robotics Robotics 1.0 Workers Expertise Robotics Expert 0.6 Systems Workers Expertise Robotics AI 0.6 Workers Expertise Robotics Statistics 0.2... Workers Expertise Statistics AI 0.2 Workers Expertise Statistics Statistics 1.0

Schemat działania oprogramowania

Transformacja zapytania SQLf _j Zapytanie w SQLf _j SELECT Lname FROM Workers WHERE Age IS Middle ; Róznoważne zapytanie SQL SELECT Lname, fuzzy_degree(age,a,b,c,d) FROM Workers, Possibility WHERE linguistic_variable= Middle and fuzzy_degree(age,a,b,c,d)>0;

Plan wykładu 1 Logika rozmyta 2 Podejście rozmyte w relacyjnych systemach baz danych 3 4 Transformacja zapytań rozmytych do modelu relacyjnego 5 Architektura systemu rozmytych zapytań do baz danych

Architektura systemu System został napisany w Java ie. System bazy danych MySQL Server. Łaczenie za pomoca JDBC. Oprogramowanie składa się z: aplikacja kliencka z linia komend, parser języka SQLf _j, moduł transformacji, nieduża liczba elementów po stronie systemu baz danych.

Architektura systemu

Plan wykładu 1 Logika rozmyta 2 Podejście rozmyte w relacyjnych systemach baz danych 3 4 Transformacja zapytań rozmytych do modelu relacyjnego 5 Architektura systemu rozmytych zapytań do baz danych

Ciekawe zastosowanie podejścia rozmytego. Czy model rozmyty nie traci zalet podejścia relacyjnego? Zależności funkcyjne i redundancja? Ograniczenia integralnościowe? Wydajność systemów rozmytych (indeksy)? Generyczność podejścia rozmytego?

Bardzo dużo potencjalnych zastosowań: agencja pośrednictwa pracy internetowe bazy danych Projekt cały czas trwa: SQLf _j jest tylko podzbiorem funkcjonalności SQLf i innych, podejść, wstępne podejście do podzapytań, pierwsze próby z językiem definiowania danych (DDL), adaptacyjne modelowanie preferencji,...

Pytania? Uwagi? Przykłady rozmytych zapytań?

Plan wykładu Systemy baz i hurtowni danych wprowadzenie do wykładu Modele danych i ewolucja systemów baz danych Proces ekstrakcji, transformacji i ładowania (ETL) Projektowanie hurtowni danych Systemy OLAP Analiza i Eksploracja danych Internet jako baza danych (Dawid Weiss)