• Nie Znaleziono Wyników

Zastosowanie tablic podobieństw w rozmytym języku zapytań

N/A
N/A
Protected

Academic year: 2021

Share "Zastosowanie tablic podobieństw w rozmytym języku zapytań"

Copied!
10
0
0

Pełen tekst

(1)

MAGDALENA KRAKOWIAK

Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

ZASTOSOWANIE TABLIC PODOBIE STW W ROZMYTYM JZYKU ZAPYTA

Streszczenie

W artykule zaprezentowano rozwizanie dotyczce zastosowania tablic podo-biestw w rozmytym jzyku zapyta. W ramach przeprowadzonych bada na pod-stawie własnych definicji zapytania rozmytego, opracowano algorytm analizatora predykatu, który uwzgldnia budow i korzystanie z istniejcych tablic podobiestw. Stanowi on cz analizatora zapytania w zaprojektowanym modelu interaktywnego rozmytego jzyka zapyta MELSQL.

Słowa kluczowe: systemy wspomagania decyzji, dane niepewne, warto lingwistyczna, zmienna lingwistyczna, tablice podobiestw, rozmyty jzyk zapyta.

1. Wprowadzenie

Wymagania stawiane współczesnym systemom zarzdzania stale rosn. Wspomaganie w po-dejmowaniu decyzji na podstawie informacji precyzyjnych zgromadzonych w bazie lub hurtowni danych przestało by wystarczajce. Koniecznoci stało si modelowanie i przetwarzanie danych niepewnych, bdcych dla niektórych systemów s jedynymi dzi dostpnymi informacjami.

Jednym z najczciej wystpujcych obecnie rodzajów niepewnoci danych jest niepewno lingwistyczna [1]. Charakteryzuje si wartoci lingwistyczn jako jedyn dostpn informacj pochodzc od ludzi. To włanie człowiek w swoim umyle tworzy model otaczajcej go rzeczy-wistoci w oparciu o takie nieprecyzyjne leksykalne pojcia jak: zimno, daleki, niski, mały itp. Stanowi one wartoci lingwistyczne okrelonych zmiennych lingwistycznych takich jak: tempera-tura, odległo, wzrost czy obrót finansowy. Fakt, e człowiek (jako ródło danych) myli i opisuje rzeczywisto w kategoriach informacji rozmytych wymusza na współczesnych systemach wspo-magania decyzji obsług danych niepewnych lingwistycznie.

Poza człowiekiem (jego wraenia, ocena, opis) ródłem danych rejestrowanych w bazach lub hurtowniach danych s take urzdzenia pomiarowe. Niestety odczytane z nich informacje bardzo czsto obarczone s pewnym błdem pomiarowym [3]. Stanowi one drugi rodzaj niepewnoci danych tzw. niepewno pomiarow, dla której jedynymi dostpnymi informacjami s liczby rozmyte (np. „około 3”). Dzi nie budzi ju wtpliwoci konieczno obsługi procesu wspomaga-nia decyzji take na podstawie danych niepewnych pomiarowo, poniewa stanowi czsto, a niekiedy jedynie osigaln informacj.

Trzeci rodzaj niepewnoci danych stanowi niepewno wynikajca z rachunku prawdopodo-biestwa (niepewno stochastyczna). W tym przypadku dostpna informacja wystpuje w postaci wartoci prawdopodobiestwa [1] i wielokrotnie stanowi podstaw, na której opiera si podejmo-wanie decyzji w informatycznych systemach zarzdzania.

(2)

Rys. 1. Klasyfikacja i modelowanie danych niepewnych ródło: opracowanie własne [1]

Istotnym aspektem obsługi danych niepewnych jest sposób ich modelowania w systemie. W zalenoci od rodzaju niepewnoci i zwizanych z tych dostpnych informacji stosuje si róne rodki modelowania rozmytego. Najbardziej powszechne jest stosowanie funkcji przynalenoci liczb do zbioru rozmytego stanowicego warto lingwistyczn (np. „mało”) lub liczb rozmyt (np. „około 3”). W przypadku danych niepewnych stochastycznie buduje si tablice prawdopodo-biestwa i funkcji rozkładu moliwoci. Do obsługi wartoci lingwistycznych oprócz funkcji przynalenoci mona zastosowa take tablice podobiestw elementów z przestrzeni lingwistycz-nej zmienlingwistycz-nej[1].

Celem niniejszej pracy jest analiza stosowania tablic podobiestw (ich uycie i budowa) w za-projektowanym modelu rozmytego jzyka zapyta MELSQL.

