TECHNOLOGIE INFORMATYCZNE WYKORZYSTYWANE W PROJEKTOWANIU I IMPLEMENTACJI ONTOLOGII



Podobne dokumenty
MOŻLIWOŚCI ZASTOSOWANIA ONTOLOGII DO OCENY TECHNOLOGII INFORMATYCZNYCH. Cezary ORŁOWSKI, Adam CZARNECKI

3 grudnia Sieć Semantyczna

Spis treści. Analiza i modelowanie_nowicki, Chomiak_Księga1.indb :03:08

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)

GML w praktyce geodezyjnej

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

JAK OPTYMALNIE DOBRAĆ ODPOWIEDNIE TECHNOLOGIE INFORMATYCZNE?

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

Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski

KARTA KURSU. Przetwarzanie dokumentów XML i zaawansowane techniki WWW

PRZEWODNIK PO PRZEDMIOCIE

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

Po zakończeniu rozważań na temat World Wide Web, poznaniu zasad organizacji witryn WWW, przeczytaniu kilkudziesięciu stron i poznaniu wielu nowych

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

EFEKTY KSZTAŁCENIA DLA KIERUNKU STUDIÓW

Semantic Web Internet Semantyczny

Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH. Modeling and analysis of computer systems Forma studiów: Stacjonarne

Ontologie, czyli o inteligentnych danych

Analiza i projektowanie aplikacji Java

extensible Markup Language, cz. 1 Marcin Gryszkalis, mg@fork.pl

PRZEWODNIK PO PRZEDMIOCIE

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

Modelowanie i Programowanie Obiektowe

Rok akademicki: 2013/2014 Kod: ZZIP IN-s Punkty ECTS: 2. Kierunek: Zarządzanie i Inżynieria Produkcji Specjalność: Informatyka w zarządzaniu

Automatyzacja procesu tworzenia i zarządzania Wirtualnymi Organizacjami w oparciu o wiedzę w zastosowaniu do architektur zorientowanych na usługi

OfficeObjects e-forms

PRZEWODNIK PO PRZEDMIOCIE

Extensible Markup Language (XML) Wrocław, Java - technologie zaawansowane

Efekt kształcenia. Wiedza

Narzędzia Informatyki w biznesie

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

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

Modelowanie i analiza systemów informatycznych

Jacek Tomaszczyk Instytut Bibliotekoznawstwa i Informacji Naukowej Uniwersytet Śląski

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

Podstawy Programowania Obiektowego

Usługi analityczne budowa kostki analitycznej Część pierwsza.

Tom 6 Opis oprogramowania

PRZEWODNIK PO PRZEDMIOCIE

KIERUNKOWE EFEKTY KSZTAŁCENIA

The Binder Consulting

Internet Semantyczny. Schematy RDF i wnioskowanie

WPROWADZENIE DO UML-a

Tomasz Grześ. Systemy zarządzania treścią

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

Wykład I. Wprowadzenie do baz danych

Reprezentacja wiedzy ontologie, logiki deskrypcyjne

Rola języka XML narzędziem

WYKŁAD 1 METAJĘZYK SGML CZĘŚĆ 1

Monitoring procesów z wykorzystaniem systemu ADONIS

ZARZĄDZANIE I INŻYNIERIA PRODUKCJI

REFERAT PRACY DYPLOMOWEJ

Procesowa specyfikacja systemów IT

KIERUNKOWE EFEKTY KSZTAŁCENIA

Systemy organizacji wiedzy i ich rola w integracji zasobów europejskich bibliotek cyfrowych

PRZEWODNIK PO PRZEDMIOCIE

EFEKTY KSZTAŁCENIA DLA KIERUNKU STUDIÓW INFORMATYKA

Odniesienie do efektów kształcenia dla obszaru nauk EFEKTY KSZTAŁCENIA Symbol

Efekty kształcenia wymagane do podjęcia studiów 2 stopnia na kierunku Informatyka

KIERUNKOWE EFEKTY KSZTAŁCENIA KIERUNEK STUDIÓW INFORMATYCZNE TECHNIKI ZARZĄDZANIA

[1] [2] [3] [4] [5] [6] Wiedza

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

Otwarte protokoły wymiany informacji w systemach ITS

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

Analiza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas

Rozszerzenie funkcjonalności systemów wiki w oparciu o wtyczki i Prolog

UCHWAŁA NR 46/2013. Senatu Akademii Marynarki Wojennej im. Bohaterów Westerplatte z dnia 19 września 2013 roku

Paweł Kurzawa, Delfina Kongo

RDF Schema (schematy RDF)

Webowy generator wykresów wykorzystujący program gnuplot

Informatyka, studia I stopnia (profil ogólnoakademicki) - wersja

Projektowanie logiki aplikacji

O-MaSE Organization-based Multiagent System Engineering. MiASI2, TWO2,

Zastosowanie symulacji Monte Carlo do zarządzania ryzykiem przedsięwzięcia z wykorzystaniem metod sieciowych PERT i CPM

Wprowadzenie do XML. Joanna Jędrzejowicz. Instytut Informatyki

Diagramu Związków Encji - CELE. Diagram Związków Encji - CHARAKTERYSTYKA. Diagram Związków Encji - Podstawowe bloki składowe i reguły konstrukcji

Efekty kształcenia dla kierunku studiów INFORMATYKA, Absolwent studiów I stopnia kierunku Informatyka WIEDZA

Repozytorium Zasobów Wiedzy FTP

Wprowadzenie do technologii XML

Dodatkowo planowane jest przeprowadzenie oceny algorytmów w praktycznym wykorzystaniu przez kilku niezależnych użytkowników ukończonej aplikacji.

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

Wykład Ćwiczenia Laboratorium Projekt Seminarium

Wykład 1 Inżynieria Oprogramowania

