Metody reprezentacji i przetwarzania wiedzy w warunkach niepewności w ontologiach opartych na logice opisowej

Wielkość: px
Rozpocząć pokaz od strony:

Download "Metody reprezentacji i przetwarzania wiedzy w warunkach niepewności w ontologiach opartych na logice opisowej"

Transkrypt

1 Politechnika Gdańska Wydział Elektroniki, Telekomunikacji i Informatyki Katedra Inżynierii Oprogramowania mgr inż. Michał Zawadzki Metody reprezentacji i przetwarzania wiedzy w warunkach niepewności w ontologiach opartych na logice opisowej Rozprawa doktorska Promotor: dr hab. inż. Krzysztof Goczyła, prof. nadzw. Politechniki Gdańskiej Gdańsk, 2008

2

3 Praca współfinansowana przez Ministerstwo Nauki i Szkolnictwa WyŜszego w ramach grantu promotorskiego nr N /0574.

4

5 W tym miejscu pragnę serdecznie podziękować wszystkim, którzy w jakikolwiek sposób przyczynili się do powstania modelu systemu zarządzania wiedzą nie w pełni wiarygodną oraz do spisania rozwaŝań dotyczących tego systemu w niniejszej rozprawie. Dziękuję Rodzicom, którzy wspierali mnie na całej drodze edukacji, rozbudowali zamiłowanie do informatyki i nauk ścisłych oraz potrafili motywować do dalszej pracy mimo moich niepowodzeń. Chciałbym bardzo podziękować mojej Ŝonie Teresie, najbliŝszej współpracowniczce w projekcie PIPS, za cierpliwość, z jaką prowadziła ze mną godziny dyskusji, pomagała w trudnych sytuacjach i za wiele pomysłów, które znalazły się w tej pracy. Dziękuję równieŝ Wojtkowi Waloszkowi, dzięki któremu powstały idee, które następnie w ramach projektu PIPS przerodziły się w implementację systemu KaSeA, i za inspiracje do nowych pomysłów. Bardzo serdecznie dziękuję takŝe Profesorowi Krzysztofowi Goczyle za jego opiekę promotorską oraz pracę włoŝoną w to, aby niniejsza rozprawa przybrała obecny kształt. Przede wszystkim dziękuję jednak za wiele wskazówek i umiejętność stawiania wymagań, które doprowadziły do powstania tej pracy.

6

7 Spis treści Wykaz symboli i oznaczeń...iii Rozdział 1 Wstęp Dane, informacje, wiedza Cele i teza rozprawy Układ rozprawy Konwencje notacyjne...4 Rozdział 2 Wiarygodność w Sieci Semantycznej Sieć Semantyczna Zarządzanie wiedzą w Sieci Semantycznej Logika opisowa jako formalizm reprezentacji wiedzy w Sieci Semantycznej Wnioskowanie w logice opisowej Różne aspekty wiarygodności w Sieci Semantycznej Różne podejścia do wnioskowania w warunkach niepewności Rozumowanie w warunkach istnienia faktów, których zaistnienia nie jesteśmy pewni Rozumowanie przy braku faktów umożliwiających wywiedzenie potrzebnych informacji Reprezentacja nieprecyzyjności: zbiory rozmyte i logika rozmyta Niepewność w systemach reprezentacji wiedzy opartych na logice opisowej Rozszerzenie logiki o elementy probabilistyki Rozszerzenie logiki o elementy logiki rozmytej Podsumowanie...21 Rozdział 3 Model systemu zarządzania wiedzą nie w pełni wiarygodną Idea modelu systemu zarządzania wiedzą nie w pełni wiarygodną Model zarządzania wiedzą nie w pełni wiarygodną Zapytania do systemu zarządzania wiedzą nie w pełni wiarygodną Podsumowanie...50 Rozdział 4 Opis wiarygodności danych w Sieci Semantycznej Wiarygodność danych w Sieci Semantycznej Opis wiarygodności danych ontologicznych Definiowanie wiarygodności w trakcie tworzenia źródeł danych Definiowanie wiarygodności istniejących asercji Opis wiarygodności danych nieontologicznych...60 i

8 4.4. Podsumowanie...61 Rozdział 5 Definiowanie wymagań dotyczących wiarygodności informacji Aspekty językowe wyrażania wymagań dotyczących wiarygodności informacji Metoda wyrażania wymagań dotyczących wiarygodności Definiowanie wymagań ad hoc Wykorzystanie wymagań predefiniowanych Podsumowanie...70 Rozdział 6 Przetwarzanie zapytań z wymaganiami dotyczącymi wiarygodności Przetwarzanie zapytań w dziedzinowej sieci wiarygodności Przetwarzanie zapytań w scentralizowanym systemie zarządzania wiarygodnością Przetwarzanie zapytań w rozproszonym systemie zarządzania wiarygodnością Definiowanie wiarygodności w dziedzinowej sieci wiarygodności Definiowanie wiarygodności w scentralizowanym systemie zarządzania wiarygodnością Definiowanie wiarygodności w rozproszonym systemie zarządzania wiarygodnością Podsumowanie...82 Rozdział 7 Zarządzanie wiedzą nie w pełni wiarygodną w systemie TrustMe Architektura systemu TrustMe System wnioskujący KaSeA System zarządzania wiedzą nieontologiczną KL Repozytorium asercji: StatementStore Agent użytkownika: Bond Podsumowanie...90 Rozdział 8 Ocena metod zarządzania wiedzą nie w pełni wiarygodną Projekt PIPS Usługi w projekcie PIPS Scenariusz zastosowania systemu zarządzania wiedzą nie w pełni wiarygodną w usłudze kontroli odżywiania pacjenta przyjmującego leki Analiza złożoności obliczeniowej algorytmów przetwarzania zapytań Podsumowanie Rozdział 9 Podsumowanie i kierunki dalszych prac Prace pokrewne Kierunki dalszych prac Definiowanie terminologii dziedzinowej i terminologii wiarygodności Uprawnienia użytkowników do definiowania cech asercji Integracja wiedzy z różnych źródeł Podsumowanie Słownik pojęć Spis definicji Bibliografia ii

9 Wykaz symboli i oznaczeń A O alfabet ontologii A O alfabet nazw konceptów, ról i atrybutów w ontologii x A O alfabet nazw osobników w ontologii s C, D koncepty C J C * D C + D C m D C ª D ŸC C(a) interpretacja konceptu przecięcie konceptów suma konceptów zawieranie (subsumcja) konceptów równość konceptów negacja konceptu asercja wystąpienia konceptu L O logika opisowa M O odwzorowanie ontologia O x terminologia O s opis świata D ontologia dziedzinowa D x terminologia dziedzinowa iii

10 D s opis świata dziedziny T ontologia wiarygodności T x terminologia wiarygodności T s opis świata wiarygodności W Q O q system zarządzania wiedzą nie w pełni wiarygodną język zapytań zapytanie r q odpowiedź na zapytanie q I interpretacja R, S role "R.C $R.C kwantyfikacja ogólna kwantyfikacja szczegółowa koncept uniwersalny ^ I koncept pusty dziedzina interpretacji {a 1,, a n } koncept wyliczany n R n R ograniczenie liczebnościowe dolne ograniczenie liczebnościowe górne implikacja logiczna odwzorowanie zbiorów iv

11 Rozdział 1 Wstęp 1.1. Dane, informacje, wiedza W ostatnich latach jesteśmy świadkami bardzo dynamicznego rozwoju globalnej pajęczyny Internetu. Nie chodzi tutaj tylko o rozwój technologiczny, coraz szybsze łącza czy nowe sposoby dostępu, ale takŝe jego zawartość. Wzrost dostępności tego światowego medium spowodował, iŝ ludzie zaczęli publikować mnóstwo informacji. W Internecie moŝemy znaleźć zarówno autoprezentacje autorów, jak lubią spędzać wolny czas albo co lubią zjeść, opisy ciekawych miejsc, które warto odwiedzić, jak równieŝ wyniki badań renomowanych instytutów badawczych na świecie. Wszystko to powoduje, Ŝe mówi się o Internecie jako największej skarbnicy wiedzy. Ale czy uŝycie tutaj słowa wiedza jest właściwe? Aby dobrze zdefiniować pojęcie wiedzy, musimy najpierw spróbować określić, czym są dane i informacje oraz jaka jest między tymi pojęciami róŝnica. W literaturze moŝemy znaleźć róŝne definicje danych: Dane to surowe fakty [LL98b], Dane ( ) są ciągami surowych faktów reprezentujących zdarzenia ( ) zanim zostaną ujęte w formie zrozumiałej dla człowieka [LL98a], Dane składają się z faktów [Hay92], Dane to zapisane symbole [MS98]. Mimo iŝ kaŝda z wymienionych definicji trochę inaczej opisuje dane, to ogólne ich przesłanie jest takie, Ŝe dane to fakty (nie zakładając ich prawdziwości [KC07]), często surowe, które nie mają jeszcze konkretnego znaczenia. Z kolei informacje to według literatury: Właściwość danych, która reprezentuje i mierzy efekty ich przetwarzania [Hay92], Dane, które przybrały formę mającą znaczenie i uŝyteczną dla człowieka [LL98a], Dane, które zostały zebrane i przetworzone do formy mającej znaczenie. Innymi słowy, informacja to znaczenie, które zostało nadane zebranym faktom (danym) [LL98b], Dane w kontekście [MS98]. Widzimy zatem, Ŝe informacje moŝemy ogólnie interpretować jako znaczenie nadane danym. Warto w tym miejscu zaznaczyć równieŝ róŝnice między informacją a wiedzą, którą według ekspertów moŝemy zdefiniować jako: 1

12 Rozdział 1 Wstęp Wynik zrozumienia informacji [Hay92], Wynik przyswojenia informacji [Hay92], Zebrane informacje w konkretniej sprawie [Sen90]. Wobec powyŝszych, wiedza jest czymś więcej niŝ tylko informacją, która z kolei rozszerza definicję danych. Informacja to dane, którym nadano znaczenie, zaś wiedza to informacje, które zostały przetworzone ze zrozumieniem. Aby zatem mówić o wiedzy, musimy mieć do czynienia z procesem odkrywania nowych, nie zawsze oczywistych faktów, na podstawie posiadanych juŝ informacji. Proces ten nazywamy wnioskowaniem. Wróćmy więc do pytania, czy uŝycie określenia skarbnica wiedzy w stosunku do Internetu jest właściwe. W odniesieniu do powyŝszych definicji bardziej trafnym określeniem Internetu byłoby skarbnica danych lub skarbnica informacji. Dane i informacje dopiero stają się wiedzą, gdy zostaną przetworzone przez świadomego odbiorcę. JuŜ jakiś czas temu zauwaŝono, Ŝe informacje przechowywane w cyfrowych składnicach danych są bezuŝyteczne dla maszyn to człowiek musi je analizować, kojarzyć fakty jednym słowem prowadzić wnioskowanie na podstawie zawartych w nich informacji. W związku z tym powstała inicjatywa Sieci Semantycznej (ang. Semantic Web) [Ber98], [SBH06], [Gocz07], która ma na celu opisanie istniejących informacji tak, aby były one zrozumiane przez maszyny, które samodzielnie będą mogły przeprowadzać mniej lub bardziej skomplikowane wnioskowanie. Zadanie to realizują specjalne programy komputerowe, które przeszukują Sieć Semantyczną i wnioskują na zebranych w ten sposób informacjach. Aby kiedykolwiek wiedza dostarczona przez agenty (rozumiane tutaj, tak jak w łańcuchu pokarmowym Semantic Web [DJMW + 00], jako programy komputerowe zajmujące się dostarczaniem uŝytkownikom Sieci Semantycznej odpowiedniej wiedzy), była uŝyteczna dla człowieka, musi przede wszystkim być wiarygodna. Problem wiarygodności danych w Sieci Semantycznej jest bardzo szeroki. Przede wszystkim Sieć Semantyczna musi gwarantować, Ŝe dane podczas przesyłania nie ulegną przekłamaniu ani Ŝe nie zostaną odczytane lub zmienione przez niepowołanych odbiorców. Gwarantować to mają podpisy elektroniczne i metody szyfrowania. Problem wiarygodności danych w Sieci nie ogranicza się jednak tylko do tych zagadnień. DuŜym wyzwaniem jest zagwarantowanie, Ŝe agenty dostarczą nam taką wiedzę, której będziemy mogli zaufać. Oczywiście to, jak bardzo wiarygodna wiedza powinna być nam dostarczona, zaleŝy równieŝ w duŝym stopniu od nas. Inne wymagania postawimy agentom, kiedy będziemy poszukiwać lekarza dla dziecka, a inne, kiedy będziemy szukać kawiarni, aby miło spędzić wieczór. Zagwarantowanie wiarygodności wiedzy dostarczanej przez agenty w Sieci Semantycznej wymaga przeanalizowania dwóch istotnych zagadnień: 1) opisania wiarygodności wiedzy, zarówno w znaczeniu wymagań stawianych agentom, jak i wzbogacenia opisu wiedzy dostępnej w Sieci Semantycznej o opis wiarygodności tej wiedzy; 2) opracowania metody wnioskowania z wiedzy o róŝnym poziomie wiarygodności Cele i teza rozprawy Przedstawione w poprzednim punkcie zagadnienia prowadzą do zdefiniowania następującej głównej tezy rozprawy: Zaproponowane w rozprawie modele i algorytmy reprezentacji i przetwarzania wiedzy o różnym stopniu wiarygodności umożliwiają rozszerzenie funkcjonalności 2

13 Wstęp Rozdział 1 systemów zarządzania wiedzą o wnioskowanie niepewne, w którym odpowiedzi uzyskiwane z bazy wiedzy opatrzone są określonym stopniem wiarygodności. Udowodnieniu przedstawionej tezy słuŝyć będzie realizacja poniŝszych celów pomocniczych: 1) opracowanie modelu zarządzania wiedzą nie w pełni wiarygodną (innymi słowy: jak wprowadzić aspekty wiarygodności do systemów zarządzaniu wiedzą), 2) opracowanie algorytmów i metod przetwarzania wiedzy zgodnych z tym modelem (czyli w jaki sposób przetwarzać wiedzę z uwzględnieniem wiarygodności), 3) wykazanie, Ŝe opracowane algorytmy i metody są stosowalne w praktyce (gdyŝ wiele wad zarzucanych istniejącym systemom zarządzania wiedzą związanych jest z ich efektywnością, a co za tym idzie ich praktyczną uŝytecznością i stosowalnością) Układ rozprawy Rozprawa podzielona została na rozdziały, których zawartość została przedstawiona poniŝej: Rozdział drugi skupia się na analizie, czym jest wiarygodność w Sieci Semantycznej. Przedstawia ideę tej sieci, opisuje teŝ, czym jest zarządzanie wiedzą. W tym rozdziale opisana jest równieŝ logika opisowa, która jest jednym z formalizmów reprezentacji wiedzy w Sieci Semantycznej. Ponadto rozdział definiuje wiarygodność w Sieci Semantycznej: w jakich obszarach ona występuje i jakie są aktualne rozwiązania problemu wiarygodności. Przedstawione zostały równieŝ istniejące metody wnioskowania w warunkach niepewności w Sieci Semantycznej. W rozdziale trzecim zaprezentowane zostały wynikające z poprzednich rozwaŝań wymagania względem modelu systemu zarządzania wiedzą nie w pełni wiarygodną, jak równieŝ formalny opis tego modelu. W rozdziale czwartym przedstawiono opis wiarygodności danych w Sieci Semantycznej: w jaki sposób opisać wiarygodności danych zarówno ontologicznych, jak i nieontologicznych. Rozdział piąty omawia definiowanie wymagań dotyczących wiarygodności informacji: skąd bierze się potrzeba wyraŝania przez uŝytkownika Sieci Semantycznej tych wymagań, a takŝe przedstawia metodę ich wyraŝania. W rozdziale szóstym zaprezentowano algorytmy i metody przetwarzania zapytań opatrzonych wymaganiami na wiarygodność. Rozdział siódmy przedstawia prototypową implementację opisanych wcześniej metod i algorytmów zastosowaną w systemie zarządzania wiedzą TrustMe. W rozdziale ósmym poddano ocenie zaproponowane metody zarządzania wiedzą nie w pełni wiarygodną. Rozdział dziewiąty, ostatni, to podsumowanie pracy wraz ze wskazanymi kierunkami dalszych prac. 3

14 Rozdział 1 Wstęp 1.4. Konwencje notacyjne Aby umoŝliwić Czytelnikowi lepszą orientację w treści dokumentu, róŝne typy informacji zostały wyróŝnione z uŝyciem róŝnych stylów czcionki. PoniŜej przedstawione zostały uŝyte style wraz z wyjaśnieniem ich znaczenia: zwroty obcojęzyczne, takie jak np. tłumaczenia terminów, napisane zostały kursywą, np.: ontology; wyróŝnienia w tekście równieŝ napisane zostały kursywą; terminy pojawiające się po raz pierwszy w tekście napisane zostały pogrubioną kursywą, np.: ontologia; fragmenty kodu oraz dane wejściowe i wynikowe napisane zostały czcionką maszynową i umieszczone w zacieniowanym prostokącie, np.: <rdf:resource rdf:about=" jk:nazwisko="kowalski"> <jk:stronadomowa rdf:resource=" </rdf:resource> RozwaŜania i metody przedstawione w niniejszej rozprawie w duŝej mierze oparte zostały na logice opisowej. Logika opisowa jest jednym z formalizmów zapisu wiedzy, a co za tym idzie ma swoją specyficzną konwencję zapisu [BMNP03], którą przyjęto równieŝ w tej rozprawie. 4

15 Rozdział 2 Wiarygodność w Sieci Semantycznej 2.1. Sieć Semantyczna Czym właściwie jest Sieć Semantyczna? Zgodnie z definicją Tima Bernersa-Lee, załoŝyciela konsorcjum W3C [W3C] i inicjatora idei Semantic Web [SemWeb] [SemWeb2], jest to rozszerzenie istniejącej sieci WWW o mechanizmy semantyczne, tak aby informacje dostępne w tej sieci były dobrze zdefiniowane i umoŝliwiały lepszą współpracę komputerom i ludziom [BHL01] 1, [Upd05]. Dlaczego rozszerzenie? Sieć WWW rozrasta się w ogromnym tempie. Jej podstawową cechą jest jej uniwersalizm siła hipertekstu polega właśnie na moŝliwości łączenia w pewną całość róŝnego typu elementów, takich jak tekst, grafika, multimedia, a takŝe powiązywania tak utworzonych dokumentów z innymi. W Sieci nie moŝna automatycznie odróŝniać wersji wstępnej dokumentu od wersji ostatecznej, informacji biznesowych od danych przydatnych w badaniach naukowych itp. Dzisiejsza sieć WWW słuŝy głównie do udostępniania dokumentów przeznaczonych do czytania przez ludzi, a nie danych, które byłyby przetwarzane i rozumiane przez komputery. W tym miejscu ktoś mógłby stwierdzić, Ŝe oprócz ogólnie dostępnych dokumentów znajdujących się w tzw. widzialnym Internecie (ang. visible web) części, do której jesteśmy w stanie dotrzeć, korzystając z wyszukiwarek internetowych bądź nawigując po odnośnikach znajdujących się na stronach zwróconych przez wyszukiwarki istnieje równieŝ tzw. Internet ukryty lub głęboki (ang. invisible web, deep web 2 ), którego zasoby nie są indeksowane przez wyszukiwarki, choć są jak się uwaŝa ok. 500 razy większe od zasobów Internetu widzialnego. W tej części Internetu moŝna znaleźć strony tekstowe, pliki lub inne, zwykle bardzo wartościowe merytorycznie informacje. Dane te, w przeciwieństwie do danych z Internetu widzialnego, często podlegają kontroli merytorycznej, językowej i bibliograficznej, są takŝe często aktualizowane. Ukryty Internet to w większości róŝnorodne bazy danych, archiwa, serwisy on-line zorganizowane w hierarchiczne struktury, w których dane są prawidłowo i efektywnie zaindeksowane. Informacje zawarte w tych bazach znajdują się pod kontrolą specjalistów dziedzinowych, są zgodne z zasadami języka właściwego dla danej dziedziny i stanem badań oraz podlegają zasadom ochrony praw autorskich. 1 Pozycja ta zawiera doskonały opis wizji Sieci Semantycznej przedstawiony przez Tima Bernersa-Lee. W niniejszym rozdziale zaprezentowane zostaną pokrótce architektura i zadania Sieci Semantycznej. Po więcej informacji odsyłamy Czytelnika do wspomnianej publikacji. 2 Termin Internet niewidzialny zaczął pojawiać się juŝ od 1994 r., zaś aktualnie akceptowany termin Internet głęboki podał w sierpniu 2001 r. Mike K. Bergman w artykule The Deep Web: Surfacing Hidden Value, The Journal of Electronic Publishing 7. 5

16 Rozdział 2 Wiarygodność w Sieci Semantycznej Dlaczego zatem zawartość Internetu głębokiego nie jest indeksowana przez wyszukiwarki? Według definicji Bergmana, Internet głęboki to głównie dynamicznie tworzona zawartość, która nie istnieje, dopóki nie zostanie wygenerowane konkretne zapytanie do tego czasu zawartość taka nie jest widoczna dla zwykłych wyszukiwarek i nie moŝe być przez nie indeksowana. W celu zaindeksowania zasobów głębokiego Internetu powstały m.in. katalogi zasobów 3, w których umieszcza się odnośniki do ciekawych materiałów (takŝe np. konkretne zapytania generujące określony wynik). Skoro w Internecie głębokim znajduje się mnóstwo zasobów, zarówno lepszych jakościowo od zasobów widzialnego Internetu, jak równieŝ (zwykle) dobrze ustrukturalizowanych, to dlaczego komputery nie mogą korzystać z tej części Internetu jako źródła danych i informacji? Oczywiście mogą, i prawdopodobnie będą w stanie duŝo efektywniej przetwarzać te informacje, jednak nie zmienia to faktu, Ŝe przetwarzanej informacji nie będą w stanie zrozumieć. TakŜe te zasoby nie zawierają Ŝadnej informacji semantycznej, z której moŝna by skorzystać. Zatem komputery nie mogą bezpośrednio uwzględnić do wnioskowania ani zasobów Internetu widzialnego, ani Internetu głębokiego. Reguły Zaufanie Dane Dowody Dane Logika Języki ontologii RDF + rdfschema XML + NS + xmlschema Unicode URI Rysunek 2.1. Torcik Sieci Semantycznej (na podstawie [Ber02b]) Architekturę Sieci Semantycznej dobrze prezentuje tzw. torcik [Swa02] przedstawiony na rysunku 2.1. Na samym dole znajduje się system identyfikowania zasobów Sieci. KaŜdy zasób w sieci jest jednoznacznie identyfikowany poprzez URI (ang. Uniform Resource Identifier) [BFIM98]. Obok systemu identyfikacji zasobów, na tej samej warstwie torciku znajduje się alfabet Unicode [Unicode08], który pozwala zakodować wszystkie znaki dowolnego alfabetu. W kolejnej warstwie torcika znajduje się język XML (ang. extensible Markup Language) [XML], który jest podstawą składni warstw wyŝszych. Warstwa ta umoŝliwia zdefiniowanie schematu dokumentów XML (ang. XML schema) [XMLS], czyli opisania ich składni. Ze względu na fakt, iŝ w róŝnych miejscach Sieci pod takimi samymi nazwami elementów mogą być rozumiane róŝne pojęcia, w XML-u moŝliwe jest tworzenie tzw. przestrzeni nazw (ang. namespaces), które jednoznacznie identyfikują uŝywane elementy. Jako Ŝe dokumenty XML mogą zawierać oprócz treści równieŝ znaczniki opisujące 3 Przykładem katalogu indeksującego zasoby Internetu głębokiego moŝe być Open Directory Project ( - otwarty katalog prowadzony od 1998 r. przez firmę Netscape. 6

17 Wiarygodność w Sieci Semantycznej Rozdział 2 semantykę, często nazywa się je równieŝ dokumentami samoopisującymi się (ang. selfdescribing documents). Trzecia warstwa to system opisu zasobów (ang. Resource Description Framework RDF) [MM04], [Beck04]. System ten, a właściwie język, słuŝy do opisywania zasobów w sposób, który moŝe być przetwarzany przez komputery. Podstawowym składnikiem opisu RDF są trójki (ang. triples) [Hay04]: podmiot predykat przedmiot, inaczej podmiot orzeczenie dopełnienie, lub jeszcze inaczej: obiekt właściwość wartość, np.: Jan jest ojcem Anny, Jan mówi Ŝe (Jerzy jest ojcem Anny). Trójka RDF jest odpowiednikiem prostego zdania, w którym większość słów zastępują znaczniki URI: <rdf:resource rdf:about=" jk:nazwisko="kowalski"> <jk:stronadomowa rdf:resource=" </rdf:resource> Zapis taki odpowiada schematowi przedstawionemu na rysunku 2.2: Rysunek 2.2. Przykładowa trójka RDF Pewien zasób o nazwie ma dwie właściwości: nazwisko oraz stronadomowa. Wartości tych własności ustawiono odpowiednio na Kowalski oraz Warto zauwaŝyć, Ŝe własności nazwisko oraz stronadomowa znajdują się w przestrzeni nazw jk, gdzie prawdopodobnie zostały zdefiniowane, natomiast właściwości about oraz resource znajdują się w przestrzeni nazw języka RDF. Standardem towarzyszącym RDF jest RDF Schema [BG04], [McBr04], za pomocą którego moŝna definiować własne klasy węzłów oraz właściwości, tworząc tym samym tzw. aplikację RDF. WaŜnym faktem jest to, Ŝe w RDF Schema pomiędzy klasami i właściwościami moŝna ustanowić zaleŝności, które umoŝliwiają wnioskowanie. Kolejna warstwa to języki ontologii, w załoŝeniu bardziej ekspresywne niŝ trójki RDF. Podstawowym standardem jest tutaj język OWL-DL [MH04], [AH04], [SWM04], promowany przez W3C w ramach inicjatywy Semantic Web. Składnia tego języka bazuje na języku RDF, natomiast jego semantyka oparta jest na logice opisowej, a konkretnie na języku opisu o nazwie SHION. Język ten obejmuje: zbiór konstruktorów języka ALCR + [HST99] (język ALC rozszerzony o konstruktor domknięcia przechodniego roli R + ), oznaczony literą S, aksjomat hierarchii ról (R m S), oznaczony literą H, konstruktor inwersji roli R -, oznaczony literą I, konstruktor konceptu wyliczanego {a 1,, a n }, oznaczony literą O, 7

18 Rozdział 2 Wiarygodność w Sieci Semantycznej konstruktory niekwalifikowanych ograniczeń liczebnościowych n R, n R, oznaczone literą N, oraz dziedziny konkretne [BH91]. Pewną róŝnicą między semantyką języków SHION i OWL jest konstruktor domknięcia przechodniego roli, który w języku OWL nie istnieje. Rola jest bezpośrednio definiowana jako przechodnia lub nieprzechodnia. Semantyka języka SHION obejmuje równieŝ dziedziny konkretne, które wykorzystujemy, gdy chcemy tworzyć opisy konceptów odnoszące się do konkretnych wartości liczbowych lub tekstowych: CzłowiekDorosły ª Człowiek * $mawiek. 18 CzłowiekWysoki ª Człowiek * $mawzrost. 170 W języku OWL poza rolami (ang. object type property) występują równieŝ atrybuty (ang. data type property). Atrybut jest relacją binarną pomiędzy osobnikiem i wartościami naleŝącymi do pewnej dziedziny. KaŜdy atrybut ma zdefiniowany typ określający zbiór wartości, jakie moŝe przyjmować. W powyŝszej definicji konceptów CzłowiekDorosły i CzłowiekWysoki wykorzystano atrybuty mawiek i mawzrost. Typem obu atrybutów jest dziedzina konkretna będąca zbiorem liczb naturalnych Õ. W warstwie logiki znajdują się ontologie wyraŝone w językach zdefiniowanych w niŝszych warstwach. Ontologie takie zapisane są w sposób zrozumiały dla komputera i dzięki temu mogą one prowadzić wnioskowanie. Okazuje się jednak, Ŝe ekspresywność logiki opisowej w Sieci Semantycznej jest niewystarczająca do opisu występujących w rzeczywistym świecie złoŝonych zaleŝności pomiędzy osobnikami. Dlatego w ramach inicjatywy Sieci Semantycznej zaproponowano równieŝ inną reprezentację wiedzy, znaną i stosowaną od dawna z uwagi na efektywne algorytmy wnioskowania, czyli regułowe metody reprezentacji wiedzy [RN03]. Wśród nich najbardziej popularne bazują na klauzulach Horna. Pomimo tego, Ŝe istnieje pewien wspólny obszar semantyczny zarówno dla reguł, jak i logiki opisowej, to istnieją pewne specyficzne konstrukcje moŝliwe do wyraŝenia tylko jedną z wymienionych metod. I tak, istnieją powaŝne ograniczenia w wyraŝaniu w regułach takich konstruktorów logicznych, jak negacja, dysjunkcja czy kwantyfikacja egzystencjalna. Z drugiej strony w logikach opisowych nie potrafimy wyraŝać takich reguł, w których liczba zmiennych jest większa niŝ jeden. W celu przezwycięŝenia ograniczeń obu tych reprezentacji w Sieci Semantycznej zaproponowano język SWRL (Semantic Web Rule Language) [SWRL04], który łączy zalety obu rozwiązań wzbogaca język OWL o reguły Horna. Wnioskowanie odbywa się w warstwie dowodów, które wzbogacają ontologie z warstwy logiki o reguły proceduralne oraz dostarczają mechanizmów (silników) wnioskujących (ang. inferencje engines). Wyniki przeprowadzonego wnioskowania mogą słuŝyć jako dane wejściowe dla innych systemów współpracujących z systemami Sieci Semantycznej. Czym byłaby Sieć Semantyczna, gdyby kaŝdy mógł powiedzieć wszystko, co chce? Kto chciałby ufać takiemu systemowi? Sieć Semantyczna stałaby się wielkim, nieuporządkowanym składowiskiem danych o róŝnej wartości takim, jakim jest teraz (w uproszczeniu) sieć WWW. Dlatego teŝ ostatnia warstwa torcika Semantic Web to warstwa zaufania, o którego aspektach traktuje niniejsza rozprawa. 8

19 Wiarygodność w Sieci Semantycznej Rozdział 2 Aby moŝna było wykorzystać ogromny potencjał Sieci Semantycznej, nie moŝna skupić się tylko na pojedynczym źródle informacji i pojedynczym systemie wnioskującym. Tutaj do gry wchodzą agenty [Jenn01] wyspecjalizowane programy, które zajmują się komunikowaniem między sobą, ale przede wszystkim przekazywaniem danych i wyszukiwaniem odpowiedzi na pytania zadane przez uŝytkowników Sieci. Przyjmuje się, Ŝe kaŝdy uŝytkownik Sieci Semantycznej dysponuje zestawem agentów, których kaŝdy jest odpowiedzialny za inną dziedzinę zainteresowań, np. medycynę czy Ŝywienie. Agenty wyszukują w sieci odpowiednie informacje, komunikują się z innymi agentami, od których mogą uzyskać dodatkowe dane, korzystają z silników wnioskujących, aby odkryć nową wiedzę, a wszystko po to, aby swojemu uŝytkownikowi ( właścicielowi ) przedstawić najbardziej trafne odpowiedzi na postawione pytania Zarządzanie wiedzą w Sieci Semantycznej W encyklopedycznych definicjach zarządzania wiedzą zauwaŝymy, Ŝe szczególnie duŝy nacisk kładziony jest na aspekt organizacyjny, związany z szeroko pojętym zarządzaniem organizacją. Główne zadania najczęściej wyróŝniane w ramach zarządzania wiedzą to pozyskiwanie, przechowywanie, wykorzystywanie oraz upowszechnienie wiedzy, jak równieŝ dzielenie się nią. Takie teŝ ujęcie tego zagadnienia znajdziemy w kompendium Handbook on Knowledge Management [Hol03]. W niniejszej rozprawie skupimy się na aspektach technicznych zarządzania wiedzą w systemach informatycznych. W ramach technik pokrywanych przez nurt techniczny zarządzania wiedzą moŝemy znaleźć między innymi wydobywanie wiedzy (ang. data mining) czy analizę danych zawartych w bazach danych OLAP. Najnowsze technologie są oczywiście inspirowane dynamicznym rozwojem globalnej sieci i związane są z inicjatywą Sieci Semantycznej [Her06]. Informatyczny system zarządzania wiedzą powinien wspomagać wymienione wcześniej aspekty jej wykorzystania. Dane do takiego systemu pozyskiwane są z róŝnych (w tym zewnętrznych) źródeł danych, a następnie ujednolicane na poziomie struktury (syntaktycznym). Zadania takiego systemu to m.in.: zarządzanie schematem przetwarzanej wiedzy, wyraŝonym np. w postaci pewnego systemu pojęciowego, wnioskowanie, czyli uzupełnianie zgromadzonych informacji o informacje z nich wynikające, ale niepodane wprost, zarządzanie przechowywaniem gromadzonej wiedzy w repozytorium oraz obsługę zapytań dotyczących gromadzonej wiedzy. Zadaniem systemu zarządzania wiedzą jest stopniowe powiększanie uŝyteczności pozyskiwanych danych i informacji. MoŜna powiedzieć, Ŝe źródła zawierają dane (pojedyncze obserwacje), strukturalizowane następnie do postaci informacji i czynione uŝyteczną wiedzą przez system zarządzania wiedzą poprzez uzupełnianie ich w procesie wnioskowania i udostępnianie odpowiedzi na zapytania uŝytkowników Logika opisowa jako formalizm reprezentacji wiedzy w Sieci Semantycznej Przedstawiona definicja czwartej warstwy torcika Semantic Web mówi krótko o językach ontologii. Jako Ŝe ontologie będą jedną z podstaw dalszych rozwaŝań, warto je w tym miejscu trochę przybliŝyć. Mówiąc w sposób nieco uproszczony, ontologia jest formalnym opisem pojęć występujących w danej dziedzinie. W istocie ontologię moŝemy traktować jako swojego rodzaju źródło wiedzy (słownik) na pewien temat. Bardziej formalna definicja [Grub93] mówi, Ŝe ontologia jest bezpośrednią specyfikacją konceptualizacji. 9

20 Rozdział 2 Wiarygodność w Sieci Semantycznej Słowo bezpośrednia oznacza tutaj formalna, wyraŝona w określonym języku najlepiej zrozumiałym takŝe dla komputera. Konceptualizacja rozumiana jest jako abstrakcyjny model pewnego realnego zjawiska, identyfikujący istotne koncepty tego zjawiska i relacje między tymi konceptami. Jednym z najczęściej stosowanych ścisłych formalizmów słuŝących do zapisu ontologii jest logika opisowa, zwana teŝ logiką deskrypcyjną (ang. Description Logic DL) [BMNP03]. Jest ona formalizmem (a raczej rodziną formalizmów) bazującym na logice pierwszego rzędu (ang. First Order Logic FOL). Ze względu na swoje cechy precyzyjność formalizmu i łatwą w zrozumieniu interpretację w terminach teorii zbiorów DL stał się ostatnio szeroko akceptowaną podstawą dla systemów reprezentacji i zarządzania wiedzą. Co więcej, język OWL-DL [PH06], promowany przez konsorcjum W3C w ramach inicjatywy Semantic Web, równieŝ bazuje na pewnym rozstrzygalnym dialekcie logiki opisowej. Podejście do reprezentowania wiedzy jako ontologii DL bazuje na trzech prostych i naturalnych załoŝeniach: 1) Za pomocą ontologii opisujemy dziedzinę zainteresowań zwaną uniwersum. 2) Uniwersum składa się z osobników (ang. individuals) będących wystąpieniami konceptów (ang. concepts). 3) Koncepty pozostają między sobą w relacjach binarnych zwanych rolami (ang. roles). Ontologia w logice opisowej dzieli się na dwie części: terminologię (zbiór aksjomatów) i opis świata (zbiór asercji). Terminologia (TBox) wyszczególnia pojęcia, które mogą być uŝyte do opisu uniwersum; określa teŝ związki pomiędzy pojęciami. Opis świata (ABox) przyporządkowuje elementy uniwersum (zwane osobnikami bądź indywiduami) poszczególnym pojęciom i pokazuje powiązania pomiędzy osobnikami za pomocą relacji binarnych. Rysunek 2.3. System reprezentacji wiedzy z bazą wiedzy opartą na logice opisowej (na podstawie [BMNP03]) Ontologia nie musi składać się z obu części. Bardzo często ontologie zawierają jedynie część terminologiczną, chociaŝ moŝna sobie wyobrazić teŝ ontologię zawierającą jedynie opis świata z niejawnie określonymi konceptami i rolami. Ontologie w logice opisowej są danymi dla baz wiedzy (ang. knowledge base KB) opartych na DL. Aby ontologie moŝna było przetwarzać oraz z nich wnioskować, baza wiedzy musi być wyposaŝona w silnik wnioskujący. Musi równieŝ istnieć język, w którym daną ontologię moŝna wyrazić. System składający się z wymienionych komponentów moŝemy ogólnie nazwać systemem reprezentacji wiedzy (ang. knowledge representation system), którego formalna definicja brzmi [BMNP03]: system dostarczający takich usług, jak definiowanie bazy wiedzy, wnioskowanie z zawartości bazy wiedzy i manipulowanie tą zawartością. 10