2. Charakterystyka zapyta rozmytych

Główna funkcja zaprojektowanego modelu jzyka MELSQL to analiza zapytania rozmytego w celu jego transformacji na zapytanie w standardzie SQL. Punktem wyjcia do zdefiniowania zapytania rozmytego dla potrzeb działania jzyka było proste załoenie, e zapytanie rozmyte ma nastpujc posta:

(3)

POLSKIE STOWARZYSZENIE ZARZDZANIA WIEDZ Seria: Studia i Materiały, nr 23, 2009

113

FROM <lista tabel>

WHERE <warunki rozmyte>. (2.1)

W wyniku analizy budowy warunku w zapytaniu SQL-owym (w instrukcji SELECT wystpu-jcy po słowie kluczowym WHERE i stanowicy parametry operacji selekcji) wyodrbniono predykaty proste połczone operatorem logicznym. Załoono, e o warunku rozmytym decyduje wystpienie w nim rozmytego predykatu prostego i/lub operatora kompensacyjnego. Na tej pod-stawie w modelowanym jzyku MELSQL przyjto nastpujc definicj zapytania rozmytego [2]:

SELECT [I] A1, A2 ... FROM T1, T2 ... [WHERE P1 Xok Ol P2 ...] [GROUP BY A [HAVING P]] [ORDER BY A1 S, A2 S...], (2.2) gdzie:

I - dana liczba krotek odpowiedzi (konkretna liczba lub procent) A - atrybut lub funkcja agregujca (count(), min(), max(), avg(), sum()) T - tabela

P - predykat prosty (twardy lub rozmyty)

Xok - współczynnik operatora kompensacyjnego (waga, próg reakcji)

Ol - operator logiczny (AND, OR)

S - porzdek sortowania (0 – kolejno rosnca, 1- kolejno malejca) Predykat rozmyty charakteryzuje si wystpieniem w nim przynajmniej jednego z elementów [2]:

ƒ wartoci rozmyte atrybutów (wartoci lingwistyczne, liczby rozmyte) ƒ rozmyte operatory arytmetyczne

ƒ rozmyte kwantyfikatory.

Na tej podstawie przyjto nastpujc posta predykatu prostego:

P = Xk K A Xo O Xw W, (2.3)

gdzie:

Xk - warto funkcji przynalenoci dla kwantyfikatora K

K - kwantyfikator twardy (istnieje, wszyscy, aden) lub rozmyty (prawie wszyscy, prawie aden)

A - atrybut

Xo - warto podobiestwa dla operatora arytmetycznego O

O - operator arytmetyczny twardy (=, , <, >, =>, =<) lub rozmyty (prawie =, pra-wie , prapra-wie <, prapra-wie >)

Xw - warto funkcji przynalenoci dla wartoci atrybutu

W - warto atrybutu precyzyjna lub rozmyta (warto lingwistyczna, liczba rozmy-ta); ewentualnie podzapytanie.

(4)

3. Relacja podobiestwa

Tablice podobiestw s macierzami stosowanymi w modelowaniu atrybutów w przypadku dziedzin dyskretnych. Dla kadej pary wartoci z przestrzeni rozwaa danej zmiennej okrelany jest stopie ich wzajemnego podobiestwa wartociami stopni przynalenoci (z przedziału <0;1>). Zatem relacja podobiestwa P w przestrzeni rozwaa X jest relacja rozmyt o nastpuj-cej postaci:

P: XxX -> (0;1), (3.1)

gdzie:

P - relacja podobiestwa

X - przestrze rozwaa zmiennej (lingwistyczna lub numeryczna). Relacja P okrelana jest nastpujcymi własnociami:

ƒ zwrotno PX(x,x)=1, ∀ x  X (3.2)

ƒ symetryczno PX(x,y)= PX(y,x), ∀ x,y  X (3.3)

ƒ przechodnio PX(x,z)= 1-|PX(x,y)- PX(y,z)|, ∀ x,y,z  X. (3.4)

Przykładowo numeryczna przestrze rozwaa zmiennej „wzrost” została zadana przedziałem minimalnej (110cm) i maksymalnej (210cm) wartoci jak mona osign w interesujcej nas grupie osób, co ilustruje tabela 1.