Kierunkowe efekty kształcenia (wiedza, umiejętności, kompetencje) Kierunek Informatyka

Podsumowanie wyników ankiety

1. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

Internet Semantyczny i Logika II

PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W NYSIE

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

WIEDZA. przywołuje pogłębioną wiedzę o różnych środowiskach społecznych kształtujących bezpieczeństwo, ich specyfice i procesach w nich zachodzących

Wprowadzenie do teorii systemów ekspertowych

Semantic Web. dr inż. Aleksander Smywiński-Pohl. Elektroniczne Przetwarzanie Informacji Konsultacje: czw , pokój 3.211

Współczesna problematyka klasyfikacji Informatyki

PRZEWODNIK PO PRZEDMIOCIE

I rok. semestr 1 semestr 2 15 tyg. 15 tyg. Razem ECTS. laborat. semin. ECTS. konwer. wykł. I rok. w tym. Razem ECTS. laborat. semin. ECTS. konwer.

Procesy biznesowe w praktyce. Przykłady użycia z wykorzystaniem jbpm 4.4

Transkrypt:

Zarządzanie technologiami informatycznymi : stan i perspektywy rozwoju / pod redakcją Cezarego Orłowskiego. - Gdańsk : Pomorskie Wydawnictwo Naukowo-Techniczne PWNT, 2006. - (Automatyka Informatyka). - S. 83-94 : 8 rys. - Bibliogr. 121 poz. - ISBN 83-918663-1-9 - ISSN 978-83-918663-1-3 ROZDZIAŁ VII TECHNOLOGIE INFORMATYCZNE WYKORZYSTYWANE W PROJEKTOWANIU I IMPLEMENTACJI ONTOLOGII Czarnecki Adam Gdańsk University of Technology, Gdańsk, Poland Zarządzanie technologiami informatycznymi : stan i perspektywy rozwoju / pod redakcją Cezarego Orłowskiego. - Gdańsk : Pomorskie Wydawnictwo Naukowo-Techniczne PWNT, 2006. - (Automatyka Informatyka). - S. 83-94 : 8 rys. - Bibliogr. 121 poz. - ISBN 83-918663-1-9 - ISSN 978-83-918663-1-3 Prawa Autorskie: Materiał był opublikowany przez PWNT w książce lub elektronicznym wydaniu książki pod tytułem Zarządzanie technologiami informatycznymi : stan i perspektywy rozwoju. Możliwe jest zrobienie jednej kopii bądź wydruku tylko i wyłącznie do użytku własnego. Wielokrotne kopiowanie w celach komercyjnych, bądź modyfikowanie treści materiału jest zabronione. Strona WWW wydawnictwa: http://www.konsulting.gda.pl/pwnt.html W rozdziale tym zostały przedstawione podstawowe zagadnienia związane z tworzeniem ontologii rozumianych jako modele wiedzy o wybranej dziedzinie. Prezentowane są języki służące do opisu ontologii, aplikacje wspomagające tworzenie i implementację ontologii, a także przykładowe projekty, których celem jest rozwijanie ontologii dotyczących wiedzy ogólnej lub ograniczonych do określonych domen. 1. WIEDZA JAKO SUROWIEC O Thomasie Youngu mówi się, że to ostatni człowiek, który wiedział wszystko 1. Ten angielskim fizyk i lekarz nie żyje od blisko 180 lat. O ile przyrosła wiedza gatunku ludzkiego do tego czasu? Jaka jej część jest pomieszczona w naszych głowach, a jaka przechowywana (wyłącznie) na różnego rodzaju nośnikach? Czy jest sposób, by z tej wiedzy dało się szybko, tanio i skutecznie wydobyć wiedzę istniejącą i nową? Jak sprawić, by konkretna wiedza bez problemu trafiła tam, gdzie jest przydatna? Ostatnie dwa pytania stawiane są, kolejno, systemom: sztucznej inteligencji i agentowym (są one opisane w sąsiednich rozdziałach). Zależność między tymi systemami można w uproszczeniu opisać tak: systemy agentowe dostarczają sztucznej inteligencji zależnie od stopnia przetworzenia dane, informacje, czy wiedzę, jako pewne impulsy wejściowe potrzebne do wypełniania postawionych przed sztuczną inteligencją zadań. Funkcja postawiona systemom agentowym byłaby prosta, gdyby wiedza była łatwym do uzyskania przez nie zasobem. Tak, zazwyczaj nie jest. Dane dostępne dla agentów albo są na niższym stopniu ustrukturalizowania, by można było je nazwać wiedzą, albo sposób reprezentacji tej wiedzy jest czytelny dla człowieka, nie dla programu komputerowego. Z powyższego wynika potrzeba znalezienia jakiejś warstwy pośredniej, która pozwoliłaby zaprezentować dostępne dane, informacje czy wiedzę w sposób przydatny z punktu widzenia 1 Niektórzy tym mianem określają Gottfrieda Wilhelma Leibniza (1646-1716) niemieckiego filozofa, matematyka, inżyniera-mechanika, fizyka i dyplomatę.