21 Wiarygodność w Sieci Semantycznej Rozdział 2 Ogólną architekturę takiego systemu przedstawia rysunek 2.3. Do systemu reprezentacji wiedzy kierowane są zapytania z systemów zewnętrznych, gdyŝ w ogólności system ten jest tylko jednym z komponentów systemu zarządzania wiedzą (ang. knowledge management system). Pojęcie w sensie DL będziemy określać mianem konceptu. Zakresem konceptu nazwiemy zbiór tych osobników, które moŝna za pomocą danego konceptu (pojęcia) opisać; osobniki te nazywamy wystąpieniami konceptu. Koncept atomowy (prosty) jest określony przez pojedynczą nazwę (generalną), np. Kobieta. Koncepty złoŝone budowane są za pomocą tzw. konstruktorów (operatorów logiki opisowej). Tabela 1 pokazuje koncepty złoŝone i konstruktory jednego z bardziej popularnych dialektów DL, nazywanego ALC. Zgodnie z przyjętą konwencją, dowolne koncepty proste oznaczamy literami A, B, dowolne koncepty złoŝone literami C, D, dowolne role literami R, S. Tabela 2.1. Koncepty proste i konstruktory konceptów złoŝonych w dialekcie ALC Nazwa konceptu Zapis Zakres konceptu Koncept uniwersalny Całe uniwersum Koncept pusty ^ Pusty Suma konceptów C + D Suma zakresów konceptów C i D Przecięcie konceptów C * D Część wspólna zakresów konceptów C i D Dopełnienie konceptu Kwantyfikacja ogólna Kwantyfikacja egzystencjalna ŸC "R.C $R.C Dopełnienie zakresu konceptu C do uniwersum Osobniki będące w relacji R wyłącznie z wystąpieniami konceptu C Osobniki będące w relacji R z przynajmniej jednym wystąpieniem konceptu C Wnioskowanie w logice opisowej Samo zapisanie wiedzy w sposób formalny jest bardzo istotne, jednak najwaŝniejsza jest moŝliwość wnioskowania. PosłuŜymy się przykładową ontologią relacji rodzinnych: Tabela 2.2. Przykładowa ontologia relacji rodzinnych Terminologia (TBox) Opis świata (ABox) MęŜczyzna m Osoba Kobieta m Osoba MęŜczyzna * Kobieta ª ^ Rodzic ª Osoba * $madziecko.człowiek Ojciec ª MęŜczyzna * Rodzic Matka ª Kobieta * Rodzic Kobieta( Anna ) Kobieta( Joanna ) MęŜczyzna( Karol ) madziecko( Anna, Joanna ) madziecko( Anna, Karol ) 11

22 Rozdział 2 Wiarygodność w Sieci Semantycznej Ontologia ta zawiera koncepty MęŜczyzna, Kobieta, Osoba, Rodzic, Ojciec, Matka i rolę madziecko. Terminologia zawiera równieŝ aksjomaty wyraŝone przy uŝyciu dwóch operatorów: równowaŝności konceptów (ang. concept equality, ª) oraz zawierania się konceptów (ang. concept inclusion, m), których znaczenie jest oczywiste. Aksjomaty w ontologii mówią co następuje: MęŜczyźni i Kobiety to Osoby i nikt nie moŝe być jednocześnie Kobietą i MęŜczyzną 4 ; Rodzicem jest osoba, która ma przynajmniej jedno dziecko; Ojciec (Matka) to Rodzic, który jest MęŜczyzną (Kobietą). Opis świata zawiera kilka znanych faktów o Annie, Joannie i Karolu, którzy są członkami rodziny (np. Joanna i Karol są dziećmi Anny). Wykorzystamy tę ontologię w celu wyjaśnienia podstawowych problemów wnioskowania w DL. RównowaŜność (ang. equivalence): Koncepty C i D są równowaŝne (C ª D), jeśli zbiory ich wystąpień są zawsze takie same. Zawieranie się (ang. subsumption): Koncept C zawiera się w koncepcie D (co oznaczamy C m D), jeśli zbiór wystąpień konceptu C jest zawsze podzbiorem zbioru wystąpień konceptu D. W naszym przykładzie niektóre relacje zawieranie są zdefiniowane wprost, natomiast niektóre mogą zostać wywnioskowane, np. Ojciec m Osoba, Matka m Osoba. Spełnialność (ang. satisfiability): Koncept C jest spełnialny, jeśli moŝe mieć wystąpienia. Innymi słowy, koncept C jest niespełnialny, gdy C ª ^. W naszym przykładzie wszystkie koncepty są spełnialne, jeśli jednak dodalibyśmy aksjomat Opiekun ª Kobieta * MęŜczyzna, to koncept Opiekun byłby niespełnialny. Rozłączność (ang. disjointness): Koncepty C i D są rozłączne, jeśli ich zbiory wystąpień są zawsze rozłączne (C * D ª ^). W naszym przykładzie, pary konceptów: MęŜczyzna i Kobieta oraz Ojciec i Matka są rozłączne. Pokazane tu problemy dotyczą terminologii. MoŜna łatwo pokazać, Ŝe wszystkie te problemy da się sprowadzić do problemu sprawdzenia zawierania się [BMNP03]: C ª ^ ñ C m ^; C * D ª ^ ñ C m ŸD; C ª D ñ C m D - D m C. Istnienie opisu świata prowadzi do innych podstawowych problemów wnioskowania, które dotyczą juŝ całej ontologii: Zbiór wystąpień konceptu (ang. instance retrieval): Pobranie z bazy wiedzy wszystkich osobników, którzy są wystąpieniami zadanego konceptu. Test przynaleŝności (ang. instance check): Sprawdzenie, czy dany osobnik jest wystąpieniem danego konceptu. Test spójności (ang. consistency check): Baza wiedzy jest spójna, jeśli istnieje jej model w sensie FOL. W naszym przykładzie baza jest spójna, jednak np. dodanie dwóch nowych asercji: Kobieta( Maria ) i MęŜczyzna( Maria ) spowoduje, Ŝe baza wiedzy przestanie być spójna, gdyŝ Maria musiałaby być zarówno Kobietą, jak i MęŜczyzną, co jest sprzeczne z 3. aksjomatem terminologii Różne aspekty wiarygodności w Sieci Semantycznej Problem wiarygodności i bezpieczeństwa (ang. security) danych w Sieci Semantycznej nie jest problemem nowym, dlatego teŝ najwyŝszą warstwą torcika Semantic Web jest 4 Przykładowa ontologia jest bardzo uproszczoną wersją relacji panujących między ludźmi i moŝe nie zawierać wszystkich moŝliwych układów ze świata rzeczywistego. 12

23 Wiarygodność w Sieci Semantycznej Rozdział 2 warstwa zaufania. Co oznacza tutaj zaufanie? MoŜna je rozumieć na kilka sposobów [Thu07]. Przede wszystkim Sieć Semantyczna musi gwarantować, Ŝe dane przesyłane przez Sieć nie ulegną przekłamaniu ani nie zostaną zmienione (ang. consistency) przez niepowołanych uczestników tego procesu. Jednym ze sposobów uniknięcia takiej sytuacji jest stosowanie podpisów cyfrowych. Podpis taki jednoznacznie identyfikuje autora informacji, jak równieŝ gwarantuje, Ŝe informacja nie została zmieniona (lub przekłamana) na drodze od nadawcy do adresata. W ten sposób moŝna zdefiniować, które sygnatury nadawców traktować jako zaufane (lub określić progi zaufania w zaleŝności od sygnatury) i tylko informacje podpisane z wykorzystaniem tych sygnatur brać pod uwagę. Z drugiej jednak strony trudno sobie wyobrazić, aby dana osoba zaufała odpowiedniej liczbie innych osób (sygnatur), aby mogła skorzystać ze wszystkich dobrodziejstw, jakie daje globalna sieć. Dlatego powstał pomysł utworzenia Sieci Zaufania (ang. Web of Trust) [Ber02a], której uproszczony przykład pokazano na rysunku ) Jeśli X jest reprezentantem Y w komitecie doradczym, X moŝe delegować prawo Y dostępu do systemu 2) Tomasz jest reprezentantem Anety w komitecie doradczym Anna 1) Jeśli X jest pracownikiem Anety, X ma prawo dostępu do systemu 2) Agata jest pracownikiem Anety Agata: Mam prawo dostępu do systemu Dowód: Anna 1, Anna 2, Tomasz 1, Tomasz 2 Tomasz Agata Rysunek 2.4. Przykład Sieci Zaufania uprawnienia uŝytkownika wynikające z uprawnień innych uŝytkowników (na podstawie [Ber02a]) ZałóŜmy, Ŝe Anna stwierdza (zdanie Anna2), Ŝe Tomasz jest reprezentantem Anety w pewnym komitecie doradczym. Z definicji (Anna1) bycie czyimś reprezentantem pozwala na delegowanie uprawnień tego kogoś do innych uŝytkowników. Oznacza to, Ŝe Tomasz moŝe delegować uprawnienia Anety dostępu do systemu. Z kolei Tomasz twierdzi (Tomasz1), Ŝe jeśli ktoś jest pracownikiem Anety, to ma prawo dostępu do systemu. Z informacji (Tomasz2) otrzymanych od Tomasza wiemy równieŝ, Ŝe Agata jest pracownikiem Anety. Z powyŝszych wynika, Ŝe Agata ma prawo dostępu do systemu, gdyŝ jest pracownikiem Anety (Tomasz2), a pracownicy Anety mają dostęp do systemu (Tomasz1). Tomasz moŝe tak stwierdzić, gdyŝ jest reprezentantem Anety (Anna2), a reprezentant Anety ma prawo delegowania jej uprawnień dostępu do systemu (Anna1). Ten prosty przykład pokazuje, iŝ pewne właściwości mogą wynikać z łańcucha róŝnych potwierdzonych informacji. W praktyce jednak zdecydowana większość uŝytkowników nie ma wystarczającej wiedzy, aby samodzielnie ocenić źródła, z których chcieliby skorzystać. W takim przypadku mogą oni polegać na ocenie źródeł danych przeprowadzonych przez niezaleŝne instytucje 13

24 Rozdział 2 Wiarygodność w Sieci Semantycznej (ekspertów). Oznacza to, Ŝe gdyby uŝytkownicy mieli zaufanie do tych instytucji (ekspertów), to mieliby równieŝ zaufanie do źródeł zgodne z ocenami przeprowadzonymi przez te podmioty. Zupełnie innym problemem pojawiającym się w Sieci jest transmisja danych. Wiarygodność transmisji oznacza w tym przypadku bezpieczeństwo przesyłanych danych niemoŝliwość podsłuchania i odczytania informacji przez osoby niepowołane (ang. privacy). Przykładem zastosowań, w których kwestia ta jest niezmiernie istotna, mogą być transakcje bankowe z uŝyciem kart płatniczych. Informacje przesyłane z terminala do operatora i z powrotem nie mogą się wydostać na zewnątrz. W tym aspekcie istnieją juŝ sprawdzone rozwiązania przykładowo szyfrowanie danych z uŝyciem kluczy cyfrowych, czy stosowanie dedykowanych łączy transmisyjnych. Są to jednak kwestie, które wykraczają poza zakres niniejszej rozprawy. RozwaŜając kwestie wiarygodności, nie moŝemy pominąć jeszcze jednej, nie mniej istotnej kwestii, która jest jednak rzadko podejmowana. Chodzi mianowicie o wiarygodność źródeł danych: jak bardzo moŝemy ufać zawartym w nich informacjom i co właściwie rozumiemy przez zaufanie do informacji. Jaki powinien być nasz stosunek do informacji publikowanych przez autorytety naukowe i ekspertów dziedzinowych, a jaki do informacji podawanej przez amatorów (rozumianych tutaj jako zwykłych uŝytkowników Sieci). I w jaki sposób naleŝy z tych informacji korzystać, aby wyciągnąć wiarygodne wnioski? Właśnie na próbie rozwiązania tego problemu skupia się niniejsza rozprawa Różne podejścia do wnioskowania w warunkach niepewności Wszędzie tam, gdzie pojawia się wiedza, pojawia się równieŝ (niestety) niepewność, ale niepewność w kontekście jednoznacznej rzeczywistości. Co rozumiemy przez jednoznaczną rzeczywistość? Pojęcie to oznacza, Ŝe istnieje poprawna odpowiedź na dowolne pytanie. PosłuŜmy się najprostszym przykładem. Przeanalizujmy pewien fragment rzeczywistości rodzinę. Wiemy, Ŝe członkiem tej rodziny jest Anna Kowalska. Chcemy wiedzieć, czy Anna Kowalska jest matką. Kiedy mówimy o jednoznaczności rzeczywistości, rozumiemy przez to, Ŝe Anna Kowalska jest matką lub nią nie jest, ale tylko jedna z tych moŝliwości jest prawdziwa. Stąd, jeśli mówimy o niepewności w kontekście jednoznacznej rzeczywistości, nigdy nie mówimy o niepewności wynikającej z niejednoznaczności świata. Nie pozostawiamy miejsca na opinie czy róŝne punkty widzenia. Rzeczywistość jest zawsze jednoznaczna. Niepewność rozumiemy zawsze jako brak pełnej wiedzy na zadany temat. W naszym przykładzie, jeśli nie moŝemy jednoznacznie stwierdzić, Ŝe Anna Kowalska jest matką lub nią nie jest, to mówimy właśnie o niepewności. Istnieją róŝne czynniki powodujące powstanie sytuacji niepewnych; naleŝą do nich: brak faktów umoŝliwiających wywiedzenie potrzebnej informacji, brak pewności co do poprawności modelu rzeczywistości, istnienie faktów, których prawdziwości nie jesteśmy pewni. Poza wymienionymi czynnikami powodującymi zaistnienie warunków niepewności, moŝemy mówić równieŝ niepewności jako nieprecyzyjności. Oznacza to, Ŝe same stwierdzenia dotyczące opisu rzeczywistości mogą nie być precyzyjne. Przykładowo: zdanie ten obraz jest lekko szary nie stwierdza jednoznacznie, czy obraz jest szary, czy teŝ nie, a jedynie mówi, Ŝe jest szary w pewnym stopniu (a ten stopień nie jest równieŝ dokładnie określony). Niepewność rozumiana jako nieprecyzyjność wykracza jednak poza zakres niniejszej rozprawy. 14

25 Wiarygodność w Sieci Semantycznej Rozdział 2 Pojawia się w tym miejscu pytanie, na podstawie jakich metryk moŝemy domniemywać prawdziwości modelowanej rzeczywistości i dostarczanych faktów? Podstawową metryką jest tutaj zaufanie. Według encyklopedii [Wiki1] zaufanie to wiara jednej strony w dobrą wolę strony drugiej, jej przekonanie zachowania polityki, nakazów moralnych, prawa i poprzednio złoŝonych obietnic. Definicję tę trudno jednak dopasować do świata komputerów czy moŝna bowiem mówić o intencjach komputerów, czy teŝ zachowaniu przez nie nakazów moralnych? MoŜna jednak zastosować tę definicję do ludzi obsługujących komputery i wprowadzających do nich dane, a przez to do samych danych w kontekście danych moŝemy przecieŝ mówić o zaufaniu do ich prawdziwości, rzetelności i kompletności. Z psychologicznego punktu widzenia, jeŝeli darzymy zaufaniem osobę, która utworzyła dane, to tym samym darzymy zaufaniem teŝ te dane. Jeśli natomiast autora danych nie jest osobą wiarygodną, to równieŝ do danych przez niego wprowadzonych naleŝy podejść z rozwagą. A co w przypadku, gdy autora danych nie znamy? Czy powinniśmy mieć do nich zaufanie, czy teŝ nie? W takiej sytuacji moŝemy skorzystać z opinii innych uŝytkowników, którzy albo znają autora, albo poddali weryfikacji rzetelność umieszczonych przez niego danych. Z drugiej strony co oznacza stwierdzenie: Mam zaufanie do Jana Kowalskiego? Czy znaczy to, Ŝe cokolwiek Jan Kowalski nie powie lub napisze, to będzie to dla nas tak samo wiarygodne? Czy moŝna mu zaufać zarówno, gdy wypowiada się na tematy dotyczące medycyny, jak i informatyki? W tym momencie pojawia się określenie kontekst wypowiedzi, który odróŝnia ogólne zaufanie do danego człowieka od zaufania w danym kontekście. Oznacza to, Ŝe gdy Jan Kowalski jest na przykład lekarzem (ale nie informatykiem), to w kwestiach (kontekście) dotyczących medycyny moŝe być dla nas wiarygodny, natomiast w kwestiach (kontekście) dotyczących informatyki i komputerów juŝ niekoniecznie (choć nie oznacza to, Ŝe nie moŝe, choć pewnie mniej). MoŜemy w naszej analizie pójść jeszcze dalej. ZałóŜmy, Ŝe Jan Kowalski, który ma wykształcenie (tylko) medyczne, jest dla nas człowiekiem ogólnie wiarygodnym. Co zatem powinien odpowiedzieć na pytanie dotyczące informatyki? JeŜeli sam ma zaufanie do własnej wiedzy informatycznej, to odpowie (prawdopodobnie) poprawnie. Jeśli natomiast nie ma do tej wiedzy zaufania, to odpowie (bo przecieŝ ogólnie jest godny zaufania): nie wiem, wydaje mi się, Ŝe, ale nie jestem tego pewien albo podobno, ale lepiej to jeszcze sprawdź. Pojawia się tutaj kwestia zaufania człowieka do swojej wiedzy, co jeszcze bardziej komplikuje problem zaufania. Jak więc rozumować w warunkach niepewności? W zasadniczej mierze zaleŝy to od czynników powodujących niepewność. Mówimy tu o rozumowaniu jako pojęciu ogólniejszym od pojęcia wnioskowania. Poprzez wnioskowanie rozumiemy proces odpowiedzi na zadane pytanie; rozumowanie natomiast oznacza dodatkowo zaplanowanie działania jako konsekwencji uzyskania tej odpowiedzi. W kolejnych sekcjach rozwaŝymy czynniki powodujące niepewność i sposoby rozumowania w warunkach istnienia tych czynników Rozumowanie w warunkach istnienia faktów, których zaistnienia nie jesteśmy pewni Kiedy mówimy o rozumowaniu w warunkach istnienia faktów, których zaistnienia nie jesteśmy pewni, odnosimy się w istocie do systemów probabilistycznych. W systemach logicznych, a w sposób szczególny w systemach regułowych, nie udało się opracować metody wnioskowania w warunkach niepewności zachowującej trzy podstawowe właściwości systemów regułowych: 15

26 Rozdział 2 Wiarygodność w Sieci Semantycznej Lokalność: Jeśli mamy daną regułę A fl B, to przy danej przesłance A moŝemy wywnioskować B, nie zwracając uwagi na inne reguły. Separacja: Jak tylko znaleziony został dowód logiczny stwierdzenia B, stwierdzenie to moŝna wykorzystywać bez względu na to, w jaki sposób zostało wywiedzione. Funkcyjność prawdy: Prawdziwość złoŝonych zdań moŝe zostać obliczona na podstawie prawdziwości składników. Podejmowane próby [DG92] skupiały się na propozycji dołączenia stopnia wiarygodności do stwierdzeń (inaczej: faktów) oraz opracowaniu czysto logicznych schematów łączenia i propagacji tych stopni wiarygodności. Rozpatrzmy dla przykładu rzut monetą. Niech zdarzenie O 1 oznacza wyrzucenie orła w pierwszym rzucie, R 1 wyrzucenie reszki w pierwszym rzucie, natomiast O 2 wyrzucenie orła w drugim rzucie. Prawdopodobieństwo wystąpienia kaŝdego z tych zdarzeń jest oczywiście równe 0,5, czyli system wykorzystujący funkcyjność prawdy musi przypisać takie same stopnie wiarygodności alternatywie kaŝdych dwóch zdarzeń. Widzimy jednak, Ŝe prawdopodobieństwo alternatyw zaleŝy nie tyle od prawdopodobieństwa zdarzeń, ale od samych zdarzeń: P( O 1 / O 1 ) = 0,5; P( O 1 / R 1 ) = 1; P( O 1 / O 2 ) = 0,75. Systemy probabilistyczne z załoŝenia nie spełniają cech lokalności, separacji i funkcyjności prawdy. W systemach probabilistycznych naleŝy wziąć pod uwagę wszystkie przesłanki (zaprzeczenie cechy lokalności). Dodatkowo źródło przesłanek ma waŝny wpływ na dalsze wnioskowanie (zaprzeczenie separacji). Zasadę funkcyjności prawdy w systemach probabilistycznych moŝna natomiast zastosować tylko przy silnym załoŝeniu ogólnej niezaleŝności. W ogólności poprzez wnioskowanie probabilistyczne rozumiemy obliczenie prawdopodobieństwa warunkowego prawdziwości stwierdzenia wypowiedzianego w pytaniu na podstawie zgromadzonych przesłanek. Systemy probabilistyczne modelują świat poprzez opisywanie zaleŝności pomiędzy zmiennymi. Strukturą danych umoŝliwiającą takie modelowanie świata są sieci Bayesa (ang. Bayesian network). Siecią Bayesa jest graf skierowany, w którym kaŝdemu wierzchołkowi przypisana jest informacja o prawdopodobieństwie [RN03] Rozumowanie przy braku faktów umożliwiających wywiedzenie potrzebnych informacji Kiedy odnosimy się do pojęcia wnioskowania w systemach reprezentacji wiedzy przy braku faktów umoŝliwiających wywiedzenie potrzebnej informacji, odwołujemy się w istocie do załoŝenia o świecie otwartym (ang. Open World Assumption - OWA) [BMNP03]. PosłuŜmy się przykładem ilustrującym to załoŝenie. ZałóŜmy, Ŝe mamy pewien zbiór faktów stwierdzających, Ŝe: Anna jest kobietą. Joanna jest kobietą. Anna jest matką Joanny. Przy takim zbiorze faktów zadajemy dwa pytania: Czy Joanna ma dzieci? i Czy Anna ma wyłącznie córki?. Na oba te pytania system reprezentacji wiedzy nie potrafi odpowiedzieć ani tak, ani nie. Sytuacja taka jest spowodowana brakiem faktów umoŝliwiających wywiedzenie potrzebnej informacji. W przeciwieństwie do systemów opartych na załoŝeniu o świecie otwartym systemy oparte na załoŝeniu o świecie zamkniętym (ang. Closed World Assumption CWA) [Rei78], takie jak np. systemy zarządzania bazami danych, na postawione pytania odpowiedziałyby odpowiednio: nie oraz tak. Wynika to z tego, 16

27 Wiarygodność w Sieci Semantycznej Rozdział 2 Ŝe w przypadku stosowania OWA zakłada się, Ŝe mogą istnieć pewne fakty, o których system nie wie. W przypadku stosowania CWA zakłada się, Ŝe wszystkie fakty są dostępne (zapisane w systemie). Jeśli jakiś fakt nie jest zapisany, oznacza to, Ŝe w rzeczywistości on nie zachodzi. D Odór Wiatr Sidła C Złoto Odór Wiatr Sidła Wiatr B Odór Wiatr A Start Wiatr Sidła Wiatr Rysunek 2.5. Klasyczny przykład Świata Wumpusa. Agent znajduje się w komnacie A1 [RN03] Agenty w Sieci Semantycznej równieŝ rozumują w świecie otwartym. Działają one w pewnym otoczeniu, zbierając fakty, a następnie, kiedy zbiorą ich wystarczająco duŝo, tworzą plany działania gwarantujące powodzenie. Niestety, agenty zazwyczaj nie mają dostępu do wszystkich faktów o swoim otoczeniu. W związku z tym muszą działać w warunkach niepewności [RN03]. Przykładem takiej sytuacji moŝe być znana gra komputerowa Polowanie na Wumpusa (ang. Hunt the Wumpus) [Yob79] [Wiki2], którą przedstawił w 1972 roku Gregory Yob, a która stała się klasycznym sposobem ilustracji konceptu myślących agentów. Polowanie odbywa się w tzw. Świecie Wumpusa, który jest zbiorem połączonych korytarzami komnat 5 (patrz rysunek 2.5). W jednej z komnat siedzi przyczajony Wumpus potwór, który zje kaŝdego, kto wkroczy do jego pokoju. Wumpus moŝe zostać zastrzelony przez agenta, jednak agent ma tylko jedną strzałę. W niektórych komnatach znajdują się sidła, które złapią kaŝdego, kto w nie wejdzie (oprócz samego Wumpusa, który jest zbyt duŝy, by w nie wpaść). Jedyną pobudką zachęcającą do przebywania w tym dziwnym świecie jest moŝliwość znalezienia góry złota. Na podstawie sytuacji panującej w danej komnacie agent musi określić swój kolejny ruch. I tak: Wiatr jest wyczuwalny w komnatach bezpośrednio przylegających do komnaty z sidłami, natomiast Odór jest wyczuwalny w komnatach bezpośrednio przylegających do komnaty z Wumpusem, jak równieŝ w jego komnacie. Agent oddaje strzał w wybranym kierunku; strzała leci przez wszystkie komnaty w tym kierunku i albo zabija Wumpusa, albo rozbija się o ścianę. Niepewność w tym przykładzie związana jest z niemoŝnością określenia pełnej sytuacji. Agent znajdujący się w Świecie Wumpusa posiada sensory, które podają jedynie informacje lokalne; większość świata nie jest od razu dostrzegalna. Agent często moŝe znaleźć się w sytuacji, w której nie będzie w stanie stwierdzić, w której z komnat znajdują się sidła (np. gdyby rozpoczynał wędrówkę w komnacie A2, musiałby rozwaŝyć istnienie sideł 5 W oryginalnej wersji [Yob79] kaŝda komnata była połączona korytarzami z trzema innymi komnatami tworząc labirynt w kształcie wierzchołków dwunastościanu foremnego. W celu czytelniejszego przedstawienia labiryntu przedstawiony został tutaj w uproszczonej formie. 17

28 Rozdział 2 Wiarygodność w Sieci Semantycznej w komnatach A1, B2 i A3 ). Jeśli komnaty te są na drodze do złota, agent moŝe zaryzykować i wybrać jedną z nich 6. Prawdziwy świat jest jednak duŝo bardziej skomplikowany niŝ świat Wumpusa, dlatego teŝ opracowanie kompletnego i poprawnego planu działania moŝe się okazać dla agenta niemoŝliwe. RozwaŜmy dla przykładu sytuację, w której agent chce zawieźć kogoś na lotnisko tak, aby zdąŝył na samolot. Rozpatruje plan działania A 90, który zakłada wyjazd z domu na 90 minut przed odlotem oraz jazdę z rozsądną prędkością. Mimo iŝ lotnisko znajduje się w odległości tylko 25 kilometrów, agent nie będzie mógł stwierdzić z całą pewnością, Ŝe Plan A 90 pozwoli dostać się na lotnisko w odpowiednim czasie. Zamiast tego moŝe dojść do słabszego wniosku: Plan A 90 pozwoli dostać się na lotnisko w odpowiednim czasie pod warunkiem, Ŝe nie zepsuje się samochód, nie zabraknie benzyny, nie będzie wypadku, samolot nie odleci wcześniej i. śadna z tych sytuacji nie moŝe zostać przewidziana, tak więc nie moŝna równieŝ wywnioskować powodzenia tego planu. Jeśli agent nie potrafi wywnioskować, który z jego planów zakończy się powodzeniem, to równieŝ nie będzie potrafił podjąć działania. W pewnym stopniu problemy niepewności moŝe przezwycięŝyć planowanie warunkowe. Warunkiem jest jednak, aby sensory agenta mogły odebrać właściwe informacje oraz aby róŝnych moŝliwości nie było zbyt duŝo. Innym rozwiązaniem jest równieŝ podanie agentowi prostych, lecz nie koniecznie poprawnych informacji na temat świata, które pozwolą na opracowanie planu. Taki plan będzie się sprawdzał w większości przypadków, jednak gdy zdarzenia będą sprzeczne z informacjami agenta, mogą pojawić się problemy. Co więcej, wywaŝenie między precyzją a uŝytecznością informacji przeznaczonej dla agenta samo w sobie moŝe okazać się wnioskowaniem w warunkach niepewności. Mówiąc krótko: Ŝaden agent działający tylko i wyłącznie zgodnie z logiką nie będzie w stanie stwierdzić, czy plan A 90 jest planem właściwym. Przyjmijmy jednak, Ŝe plan A 90 jest właściwy. Co właściwie oznacza to stwierdzenie? Oznacza ono, Ŝe ze wszystkich moŝliwych do wykonania planów A 90 jest planem, który przy zadanych informacjach o otoczeniu pozwala osiągnąć maksymalną produktywność (przez produktywność rozumiemy tutaj przybycie na lotnisko odpowiednio wcześnie przed odlotem samolotu, uniknięcie długiego i bezsensownego oczekiwania na lotnisku oraz uniknięcie mandatów za nadmierną prędkość na drodze do lotniska). KaŜdy inny plan wymusza albo szybszą jazdę, aby zdąŝyć na czas, przez co zwiększa się szansa na mandat, albo dłuŝsze oczekiwanie na odlot. Informacje, które posiada agent, nie są w stanie zagwarantować dla planu A 90 Ŝadnych z przytoczonych załoŝeń produktywności, jednak moŝna z pewnym stopniem wiarygodności (ang. degree of belief) załoŝyć, Ŝe zostaną osiągnięte. Inne plany, jak na przykład A 120, mogą zwiększyć wiarę agenta w powodzenie planu, jednak mogą równieŝ dać większą szansę spędzenia długiego czasu w poczekalni. Właściwe czynności do wykonania (czyli rozsądna decyzja) zaleŝą więc zarówno od waŝności poszczególnych celów, jak i szansy na ich osiągnięcie. O wnioskowaniu przy braku faktów umoŝliwiających wywiedzenie potrzebnej informacji mówimy równieŝ w przypadku systemów opartych na teorii Dempstera-Shafera [Demp68Błąd! Nie moŝna odnaleźć źródła odwołania.] [Shaf76]. W tej teorii, zamiast obliczania prawdopodobieństwa prawdziwości hipotezy, obliczane jest prawdopodobieństwo poparcia hipotezy dowodem. Ta miara wiarygodności hipotezy zwana jest funkcją wiarygodności i oznaczana przez Bel(X). 6 Oczywiście agent moŝe poszukać równieŝ innego rozwiązania na przykład wycofać się do komnaty, z której przyszedł, i wypróbować inną drogę w celu wyeliminowania niepewności. W przykładzie tym przyjęto jednak załoŝenie, Ŝe agent nie ma moŝliwości wycofywania się (np. jest to miejsce początku jego poszukiwań). 18

29 Wiarygodność w Sieci Semantycznej Rozdział 2 Jako przykład funkcji wiarygodności ponownie wykorzystamy rzut monetą. ZałóŜmy, Ŝe pewien ciemny charakter proponuje nam zakład o 100 złotych, Ŝe gdy on rzuci swoją monetą, to wypadnie reszka. Zakładając, Ŝe moneta moŝe lub nie być uczciwa, jaką wiarą naleŝy obdarzyć zdarzenie, Ŝe wypadnie reszka? Teoria Dempstera-Shafera mówi, Ŝe poniewaŝ nie mamy przesłanek za Ŝadną z moŝliwości, naleŝy przypisać Bel( Reszka ) = 0, jak równieŝ Bel( ŸReszka ) = 0. W tym przykładzie system wnioskujący oparty na tej teorii stosuje zgodne z intuicją podejście sceptyczne. ZałóŜmy teraz, Ŝe z jakichś przesłanek (np. opinia przypadkowo spotkanego niezaleŝnego eksperta) dowiadujemy się, Ŝe moneta jest w 90% uczciwa, tzn. Ŝe na 90% P( Reszka ) = 0,5. W takiej sytuacji, według teorii Dempstera-Shafera, otrzymamy Bel( Reszka ) = 0,9 0,5 = 0,45, jak równieŝ Bel( ŸReszka ) = 0,45. Nadal istnieje jednak 10-procentowa dziura niepokryta przez Ŝadną przesłankę. Tak jak dla normalnego wnioskowania, istnieje tutaj problem przełoŝenia wiarygodności na działanie. Korzystając z teorii prawdopodobieństwa: jeśli wiemy, Ŝe P( Reszka ) = P( ŸReszka ) = 0,5, to nie ma znaczenia, które działanie wybierzemy: czy zgodzimy się zagrać, czy nie. System wnioskujący oparty na teorii Dempstera-Shafera obliczy wartość funkcji wiarygodności Bel( Reszka ) = 0, więc nie ma Ŝadnych przesłanek, aby przyjąć zakład. Jednak takŝe Bel( ŸReszka ) = 0, więc takŝe nie ma Ŝadnego powodu, aby taki zakład odrzucić uzyskane wnioski są identyczne jak w przypadku prawdopodobieństwa. Teoria Dempstera-Shafera czasami nie daje jednak jednoznacznych wyników tam, gdzie takie wyniki daje zastosowanie teorii prawdopodobieństwa. Pewną interpretacją teorii Dempstera-Shafera jest to, Ŝe definiuje ona pewien interwał prawdopodobieństwa: przedział dla Reszki wynosi [0, 1] przed stwierdzeniami eksperta, natomiast [0,45; 0,55] po tych stwierdzeniach. Szerokość tego przedziału moŝe być pomocna przy podjęciu decyzji, czy wymagane są jeszcze dodatkowe przesłanki: wnioskujemy, Ŝe oświadczenie eksperta moŝe być pomocne, gdy nic nie wiemy o monecie, jednak nic nam nie da, jeśli wiemy, Ŝe moneta jest uczciwa Reprezentacja nieprecyzyjności: zbiory rozmyte i logika rozmyta Teoria zbiorów rozmytych jest sposobem wyraŝenia, w jakim stopniu dany obiekt pasuje do nieprecyzyjnej definicji. Przykładowo, rozwaŝmy stwierdzenie Anna jest wysoka. Czy jest ono prawdziwe, gdy Anna ma 175 cm wzrostu? Większość ludzi odpowie na to pytanie raczej tak, zamiast jednoznacznie stwierdzić tak lub nie. Warto zauwaŝyć, Ŝe nie jest to pytanie o niepewność dotyczącą świata zewnętrznego my mamy pewność co do wzrostu Anny. Problemem jest to, Ŝe określenie wysoki nie oznacza jednoznacznego podziału na dwie klasy ludzi wysokich i niewysokich. Występuje tutaj jedynie stopniowa przynaleŝność do kaŝdej z tych klas. Z tych teŝ powodów teoria zbiorów rozmytych nie moŝe zostać zaliczona do metod wnioskowania w warunkach niepewności. Przeciwnie, teoria ta traktuje klasę Wysoki jako stwierdzenie rozmyte, które mówi, Ŝe stopień prawdziwości stwierdzenia Wysoki(Anna) jest liczbą między 0 a 1, a nie po prostu Ŝe jest ono prawdą lub fałszem. Zastosowanie logiki rozmytej do zwiększenia ekspresywności logiki opisowej przedstawiono w sekcji Niepewność w systemach reprezentacji wiedzy opartych na logice opisowej Problem niepewności występuje takŝe w systemach reprezentacji wiedzy, których podstawą jest logika opisowa. Korzystając z logiki opisowej, której semantyka bazuje na 19