Tabela 1. Tablica podobiestw wzrostu Wzrost [cm] 110 120 130 140 150 160 170 180 190 200 210 110 1,0 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0,0 120 0,9 1,0 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 130 0,8 0,9 1,0 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 140 0,7 0,8 0,9 1,0 0,9 0,8 0,7 0,6 0,5 0,4 0,3 150 0,6 0,7 0,8 0,9 1,0 0,9 0,8 0,7 0,6 0,5 0,4 160 0,5 0,6 0,7 0,8 0,9 1,0 0,9 0,8 0,7 0,6 0,5 170 0,4 0,5 0,6 0,7 0,8 0,9 1,0 0,9 0,8 0,7 0,6 180 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0 0,9 0,8 0,7 190 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0 0,9 0,8 200 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0 0,9 210 0,0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0

(5)

POLSKIE STOWARZYSZENIE ZARZDZANIA WIEDZ Seria: Studia i Materiały, nr 23, 2009

115

4. Tablice podobiestw w analizie predykatu

Analizator predykatu stanowi główny blok algorytmu analizatora warunku realizowanego w ramach analizy zapytania w opracowanym modelu rozmytego jzyka MELSQL. Algorytm działania analizatora predykatu podzielony został na trzy, kolejno wystpujce po sobie, czci odpowiadajce elementom determinujcym jego rozmyty charakter:

ƒ analiza wartoci atrybutu W i identyfikacja Xw

ƒ analiza operatora arytmetycznego O i identyfikacja Xo

ƒ analiza kwantyfikatora K i identyfikacja Xk .

W zaproponowanej w modelu jzyka MELSQL definicji predykatu prostego (2.3) warto po-dobiestwa cechuje współczynnik Xo zwizany z operatorem arytmetycznym. Zastosowanie tablic

podobiestw w analizie predykatu ma zatem miejsce w jej drugiej czci. Majc na uwadze tytuł i cel niniejszej pracy poniej omówiona zostanie tylko analiza operatora arytmetycznego O i identyfikacja Xo (rys.2).

Pierwszy krok w drugim etapie analizy predykatu to sprawdzenie istnienia współczynnika Xo.

Jego brak wiadczy o wystpieniu twardego operatora arytmetycznego, co nie podlega transforma-cji i nastpuje przejcie do trzeciego etapu. Natomiast wykrycie współczynnika Xo wiadczy

o wystpieniu rozmytego operatora i wymaga zamiany predykatu na standard SQL. Do przeprowa-dzenia powyszej operacji stosuje si omawiane tablice podobiestw. Naley zatem sprawdzi, czy dla zadajcego zapytanie uytkownika i dla danego atrybutu taka istnieje. W przypadku jej braku naley j zbudowa - nastpuje przejcie do bloku „Budowa nowej tabeli podobiestw” (rys. 3). Gdy w bazie danych jest ju zarejestrowana wymagana tablica podobiestw kolejnym krokiem jest jej weryfikacja. Naley sprawdzi, czy istnieje zgodno z obecnymi preferencjami uytkownika (naley mie na wzgldzie ich zmienno!). Gdy tablica zostaje pozytywnie zweryfikowana nast-puje pobranie wartoci podobiestwa Xo a take typu operatora, poniewa interpretacja znaczenia

wystpujcego współczynnika operatora arytmetycznego Xo zalena jest od jego typu.

Przykłado-wo warto podobiestwa dla operatora Xo = 0,5 w przypadku operatora „prawie=” oznacza

minimalny akceptowalny stopie podobiestwa czyli warunek spełniaj te wartoci, których stopie podobiestwa do podanej wartoci atrybutu mieci si w przedziale <0,5;1>. Natomiast dla operatora „prawie ” jest to maksymalny akceptowalny stopie podobiestwa czyli przedział <0;0,5>. (Skrajny przypadek, gdy warto podobiestwa Xo = 1 odpowiada wystpieniu twardego

operatora „=”.) Ostatnim krokiem jest zatem pobranie z tabeli okrelonego przedziału wartoci i wprowadzenie zmiany w warunku. W przypadku, gdy uytkownik zmienił swoje preferencje wymagana jest budowa nowej tablicy czyli take nastpuje przejcie do bloku „Budowa nowej tabeli podobiestw”.

(6)

Rys. 2. Algorytm działania analizatora predykatu ródło: Opracowanie własne.

Analiza predykatu Czy istnieje XO? Czy istnieje tabela podobieĔstw dla danego A? Weryfikacja preferencji

Czy istnieje tabela zgodna z obecnymi preferencjami?

Pobierz XO

Pobierz O

Koniec