systemów informatycznych mających na wiedzy bazować. Jako pretendenta do spełnienia takiej pośredniczącej roli wskazuje się ontologie. Czy słusznie? Ten rozdział stawia sobie za cel zgrubne pokazanie technologii (języków opisu, aplikacji do projektowania i zaimplementowanych przykładów) wykorzystywanych w zagadnieniach ontologicznych. Nie gwarantuje jednak, że da odpowiedź na pytanie kończące poprzedni akapit. 2. DEFINICJE I CELE ONTOLOGII Terminem ontologia zapożyczonym z dziedziny filozofii badającej istotę bytu posługuje się informatyka od 1967 roku. Dość powszechnie pod tym pojęciem rozumie się zbiór ściśle zdefiniowanych pojęć (słownictwo) na temat określonej dziedziny (domeny) akceptowany przez społeczność związaną z ową dziedziną [6, s. 267]. Często cytowaną [6, s. 268][24, s. 4][5, s. 10][23, s. 54] definicją jest ta podana przez T. Grubera [36]: ontologia to wyraźny, formalny opis konceptualizacji wybranej dziedziny. W obu tych definicjach nie pojawia się co prawda słowo model, ale można przyjąć, że tym właśnie dla dziedziny jest ontologia modelem opisującym pojęcia i ich wzajemne powiązania, czy, prościej, modelem reprezentacji wiedzy. Definicje mogą nie być wystarczające, by odpowiedzieć na pytanie:, dlaczego warto tworzyć ontologie. Można wskazać na co najmniej kilka powodów [82, s. 1]. Ontologie tworzy się: by szerzyć wspólne rozumienie struktury informacji wśród ludzi lub aplikacji agentowych, by umożliwić wielokrotne wykorzystanie wiedzy z danej dziedziny, by otwarcie sprecyzować założenia odnośnie wybranej dziedziny, by rozdzielić wiedzę o dziedzinie od wiedzy związanej z operowaniem dziedziną, by analizować wiedzę o konkretnej dziedzinie. Jak widać, zawarty na początku rozdziału przykład systemów agentowych jako beneficjentów ontologii, nie wyczerpuje listy możliwych zastosowań. 3. TECHNOLOGIE WYKORZYSTYWANE DO PROJEKTOWANIA ONTOLOGII Mówiąc o technologiach, mamy na uwadze, że składają się na to pojęcie dwa elementy: metody i narzędzia, które powiązane procesami dają żądany produkt. W przypadku tworzenia ontologii metody możemy utożsamiać z językami służącymi do opisu wiedzy (w połączeniu z wypracowanymi praktykami budowania komunikatów). Narzędziami trzymając się tej analogii są aplikacje pozwalające, z wykorzystaniem wybranych języków, projektować i implementować ontologie. Ten podział organizuje kolejne punkty niniejszego rozdziału po charakterystyce języków wymienione zostały aplikacje do tworzenia ontologii, a całość domyka przedstawienie kilku projektów zastosowań systemów gromadzenia i reprezentacji wiedzy. Ponieważ od rozwiązań bazujących na ontologiach oczekujemy dostarczania wiedzy, to zachowując przedstawiony wcześniej podział jako pierwsze przedstawione zostaną języki służące do jej opisu. Wiedza to dość złożona struktura informacji. Wyżej w hierarchii wyróżnia się bodaj tylko mądrość. Żeby dojść od danych, informacji, faktów czy stwierdzeń do wiedzy, trzeba zacząć od stworzenia możliwości wyrażania tych komunikatów. Aby budować ontologie, konieczne staje się postawienie przed językami służącymi budowaniu ontologii pewnych postulatów. Dotyczą one stopnia, w jakim można wyrażać w nich pojęcia, organizować je i łączyć, osadzać pewne aksjomaty, rozróżniać np. fakty od twierdzeń czy mieć możliwość wnioskowania [82, s. 2-5]. Wyróżników jest dość, by przyjąć je za kryteria gruntownej oceny rozwiązań lingwistycznych wymienionych niżej. Ten rozdział poprzestanie jednak na krótkim opisie wybranych języków, które wykorzystywane są w aplikacjach do tworzenia ontologii (zob. 4) lub są ważnymi ich poprzednikami. Trzy pierwsze: Ontolingua, OCML (ang. Operational Conceptual Modelling Language), LOOM, można zaliczyć do języków klasycznych (ontologiczne odpowiedniki łaciny czy greki). Kolejne trzy są wzajemnie się uzupełniającym zestawem wykorzystywanym obecnie w rozwiązaniach określanych jako sieci semantyczne [90]. Ontolingua [37] jest językiem stosowanym w środowisku aplikacyjnym o tej samej nazwie, a powstałym na Wydziale Informatyki Uniwersytetu Stanforda. Narodził się jako efekt projektu, którego celem było stworzenie ontologii pozwalającej na wymianę pojęć, definicji i założeń przydatnych w dziedzinie inżynierii urządzeń. Zdecydowano wtedy język oprzeć na powstałym na tej samej uczelni Knowledge Interchange Format (KIF) [29] oraz Frame Ontology (FO). Z KIF, który stworzono z myślą o ujednoliceniu wymiany wiedzy między aplikacjami, Ontolingua przejęła cytując za specyfikacją KIF możliwość definiowania obiektów, funkcji i powiązań, deklaratywną semantykę, oparcie na rachunku predykatów pierwszego rzędu, a także zdolność reprezentacji wiedzy na temat samej reprezentacji wiedzy. Za jej pomocą można też prezentować reguły wnioskowania niemonotonicznego (gdzie nowe fakty mogą uczynić poprzednie nieprawdziwymi). W tej chwili - 2 -

Ontolingua (jako język i aplikacja) nie jest rozwijana. Wspomina się o niej jednak, jako o tradycyjnym już języku opisu ontologii z uwagi na to, że kolejne powstające technologie (np. OWL czy Chimaera) wywodzą się ze wspomnianego tu rozwiązania. Co więcej, Wydział Informatyki Uniwersytetu Stanforda odgrywa w rozwoju tych technologii ważną rolę (vide: aplikacja Protégé). Język OCML (Operational Conceptual Modeling Language) [78] był efektem trwającego w latach 1990-1995 projektu VITAL. Celem przedsięwzięcia było stworzenie technologii rozwoju systemów opartych na wiedzy z uwzględnieniem całego cyklu życia tych systemów. Język OCML pozwala na budowanie modeli wiedzy w oparciu o takie elementy jak funkcje, relacje, klasy i ich instancje oraz reguły. Zawiera też mechanizmy definiowania ontologii oraz metody rozwiązywania problemów. Tworząc OCML zastosowano dość praktyczne podejście i zachowano zgodność z rozwiązaniami uchodzącymi w tamtym czasie za standard, np. językiem Ontolingua. Ponieważ OCML zawiera mechanizmy wnioskowania, więc w praktyce można z jego pomocą dowodzić teorii lub oceniać funkcje zbudowane z wykorzystaniem pierwszego z opisywanych języków. LOOM [72] to język wysokiego poziomu oraz środowisko do tworzenia systemów ekspertowych. Powstał w Instytucie Informatyki Uniwersytetu Południowej Kalifornii. Język i związane z nim środowisko (obecnie to PowerLoom) oparte są na logice opisowej czy, jak kto woli, deskryptywnej co umieszcza je pomiędzy językami opartymi na podejściach: regułowym i ramkowym (ang. framebased). To ostatnie podejście jest charakterystyczne dla wcześniej opisanych języków. Reprezentacji wiedzy służą w LOOM: definicje, reguły, fakty oraz wbudowane reguły. Mechanizm dedukcji, zwany klasyfikatorem, korzystający m.in. z wnioskowania wprzód, jest uważany za jedno z ciekawszych rozwiązań w modelowaniu ontologii [19]. LOOM zamyka w tym zestawieniu krótką listę języków ontologicznych określanych jako tradycyjne. XML (extended Markup Language) [11] nie jest językiem powstałym z myślą o tworzeniu ontologii. Jednak jego uniwersalność, rosnąca powszechność i wykorzystanie przez inne języki opisu ontologii (RDFS, XOL) każą o nim wspomnieć. Język XML, stworzony w World Wide Consortium (W3C), opisuje klasy obiektów danych (tzw. dokumenty XML) i, przynajmniej częściowo, opisuje sposób ich przetwarzania przez programy komputerowe. Celem jego powstania było umożliwienie wykorzystania języka SGML (Standard Generalized Markup Language) w zastosowaniach WWW w podobny sposób, w jaki pozwala na to HTML (HyperText Markup Language). Ważnymi cechami języka XML są [19, s. 7]: łatwość analizowania przez parser, rozwinięta składnia i format zapisu możliwy do zrozumienia przez człowieka. Przy tym powstało już wiele narzędzi do przetwarzania danych zapisanych w XML [118]. Dzięki tym narzędziom łatwo można definiować własne znaczniki i atrybuty, definiować struktury danych (zagnieżdżać je) i wydobywać je, a także rozwijać aplikacje, które dokonują walidacji składni użytej w dokumencie XML. Warto jednak wskazać w tej pracy te szczególne zalety XML, które czynią go przydatnym przy opisie ontologii [19, s. 7-8]: definiowanie często stosowanych specyfikacji składniowych odbywa się za pomocą DTD (Document Type Declaration), czyli deklaracji typu dokumentu, co pozwala na sprawdzenie poprawności dokumentu, człowiek jest w stanie dość łatwo zrozumieć informacje zapisane w XML, można go wykorzystać do reprezentacji wiedzy rozproszonej na wielu stronach internetowych, jako że XML pozwala na osadzanie jej na WWW. Uczciwość nakazuje jednak wymienić przynajmniej jedną wadę, jaką z punktu widzenia tworzenia ontologii, posiada XML [19, s. 7-8]: definicja języka nie wymusza ustrukturalizowania informacji wewnątrz znaczników, przez co trudno odnaleźć w dokumencie części składowe ontologii. Kolejnym językiem znajdującym zastosowanie do modelowania ontologii, jest język RDF (Resource Description Framework) [73], opracowany przez W3C, który służy reprezentacji informacji o zasobach WWW. Nie ma on, przynajmniej na razie, rangi standardu, ale oznaczony jest jako język rekomendowany. Szczególną intencją autorów RDF była możliwość opisywania meta-danych na stronach internetowych, takich jak tytuł, autor, data modyfikacji, prawa autorskie. Jednak pojęcie zasobu WWW jest przez RDF rozumiane na tyle szeroko, że język nie zamyka się wyłącznie na opis tego, co w Internecie można znaleźć, ale też można nim opisywać byty, o których na stronach WWW zamieszczono informacje (np. o pralce, która zasobem WWW nie jest, ale którą przez Internet można kupić). Składnia języka RDF pozwala na budowę swoistych zdań złożonych z trzech elementów: zasobu (utożsamianego z podmiotem w tradycyjnym zdaniu), własności (predykatu, orzeczenia) i obiektu (dopełnienia). Takie zdanie często określa się jako trójkę (ang. triplet). Do opisu tych trzech elementów RDF wykorzystuje adresy URI (Universal Resource Identifier). Częstym sposobem prezentowania zdań zapisanych w RDF są zbiory węzłów i łuków w postaci grafów. Przykład (Rysunek 1) pokazuje graf przekazujący cztery zdania o podmiocie osoba1 jej numerze telefonu, imieniu i nazwisku, adresie e-mail oraz mieście. W roli predykatów występują adresy URI. - 3 -

[źródło: oprac. własne] Rysunek 1 Graf RDF z czterema węzłami-zdaniami. Jak zaznaczono wcześniej, RDF idzie w parze z językiem XML. Jak wygląda ta relacja? Otóż [19, s. 8] zadaniem RDF jest umożliwienie określenia semantyki dla danych zapisanych w XML i to w sposób ujednolicony, dający się szerzej stosować. Chodzi o mechanizm opisu zasobów, który nie tworzy założeń na temat określonej dziedziny zastosowań, ani też o strukturze dokumentu zawierającego dane. A czym jest wymieniony w tytule punktu RDFS? Skrót rozwijany jako RDF Schema lub, poprawniej, RDF Vocabulary Description Language [12], oznacza deklaratywny język dający możliwość opisu ontologii za pomocą zdań wyrażonych w RDF. Sam RDF to jednak za mało, przy przenosić znaczenia wynikające z ontologii. Stąd konieczne są definicje pojęć wykorzystujące m.in. predefiniowane klasy i własności zawarte w dokumentach RDFS (na które wskazuje URI). Te dokumenty zapisywane są często w formacie XML. Znane są pewne ograniczenia RDFS [89, s. 62-63]. Mimo to, czy właśnie dlatego, kolejne rozwiązania do tworzenia ontologii buduje się korzystając z dorobku twórców tego języka (zob. OWL). OWL (Web Ontology Language skrót nieco mija się z rozwinięciem) [103] reprezentuje w zestawieniu języków bodaj najbardziej popularne (jeśli dołączyć pochodne OWL-S) rozwiązanie dotyczące tworzenia znaczeń w sieciach semantycznych [90, s. 161]. Jego ramy są szersze niż wymienionego wcześniej RDFS, a korzenie sięgają dość udanego projektu DAML + OIL. OWL występuje w trzech odmianach różniących się pewnymi obostrzeniami i zapotrzebowaniem na moc obliczeniową. OWL Full to kompletny język. OWL DL (od Description Logic) pozbawiony jest składnicy zdań RDF i posługuje się logiką opisową. OWL Lite to uproszczona wersja OWL DL stworzona z myślą o stawiających pierwsze kroki w tworzeniu ontologii w tym języku. Wiele klas i własności OWL pochodzi z RDFS. Język ma też definiowane własne klasy i własności, których dostępność jest różna w zależności od stosowanej odmiany. Na przykład w OWL DL i OWL Lite elementem klasy nie może być inna klasa, a wyłącznie jednostka. 4. APLIKACJE WYKORZYSTYWANE DO PROJEKTOWANIA ONTOLOGII Język jest naprawdę przydatny tylko wtedy, gdy istnieje środowisko pozwalające na jego wyrażenie. O zaletach RDFS czy OWL ich twórcy mogliby przekonywać godzinami, ale nic by nie osiągnęli bez narzędzi będących w stanie te języki zaimplementować. Obecnie informatyczne narzędzia do projektowania systemów opanowało podejście wizualne, przenoszące znaczną część pracy z kodowania na graficzne łączenie pewnych modułów. Nie ominęło ono też aplikacji do tworzenia ontologii. Spośród dostępnych narzędzi wymienione są dwa dość zaawansowane środowiska: opensource owe Protégé oraz komercyjne SemanticWorks. Aplikacja Protégé [97] to darmowy edytor ontologii i narzędzie tworzenia baz wiedzy udostępniane na licencji Open Source. Dzięki temu, że powstała w języku Java, łatwo uruchamiać ją na różnych platformach sprzętowo-programowych. Powstała na Uniwersytecie Stanforda, zasłużonym dla rozwoju ontologii m.in. stworzeniem języka Ontolingua. System Protégé, poprzez rozszerzenia Protégé-Frames i Protégé-OWL obsługuje dwa sposoby modelowania ontologii. Pierwsze z nich pozwala na wdrożenie ontologii zgodnie z protokołem OKBC (Open Knowledge Base Conectivity) [85] zbliżonym do podejścia obiektowego (mamy tu klasy i ich instancje, własności i relacje). Drugie z - 4 -

rozszerzeń systemu zorientowane jest na WWW i sieci semantyczne. Wykorzystuje do tego wspomniany wcześniej język OWL. [źródło: [97]] Rysunek 2 Protégé: Widok grafu przykładowego projektu. Protégé jest wysoko oceniany za możliwości, interfejs graficzny (Rysunek 2) oraz rozwiniętą wokół projektu społeczność [112]. Niemniej, złożoność środowiska zmotywowała zespół Instytutu Zaawansowanych Studiów Komputerowych Uniwersytetu Maryland do opracowania prostszego narzędzia dla sieci semantycznych operujący graficzną metaforą przeglądarki WWW o nazwie SWOOP [108]. Jeśli Protégé jest aplikacją wagi ciężkiej, to SWOOP można zakwalifikować, bez pejoratywnych skojarzeń, do wagi piórkowej. Krótką listę przykładowych narzędzi do tworzenia ontologii zamyka SemanticWorks firmy Altova. Jest to aplikacja komercyjna, wchodząca także w skład pakietu Altova XML Suite (bieżąca wersja jest oznaczona numerem 2007), odwołująca się do idei sieci semantycznych. Obsługuje takie języki jak RDF(S) i OWL (we wszystkich trzech odmianach). Ma możliwość sprawdzania zgodności składni z wymogami RDF i XML. Pozwala na graficzne tworzenie ontologii, które potem można zapisać w kilku dopuszczalnych przez obsługiwane języki formatach. - 5 -

[źródło: [3]] Rysunek 3 Altova SemanticWorks: Widok schematu przykładowego projektu. Do zalet aplikacji można zaliczyć dobrze opracowany samouczek, estetyczny i czytelny interfejs użytkownika (Rysunek 3) i przemyślany sposób interakcji z użytkownikiem [39]. Cena aplikacji, ok. 100 euro, nie jest wysoka, ale dla osób chcących stawiać pierwsze kroki w tworzeniu ontologii może być zachętą, by poszukać rozwiązania darmowego, a jednocześnie otoczonego mogącą pomóc grupą użytkowników. 5. PRZYKŁADY ZASTOSOWAŃ ONTOLOGII Duży wybór języków i aplikacji wykorzystywanych do projektowania ontologii (zaprezentowanych uprzednio) nie jest wykładnikiem rzeczywistej przydatności ontologii. Król Stanisław Leszczyński istnieje w świadomości historycznej Polaków jako ten, który znał pięć języków i w żadnym z nich nie miał nic ciekawego do powiedzenia. Dlatego warto na koniec zobaczyć przykłady zaimplementowanych ontologii, by sprawdzić, jakie dziedziny wiedzy uznawane są za szczególnie warte ontologicznego opisania i jakie podejścia się w nich stosuje. Projekt Cyc [20] stawia sobie za cel stworzenie ogólnej ontologii na temat zjawisk życia codziennego. Projekt, rozpoczęty w połowie lat 80. XX w., rozrósł się do ok. 10 tys. predykatów, 100 tys. pojęć, 1,4 mln twierdzeń. Na szczycie układu w kształcie piramidy umiejscowiono pojęcie coś (ang. Thing). Niżej sieć relacji bywa dość splątana (Rysunek 4), przeto nie można jej nazwać prostą taksonomią [83, s. 56]. Ogólny podział obejmuje: konkretne obiekty, nienamacalne, reprezentację czegoś. Przyglądając się graficznej metaforze ontologii, można wskazać na jeszcze kilka ważnych grup pojęć ustawionych w pewne dychotomie, takie jak: przestrzeń czas, obiekty fizyczne agenty, to co żyje organizacja, istoty ludzkie ludzka działalność. Ta piramida spoczywa na pokładach wiedzy z określonej dziedziny, ta zaś na faktach i danych właściwych dla tej dziedziny. Pamiętać jednak należy, że w projekcie Cyc piramidę stworzono nie podejściem staroegipskim (z dołu do góry), lecz od czubka ku dołowi. - 6 -

[źródło: oprac. własne na podst. [83, s. 56]] Rysunek 4 Cyc: Kategorie pojęć na najwyższym poziomie ontologii. Wnioskowanie w ontologii Cyc odbywa się za pomocą dedukcji (m.in. z użyciem reguł odrywania, modus tollens i kwantyfikatorów) oraz dziedziczenia cech i automatycznej klasyfikacji. Na potrzeby projektu powstał język CycL. WordNet [26] jest przykładem jednej z najbardziej rozbudowanych ontologii leksykalnych. Efektem jest dostępny w Internecie [115] słownik angielski. Obiekty tej ontologii są powiązane zależnościami semantycznymi. Ontologia rozróżnia oczywiście takie typy jak rzeczowniki, czasowniki, przymiotniki czy przysłówki. Pojęciem organizującym strukturę ontologii WordNet jest zbiór synonimów danego pojęcia, tzw. synset. Jeśli dane słowo ma więcej niż jedno znaczenie, to przy kompletnej ontologii wystąpi w tylu synsetach, ile znaczeń posiada. Pod koniec listopada 2006 r. ontologia zawierała blisko 118 tys. synsetów. Te jednostki są zorganizowane wzajemnie na zasadzie klas nadrzędnych i podrzędnych (zobacz: Rysunek 5). - 7 -

[źródło: oprac. własne na podst. [75]] Rysunek 5 Relacje pomiędzy różnymi synsetami odnoszącymi się do bytów fizycznych. Jedną z form przechowywania wiedzy w ramach ontologii WordNet są wskaźniki od jednego sysnsetu do drugiego, oznaczającego część tego pierwszego (np. od pojęcia samochód do pojęć kierownica i bagażnik ). Inną, tworzenie zespołów antonimów (dobry-zły, mokry-suchy) wraz z towarzyszącymi im, w ramach sysnsetów, synonimów. WordNet jest tak naprawdę taksonomią bez mechanizmów wnioskujących, aksjomatów itp. Warto również zaprezentować ontologię którą stworzył John Sowa [104, s. 175]. wyodrębniając trzy zasady: rozróżnienia, połączenia i wymuszenia. W ramach tej ontologii na jej szczycie istnieją trzy rozróżnienia: na to, co fizyczne i na informację lub, innymi słowy, na konkretne byty i abstrakcje, na formę, rolę i pośredniczenie, na to, co trwa i to co się wydarza obiekty pozostające niezmiennymi przez jakiś czas oraz procesy, z natury zmienne. Graficzną prezentację pierwszego i trzeciego z opisanych rozróżnień ukazuje Rysunek 6. [źródło: oprac. własne na podst. [83, s. 59]] Rysunek 6 Ontologia Sowy oparta na rozróżnieniach: fizyczny-informacyjny i ciągłość-zdarzenie. - 8 -

