MODELOWANIE ZAPYTA I BAZY REGUŁ W REGUŁOWYM J ZYKU ZAPYTA Z WYKORZYSTANIEM LOGIKI ROZMYTEJ RYSZARD BUDZI SKI, MAGDALENA KRAKOWIAK Politechnika Szczeci ska Streszczenie W artykule, na tle sklasyfikowanych zapyta do baz danych, przedstawiono miejsce i zakładan funkcjonalno regułowego j zyka zapyta z wykorzystaniem logiki rozmytej. W oparciu o autorski model j zyka MELSQL ukazano aspekty modelowania zapyta rozmytych i decyzyjnych reguł logicznych. Przedstawiono rozwi zania dotycz ce definicji postaci zapytania i reguły wnioskowania oraz fragmentów relacyjnego modelu danych do ich rejestracji. Słowa kluczowe: zapytanie rozmyte, reguły decyzyjne, niepewno danych, j zyk zapyta 1. Wst p Dynamicznie rozwijaj ca si technologia baz danych jest odpowiedzi na stale rosn ce wymagania stawiane tej klasy systemom. Współczesne systemy baz danych nie słu ju tylko gromadzeniu i prostemu udost pnianiu informacji, ale nastawione s na wspomaganie w podejmowaniu decyzji. Wzrost funkcjonalno ci i gotowo ci informacyjnej w du ej mierze zale y od mo liwo ci j zyków zapyta. Definiowane jako przyjazne u ytkownikowi interfejsy do przeszukiwania bazy danych według wybranej kombinacji kryteriów i zdefiniowanego wyniku wyszukiwania stanowi podstawow warto współczesnych systemów baz danych [9]. 2. Klasyfikacja zapyta do baz danych Wsparcie ze strony systemu informatycznego w podejmowaniu decyzji mo e odbywa si na dwóch poziomach. Pierwszy z nich to sprawne wyszukiwanie dowolnej kombinacji informacji, a drugi to poziom wy szy czyli wnioskowanie. Funkcj wyszukiwania informacji realizuj klasyczne j zyki zapyta (standard SQL), natomiast wspomaganie w podj ciu decyzji ci le zwi zane jest ze zło onym procesem odkrywania wiedzy [2]. Wyró nia si cztery podstawowe nast puj ce po sobie fazy odkrywania wiedzy: selekcja danych transformacja danych eksploracja danych interpretacja wyników. Najistotniejszym etapem odrywania wiedzy jest eksploracja danych (ang. Data Mining). Po wyborze krotek i relacji (selekcja), konwersji typów i dyskretyzacji warto ci (transformacja) nast puje ekstracja wiedzy. W zale no ci od przeznaczenia odkrywanej wiedzy w eksploracji danych wyró nia si techniki:
6 Ryszard Budzi ski, Magdalena Krakowiak Modelowanie zapyta i bazy reguł w regułowym j zyku zapyta z wykorzystaniem logiki rozmytej klasyfikacji regresji klastrowania odkrywania charakterystyk dyskryminacji odkrywania asocjacji. Odkryta wiedza wymaga odpowiednich form reprezentacji, które powinny by proste w opisie i czytelne dla u ytkownika. Do najcz ciej stosowanych i najbardziej praktycznych nale drzewa decyzjne i reguły logiczne. Modele drzew decyzyjnych zwi zane s przede wszystkim z wiedz klasyfikuj c, a ich przewa nie ogromne rozmiary mog stanowi problem w ich rozumieniu i analizowaniu. Reguły logiczne pozwalaj na bardziej efektywn i silniejsza reprezentacj wiedzy [11]. Ich budowa sprowadza si do formuł implikacji tautologii Modus Ponens. Jest to jeden z najbardziej popularnych sposobów wnioskowania w logice klasycznej, wg którego zaobserwowany fakt stanowi przesłank implikacji wniosków (konkluzji) [8]. Posta reguły logicznej przedstawia wzór 1. P 1 (A 1,W 1 ) P 2 (A 2,W 2 )... P k (A k,w k ) -> P n (A n,w n )... P z (A z,w z ), (1) gdzie: P - predykat prosty A - atrybut W warto. Ka da reguła składa si z ciała (ang. body) i głowy (ang. head) stanowi cych odpowiednio lew i praw stron reguły. Pomi dzy danymi a regułami mog zachodzi dwie relacje. Pierwsza z nich, potwierdzenie, wyst puje wtedy, gdy dla warto ci atrybutów krotki ciało i głowa reguły przyjmuj warto ci logicznej prawdy. W przypadku, gdy ciało reguły przyjmuje warto logicznej prawdy, a głowa reguły logicznego fałszu, zachodzi relacja naruszenia. Ponadto ka d reguł cechuj dwa wska niki statystyczne wa no ci i siły: wsparcie (ang.support) czyli liczba lub procent krotek potwierdzaj cych reguł oraz zaufanie (ang. confidence) wyra aj ce wiarygodno reguły. W zale no ci od stosowanej techniki odkrywania wiedzy rozró nia si reguły klasyfikuj ce, asocjacyjne i dyskryminuj ce.
POLSKIE STOWARZYSZENIE ZARZ DZANIA WIEDZ Seria: Studia i Materiały, nr 13, 2008 7 wspomaganie decyzji w systemach informatycznych zarz dzania poziomy wsparcia wyszukiwanie informacji wnioskowanie obsługa zapyta precyzyjnych deklaratywny j zyk zapyta (standard SQL) regułowy j zyk zapyta (np. MineSQL) obsługa zapyta rozmytych rozmyty j zyk zapyta (np. FQUERY) MELSQL ródło: (opracowanie własne) Rys.1 Klasyfikacja zapyta do baz danych do zarz dzania W celu komunikacji u ytkownika z systemem odkrywania wiedzy powstała generacja regułowych j zyków zapyta. Przedstawione w literaturze rozwi zania [6][7] stanowi rozszerzenie j zyka SQL o nowe typy danych, polecenia i operatory. Podej cie to ma swoje uzasadnienie w jednoczesnej realizacji obsługi dwóch typów zapyta. U ytkownik mo e budowa klasyczne zapytania w celu wyszukiwania informacji oraz specyfikowa poszukiwane reguły i dane, które musz by
8 Ryszard Budzi ski, Magdalena Krakowiak Modelowanie zapyta i bazy reguł w regułowym j zyku zapyta z wykorzystaniem logiki rozmytej eksplorowane w celu odkrycia tych reguł. Przykładem takiej realizacji regułowego j zyka zapyta jest MineSQL wprowadzaj cy nowy typ danych do przechowywania i obsługi reguł RULE [7]. Ka dy z przedstawionych powy ej dwóch typów zapyta do bazy danych mo emy rozpatrywa w kategorii zapyta precyzyjnych i zapyta rozmytych. Klasyczne wyszukiwanie informacji (zapytania twarde) bez obsługi zapyta regułowych realizuje SQL. Zapytania precyzyjne regułowe obsługuje m.in. wspomniany wy ej MineSQL. W ród rozmytych j zyków zapyta bez obsługi reguł na uwag zasługuje FQUERRY for Access [3][10]. W artykule przedstawiono elementy model j zyka MELSQL, który ma za zadanie poł czy w sobie funkcje j zyka rozmytego i regułowego, co znacznie podniesie jego u yteczno i przyjazno. 3. Zastosowanie logiki rozmytej w bazach danych W otaczaj cym nas wiecie od tysi cy lat spotykamy si z informacj rozmyt. Pozyskiwan przez ludzi b d odczytan z urz dze pomiarowych informacj cechuje precyzja, która jest odwrotnie zale na od ziarnisto ci informacji, wyra anej przez szeroko ziarna. Zatem wynik bardzo dokładnego pomiaru jest informacj o małej ziarnisto ci. Szeroko jej ziarna w skrajnym przypadku jest niesko czenie mała i wówczas mówimy o informacji precyzyjnej. Natomiast informacja o sko czonej, wi kszej od zera, szeroko ci ziarna [8] definiowana jest przez twórc i odkrywc poj cia ziarnisto ci, Lofti Zadeha, jako informacja rozmyta. Niepewno danych czyli brak precyzyjnej wiedzy o wiecie wcale nie przeszkadza człowiekowi w nim y i podejmowa decyzj. Ludzie niezale nie od wykształcenia, poziomu wiedzy tworz (w swoim umy le) swój własny wewn trzny model otaczaj cej ich rzeczywisto ci oparty na takich, nieprecyzyjnych leksykalnych poj ciach (niepewno lingwistyczna) jak np. du y, mały, wysoki, niski, gor cy, chłodny itp. Takie informacje s dla niektórych systemów jedynymi dost pnymi informacjami, a wyst puj ce ewentualnie informacje precyzyjne mog by obarczone pewnym bł dem pomiarowym (niepewno pomiarowa) [8]. Ponadto niepewno analizowanych danych mo e wynika z rachunku prawdopodobie stwa (niepewno stochastyczna). Zatem wbrew obawom odwzorowanie w bazie danych fragmentu wiata rzeczywistego za pomoc informacji rozmytych jest pełniejsze i trafniej oddaje jego specyfik. Dotyczy to zarówno modelowania nieprecyzyjnych warto ci atrybutów (warto ci lingwistyczne, liczby przybli one) jak równie przechowywania i aktualizacji relacji rozmytych.
POLSKIE STOWARZYSZENIE ZARZ DZANIA WIEDZ Seria: Studia i Materiały, nr 13, 2008 9 brak precyzyjnej in- rodzaje niepewnoniepewno lingwistyczna niepewno pomiarowa niepewno stochastyczna rodzaje dost pnych informacji warto lingwistyczna (np. mało... ) liczba rozmyta (np. około 3 ) warto prawdopodobie stwa (np. 0.1 ) modelowanie rozmyte budowa tablicy podobie stw elementów z przestrzeni lingwistycznej zmiennej budowa funkcji przynale no ci liczb do zbioru rozmytego np. około 3, budowa tablicy prawdopodobie stwa i funkcji rozkładu mo liwo ci ródło: opracowanie własne 4. Modelowanie zapyta rozmytych Rys.2 Klasyfikacja i modelowanie danych niepewnych W zało eniach projektowych modułu sformalizowanego j zyka MELSQL uwzgl dniono budow własnej bazy danych do realizacji jego funkcji. Jedn z nich jest zapis zadawanych zapyta przez poszczególnych u ytkowników w okre lonym czasie. W zwi zku z tym zaistniała potrzeba analizy zapytania w celu jednoznacznego okre lenia jego postaci i stworzenia modelu danych do jego zapisu. Przedstawione fragmenty relacyjnego modelu danych zrealizowane zostały w technice SERM, rozszerzonym modelu zwi zków encji. Zdefiniowane obiekty oznaczone zostały odpowiednim symbolem kategorii (E-encja, ER-Encjorelacja, R-relacja). 4.1. Definicja zapytania rozmytego W przypadku rozmytych j zyków zapyta nieostro ma charakter temporalny i powstaje w czasie formułowania zapytania. Wyst pienie w nim przynajmniej jednej z poni szych cech decyduje o jego charakterze rozmytym [4]: warto ci rozmyte atrybutów (warto ci lingwistyczne, liczby przybli one)
10 Ryszard Budzi ski, Magdalena Krakowiak Modelowanie zapyta i bazy reguł w regułowym j zyku zapyta z wykorzystaniem logiki rozmytej rozmyte operatory arytmetyczne rozmyte kwantyfikatory operatory kompensacyjne. Maj c na wzgl dzie wymienione powy ej czynniki rozmywaj ce zapytanie definiuje si nast puj c posta zapytania rozmytego [4]: SELECT I A1,A2... FROM T1,T2... WHERE P1 Xok Ol P2... (2) gdzie: I - liczba odpowiedzi (konkretna warto lub %) A - atrybut T - tabela P - predykat prosty Ol - operator logiczny (AND, OR) Xok - współczynnik operatora kompensacyjnego (waga, próg reakcji) Predykat prosty sprowadza si do postaci : P = Xk KA Xo O Xw W, (3) gdzie: Xk warto podobie stwa dla kwantyfikatora K K - kwantyfikator twardy (istnieje, wszyscy, aden) lub rozmyty (prawie wszyscy, prawie aden) Xo warto podobie stwa dla operatora arytmetycznego O O operator arytmetyczny twardy (=,!=, <, >, =>, =<) lub rozmyty (prawie =, prawie!=, prawie <, prawie >) Xw warto wg rozkładu mo liwo ci/podobie stw dla warunku W warto atrybutu (warto precyzyjna, warto lingwistyczna, liczba przybli ona). Powy sza posta zapytania bazuje na klasycznej składni instrukcji SELECT j zyka SQL, bo funkcja projektowanego j zyka ogranicza si do wyszukiwania informacji, a nie ich zmiany. Przeniesienie uj tej w zapytaniu definicji warunku do instrukcji UPDATE jest naturaln konsekwencj rozbudowy modelu j zyka.
POLSKIE STOWARZYSZENIE ZARZ DZANIA WIEDZ Seria: Studia i Materiały, nr 13, 2008 11 4.2. Model danych zapytania Szczególn rol w analizie zapytania przypisuje si wyodr bnieniu z warunków tzw. predykatów prostych [5]. Do ich zapisu słu y przedstawiona poni ej cz schematu z nast puj cymi obiektami: KWANTYFIKATOR (E) zbiór kwantyfikatorów (twardych i rozmytych) OPERATOR ARYTMETYCZNY (E) lista dost pnych operatorów arytmetycznych (twardych i rozmytych) PREDYKAT PROSTY (ER) wykaz wyst puj cych w warunkach predykatów TYP WARTO CI (E) rodzaje warto ci atrybutów. Powi zania pomi dzy encjami tej cz ci schematu przedstawia rysunek 3. Linia przerywana ukazuje relacje z obiektami z innych fragmentów modelu. Zawarto powy szych obiektów przedstawia si nast puj co: Kwantyfikator: Id_kwant Nazwa Typ - identyfikator kwantyfikatora () - nazwa kwantyfikatora - typ kwantyfikatora Operator arytmetyczny: Id_op_a - identyfikator operatora arytmetycznego () Nazwa - nazwa operatora arytmetycznego Typ - typ operatora arytmetycznego Typ warto ci: Id_typu_w Nazwa - identyfikator typu warto ci () - nazwa typu warto ci Predykat prosty: Id_pred Xk Xo Id_atr Id_kwant Id_op_a Id_typu_w Warto - identyfikator predykatu () - warto podobie stwa dla kwantyfikatora - warto podobie stwa dla operatora arytmetycznego - identyfikator atrybutu (FK) - identyfikator kwantyfikatora (FK) - identyfikator operatora arytmetycznego (FK) - identyfikator typu warto ci (FK) - warto atrybutu
12 Ryszard Budzi ski, Magdalena Krakowiak Modelowanie zapyta i bazy reguł w regułowym j zyku zapyta z wykorzystaniem logiki rozmytej 1.1.1.3 Atrybut 1.1.1.2 Kwan tyfi- Operator arytmetyczny Typ warto ci 2 F 3 F 4 F 5 F 1.1.1.1 Predykat Rys. 3 Fragment modelu danych Predykat prosty Przedstawiona powy ej składnia zapytania rozmytego wymaga do zapisu w bazie danych wyst powania dodatkowo takich obiektów jak [5]: ZAPYTANIE (ER) zbiór zadanych przez u ytkowników zapyta FROM (ER) wykaz tabel wyst puj cych w zapytaniach SELECT (ER) lista powi zanych z zapytaniem atrybutów WHERE (ER) spis predykatów poszczególnych zapyta OP. LOG. (ER) lista operatorów logicznych i ich współczynników w zapytaniu Tabela From 1. 2. 3. U ytkowni FK Atrybut FK FK Zapytanie FK Where Select Op. log. zapytania Predykat prosty Rys. 4 Fragment modelu danych Zapytanie Rysunek 4 ukazuje powy szy fragment struktury na tle wcze niej zdefiniowanych obiektów.
POLSKIE STOWARZYSZENIE ZARZ DZANIA WIEDZ Seria: Studia i Materiały, nr 13, 2008 13 Poni ej przedstawiono atrybuty obiektów tej cz ci struktury, która odpowiada za rejestracj zapytania rozmytego. Zapytanie: Id_zap Data I Id_u From: Id_zap Id_tabeli Select: Id_sel Alias Reguła Id_zap Id_atr Where: Id_zap Id_pred Pozycja - identyfikator zapytania () - data rejestracji - zadana liczba odpowiedzi - identyfikator u ytkownika (FK) - identyfikator zapytania (, FK) - identyfikator tabeli (, FK) - kolejny numer selecta () - alias atrybutu w zapytaniu - opis reguły w zapytaniu - identyfikator zapytania (, FK) - identyfikator atrybutu (FK) - identyfikator zapytania (, FK) - identyfikator predykatu (, FK) - pozycja w zapytaniu Operator logiczny zapytania: Id_zap - identyfikator zapytania (, FK) Id_pred - identyfikator predykatu (, FK) Oper_log - operator logiczny Xok - współczynnik operatora kompensacyjnego 5. Modelowanie bazy reguł Tak jak w przypadku zapyta, rejestracja w bazie danych reguł wnioskowania wymaga zdefiniowania postaci reguły i stworzenia odpowiedniego fragmentu modelu danych do jej zapisu. 5.1. Definicja reguły wnioskowania Na podstawie definicji reguł logicznych i postaci predykatu przyj to nast puj c form reguły wnioskowania: R: JE LI (P1 Xok Ol P2...) TO (P3 Xok Ol P4...), (4) gdzie: P - predykat prosty Xok - współczynnik operatora kompensacyjnego (waga, próg reakcji) Ol - operator logiczny (AND, OR)
14 Ryszard Budzi ski, Magdalena Krakowiak Modelowanie zapyta i bazy reguł w regułowym j zyku zapyta z wykorzystaniem logiki rozmytej 5.2. Model danych reguł Rysunek 5 przedstawia cz struktury danych do rejestracji bazy reguł poszczególnych u ytkowników. Ciało i głow reguły umieszczono w jednym obiekcie w celu wykluczenia powtarzania si predykatów po obu stronach reguły; zastosowano klucz zło ony składaj cy si z reguły i predykatu, co gwarantuje unikalno kombinacji tych danych. 1. U ytkow nik FK Reguła Strona Op. log. strony Predykat prosty Reguła: Id_reg Data Id_u Strona: Id_reg Id_pred Pozycja Strona Rys. 5 Fragment modelu danych reguły logiczne - identyfikator reguły () - data rejestracji - identyfikator u ytkownika (FK) - identyfikator reguły (, FK) - identyfikator predykatu (, FK) - pozycja w stronie - strona reguły (ciało lub głowa) Operator logiczny strony: Id_reg - identyfikator reguły (, FK) Id_pred - identyfikator predykatu (, FK) Oper_log - operator logiczny Xok - współczynnik operatora kompensacyjnego 6. Podsumowanie Przedstawione w artykule aspekty modelowania zapyta rozmytych i bazy reguł stanowi cz opracowanego modelu j zyka MELSQL. Jest to regułowy j zyk obsługuj cy zapytania rozmyte, zatem ł czy w sobie funkcjonalno obu typów j zyków (rys. 1). Stanowi on podstaw działania modułu dedykowanego informatycznym systemom zarz dzania z własn baz danych, której odpowiednie fragmenty zostały zaprezentowane.
POLSKIE STOWARZYSZENIE ZARZ DZANIA WIEDZ Seria: Studia i Materiały, nr 13, 2008 15 Bibliografia 1. Budzi ski R., Lipi ska M., Edytor informowania w systemie baz danych, In ynieria baz danych. Prace naukowe Politechniki Szczeci skiej Katedra Systemów Informatycznych Zarz dzania nr 557, Wydawnictwo Uczelniane Politechniki Szczeci skiej. 2. Budzi ski R., Ordysi ski T., Metody ekstrakcji wiedzy w zasobach informacyjnych przedsi biorstwa nowej gospodarki 3. Kacprzyk J., Zadro ny S., FQUERY for Access: fuzzy querying for a windows-based DBMS. Fuzziness in Database Management Systems, Heidelberg 1995. 4. Lipi ska M., Metoda transformacji zapyta rozmytych na zapytania w standardzie SQL w bazach danych, Materiały VIII Sesji Naukowej Informatyki, Szczecin 2003. 5. Lipi ska M., Model danych interaktywnego j zyka zapyta w wyspecjalizowanych systemach baz danych,, Materiały X Sesji Naukowej Informatyki, Szczecin 2005. 6. Meo R., Psaila G, Ceri S., A New SQL-like Operator for Mining Association Rules, Proc. of 22 nd VLDB Conference, Bombay 1996 7. Morzy T., Zakrzewicz M., SQL-like language for database mining, Proc. of the First East- European Symposium on Advanced in Databases and Information Systems-ADBIS 97, St. Petersburg 1997. 8. Piegat A., Modelowanie i sterowanie rozmyte, Akademicka Oficyna Wydawnicza EXIT, Warszawa 1999. 9. Subieta K., Teoria i konstrukcja obiektowych j zyków zapyta, Wydawnictwo Polsko- Japo skiej Wy szej Szkoły Technik Komputerowych, Warszawa 2004. 10. Zadro ny S., Zapytania nieprecyzyjne i lingwistyczne podsumowania baz danych, Problemy współczesnej nauki. Teoria i zastosowania, Akademicka Oficyna Wydawnicza EXIT, Warszawa 2006. 11. http://www.cs.put.poznan.pl/mzakrzewicz/pubs/ploug97.pdf
16 Ryszard Budzi ski, Magdalena Krakowiak Modelowanie zapyta i bazy reguł w regułowym j zyku zapyta z wykorzystaniem logiki rozmytej MODELLING QUERIES AND DATA BASE RULES IN QUERY LANGUAGE RULE WITH USING FUZZY LOGIC Summary In this article are clasificate querries to data bases and it is presented place and functionality of query language rule with using fuzzy logic. According to authorship model of MELSQL language there were shown some aspects of modelling fuzzy querries and decision logic rules. There is presented a solution concerning of query definition and rules of deduction and some parts of relation database s model to registration. Keywords: fuzzy query, decision rules, query language Ryszard Budzi ski rbudzinski@ps.pl Wydział Informatyki, Politechnika Szczeci ska ul. ołnierska 49, 71-210 Szczecin