Budowa nowej tabeli podobieĔstw NIE NIE NIE TAK TAK TAK Analiza kwantyfikatora K i identyfikacja Xk Pobierz z tabeli okreĞlony przedział wartoĞci odpowiadający

XO i O i zamieĔ w warunku Analiza wartoĞci W

(7)

POLSKIE STOWARZYSZENIE ZARZDZANIA WIEDZ Seria: Studia i Materiały, nr 23, 2009

117

Przykładowo z bazy sportowców chcemy pozyska dane (imi i nazwisko) tych sportowców, którzy s podobnego wzrostu (np. w stopniu 0,8) co Jan Kowalski. Rozmyte zapytanie mogłoby mie nastpujc posta:

SELECT IMIE, NAZWISKO

FROM SPORTOWCY

WHERE WZROST 0.8 “prawie=”

(SELECT WZROST

FROM SPORTOWCY

WHERE IMI=”JAN” AND NAZWISKO = ”KOWALSKI”) (4.1)

Zakładajc, e zarejestrowany w bazie sportowiec Jan Kowalski ma 180 cm wzrostu i przed-stawiona tablica podobiestw wzrostu (tabela 1) odpowiada preferencjom uytkownika moemy na jej podstawie okreli przedział wartoci wzrostu odpowiadajcy warunkowi 0.8 “prawie=”. W wyniku zapytania otrzymamy list sportowców, którzy s takiego wzrostu, e jego poziom podo-biestwa do 180 cm mieci si w przedziale <0,8;1>. Analizujc tablic 1 moemy wytypowa nastpujcy przedział wartoci wzrostu <160cm;200cm>. Po dokonaniu transformacji zapytanie przyjmie nastpujc posta w standardzie SQL:

SELECT IMIE, NAZWISKO

FROM SPORTOWCY

WHERE WZROST >=160 AND WZROST <=200 (4.2)

5. Budowa tablic podobiestw

Sposób tworzenia tablic podobiestw zaleny jest od rodzaju przestrzeni rozwaa zmiennej. Dla atrybutu w analizowanym predykacie budowana jest przestrze lingwistyczna lub numeryczna, której wyboru naley dokona w pierwszym kroku algorytmu bloku „Budowa nowej tabeli podo-biestw”. W przypadku wyboru wartoci liczbowych (przykładowo jak dla zmiennej „wzrost”) wystarczy tylko poda zakres wytypowanych wartoci czyli granice rozwaanego przedziału, których stopie podobiestwa bdzie wynosi 0. Do zbudowania np. tabeli 1 wymagane s dwie wartoci 110cm i 210cm. Prezentowane w tablicy wartoci z analizowanej przestrzeni (poza stałymi zadanymi granicami) mog by zmienne i nie ma potrzeby rejestrowania ich w bazie danych. Przy tworzenie tablic podobiestw dowolnych rozmiarów na podstawie zadanego prze-działu wartoci korzysta si m.in. z własnoci relacji podobiestwa ((3.2)(3.3)(3.4)). Wypełnienie tablicy zadan liczb wartoci polega na obliczeniu odległoci pomidzy nimi (kroku):

k = (b-a)/(i-1) dla a < = X < = b, (5.1) gdzie:

a, b - granice przestrzeni

X - przestrze numeryczna zmiennej i - liczba elementów zbioru k - krok.

W przypadku przestrzeni numerycznej o stałej zadanej rónicy midzy kolejnymi wartociami warto podobiestwa mona wyliczy z nastpujcego wzoru:

P (Xm, Xn) = 1 - |m-n| / (i -1), (5.2)

(8)

Xm, Xn - m-ty i n-ty element przestrzeni X

i - liczba elementów zbioru m, n - numer elementu w przestrzeni.

Budowa przestrzeni lingwistycznej zmiennej wymaga zarejestrowania w bazie danych jej wszystkich elementów. Mog to by wartoci lingwistyczne pochodzce z bazy danych i/lub wprowadzone przez uytkownika. Kolejnym krokiem, który nie dotyczył wartoci numerycznych, jest ustalenie kompletnoci, a nastpnie kolejnoci elementów. W bazie danych rejestruje si relacj podobiestwa wszystkich elementów do elementu pierwszego, co pozwala na podstawie własnoci przechodnioci (3.4) utworzy cał tabel podobiestw.

Rys. 3. Algorytm tworzenia tabeli podobiestw ródło: Opracowanie własne.

(9)

POLSKIE STOWARZYSZENIE ZARZDZANIA WIEDZ Seria: Studia i Materiały, nr 23, 2009

119