Tworzenie nowych kategorii odbywa się poprzez łączenie trzech wcześniej wspomnianych. Dla każdej kombinacji rozróżnień istnieje jakaś kategoria, chyba że dodatkowe ograniczenia w postaci aksjomatów eliminują takie kategorie, które nie są możliwe. Pozwala to uprościć model. Z kolei ontologię Unified Medical Language System (UMLS) [64] zaprojektowano, by ułatwić pozyskiwanie i integrację informacji biomedycznych pochodzących z wielu źródeł elektronicznych. Głównym celem jest udostępnienie tych informacji użytkownikom posługującym się różną terminologią w ramach dziedziny nauk medycznych. Struktura, jaką posługuje się UMLS, obejmuje hierarchię pojęć medycznych oraz sieć semantyczną ustanawiającą dodatkowe relacje pomiędzy kategoriami, których to relacji nie można przekazać zwykłym podziałem taksonomicznym. Wśród kategorii wyróżnia się byty (fizyczne i pojęciowe, por. Rysunek 7) i Zdarzenia. Te ostatnie dzielą się na czynność, proces oraz zranienie lub zatrucie. Byt Obiekt fizyczny Pojęcie Organizm Język Idea lub Pomysł Substancja Profesja lub Dyscyplina Odkrycie Budowa anatomiczna Organizacja Cecha organizmu Wyprodukowany przedmiot Cecha grupy Wytwór intelektu Grupa [źródło: [83, s. 61]] Rysunek 7 UMLS: Najwyższy poziom w hierarchi bytów. Wielkość typów relacji i sieć semantyczna tworząca gęste połączenia między pojęciami z użyciem tych relacji są dużą zaletą UMLS. Niestety, ta ontologia nie posiada mechanizmu reprezentowania dynamiki zachodzących procesów, a tym samym, możliwości tworzenia opozycji między tym, co stałe i zmienne w czasie. Poza UMLS można podać kilka innych znaczących i ciekawych ontologii powstałych dla szeroko rozumianych nauk biochemicznych i technicznych. Gensim [66] pozwala reprezentować reakcje w złożonych strukturach białkowych. Projekt Plinius służy wydobywaniu wiedzy z tekstów poświęconych inżynierii materiałowej. Po zapoznaniu się z wymienionymi wcześniej projektami wykorzystującymi ontologie, można dojść do wniosku, że realizowane przedsięwzięcia mają albo charakter sztuki dla sztuki ( zróbmy ontologię, która opisze wszystko, co się da ) lub dają się stosować jedynie w wysoce specjalistycznych badaniach naukowych. TOVE (ang. Toronto Virtual Enterprise) może pozwoli zmienić tę opinię. Projekt TOVE [38] powstał na Uniwersytecie w Toronto w celu modelowania przedsiębiorstw. Składa się na niego zbiór ontologii odpowiadających wybranym obszarom zarządzania firmą (czynności, zasoby, organizacja (por. Rysunek 8), produkt i wymagania, zarządzanie jakością ISO9000, zarządzanie kosztami) powiązanych relacjami oraz działań podejmowanych dla konkretnej firmy w celu ustalenia szczegółowych zagadnień (tzw. pytań kompetencyjnych), na które odpowie stworzony model. Zatem za każdym razem należy zasilić model informacjami odnoszącymi się do badanego w przedsiębiorstwie problemu (robią to inżynierowie ontologii na podstawie danych otrzymanych od przedstawicieli firmy). - 9 -

[źródło: [83, s. 62]] Rysunek 8 TOVE: Hierarchia w ontologii dotyczącej organizacji. Zapewnieniom o praktycznej możliwości zastosowania TOVE powinna towarzyszyć lista przedsiębiorstw, które skorzystały z tej ontologii. Niestety, serwis internetowy projektu [113] nie podaje żadnego przykładu praktycznego wykorzystania swojego systemu. 6. PODSUMOWANIE Temat technologii dla tworzenia ontologii jest szeroki, co widać choćby po liczbie odwołań do literatury w tak krótkim rozdziale. Stąd nadzieja, że niedosyt, jaki zostawia lektura, da się zapełnić sięgając do książek, artykułów i stron WWW przywoływanych w tekście. Przegląd technologii pokazuje dwa podejścia i dwa nurty w budowaniu ontologii. Podejścia te to, w pewnej ogólności: góra-dół, gdzie tworzone są coraz bardziej szczegółowe taksonomie, dółgóra, gdzie wychodzi się od prostych i konkretnych pojęć czy bytów, a dopiero drogą agregacji i tworzenia powiązań wchodzi na wyższe poziomy hierarchii. Dla nie lubiących skrajności można dodać jeszcze podejście trzecie, heterarchiczne, nie uznające narzuconych struktur. Jako nurty można określić rozwiązania: klasyczne, zamknięte, gdzie ontologia jest dość wyraźnie oddzielona od innych systemów, sieci semantyczne, gdzie ontologie są meta-danymi opisującymi dokumenty WWW rozproszonymi w całym Internecie. Wyraźny jest proces zanikania pierwszego nurtu na rzecz sieci semantycznych, co można wywnioskować choćby po liczbie publikacji na temat tych ostatnich czy upowszechniania się języka OWL jako metody projektowania ontologii. Nie wspomniano tego wcześniej, ale rozwój ontologii natrafia na poważne problemy. Oto ich przykłady: trudno łączyć różne ontologie z powodu wielości podejść przy ich projektowaniu (przy czym uznaje się, że nie ma tu tak naprawdę jednej słusznej metodologii), wykorzystanie ontologii dotyczącej tej samej dziedziny w dwóch organizacjach nie jest możliwe, bo te same pojęcia są inaczej definiowane/rozumiane, ewentualnie następuje zmiana znaczenia pojęcia w czasie 2, pojęcia, relacje czy wnioski zrozumiałe dla człowieka czasami wymagają od formalnych języków opisu ontologii stosowania złożonych warunków, wyjątków czy aksjomatów, aby otrzymać właściwy efekt w procesie wnioskowania 3. Te kwestie są tu jedynie zaznaczone, by Czytelnik miał świadomość, że opisywana dziedzina, prócz rozwiązywania problemów, do jakich projektuje się ontologie, sama musi pokonać niedoskonałości w zakresie własnej inżynierii. Na to czeka ten obszar badań nad sztuczną inteligencją, który w ontologiach dopatruje się szansy na przezwyciężenie impasu w skłonieniu technologii komputerowych do rozumienia wiedzy wyrażanej przez nas w językach naturalnych. 2 Kiedy Thomas Jefferson pisał w Deklaracji Niepodległości USA: Wszyscy ludzie rodzą się równi, to miał na myśli bogatych białych mężczyzn. 3 Drewniany stół po przepołowieniu nie da dwóch stołów, ale dwa drewniane obiekty owszem [70, s. 11]. - 10 -

Widoczny rozwój technologii ontologicznych nowe generacje języków, powstające narzędzia, próby coraz szerszego wykorzystania w Internecie, duża liczba aktualnych publikacji na ten temat pokazuje, że mamy do czynienia z zagadnieniem mogącym stanowić ważny element zarządzania wiedzą, której ilość z jednej strony nas przytłacza, a z drugiej ze względu na dotychczasową formę przechowywania nie daje się często w ekonomiczny sposób wykorzystać. 7. BIBLIOGRAFIA [5] Antonoiu G., van Hamerlen F.: A Semantic Web Primer. The MIT Press, USA, 2004. [6] Aufaure M.A., LeGrand B., Soto M., Bennacer N.: Metadata- and Ontology-Based Semantic Web Mining. W: Taniar D., Rahayu J.W. (red.). Web Semantics Ontology. Idea Group Publishing, 2006. [11] Bray T., Paoli J., Sperberg-McQueen C.M., Maler E., Yergeau F.: Extensible Markup Language (XML) 1.0. W3C Recommendation 16 August 2006. http://www.w3.org/tr/xml/ [12] Brickley D., Guha R.V.: RDF Vocabulary Description Language 1.0: RDF Schema. W3C Recommendation 10 February 2004. http://www.w3.org/tr/rdf-schema/ [19] Corcho O., Gómez-Pérez A.: A Roadmap to Ontology Specification Languages. W: Dieng R., Corby O. (red.). Proceedings of the 12th European Workshop on Knowledge Acquisition, Modeling and Management, s. 80-96. Springer-Verlag, London, UK, 2000. [20] Cycorp, Inc. http://www.cyc.com/ [23] Davies J., Fensel D., van Harmelen F. (red.): Towards The Semantic Web. Ontology-driven Knowledge Management. John Wiley & Sons, 2003. [24] Davies J., Studer R., Warren P. (red.): Semantic Web Technologies. Trends and Research in Ontology-based Systems. John Wiley & Sons, 2006. [26] Fellbaum Ch. (red.): WordNet. An Electronic Lexical Database. Bradford Books, 1998. [29] Genesereth, M. R., Fikes, R. E.: Knowledge Interchange Format, Version 3.0 Reference Manual. Knowledge Systems Laboratory, Stanford University, Stanford, USA, 1992. [36] Gruber T.R.: A Translation Approach to Portable Ontology Specifications. W: Knowledge Acquisition. 5(2):199-220, 1993. [37] Gruber, T., Pang, D., Rice, J.: Ontolingua: A language to Support Shared Ontologies. Knowledge Systems Laboratory, Stanford University, Palo Alto, USA, 1990. [38] Gruninger M., Fox M.S.: Methodology for the Design and Evaluation of Ontologies. Workshop on Basic Ontological Issues in Knowledge Sharing, IJCAI-95, Montreal, Canada, 1995. [39] Gunderloy M.: Review: SemanticWorks 2006. Larkware News, 2005. http://www.larkware.com/reviews/semanticworks.html [64] Humpreys B.L., Lindberg D.A.: The UMLS Project: Making the Conceptual Connection between Users and Information They Need. Bulletin of the Medical Library Association 81(2):170, 1993. [66] Karp P.D.: A Qualitative Biochemistry and Its Application to the Regulation of the Trytophan Operon W: Hunter L.: Artificial Intelligence and Molecular Biology. American Association for Artificial Intelligence Press, Menlo Park, USA, 1993. [70] Lenat D.B. Applied ontology issues. W: Guarino N., Musen M.A. (red.) (2005). Applied Ontology. An Interdisciplinary Journal of Ontological Analysis and Conceptual Modeling. Vol. 1, Nr 1. IOS Press. [72] MacGregor R.M.: Inside the LOOM Description Classifier. ACM SIGART Bulletin, tom 2, nr 3. ACM Press, New York, USA, 1991. [78] Motta E.: An Overview of the OCML Modelling Language. 8th Workshop on Knowledge Engineering: Methods & Languages, KEML 98, Karlsruhe, Germany, 1998. [82] Noy F.N., McGuinness D.L.: Ontology Development 101: A Guide to Creating Your First Ontology. Stanford Knowledge Systems Laboratory Technical Report KSL-01-05 i Stanford Medical Informatics Technical Report SMI-2001-0880, 2001. [83] Noy N.F., Hafner C.D.: The State of the Art in Ontology Design. A Survey and Comparative Review. American Association for Artificial Intelligence Press, Menlo Park, USA, 1997. [85] Open Knowledge Base Connectivity Working Group. http://www.ai.sri.com/~okbc/ [89] Pan J.Z.: Description Logics: Reasoning Support for the Semantic Web. Praca doktorska obroniona na Wydziale Nauk Technicznych i Inżynierii Uniwersytetu Manchesteru, 2004. [90] Passin T.B.: Explorer s Guide to the Semantic Web. Manning Publications, Greenwich, USA, 2004. [97] Protégé Ontology Editor and Knowledge Acquisition System, The. http://protege.stanford.edu/ [103] Smith M.K., Welty Ch., McGuiness D.L.: OWL Web Ontology Language Guide. W3C Recommendation 10 February 2004. http://www.w3.org/tr/owl-guide/ - 11 -

[104] Sowa J.: Distinctions, Combinations and Constraints. Proceedings of the Workshop on Basic Ontological Issues in Knowledge Sharing, Montreal, Canada, 1995. [108] SWOOP - Hypermedia-based OWL Ontology Browser and Editor. http://www.mindswap.org/2004/swoop/ [112] Tizard J.: Capturing Real-World Knowledge with Protégé OWL. W: NewsForge. The Online Newspaper for Linux and Open Source, 2006 http://software.newsforge.com/article.pl?sid=06/01/24/1625250&from=rss [113] TOVE Ontology Project. http://www.eil.utoronto.ca/enterprise-modelling/tove/index.html [115] WordNet - Princeton University Cognitive Science Laboratory. http://wordnet.princeton.edu/ [118] XML Parsers. O Reilly. http://www.xml.com/pub/rg/xml_parsers - 12 -