30 Rozdział 2 Wiarygodność w Sieci Semantycznej klasycznej logice pierwszego rzędu, nie potrafimy wyrazić wiedzy niepewnej, czy teŝ nie do końca sprecyzowanej. W celu pokonania tych słabości zaproponowano integrację logiki opisowej z logiką probabilistyczną (ang. probabilistic logic) i logiką rozmytą (ang. fuzzy logic). Probabilistyka zajmuje się niepewnością hipotez, natomiast logika rozmyta nieprecyzyjnością stwierdzeń. Mimo iŝ oba podejścia przypisują wystąpieniom w bazie wiedzy wartości liczbowe, róŝnią się nie tylko z technicznego punktu widzenia, ale równieŝ sposobu, w jaki postrzegają model. O niepewności mówimy, gdy mamy do czynienia ze stwierdzeniami, o których nie wiemy ani czy są prawdziwe, ani czy są fałszywe, jednak ze względu na brak wystarczającej wiedzy nie jesteśmy w stanie jednoznacznie stwierdzić, który przypadek zachodzi. Wypowiadamy się wtedy o prawdopodobieństwie, Ŝe dane stwierdzenie jest uwaŝane za prawdziwe. Z drugiej strony, nieprecyzyjność oznacza, Ŝe stwierdzenia są prawdziwe tylko w pewnym stopniu. Nie jest to spowodowane niepełną wiedzą, natomiast jest to wynikiem zastosowania pojęć rozmytych, czyli pojęć, których granice nie są precyzyjnie określone. W niniejszej sekcji zostaną pokrótce scharakteryzowane oba te rozszerzenia [BMNP03] Rozszerzenie logiki o elementy probabilistyki Klasyczna logika opisowa daje bardzo ograniczone moŝliwości wyraŝania (jak równieŝ sprawdzania) związków między konceptami. Dla danych dwóch konceptów C i D moŝemy sprawdzić zawieranie się (ang. subsumption), które określa, czy koncept C zawiera się w koncepcie D, oraz dokonać analizy spełnialności, która sprawdza, czy koncepty C i D są rozłączne (ang. disjoint). Wszystkie związki częściowe (jak np. 90% wystąpień konceptu C jest takŝe wystąpieniami konceptu D) nie mogą być ani wyraŝone, ani wywnioskowane. Sposób pokonania tej słabości przedstawiony został m.in. w [Hein94] [Jaeg94], gdzie dopuszczono uŝycie probabilistycznych aksjomatów terminologicznych. Aksjomat taki przyjmuje formę: P ( C D) = p (2.1) gdzie C i D są opisami konceptów, natomiast 0 p 1 jest liczbą rzeczywistą. Zapis ten oznacza, Ŝe prawdopodobieństwo warunkowe tego, Ŝe osobnik naleŝący do konceptu D naleŝy równieŝ do konceptu C, wynosi p. W ogólności, formalna semantyka rozszerzonego języka zdefiniowana jest w terminach miar prawdopodobieństwa na zbiorze wszystkich opisów konceptów. W [Jaeg94] przedstawione zostało równieŝ rozszerzenie formalizmu asercji poprzez wprowadzenie asercji probabilistycznych postaci: ( C( a) ) p P = (2.2) gdzie C jest opisem konceptu, a jest nazwą osobnika, natomiast 0 p 1 jest liczbą rzeczywistą. NaleŜy zaznaczyć, Ŝe ten rodzaj stwierdzeń probabilistycznych róŝni się od tych zdefiniowanych dla terminologii. Podczas gdy probabilistyczne aksjomaty terminologiczne oznaczają informację statystyczną, otrzymaną zazwyczaj na podstawie obserwacji duŝej liczby obiektów, asercje probabilistyczne wyraŝają stopień wiary w stwierdzenia dotyczące konkretnych osobników. Formalna semantyka asercji probabilistycznych, podobnie jak dla aksjomatów terminologicznych, zdefiniowana jest za pomocą miar prawdopodobieństwa na zbiorze wszystkich opisów konceptów, dla kaŝdej nazwy osobnika z osobna. Intuicyjnie, miara dla osobnika a oznacza dla kaŝdego konceptu C, jak bardzo prawdopodobne jest to, Ŝe a naleŝy do konceptu C. 20

31 Wiarygodność w Sieci Semantycznej Rozdział Rozszerzenie logiki o elementy logiki rozmytej W logice opisowej koncepty interpretowane są jako zbiory dyskretne, tzn. osobnik albo naleŝy do danego zbioru, albo nie. Jednak wiele konceptów istniejących w świecie nie jest jasno zdefiniowanych w tym sensie, iŝ nie mają precyzyjnie określonych kryteriów przynaleŝności. RozwaŜmy dla przykładu koncept wysoki człowiek. Nie ma sensu określanie ścisłej granicy wzrostu, powyŝej której człowiek jest wysoki, a poniŝej której nie jest. Gdzie naleŝałoby w takim przypadku zaklasyfikować człowieka, którego wzrost jest tylko o 1 milimetr mniejszy od tej granicy? Bardziej sensownym rozwiązaniem jest stwierdzenie, Ŝe dany osobnik naleŝy do konceptu wysoki człowiek tylko w pewnym stopniu α <0, 1>, który zaleŝy od wzrostu osobnika. Na tych przesłankach bazuje właśnie rozszerzenie oparte na logice rozmytej. Ogólną ideą zastosowania elementów logiki rozmytej w logice opisowej, zaproponowaną m.in. w [Yen91], [TM98], [Stra98], [Stra01], jest pozostawienie składni w niezmienionej formie, natomiast uŝycie zbiorów rozmytych do definicji semantyki. Zatem interpretacja przypisuje teraz konceptom i rolom zbiory rozmyte, tzn. nazwy konceptów A są A I : I 0,1, a nazwy ról R interpretowane jako funkcja stopnia przynaleŝności postaci [ ] I I I jako funkcja stopnia przynaleŝności postaci R : [ 0,1]. W związku z tym interpretacja operatorów boolowskich i kwantyfikatorów musi być rozszerzona z postaci dwuelementowego zbioru {0, 1} do postaci zbioru ciągłego <0, 1>. W kontekście rozszerzenia logiki opisowej o elementy logiki rozmytej moŝemy wskazać kilka typów problemów wnioskowania. W [Yen91] przedstawiony jest problem dyskretnego zawierania się konceptów rozmytych: mając dane dwa koncepty C, D zdefiniowane w rozmytej logice opisowej, sprawdź, czy I I C ( d ) D ( d ) dla kaŝdej I rozmytej interpretacji I i d. Zatem relacja zawierania się sama w sobie nie jest poddana rozmyciu. Z drugiej strony, w [TM98] podjęto problem rozmytego zawierania się rozmytych konceptów, czyli: mając dane dwa koncepty C, D, sprawdź, w jakim stopniu C jest podzbiorem D. W [MT00], [Stra98] i [Stra01] rozwaŝane są takŝe części asercjonalne ontologii: asercjom równieŝ przypisano stopień przynaleŝności. W tym kontekście interesuje nas stopień przynaleŝności osobników do konceptów we wnioskach wysnutych na podstawie opisu świata Podsumowanie Problem niepewności i zaufania do ontologii jest problemem niezwykle istotnym, szczególnie tam, gdzie wnioski z nich wysnuwane są krytyczne. Przedstawione w tym rozdziale rozwiązania stosują podejście numeryczne do problemu zaufania. Takie podejście przysparza mnóstwa problemów związanych z modelowaniem procesu przetwarzania zapytań, jak równieŝ z samą interpretacją uzyskanych wyników. TakŜe rozszerzenia logiki opisowej o elementy probabilistyki i logiki rozmytej, mimo iŝ znacznie zwiększają jej ekspresywność, nie mogą być bezpośrednio zastosowane w kontekście zaufania. Logika rozmyta jest uŝywana dla terminologii, w której koncepty nie mają ściśle określonych granic. W pracy przyjęto natomiast załoŝenie, Ŝe granice kaŝdego konceptu są ściśle określone, zaś zachowanie bazy wiedzy nie podlega zasadom prawdopodobieństwa. Problemy wynikające z zastosowania numerycznego podejścia do aspektu zaufania prezentują wyniki prac przedstawione m.in. w [GZ05a], [GZ05b] oraz [GZ06a]. Zaproponowane w nich rozwiązania bazują na tzw. kartograficznej metodzie reprezentacji wiedzy (opisanej m.in. w [Wal05], [GWZZ08] i [Wal08]). W podejściu tym zaleŝności 21

32 Rozdział 2 Wiarygodność w Sieci Semantycznej między konceptami w terminologii reprezentowane są w postaci mapy konceptów (stąd teŝ nazwa podejścia), którą moŝna przedstawić w formie podobnej do diagramów Venna. Na takiej mapie kaŝdy region atomowy (czyli taki, który nie zawiera Ŝadnych innych regionów) reprezentuje poprawne (czyli spełnialne w terminach ontologii) przecięcie konceptów bazowych wszystkie regiony atomowe, które nie są poprawne, są z mapy usuwane. Poszczególnym regionom atomowym nadawana jest liczba całkowita z przedziału [1, n] gdzie n jest liczbą poprawnych regionów atomowych. W ten sposób moŝemy reprezentować dowolny region na mapie przez ciąg binarny o długości n (zwany sygnaturą), z wartościami 1 na pozycjach odpowiadających regionom składowym i wartościami 0 na pozostałych pozycjach. PrzynaleŜność osobnika do danego regionu (czyli de facto do pewnego przecięcia konceptów) równieŝ reprezentowana jest sygnaturą, w której 1 oznacza moŝliwość przynaleŝności osobnika do danego regionu atomowego, zaś 0 oznacza brak przynaleŝności. W ten sposób, aby jednoznacznie określić przynaleŝność osobnika do pewnego przecięcia konceptów, jego sygnatura powinna zawierać dokładnie jedną 1. Podejścia numeryczne zaproponowane we wspomnianych pozycjach literatury przypisywały sygnaturom osobników nie konkretne wartości 0 lub 1, ale liczbę z przedziału [0..1], będącą miarą wiarygodności tego, Ŝe dany osobnik przynaleŝy do danego regionu atomowego. Mimo iŝ opisane metody pozwalały na doskonałą analizę róŝnych metod przetwarzania wiedzy, w praktyce samo przetwarzanie takich sygnatur oraz przede wszystkim interpretacja uzyskanych wyników przysparzała wielu problemów, tak Ŝe w efekcie podejścia te okazały się niepraktyczne. Niniejsza rozprawa przedstawia propozycję rozwiązania problemu zaufania w systemach reprezentacji wiedzy opartych na logice opisowej oraz rozumowania w warunkach niepełnego zaufania przy zastosowaniu sposobów reprezentacji zaufania innych niŝ czysto numeryczne. 22

33 Rozdział 3 Model systemu zarządzania wiedzą nie w pełni wiarygodną 3.1. Idea modelu systemu zarządzania wiedzą nie w pełni wiarygodną Dane dostarczane do systemów zarządzania wiedzą mogą być róŝnorakiego pochodzenia. Niektóre mogą pochodzić z baz danych lub baz wiedzy zaufanych instytucji, inne z baz niekoniecznie pewnych, a niektóre nawet ze stron WWW. W jaki sposób stwierdzić, które informacje są pewne, a które nie? Prowadzi to do postawienia pytania: jakie wymagania powinien spełniać system zarządzania wiedzą nie w pełni wiarygodną? Wspomnieliśmy przed chwilą, Ŝe dane mogą pochodzić z róŝnych źródeł. Tak więc powinna istnieć moŝliwość zdefiniowania stopnia zaufania dla kaŝdego z nich. Z drugiej jednak strony naleŝałoby zdefiniować zaufanie do danych nie tylko w odniesieniu do źródła jako całości, ale równieŝ w stosunku do samych stwierdzeń czy grup stwierdzeń w nich zawartych. Jednak największym problemem jest interpretacja zaufania kaŝdy człowiek moŝe rozumieć je na swój sposób. W podejściach numerycznych przedstawionych w poprzednim rozdziale przypisujemy pewne wartości numeryczne do konkretnych stwierdzeń. Przetwarzając te stwierdzenia, musimy wykonywać róŝne operacje arytmetyczne. Trudno w tym momencie stwierdzić, co tak faktycznie oznaczają owe wartości i jak interpretować operacje na nich. W przeciwieństwie do wspomnianych podejść przedstawiona w niniejszej rozprawie metoda stosuje zgoła odmienne rozwiązanie podejście nienumeryczne, lub inaczej: ontologiczne. Co to oznacza? W podejściu nienumerycznym, zamiast przypisywania stwierdzeniom wartości numerycznych, przypisywane są im pewne zbiory wartości cech [Zaw07]. Zgodnie z tą ideą, jeśli szukamy informacji, stosując konkretne kryteria wiarygodności, nie przeprowadzamy wnioskowania na pełnej wiedzy dziedzinowej, a tylko na pewnym jej podzbiorze zbiorze stwierdzeń, które spełniają nasze wymagania. Innymi słowy, ze wszystkich stwierdzeń zapisanych w bazie wiedzy wybieramy tylko te, których cechy spełniają nasze wymagania, i dopiero na tym podzbiorze przeprowadzamy wnioskowanie dziedzinowe. PosłuŜmy się kilkoma przykładami zapytań skierowanych do agentów w Sieci Semantycznej. 1) Podaj mi informacje o lekach, ale tylko takie, które pochodzą ze źródeł o stopniu zaufania 0,8 lub wyŝszym. 23

34 Rozdział 3 System zarządzania wiedzą nie w pełni wiarygodną 2) Podaj mi informacje o lekach, ale tylko takie, które mają certyfikat HON (Health on the Net Foundation) [HON08] i których aktualność została potwierdzona w 2008 roku. 3) Podaj mi informacje o lekach, ale tylko takie, które akceptuje mój lekarz rodzinny, lub takie, które mają certyfikat HON. Warto w tym miejscu zaznaczyć, Ŝe uŝyte w przykładach parametry liczbowe oznaczają wartość pewnej konkretnej cechy (a nie np. stopień wiarygodności) i równie dobrze mogłyby to być wartości tekstowe (np. wysoki zamiast 0,8 ). Wszystkie te zadania, z punktu widzenia agenta w Sieci Semantycznej, sprowadzają się do zbudowania odpowiedniego modelu dla ontologii leków. Dla kaŝdego z powyŝszych trzech zapytań koncepcyjnie agent budowałby model danej ontologii. 24 Rysunek 3.1. Przykładowe bazy wiedzy o lekach w Sieci Semantycznej Rysunek 3.1 przedstawia przykładowe bazy wiedzy o lekach w Sieci Semantycznej. Wszystkie te bazy wiedzy są opisane pewną terminologią leków T. Przez bazę wiedzy rozumiemy tutaj zbiór asercji binarnych i unarnych. Asercje te charakteryzują dodatkowo pewne cechy. Przykładowo: wiadomo, Ŝe do bazy wiedzy o lekach firmy AstraZeneca zostały wprowadzone asercje potwierdzone przez HON, a aktualność tych asercji została potwierdzona w roku 2006, 2007 lub W przypadku, kiedy agent otrzyma zapytanie z warunkami dotyczącymi wiarygodności, jakie musi spełniać dostarczona przez niego wiedza, tworzy dynamiczny model, w którym kaŝdemu konceptowi i kaŝdej roli przyporządkowane są takie relacje binarne i unarne, które spełniają określone warunki. Na rysunkach 3.2, 3.3 i 3.4 pokazane są te relacje, które znajdą się w takim modelu dynamicznym dla naszych przykładowych zapytań. I tak, dla pierwszego zapytania do modelu dynamicznego trafiają wszystkie asercje (rysunek 3.2), których stopień zaufania wynosi 0,8 lub więcej, czyli wszystkie asercje z pierwszego, drugiego i czwartego źródła (dla uproszczenia liczymy źródła w kolejności, w jakiej znajdują się na rysunku). Dla wykonania drugiego zapytania wybrane zostaną asercje (rysunek 3.3) posiadające certyfikat HON i aktualne w 2008 r., czyli asercje ze źródła pierwszego (ale tylko te aktualne w 2008 r.). Dla

35 System zarządzania wiedzą nie w pełni wiarygodną Rozdział 3 ostatniego zapytania asercjami źródłowymi będą asercje (rysunek 3.4) akceptowane przez danego lekarza rodzinnego lub posiadające certyfikat HON będą to wszystkie asercje z pierwszego i drugiego źródła oraz akceptowane asercje z trzeciego i czwartego źródła. Następnie do tak utworzonego modelu kierowane jest zapytanie dziedzinowe. Wyniki tego zapytania (uzyskane na podstawie danych spełniających nasze kryteria wiarygodności) zwracane są do klienta. Rysunek 3.2. Dynamicznie budowany model dla przykładowego zapytania 1 Rysunek 3.3. Dynamicznie budowany model dla przykładowego zapytania 2 25

36 Rozdział 3 System zarządzania wiedzą nie w pełni wiarygodną Rysunek 3.4. Dynamicznie budowany model dla przykładowego zapytania 3 W niniejszym rozdziale przedstawiony został formalnie model systemu zarządzania wiedzą oparty na opisywanej metodzie [GZZ08a], [GZZ08b], zaś kolejne dwa rozdziały opisują: proces wzbogacania źródeł wiedzy o informacje dotyczące wiarygodności asercji w tych źródłach zapisanych (rozdział 4), proces definiowania wymagań dotyczących wiarygodności asercji, na podstawie których wyszukiwana jest odpowiedź na zadane pytanie dziedzinowe (rozdział 5) Model zarządzania wiedzą nie w pełni wiarygodną Aby przedstawić formalny model, potrzebne jest wprowadzenie pewnych pojęć i definicji. Aby ułatwić Czytelnikowi ich zrozumienie, większość z nich została zilustrowana przykładami. Podstawowym pojęciem modelu jest ontologia: Definicja 3.1. Ontologia Niech A O = A O x A O s jest alfabetem, w którym będących nazwami konceptów, ról i atrybutów, a nazwami osobników. Niech A O x, zaś s i A O x jest alfabetem terminów A O s jest alfabetem terminów będących O x jest zbiorem aksjomatów wyraŝonych w terminach alfabetu A O s, przy czym O x O jest zbiorem asercji wyraŝonych w terminach alfabetu O s są wyraŝone w pewnej logice opisowej L O. Ontologią nazywamy parę O = O x, O s. 26

37 System zarządzania wiedzą nie w pełni wiarygodną Rozdział 3 Wyobraźmy sobie pewną ontologię O wyraŝoną w logice opisowej o ekspresywności języka ALC (na potrzeby dogłębnego wyjaśnienia zagadnienia ontologia ta musi być dość obszerna): L O Przykład 3.1. Ontologia leków Terminologia O x opisuje dziedzinę leków (koncept Lek). KaŜdy lek składa się z pewnych składników (koncept Składnik). Poprzez składniki leku rozumiemy pewną ilość substancji zawartej w leku wyraŝoną w pewnych jednostkach. Dlatego kaŝdy składnik ma pewną substancję (rola masubstancję, której zakresem jest koncept Substancja) o zadanej ilości (atrybut mailość). Ilość substancji jest wyraŝona w pewnych jednostkach (rola majednostkę, której zakresem jest koncept Jednostka). Dodatkowo, leki i substancje mogą wchodzić ze sobą w interakcję (rola mainterakcjęz). mainterakcjęz mainterakcjęz maskładnik Lek Składnik mailość majednostkę masubstancję Substancja Float Jednostka mainterakcjęz Terminologia O x w formalnym zapisie logiki opisowej ma postać: Lek + Składnik + Substancja + Jednostka Lek * Składnik Lek * Substancja Lek * Jednostka Składnik * Substancja Składnik * Jednostka Substancja * Jednostka mainterakcjęz. m Lek + Substancja mainterakcjęz. (Lek + Substancja) mailość.(0, ) m Składnik majednostkę. m Składnik majednostkę. Jednostka masubstancję. m Składnik masubstancję. Substancja maskładnik. m Lek maskładnik. Składnik 27

38 Rozdział 3 System zarządzania wiedzą nie w pełni wiarygodną Ontologia O składa się nie tylko z terminologii, ale równieŝ ze zbioru asercji O s (w przykładzie, dla przejrzystości, ograniczamy się jedynie do substancji aktywnych; interakcje między lekami i/lub substancjami są fikcyjne). Przykładowa ontologia składa się z czterech leków: Tritace, Witamina C, Folik, L-Karnityna. W skład tych leków wchodzą odpowiednio następujące składniki: ramipryl 5 mg, kwas askorbinowy 200 mg, kwas foliowy 0,4 mg oraz winian L-Karnityny 447 mg. Dla wszystkich tych składników jednostką są miligramy. Dodatkowo w ontologii podano, Ŝe w interakcję z kwasem foliowym wchodzą kwas askorbinowy, rampiryl i lek Tritace. Zbiór asercji O s w formalnym zapisie logiki opisowej wygląda następująco: Jednostka( mg ) Lek( Tritace ) Składnik( Rampiryl_5_mg ) Substancja( Ramipryl ) mailość( Rampiryl_5_mg, 5 ) majednostkę( Rampiryl_5_mg, mg ) masubstancję( Rampiryl_5_mg, Rampiryl ) maskładnik( Tritace, Ramipryl_5_mg ) Lek( Witamina_C ) Składnik( Kwas_askorbinowy_200_mg ) Substancja( Kwas_askorbinowy ) mailość( Kwas_askorbinowy_200_mg, 200 ) majednostkę( Kwas_askorbinowy_200_mg, mg ) masubstancję( Kwas_askorbinowy_200_mg, Kwas_askorbinowy ) maskładnik( Witamina_C, Kwas_askorbinowy_200_mg ) Lek( Folik ) Składnik( Kwas_foliowy_0.4_mg ) Substancja( Kwas_foliowy ) mailość( Kwas_foliowy_0.4_mg, 0.4 ) majednostkę( Kwas_foliowy_0.4_mg, mg ) masubstancję( Kwas_foliowy_0.4_mg, Kwas_foliowy ) maskładnik( Folik, Kwas_foliowy_0.4_mg ) Lek( L-Karnityna ) Składnik( Winian_L-Karnityny_447_mg ) Substancja( Winian_L-Karnityny ) mailość( Winian_L-Karnityny_447_mg, 0.4 ) majednostkę( Winian_L-Karnityny_447_mg, mg ) masubstancję( Winian_L-Karnityny_447_mg, Winian_L-Karnityny ) maskładnik( L-Karnityna, Winian_L-Karnityny_447_mg ) mainterakcjęz( Kwas_askorbinowy, Kwas_foliowy ) mainterakcjęz( Ramipryl, Kwas_foliowy ) mainterakcjęz( Tritace, Kwas_foliowy ) 28

39 System zarządzania wiedzą nie w pełni wiarygodną Rozdział 3 W powyŝszym przykładzie Lek, Składnik, Substancja i Jednostka to nazwy konceptów, zaś mailość, majednostkę, masubstancję, maskładnik i mainterakcję to nazwy ról razem tworzą alfabet A = { Lek, Składnik, Substancja, Jednostka, mailość, majednostkę, masubstancję, O x maskładnik, mainterakcję }. Nazwy osobników tworzą alfabet A O s = { mg, Tritace, Rampiryl_5_mg, Ramipryl, Witamina_C, Kwas_askorbinowy_200_mg, Kwas_askorbinowy, Folik, Kwas_foliowy_0.4_mg, Kwas_foliowy, L-Karnityna, Winian_L-Karnityny_447_mg, Winian_L- Karnityny }. Nazwy konceptów, ról, atrybutów i osobników tworzą alfabet A O. Pierwsza część przykładu to zbiór aksjomatów O x, natomiast druga to zbiór asercji O s. Kolejnym krokiem jest zdefiniowanie systemu zarządzania wiedzą nie w pełni wiarygodną: Definicja 3.2. System zarządzania wiedzą nie w pełni wiarygodną System zarządzania wiedzą nie w pełni wiarygodną W jest trójką postaci <D, T, M>, w której D jest ontologią dziedzinową, T jest ontologią wiarygodności, natomiast M jest odwzorowaniem pomiędzy zbiorem asercji zdefiniowanych w ontologii D a zbiorem nazw osobników zdefiniowanych w ontologii T. W tak zdefiniowanym systemie ontologia dziedzinowa to ontologia zgodna z definicją 3.1., przechowująca wiedzę na temat dziedziny zainteresowań (np. leki) moŝe być nią na przykład ontologia zdefiniowana w przykładzie 3.1. Oznaczana będzie dalej jako D = D x, D s. Ontologia wiarygodności to ontologia opisująca wiarygodność zdań ontologii dziedzinowej. Odwzorowanie łączy natomiast wiarygodność z wiedzą dziedzinową. Formalne definicje ontologii wiarygodności oraz odwzorowania M przedstawiono poniŝej: Definicja 3.3. Ontologia wiarygodności T T x, T Ontologią wiarygodności = s jest ontologia zgodna z definicją 3.1. Dodatkowo, w alfabecie A T x jest zawarty termin Asercje: Asercje A T x, co implikuje fakt, Ŝe do zbioru aksjomatów T x naleŝy aksjomat zawierania Asercje m. Zbiór asercji T s = T s 1 T s 2 składa się z dwóch zbiorów asercji. Zbiór T s 1 nie zawiera asercji unarnych postaci Asercje( i ) i jest niezaleŝny od ontologii dziedzinowej D (zawiera tylko asercje dotyczące cech wiarygodności i zaleŝności między nimi). Zbiór T to zbiór asercji zaleŝny od ontologii dziedzinowej D, czyli składający się z asercji Asercje( i 1 ), Asercje( i n ), gdzie n jest liczbą asercji w ontologii dziedzinowej D, oraz z asercji definiujących cechy osobników i 1, i n. s 2 Zgodnie z powyŝszą definicją, ontologię wiarygodności moŝemy widzieć jako trzy zbiory: zbiór T x opisujący terminologię oraz dwa zbiory T s 1 i T s 2 składające się na opis asercji T s = T s 1 T s 2. W przykładach poniŝej dokładnie wyjaśniamy definicję ontologii wiarygodności. Najpierw zdefiniujemy prostą terminologię wiarygodności: 29

40 Rozdział 3 System zarządzania wiedzą nie w pełni wiarygodną Przykład 3.2. Terminologia wiarygodności Asercje m mapoziomzaufania. m Asercje mapoziomzaufania.< 0 + mapoziomzaufania.> 1 mapotwierdzonąaktualność. m Asercje mapotwierdzonąaktualność.< mapotwierdzonąaktualność.> 2008 macertyfikat. m Asercje macertyfikat.ÿorgancertyfikujący akceptowanyprzez. m Asercje akceptowanyprzez.ÿlekarzrodzinny PowyŜsza terminologia definiuje cechy, jakie będzie moŝna przypisać asercjom z ontologii dziedzinowej. I tak moŝemy przypisać poziom zaufania jako liczbę z przedziału <0..1> i potwierdzić aktualność w latach od 1990 do MoŜemy równieŝ określić cechę posiadania certyfikatu wydanego przez jeden z Organów certyfikujących (zdefiniujemy je poniŝej), czy akceptację przez jednego z Lekarzy rodzinnych (równieŝ zdefiniowanych dalej). Oczywiście kaŝda asercja moŝe mieć przypisanych kilka róŝnych cech. W kolejnym kroku tworzymy zbiory organów certyfikujących i lekarzy rodzinnych. Tak zdefiniowany zbiór asercji to właśnie zbiór T niezaleŝny od ontologii dziedzinowej. s 1 Przykład 3.3. Asercje w ontologii wiarygodności zbiór T s 1 OrganCertyfikujący( HON ) OrganCertyfikujący( UCL ) LekarzRodzinny( Kowalski ) LekarzRodzinny( Nowak ) LekarzRodzinny( Wiśniewski ) Zbiór T s 2 budujemy w dwóch krokach. W pierwszym kroku do T s 2 wstawiamy asercje unarne postaci Asercje( i ), gdzie i oznacza pewnego osobnika. Liczba asercji unarnych takiego typu jest równa liczbie asercji zdefiniowanych w ontologii dziedzinowej. Definicja odwzorowania M (definicja 3.4) pokaŝe, Ŝe kaŝdy z dodanych osobników jednoznacznie odpowiada asercji z ontologii dziedzinowej D. Dlatego w naszym przykładzie dodawanym osobnikom nadaliśmy nazwy odpowiednie do asercji, którym odpowiadają: Przykład 3.4. Asercje w ontologii wiarygodności zbiór T s, część 1: definicje asercji 2 Asercje( Jednostka_mg ) Asercje( Lek_Tritace ) Asercje( Składnik_Rampiryl_5_mg ) Asercje( Substancja_Ramipryl ) Asercje( mailość_rampiryl_5_mg_5 ) 30

41 System zarządzania wiedzą nie w pełni wiarygodną Rozdział 3 Asercje( majednostkę_rampiryl_5_mg_mg ) Asercje( masubstancję_rampiryl_5_mg_rampiryl ) Asercje( maskładnik_tritace_ramipryl_5_mg ) Asercje( Lek_Witamina_C ) Asercje( Składnik_Kwas_askorbinowy_200_mg ) Asercje( Substancja_Kwas_askorbinowy ) Asercje( mailość_kwas_askorbinowy_200_mg_200 ) Asercje( majednostkę_kwas_askorbinowy_200_mg_mg ) Asercje( masubstancję_kwas_askorbinowy_200_mg_kwas_askorbinowy ) Asercje( maskładnik_witamina_c_kwas_askorbinowy_200_mg ) Asercje( Lek_Folik ) Asercje( Składnik_Kwas_foliowy_0_4_mg ) Asercje( Substancja_Kwas_foliowy ) Asercje( mailość_kwas_foliowy_0_4_mg_0_4 ) Asercje( majednostkę_kwas_foliowy_0_4_mg_mg ) Asercje( masubstancję_kwas_foliowy_0_4_mg_kwas_foliowy ) Asercje( maskładnik_folik_kwas_foliowy_0_4_mg ) Asercje( Lek_L-Karnityna ) Asercje( Składnik_Winian_L-Karnityny_447_mg ) Asercje( Substancja_Winian_L-Karnityny ) Asercje( mailość_winian_l-karnityny_447_mg_0_4 ) Asercje( majednostkę_winian_l-karnityny_447_mg_mg ) Asercje( masubstancję_winian_l-karnityny_447_mg_winian_l-karnityny ) Asercje( maskładnik_l-karnityna_winian_l-karnityny_447_mg ) Asercje( mainterakcjęz_kwas_askorbinowy_kwas_foliowy ) Asercje( mainterakcjęz_ramipryl_kwas_foliowy ) Asercje( mainterakcjęz_tritace_kwas_foliowy ) W drugim kroku osobnikom nadajemy cechy zdefiniowane w terminologii wiarygodności. I tak przyjmijmy, Ŝe asercje o leku Tritace i Witamina C zostały poddane certyfikacji przez HON i UCL, zaś informacje o leku Folik i L-Karnityna tylko przez UCL. Dodatkowo HON zatwierdził informacje o interakcjach. Wiemy równieŝ, Ŝe informacje o leku Witamina_C zostały potwierdzone przez dra Kowalskiego. Dr Wiśniewski potwierdził jedynie informacje dotyczące leku Tritace. Informacje o lekach są na poziomie zaufania 0,8, a informacje o interakcjach na poziomie zaufania 0,7 (wszystkie wartości mają charakter przykładowy i zostały nadane przez autora rozprawy). Przykład 3.5. Asercje w ontologii wiarygodności zbiór T s, część 2: cechy asercji 2 macertyfikat( Lek_Tritace, HON ) macertyfikat( Lek_Tritace, UCL ) macertyfikat( Składnik_Rampiryl_5_mg, HON ) macertyfikat( Składnik_Rampiryl_5_mg, UCL) macertyfikat( Substancja_Ramipryl, HON ) macertyfikat( Substancja_Ramipryl, UCL ) 31

42 Rozdział 3 System zarządzania wiedzą nie w pełni wiarygodną macertyfikat( mailość_rampiryl_5_mg_5, HON ) macertyfikat( mailość_rampiryl_5_mg_5, UCL ) macertyfikat( majednostkę_rampiryl_5_mg_mg, HON ) macertyfikat( majednostkę_rampiryl_5_mg_mg, UCL ) macertyfikat( masubstancję_rampiryl_5_mg_rampiry, HON ) macertyfikat( masubstancję_rampiryl_5_mg_rampiry, UCL ) macertyfikat( maskładnik_tritace_ramipryl_5_mg, HON ) macertyfikat( maskładnik_tritace_ramipryl_5_mg, UCL ) akceptowanyprzez( Lek_Tritace, Wiśniewski ) akceptowanyprzez( Składnik_Rampiryl_5_mg, Wiśniewski ) akceptowanyprzez( Substancja_Ramipryl, Wiśniewski ) akceptowanyprzez( mailość_rampiryl_5_mg_5, Wiśniewski ) akceptowanyprzez( majednostkę_rampiryl_5_mg_mg, Wiśniewski ) akceptowanyprzez( masubstancję_rampiryl_5_mg_rampiryl, Wiśniewski ) akceptowanyprzez( maskładnik_tritace_ramipryl_5_mg, Wiśniewski ) mapoziomzaufania( Lek_Tritace, 0.8 ) mapoziomzaufania( Składnik_Rampiryl_5_mg,0.8 ) mapoziomzaufania( Substancja_Ramipryl, 0.8 ) mapoziomzaufania( mailość_rampiryl_5_mg_5, 0.8 ) mapoziomzaufania( majednostkę_rampiryl_5_mg_mg, 0.8 ) mapoziomzaufania( masubstancję_rampiryl_5_mg_rampiryl, 0.8 ) mapoziomzaufania( maskładnik_tritace_ramipryl_5_mg, 0.8 ) macertyfikat( Lek_Witamina_C, HON ) macertyfikat( Lek_Witamina_C, UCL ) macertyfikat( Składnik_Kwas_askorbinowy_200_mg, HON ) macertyfikat( Składnik_Kwas_askorbinowy_200_mg, UCL ) macertyfikat( Substancja_Kwas_askorbinowy, HON ) macertyfikat( Substancja_Kwas_askorbinowy, UCL ) macertyfikat( mailość_kwas_askorbinowy_200_mg_200, HON ) macertyfikat( mailość_kwas_askorbinowy_200_mg_200, UCL ) macertyfikat( majednostkę_kwas_askorbinowy_200_mg_mg, HON ) macertyfikat( majednostkę_kwas_askorbinowy_200_mg_mg, UCL ) macertyfikat( masubstancję_kwas_askorbinowy_200_mg_kwas_askorbinowy, HON ) macertyfikat( masubstancję_kwas_askorbinowy_200_mg_kwas_askorbinowy, UCL ) macertyfikat( maskładnik_witamina_c_kwas_askorbinowy_200_mg, HON ) macertyfikat( maskładnik_witamina_c_kwas_askorbinowy_200_mg, UCL ) akceptowanyprzez( Lek_Witamina_C, Kowalski ) akceptowanyprzez( Składnik_Kwas_askorbinowy_200_mg, Kowalski ) akceptowanyprzez( Substancja_Kwas_askorbinowy, Kowalski ) akceptowanyprzez( mailość_kwas_askorbinowy_200_mg_200, Kowalski ) akceptowanyprzez( majednostkę_kwas_askorbinowy_200_mg_mg, Kowalski ) akceptowanyprzez( masubstancję_kwas_askorbinowy_200_mg_kwas_askorbinowy, Kowalski ) akceptowanyprzez( maskładnik_witamina_c_kwas_askorbinowy_200_mg, Kowalski ) mapoziomzaufania( Lek_Witamina_C, 0.8 ) mapoziomzaufania( Składnik_Kwas_askorbinowy_200_mg, 0.8 ) mapoziomzaufania( Substancja_Kwas_askorbinowy, 0.8 ) mapoziomzaufania( mailość_kwas_askorbinowy_200_mg_200, 0.8 ) 32

43 System zarządzania wiedzą nie w pełni wiarygodną Rozdział 3 mapoziomzaufania( majednostkę_kwas_askorbinowy_200_mg_mg, 0.8 ) mapoziomzaufania( masubstancję_kwas_askorbinowy_200_mg_kwas_askorbinowy, 0.8 ) mapoziomzaufania( maskładnik_witamina_c_kwas_askorbinowy_200_mg, 0.8 ) macertyfikat( Lek_Folik, UCL ) macertyfikat( Składnik_Kwas_foliowy_0_4_mg, UCL ) macertyfikat( Substancja_Kwas_foliowy, UCL ) macertyfikat( mailość_kwas_foliowy_0_4_mg_0_4, UCL ) macertyfikat( majednostkę_kwas_foliowy_0_4_mg_mg, UCL ) macertyfikat( masubstancję_kwas_foliowy_0_4_mg_kwas_foliowy, UCL ) macertyfikat( maskładnik_folik_kwas_foliowy_0_4_mg, UCL ) mapoziomzaufania( Lek_Folik, 0.8 ) mapoziomzaufania( Składnik_Kwas_foliowy_0_4_mg, 0.8 ) mapoziomzaufania( Substancja_Kwas_foliowy, 0.8 ) mapoziomzaufania( mailość_kwas_foliowy_0_4_mg_0_4, 0.8 ) mapoziomzaufania( majednostkę_kwas_foliowy_0_4_mg_mg, 0.8 ) mapoziomzaufania( masubstancję_kwas_foliowy_0_4_mg_kwas_foliowy, 0.8 ) mapoziomzaufania( maskładnik_folik_kwas_foliowy_0_4_mg, 0.8 ) macertyfikat( Lek_L-Karnityna, UCL ) macertyfikat( Składnik_Winian_L-Karnityny_447_mg, UCL ) macertyfikat( Substancja_Winian_L-Karnityny, UCL ) macertyfikat( mailość_winian_l-karnityny_447_mg_0_4, UCL ) macertyfikat( majednostkę_winian_l-karnityny_447_mg_mg, UCL ) macertyfikat( masubstancję_winian_l-karnityny_447_mg_winian_l-karnityny, UCL ) macertyfikat( maskładnik_l-karnityna_winian_l-karnityny_447_mg, UCL ) mapoziomzaufania( Lek_L-Karnityna, 0.8 ) mapoziomzaufania( Składnik_Winian_L-Karnityny_447_mg, 0.8 ) mapoziomzaufania( Substancja_Winian_L-Karnityny, 0.8 ) mapoziomzaufania( mailość_winian_l-karnityny_447_mg_0_4, 0.8 ) mapoziomzaufania( majednostkę_winian_l-karnityny_447_mg_mg, 0.8 ) mapoziomzaufania( masubstancję_winian_l-karnityny_447_mg_winian_l-karnityny, 0.8 ) mapoziomzaufania( maskładnik_l-karnityna_winian_l-karnityny_447_mg, 0.8 ) macertyfikat( mainterakcjęz_kwas_askorbinowy_kwas_foliowy, HON ) macertyfikat( mainterakcjęz_ramipryl_kwas_foliowy, HON ) macertyfikat( mainterakcjęz_tritace_kwas_foliowy, HON ) mapoziomzaufania( mainterakcjęz_kwas_askorbinowy_kwas_foliowy, 0.7 ) mapoziomzaufania( mainterakcjęz_ramipryl_kwas_foliowy, 0.7 ) mapoziomzaufania( mainterakcjęz_tritace_kwas_foliowy, 0.7 ) Warto przypomnieć, Ŝe parametry liczbowe uŝyte w przykładowych asercjach (np. mapoziomzaufania( Lek_Tritace, 0.8 )) oznaczają pewne wartości cech (tutaj wartość cechy mapoziomzaufania jest równa 0.8, tak samo jak HON jest wartością cechy macertyfikat w asercji macertyfikat( Lek_Witamina_C, HON )) i nie naleŝy ich mylić z numerycznym opisem wiarygodności. W kolejnym kroku zdefiniujemy odwzorowanie M: 33

44 Rozdział 3 System zarządzania wiedzą nie w pełni wiarygodną Definicja 3.4. Odwzorowanie M Odwzorowanie M: D s A T s jest to pewna injekcja pomiędzy zbiorem asercji D s zdefiniowanych w ontologii dziedzinowej D a zbiorem nazw osobników zdefiniowanych w ontologii wiarygodności T z uŝyciem alfabetu A. Odwzorowanie M ma takie własności, Ŝe dla kaŝdego modelu J dla T: d ((d D s ) (M(d) J Asercje J )), a ((a J Asercje J ) (M -1 (a) D s )). T s W naszym przykładzie odwzorowanie M wygląda następująco: Przykład 3.6. Odwzorowanie M M(Jednostka( mg )) = Jednostka_mg M(Lek( Tritace )) = Lek_Tritace M(Składnik( Rampiryl_5_mg )) = Składnik_Rampiryl_5_mg M(Substancja( Ramipryl )) = Substancja_Ramipryl M(maIlość( Rampiryl_5_mg, 5 )) = mailość_rampiryl_5_mg_5 M(maJednostkę( Rampiryl_5_mg, mg )) = majednostkę_rampiryl_5_mg_mg M(maSubstancję( Rampiryl_5_mg, Rampiryl )) = masubstancję_rampiryl_5_mg_rampiryl M(maSkładnik( Tritace, Ramipryl_5_mg )) = maskładnik_tritace_ramipryl_5_mg M(Lek( Witamina_C )) = Lek_Witamina_C M(Składnik( Kwas_askorbinowy_200_mg ) ) = Składnik_Kwas_askorbinowy_200_mg M(Substancja( Kwas_askorbinowy )) = Substancja_Kwas_askorbinowy M(maIlość( Kwas_askorbinowy_200_mg, 200 )) = mailość_kwas_askorbinowy_200_mg_200 M(maJednostkę( Kwas_askorbinowy_200_mg, mg )) = majednostkę_kwas_askorbinowy_200_mg_mg M(maSubstancję( Kwas_askorbinowy_200_mg, Kwas_askorbinowy )) = masubstancję_kwas_askorbinowy_200_mg_kwas_askorbinowy M(maSkładnik( Witamina_C, Kwas_askorbinowy_200_mg )) = maskładnik_witamina_c_kwas_askorbinowy_200_mg M(Lek( Folik )) = Lek_Folik M(Składnik( Kwas_foliowy_0.4_mg )) = Składnik_Kwas_foliowy_0_4_mg M(Substancja( Kwas_foliowy )) = Substancja_Kwas_foliowy M(maIlość( Kwas_foliowy_0.4_mg, 0.4 )) = mailość_kwas_foliowy_0_4_mg_0_4 M(maJednostkę( Kwas_foliowy_0.4_mg, mg )) = majednostkę_kwas_foliowy_0_4_mg_mg M(maSubstancję( Kwas_foliowy_0.4_mg, Kwas_foliowy )) = masubstancję_kwas_foliowy_0_4_mg_kwas_foliowy M(maSkładnik( Folik, Kwas_foliowy_0.4_mg )) = maskładnik_folik_kwas_foliowy_0_4_mg M(Lek( L-Karnityna )) = Lek_L-Karnityna M(Składnik( Winian_L-Karnityny_447_mg )) = Składnik_Winian_L-Karnityny_447_mg M(Substancja( Winian_L-Karnityny )) = Substancja_Winian_L-Karnityny M(maIlość( Winian_L-Karnityny_447_mg, 0.4 )) = 34

45 System zarządzania wiedzą nie w pełni wiarygodną Rozdział 3 mailość_winian_l-karnityny_447_mg_0_4 M(maJednostkę( Winian_L-Karnityny_447_mg, mg )) = majednostkę_winian_l-karnityny_447_mg_mg M(maSubstancję( Winian_L-Karnityny_447_mg, Winian_L-Karnityny )) = masubstancję_winian_l-karnityny_447_mg_winian_l-karnityny M(maSkładnik( L-Karnityna, Winian_L-Karnityny_447_mg )) = maskładnik_l-karnityna_winian_l-karnityny_447_mg M(maInterakcjęZ( Kwas_askorbinowy, Kwas_foliowy )) = mainterakcjęz_kwas_askorbinowy_kwas_foliowy M(maInterakcjęZ( Ramipryl, Kwas_foliowy )) = mainterakcjęz_ramipryl_kwas_foliowy M(maInterakcjęZ( Tritace, Kwas_foliowy )) = mainterakcjęz_tritace_kwas_foliowy Teraz moŝemy zdefiniować model systemu zarządzania wiedzą nie w pełni wiarygodną: Definicja 3.5. Model systemu zarządzania wiedzą nie w pełni wiarygodną Niech ontologia T = T x, T s jest ontologią wyraŝoną w pewnej logice opisowej L T, natomiast A T = A T x A T s jest alfabetem terminów zdefiniowanych w ontologii wiarygodności T, w którym A T' x = A T x {PodzbiórAsercji} i T x zawiera aksjomat PodzbiórAsercji m Asercje. Zdefiniujmy ponadto: (i) S J = {J: J jest modelem T }, (ii) D s ( J ) = {o s : o s = M -1 (a) a J PodzbiórAsercji J }, (iii) S = D ( J ) J S, { } D s : s (iv) S N = { N = D x, D s : D s S D i s J A N = A D x A D s jest alfabetem, w którym jest wyraŝona ontologia N, przy czym A D s zawiera zbiór terminów będących nazwami osobników pojawiających się w zbiorze asercji D s, a N jest wyraŝona w logice opisowej L D }. Interpretacja I jest modelem W, jeśli jest modelem pewnej ontologii N S N. W punkcie (i) powyŝszej definicji przez S J oznaczamy zbiór wszystkich interpretacji J takich, Ŝe J jest modelem ontologii T, czyli ontologii wiarygodności wzbogaconej o aksjomat dzielący osobniki będące reifikacją asercji dziedzinowych na dwa podzbiory. W terminach interpretacji oznacza to wszystkie moŝliwe przyporządkowania osobników reifikujących asercje (będących wystąpieniami konceptu Asercje) do zbiorów PodzbiórAsercji J i (ŸPodzbiórAsercji Asercje) J. Przez D s ( J ) w punkcie (ii) oznaczamy dla danej interpretacji J zbiór osobników będących reifikacją asercji, naleŝących do zbioru PodzbiórAsercji J (czyli interesuje nas tutaj tylko pewien podzbiór osobników ze zbioru Asercje). Punkt (iii) definiuje zbiór zawierający wszystkie moŝliwe podzbiory zbioru 35

46 Rozdział 3 System zarządzania wiedzą nie w pełni wiarygodną osobników reifikujących asercje dziedzinowe. W punkcie (iv) budowane są nowe ontologie dziedzinowe róŝniące się między sobą tylko opisem świata. Opis świata dla kaŝdej takiej ontologii składa się z pewnego podzbioru asercji dziedzinowych równemu asercjom odpowiadającym osobnikom będących wystąpieniami konceptu PodzbiórAsercji. W ten sposób uzyskujemy zbiór nowych ontologii dziedzinowych, z których kaŝda składa się z innego zbioru asercji dziedzinowych, a ponadto cały zbiór ontologii dziedzinowych pokrywa wszystkie moŝliwe do utworzenia opisy świata. Zdefiniujmy w naszym przykładzie terminologię T x. Jest to terminologia wiarygodności (przykład 3.2) wzbogacona o aksjomat PodzbiórAsercji m Asercje: Przykład 3.7. Terminologia wiarygodności Asercje m mapoziomzaufania. m Asercje T x mapoziomzaufania.< 0 + mapoziomzaufania.> 1 mapotwierdzonąaktualność. m Asercje mapotwierdzonąaktualność.< mapotwierdzonąaktualność.> 2008 macertyfikat. m Asercje macertyfikat.ÿorgancertyfikujący akceptowanyprzez. m Asercje akceptowanyprzez.ÿlekarzrodzinny PodzbiórAsercji m Asercje Zbiór asercji T s pozostaje bez zmian (czyli jest złoŝeniem zbiorów asercji z przykładów 3.3, 3.4 i 3.5). MoŜemy zauwaŝyć, Ŝe istnieją róŝne modele ontologii T. Przede wszystkim naleŝy zwrócić uwagę na to, Ŝe kaŝdy osobnik będący wystąpieniem konceptu Asercje w jednym modelu moŝe być zarazem wystąpieniem konceptu PodzbiórAsercji, a w innym modelu nie. Rozpatrzmy przykładowe modele ontologii T : J 1 i J 2. ZałóŜmy, Ŝe w modelu J 1 do konceptu PodzbiórAsercji naleŝą tylko asercje dotyczące leku Tritace, natomiast w modelu J 2 tylko asercje dotyczące leku Witamina_C. PoniŜej zapisano to przy uŝyciu logiki opisowej: Przykład 3.8. Przykładowe modele ontologii T : J 1 i J 2 J 1: Lek_Tritace PodzbiórAsercji J Składnik_Rampiryl_5_mg PodzbiórAsercji Substancja_Ramipryl PodzbiórAsercji mailość_rampiryl_5_mg_5 PodzbiórAsercji majednostkę_rampiryl_5_mg_mg PodzbiórAsercji masubstancję_rampiryl_5_mg_rampiryl PodzbiórAsercji maskładnik_tritace_ramipryl_5_mg PodzbiórAsercji mainterakcjęz_tritace_kwas_foliowy PodzbiórAsercji 2 : Lek_Witamina_C PodzbiórAsercji 36

47 System zarządzania wiedzą nie w pełni wiarygodną Rozdział 3 Składnik_Kwas_askorbinowy_200_mg PodzbiórAsercji Substancja_Kwas_askorbinowy PodzbiórAsercji mailość_kwas_askorbinowy_200_mg_200 PodzbiórAsercji majednostkę_kwas_askorbinowy_200_mg_mg PodzbiórAsercji masubstancję_kwas_askorbinowy_200_mg_kwas_askorbinowy PodzbiórAsercji maskładnik_witamina_c_kwas_askorbinowy_200_mg PodzbiórAsercji Oba przykładowe modele naleŝą do zbioru S J. Wiemy zatem, Ŝe D s ( J 1 ) = { Lek( Tritace ), Składnik( Rampiryl_5_mg ), Substancja( Ramipryl ), mailość( Rampiryl_5_mg, 5 ), majednostkę( Rampiryl_5_mg, mg ), masubstancję( Rampiryl_5_mg, Rampiryl ), maskładnik( Tritace, Ramipryl_5_mg ), mainterakcjęz( Tritace, Kwas_foliowy )} i D s ( J 2 ) = { Lek( Witamina_C ) Składnik( Kwas_askorbinowy_200_mg ) D s ( J 1 ) i ( J 2 ) ontologie: N D D ( ) postać: Substancja( Kwas_askorbinowy ) mailość( Kwas_askorbinowy_200_mg, 200 ) majednostkę( Kwas_askorbinowy_200_mg, mg ) masubstancję( Kwas_askorbinowy_200_mg, Kwas_askorbinowy ) maskładnik( Witamina_C, Kwas_askorbinowy_200_mg )}. D s naleŝą do zbioru = i N ( ) 1, s J 1 x S D s. W następnym kroku utworzymy dwie 2 = D x, D s J 2. Ontologia N 1 ma następującą Przykład 3.9. Ontologia N 1 D x : Lek + Składnik + Substancja + Jednostka Lek * Składnik Lek * Substancja Lek * Jednostka Składnik * Substancja Składnik * Jednostka Substancja * Jednostka mainterakcjęz. m Lek + Substancja mainterakcjęz. (Lek + Substancja) m mailość.(0, ) m Składnik majednostkę. m Składnik majednostkę. Jednostka m masubstancję. m Składnik masubstancję. Substancja m 37

48 Rozdział 3 System zarządzania wiedzą nie w pełni wiarygodną maskładnik. m Lek maskładnik. Składnik m D s : Lek( Tritace ) Składnik( Rampiryl_5_mg ) Substancja( Ramipryl ) mailość( Rampiryl_5_mg, 5 ) majednostkę( Rampiryl_5_mg, mg ) masubstancję( Rampiryl_5_mg, Rampiryl ) maskładnik( Tritace, Ramipryl_5_mg ) mainterakcjęz( Tritace, Kwas_foliowy ) Ontologia N 2 ma natomiast postać: Przykład Ontologia N 2 D x : Lek + Składnik + Substancja + Jednostka Lek * Składnik Lek * Substancja Lek * Jednostka Składnik * Substancja Składnik * Jednostka Substancja * Jednostka mainterakcjęz. m Lek + Substancja mainterakcjęz. (Lek + Substancja) m mailość.(0, ) m Składnik majednostkę. m Składnik majednostkę. Jednostka m masubstancję. m Składnik masubstancję. Substancja m maskładnik. m Lek maskładnik. Składnik m D s : Lek( Witamina_C ) Składnik( Kwas_askorbinowy_200_mg ) Substancja( Kwas_askorbinowy ) mailość( Kwas_askorbinowy_200_mg, 200 ) majednostkę( Kwas_askorbinowy_200_mg, mg ) masubstancję( Kwas_askorbinowy_200_mg, Kwas_askorbinowy ) maskładnik( Witamina_C, Kwas_askorbinowy_200_mg ) Modelem systemu zarządzania wiedzą nie w pełni wiarygodną jest dowolna interpretacja będąca modelem pewnej ontologii ze zbioru S. W naszym przykładzie, poza wieloma innymi ontologiami, do zbioru S N naleŝą ontologie N 1 i N 2. Wynika stąd, Ŝe N 38

49 System zarządzania wiedzą nie w pełni wiarygodną Rozdział 3 kaŝda interpretacja I będąca modelem ontologii N 1 jest równieŝ modelem systemu zarządzania wiedzą na róŝnym poziomie wiarygodności W. Oczywiście równieŝ kaŝda interpretacja I będąca modelem ontologii N 2 jest modelem W. Definicja 3.6. Semantyka systemu zarządzania wiedzą nie w pełni wiarygodną Semantykę systemu zarządzania wiedzą nie w pełni wiarygodną sem(w) zdefiniujemy jako: sem(w) = {I: I jest modelem W }. A więc przez semantykę systemu zarządzania wiedzą nie w pełni wiarygodną rozumiemy zbiór interpretacji będących modelami tego systemu Zapytania do systemu zarządzania wiedzą nie w pełni wiarygodną W systemach zarządzania wiedzą występują dwa typy zapytań: zapytania dotyczące tylko części terminologicznej ontologii, do których naleŝą zapytania dotyczące problemów zawierania, spełnialności, równowaŝności i rozłączności; zapytania dotyczące osobników, do których naleŝą zapytania dotyczące problemów określenia zbioru wystąpień konceptów i sprawdzania przynaleŝności. W systemie zarządzania wiedzą nie w pełni wiarygodną rozwaŝamy jedynie zapytania dotyczące osobników. Zapytania dotyczące terminologii są identyczne, jak w systemie zarządzania wiedzą nie odnoszącym się do problemu wiarygodności wiedzy. Zdefiniujmy język zapytań Q O na alfabecie A O = A O x A O s terminów zdefiniowanych w ontologii O. Język zapytań Q O składa się z dwóch zbiorów zapytań Q O1 i Q O2 równieŝ na alfabecie A O : Q O = Q O Q 1 O. Zapytania q 2 1 zdefiniowane w języku Q O1 mają na celu wydobycie zbioru krotek złoŝonych z elementów A O s (przykładem takiego zapytania jest zapytanie o wystąpienia roli R wydobywające zbiór krotek dwuelementowych). Dlatego teŝ kaŝde takie zapytanie ma określoną krotność n, co zapisujemy jako q 1 {n}. Dla uproszczenia zapisu kolejnych definicji wprowadzimy dwa skrócone zapisy: I MD( O ) oznaczający, Ŝe interpretacja I jest modelem ontologii O (ten sam zapis wykorzystujemy do wyraŝenia, Ŝe I jest modelem pewnej asercji o s : I r q { } I MD( o s )), oraz zapis 1 n oznaczający wynik zapytania q 1 {n} w modelu I. Znaczenie zapytania q 1 {n} jest zdefiniowane następująco: Definicja 3.7. Znaczenie zapytania w języku zapytań Odpowiedź O r q { } O r q { } Q O1 1 n na zapytanie q 1 {n} dla ontologii O jest zbiorem krotek: 1 n = {<a 1,, a n >: I MD( O ) (<a 1,, a n > I r q { } 1 n )} 39

50 Rozdział 3 System zarządzania wiedzą nie w pełni wiarygodną Aby przybliŝyć pojęcie znaczenia zapytania q 1 {n}, przyjmijmy, Ŝe istnieje pewna ontologia R: Przykład Przykładowa ontologia R Chłopiec m MęŜczyzna Chłopiec(Krzysztof) Chłopiec(Paweł) MęŜczyzna(Piotr) Zadajemy przykładowe zapytanie o krotności 1 o wystąpienia konceptu Chłopiec: q 1 {1}. Wiemy, Ŝe istnieje pewien model I 1 MD( R ), w którym Piotr jest MęŜczyzną, ale nie jest Chłopcem. Istnieje równieŝ inny model I 2 MD( R ), w którym Piotr jest Chłopcem. Jednak I MD( R ) Krzysztof i Paweł są chłopcami. Stąd <Piotr> r 1 i <Piotr> r 2. Dlatego q { I 1 1} R r q1 {1 } = {<Krzysztof>, <Paweł>}. q { I 1 1} Definicja 3.8. Poprawność (ang. soundness) odpowiedzi na zapytania w języku zapytań Odpowiedź O r q { } <a 1,, a n > (<a 1,, a n > Q O1 1 n na zapytanie q 1 {n} dla ontologii O jest poprawna, jeśli: O r q { } 1 n I MD( O ) (<a 1,, a n > I r q { } 1 n )) Odpowiedź na zapytanie jest poprawna, jeŝeli kaŝda krotka zawarta w odpowiedzi na O r q { } zapytanie 1 n jest równieŝ zawarta we wszystkich odpowiedziach r q1{ n } dla I MD( O ). W naszym przykładzie, gdyby <Piotr> został zwrócony w odpowiedzi R r q1 {1 }, to odpowiedź ta nie byłaby poprawna, poniewaŝ I 2 MD( R ) (<Piotr> r 2 ). q1 { 1} I I Definicja 3.9. Kompletność (ang. completeness) odpowiedzi na zapytania w języku zapytań Odpowiedź O r q { } 1 n na zapytanie q 1 {n} dla ontologii O jest kompletna, jeśli: <a 1,, a n > I MD( O ) (<a 1,, a n > I r q { } 1 n <a 1,, a n > Q O1 O r q1{ n } ) Odpowiedź na zapytanie jest kompletna, jeŝeli odpowiedź O r q { } krotki <a 1,,a n >, dla których prawdą jest, Ŝe I MD( O ) (<a 1,, a n > 1 n zawiera wszystkie I r q { } 1 n ). JeŜeli 40

51 System zarządzania wiedzą nie w pełni wiarygodną Rozdział 3 dla naszego przykładowego zapytania odpowiedzią byłoby R r q1 {1 } = {<Krzysztof>}, to odpowiedź ta byłaby poprawna, ale nie kompletna, poniewaŝ I MD( R ) (<Paweł> I r q1 {1 } ). Zapytania zdefiniowane w języku Q O2 mają na celu sprawdzenie, czy dla kaŝdego modelu I ontologii O I jest modelem zadanej w zapytaniu asercji. W definicjach poniŝej przyjęto, Ŝe o s oznacza dowolną asercję będącą argumentem zapytania q 2 wyraŝoną w terminach alfabetu A. O Definicja Znaczenie zapytania w języku zapytań Odpowiedź q O Q O2 r 2 na zapytanie q 2 dla ontologii O jest jedną z trzech wartości: true : I MD( O ) (I MD( os )) O false : I MD( O ) (I MD( o rq = s )) 2 maybe : I 1 MD( O ) (I 1 MD( o s )) I 2 MD( O ), I 2 I 1 (I 2 MD( o s )) Względem naszej przykładowej ontologii R zadajmy dwa zapytania q 2 (Chłopiec(Piotr)) oraz q 2 (Chłopiec(Krzysztof)), w których o s jest odpowiednio równe Chłopiec(Piotr) i Chłopiec(Krzysztof). Rozpatrzmy najpierw pierwsze z zapytań. Odpowiedź na to zapytanie jest maybe, poniewaŝ I 1 jest modelem ontologii R, w którym I 1 nie jest modelem asercji Chłopiec(Piotr), a I 2 jest modelem ontologii R, w którym I 2 jest modelem asercji Chłopiec(Piotr). Dla zapytania drugiego odpowiedź jest true, poniewaŝ I MD( R ) I jest modelem asercji Chłopiec(Krzysztof). W przypadku zapytań w języku Q O2 mówimy jedynie o ich poprawności. Kompletność dotyczy sytuacji, w której odpowiedzią na zapytanie jest pewien zbiór, tak jak w przypadku zapytań w języku Q O1. Definicja Poprawność (ang. soundness) odpowiedzi na zapytania w języku zapytań Q O2 Odpowiedź O r 2 na zapytanie q 2 dla ontologii O jest poprawna, jeśli: q O r 2 = true I MD( O ) (I MD( o s )) q O r 2 = false I MD( O ) (I MD( o s )) q O r 2 = maybe I 1 MD( O ) (I 1 MD( o s )) q I 2 MD( O ), I 2 I 1 (I 2 MD( o s )) 41

52 Rozdział 3 System zarządzania wiedzą nie w pełni wiarygodną W omawianym przykładzie, jeśli dla zapytania q 2 (Chłopiec(Piotr)) byłaby zwrócona odpowiedź inna niŝ maybe, to taka odpowiedź nie byłaby poprawna. Nie jest bowiem prawdą, Ŝe I MD( R ) I jest modelem asercji Chłopiec(Piotr), na co kontrprzykładem jest model I 1. Nie jest równieŝ prawdą, Ŝe I MD( R ) I nie jest modelem asercji Chłopiec(Piotr), na co kontrprzykładem jest model I 2. Zapytanie q 1 moŝe mieć krotność 1 lub 2. Do pytań o krotności 1 naleŝą zapytania o zbiór wystąpień konceptu, zbiór podmiotów roli i zbiór dopełnień roli. Pytanie o krotności 2 to zapytanie o zbiór wystąpień roli. W dalszej części zdefiniujemy powyŝsze pytania. Zapytanie q instances jest zapytaniem o listę wystąpień konceptu. Argumentem zapytania q instances jest koncept atomowy lub złoŝony C. Definicja Zapytanie q instances O r q ( ) Odpowiedź instances C na zapytanie q instances (C) dla ontologii O jest zbiorem jednoelementowych krotek, których elementami są nazwy osobników: O r q ( ) instances C = {<a>: a A O s I MD( O ) (a I C I )}. Definicja zapytania q instances zawęŝa definicję 3.7 w taki sposób, Ŝe: 1) ustala krotność zapytania na n = 1, 2) określa znaczenie odpowiedzi na zapytanie q instances (C) w modelu I jako zbiór wystąpień konceptu C w tym modelu. Przykładem zapytania q instances dla ontologii R jest wcześniej wspomniane zapytanie o wystąpienia konceptu Chłopiec, które moŝemy zapisać jako q instances (Chłopiec). Zapytanie q rolesubjects jest zapytaniem o podmioty roli. Argumentami zapytania q rolesubjects są rola atomowa lub złoŝona R oraz nazwa osobnika a będącego dopełnieniem roli R. Definicja Zapytanie q rolesubjcects Odpowiedź O r q ( R, a) na zapytanie q rolesubjects (R, a) dla ontologii O jest zbiorem rolesubjects jednoelementowych krotek, których elementami są nazwy osobników: O r q ( R, a) = {<b>: b rolesubjects A O s I MD( O ) ((b I, a I ) R I )}. Definicja zapytania q rolesubjects zawęŝa definicję 3.7 w taki sposób, Ŝe: 1) ustala krotność zapytania na n = 1, 2) określa znaczenie odpowiedzi na zapytanie q rolesubjects (R, a) w modelu I jako zbiór nazw osobników pozostających w relacji R (jako podmioty roli) z osobnikiem a w tym modelu. Rozszerzmy omawiany przykład o nową asercję binarną: 42

53 System zarządzania wiedzą nie w pełni wiarygodną Rozdział 3 jestojcem(piotr, Krzysztof) W takiej sytuacji przykładem zapytania q rolesubjects dla ontologii R jest zapytanie q rolesubjects (jestojcem, Krzysztof), a odpowiedzią na to zapytanie jest krotka <Piotr>. Zapytanie q rolefillers jest zapytaniem o dopełnienie roli. Argumentami zapytania q rolefillers są rola atomowa lub złoŝona R oraz nazwa osobnika a, będącego podmiotem roli R. Definicja Zapytanie q rolefillers O r q (, a) Odpowiedź rolefillers R na zapytanie q rolefillers (R, a) dla ontologii O jest zbiorem jednoelementowych krotek, których elementami są nazwy osobników: O r q (, a) rolefillers R = {<b>: b A O s I MD( O ) (a I, b I ) R I }. Definicja zapytania q rolefillers jest analogiczna do definicji q rolesubjects. RóŜnica polega na tym, Ŝe zapytanie q rolefillers definiuje znaczenie odpowiedzi na zapytanie q rolefillers (R, a) w modelu I jako zbiór nazw osobników pozostających w relacji R (tym razem jako dopełnienia, a nie podmioty, roli) z osobnikiem a w tym modelu. Dla omawianej ontologii R przykładem zapytania q rolefillers jest zapytanie q rolefillers (jestojcem, Piotr), a odpowiedzią na to zapytanie jest krotka <Krzysztof>. Do pytań o krotności 2 naleŝy zapytanie o zbiór wystąpień roli: q relatedindividuals. Argumentem zapytania q relatedindividuals jest rola atomowa lub złoŝona R. Definicja Zapytanie q relatedindividuals O Odpowiedź r q relatedindividuals ( R ) na zapytanie q relatedindividuals (R) dla ontologii O jest zbiorem krotek dwuelementowych, których elementami są nazwy osobników: O r q relatedindividuals ( R ) = {<a, b>: a A O s b A O s I MD( O ) ((a I, b I ) R I )}. Definicja zapytania q relatedindividuals zawęŝa definicję 3.7 w taki sposób, Ŝe: 1) ustala krotność zapytania na n = 2, 2) określa znaczenie odpowiedzi na zapytanie q relatedindividuals (R) w modelu I jako zbiór wystąpień roli R w tym modelu. Dla omawianej ontologii R przykładem zapytania q relatedindividuals jest zapytanie q relatedindividuals (jestojcem), a odpowiedzią na to zapytanie jest krotka dwuelementowa <Piotr, Krzysztof>. Zapytania zdefiniowane w języku 2 O Q sprawdzają przynaleŝność osobnika o zadanej nazwie do konceptu C lub sprawdzają, czy dwa osobniki o podanych nazwach są powiązane rolą R. Zapytanie sprawdzające przynaleŝność osobnika do konceptu to zapytanie q instance, 43

54 Rozdział 3 System zarządzania wiedzą nie w pełni wiarygodną którego argumentem jest asercja unarna postaci C(a), gdzie C jest konceptem atomowym lub złoŝonym, natomiast a jest nazwą osobnika. Definicja Zapytanie q instance Odpowiedź wartości: O r q ( ( a)) instance C na zapytanie q instance (C(a)) dla ontologii O jest jedną z trzech true : I MD( O ) a I C I, false : I MD( O ) a I ( C) I, O rq ( ( )) = ins tan ce C a I maybe : I 1 MD( O ) 1 I a C 1 I I 2 MD( O ), I 2 I 2 1 I. a ( C) 2 Definicja zapytania q instance zawęŝa definicję 3.10 w taki sposób Ŝe jednoznacznie definiuje typ asercji o s jako asercję unarną postaci C(a). Dla ontologii R wcześniej omawiane zapytania: q 2 (Chłopiec(Piotr)) = q instance (Chłopiec(Piotr)), q 2 (Chłopiec(Krzysztof)) = q instance (Chłopiec(Krzysztof)) są przykładami zapytań q instance. Zapytanie sprawdzające, czy dwa osobniki o podanych nazwach są powiązane rolą R, to zapytanie q roleinstance, którego argumentem jest asercja binarna postaci R(a, b), gdzie R jest rolą atomową lub złoŝoną, natomiast a i b są nazwami osobników. Definicja Zapytanie q roleinstance Odpowiedź z trzech wartości: O r q roleinstance ( ( a, b)) R na zapytanie q roleinstance (R(a, b)) dla ontologii O jest jedną true : I MD( O ) <a I, b I > R I, O false : I MD( O ) <a I, b I > ( R) I, rq ( (, )) = roleins tan ce R a b I maybe : I 1 MD( O ) < 1 I a, 1 I b > R 1 I I 2 MD( O ), I 2 I 1 < a 2 I, 2 I. b > ( R) 2 Definicja zapytania q roleinstance zawęŝa definicję 3.10 w taki sposób, Ŝe jednoznacznie definiuje typ asercji o s jako asercję binarną postaci R(a, b). Dla ontologii R przykładem takiego zapytania jest q roleinstance (jestojcem(piotr, Krzysztof)). Odpowiedzią na to zapytanie jest true. Po zdefiniowaniu języka zapytań Q O zdefiniujmy język zapytań S W do systemu zarządzania wiedzą nie w pełni wiarygodną. Język zapytań S W = < Q D, Q T 1{1 } > jest określony na alfabecie A W = A D A T terminów zdefiniowanych w ontologiach D i T. 44

55 System zarządzania wiedzą nie w pełni wiarygodną Rozdział 3 Poprzez język Q T 1{1 } rozumiemy język zapytań będący podzbiorem języka zapytań Q T 1 zawierającym zapytania o krotności 1. Analogicznie jak w przypadku języka zapytań Q O, język zapytań ma dwie składowe S W = S W1 S W 2. Zdefiniujmy T R q1 {1 T } = {a: <a> r q1 {1 } } jako zbiór nazw osobników zawartych w odpowiedzi na T zapytanie q 1 {1}. Wtedy D s = {o s : a (a R q1 {1 } o s = M -1 (a))}. W ten sposób moŝemy zdefiniować ontologię N = D x, D s na alfabecie A N. Przykład Ontologia N Wyobraźmy sobie pewne zapytanie q 1 {1} skierowane do ontologii wiarygodności T (przykłady 3.2, 3.3, 3.4, 3.5). Niech q 1 {1} = q instances ( akceptowanyprzez.{kowalski}). Wówczas: T r qinstances ( akceptowanyprzez.{ Kowalski}) = {<Lek_Witamina_C>, <Składnik_Kwas_askorbinowy_200_mg>, <Substancja_Kwas_askorbinowy>, <mailość_kwas_askorbinowy_200_mg_200>, <majednostkę_kwas_askorbinowy_200_mg_mg>, <masubstancję_kwas_askorbinowy_200_mg_kwas_askorbinowy>, <maskładnik_witamina_c_kwas_askorbinowy_200_mg>}. Zbiór T R q instances ( akceptowanyprzez.{ Kowalski}) = {Lek_Witamina_C, Składnik_Kwas_askorbinowy_200_mg, Substancja_Kwas_askorbinowy, mailość_kwas_askorbinowy_200_mg_200, majednostkę_kwas_askorbinowy_200_mg_mg, masubstancję_kwas_askorbinowy_200_mg_kwas_askorbinowy, maskładnik_witamina_c_kwas_askorbinowy_200_mg}. T Zdefiniujmy D s = {o s : a (a R q instances ( akceptowanprzez.{ Kowalski}) o s = M -1 (a))}. Tak więc D s = { Lek( Witamina_C ) Składnik( Kwas_askorbinowy_200_mg ) Substancja( Kwas_askorbinowy ) mailość( Kwas_askorbinowy_200_mg, 200 ) majednostkę( Kwas_askorbinowy_200_mg, mg ) masubstancję( Kwas_askorbinowy_200_mg, Kwas_askorbinowy ) maskładnik( Witamina_C, Kwas_askorbinowy_200_mg )} W ten sposób moŝemy zdefiniować pewną ontologię N. ZauwaŜamy, Ŝe N=N 2 z przykładu T W kolejnych definicjach zakładamy, Ŝe D s = {o s : a (a R q } o s = M -1 (a))} przy T R q 1 {1 } = {a: <a> T r q1 {1 } } oraz N D x D s =,. 1 {1 Zapytania zdefiniowane w języku S W1, analogicznie jak w przypadku Q O1, mają na celu wydobycie zbioru krotek. W przypadku Q O1 są to krotki złoŝone z elementów dziedziny ontologii O, zaś w przypadku S W1 krotki złoŝone z elementów dziedziny ontologii N. 45

56 Rozdział 3 System zarządzania wiedzą nie w pełni wiarygodną Dlatego kaŝde zapytanie ze zbioru S W1 ma określoną krotność (tak jak kaŝde zapytanie ze zbioru Q O1). Znaczenie zapytania s 1 S W1 o krotności n (zapisane jako s 1 {n}) jest zdefiniowane następująco: Definicja Znaczenie zapytania w języku zapytań Odpowiedź W r { } a q 1 {1} Q T 1{1 } W r { } 1 n S W1 s 1 n na zapytanie s 1 {n} = <p 1, q 1 {1}> dla W, gdzie p 1 Q D1,, jest zbiorem krotek: s = {<a 1,, a n >: Z sem(w), Z MD(N) (<a 1,, a n > p Z r 1 )} Dla przykładowego systemu zarządzania wiedzą nie w pełni wiarygodną W = <D,T,M> (patrz definicja 3.2) zbudujmy zapytanie: s 1 {1} = < p instances (Lek), q instances ( akceptowanyprzez.{kowalski})>, gdzie p 1 = p instances (Lek), q 1 {1} = q instances ( akceptowanyprzez.{kowalski}). Intuicyjne znaczenie tego zapytania jest następujące: Podaj wszystkie osobniki naleŝące do konceptu Lek, ale tylko te, których przynaleŝność do tego konceptu została wywnioskowana na podstawie asercji akceptowanych przez dra Kowalskiego. Wiemy juŝ, Ŝe dla tak sformułowanego zapytania ontologia N = N 2 (patrz przykład 3.12). Stąd W r 1 {1 } s = {<Witamina_C>}. Zdefiniujemy poprawność i kompletność odpowiedzi na zapytanie w języku S W1: Definicja Poprawność (ang. soundness) odpowiedzi na zapytania w języku zapytań Odpowiedź W r { } 1 n S W1 s na zapytanie s 1 {n} = <p 1, q 1 {1}> dla W jest poprawna, jeśli: <a 1,, a n > (<a 1,, a n > W r { } s Z sem(w), Z MD(N) 1 n (<a 1,, a n > p Z r 1 )) Poprawność odpowiedzi na zapytanie w języku zapytań S W1 jest zdefiniowana analogicznie jak w przypadku zapytania z języka Q O1. Odpowiedź W r { } zarządzania wiedzą nie w pełni wiarygodną jest poprawna, jeśli odpowiedź poprawna. s systemu 1 n N r p 1 jest 46

57 System zarządzania wiedzą nie w pełni wiarygodną Rozdział 3 Definicja Kompletność (ang. completeness) odpowiedzi na zapytania w języku zapytań S W1 Odpowiedź W r { } s na zapytanie s 1 {n} = <p 1, q 1 {1}> dla W jest kompletna, jeśli: 1 n <a 1,, a n > Z sem(w), Z MD(N) (<a 1,, a n > Z r p 1 <a 1,, a n > W r 1{ n } s )) Analogicznie jak w przypadku poprawności tak i w przypadku kompletności odpowiedź s { n} W systemu zarządzania wiedzą nie w pełni wiarygodną jest kompletna, r 1 jeśli odpowiedź N rp 1 jest kompletna. Zapytania zdefiniowane w języku S W2 sprawdzają przynaleŝność osobnika o zadanej nazwie do konceptu C w ontologii N lub sprawdzają, czy dwa osobniki o podanych nazwach są powiązane rolą R w ontologii N. W poniŝszych definicjach przez os rozumiemy dowolną asercję będącą argumentem zapytania p2 wyraŝoną w terminach alfabetu A. N Definicja Znaczenie zapytania w języku zapytań S W2 Odpowiedź s W r 2 na zapytanie s 2 = <p 2, q 1 {1}> dla W jest jedną z trzech wartości: true : Z sem(w), Z MD(N) (Z MD(os)) W false : Z sem(w), Z MD(N) (Z MD(o rs = s )) 2 maybe : Z 1 sem(w), Z 1 MD(N) (Z 1 MD(o s )) Z 2 sem(w), Z 2 MD(N), Z 2 Z 1, Z 2 MD(o s ) Przykładem zapytania w języku zapytań S W2 jest: s 2 = <p instance (Lek(Witamina_C)), q instances ( akceptowanyprzez.{kowalski})>, gdzie p 1 = p instance (Lek(Witamina_C)), q 1 {1} = q instances ( akceptowanyprzez.{kowalski}). Intuicyjine znaczenie tego zapytania jest następujące: Czy na podstawie asercji akceptowanych przez dra Kowalskiego moŝna dowieść, Ŝe Witamina_C jest lekiem?. Wiemy juŝ, Ŝe dla tak sformułowanego zapytania, tak jak w przypadku zapytania s 1 {n}, ontologia N=N 2. Stąd W r s 2 = true. Tak jak w przypadku zapytań w języku mówimy jedynie o ich poprawności. Q, tak i dla zapytań w języku S W2 O 2 47

58 Rozdział 3 System zarządzania wiedzą nie w pełni wiarygodną Definicja Poprawność (ang. soundness) odpowiedzi na zapytania w języku zapytań S W2 Odpowiedź W r s2 na zapytanie s 2 = <p 2, q 1 {1}> dla W jest poprawna jeśli: r s2 W = true Z sem(w), Z MD(N) (Z MD(o s )) r s2 W = false Z sem(w), Z MD(N) (Z MD(o s )) W r s2 = maybe Z 1 sem(w), Z 1 MD(N) (Z 1 MD(o s )) Z 2 sem(w), Z 2 MD(N), Z 2 Z 1, (Z 2 MD(o s )) Analogicznie jak w języku zapytań Q O tak i w języku W S moŝemy wyróŝnić zapytania s instances, s rolesubjects, s rolefillers, s relatedindividuals naleŝące do alfabetu S W1 oraz zapytania s instance i s roleinstance naleŝące do alfabetu S W2. Ich znaczenie zostało podane w poniŝszych definicjach. Definicje s instances, s rolesubjects, s rolefillers, s relatedindividuals zawęŝają definicję 3.19 poprzez zawęŝenie dopuszczalnych rodzajów zapytań p1: w przypadku zapytania s instances zapytanie p 1 = p instances, w przypadku zapytania s rolesubjects zapytanie p 1 = p rolesubject, w przypadku zapytania s rolefillers zapytanie p 1 = p rolefillers, w przypadku zapytania s relatedindividuals zapytanie p 1 = p relatedindividuals. Definicje s instance i s roleinstance zawęŝają definicję 3.21 równieŝ poprzez zawęŝenie dopuszczalnych rodzajów zapytań p 2 : w przypadku zapytania s instance zapytanie p 2 = p instance, w przypadku zapytania s roleinstance zapytanie p 2 = p roleinstance. Definicja Zapytanie s instances W r s ( ) Odpowiedź instances C na zapytanie s instances (C) = <p instances (C), q 1 {1}> dla W jest zbiorem jednoelementowych krotek, których elementami są nazwy osobników: W r s ( ) instances C = {<a>: a A Z sem(w), Z MD(N) (a Z C Z )}. D s Przykładem zapytania s instances jest zapytanie: s 2 = <p instance (Lek(Witamina_C)), q instances ( potwierdzonyprzez.{kowalski})> opisane powyŝej. W analogiczny sposób moŝna podać przykłady zapytań s rolesubjects, s rolefillers, s relatedindividuals, s instance, s roleinstance : s rolesubjects = <p rolesubjects (masubstancję,kwas_askorbinowy), q instances ( potwierdzonyprzez.{kowalski})>, 48

59 System zarządzania wiedzą nie w pełni wiarygodną Rozdział 3 s rolefillers = <p rolefillers (masubstancję, Kwas_askorbinowy_200_mg), q instances ( potwierdzonyprzez.{kowalski})>, s relatedindividuals = <p rolefillers (masubstancję), q instances ( potwierdzonyprzez.{kowalski})>, s instance = <p instance (Lek(Witamina_C)), q instances ( potwierdzonyprzez.{kowalski})>, s roleinstance = <p roleinstance (masubstancję(kwas_askorbinowy_200_mg, Kwas_askorbinowy )), q instances ( potwierdzonyprzez.{kowalski})>. Definicja Zapytanie s rolesubjcects Odpowiedź W r s ( R, a) na zapytanie s rolesubjects (R, a) dla W jest zbiorem rolesubjects jednoelementowych krotek, których elementami są nazwy osobników: W r s ( R, a) = {<b>: b rolesubjects A D s Z sem(w), Z MD(N) ((b Z, a Z ) R Z )}. Definicja Zapytanie s rolefillers W r s, a) Odpowiedź rolefillers ( R na zapytanie s rolefillers (R, a) dla W jest zbiorem jednoelementowych krotek, których elementami są nazwy osobników: W r s, a) rolefillers ( R = {<b>: b A D s Z sem(w), Z MD(N) ((b Z, a Z ) R Z )}. Definicja Zapytanie s relatedindividuals Odpowiedź W r s ) relatedindividuals ( R na zapytanie s relatedindividuals (R) dla W jest zbiorem krotek dwuelementowych, których elementami są nazwy osobników: W r s ) relatedindividuals ( R = {<a,b>: a A D s b A D s Z sem(w), Z MD(N) ((b Z, a Z ) R Z )}. Definicja Zapytanie s instance Odpowiedź W r s ( ( a)) instance C na zapytanie s instance (C(a)) dla W jest jedną z trzech wartości: true : Z sem(w), Z MD(N) (a Z C Z ), false : Z sem(w), Z MD(N) (a Z ( C) Z ), W rs ( ( )) = ins tan ce C a Z maybe : Z 1 sem(w), Z 1 MD(N) ( 1 Z a C 1 ) Z Z 2 sem(w), Z 2 MD(N), Z 2 Z 1 ( a 2 Z C 2 ) 49

60 Rozdział 3 System zarządzania wiedzą nie w pełni wiarygodną Definicja Zapytanie s roleinstance Odpowiedź wartości: W r s ( a, b)) roleinstance ( R na zapytanie s roleinstance (R(a, b)) dla W jest jedną z trzech true : Z sem(w), Z MD(N) (<a Z, b Z > R Z ), false : Z sem(w), Z MD(N) ( <a Z, b Z > ( R) Z ), O maybe : Z 1 sem(w), rs ( (, )) = roleins tan ce R a b Z Z 1 MD(N) ( < 1 Z a, 1 Z b > R 1 ) Z 2 sem(w), Z 2 MD(N), Z 2 Z 1, Z (< a 2 Z, b 2 Z > R 2 ) 3.4. Podsumowanie W tym rozdziale zaprezentowano model systemu zarządzania wiedzą nie w pełni wiarygodną. Warto zauwaŝyć, Ŝe zaprezentowane rozwiązanie zakłada wybranie fragmentu ontologii spełniającego kryteria wiarygodności i dopiero na nim przeprowadzenie wnioskowania dziedzinowego. Jest to podejście zdecydowanie róŝne od podejścia numerycznego przedstawionego w rozdziale drugim, jak równieŝ m.in. w [GZ05a] i [GZ05b], [GZ06a] w praktyce uniemoŝliwiającego efektywne wnioskowanie na duŝej liczbie osobników z powodu skomplikowanych, czasochłonnych obliczeń zarówno podczas wprowadzania kaŝdej asercji, jak równieŝ podczas udzielania odpowiedzi. NaleŜy podkreślić, Ŝe zaprezentowany model i metody przetwarzania zapytań są uniwersalne nie ograniczają się jedynie do systemów stosujących określoną metodę wnioskowania lub reprezentacji wiedzy. Z powodzeniem moŝna zastosować przedstawione tu rozwiązania dla dowolnego systemu zarządzania wiedzą opartego na ontologach i logice opisowej. Warto teŝ podkreślić, Ŝe mimo iŝ w omawianym podejściu wnioskowanie musi przebiegać na dwóch róŝnych terminologiach, moŝe ono być przeprowadzone z wykorzystaniem standardowych algorytmów wnioskujących. 50

61 Rozdział 4 Opis wiarygodności danych w Sieci Semantycznej 4.1. Wiarygodność danych w Sieci Semantycznej We wstępie do poprzedniego rozdziału przedstawione zostały wymagania względem systemu zarządzania wiedzą. Aby spełnić te wymagania, naleŝy w odpowiedni sposób wzbogacić źródła danych bądź źródła wiedzy o aspekty wiarygodności. Oznacza to, Ŝe naleŝy opisać kaŝdą asercję, czy teŝ całe źródło, pewnymi zbiorami wartości cech. Cechy te posłuŝą później do wyszukiwania asercji spełniających konkretne kryteria. Ideą opisywanego modelu systemu zarządzania wiedzą nie w pełni wiarygodną jest zbudowanie ontologii wiarygodności, w której w formie osobników zapisane byłyby asercje z ontologii dziedzinowej. Oznacza to, Ŝe przypisanie zbioru cech do konkretnej asercji jest równowaŝne przypisaniu osobnikom reifikującym te asercje pewnych relacji unarnych i binarnych, czyli utworzeniu ontologicznego zapisu dotyczącego tych osobników. Dane Dane Twórca danych Źródło wiedzy ontologicznej Źródło wiedzy nieontologicznej Oceniający Dane Dane Źródło wiedzy nieontologicznej Źródło wiedzy ontologicznej Rysunek 4.1. Sieć wiarygodności oraz jej uŝytkownicy w kontekście opisywania danych Stworzenie ontologii wiarygodności wymaga przede wszystkim zbudowania terminologii i opisu świata. Terminologia wiarygodności jest taka sama w ramach całej dziedzinowej sieci wiarygodności. Przez dziedzinową sieć wiarygodności rozumiemy źródła wiedzy dotyczące danej dziedziny, których cechy wiarygodności są opisane wspólną terminologią zdefiniowaną np. przez ekspertów w danej dziedzinie. I tak, moŝliwe jest utworzenie, przykładowo, medycznej sieci wiarygodności dla źródeł medycznych, geograficznej dla źródeł geograficznych czy meteorologicznej dla źródeł pogodowych. KaŜda 51

62 Rozdział 4 Opis wiarygodności danych w Sieci Semantycznej z tych sieci ma swoją własną terminologię wiarygodności. W tak określonej sieci wiarygodności kaŝde źródło wiedzy jest opisywane zbiorem cech sformułowanych w terminach terminologii wiarygodności. Wartości cech mogą być dostarczane przez kaŝdego uŝytkownika dziedzinowej sieci wiarygodności. Mogą być to eksperci w danej dziedzinie, twórcy danych, dostawcy lub zwykli uŝytkownicy. Rysunek 4.1 przedstawia uŝytkowników sieci wiarygodności w kontekście opisywania danych twórcę oraz podmiot oceniający (moŝe się zdarzyć, Ŝe będzie to ten sam podmiot). W kolejnych sekcjach tego rozdziału opisany zostanie sposób wzbogacania asercji bądź zbiorów asercji o zbiory cech, czyli sposób opisywania ich wiarygodności. Rozpatrzone zostaną dwa rodzaje danych ontologiczne i nieontologiczne Opis wiarygodności danych ontologicznych Źródła ontologiczne to zbiory asercji tworzące ontologie. W niniejszej sekcji skupimy się na dwóch modelach opisywania danych ontologicznych. Pierwszy z nich określa definiowanie cech wiarygodności dla źródeł danych w trakcie ich tworzenia przyjmuje zatem punkt widzenia twórcy danych. Drugi model polega zaś na nadawaniu cech juŝ istniejącym asercjom w źródle danych jest to zatem punkt widzenia dowolnego uŝytkownika dziedzinowej sieci wiarygodności, który jest uŝytkownikiem oceniającym wiarygodność asercji Definiowanie wiarygodności w trakcie tworzenia źródeł danych Tworzenie danych ontologicznych oznacza tworzenie ontologii, czyli wyraŝenie jej w pewnym języku. Gdy mówimy o języku zapisu ontologii, to aktualnie najczęściej mamy na myśli język OWL-DL. I nic dziwnego jest bardzo elastyczny i pozwala zapisać dowolną konstrukcję z popularnej (rozstrzygalnej) logiki opisowej SHION [HKS06]. RównieŜ większość dostępnych w sieci WWW ontologii jest zapisanych przy uŝyciu tego języka. Mimo wielu niezaprzeczalnych zalet języka OWL-DL, w niniejszej sekcji przedstawiony zostanie sposób opisu wiarygodności wykorzystujący inny język DIGUT [DIGUT]. Język ten powstał na Politechnice Gdańskiej (autor rozprawy jest jednym ze współautorów tego języka, [KMG]) na potrzeby projektu PIPS [GWZZ05a], [PIPS07] i bazuje na ogólnie znanym interfejsie DIG w wersji 1 [Bech03]. Główną przesłanką przemawiającą za wykorzystaniem DIG-a jest fakt, Ŝe OWL nie jest odpowiednim językiem do zadawania zapytań do bazy wiedzy (słuŝy do zapisu ontologii), natomiast DIG po odpowiednim rozszerzeniu oraz usunięciu pewnych braków i niekonsekwencji (co właśnie czyni DIGUT) znakomicie się do tego nadaje. Co więcej, język DIG jest podstawowym systemem komunikacji z wieloma istniejącymi systemami wnioskującymi (np. Pellet [SP04] czy Racer [HM01]). Być moŝe mniej, ale równieŝ istotną cechą z aplikacyjnego punktu widzenia jest fakt, Ŝe język DIGUT słuŝy do komunikacji z systemem wnioskującym KaSeA [GGWZ06], [GWWZZ06], takŝe opracowanym na Politechnice Gdańskiej m.in. przez autora rozprawy. Wyniki eksperymentów przeprowadzonych w latach z istniejącymi systemami wnioskującymi, jak Pellet, Racer czy FaCT [Hor98], okazały się bardzo zniechęcające [GWZZ08] (szczególnie dla baz wiedzy z duŝą liczbą osobników), co spowodowało rezygnację z zastosowania ich w projekcie PIPS. Ostatni powód to łatwość i czytelność zapisu konstrukcji ontologicznych. Zwłaszcza ta ostatnia cecha pozwoli lepiej wyjaśnić kwestie związane z opisem wiarygodności danych. 52

63 Opis wiarygodności danych w Sieci Semantycznej Rozdział 4 Definiowanie wiarygodności dla źródła ontologicznego polega na nadawaniu asercjom unikatowych identyfikatorów (aby moŝliwe było odwoływanie się do konkretnych asercji) oraz nadawania im właściwych cech wiarygodności, co zostało przedstawione na rysunku 4.2. PokaŜemy teraz, w jaki sposób tego dokonać, korzystając z języka DIGUT rozszerzonego o konstrukcje dotyczące wiarygodności. Identyfikatory zasobów Identyfikatory zasobów Rysunek 4.2. Definiowane cech wiarygodności dla źródeł ontologicznych podczas ich tworzenia DIGUT jest językiem wymiany informacji między uŝytkownikiem a bazą wiedzy. W tym znaczeniu jest więc czymś więcej niŝ tylko językiem zapisu ontologii (więcej informacji na ten temat znajduje się w kolejnym rozdziale). DIGUT bazuje na składni języka XML wszystkie polecenia języka DIGUT zapisane są w strukturze drzewiastej. Typowe polecenie dotyczące asercji w tym języku (czyli tzw. interfejs tell słuŝący do wstawiania faktów do bazy wiedzy) przedstawiono na wydruku 4.1: Wydruk 4.1. Ogólny format polecenia dotyczącego asercji w języku DIGUT <?xml version="1.0"?> <tells > xmlns=" xmlns:xsi=" xsi:schemalocation=" uri=kburi TellSubquery+ </tells> Stwierdzenie asercyjne składa się z trzech elementów: nagłówka informującego o typie rozkazu: informacja ta zawarta jest w nazwie węzła-korzenia rozkazu; tells oznacza tutaj wstawienie faktów do bazy wiedzy; informacji, do której bazy dane stwierdzenie jest kierowane (DIGUT pozwala na współpracę z wieloma bazami wiedzy jednocześnie) atrybut uri; treści stwierdzenia, przy czym treść to jedno lub więcej stwierdzeń o asercjach (oznaczone tutaj jako TellSubquery+). Przykładowo, gdy chcemy powiedzieć, Ŝe Witamina_C jest Lekiem, a Aspiryna ma w składzie Kwas_askorbinowy, uŝyjemy następującego zapisu: 53

64 Rozdział 4 Opis wiarygodności danych w Sieci Semantycznej Przykład 4.1. Stwierdzenie w języku DIGUT <?xml version="1.0"?> <tells > xmlns=" xmlns:xsi=" xsi:schemalocation=" uri="uri:kb " <instanceof> <individual name="witamina_c" /> <catom name="lek" /> </instanceof> <related> </related> </tells> <individual name="aspiryna" /> <ratom name="maskladnik" /> <individual name="kwas_askorbinowy" /> Polecenie instanceof oznacza, Ŝe dany osobnik (individual) jest wystąpieniem pewnego konceptu (tutaj konceptu atomowego, znacznik catom). Drugie polecenie related oznacza, Ŝe pierwszy osobnik jest połączony z drugim osobnikiem pewną rolą (tutaj rolą atomową, znacznik ratom). Aby rozszerzyć ten rozkaz o definicję wiarygodności jako zbioru wartości cech, trzeba zmodyfikować jego składnię. Modyfikacja polega na umoŝliwieniu nadania konkretnym asercjom unikatowych identyfikatorów oraz zdefiniowanie wiarygodności dla tychŝe asercji. Definiowanie wiarygodności powinno być moŝliwe na dwa sposoby. Po pierwsze, naleŝy je umoŝliwić dla całej listy stwierdzeń (wtedy wszystkie stwierdzenia będą miały przypisane te same wartości cech). Po drugie, musi istnieć moŝliwość określenia wiarygodności pojedynczej asercji. Zdefiniowanie wiarygodności dla całej listy asercji polega na wprowadzeniu dodatkowego, opcjonalnego elementu <trustworthiness> do treści zapytania. UŜytkownik moŝe, ale nie musi, zdefiniować wiarygodność. Jeśli wiarygodność nie zostanie zdefiniowana, asercje zostaną zapisane bez informacji o wiarygodności wnioskowanie z uŝyciem tych asercji będzie moŝliwe tylko wtedy, gdy w zapytaniu nie postawimy Ŝadnych wymagań odnośnie wiarygodności: Wydruk 4.2. Ogólny format polecenia dotyczącego asercji z uwzględnieniem wiarygodności <?xml version="1.0"?> <tells xmlns=" xmlns:xsi=" xsi:schemalocation=" uri=kburi > 54

65 Opis wiarygodności danych w Sieci Semantycznej Rozdział 4 {<trustworthiness> DefinicjaWiarygodności (DefinicjaKonceptu) </trustworthiness>} TellSubquery+ (rozszerzone o definicje identyfikatorów) </tells> Warto zauwaŝyć, Ŝe definicja wiarygodności to w istocie definicja konceptu w ontologii wiarygodności, do którego będą naleŝeć osobniki reifikujące asercje znajdujące się w dalszej części polecenia tells. W tym miejscu definicja konceptu polega na określeniu relacji (cech) między osobnikiem/osobnikami reprezentującymi asercje a wartościami cech wiarygodności. Przykładowo, dla ontologii wiarygodności będącej złoŝeniem terminologii z przykładu 3.2 i zbioru asercji z przykładu 3.3 określenie, Ŝe zdefiniowane asercje są zatwierdzone przez HON i akceptowane przez dra Kowalskiego, w logice opisowej moŝna przedstawić jako: macertyfikat( x, HON ) akceptowanyprzez( x, Kowalski ) gdzie x oznacza osobnika reifikującego asercje. Wprowadzenie tak zdefiniowanego opisu wiarygodności oraz definicji identyfikatorów do treści polecenia z przykładu 4.1 sprawi, Ŝe będzie ono wyglądać następująco: Przykład 4.2. Stwierdzenie wzbogacone o definicję wiarygodności <?xml version="1.0"?> <tells > xmlns=" xmlns:xsi=" xsi:schemalocation=" uri="" <trustworthiness> <related> <individual name=""/> <ratom name="macertyfikat"/> <individual name="hon"/> </related> <related> <individual name=""/> <ratom name="akceptowanyprzez"/> <individual name="kowalski"/> </related> </trustworthiness> <instanceof uri="urn:medycyna#witamina_c_lek"> 55

66 Rozdział 4 Opis wiarygodności danych w Sieci Semantycznej <individual name="witamina_c" /> <catom name="lek" /> </instanceof> <related uri="urn:medycyna#aspiryna_maskladnik_kwas_askorbinowy"> <individual name="aspiryna" /> <ratom name="maskladnik" /> <individual name="kwas_askorbinowy" /> </related> </tells> NaleŜy zwrócić uwagę, Ŝe w definicji wiarygodności nazwy osobnika będącego podmiotem roli są puste. Taka składnia została wprowadzona dla zachowania zgodności z definicjami konceptów w języku DIGUT. W rzeczywistości, nazwy te odnoszą się do nowo utworzonych osobników reprezentujący asercje. Warto zauwaŝyć równieŝ, w jaki sposób asercjom zostały nadane identyfikatory: kaŝda definicja asercji została wzbogacona o obowiązkowy atrybut uri, który określa identyfikator. Format identyfikatora moŝe być dowolny, jednak powinien być ustandaryzowany dla konkretnej sieci wiarygodności. Dla właściwej interpretacji asercji z identyfikatorami istotne jest, Ŝe identyfikator bazy wiedzy (atrybut uri w rozkazie tells) jest ignorowany identyfikator asercji jednoznacznie określa, gdzie ta asercja ma się znajdować. Rozszerzone o definicję wiarygodności rozkazy w języku DIGUT kierowane są (patrz opis architektury w rozdziale 6, rysunki 6.3 i 6.6) do agenta, który zajmuje się komunikacją z systemem zarządzania wiarygodnością, w którym przechowywane są cechy wiarygodności dla poszczególnych asercji, oraz do źródła asercji. Skierowanie rozkazu bez definicji wiarygodności (jednak zawierającego definicje identyfikatorów) bezpośrednio do źródła lub do agenta spowoduje jedynie utworzenie asercji i nadanie im identyfikatorów. Będzie moŝna się do nich odnieść, aby później nadać im cechy wiarygodności (tak jak zostało to opisane poniŝej w sekcji 4.2.2). W wyŝej opisany sposób moŝemy zdefiniować wiarygodność dla list asercji. Chcielibyśmy jednak mieć równieŝ moŝliwość zdefiniowania wiarygodności dla poszczególnych stwierdzeń osobno. Aby to osiągnąć, naleŝy rozszerzyć składnię wszystkich poleceń dotyczących asercji (w naszym przykładzie są to polecenia instanceof i related) o definicję wiarygodności. Takie rozszerzenie polega na wstawieniu opcjonalnego znacznika <trustworthiness> jako pierwszego elementu takiego stwierdzenia. Gdy będziemy chcieli powiedzieć, Ŝe pierwsze stwierdzenie z przykładu 4.1 ma certyfikat HON, natomiast drugie jest akceptowane przez dra Kowalskiego, uŝyjemy następującego zapisu: Przykład 4.3. Stwierdzenie wzbogacone o definicję wiarygodności dla poszczególnych asercji <?xml version="1.0"?> <tells xmlns=" xmlns:xsi=" xsi:schemalocation=" uri="" > 56

67 Opis wiarygodności danych w Sieci Semantycznej Rozdział 4 <instanceof uri="urn:medycyna#witamina_c_lek"> <trustworthiness> <related> <individual name=""/> <ratom name="macertyfikat"/> <individual name="hon"/> </related> </trustworthiness> <individual name="witamina_c" /> <catom name="lek" /> </instanceof> <related uri="urn:medycyna#aspiryna_maskladnik_kwas_askorbinowy"> <trustworthiness> <related> <individual name=""/> <ratom name="akceptowanyprzez"/> <individual name="kowalski"/> </related> </trustworthiness> <individual name="aspiryna" /> <ratom name="maskladnik" /> <individual name="kwas_askorbinowy" /> </related> </tells> TakŜe i w tym przypadku nazwy osobników będących podmiotem roli w definicji wiarygodności są puste w rzeczywistości będą się odnosić do nowo utworzonych osobników reprezentujących asercje. Podobnie równieŝ jak w poprzednim przykładzie, kaŝdej asercji nadany został unikatowy identyfikator. Jak naleŝy interpretować definicję wiarygodności? Podstawowa definicja to opcjonalna definicja dotycząca wszystkich asercji (definicja globalna). Opcjonalne definicje dla poszczególnych asercji (definicje lokalne) rozszerzają definicję globalną. Oznacza to, Ŝe jeśli nie istnieje definicja globalna, asercje przyjmują definicje lokalne (jeśli takie istnieją). Jeśli istnieją zarówno definicja globalna, jak i definicje lokalne, wiarygodność dla konkretnej asercji wyraŝa się (co naleŝy podkreślić) jako rozszerzenie wiarygodności globalnej o wiarygodność lokalną, natomiast nie oznacza zastąpienia wiarygodności globalnej. W przypadku gdy obie definicje, globalna i lokalna, są wzajemnie sprzeczne, powinien zostać zgłoszony błąd i cały rozkaz powinien zostać odrzucony Definiowanie wiarygodności istniejących asercji W praktyce nie zawsze istnieje moŝliwość nadawania cech wiarygodności asercjom w trakcie tworzenia źródeł danych. Zatem, aby moŝna było równieŝ uwzględnić takie źródła w naszej sieci wiarygodności, naleŝy umoŝliwić definiowanie wiarygodności dla juŝ istniejących asercji. W ten sposób przyjmujemy punkt widzenia dowolnego uŝytkownika dziedzinowej sieci wiarygodności pełniącego rolę oceniającego. Rysunek 4.3 przedstawia ogólną koncepcję tego procesu. 57

68 Rozdział 4 Opis wiarygodności danych w Sieci Semantycznej Rysunek 4.3. Definiowane cech wiarygodności dla wcześniej zdefiniowanych asercji MoŜliwość nadawania cech wiarygodności dla wcześniej zdefiniowanych asercji osiągniemy, wprowadzając do języka DIGUT nową konstrukcję językową, oznaczającą odwołanie do asercji o podanym identyfikatorze: <reference uri=(identyfikator_asercji)/> Takie odwołanie moŝemy umieścić zamiast konkretnej definicji asercji w treści polecenia z przykładu 4.2: Przykład 4.4. Stwierdzenie nadające cechy wiarygodności dla wcześniej zdefiniowanych asercji <?xml version="1.0"?> <tells xmlns=" xmlns:xsi=" xsi:schemalocation=" uri="" > <trustworthiness> <related> <individual name=""/> <ratom name="macertyfikat"/> <individual name="hon"/> </related> <related> <individual name=""/> <ratom name="akceptowanyprzez"/> <individual name="kowalski"/> </related> </trustworthiness> </tells> <reference uri="urn:medycyna#witamina_c_lek"/> <reference uri="urn:medycyna#aspiryna_maskladnik_kwas_askorbinowy"/> 58

69 Opis wiarygodności danych w Sieci Semantycznej Rozdział 4 W przykładzie 4.4 odwołujemy się do zdefiniowanych wcześniej asercji: Witamina_C jest Lekiem, a Aspiryna ma w składzie Kwas_askorbinowy. Wykorzystując taką konstrukcję polecenia, moŝemy nadać cechy wiarygodności wszystkim asercjom, do których się odwołujemy (czyli jest wspomniana w poprzedniej sekcji globalna moŝliwość określania wiarygodności). Rozszerzając element reference o definicję wiarygodności (tak jak asercje z przykładu 4.3), uzyskujemy moŝliwość zdefiniowania wiarygodności lokalnej: <reference uri=(identyfikator_asercji)> <trustworthiness> DefinicjaWiarygodności (DefinicjaKonceptu) </tustworthiness> </reference> Chcąc nadać cechy wiarygodności przykładowym asercjom, naleŝy zbudować następujące polecenia (odpowiadające rozkazowi z przykładu 4.3): Przykład 4.5. Stwierdzenie wzbogacone o definicję wiarygodności dla poszczególnych asercji <?xml version="1.0"?> <tells > xmlns=" xmlns:xsi=" xsi:schemalocation=" uri="" <reference uri="urn:medycyna#witamina_c_lek"> <trustworthiness> <related> <individual name=""/> <ratom name="macertyfikat"/> <individual name="hon"/> </related> </trustworthiness> </reference> <reference uri="urn:medycyna#aspiryna_maskladnik_kwas_askorbinowy"> <trustworthiness> <related> <individual name=""/> <ratom name="akceptowanyprzez"/> <individual name="kowalski"/> </related> </trustworthiness> </reference> </tells> 59

70 Rozdział 4 Opis wiarygodności danych w Sieci Semantycznej Interpretacja tak określonej wiarygodności jest identyczna jak w przypadku nadawania cech wiarygodności przy tworzeniu asercji Opis wiarygodności danych nieontologicznych W sieci WWW poza źródłami ontologicznymi znajduje się równieŝ wiele źródeł neontologicznych (w istocie, tych drugich jest wciąŝ duŝo więcej niŝ tych pierwszych). W niniejszej sekcji opisano, w jaki sposób równieŝ te źródła mogą być opatrzone zbiorem cech definiujących ich wiarygodność. Zaproponowany w rozprawie model zakłada, Ŝe wartości cech są przypisywane odpowiednim dziedzinowym asercjom binarnym i unarnym. Tymczasem w źródłach nieontologicznych (źródłach danych) bezpośrednio nie są przecieŝ zapisane Ŝadne asercje. Pierwszym aspektem dotyczącym opisywania wiarygodności danych nieontologicznych jest opisanie źródła danych opisem semantycznym umoŝliwiającym traktowanie danych zawartych w zewnętrznych źródłach danych jako zbioru asercji. W tym celu w rozprawie została wykorzystana metoda SED (ang. Semantic Enrichment of Data), zaproponowana w [GZZ06], [GZZ07]. Celem metody SED jest wzbogacenie źródła danych o warstwę opisu semantycznego pozwalającego na traktowanie danych zapisanych w zewnętrznych źródłach danych jako źródeł wiedzy. Cel ten w metodzie SED jest osiągany poprzez opisanie źródła danych zbiorem odwzorowań semantycznych. Zbiór odwzorowań semantycznych S zawiera odwzorowania konceptów S, ról S i atrybutów S : Odwzorowaniem konceptu M C = <C, q C > nazywamy parę składającą się z konceptu C, atomowego lub złoŝonego, zdefiniowanego w terminologii dziedzinowej D, oraz zapytania q C do źródła danych, dla którego odpowiedzią r C = {i: i jest nazwą osobnika} jest zbiór nazw osobników. Odwzorowanie roli M R = <R, q R > nazywamy parę składającą się z roli R, atomowej lub złoŝonej, zdefiniowanej w terminologii dziedzinowej D, oraz zapytania q R do źródła danych, dla którego odpowiedzią r R = {<i, j>: i, j są nazwami osobników} jest zbiór par nazw osobników. Odwzorowaniem atrybutu M A = <A, q A > nazywamy parę składającą się z atrybutu A zdefiniowanego w terminologii dziedzinowej D oraz zapytania q A do źródła danych, dla którego odpowiedzią r A = {<i, v>: i jest nazwą osobnika, a v pewną wartością} jest zbiór par: nazwa osobnika, wartość. Metoda SED definiuje równieŝ, w jaki sposób jest tworzony opis świata O s [S] utworzony na podstawie zbioru odwzorowań S: M C M R M A O s [S] = {{C(i): M C M A S M C (i r C )} {R(i, j): M R S M A (<i, v> r A )}}. S M R (<i, j> r R )} {A(i, v): NaleŜy zauwaŝyć, Ŝe inaczej niŝ w przypadku opisu wiarygodności danych ontologicznych w metodzie SED moŝemy identyfikować tylko pewne zbiory asercji, a nie kaŝdą z asercji z osobna. Dlatego teŝ, w odróŝnieniu od opisu wiarygodności danych ontologicznych, przypisujemy jednoznaczny identyfikator zasobu do zbioru asercji identyfikowanych pewnym odwzorowaniem. 60

71 Opis wiarygodności danych w Sieci Semantycznej Rozdział 4 Po przypisaniu identyfikatora do zbioru asercji do wyraŝenia wartości cech wiarygodności moŝemy skorzystać z tego samego mechanizmu co w przypadku definiowania cech wiarygodności danych ontologicznych przez uŝytkownika dziedzinowej sieci wiarygodności. Na rysunku 4.4 przedstawiono proces udostępniania źródła danych w sieci wiarygodności oraz nadawania tym danym odpowiednich wartości cech wiarygodności. Rysunek 4.4. Udostępnianie źródła nieontologicznego i nadawanie wartości cech wiarygodności 4.4. Podsumowanie W niniejszym rozdziale przedstawione zostały sposoby opisania cech wiarygodności w źródłach danych zarówno ontologicznych jak i nieontologicznych. Opisane przykłady rozszerzały język DIGUT, jednak naleŝy podkreślić, Ŝe modyfikacje te są tak pomyślane, Ŝe moŝna je zastosować równieŝ w innych językach. Przedstawione rozszerzenia pozwalają zarówno na przypisywanie cech wiarygodności asercjom w trakcie ich tworzenia, jak równieŝ późniejsze ich nadawanie. W kolejnym rozdziale opisana została metoda definiowania wymagań, które muszą spełniać asercje, na bazie których zwrócona ma zostać odpowiedź dotycząca określonej dziedziny wiedzy. 61

72

73 Rozdział 5 Definiowanie wymagań dotyczących wiarygodności informacji 5.1. Aspekty językowe wyrażania wymagań dotyczących wiarygodności informacji Samo zdefiniowanie wiarygodności, jako zestawu cech, dla poszczególnych asercji nie wystarcza, aby móc wnioskować na bazie ich wartości. Potrzebny jest sposób wyraŝenia przez uŝytkownika (agenta), jakie cechy powinny mieć asercje, na podstawie których chcemy prowadzić wnioskowanie dziedzinowe. W niniejszym rozdziale przedstawiono dwa modele definiowania wymagań dotyczących wiarygodności. Pierwszy model umoŝliwia definiowanie wymagań przy kaŝdym zapytaniu skierowanym do sieci wiarygodności. Drugi model zakłada predefiniowanie wymagań dla dziedzinowej sieci wiarygodności. Oznacza to, Ŝe zbiór cech określających wiarygodność jest stały, niezaleŝny od zapytań kierowanych do danej sieci wiarygodności. Mimo iŝ OWL-DL jest jednym z najczęściej stosowanych języków słuŝących do zapisu ontologii, jest on, co naleŝy podkreślić, jedynie językiem zapisu ontologii nie ma w nim moŝliwości formułowania zapytań do bazy wiedzy. Dlatego teŝ powstały róŝne inne języki słuŝące właśnie do formułowania zapytań i odpowiedzi. Wśród tych języków naleŝy wymienić język SPARQL [PS08], czy teŝ wspomniany w poprzednim rozdziale język DIG i jego modyfikację DIGUT. Podobnie jak w rozdziale poprzednim, takŝe i tutaj konstrukcje dotyczące wiarygodności przedstawione zostaną na przykładzie języka DIGUT. Warto w tym miejscu zaznaczyć, Ŝe celem tego rozdziału nie jest porównanie moŝliwości wymienionych języków, zarówno pod względem sposobu zadawania zapytań, ich ekspresywności czy rozszerzalności, ani wykazanie wyŝszości któregoś z nich nad pozostałymi, a jedynie przedstawienie sposobów wyraŝania wymagań dotyczących wiarygodności (niekoniecznie związanych z konkretnym językiem). Język DIGUT został wybrany z dwóch powodów (nie licząc tych przedstawionych w poprzednim rozdziale). Po pierwsze, zachowana zostanie spójność przedstawianych interfejsów dostępu do systemu zarządzania wiedzą (wszystkie zaprezentowane w niniejszej pracy komponenty lub prototypy systemów komunikują się za pośrednictwem tego języka), a po drugie język ten ma bardzo przejrzystą strukturę i doskonale nadaje się do celów prezentacyjnych. Jednak, co naleŝy wyraźnie podkreślić, stosując odpowiedniki proponowanych w rozdziale rozszerzeń, moŝna zwiększyć ekspresywność takŝe i innych języków zapytań do baz wiedzy o konstrukcje dotyczące wiarygodności. 63

74 Rozdział 5 Definiowanie wymagań dotyczących wiarygodności informacji 5.2. Metoda wyrażania wymagań dotyczących wiarygodności Obok interfejsu tell słuŝącego do wstawiania nowych faktów do bazy, DIGUT oferuje równieŝ tak zwany interfejs ask słuŝący do odpytywania bazy wiedzy. Ogólne zapytanie dziedzinowe w języku DIGUT przedstawiono na wydruku 5.1: Wydruk 5.1. Ogólny format zapytania w języku DIGUT <?xml version="1.0"?> <asks > xmlns=" xmlns:xsi=" xsi:schemalocation=" uri=kburi AskSubquery+ </asks> Podobnie jak stwierdzenie, zapytanie takie składa się z trzech elementów: nagłówka informującego o typie rozkazu; rozkaz asks oznacza tutaj zapytanie do bazy wiedzy; informacji, do której bazy dane zapytanie jest kierowane atrybut uri; treści zapytania, przy czym treść zapytania to jedno lub więcej pytań dziedzinowych (oznaczone tutaj jako AskSubquery+). Przykładowo, gdy chcemy zapytać, czy Witamina_C jest Lekiem i czy Aspiryna ma w składzie Kwas_askorbinowy, uŝyjemy następującego zapisu: Przykład 5.1. Zapytanie w języku DIGUT <?xml version="1.0"?> <asks xmlns=" xmlns:xsi=" xsi:schemalocation=" uri="uri:kb " > <instance id="czy_witamina_c_to_lek"> <individual name="witamina_c" /> <catom name="lek" /> </instance> <roleinstance id="czy_aspiryna_maskladnik_kwas_askorbinowy"> <individual name="aspiryna" /> <ratom name="maskladnik" /> <individual name="kwas_askorbinowy" /> 64

75 Definiowanie wymagań dotyczących wiarygodności informacji Rozdział 5 </asks> </roleinstance> W ramach jednego bloku zapytania moŝemy umieścić kilka zapytań. Aby moŝliwe było stwierdzenie, na które zapytanie została udzielona która odpowiedź, kaŝde takie zapytanie ma swój identyfikator. Identyfikator ten pojawia się równieŝ w odpowiedziach. Zapytanie instance to zapytanie o przynaleŝność danego osobnika (individual) do konceptu (tutaj konceptu atomowego, znacznik catom). Drugie zapytanie roleinstance to zapytanie o to, czy pierwszy osobnik jest połączony pewną rolą (tutaj rolą atomową, znacznik ratom) z drugim osobnikiem Definiowanie wymagań ad hoc Rozszerzenie rozkazu ask o definicję wymagań wiarygodności polega, podobne jak w przypadku definiowania asercji, na wprowadzeniu dodatkowego, opcjonalnego elementu <trustworthiness> do treści zapytania. UŜytkownik moŝe, ale nie musi, zdefiniować wymagania dotyczące wiarygodności. Jeśli te wymagania nie zostaną zdefiniowane, wnioskowanie przeprowadzane jest na całym zbiorze asercji. Dodatkowo, ignorowana jest informacja o docelowej bazie wiedzy (atrybut uri), gdyŝ, jak zobaczymy w rozdziale 6, zapytanie rozszerzone o kryteria wiarygodności jest kierowane do agenta, który zajmuje się jego obsługą. Wydruk 5.2. Ogólne zapytanie w języku DIGUT wzbogacone o wymagania dotyczące wiarygodności <?xml version="1.0"?> <asks > xmlns=" xmlns:xsi=" xsi:schemalocation=" uri=kburi {<trustworthiness> DefinicjaWiarygodności (DefinicjaKonceptu) </tustworthiness>} AskSubquery+ </asks> Definicja wymagań dotyczących wiarygodności polega na określeniu konceptu, do którego muszą naleŝeć wszystkie osobniki reprezentujące asercje dziedzinowe spełniające zadane wymagania. Przykładowo, dla ontologii wiarygodności będącej złoŝeniem terminologii z przykładu 3.2 i zbioru asercji z przykładu 3.3, aby wnioskować względem asercji zatwierdzonych przez HON i akceptowanych przez dra Kowalskiego, naleŝy stosowny koncept zdefiniować w terminach logiki opisowej następująco: 65

76 Rozdział 5 Definiowanie wymagań dotyczących wiarygodności informacji macertyfikat.{ HON } * akceptowanyprzez.{ Kowalski } Zapytanie z przykładu 5.1 wzbogacone o przedstawione wymagania odnośnie wiarygodności przedstawione zostało w przykładzie 5.2: Przykład 5.2. Zapytanie w języku DIGUT wzbogacone o wymagania dotyczące wiarygodności <?xml version="1.0"?> <asks > xmlns=" xmlns:xsi=" xsi:schemalocation=" uri="" <trustworthiness> <and> <exists> <ratom name="macertyfikat"/> <iset> </iset> </exists> <exists> <individual name="hon"/> <ratom name="akceptowanyprzez"/> <iset> </iset> </exists> </and> </trustworthiness> <individual name="kowalski"/> <instance id="czy_witamina_c_to_lek"> <individual name="witamina_c" /> <catom name="lek" /> </instance> <roleinstance id="czy_aspiryna_maskladnik_kwas_askorbinowy"> <individual name="aspiryna" /> <ratom name="maskladnik" /> <individual name="kwas_askorbinowy" /> </roleinstance> </asks> W ten sposób uŝytkownik moŝe zadać zapytanie, wykorzystując globalną definicję wiarygodności (określoną dla wszystkich zapytań). MoŜliwe jest równieŝ zdefiniowanie lokalnej definicji wiarygodności, rozszerzającej specyfikację wiarygodności dla danego podzapytania. Aby było to moŝliwe, naleŝy rozszerzyć definicje podzapytań (w naszym przykładzie są to instanceof oraz related) w taki sposób, aby ich pierwszym elementem (opcjonalnym) była definicja cech wiarygodności. 66

77 Definiowanie wymagań dotyczących wiarygodności informacji Rozdział 5 Gdy będziemy chcieli powiedzieć, Ŝe pierwsze stwierdzenie z przykładu 5.1 ma certyfikat HON, natomiast drugie jest akceptowane przez dra Kowalskiego, uŝyjemy następującego zapisu: Przykład 5.3. Zapytanie wzbogacone o definicję wiarygodności dla poszczególnych podzapytań <?xml version="1.0"?> <asks > xmlns=" xmlns:xsi=" xsi:schemalocation=" uri="" <instance id="czy_witamina_c_to_lek"> <trustworthiness> <exists> <ratom name="macertyfikat"/> <iset> </iset> </exists> </trustworthiness> <individual name="hon"/> <individual name="witamina_c" /> <catom name="lek" /> </instance> <roleinstance id="czy_aspiryna_maskladnik_kwas_askorbinowy"> <trustworthiness> <exists> <ratom name="akceptowanyprzez"/> <iset> <individual name="kowalski"/> </iset> </exists> </trustworthiness> <individual name="aspiryna" /> <ratom name="maskladnik" /> <individual name="kwas_askorbinowy" /> </roleinstance> </asks> Interpretacja cech wiarygodności jest podobna jak w przypadku nadawania ich asercjom. Podstawowa definicja to opcjonalna definicja globalna. Opcjonalne definicje lokalne rozszerzają definicję globalną, co oznacza, Ŝe gdy istnieją zarówno definicja globalna, jak i definicje lokalne, wiarygodność dla konkretnego podzapytania wyraŝa się jako rozszerzenie wiarygodności globalnej o wiarygodność lokalną (rozszerzenie to rozumiane jest jako suma zbiorów asercji z ontologii wiarygodności). Jeśli natomiast nie istnieje definicja globalna, zapytania przyjmują definicje lokalne (jeśli takie istnieją). 67

78 Rozdział 5 Definiowanie wymagań dotyczących wiarygodności informacji Wykorzystanie wymagań predefiniowanych W wielu bazach danych istnieje moŝliwość wcześniejszego przygotowania zapytań (ang. prepared statement). Pozwala to na przygotowanie planu wykonania zapytania, a w momencie jego zadania tylko jego wykonanie, co pozwala na zwiększenie wydajności procesu przetwarzania zapytania. Podobne rozwiązanie przyjęto przy zadawaniu zapytań do sieci wiarygodności. JeŜeli uŝytkownik, zadając zapytania, często wykorzystuje takie same wymagania odnośnie wiarygodności, moŝe utworzyć predefiniowany zbiór wymagań, a w zapytaniach tylko się do niego odwoływać. Rozwiązanie takie, oprócz optymalizacji procesu przetwarzania zapytania (moŝliwe jest wcześniejsze przygotowanie zbiorów asercji, na których dokonywane jest wnioskowanie dziedzinowe), eliminuje potrzebę wielokrotnego definiowania tych samych wymagań. Aby skorzystać z predefiniowanych wymagań odnośnie wiarygodności, najpierw takie wymagania uŝytkownik musi utworzyć. Wszystkie operacje tworzenia danych wykorzystują interfejs tell języka DIGUT. W celu umoŝliwienia zdefiniowania wymagań rozszerzymy składnię znacznika <trustworthiness> zawierającego definicję wiarygodności o atrybut uri, który zawiera identyfikator, jaki chcemy nadać predefiniowanym wymaganiom: <trustworthiness uri=(identyfikator_predefiniowanych_wymagań)> DefinicjaWiarygodności (DefinicjaKonceptu) </trustworthiness> NaleŜy zawaŝyć, Ŝe składnia ta jest bardzo podobna do określania wiarygodności asercji (patrz sekcja 4.2). Skąd jednak interpreter języka ma wiedzieć, czy definiujemy wymagania predefiniowane, czy teŝ nadajemy wiarygodność asercjom? RóŜnica polega na istnieniu atrybutu uri. Jeśli atrybut taki jest zdefiniowany, oznacza to, Ŝe definicja określa cechy wiarygodności, które chcemy predefiniować. W innym wypadku oznacza to definicję wiarygodności dla asercji. MoŜliwe jest równieŝ połączenie definicji cech wiarygodności dla asercji i budowanie cech predefiniowanych poprzez wielokrotne uŝycie znacznika <trustworthiness> w ramach jednego rozkazu tells, np.: Przykład 5.4. Definiowanie cech wiarygodności dla asercji i budowanie cech predefiniowanych <?xml version="1.0"?> <tells xmlns=" xmlns:xsi=" xsi:schemalocation=" uri="" > <trustworthiness uri="urn:medycyna#certyfikat_hon"> <exists> <ratom name="macertyfikat"/> <iset> <individual name="hon"/> 68

79 Definiowanie wymagań dotyczących wiarygodności informacji Rozdział 5 </iset> </exists> </trustworthiness> <trustworthiness> <exists> <ratom name="akceptowanyprzez"/> <iset> <individual name="kowalski"/> </iset> </exists> </trustworthiness> <instanceof uri="urn:medycyna#witamina_c_lek"> <individual name="witamina_c" /> <catom name="lek" /> </instanceof> <related uri="urn:medycyna#aspiryna_maskladnik_kwas_askorbinowy"> <individual name="aspiryna" /> <ratom name="maskladnik" /> <individual name="kwas_askorbinowy" /> </related> </tells> W powyŝszym przykładzie budujemy predefiniowany zestaw cech (te asercje, które posiadają certyfikat HON), po czym nadajemy cechy kolejnym asercjom (asercje te są akceptowane przez dra Kowalskiego). UŜycie tak predefiniowanych wymagań odnośnie wiarygodności jest bardzo proste. W miejscach, gdzie w przykładach w sekcji definiowane było wymaganie odnośnie wiarygodności, zamiast jego definiowania wstawiamy identyfikator wcześniej zdefiniowanych wymagań. Rozszerzamy tym samym składnię znacznika <trustworthiness> w zapytaniu o atrybut uri, który zawiera identyfikator predefiniowanych wymagań: <trustworthiness uri=(identyfikator_predefiniowanych_wymagań)/> Zapytanie uwzględniające globalną definicję wymagań jako odwołanie do predefiniowanych wymagań przedstawione zostało w przykładzie 5.5. Przykład 5.5. Zapytanie wzbogacone o globalne odwołanie do predefiniowanej definicji wiarygodności <?xml version="1.0"?> <asks xmlns=" xmlns:xsi=" xsi:schemalocation=" uri="" 69

80 Rozdział 5 Definiowanie wymagań dotyczących wiarygodności informacji > <trustworthiness uri="urn:medycyna#certyfikat_hon_akceptowany_przez_kowalski"/> </asks> <instance id="czy_witamina_c_to_lek"> <individual name="witamina_c" /> <catom name="lek" /> </instance> <roleinstance id="czy_aspiryna_maskladnik_kwas_askorbinowy"> <individual name="aspiryna" /> <ratom name="maskladnik" /> <individual name="kwas_askorbinowy" /> </roleinstance> W lokalnych definicjach wymagań wiarygodności moŝemy równieŝ odwoływać się do predefiniowanych definicji: Przykład 5.6. Zapytanie wzbogacone o lokalne odwołania do predefiniowanych definicji wiarygodności <?xml version="1.0"?> <tells > xmlns=" xmlns:xsi=" xsi:schemalocation=" uri="" <instance id="czy_witamina_c_to_lek"> <trustworthiness uri="urn:medycyna#certyfikat_hon"/> <individual name="witamina_c" /> <catom name="lek" /> </instance> <roleinstance id="czy_aspiryna_maskladnik_kwas_askorbinowy"> <trustworthiness uri="urn:medycyna#akceptowany_przez_kowalski"/> <individual name="aspiryna" /> <ratom name="maskladnik" /> <individual name="kwas_askorbinowy" /> </roleinstance> </tells> Interpretacja wiarygodności jest identyczna jak w przypadku korzystania z definicji typu ad hoc Podsumowanie W niniejszym rozdziale przedstawione zostały sposoby rozszerzenia zapytań dziedzinowych o definicje cech wiarygodności, które muszą spełniać asercje, na podstawie 70

81 Definiowanie wymagań dotyczących wiarygodności informacji Rozdział 5 których przeprowadzone zostanie wnioskowanie dziedzinowe. Podobnie jak w procesie nadawania asercjom cech wiarygodności, takŝe i tutaj wykorzystano rozszerzenie języka DIGUT, które posłuŝyło do budowy eksperymentalnego systemu opisanego dalej, w rozdziale 8. NaleŜy jednak zaznaczyć, Ŝe te modyfikacje językowe są tak pomyślane, by moŝna było je zastosować w równieŝ w innych językach. Warto teŝ zauwaŝyć, Ŝe cały proces przetwarzania zapytań wzbogaconych o wymagania dotyczące wiarygodności jest niewidoczny dla uŝytkownika. Jego rolą jest tylko sformułowanie zapytani i odbieranie odpowiedzi. 71

82

83 Rozdział 6 Przetwarzanie zapytań z wymaganiami dotyczącymi wiarygodności 6.1. Przetwarzanie zapytań w dziedzinowej sieci wiarygodności W poprzednich dwóch rozdziałach zostały zdefiniowane metody opisywania danych ontologicznych i nieontologicznych cechami wiarygodności oraz metody definiowania wymagań odnośnie wiarygodności danych, na podstawie których jest formułowana odpowiedź. W niniejszym podrozdziale zostały zaproponowane dwie architektury systemu zarządzania wiedzą nie w pełni wiarygodną wraz z dyskusją ich zastosowania. Proces przetwarzania zapytań został przedstawiony na przykładzie medycznej sieci wiarygodności, przedstawionej na rysunku 6.1. Warto w tym miejscu zaznaczyć, Ŝe pojawiające się na rysunkach teksty <digut> oznaczają treść konkretnej asercji zapisanej w pewnym języku opisu ontologii (równie dobrze moŝe to być np. DIGUT jak i OWL-DL). Terminologia medyczna D Odwzorowania Odwzorowania Terminologia wiarygodności danych medycznych T Rysunek 6.1. Medyczna sieć wiarygodności i jej uŝytkownicy W medycznej sieci wiarygodności znajdują się cztery źródła wiedzy: dwa źródła wiedzy ontologicznej i dwa źródła wiedzy nieontologicznej. KaŜde źródło dodatkowo jest 73

84 Rozdział 6 Przetwarzanie zapytań opatrzonych wymaganiami na wiarygodność opisane pewnymi cechami wiarygodności. Zostało równieŝ wyróŝnionych dwóch uŝytkowników medycznej sieci wiarygodności: Jan Nowak i Anna Nowak. Jan Nowak przyjmuje model ad hoc definiowania wymagań dotyczących wiarygodności przy kaŝdym zapytaniu. Jest pacjentem, który powinien przestrzegać diety. UwaŜa jednak, Ŝe proces wyszukiwania odpowiednich przepisów zgodnych z jego dietą nie wymaga aŝ takich restrykcji dotyczących wiarygodności jak w przypadku poszukiwania dobrego lekarza. Dlatego teŝ dla kaŝdego zapytania do medycznej sieci wiarygodności stosuje inne wymagania dotyczące wiarygodności. Anna Nowak jest lekarzem i korzysta z danych zapisanych w medycznej sieci wiarygodności jako wsparcia w procesie wystawiania diagnozy pacjentom. Wymaga, aby wiedza, z której korzysta, spełniała wszystkie wymogi bezpieczeństwa i była bardzo wiarygodna, i to w przypadku kaŝdego pacjenta. Anna Nowak korzysta z predefiniowanych wymagań, takich samych przy kaŝdym uŝyciu medycznej sieci wiarygodności. PoniŜej rozwaŝymy dwie architektury: scentralizowaną i rozproszoną Przetwarzanie zapytań w scentralizowanym systemie zarządzania wiarygodnością Główną cechą scentralizowanego systemu zarządzania wiarygodnością jest to, Ŝe istnieje jeden system przechowywania cech wiarygodności. Sytuacja taka została przedstawiona na rysunku 6.2. Terminologia medyczna D Dane Odwzorowania Dane Źródło wiedzy ontologicznej Cechy asercji uri1: odwz. 1 uri2: odwz. 2 urin: odwz. n Źródło wiedzy nieontologicznej Cechy asercji ` <digut> </digut> Dane System zarządzania wiarygodnością Odwzorowania uri1: odwz. 1 uri2: odwz. 2 urin: odwz. n Źródło wiedzy nieontologicznej Cechy asercji Cechy asercji Dane Źródło wiedzy ontologicznej Terminologia wiarygodności danych medycznych T UŜytkownik Anna Nowak Wymagania wiarygodności Wymagania wiarygodności Wymagania wiarygodności Wymagania wiarygodności UŜytkownik Jan Nowak Rysunek 6.2. Scentralizowany system zarządzania wiarygodnością Wymagania wiarygodności Wymagania wiarygodności W modelu systemu zarządzania wiedzą nie w pełni wiarygodną (patrz rozdział 3) zdefiniowano język zapytań S W składający się z zapytań s będących parą dwóch zapytań p i q, gdzie p jest zapytaniem do ontologii dziedzinowej, zaś q zapytaniem do ontologii wiarygodności. Przebieg procesu przetwarzania zapytania s zadanego przez Jana Nowaka został przedstawiony na rysunku

85 Przetwarzanie zapytań opatrzonych wymaganiami na wiarygodność Rozdział 6 Terminologia medyczna D Odwzorowania Odwzorowania Terminologia wiarygodności danych medycznych T Rysunek 6.3. Proces przetwarzania zapytania w scentralizowanym systemie zarządzania wiarygodnością (wymagania odnośnie wiarygodności definiowane ad hoc) Proces ten przebiega w sposób następujący: 1) Jan Nowak zadaje do systemu pytanie s = <p, q>. Pytanie to jest zadane do agenta przypisanego Janowi Nowakowi. Zapytanie jest sformułowane w języku zapytań umoŝliwiającym definiowanie wymagań odnośnie wiarygodności. 2) Agent Jana Nowaka kieruje zapytanie q do systemu zarządzania wiarygodnością. 3) System zarządzania wiarygodnością zwraca zbiór identyfikatorów zasobów odpowiadających asercjom lub zbiorom asercji dziedzinowych, S URI, spełniający wymagania zdefiniowane w zapytaniu q. 4) Agent zadaje zapytanie do wszystkich źródeł wiedzy o asercje, których identyfikatory zasobów naleŝą do zbioru identyfikatorów zasobów S URI. 5) Źródła wiedzy zwracają zbiór asercji S D odpowiadających identyfikatorom zasobów. 6) Zbiór asercji dziedzinowych S D jest ładowany do systemu zarządzania wiedzą ontologiczną. 7) Agent Jana Nowaka zadaje do systemu zarządzania wiedzą ontologiczną zapytanie dziedzinowe p. 8) System zarządzania wiedzą dziedzinową zwraca Agentowi odpowiedź na zapytanie dziedzinowe. 9) Agent przekazuje odpowiedź do Jana Nowaka. 75

86 Rozdział 6 Przetwarzanie zapytań opatrzonych wymaganiami na wiarygodność Przebieg procesu przetwarzania zapytania s zadanego przez Annę Nowak został przedstawiony na rysunku 6.4. Terminologia medyczna D Dane Odwzorowania uri1: odwz. 1 uri2: odwz. 2 urin: odwz. n Źródło wiedzy nieontologicznej ` <digut> </digut> System zarządzania wiarygodnością Dane Źródło wiedzy ontologicznej Agent Anny Nowak Dane Źródło wiedzy ontologicznej Dane Odwzorowania uri1: odwz. 1 uri2: odwz. 2 urin: odwz. n Źródło wiedzy nieontologicznej 7 ` System zarządzania wiedzą dziedzinową 8 Terminologia wiarygodności danych medycznych T 1:s=<p,q> 9: r s UŜytkownik Anna Nowak q Wymagania wiarygodności Rysunek 6.4. Proces przetwarzania zapytania w scentralizowanym systemie zarządzania wiarygodnością (predefiniowane wymagania odnośnie wiarygodności) Proces odpowiedzi na zapytanie przebiega analogicznie jak w przypadku zapytania z wymaganiami względem wiarygodności definiowanymi ad hoc. Podstawowa róŝnica polega na tym, Ŝe w trakcie odpowiadania na zapytanie wykonywane są jedynie kroki 1, 7, 8 i 9. Pozostałe kroki są wykonywane przez Agenta Anny Nowak jeszcze przed zadaniem przez Annę Nowak zapytania. Agent Anny Kowalskiej zna wymagania dotyczące wiarygodności i moŝe przygotować zbiór asercji dziedzinowych, zanim zostanie do systemu zadane zapytanie. W modelu systemu zarządzania wiarygodnością moŝemy, poza Agentem i źródłami wiedzy, wyróŝnić dwa podstawowe komponenty: system zarządzania wiarygodnością i system zarządzania wiedzą dziedzinową. Zadaniem systemu zarządzania wiarygodnością jest przechowywanie identyfikatorów zasobów będących asercjami lub zbiorami asercji dziedzinowych oraz dostarczanie usług wnioskowania dla ontologii wiarygodności. Zadaniem systemu zarządzania wiedzą dziedzinową jest przechowywanie asercji dziedzinowych i wnioskowanie względem ontologii dziedzinowej. Oba systemy są systemami zarządzania wiedzą [GGWZ05b] dostarczającymi usług wnioskowania z ontologii. Jak to juŝ zostało przedstawione w rozdziale 5, wszystkie komponenty i prototypy systemów przedstawione w rozprawie wykorzystują do komunikacji (opisywania wiarygodności i definiowania dla niej wymagań) język DIGUT (celem ujednolicenia interfejsów oczywiście nic nie stoi na przeszkodzie, aby w konkretnych zastosowaniach uŝyć równieŝ innych języków; patrz analiza we wstępie rozdziału 5). 76

87 Przetwarzanie zapytań opatrzonych wymaganiami na wiarygodność Rozdział Przetwarzanie zapytań w rozproszonym systemie zarządzania wiarygodnością Główną cechą rozproszonego systemu zarządzania wiarygodnością jest rozproszony sposób przechowywania opisu cech wiarygodności. Dla kaŝdego źródła wiedzy istnieje system przeznaczony do przechowywania cech wiarygodności. Sytuacja taka została przedstawiona na rysunku 6.5. Terminologia medyczna D Odwzorowania uri1: odwz. 1 uri2: odwz. 2 urin: odwz. n Dane Źródło wiedzy ontologicznej Dane Źródło wiedzy nieontologicznej ` ` Dane ` Odwzorowania uri1: odwz. 1 uri2: odwz. 2 urin: odwz. n Źródło wiedzy nieontologicznej ` Dane Źródło wiedzy ontologicznej Terminologia wiarygodności danych medycznych T UŜytkownik Anna Nowak Wymagania wiarygodności Wymagania wiarygodności Wymagania wiarygodności Wymagania wiarygodności UŜytkownik Jan Nowak Rysunek 6.5. Rozproszony system zarządzania wiarygodnością Wymagania wiarygodności Wymagania wiarygodności W odróŝnieniu od scentralizowanego systemu zarządzania wiarygodnością, kaŝde źródło wiedzy dysponuje dedykowanym systemem zarządzania cechami wiarygodności zbioru asercji przechowywanych w danym źródle wiedzy. Na rysunku 6.6 został pokazany przebieg procesu odpytywania dziedzinowej sieci wiarygodności dla Jana Nowaka. Poszczególne etapy tego procesu wyglądają następująco: 1) Jan Nowak zadaje do systemu pytanie s = <p, q>. Pytanie to jest zadane do agenta przypisanego Janowi Nowakowi. Zapytanie jest sformułowane w języku zapytań umoŝliwiającym definiowanie wymagań odnośnie wiarygodności. 2) Agent Jana Nowaka kieruje zapytanie q do systemów zarządzania wiarygodnością. 3) Systemy zarządzania wiarygodnością zwracają zbiór asercji dziedzinowych S D spełniających wymagania zdefiniowane w zapytaniu q. 4) Zbiór asercji dziedzinowych S D jest ładowany do systemu zarządzania wiedzą ontologiczną 5) Agent Jana Nowaka zadaje do systemu zarządzania wiedzą ontologiczną zapytanie dziedzinowe p. 6) System zarządzania wiedzą dziedzinową zwraca Agentowi odpowiedź na zapytanie dziedzinowe. 7) Agent przekazuje odpowiedź do Jana Nowaka. 77

88 Rozdział 6 Przetwarzanie zapytań opatrzonych wymaganiami na wiarygodność Podstawowa róŝnica w przedstawionym procesie odpytywania dziedzinowej sieci wiarygodności w odniesieniu do procesu przedstawionego przy załoŝeniu istnienia centralnego systemu zarządzania wiarygodnością polega na bezpośrednim zbieraniu asercji dziedzinowych przez agenta, nie zaś identyfikatorów tych asercji. Systemy zarządzania wiarygodnością są otoczkami źródeł wiedzy dostarczającymi opisu wiarygodności asercji zapisanych w tych źródłach. Otoczki te są identyczne zarówno dla źródeł ontologicznych, jak i nieontologicznych. A zatem funkcjonalność rozproszonych systemów zarządzania wiarygodnością róŝni się od systemu scentralizowanego sposobem pobierania asercji dziedzinowych ze źródeł wiedzy. Rysunek 6.6. Proces przetwarzania zapytania w rozproszonym systemie zarządzania wiarygodnością (wymagania definiowane ad hoc) Rysunek 6.7 przedstawia proces przetwarzania zapytania w rozproszonym systemie zarządzania wiarygodnością przy załoŝeniu predefiniowania wymagań odnośnie wiarygodności. Tak jak w przypadku systemu scentralizowanego, róŝnica polega na tym, Ŝe większość kroków algorytmu jest wykonywana przed zadaniem zapytania. Przedstawione procesy róŝnią się między sobą przede wszystkim złoŝonością procesu wykonywania zapytań. Systemy z wymaganiami definiowanymi ad hoc wymagają od systemów zarządzania wiedzą, zarówno dziedzinową jak i dotyczącą wiarygodności, wysokiej wydajności zarówno w procesie ładowania asercji do systemu zarządzania wiedzą, jak i w procesie wyszukiwania odpowiedzi. Systemy z predefiniowanymi wymaganiami wymagają jedynie odpowiedniej wydajności w procesie odpowiadania na zapytania (w trakcie procesu znajdowania odpowiedzi ładowanie nie jest wykonywane). Rozproszenie systemu zarządzania wiarygodnością umoŝliwia zrównoleglenie procesu wyszukiwania asercji dziedzinowych, zmniejszając w ten sposób długość całego procesu znajdowania odpowiedzi. 78

89 Przetwarzanie zapytań opatrzonych wymaganiami na wiarygodność Rozdział 6 Rysunek 6.7. Proces przetwarzania zapytania w rozproszonym systemie zarządzania wiarygodnością (predefiniowane wymagania dotyczące wiarygodności) 6.2. Definiowanie wiarygodności w dziedzinowej sieci wiarygodności Aby móc zadawać zapytania w sieci wiarygodności, naleŝy najpierw zdefiniować wiarygodność przechowywanych w niej asercji. Podobnie jak w podrozdziale poprzednim, rozwaŝymy ten proces dla dwóch zaproponowanych architektur systemu zarządzania wiedzą nie w pełni wiarygodną, wraz z dyskusją tych rozwiązań. Dziedzinowa sieć wiarygodności wraz z jej uŝytkownikami z perspektywy definiowania wiarygodności przedstawiona została na rysunku 6.8. Terminologia medyczna D Odwzorowania Odwzorowania Terminologia wiarygodności danych medycznych T Rysunek 6.8. Sieć wiarygodności wraz z jej uŝytkownikami (definiowanie wiarygodności) 79

90 Rozdział 6 Przetwarzanie zapytań opatrzonych wymaganiami na wiarygodność Z sieci wiarygodności korzystają uŝytkownicy dwóch rodzajów: twórcy źródeł, którzy definiują asercje i mogą, ale nie muszą nadawać im cech wiarygodności, oraz oceniający, którzy zajmują się jedynie nadawaniem takich cech Definiowanie wiarygodności w scentralizowanym systemie zarządzania wiarygodnością Jak juŝ wspomnieliśmy w sekcji 6.1.1, główną cechą scentralizowanego systemu zarządzania wiarygodnością jest scentralizowany sposób przechowywania opisu cech wiarygodności. Na proces definiowania wiarygodności moŝemy spojrzeć z perspektywy twórcy danych (lub ich dostawcy) oraz oceniającego. Na rysunku 6.9 przedstawiony został ten proces z perspektywy twórcy. Rysunek 6.9. Proces definiowania wiarygodności z perspektywy twórcy w scentralizowanym systemie zarządzania wiedzą Twórca/dostawca moŝe definiować wiarygodność na dwa sposoby: (1) tworzy asercje, a później nadaje im cechy wiarygodności, (2) tworzy asercje i od razu nadaje im cechy wiarygodności. Pierwszy sposób zaleŝy od typu źródła wiedzy, które ma zostać zbudowane i być ocenione. W przypadku źródeł ontologicznych twórca zdefiniuje asercje oraz nadaje im identyfikatory, a następnie tę informację wysyła do źródła wiedzy ontologicznej (strzałka 1b). W przypadku źródeł nieontologicznych identyfikatory dla zbiorów asercji nadawane są w procesie budowania odwzorowań (strzałka 1c), i tak wzbogacone odwzorowania słuŝą dopiero jako dane wejściowe dla systemów przetwarzania wiedzy z takich źródeł. Nadanie cech wiarygodności sposobem (1) sprowadza się teraz do wysłania (strzałka 1a) do agenta twórcy/dostawcy definicji cech wiarygodności dla konkretnych asercji (reprezentowanych przez ich identyfikatory), które następnie przekazywane są przez agenta do systemu zarządzania wiarygodnością (strzałka 3a). Zdefiniowanie wiarygodności sposobem (2) polega na zdefiniowaniu asercji oraz nadaniu im cech wiarygodności w ramach jednego rozkazu przekazanego do agenta twórcy/dostawcy (strzałka 1a). W tym przypadku moŝemy mówić jedynie o asercjach ze źródeł ontologicznych, dlatego teŝ asercje wraz z ich identyfikatorami wysyłane są do źródła 80

91 Przetwarzanie zapytań opatrzonych wymaganiami na wiarygodność Rozdział 6 wiedzy ontologicznej (strzałka 2a), natomiast ich cechy związane z wiarygodnością przesyłane są do systemu zarządzania wiarygodnością. Proces definiowania wiarygodności z perspektywy oceniającego, przedstawiony na rysunku 6.10, jest podobny do drugiego sposobu definiowania wiarygodności z perspektywy twórcy/dostawcy. Rysunek Proces definiowania wiarygodności z perspektywy oceniającego w scentralizowanym systemie zarządzania wiedzą Proces ten składa się z wysłania do agenta oceniającego (strzałka 1) definicji cech wiarygodności dotyczących konkretnych asercji (reprezentowanych przez ich identyfikatory), które są dalej przekazywane przez agenta do systemu zarządzania wiarygodnością (strzałka 2). ZauwaŜmy, Ŝe oceniający nie ma moŝliwości wprowadzania nowych asercji ma moŝliwość tylko ich oceniania Definiowanie wiarygodności w rozproszonym systemie zarządzania wiarygodnością W punkcie opisana została główna cecha rozproszonego systemu zarządzania wiarygodnością: rozproszony sposób przechowywania opisu cech wiarygodności, co oznacza, Ŝe do kaŝdego źródła wiedzy przypisany jest system przechowywania cech wiarygodności. RównieŜ dla takiej architektury na proces definiowania wiarygodności moŝemy spojrzeć z dwóch perspektyw: perspektywy twórcy danych (lub ich dostawcy) oraz z perspektywy oceniającego. Okazuje się jednak, Ŝe w architekturze rozproszonej perspektywy te są bardzo podobne, jak to zostało pokazane na rysunku Z perspektywy twórcy/dostawcy wiarygodność moŝe być definiowana na dwa sposoby, podobnie jak w architekturze scentralizowanej: (1) moŝna tworzyć asercje, a dopiero później nadawać im cechy wiarygodności, lub (2) moŝna tworzyć asercje i od razu nadawać im cechy wiarygodności. KaŜde z podzadań (definiowanie asercji oraz definiowanie wiarygodności) moŝna obsłuŝyć dwoma metodami bezpośrednio komunikując się ze źródłem wiedzy lub za pośrednictwem agenta. Wyjątek stanowi jedynie definiowanie asercji dla źródła nieontologicznego, które moŝna wykonać tylko w bezpośredniej interakcji ze źródłem (strzałka 1c). Definiowanie asercji, nadanie im identyfikatorów oraz definiowanie cech wiarygodności w przypadku źródeł ontologicznych polega na wysłaniu odpowiedniego rozkazu do źródła (strzałka 1b) lub do agenta (strzałka 1a), który przekazuje go do źródła (strzałka 2a). W przypadku źródeł nieontologicznych identyfikatory dla zbiorów asercji nadawane są w procesie budowania odwzorowań (strzałka 1c). Nadanie cech wiarygodności sprowadza się teraz do wysłania definicji cech wiarygodności dla konkretnych asercji 81

92 Rozdział 6 Przetwarzanie zapytań opatrzonych wymaganiami na wiarygodność (reprezentowanych przez ich identyfikatory) do źródła (strzałka 1c) lub do agenta (strzałka 1a), który przekazuje je do źródła (strzałka 2c). Rysunek Proces definiowania wiarygodności z perspektywy twórcy w rozproszonym systemie zarządzania wiedzą Proces definiowania wiarygodności z perspektywy oceniającego jest identyczny do procesu realizowanego z perspektywy twórcy, z tym Ŝe oceniający nie ma moŝliwości wprowadzania nowych asercji ma moŝliwość tylko ich oceniania, czyli definiowania cech wiarygodności dotyczących konkretnych asercji (reprezentowanych przez ich identyfikatory). Główną róŝnicą między przedstawionymi architekturami jest sposób definiowania cech dotyczących wiarygodności. W architekturze scentralizowanej większość operacji wykonywana jest przez agenta to on wie, do których źródeł i/lub systemów skierować rozkazy uŝytkownika. W architekturze rozproszonej praktycznie nie ma znaczenia, czy korzystamy z pomocy agenta, czy bezpośrednio komunikujemy się ze źródłem Podsumowanie W tym rozdziale opisane zostały dwa procesy: proces znajdowania odpowiedzi na zapytanie w architekturze scentralizowanego i rozproszonego systemu zarządzania wiedzą nie w pełni wiarygodną oraz proces definiowania wiarygodności w obu wspomnianych architekturach. ZauwaŜmy, Ŝe główna róŝnica między architekturą scentralizowaną i rozproszoną polega na miejscu przechowywania opisu cech wiarygodności oraz roli, jaką pełnią źródła wiedzy. W przypadku architektury scentralizowanej informacje o wiarygodności (czyli wartości cech dla poszczególnych identyfikatorów asercji) przechowywane są w systemie zarządzania wiarygodnością, źródła wiedzy pełnią natomiast rolę repozytorium asercji pojemnika na asercje i przypisane im identyfikatory (źródła te nie przeprowadzają procesu wnioskowania). Architektura taka najlepiej sprawdzi się w przypadku duŝej liczby źródeł wiedzy umoŝliwia łatwiejsze zarządzanie zarówno źródłami, jak i cechami wiarygodności przechowywanych asercji. Z punktu widzenia uŝytkownika wszelkie zmiany cech wiarygodności dokonywane są w jednym miejscu. Z kolei w architekturze rozproszonej nie istnieje pojęcie centralnego systemu zarządzania wiarygodnością kaŝde źródło wiedzy jest w pewnym sensie takim systemem, który zwraca (wywnioskowuje) pewien zbiór asercji spełniających zadane kryteria wiarygodności. Architektura taka pozwala na zrównoleglenie procesu definiowania cech wiarygodności, jak równieŝ wykonywania zapytań, co potencjalnie pozwala na osiągnięcie 82

93 Przetwarzanie zapytań opatrzonych wymaganiami na wiarygodność Rozdział 6 większej wydajności. Jednak bezpośrednie zarządzanie źródłami wiedzy (czyli przechowywanymi asercjami oraz cechami wiarygodności) dobrze sprawdzi się jedynie dla mniejszej liczby źródeł. W rozdziale 7 opisana została prototypowa implementacja jednej z powyŝszych architektur: architektura scentralizowanego systemu zarządzania wiedzą nie w pełni wiarygodną przy załoŝeniu predefiniowania wymagań dotyczących wiarygodności. 83

94

95 Rozdział 7 Zarządzanie wiedzą nie w pełni wiarygodną w systemie TrustMe 7.1. Architektura systemu TrustMe W ramach prac związanych z niniejszą rozprawą zaimplementowana została prototypowa wersja systemu zarządzania wiedzą nie w pełni wiarygodną system TrustMe. Jako bazową architekturę wybrano przedstawiony w rozdziale 6 scentralizowany system zarządzania wiedzą nie w pełni wiarygodną przy załoŝeniu predefiniowania wymagań dotyczących wiarygodności. Taka decyzja została podjęta dlatego, Ŝe uŝyty do eksperymentów system zarządzania wiedzą jest ukierunkowany na: wydajność odpowiadania na zapytania, nie zaś na proces ładowania asercji; efektywne odpowiadanie na zapytania dla duŝej liczby asercji (tj. na skalowalność względem wielkości bazy wiedzy). Konfiguracja odpowiednich systemów z dziedzinowej sieci wiarygodności została przedstawiona na rysunku 7.1. ` <digut> </digut> ` KaSeA System zarządzania wiarygodnością KaSeA System zarządzania wiedzą dziedzinową Bond Źródło danych (DBMS) Źródło KL nieontlogiczne UŜytkownik Repozytorium asercji Źródło ontologiczne Rysunek 7.1. Ogólna architektura systemu TrustMe 85

96 Rozdział 7 Zarządzanie wiedzą nie w pełni wiarygodną w systemie NAZWA Jako system zarządzania wiarygodnością oraz system zarządzania wiedzą dziedzinową wykorzystano system wnioskujący KaSeA (ang. Knowledge Signature Analyser) [GGWZ05a], co szerzej uzasadniono w rozdziale 8. Źródła wiedzy nieontologicznej (na rysunku jest to relacyjna baza danych) obsługuje system KL [GG05a], równieŝ opisany szczegółowiej w następnym rozdziale. Jak juŝ wcześniej wspomniano, system KaSeA i system KL to składniki systemu zarządzania wiedzą systemu PIPS [PIPS07], którego autor rozprawy był jednym ze współtwórców. śródła wiedzy ontologicznej to repozytorium asercji o nazwie StatementStore, zaimplementowane dla celów niniejszej rozprawy. Rolę agenta pełni równieŝ nowo zaimplementowany podsystem o nazwie Bond. Oba te systemy (StatementStore oraz Bond) zostały stworzone przez autora rozprawy. Przerywane strzałki wiodące od uŝytkownika do źródła ontologicznego i źródła nieontologicznego oznaczają moŝliwość bezpośredniej komunikacji uŝytkownika z tymi źródłami (np. w celu zdefiniowania asercji lub zbiorów asercji). W kolejnych podrozdziałach opisano zastosowane komponenty systemu i ich interfejsy System wnioskujący KaSeA System wnioskujący KaSeA powstał w ramach projektu PIPS (ang. Personalised Information Platform for Life and Health Services) [PIPS07], [GGWZ04], [GWZZ05a], a jego podstawy teoretyczne stały się tematem rozprawy doktorskiej Wojciecha Waloszka [Wal08]. System dostarcza mechanizmów wnioskowania dostępnych za pośrednictwem interfejsu Description Logic Interface by Gdańsk University of Technology DIGUT [DIGUT] (opisanego w rozdziale 4), opartego na interfejsie DIG 1.1. [Bech03]. Ogólna architektura tego systemu przedstawiona została na rysunku Rysunek 7.2. Ogólna architektura systemu KaSeA (na podstawie [Wal08]) KaSeA udostępnia interfejsy do wykonywania trzech grup operacji na bazach wiedzy. Interfejs Management pozwala na zarządzanie konfiguracją bazy wiedzy: tworzenie i usuwanie baz oraz inicjowanie poprzez ładowanie terminologii, interfejs Tell słuŝy do wprowadzania nowych zdań do bazy wiedzy, natomiast interfejs Ask pozwala na zadawanie zapytań przez uŝytkownika. W systemie KaSeA interfejs Tell pozwala jedynie na wprowadzanie nowych asercji (nie jest moŝliwe dynamiczne modyfikowanie terminologii).

97 Zarządzanie wiedzą nie w pełni wiarygodną w systemie NAZWA Rozdział 7 Te trzy interfejsy pokrywają zakres funkcji realizowanych przez następujące moduły: moduł obsługi rozkazów administracyjnych (wspierany dodatkowo przez moduł tworzenia tzw. mapy konceptów [GGWZ05a]), moduł obsługi rozkazów typu Tell oraz moduł obsługi rozkazów typu Ask. Wszystkie te moduły korzystają ze wsparcia warstwy dostępu do danych, której zadania realizuje moduł współpracy z relacyjną bazą danych. Warto nadmienić, Ŝe zastosowanie języka DIGUT zapewnia, z punktu widzenia uŝytkownika, jednolity dostęp do wszystkich trzech interfejsów 7.3. System zarządzania wiedzą nieontologiczną KL System wnioskujący KL powstał równieŝ w ramach projektu PIPS, a jego podstawy teoretyczne zostały wyłoŝone w rozprawie doktorskiej Teresy Zawadzkiej [GZZ06]. System ten dostarcza usług wnioskowania z danych zapisanych w zewnętrznych źródłach danych. W przeciwieństwie do systemu KaSeA nie wymaga on, aby wszystkie dane były załadowane do bazy wiedzy. System ten bazuje na tzw. odwzorowaniach bytów nieontologicznych na byty ontologiczne. UŜytkownik tego systemu nie jest świadomy, gdzie naprawdę znajdują się dane, na podstawie których system generuje odpowiedź z jego punktu widzenia obsługa tych źródeł odbywa się analogicznie jak w przypadku systemu KaSeA, tj. przy uŝyciu języka DIGUT. System KL udostępnia interfejsy do wykonywania dwóch grup operacji na bazie wiedzy. Interfejs Ask, podobnie jak w systemie KaSeA, pozwala na zadawanie zapytań przez uŝytkownika. Interfejs Management, który jest odpowiedzialny za zarządzanie odwzorowaniami przechowującymi semantyczny opis danych zapisanych w zewnętrznych źródłach danych, nie jest bezpośrednio dostępny dla uŝytkownika zadającego zapytania. Interfejs ten, w postaci wywołań API, dostępny jest dla uŝytkownika zarządzającego źródłami danych. Ogólna architektura tego systemu przedstawiona została na rysunku 7.3. Wywołania API Zapytania DIGUT Management Ask KL Moduł obsługi rozkazów administacyjnych Moduł obsługi rozkazów typu Ask Moduł budowy mapy odwzrowań Moduł obsługi terminologii Moduł obsługi odwzrowań Moduł współpracy z relacyjną bazą danych Moduł współpracy z otoczkami źródeł danych RDBMS Otoczka źródła danych Rysunek 7.3. Ogólna architektura systemu KL (na podstawie [Zaw08]) Dostarczane przez system KL interfejsy obejmują funkcje realizowane przez następujące moduły: moduł obsługi rozkazów administracyjnych (wspierany dodatkowo przez moduł budowy mapy odwzorowań i moduł obsługi terminologii) i moduł obsługi 87

98 Rozdział 7 Zarządzanie wiedzą nie w pełni wiarygodną w systemie NAZWA rozkazów typu Ask (wspierany dodatkowo przez moduł obsługi terminologii i moduł obsługi odwzorowań). Wszystkie moduły (oprócz modułu obsługi terminologii) korzystają z modułu współpracy z relacyjną bazą danych, w której przechowywane są dane dotyczące odwzorowań. Moduł obsługi terminologii współpracuje z systemem KaSeA, do którego załadowana została terminologia opisująca zewnętrzne źródła danych występujące w odwzorowaniach. W systemie KL odwzorowania dostarczane są w postaci plików XML. Pliki te zawierają zbiór poprawnych i kompletnych odwzorowań konceptów, ról i atrybutów zdefiniowanych przy uŝyciu metody SED semantycznego tworzenia opisu danych (patrz teŝ punkt 4.3). Do komunikacji z zewnętrznymi źródłami danych system KL wykorzystuje moduł współpracy z otoczkami źródeł danych. Otoczka jest systemem potrafiącym wykonywać zapytania kierowane do zewnętrznego źródła danych. Zewnętrzne źródło danych moŝe być dowolnym źródłem strukturalnym lub półstrukturalnym, np. SQL, XML, CSV, XLS czy MDB. Wynika to z niezaleŝności metody SED od typu źródeł danych; jedynym wymaganiem jest zdefiniowanie odpowiednich zapytań i umieszczenie ich w pliku z odwzorowaniami. Taka elastyczność wymaga jednak spełnienia jednego warunku: musi istnieć język zapytań do dowolnego typu źródła danych, dla którego budowane są odwzorowania. Język ten z kolei musi spełniać pewne załoŝenia (jak na przykład musi istnieć moŝliwość zdefiniowania zapytania złoŝonego jako sumy kilku zapytań prostych). Zapytania znajdujące się w pliku z odwzorowaniami wyraŝane są za pomocą tego właśnie języka. Oczywiste jest, Ŝe nie dla wszystkich wymienionych wcześniej typów źródeł istnieją takie języki. W związku z tym to właśnie otoczka jest modułem potrafiącym takie zapytania wykonać. Przykładowo, dla danych relacyjnych rolę otoczki spełnia RDBMS, który wykonuje zapytania zdefiniowane w języku SQL Repozytorium asercji: StatementStore Repozytorium asercji StatementStore jest systemem dostarczającym usługę przechowywania asercji wraz z ich identyfikatorami. Dostęp do tego systemu zapewnia interfejs obsługujący język DIGUT rozszerzony o elementy dotyczące identyfikacji asercji przedstawione w sekcji 4.2.1, jak równieŝ interfejs programistyczny typu API. Ogólna architektura tego systemu przedstawiona została na rysunku 7.4. System StatementStore udostępnia interfejsy do wykonywania dwóch grup operacji na asercjach. Interfejs Tell słuŝy do wprowadzania nowych zdań do bazy danych, natomiast interfejs Ask pozwala na pobieranie przechowywanych asercji. Interfejsy dostarczane przez system StatementStore pokrywają zakres funkcji realizowanych przez następujące moduły: moduł obsługi rozkazów typu Tell i moduł obsługi rozkazów typu Ask. Oba moduły korzystają z modułu współpracy z relacyjną bazą danych, w której przechowywane są asercje. Interfejs Tell oraz realizujący tę część funkcjonalności interfejs API umoŝliwiają wprowadzenie do bazy danych systemu asercji oraz nadanie im unikatowych identyfikatorów. Interfejs Ask natomiast pozwala na pobieranie asercji bądź grupy asercji o konkretnym identyfikatorze. 88

99 Zarządzanie wiedzą nie w pełni wiarygodną w systemie NAZWA Rozdział 7 Zapytania DIGUT / Wywołania API Wywołania API Tell Ask StatementStore Moduł obsługi rozkazów typu Tell Moduł obsługi rozkazów typu Ask Moduł współpracy z relacyjną bazą danych RDBMS Rysunek 7.4. Ogólna architektura repozytorium asercji StatementStore 7.5. Agent użytkownika: Bond Agent uŝytkownika, system o nazwie Bond, jest głównym punktem styku na linii uŝytkownik sieć wiarygodności. UŜytkownik do komunikacji z agentem wykorzystuje język DIGUT wzbogacony o rozszerzenia dotyczące wiarygodności i identyfikacji asercji przedstawione w rozdziałach 4 i 5. System Bond udostępnia interfejsy do wykonywania dwóch grup operacji. Interfejs Tell słuŝy zarówno do wprowadzania nowych asercji do źródeł ontologicznych, jak i do wprowadzania informacji o wiarygodności tych asercji do systemu zarządzania wiarygodnością. SłuŜy on równieŝ do określania cech wiarygodności dla predefiniowanych wymagań. Interfejs Ask natomiast pozwala na zadawanie zapytań przez uŝytkownika. Rysunek 7.5. Ogólna architektura agenta uŝytkownika Bond 89

100 Rozdział 7 Zarządzanie wiedzą nie w pełni wiarygodną w systemie NAZWA Zakres interfejsów systemu Bond obejmuje funkcje realizowane przez następujące moduły: moduł obsługi rozkazów Tell i moduł obsługi rozkazów typu Ask. Oba moduły korzystają z modułu współpracy z systemem zarządzania wiarygodnością, modułu współpracy z systemem zarządzania wiedzą dziedzinową, modułu współpracy ze źródłem ontologicznym oraz modułu współpracy ze źródłem nieontologicznym Podsumowanie W niniejszym rozdziale przedstawiono konkretną architekturę systemu zarządzania wiedzą nie w pełni wiarygodną, zastosowaną w jego prototypowej implementacji systemie TrustMe. Implementacja podsystemów KL oraz KaSeA została wykonana przez grupę KMG [KMG] w ramach projektu PIPS (autor rozprawy jest współtwórcą tych systemów), natomiast pozostałe podsystemy zostały zaimplementowane w całości przez autora na potrzeby niniejszej rozprawy. System TrustMe jest systemem zarządzania wiedzą nie w pełni wiarygodną zbudowanym i działającym zgodnie z modelem przedstawionym w rozdziale 3. W poszczególnych komponentach systemu zaimplementowano metody definiowania cech wiarygodności i algorytmy przetwarzania zapytań przedstawione w rozdziałach 4, 5 i 6. W rozdziale następnym pokazano praktyczne wykorzystanie systemu TrustMe w usłudze kontroli odŝywiania pacjenta przyjmującego leki, rozszerzającej usługi dostarczane przez system PIPS. Niniejszy rozdział, wraz z rozdziałem kolejnym, wykazują praktyczną uŝyteczność zaproponowanych w rozprawie metod, spełniając tym samym trzeci cel rozprawy: wykazanie, Ŝe opracowane algorytmy i metody są stosowalne w praktyce. 90

101 Rozdział 8 Ocena metod zarządzania wiedzą nie w pełni wiarygodną 8.1. Projekt PIPS W niniejszym rozdziale zostanie opisane praktyczne wykorzystanie systemu zarządzania wiedzą nie w pełni wiarygodną. Jednak aby umoŝliwić Czytelnikowi dobre zrozumienie motywacji oraz przykładowego scenariusza uŝycia, pokrótce przedstawiony zostanie projekt, który był nie tylko inspiracją, ale takŝe fundamentem prac będących przedmiotem niniejszej rozprawy. Omawiany system został wdroŝony w środowisku systemu zarządzania wiedzą, wypracowanym w ramach projektu PIPS (ang. Personalised Information Platform for Life and Health Services) [GWZZ05a], [PIPS07], objętego 6. Programem Ramowym Unii Europejskiej, obszar Information Society Technologies, priorytet e-health. Projekt ten, zainicjowany na początku 2004 r., był realizowany w formie projektu zintegrowanego przez 17 partnerów z Europy, Kanady i Chin. Instytucją koordynującą była Fundacja San Raffaele del Monte Tabor z Mediolanu, a uczestnikami były wyŝsze uczelnie i instytuty naukowobadawcze (z Polski: Politechnika Gdańska), firmy informatyczne (z Polski: firma Atena z Sopotu), producenci leków, producenci sprzętu medycznego i in. Głównym celem projektu było opracowanie infrastruktury informatycznej ukierunkowanej na indywidualnych obywateli, wspomagającej ochronę ich zdrowia i utrzymywanie zdrowego stylu Ŝycia. System PIPS ma słuŝyć zarówno lekarzom i pacjentom, jak i zwykłym, zdrowym obywatelom. Lekarze są wspomagani poprzez uzyskiwanie informacji pomagających w diagnostyce i terapii. Informacje te obejmują dane o pacjencie, w tym jego dane medyczne, opisy leków z informacjami o ewentualnych przeciwwskazaniach i niepoŝądanych interakcjach, a takŝe wszelkie inne informacje medyczne pomocne we właściwej diagnostyce i terapii. Pacjenci zagroŝeni szczególnie niebezpiecznymi chorobami mogą być monitorowani za pomocą urządzeń telemedycznych i w razie potrzeby informowani o sytuacjach krytycznych. Pacjenci mogą równieŝ zdalnie uzyskiwać wskazówki co do postępowania w takich sytuacjach. Zwykli, zdrowi obywatele mogą uzyskiwać informacje dotyczące utrzymania dobrego zdrowia, w tym wytyczne odnośnie diety, zdrowego stylu Ŝycia itd. Istotne jest, Ŝe wytyczne te nie mają charakteru ogólnego, ale są spersonalizowane, czyli dostosowane do konkretnego człowieka jego przeszłości, upodobań, przyzwyczajeń, miejsca zamieszkania itd. Osiągnięcie celów systemu PIPS było uzaleŝnione od realizacji zaawansowanych funkcji systemu. Aby móc je realizować, system PIPS musi dysponować i zarządzać odpowiednio obszerną, wieloraką wiedzą dziedzinową. Wiedza ta obejmuje m.in. informacje 91

102 Rozdział 8 Ocena metod zarządzania wiedzą nie w pełni wiarygodną o lekach i interakcjach pomiędzy nimi, informacje wspomagające diagnostykę (objawy chorób), informacje o Ŝywności i interakcjach pomiędzy Ŝywnością a lekami, wskazówki dietetyczne, a takŝe informacje o charakterze mniej krytycznym, jak np. miejsca, gdzie moŝna nabyć zalecaną Ŝywność lub gdzie moŝna bezpiecznie pójść na obiad. PIPS nie tylko przechowuje tę wiedzę i udostępnia ją na Ŝądanie, ale takŝe musi umieć wywodzić z niej wnioski, aby móc odpowiadać na nietrywialne zapytania kierowane przez lekarzy, pacjentów i innych jego uŝytkowników. Za zadania te w systemie PIPS odpowiada podsystem zarządzania wiedzą (ang. Knowledge Management Subsystem - KMS). W projekcie PIPS wiedza jest kluczowym zasobem, a jednym z głównych celów tego projektu było opracowanie nowatorskiego, bezpiecznego (godnego zaufania) systemu zarządzania wiedzą. Cel ten został osiągnięty przez wykorzystanie najnowszych osiągnięć z dziedziny budowania ontologii i zarządzania ontologiami, wnioskowania [GWZZ05b] oraz integracji heterogenicznych źródeł danych [GZZ06]. W systemie PIPS podsystem KMS funkcjonuje w otoczeniu innych podsystemów. Współpracując z nimi, tworzy spersonalizowaną platformę udostępniającą informacje dotyczące usług związanych ze zdrowiem. ZaleŜności pomiędzy róŝnymi podsystemami systemu PIPS zostały przedstawione na rysunku 8.1. INFRASTRUKTURA ZAUFANIA UśYTKOWNICY SYSTEMY POMIAROWE SYSTEMY PREZENTACJI INTERAKCJA Z UśYTKOWNIKAMI SYSTEMY WPROWADZANIA DANYCH 92 PODSYSTEM WSPOMAGANIA DECYZJI PODSYSTEM ZARZĄDZANIA WIEDZĄ ŹRÓDŁA DANYCH Rysunek 8.1. Usytuowanie podsystemu zarządzania wiedzą (KMS) w systemie PIPS (na podstawie [GGWZ04]) Projekt PIPS był ukierunkowany na uŝytkownika: obywatela, pacjenta, lekarza. Stąd w centralnym punkcie zrealizowanego w ramach projektu systemu znajdują się właśnie jego uŝytkownicy. Komunikacja pomiędzy nimi a systemem jest prowadzona za pośrednictwem systemów prezentacji, systemów pomiarowych i systemów wprowadzania danych. NajniŜszą warstwą systemu PIPS są źródła danych. Zadania projektu PIPS dotyczące tej warstwy objęły identyfikację źródeł danych, określenie stopnia zaufania do źródeł danych i relacji pomiędzy nimi oraz wstępną ich organizację. Podsystem zarządzania wiedzą jest odpowiedzialny za wyszukiwanie danych i ich integrację. Łączy róŝne źródła danych w złoŝoną mapę wiedzy. Podsystem wspomagania decyzji jest odpowiedzialny za interpretację potrzeb uŝytkownika. W tym celu analizuje informacje dostarczane przez systemy pomiarowe i systemy wprowadzania danych oraz informacje zapisane w tzw. wirtualnym ego uŝytkownika. Wirtualne ego zawiera informacje o stanie zdrowia, preferencjach, ograniczeniach i moŝliwościach uŝytkownika. Podsystem wspomagania decyzji wyraŝa potrzebę uŝytkownika w postaci zapytania skierowanego do podsystemu zarządzania wiedzą. Zwrócona z tego podsystemu odpowiedź zostaje przekształcona w spersonalizowaną odpowiedź dla

103 Ocena metod zarządzania wiedzą nie w pełni wiarygodną Rozdział 8 uŝytkownika. Dodatkowo, w celu zapewnienia bezpieczeństwa, cały system jest zanurzony w infrastrukturze zaufania, która gwarantuje prywatność i ochronę informacji, a tym samym zapewnia etyczne i legalne wykorzystanie zarządzanych przez system informacji. W infrastrukturze zaufania są zanurzone równieŝ: podsystem zarządzania wiedzą i źródła danych. Źródła danych są sprawdzane pod względem poprawności przed dostarczeniem ich jako źródeł danych systemu PIPS. Takie rozwiązanie ma swoje ograniczenia: KaŜde źródło musi być indywidualnie oceniane przez eksperta. Aktualizacja źródła wymaga ponowienia oceny źródła przez eksperta. Oceniane jest całe źródło danych, a nie konkretna wiedza w tych źródłach zawarta. W projekcie PIPS rozwaŝano zarządzanie wiarygodnością przez uŝycie systemu zarządzania wiedzą nie w pełni wiarygodną przedstawionego w niniejszej rozprawie. Takie podejście zostało ocenione jako istotny wkład naukowy do projektu PIPS, jakkolwiek nie zostało bezpośrednio wdroŝone ze względu silne na ograniczenia czasowe związane z realizacją projektu. Dlatego teŝ, na potrzeby oceny zaproponowanego w rozprawie modelu, w niniejszym rozdziale przedstawiona zostanie jego implementacja dla systemu zarządzania wiedzą opracowanego w ramach projektu PIPS. Warto w tym miejscu zaznaczyć, Ŝe to właśnie w projekcie PIPS zidentyfikowana została potrzeba zastosowania omawianego systemu i Ŝe jest on odpowiedzią na realne wymagania, immanentne dla współczesnych systemów opartych na wiedzy Usługi w projekcie PIPS W systemie PIPS wdroŝono cztery podstawowe usługi [PIPS08]: Usługa powszechnego dostępu do wiarygodnych źródeł wiedzy medycznej. Internet to ogromna dynamicznie rozwijająca się składnica wiedzy, między innymi dotyczącej wielorakich aspektów zdrowia. Korzystanie z tych zasobów rodzi jednak pytanie, czy jest to informacja wiarygodna oraz czy i w jakim stopniu moŝna jej zaufać. Omawiana usługa polega na ciągłej ocenie wiarygodności i selekcji źródeł wiedzy medycznej dostępnych w Internecie i oferowaniu ich zainteresowanym podmiotom (lekarzom, pacjentom i in.) wraz z odpowiednim certyfikatem wiarygodności i w sposób ułatwiający selekcję poszukiwanej informacji. Odbiorcami tej usługi są dowolni uŝytkownicy Internetu zainteresowani wiarygodną informacją medyczną. Usługa doboru i wspomagania stosowania optymalnej diety. Jesteśmy tym, co jemy a więc dobór diety ma zasadniczy wpływ na nasze zdrowie i jakość naszego Ŝycia. Czy jednak potrafimy kontrolować dobór diety i stosowanie zaleceń dietetycznych tak, by je optymalnie dopasować do naszych indywidualnych potrzeb? Omawiana usługa polega na wykorzystaniu nowoczesnych technologii informacyjnych oraz istniejących baz danych dotyczących produktów spoŝywczych, aby w sposób ciągły kontrolować skład i dobór diety na wszystkich etapach dotyczących Ŝywienia: w trakcie zakupów, przy wyborze posiłków w restauracjach i punktach zbiorowego Ŝywienia, w trakcie przygotowywania posiłków w domu, i to w sposób uwzględniający stan zdrowia, indywidualne ograniczenia bądź zalecenia dietetyczne. Odbiorcami tej usługi są osoby podlegające ograniczeniom dietetycznym oraz osoby zainteresowane zdrowym Ŝywieniem. 93

104 Rozdział 8 Ocena metod zarządzania wiedzą nie w pełni wiarygodną Usługa różnorodnego motywowania do codziennej aktywności fizycznej. Powszechnie wiadomo, Ŝe codzienna aktywność fizyczna jest najlepszym sposobem na zachowanie zdrowia oraz nieocenionym lekarstwem na wiele chorób, w tym równieŝ przewlekłych. Wiadomo równieŝ, Ŝe lekarstwo to jest skuteczne jedynie wtedy, gdy jest stosowane codziennie, w odpowiednich dawkach, indywidualnie dopasowanych do stanu zdrowia i związanych z tym ograniczeń. Omawiana usługa polega na wykorzystaniu nowoczesnych urządzeń (czujniki aktywności fizycznej, mierniki parametrów fizjologicznych itp.) do ciągłego nadzoru stanu pacjenta oraz wykorzystaniu środków indywidualnej komunikacji (np. telefon komórkowy) do bieŝącego informowania i motywowania pacjenta do przypisanych mu indywidualnie ćwiczeń fizycznych, takich jak spacer, jogging czy gimnastyka. Dzięki temu ćwiczenia te są wbudowane w kontekst codziennej aktywności, a pacjent znajduje się pod ciągłą kontrolą specjalisty. Odbiorcami tej usługi są osoby z nadwagą, diabetycy, osoby ze schorzeniami układu krąŝenia, osoby w trakcie rehabilitacji itp. Usługa ciągłego nadzoru zdrowia w domu. WydłuŜanie się Ŝycia i związane z tym starzenie się społeczeństw powoduje gwałtowny wzrost zapotrzebowania na usługi medyczne związane z bieŝącą kontrolą stanu zdrowia. Omawiana usługa umoŝliwia taką kontrolę bez potrzeby wizyty w ośrodku medycznym i wstępną selekcję tych przypadków, które wymagają specjalistycznej interwencji z udziałem pracowników słuŝby zdrowia. Powoduje to odciąŝenie zakładów opieki zdrowotnej z jednoczesnym zachowaniem poczucia bezpieczeństwa ze strony pacjentów. Odbiorcami tej usługi są osoby o zwiększonym ryzyku wynikającym z zaawansowanego wieku lub pogorszonego ogólnego stanu zdrowia. W dalszej części tego rozdziału przedstawiono moŝliwość wykorzystania systemu zarządzania wiedzą nie w pełni wiarygodną dla usługi łączącej w sobie dostęp do wiarygodnych źródeł medycznych (usługa 1) z doborem i wspomaganiem prawidłowego odŝywiania (usługa 2) oraz ciągłym nadzorem zdrowia pacjenta w domu (usługa 4). Usługę tę nazwiemy Usługą kontroli odŝywiania pacjenta przyjmującego leki. Usługa ta została zidentyfikowana jako konkretna i realna potrzeba wynikająca z doświadczeń projektu PIPS Scenariusz zastosowania systemu zarządzania wiedzą nie w pełni wiarygodną w usłudze kontroli odżywiania pacjenta przyjmującego leki Coraz szerszy dostęp do leków bez recepty oraz zwiększająca się liczba osób leczonych na co dzień farmakologicznie wraz z coraz szerszą gamą dostępnych produktów Ŝywieniowych powoduje gwałtowny wzrost zapotrzebowania na usługi kontrolowania prawidłowego odŝywiania się pacjentów przyjmujących leki. Omawiana usługa umoŝliwia dostęp do informacji dotyczących interakcji leków z produktami Ŝywnościowymi. Informacja ta jednak jest podawana w Internecie przez uŝytkowników róŝnego rodzaju: producentów Ŝywności i leków, instytuty zielarskie i medyczne, lekarzy, a takŝe szeregowych uŝytkowników Internetu opisujących własne doświadczenia i obserwacje. Usługa oferuje moŝliwość definiowania wiarygodności wymaganej od źródeł, z których pacjent chce korzystać. Odbiorcami tej usługi są osoby przyjmujące leki. Na rysunku 8.2 została pokazana przykładowa sieć wiarygodności wiedzy na temat interakcji leków z produktami Ŝywnościowymi. Dla tej sieci wiarygodności zostały zdefiniowane dwie terminologie: terminologia dziedzinowa interakcji leków z produktami Ŝywnościowymi Interakcje oraz terminologia wiarygodności WiarygodnośćInterakcji. Terminologia Interakcje została przedstawiona graficznie na rysunku 8.3. Terminologia ta 94

105 Ocena metod zarządzania wiedzą nie w pełni wiarygodną Rozdział 8 importuje dwie terminologie utworzone w projekcie PIPS: terminologię leków z ontologii o nazwie PIPSDrugs oraz terminologię produktów Ŝywnościowych z ontologii o nazwie PIPSFood. Rysunek 8.2. Przykładowa sieć wiarygodności wiedzy na temat interakcji leków z produktami Ŝywnościowymi Obie te ontologie zostały przygotowane przez University of Liverpool jako zbiór ontologii w języku OWL-DL. Ontologia PIPSDrugs zawiera informacje o lekach (ich nazwy, tzw. kody ATC, rodzaje opakowań itd.), natomiast ontologia PIPSFood zawiera informacje o produktach Ŝywnościowych wraz z ich podziałem na odpowiednie grupy Ŝywieniowe (takie jak produkty mączne, nabiał, warzywa itd.). W terminologii Interakcje zostały zdefiniowane trzy podstawowe rodzaje interakcji: Wchłanianie (dotyczące wchłaniania leków w organizmie), Metabolizm (dotyczące biotransformacji leków w organizmie) i Synergia (wzmocnienie działania leku w przypadku spoŝycia go z pewnymi pokarmami). Dodatkowo, zdefiniowano równieŝ koncept opisujący inne rodzaje interakcji Inne. Rysunek 8.3. Terminologia dziedzinowa Interakcje 95

106 Rozdział 8 Ocena metod zarządzania wiedzą nie w pełni wiarygodną Interakcje dotyczące wchłaniania zostały podzielone na interakcje dotyczące zwiększonego wchłaniania ZwiększoneWchłanianie - i zmniejszonego wchłaniania ZmniejszoneWchłanianie. KaŜda interakcja zachodzi pomiędzy lekiem (rola lekwinterakcji) i składnikiem pokarmowym (rola produktwinterakcji). Dodatkowo, dla kaŝdej interakcji zdefiniowano przyczynę występowania interakcji (rola przyczynainterakcji) i moŝliwe konsekwencje danej interakcji (rola konsekwencjainterakcji). Te ostatnie podzielone zostały na PowaŜne i Łagodne. Terminologia WiarygodnośćInterakcji została przedstawiona na rysunku 8.4. W terminologii opisującej wiarygodność wyspecyfikowano cechę Status określającą, Ŝe informacja na temat danej interakcji między lekiem a produktem Ŝywnościowym została dopiero zauwaŝona (zgłoszony) albo potwierdzona badaniami klinicznymi (potwierdzonybadaniamiklinicznymi). Dodatkowo, informacje te mogą mieć certyfikat instytucji certyfikującej, np. HON (ang. Health on the Net) macertyfikat. W terminologii wiarygodności zapisywane są równieŝ dane dotyczące twórcy informacji (koncept Twórca): czy jest to firma farmaceutyczna (koncept FirmaFarmaceutyczna), lekarz (koncept Lekarz), instytucja medyczna (koncept InstytucjaMedyczna), czy zwykły uŝytkownik (koncept UŜytkownikNieprofesjonalny). W terminologii wiarygodności zapisana jest równieŝ informacja o tym, Ŝe wszystkie informacje podane przez firmy farmaceutyczne lub instytucje medyczne muszą być potwierdzone badaniami klinicznymi (aksjomat: utworzonaprzez.(instytucjamedyczna + FirmaFarmaceutyczna) m mastatus.{potwierdzony BadaniamiKlinicznymi} Rysunek 8.4. Terminologia wiarygodności WiarygodnośćInterakcji Opis terminologii Interakcje, WiarygodnośćInterakcji, PIPSDrugs i PIPSFood został przedstawiony w tabeli 8.1. Tabela 8.1. Opis terminologii w systemie zarządzania wiedzą nie w pełni wiarygodną w usłudze kontroli odŝywiania pacjenta przyjmującego leki PIPSFood Ontologia Opis Schemat wiedzy przechowujący produkty i ich podział na odpowiednie grupy Ŝywieniowe Liczba konceptów Liczba ról i atrybutów

Internet Semantyczny. Logika opisowa

Internet Semantyczny. Logika opisowa Internet Semantyczny Logika opisowa Ontologie Definicja Grubera: Ontologia to formalna specyfikacja konceptualizacji pewnego obszaru wiedzy czy opisu elementów rzeczywistości. W Internecie Semantycznym

Bardziej szczegółowo

Internet Semantyczny i Logika II

Internet Semantyczny i Logika II Internet Semantyczny i Logika II Ontologie Definicja Grubera: Ontologia to formalna specyfikacja konceptualizacji pewnego obszaru wiedzy czy opisu elementów rzeczywistości. W Internecie Semantycznym językiem

Bardziej szczegółowo

Integracja heterogenicznych źródeł wiedzy z wykorzystaniem logiki opisowej

Integracja heterogenicznych źródeł wiedzy z wykorzystaniem logiki opisowej Politechnika Gdańska Wydział Elektroniki, Telekomunikacji i Informatyki Katedra InŜynierii Oprogramowania Teresa Zawadzka Integracja heterogenicznych źródeł wiedzy z wykorzystaniem logiki opisowej Rozprawa

Bardziej szczegółowo

Reprezentacja wiedzy ontologie, logiki deskrypcyjne

Reprezentacja wiedzy ontologie, logiki deskrypcyjne Reprezentacja wiedzy ontologie, logiki deskrypcyjne Agnieszka Ławrynowicz 24 listopada 2016 Plan wykładu 1 Powtórka: sieci semantyczne, RDF 2 Definicja ontologii 3 Logiki deskrypcyjne Semantyczny Internet

Bardziej szczegółowo

Ontologie Wiedza semantyczna Semantic Web Inżynieria ontologii. Zarządzanie wiedzą. Wykład Sieci semantyczne. Joanna Kołodziejczyk.

Ontologie Wiedza semantyczna Semantic Web Inżynieria ontologii. Zarządzanie wiedzą. Wykład Sieci semantyczne. Joanna Kołodziejczyk. Wykład Sieci semantyczne czerwiec 2010 Ontologie Struktura sieci semantycznej Plan wykładu Ontologie Definicja ontologii Jest to formalna reprezentacja wiedzy przez zbiór konceptów z zadanej dziedziny

Bardziej szczegółowo

PLAN ZARZĄDZANIA WYMAGANIAMI PROJEKT <NAZWA PROJEKTU> WERSJA <NUMER WERSJI DOKUMENTU>

PLAN ZARZĄDZANIA WYMAGANIAMI PROJEKT <NAZWA PROJEKTU> WERSJA <NUMER WERSJI DOKUMENTU> Załącznik nr 4.4 do Umowy nr 35-ILGW-253-.../20.. z dnia... MINISTERSTWO FINANSÓW DEPARTAMENT INFORMATYKI PLAN ZARZĄDZANIA WYMAGANIAMI PROJEKT WERSJA numer wersji

Bardziej szczegółowo

Ontologie, czyli o inteligentnych danych

Ontologie, czyli o inteligentnych danych 1 Ontologie, czyli o inteligentnych danych Bożena Deka Andrzej Tolarczyk PLAN 2 1. Korzenie filozoficzne 2. Ontologia w informatyce Ontologie a bazy danych Sieć Semantyczna Inteligentne dane 3. Zastosowania

Bardziej szczegółowo

technologii informacyjnych kształtowanie , procesów informacyjnych kreowanie metod dostosowania odpowiednich do tego celu środków technicznych.

technologii informacyjnych kształtowanie , procesów informacyjnych kreowanie metod dostosowania odpowiednich do tego celu środków technicznych. Informatyka Coraz częściej informatykę utoŝsamia się z pojęciem technologii informacyjnych. Za naukową podstawę informatyki uwaŝa się teorię informacji i jej związki z naukami technicznymi, np. elektroniką,

Bardziej szczegółowo

Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych dr inż. Adam Iwaniak Infrastruktura Danych Przestrzennych w Polsce i Europie Seminarium, AR Wrocław

Bardziej szczegółowo

Systemy ekspertowe. System ekspertowy wspomagający wybór zestawu komputerowego w oparciu o ontologie i system wnioskujący RacerPro

Systemy ekspertowe. System ekspertowy wspomagający wybór zestawu komputerowego w oparciu o ontologie i system wnioskujący RacerPro Systemy ekspertowe System ekspertowy wspomagający wybór zestawu komputerowego w oparciu o ontologie i system wnioskujący RacerPro Autorzy: 1 Wstęp Wybór zestawu komputerowego, ze względu na istnienie wielu

Bardziej szczegółowo

Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski

Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski Systemy ekspertowe i ich zastosowania Katarzyna Karp Marek Grabowski Plan prezentacji Wstęp Własności systemów ekspertowych Rodzaje baz wiedzy Metody reprezentacji wiedzy Metody wnioskowania Języki do

Bardziej szczegółowo

Semantic Web Internet Semantyczny

Semantic Web Internet Semantyczny Semantic Web Internet Semantyczny Semantyczny Internet - Wizja (1/2) Pomysłodawca sieci WWW - Tim Berners-Lee, fizyk pracujący w CERN Jego wizja sieci o wiele bardziej ambitna niż istniejąca obecnie (syntaktyczna)

Bardziej szczegółowo

PODSTAWY SZTUCZNEJ INTELIGENCJI

PODSTAWY SZTUCZNEJ INTELIGENCJI Katedra Informatyki Stosowanej Politechnika Łódzka PODSTAWY SZTUCZNEJ INTELIGENCJI Laboratorium PROGRAMOWANIE SYSTEMÓW EKSPERTOWYCH Opracowanie: Dr hab. inŝ. Jacek Kucharski Dr inŝ. Piotr Urbanek Cel ćwiczenia

Bardziej szczegółowo

Laboratorium nr 5. Temat: Funkcje agregujące, klauzule GROUP BY, HAVING

Laboratorium nr 5. Temat: Funkcje agregujące, klauzule GROUP BY, HAVING Laboratorium nr 5 Temat: Funkcje agregujące, klauzule GROUP BY, HAVING Celem ćwiczenia jest zaprezentowanie zagadnień dotyczących stosowania w zapytaniach języka SQL predefiniowanych funkcji agregujących.

Bardziej szczegółowo

Systemy ekspertowe. Krzysztof Patan

Systemy ekspertowe. Krzysztof Patan Systemy ekspertowe Krzysztof Patan Wprowadzenie System ekspertowy Program komputerowy, który wykonuje złożone zadania o dużych wymaganiach intelektualnych i robi to tak dobrze jak człowiek będący ekspertem

Bardziej szczegółowo

Programowanie deklaratywne

Programowanie deklaratywne Programowanie deklaratywne Artur Michalski Informatyka II rok Plan wykładu Wprowadzenie do języka Prolog Budowa składniowa i interpretacja programów prologowych Listy, operatory i operacje arytmetyczne

Bardziej szczegółowo

JAKIEGO RODZAJU NAUKĄ JEST

JAKIEGO RODZAJU NAUKĄ JEST JAKIEGO RODZAJU NAUKĄ JEST INFORMATYKA? Computer Science czy Informatyka? Computer Science czy Informatyka? RACZEJ COMPUTER SCIENCE bo: dziedzina ta zaistniała na dobre wraz z wynalezieniem komputerów

Bardziej szczegółowo

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

Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa. Plan Procedura decyzyjna Reguły α i β - algorytm Plan Procedura decyzyjna Reguły α i β - algorytm Logika obliczeniowa Instytut Informatyki 1 Procedura decyzyjna Logiczna konsekwencja Teoria aksjomatyzowalna

Bardziej szczegółowo

Lingwistyczny system definicyjny wykorzystujący korpusy tekstów oraz zasoby internetowe.

Lingwistyczny system definicyjny wykorzystujący korpusy tekstów oraz zasoby internetowe. Lingwistyczny system definicyjny wykorzystujący korpusy tekstów oraz zasoby internetowe. Autor: Mariusz Sasko Promotor: dr Adrian Horzyk Plan prezentacji 1. Wstęp 2. Cele pracy 3. Rozwiązanie 3.1. Robot

Bardziej szczegółowo

Rachunek zdań. Zdanie w sensie logicznym jest to wyraŝenie jednoznacznie stwierdzające, na gruncie reguł danego języka, iŝ tak a

Rachunek zdań. Zdanie w sensie logicznym jest to wyraŝenie jednoznacznie stwierdzające, na gruncie reguł danego języka, iŝ tak a Zdanie w sensie logicznym jest to wyraŝenie jednoznacznie stwierdzające, na gruncie reguł danego języka, iŝ tak a tak jest alboŝe tak a tak nie jest. Wartość logiczna zdania jest czymś obiektywnym, to

Bardziej szczegółowo

WSKAZÓWKI DLA AUTORÓW Optymalizacja publikacji naukowych dla wyników wyszukiwarek ASEO 1

WSKAZÓWKI DLA AUTORÓW Optymalizacja publikacji naukowych dla wyników wyszukiwarek ASEO 1 WSKAZÓWKI DLA AUTORÓW Optymalizacja publikacji naukowych dla wyników wyszukiwarek ASEO 1 W celu zwiększenia indeksowania i przeszukiwania publikacji autorskich przez naukowe wyszukiwarki internetowe, należy

Bardziej szczegółowo

Spis treści Informacje podstawowe Predykaty Przykłady Źródła RDF. Marek Prząda. PWSZ w Tarnowie. Tarnów, 6 lutego 2009

Spis treści Informacje podstawowe Predykaty Przykłady Źródła RDF. Marek Prząda. PWSZ w Tarnowie. Tarnów, 6 lutego 2009 PWSZ w Tarnowie Tarnów, 6 lutego 2009 1 Interpretacja trójek i SWI-Prolog Składnia 2 3 4 Interpretacja trójek i SWI-Prolog Składnia Opis (ang. Resource Description Framework) jest specyfikacją modelu metadanych,

Bardziej szczegółowo

Web 3.0 Sieć Pełna Znaczeń (Semantic Web) Perspektywy dla branży motoryzacyjnej i finansowej. Przyjęcie branżowe EurotaxGlass s Polska 10 luty 2012

Web 3.0 Sieć Pełna Znaczeń (Semantic Web) Perspektywy dla branży motoryzacyjnej i finansowej. Przyjęcie branżowe EurotaxGlass s Polska 10 luty 2012 Web 3.0 Sieć Pełna Znaczeń (Semantic Web) Perspektywy dla branży motoryzacyjnej i finansowej Przyjęcie branżowe EurotaxGlass s Polska 10 luty 2012 Web 3.0 - prawdziwa rewolucja czy puste hasło? Web 3.0

Bardziej szczegółowo

Metody strukturalnej analizy ontologii opartych na logice opisowej

Metody strukturalnej analizy ontologii opartych na logice opisowej Politechnika Gdańska Wydział Elektroniki, Telekomunikacji i Informatyki Katedra InŜynierii Oprogramowania Wojciech Waloszek Metody strukturalnej analizy ontologii opartych na logice opisowej Rozprawa doktorska

Bardziej szczegółowo

3 grudnia Sieć Semantyczna

3 grudnia Sieć Semantyczna Akademia Górniczo-Hutnicza http://www.agh.edu.pl/ 1/19 3 grudnia 2005 Sieć Semantyczna Michał Budzowski budzow@grad.org 2/19 Plan prezentacji Krótka historia Problemy z WWW Koncepcja Sieci Semantycznej

Bardziej szczegółowo

World Wide Web? rkijanka

World Wide Web? rkijanka World Wide Web? rkijanka World Wide Web? globalny, interaktywny, dynamiczny, wieloplatformowy, rozproszony, graficzny, hipertekstowy - system informacyjny, działający na bazie Internetu. 1.Sieć WWW jest

Bardziej szczegółowo

KARTOGRAFICZNA METODA REPREZENTACJI WIEDZY W SYSTEMIE KASEA

KARTOGRAFICZNA METODA REPREZENTACJI WIEDZY W SYSTEMIE KASEA KARTOGRAFICZNA METODA REPREZENTACJI WIEDZY W SYSTEMIE KASEA Wojciech WALOSZEK* Streszczenie. Niniejszy rozdział prezentuje opracowaną przez autora metodę reprezentacji wiedzy, nazwaną kartografią wiedzy,

Bardziej szczegółowo

Wykład 11a. Składnia języka Klasycznego Rachunku Predykatów. Języki pierwszego rzędu.

Wykład 11a. Składnia języka Klasycznego Rachunku Predykatów. Języki pierwszego rzędu. Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki Wykład 11a. Składnia języka Klasycznego Rachunku Predykatów. Języki pierwszego rzędu. 1 Logika Klasyczna obejmuje dwie teorie:

Bardziej szczegółowo

2

2 1 2 3 4 5 Dużo pisze się i słyszy o projektach wdrożeń systemów zarządzania wiedzą, które nie przyniosły oczekiwanych rezultatów, bo mało kto korzystał z tych systemów. Technologia nie jest bowiem lekarstwem

Bardziej szczegółowo

Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej.

Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej. Efekty dla studiów pierwszego stopnia profil ogólnoakademicki na kierunku Informatyka w języku polskim i w języku angielskim (Computer Science) na Wydziale Matematyki i Nauk Informacyjnych, gdzie: * Odniesienie-

Bardziej szczegółowo

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki

Bardziej szczegółowo

Bazy danych. wprowadzenie teoretyczne. Piotr Prekurat 1

Bazy danych. wprowadzenie teoretyczne. Piotr Prekurat 1 Bazy danych wprowadzenie teoretyczne Piotr Prekurat 1 Baza danych Jest to zbiór danych lub jakichkolwiek innych materiałów i elementów zgromadzonych według określonej systematyki lub metody. Zatem jest

Bardziej szczegółowo

IV.3.b. Potrafisz samodzielnie dokonać podstawowej konfiguracji sieci komputerowej

IV.3.b. Potrafisz samodzielnie dokonać podstawowej konfiguracji sieci komputerowej IV.3.b. Potrafisz samodzielnie dokonać podstawowej konfiguracji sieci komputerowej Co warto wiedzieć o łączeniu komputerów w sieci? Spójrz na rysunek IV.3p, który przedstawia właściwości Połączeń lokalnych,

Bardziej szczegółowo

INSTYTUT AUTOMATYKI I INŻYNIERII INFORMATYCZNEJ POLITECHNIKI POZNAŃSKIEJ. Adam Meissner. Elementy logik deskrypcyjych

INSTYTUT AUTOMATYKI I INŻYNIERII INFORMATYCZNEJ POLITECHNIKI POZNAŃSKIEJ. Adam Meissner. Elementy logik deskrypcyjych INSTYTUT AUTOMATYKI I INŻYNIERII INFORMATYCZNEJ POLITECHNIKI POZNAŃSKIEJ Adam Meissner Adam.Meissner@put.poznan.pl http://www.man.poznan.pl/~ameis Elementy logik deskrypcyjych Literatura [1] Baader F.

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia. Materiały dla nauczyciela

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia. Materiały dla nauczyciela Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia Materiały dla nauczyciela Projekt

Bardziej szczegółowo

Gramatyki, wyprowadzenia, hierarchia Chomsky ego. Gramatyka

Gramatyki, wyprowadzenia, hierarchia Chomsky ego. Gramatyka Gramatyki, wyprowadzenia, hierarchia Chomsky ego Teoria automatów i języków formalnych Dr inŝ. Janusz Majewski Katedra Informatyki Gramatyka Gramatyką G nazywamy czwórkę uporządkowaną gdzie: G =

Bardziej szczegółowo

DLA SEKTORA INFORMATYCZNEGO W POLSCE

DLA SEKTORA INFORMATYCZNEGO W POLSCE DLA SEKTORA INFORMATYCZNEGO W POLSCE SRK IT obejmuje kompetencje najważniejsze i specyficzne dla samego IT są: programowanie i zarządzanie systemami informatycznymi. Z rozwiązań IT korzysta się w każdej

Bardziej szczegółowo

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE Studia podyplomowe dla nauczycieli INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE Przedmiot JĘZYKI PROGRAMOWANIA DEFINICJE I PODSTAWOWE POJĘCIA Autor mgr Sławomir Ciernicki 1/7 Aby

Bardziej szczegółowo

Wykład I. Wprowadzenie do baz danych

Wykład I. Wprowadzenie do baz danych Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles

Bardziej szczegółowo

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

Logika Stosowana. Wykład 1 - Logika zdaniowa. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017 Logika Stosowana Wykład 1 - Logika zdaniowa Marcin Szczuka Instytut Informatyki UW Wykład monograficzny, semestr letni 2016/2017 Marcin Szczuka (MIMUW) Logika Stosowana 2017 1 / 30 Plan wykładu 1 Język

Bardziej szczegółowo

Internet Semantyczny. Schematy RDF i wnioskowanie

Internet Semantyczny. Schematy RDF i wnioskowanie Internet Semantyczny Schematy RDF i wnioskowanie Ewolucja Internetu Internet dzisiaj Internet Semantyczny Jorge Cardoso, The Syntactic and the Semantic Web, in Semantic Web Services: Theory, Tools, and

Bardziej szczegółowo

PROJEKT CZĘŚCIOWO FINANSOWANY PRZEZ UNIĘ EUROPEJSKĄ. Opis działania raportów w ClearQuest

PROJEKT CZĘŚCIOWO FINANSOWANY PRZEZ UNIĘ EUROPEJSKĄ. Opis działania raportów w ClearQuest PROJEKT CZĘŚCIOWO FINANSOWANY PRZEZ UNIĘ EUROPEJSKĄ Opis działania raportów w ClearQuest Historia zmian Data Wersja Opis Autor 2008.08.26 1.0 Utworzenie dokumentu. Wersja bazowa dokumentu. 2009.12.11 1.1

Bardziej szczegółowo

Systemy liczenia. 333= 3*100+3*10+3*1

Systemy liczenia. 333= 3*100+3*10+3*1 Systemy liczenia. System dziesiętny jest systemem pozycyjnym, co oznacza, Ŝe wartość liczby zaleŝy od pozycji na której się ona znajduje np. w liczbie 333 kaŝda cyfra oznacza inną wartość bowiem: 333=

Bardziej szczegółowo

Multi-wyszukiwarki. Mediacyjne Systemy Zapytań wprowadzenie. Architektury i technologie integracji danych Systemy Mediacyjne

Multi-wyszukiwarki. Mediacyjne Systemy Zapytań wprowadzenie. Architektury i technologie integracji danych Systemy Mediacyjne Architektury i technologie integracji danych Systemy Mediacyjne Multi-wyszukiwarki Wprowadzenie do Mediacyjnych Systemów Zapytań (MQS) Architektura MQS Cechy funkcjonalne MQS Cechy implementacyjne MQS

Bardziej szczegółowo

JAK OPTYMALNIE DOBRAĆ ODPOWIEDNIE TECHNOLOGIE INFORMATYCZNE?

JAK OPTYMALNIE DOBRAĆ ODPOWIEDNIE TECHNOLOGIE INFORMATYCZNE? K O N F E R E N C J A I N F O S H A R E 2 0 0 7 G d a ń s k 25-26.04.2007 JAK OPTYMALNIE DOBRAĆ ODPOWIEDNIE TECHNOLOGIE INFORMATYCZNE? Zespół Zarządzania Technologiami Informatycznymi Prezentacja dr inż.

Bardziej szczegółowo

EFEKTY KSZTAŁCENIA DLA KIERUNKU STUDIÓW INFORMATYKA

EFEKTY KSZTAŁCENIA DLA KIERUNKU STUDIÓW INFORMATYKA EFEKTY KSZTAŁCENIA DLA KIERUNKU STUDIÓW INFORMATYKA poziom kształcenia profil kształcenia tytuł zawodowy uzyskiwany przez absolwenta studia drugiego stopnia ogólnoakademicki magister inżynier 1. Umiejscowienie

Bardziej szczegółowo

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

Logika Stosowana. Wykład 7 - Zbiory i logiki rozmyte Część 3 Prawdziwościowa logika rozmyta. Marcin Szczuka. Instytut Informatyki UW Logika Stosowana Wykład 7 - Zbiory i logiki rozmyte Część 3 Prawdziwościowa logika rozmyta Marcin Szczuka Instytut Informatyki UW Wykład monograficzny, semestr letni 2016/2017 Marcin Szczuka (MIMUW) Logika

Bardziej szczegółowo

Instrukcja do panelu administracyjnego. do zarządzania kontem FTP WebAs. www.poczta.greenlemon.pl

Instrukcja do panelu administracyjnego. do zarządzania kontem FTP WebAs. www.poczta.greenlemon.pl Instrukcja do panelu administracyjnego do zarządzania kontem FTP WebAs www.poczta.greenlemon.pl Opracowanie: Agencja Mediów Interaktywnych GREEN LEMON Spis treści 1.Wstęp 2.Konfiguracja 3.Konto FTP 4.Domeny

Bardziej szczegółowo

KURS ACCESS 2003 Wiadomości wstępne

KURS ACCESS 2003 Wiadomości wstępne KURS ACCESS 2003 Wiadomości wstępne Biorąc c udział w kursie uczestnik zapozna się z tematyką baz danych i systemu zarządzania bazami danych jakim jest program Microsoft Access 2003. W trakcie kursu naleŝy

Bardziej szczegółowo

Technologia informacyjna

Technologia informacyjna Technologia informacyjna Pracownia nr 9 (studia stacjonarne) - 05.12.2008 - Rok akademicki 2008/2009 2/16 Bazy danych - Plan zajęć Podstawowe pojęcia: baza danych, system zarządzania bazą danych tabela,

Bardziej szczegółowo

Internet Semantyczny. Wstęp do OWL 2

Internet Semantyczny. Wstęp do OWL 2 Internet Semantyczny Wstęp do OWL 2 RDFS Podstawowymi elementami które określamy w RDFS są klasy (ang. class) zasobów i właściwości (ang. property) zasobów charakterystyczne dla interesującego nas fragmentu

Bardziej szczegółowo

Wprowadzenie do multimedialnych baz danych. Opracował: dr inż. Piotr Suchomski

Wprowadzenie do multimedialnych baz danych. Opracował: dr inż. Piotr Suchomski Wprowadzenie do multimedialnych baz danych Opracował: dr inż. Piotr Suchomski Wprowadzenie bazy danych Multimedialne bazy danych to takie bazy danych, w których danymi mogą być tekst, zdjęcia, grafika,

Bardziej szczegółowo

Ministerstwo Finansów

Ministerstwo Finansów Ministerstwo Finansów Departament Informatyzacji Specyfikacja Wejścia-Wyjścia Wersja 1.0 Warszawa, 16.02.2017 r. Copyright (c) 2017 Ministerstwo Finansów MINISTERSTWO FINANSÓW, DEPARTAMENT INFORMATYZACJI

Bardziej szczegółowo

INFORMATYKA Pytania ogólne na egzamin dyplomowy

INFORMATYKA Pytania ogólne na egzamin dyplomowy INFORMATYKA Pytania ogólne na egzamin dyplomowy 1. Wyjaśnić pojęcia problem, algorytm. 2. Podać definicję złożoności czasowej. 3. Podać definicję złożoności pamięciowej. 4. Typy danych w języku C. 5. Instrukcja

Bardziej szczegółowo

LOGIKA I TEORIA ZBIORÓW

LOGIKA I TEORIA ZBIORÓW LOGIKA I TEORIA ZBIORÓW Logika Logika jest nauką zajmującą się zdaniami Z punktu widzenia logiki istotne jest, czy dane zdanie jest prawdziwe, czy nie Nie jest natomiast istotne o czym to zdanie mówi Definicja

Bardziej szczegółowo

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

PODSTAWY BAZ DANYCH. 19. Perspektywy baz danych. 2009/2010 Notatki do wykładu Podstawy baz danych PODSTAWY BAZ DANYCH 19. Perspektywy baz danych 1 Perspektywy baz danych Temporalna baza danych Temporalna baza danych - baza danych posiadająca informację o czasie wprowadzenia lub czasie ważności zawartych

Bardziej szczegółowo

Agnieszka NOWAK * 1. WSTĘP

Agnieszka NOWAK * 1. WSTĘP aktualizacja bazy wiedzy, systemy wspomagania decyzji, statystyka, znaczenie informacji statystycznej. Agnieszka NOWAK * PROCES AKTUALIZACJI SYSTEMU WSPOMAGANIA DECYZJI NA PODSTAWIE INFORMACJI STATYSTYCZNYCH

Bardziej szczegółowo

Systemy ekspertowe : program PCShell

Systemy ekspertowe : program PCShell Instytut Informatyki Uniwersytetu Śląskiego lab 1 Opis sytemu ekspertowego Metody wnioskowania System PcShell Projekt System ekspertowy - system ekspertowy to system komputerowy zawierający w sobie wyspecjalizowaną

Bardziej szczegółowo

MINISTERSTWO SPRAW WEWNĘTRZNYCH I ADMINISTRACJI DEPARTAMENT INFORMATYZACJI

MINISTERSTWO SPRAW WEWNĘTRZNYCH I ADMINISTRACJI DEPARTAMENT INFORMATYZACJI MINISTERSTWO SPRAW WEWNĘTRZNYCH I ADMINISTRACJI DEPARTAMENT INFORMATYZACJI ul. Wspólna 1/3 00-529 Warszawa ZASADY NAZEWNICTWA DOKUMENTÓW XML Projekt współfinansowany Przez Unię Europejską Europejski Fundusz

Bardziej szczegółowo

Internet, jako ocean informacji. Technologia Informacyjna Lekcja 2

Internet, jako ocean informacji. Technologia Informacyjna Lekcja 2 Internet, jako ocean informacji Technologia Informacyjna Lekcja 2 Internet INTERNET jest rozległą siecią połączeń, między ogromną liczbą mniejszych sieci komputerowych na całym świecie. Jest wszechstronnym

Bardziej szczegółowo

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym konceptualnym modelem danych jest tzw. model związków encji (ERM

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 2 Ćwiczenia w narzędziu CASE diagram klas. Materiały dla nauczyciela

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 2 Ćwiczenia w narzędziu CASE diagram klas. Materiały dla nauczyciela Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Laboratorium modelowania oprogramowania w języku UML Ćwiczenie 2 Ćwiczenia w narzędziu CASE diagram

Bardziej szczegółowo

Ćwiczenie numer 4 JESS PRZYKŁADOWY SYSTEM EKSPERTOWY.

Ćwiczenie numer 4 JESS PRZYKŁADOWY SYSTEM EKSPERTOWY. Ćwiczenie numer 4 JESS PRZYKŁADOWY SYSTEM EKSPERTOWY. 1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z przykładowym systemem ekspertowym napisanym w JESS. Studenci poznają strukturę systemu ekspertowego,

Bardziej szczegółowo

Spis treści. I. Czym jest Indeks Haseł 3 II. Wyszukiwanie hasła 4. 1) Alfabetyczna lista haseł 4 2) Wyszukiwarka haseł 4 3) Grupy haseł 6

Spis treści. I. Czym jest Indeks Haseł 3 II. Wyszukiwanie hasła 4. 1) Alfabetyczna lista haseł 4 2) Wyszukiwarka haseł 4 3) Grupy haseł 6 Spis treści I. Czym jest Indeks Haseł 3 II. Wyszukiwanie hasła 4 1) Alfabetyczna lista haseł 4 2) Wyszukiwarka haseł 4 3) Grupy haseł 6 III. Dokumenty powiązane z wybranym hasłem 7 IV. Moje hasła 10 1)

Bardziej szczegółowo

Internet Semantyczny i Logika I

Internet Semantyczny i Logika I Internet Semantyczny i Logika I Warstwy Internetu Semantycznego Dowód Zaufanie Logika OWL, Ontologie Podpis cyfrowy RDF, schematy RDF XML, schematy XML przestrzenie nazw URI Po co nam logika? Potrzebujemy

Bardziej szczegółowo

Wszystko na temat wzoru dokumentu elektronicznego

Wszystko na temat wzoru dokumentu elektronicznego Stowarzyszenie PEMI Wszystko na temat wzoru dokumentu elektronicznego Czym jest, kto go tworzy, kto publikuje, kto może z niego skorzystać? Mirosław Januszewski, Tomasz Rakoczy, Andrzej Matejko 2007-07-25

Bardziej szczegółowo

Spacery losowe generowanie realizacji procesu losowego

Spacery losowe generowanie realizacji procesu losowego Spacery losowe generowanie realizacji procesu losowego Michał Krzemiński Streszczenie Omówimy metodę generowania trajektorii spacerów losowych (błądzenia losowego), tj. szczególnych procesów Markowa z

Bardziej szczegółowo

M T E O T D O ZI Z E E A LG L O G R O Y R TM

M T E O T D O ZI Z E E A LG L O G R O Y R TM O ALGORYTMACH I METODZIE ALGORYTMICZNEJ Czym jest algorytm? Czym jest algorytm? przepis schemat zestaw reguł [ ] program ALGORYTM (objaśnienie ogólne) Algorytm Pojęcie o rodowodzie matematycznym, oznaczające

Bardziej szczegółowo

Świat rzeczywisty i jego model

Świat rzeczywisty i jego model 2 Świat rzeczywisty i jego model Świat rzeczywisty (dziedzina problemu) Świat obiektów (model dziedziny) Dom Samochód Osoba Modelowanie 3 Byty i obiekty Byt - element świata rzeczywistego (dziedziny problemu),

Bardziej szczegółowo

Logika Matematyczna (1)

Logika Matematyczna (1) Logika Matematyczna (1) Jerzy Pogonowski Zakład Logiki Stosowanej UAM www.logic.amu.edu.pl pogon@amu.edu.pl 4 X 2007 Jerzy Pogonowski (MEG) Logika Matematyczna (1) 4 X 2007 1 / 18 Plan konwersatorium Dzisiaj:

Bardziej szczegółowo

Zasady Nazewnictwa. Dokumentów XML 2007-11-08. Strona 1 z 9

Zasady Nazewnictwa. Dokumentów XML 2007-11-08. Strona 1 z 9 Zasady Nazewnictwa Dokumentów 2007-11-08 Strona 1 z 9 Spis treści I. Wstęp... 3 II. Znaczenie spójnych zasady nazewnictwa... 3 III. Zasady nazewnictwa wybrane zagadnienia... 3 1. Język oraz forma nazewnictwa...

Bardziej szczegółowo

Opis programu OpiekunNET. Historia... Architektura sieciowa

Opis programu OpiekunNET. Historia... Architektura sieciowa Opis programu OpiekunNET OpiekunNET jest pierwszym na polskim rynku systemem filtrującym nowej generacji. Jako program w pełni sieciowy oferuje funkcje wcześniej niedostępne dla programów kontrolujących

Bardziej szczegółowo

Tom 6 Opis oprogramowania

Tom 6 Opis oprogramowania Część 4 Narzędzie do wyliczania wielkości oraz wartości parametrów stanu Diagnostyka stanu nawierzchni - DSN Generalna Dyrekcja Dróg Krajowych i Autostrad Warszawa, 30 maja 2012 Historia dokumentu Nazwa

Bardziej szczegółowo

Paweł Kurzawa, Delfina Kongo

Paweł Kurzawa, Delfina Kongo Paweł Kurzawa, Delfina Kongo Pierwsze prace nad standaryzacją Obiektowych baz danych zaczęły się w roku 1991. Stworzona została grupa do prac nad standardem, została ona nazwana Object Database Management

Bardziej szczegółowo

Definicje. Algorytm to:

Definicje. Algorytm to: Algorytmy Definicje Algorytm to: skończony ciąg operacji na obiektach, ze ściśle ustalonym porządkiem wykonania, dający możliwość realizacji zadania określonej klasy pewien ciąg czynności, który prowadzi

Bardziej szczegółowo

Laboratorium nr 8. Temat: Podstawy języka zapytań SQL (część 2)

Laboratorium nr 8. Temat: Podstawy języka zapytań SQL (część 2) Laboratorium nr 8 Temat: Podstawy języka zapytań SQL (część 2) PLAN LABORATORIUM: 1. Sortowanie. 2. Warunek WHERE 3. Eliminacja powtórzeń - DISTINCT. 4. WyraŜenia: BETWEEN...AND, IN, LIKE, IS NULL. 5.

Bardziej szczegółowo

METODA ELPAR ŁĄCZENIA ONTOLOGII OPARTA NA ICH KARTOGRAFICZNEJ REPREZENTACJI

METODA ELPAR ŁĄCZENIA ONTOLOGII OPARTA NA ICH KARTOGRAFICZNEJ REPREZENTACJI METODA ELPAR ŁĄCZENIA ONTOLOGII OPARTA NA ICH KARTOGRAFICZNEJ REPREZENTACJI Krzysztof GOCZYŁA*, Teresa GRABOWSKA** Streszczenie. Jednym z głównych problemów związanych z integracją wiedzy z róŝnych źródeł

Bardziej szczegółowo

Instytut Technik Innowacyjnych Semantyczna integracja danych - metody, technologie, przykłady, wyzwania

Instytut Technik Innowacyjnych Semantyczna integracja danych - metody, technologie, przykłady, wyzwania Instytut Technik Innowacyjnych Semantyczna integracja danych - metody, technologie, przykłady, wyzwania Michał Socha, Wojciech Górka Integracja danych Prosty export/import Integracja 1:1 łączenie baz danych

Bardziej szczegółowo

Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014

Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Modelowanie diagramów klas w języku UML Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Czym jest UML - Unified Modeling Language - Rodzina języków modelowania graficznego - Powstanie na przełomie lat 80

Bardziej szczegółowo

Adam Meissner.

Adam Meissner. Instytut Automatyki i Inżynierii Informatycznej Politechniki Poznańskiej Adam Meissner Adam.Meissner@put.poznan.pl http://www.man.poznan.pl/~ameis SZTUCZNA INTELIGENCJA Podstawy logiki pierwszego rzędu

Bardziej szczegółowo

Jarosław Żeliński analityk biznesowy, projektant systemów

Jarosław Żeliński analityk biznesowy, projektant systemów Trendy w architekturze oprogramowania zarządzającego procesami biznesowymi i przepływem pracy - dedykowane czy standardowe? Jarosław Żeliński analityk biznesowy, projektant systemów O mnie Od 1991 roku

Bardziej szczegółowo

SZTUCZNA INTELIGENCJA

SZTUCZNA INTELIGENCJA SZTUCZNA INTELIGENCJA SYSTEMY ROZMYTE Adrian Horzyk Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i Inżynierii Biomedycznej Laboratorium

Bardziej szczegółowo

Indukcja matematyczna

Indukcja matematyczna Indukcja matematyczna 1 Zasada indukcji Rozpatrzmy najpierw następujący przykład. Przykład 1 Oblicz sumę 1 + + 5 +... + (n 1). Dyskusja. Widzimy że dla n = 1 ostatnim składnikiem powyższej sumy jest n

Bardziej szczegółowo

Internet wyszukiwarki internetowe

Internet wyszukiwarki internetowe Internet wyszukiwarki internetowe 1. WYSZUKIWARKI INTERNETOWE to doskonały sposób na znalezienie potrzebnych informacji w Internecie. Najpopularniejsze wyszukiwarki to: http://www.google.pl/ http://www.netsprint.pl/

Bardziej szczegółowo

PROJEKT INTERFEJSU UśYTKOWNIKA PROJEKT <NAZWA PROJEKTU> WERSJA <NUMER WERSJI DOKUMENTU>

PROJEKT INTERFEJSU UśYTKOWNIKA PROJEKT <NAZWA PROJEKTU> WERSJA <NUMER WERSJI DOKUMENTU> Załącznik nr 4.5 do Umowy nr 35-ILGW-253-.../20.. z dnia... MINISTERSTWO FINANSÓW DEPARTAMENT INFORMATYKI PROJEKT INTERFEJSU UśYTKOWNIKA PROJEKT WERSJA numer wersji

Bardziej szczegółowo

Modelowanie i Programowanie Obiektowe

Modelowanie i Programowanie Obiektowe Modelowanie i Programowanie Obiektowe Wykład I: Wstęp 20 październik 2012 Programowanie obiektowe Metodyka wytwarzania oprogramowania Metodyka Metodyka ustandaryzowane dla wybranego obszaru podejście do

Bardziej szczegółowo

3.1. Na dobry początek

3.1. Na dobry początek Klasa I 3.1. Na dobry początek Regulamin pracowni i przepisy BHP podczas pracy przy komputerze Wykorzystanie komputera we współczesnym świecie Zna regulamin pracowni i przestrzega go. Potrafi poprawnie

Bardziej szczegółowo

PROLOG WSTĘP DO INFORMATYKI. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.

PROLOG WSTĘP DO INFORMATYKI. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej. Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej WSTĘP DO INFORMATYKI Adrian Horzyk PROLOG www.agh.edu.pl Pewnego dnia przyszedł na świat komputer Komputery

Bardziej szczegółowo

Wykład 2. Relacyjny model danych

Wykład 2. Relacyjny model danych Wykład 2 Relacyjny model danych Wymagania stawiane modelowi danych Unikanie nadmiarowości danych (redundancji) jedna informacja powinna być wpisana do bazy danych tylko jeden raz Problem powtarzających

Bardziej szczegółowo

KIERUNKOWE EFEKTY KSZTAŁCENIA

KIERUNKOWE EFEKTY KSZTAŁCENIA WYDZIAŁ INFORMATYKI I ZARZĄDZANIA Kierunek studiów: INFORMATYKA Stopień studiów: STUDIA I STOPNIA Obszar Wiedzy/Kształcenia: OBSZAR NAUK TECHNICZNYCH Obszar nauki: DZIEDZINA NAUK TECHNICZNYCH Dyscyplina

Bardziej szczegółowo

Programowanie deklaratywne

Programowanie deklaratywne Programowanie deklaratywne Artur Michalski Informatyka II rok Plan wykładu Wprowadzenie do języka Prolog Budowa składniowa i interpretacja programów prologowych Listy, operatory i operacje arytmetyczne

Bardziej szczegółowo

Koncepcja wirtualnego uniwersytetu z wykorzystaniem technologii semantycznej. Ilona Pawełoszek Tomasz Turek Politechnika Częstochowska

Koncepcja wirtualnego uniwersytetu z wykorzystaniem technologii semantycznej. Ilona Pawełoszek Tomasz Turek Politechnika Częstochowska Koncepcja wirtualnego uniwersytetu z wykorzystaniem technologii semantycznej Ilona Pawełoszek Tomasz Turek Politechnika Częstochowska Definicja wirtualnego uniwersytetu: Wirtualny > istniejący w przestrzeni

Bardziej szczegółowo

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie

Bardziej szczegółowo

RDF Schema (schematy RDF)

RDF Schema (schematy RDF) RDF Schema (schematy RDF) Schemat RDF nie dostarcza słownictwa dla aplikacji klasy jak np.: Namiot, Książka, lub Osoba; i właściwości, takich jak np.: waga w kg, autor lub jobtitle Schemat RDF zapewnia

Bardziej szczegółowo

Bazy danych 2. Wykład 1

Bazy danych 2. Wykład 1 Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu

Bardziej szczegółowo

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

O badaniach nad SZTUCZNĄ INTELIGENCJĄ O badaniach nad SZTUCZNĄ INTELIGENCJĄ Wykład 7. O badaniach nad sztuczną inteligencją Co nazywamy SZTUCZNĄ INTELIGENCJĄ? szczególny rodzaj programów komputerowych, a niekiedy maszyn. SI szczególną własność

Bardziej szczegółowo

Zapisywanie algorytmów w języku programowania

Zapisywanie algorytmów w języku programowania Temat C5 Zapisywanie algorytmów w języku programowania Cele edukacyjne Zrozumienie, na czym polega programowanie. Poznanie sposobu zapisu algorytmu w postaci programu komputerowego. Zrozumienie, na czym

Bardziej szczegółowo

Metoda Tablic Semantycznych

Metoda Tablic Semantycznych Procedura Plan Reguły Algorytm Logika obliczeniowa Instytut Informatyki Plan Procedura Reguły 1 Procedura decyzyjna Logiczna równoważność formuł Logiczna konsekwencja Procedura decyzyjna 2 Reguły α, β,

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla studenta

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla studenta Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Laboratorium modelowania oprogramowania w języku UML Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram

Bardziej szczegółowo

Proces informacyjny. Janusz Górczyński

Proces informacyjny. Janusz Górczyński Proces informacyjny Janusz Górczyński 1 Proces informacyjny, definicja (1) Pod pojęciem procesu informacyjnego rozumiemy taki proces semiotyczny, ekonomiczny i technologiczny, który realizuje co najmniej

Bardziej szczegółowo