Przykład przestrzeni lingwistycznej moe stanowi paleta barw dla zmiennej kolor. Ułoenie kolorów od najjaniejszego do najciemniejszego (bd odwrotnie) jest naturaln kolejnoci w celu budowy tablicy podobiestw, która mogłaby mie zastosowanie w analizie zapyta rozmy-tych do systemów botanicznych. Wielu uytkowników mogłoby by zainteresowanych np. nazwa-mi kwiatów o barwie podobnej (w okrelonym stopniu) do konkretnego gatunku kwiatów. Wów-czas algorytm analizy predykatu, a dokładnie jego rodkowej czci wykonałby si dokładnie tak samo jak w przypadku zapytania o sportowców.

6. Podsumowanie

Przedstawiony w pracy model rozmytego jzyka MELSQL ma m.in. za zadanie przybliy uytkownika do naturalnej komunikacji człowiek-komputer. Jedn z form jest moliwo zadawa-nia jak najbardziej zblionych do naturalnych zapyta do bazy danych i std konieczno ich transformacji na zapytania w standardzie SQL. Zastosowanie tablic podobiestw w analizie predy-katu zdecydowanie zwikszyło efektywno pracy analizatora zapytania i otworzyło nowe kierunki rozwoju. Przede wszystkim w ramach modelowania rozmytego istnieje moliwo zapisu w tabli-cach oceny jakociowej podobiestwa i przynalenoci do zbioru, a take moliwo zadawania pyta w tak skrajnej postaci jak np.: „W jakim stopniu jasny jest kolor ciemny?”.

Bibliografia

1. Budziski R., Krakowiak M.: Modelowanie zapyta i bazy reguł w regułowym jzyku zapyta z wykorzystaniem logiki rozmytej. W: Studia i Materiały Polskiego Stowarzyszenia Zarzdzania Wiedz, nr 13, Bydgoszcz 2008, s.5-15.

2. Lipiska M.1: Metoda transformacji zapyta na zapytania w standardzie SQL w bazach

danych. W: Materiały VIII Sesji Naukowej Informatyki., Szczecin 2003.

3. Piegat A.: Modelowanie i sterowanie rozmyte, Akademicka Oficyna Wydawnicza Exit, Warszawa 1999.

(10)

APPLYING OF SIMILARITY MATRIX IN FUZZY QUERRY LANGUAGE

Summary

The paper presents a solution concerning of applying of similarity matrix in fuzzy query language. Making in the work analysis, upon individual fuzzy query, was presented algorithm of analyser of predykat. It is a part of query’s analyser in de-signed model of interactive query language using fuzzy logic MELSQL.

Keywords: computer decisions making systems, uncertain data, linguistic value, linguistic vari-able, similarity matrix, fuzzy query language

Magdalena Krakowiak Wydział Informatyki

Zachodniopomorski Uniwersytet Technologiczny w Szczecinie e-mail: makrakowiak@wi.zut.edu.pl

Cytaty

Powiązane dokumenty

Na podstawie danych zamieszczonych w tabeli 3 wi- doczne jest, że już dla kilku zmiennych przy paru różnych wariantach każdej z cech praktycznie niemożliwe jest przeprowadzenie

Z tej perspektywy przeprowadzona jest w trzeciej części analiza Heideggerowskiej interpretacji Arystotelesa z 1922 roku, w toku której odkrył on po raz pierwszy źródłowy

• Ważne jest by przy wystąpieniu błędu program zwrócił odpwiednią wartość i/lub właściwie sformułowany komunikat o błędzie.... Ogólne uwagi o postępowaniu z

Zagadnienia: źródła błędów, organizacja obsługi błędów, standardowe funkcje obsługi błędów, przeszukiwanie tablic: liniowe, binarne, sortowanie tablic: przez

o tym, że zmienna errno jest ustawia- na przez funkcje, które wykrywają i sygnalizują sytuacje nienormalne, lecz nie zmienia wartości, gdy wynik działania funkcji jest poprawny (

Zagadnienia: źródła błędów, organizacja obsługi błędów, standardowe funkcje obsługi błędów, przeszukiwanie tablic: liniowe, binarne, sortowanie tablic: przez

Przeprowadzona analiza przepływów międzygałęziowych w go- spodarce polskiej, zwana również analizą input-output, pozwoliła na określenie powiązań rynku surowców ener-

Napęd jest w przypadku wie- lu typów heliostatów najdroższym elementem przy czym można je podzielić na dwie główne grupy w zależności od źródła zasilania: