Inteligentne Systemy Informacyjne Krzysztof Juszczyszyn krzysztof@pwr.wroc.pl www.ii.pwr.wroc.pl/~juszczyszyn
Semantic Web Ogólna koncepcja - koniec lat 90., wynik prac World Wide Web Consortium (W3C, Tim Berners-Lee i in.) „Semantic” = „wzbogacona o informacje o znaczeniu danych” (metadane) - w dalszym etapie o możliwość definiowania zestawów reguł umożliwiających automatyczne wnioskowanie wymagane języki reprezentacji metadanych Por. World Wide Web Consortium (www.w3c.org)
Semantic Web – architektura
XML Reprezentacja struktury metadanych przy pomocy zdefiniowanych przez użytkownika znaczników. Nie ma możliwości definiowania relacji między używanymi terminami. Łatwe przetwarzanie maszynowe i kontrola poprawności dokumentu. <książka> książka <autor> ... </author> / \ <rozdział> ... autor rozdział <sekcja> ... </sekcja> / <sekcja> ... </sekcja> sekcja </rozdział> </książka>
RDF Model danych RDF składający się z trzech elementów: 1.Zasoby (Resources) – dokumenty, elementy stron, serwisy, usługi...nawet obiekty fizyczne. 2. Własności (Properties) – są to aspekty, cechy obiektów oraz relacje do innego obiektu. 3.Wyrażenia (ang. Statements) – czyli trójki obiekt-atrybut -wartość 1. <? xml version="1.0" ?> 2. <RDF xmlns:s= http://mój_opis.org/schema#> 4. <Description about = ”http://www.site.com/moje.html" > 5. <s:Autor>Karina</s:Autor> 6. <s:Język>polski</s:Język> 7. </Description> 8. </RDF>
RDFS
OWL Ontology Web Language = OWL Ontologia: w sztucznej inteligencji (def.) – jawna, formalna specyfikacja konceptualizacji wybranej domeny. Dział SI poświęcony nie „jak?” ale „co?” ...a potocznie: (poszerzony) słownik, zawierający koncepty (klasy), relacje między nimi, ich instancje, aksjomaty logiczne oraz reguły wnioskowania. Opisy zasobów, usług, podmiotów zdefiniowane w OWL i możliwe do przetwarzania przez autonomicznie działające oprogramowanie.
OWL ... jawna, formalna specyfikacja konceptualizacji wybranej domeny. Web Ontology Language = OWL Ontologia: w sztucznej inteligencji (def.) – jawna, formalna specyfikacja konceptualizacji wybranej domeny. ...a potocznie: (poszerzony) słownik, zawierający koncepty (klasy), relacje między nimi, ich instancje, aksjomaty logiczne oraz reguły wnioskowania. Wszystko zdefiniowane w OWL i możliwe do przetwarzania przez autonomicznie działające oprogramowanie. ... jawna, formalna specyfikacja konceptualizacji wybranej domeny. Projekt nr SPORZL-2.3A-2-12-030/0047, współfinansowany ze środków Europejskiego Funduszu Społecznego Unii Europejskiej
Ontologie w zastosowaniach... Ushold M., A semantic continuum on the semantic web The Knowledge Engineering Review, 17(1), 87–91. 2002 Ontologie w zastosowaniach...
Zarządzanie ontologiami Ontology-related research challenges: Ontology merging Ontology alignment Ontology versioning O1 O2 O3 MERGING ALIGNMENT
Semantic Web – architektura Od OWL „w górę” – brak rekomendacji W3C (standardów), spodziewany rozwój dowolnych technik z zakresu automatycznego wnioskowania, oprogramowania agentowego, WebMining, .... ...a także security & trust management
Semantic Web – cechy środowiska Metadane różnego pochodzenia (autorskie, generowane automatycznie, negocjowane...) Rozproszone podejście do funkcji bezpieczeństwa (szczególnie w aspekcie trust oraz reputation) Dynamiczna kompozycja danych i usług Niespotykana dotąd autonomia oprogramowania Otwartość na znane i rozwijane techniki AI, Data Mining... Zmiany w architekturze sieci informatycznych (WWW – sieć informacyjna) są równie rewolucyjne - GRID
WWW AD 2020...? Pytania: Rola Network Science w najbliższych latach? Wpływ na funkcjonowanie sieci informacyjnych? Wpływ na przemiany ekonomiczne i społeczne? Polityka UE? Ogólne trendy...? Projekt nr SPORZL-2.3A-2-12-030/0047, współfinansowany ze środków Europejskiego Funduszu Społecznego Unii Europejskiej
Rozwój widziany jako fale innowacji Projekt nr SPORZL-2.3A-2-12-030/0047, współfinansowany ze środków Europejskiego Funduszu Społecznego Unii Europejskiej
SemanticWave Nieunikniony rosnący udział technologii sieciowych i semantycznych. Powody: Skala współczesnych systemów informacyjnych i informatycznych Złożoność i heterogeniczność Koszty utrzymania i administracji (do 70% budżetów IT!) Wiedza – dawniej u pracownika, teraz także w systemie. Projekt nr SPORZL-2.3A-2-12-030/0047, współfinansowany ze środków Europejskiego Funduszu Społecznego Unii Europejskiej
SemanticWave – rola technologii Projekt nr SPORZL-2.3A-2-12-030/0047, współfinansowany ze środków Europejskiego Funduszu Społecznego Unii Europejskiej
SemanticWave – inwestycje (1) Projekt nr SPORZL-2.3A-2-12-030/0047, współfinansowany ze środków Europejskiego Funduszu Społecznego Unii Europejskiej
SemanticWave – inwestycje -USA (2) Projekt nr SPORZL-2.3A-2-12-030/0047, współfinansowany ze środków Europejskiego Funduszu Społecznego Unii Europejskiej
Rozwój oprogramowania Usługi...
Ewolucja architektur oprogramowania Podstawowe architektury oprogramowania: Architektura monolityczna Architektura klient-serwer Architektura trójwarstwowa Architektura zorientowana na usługi
Architektura monolityczna Cechy charakterystyczne: brak modularności aplikacji ‘samowystarczalność’ – niezależność od innych aplikacji aplikacja odpowiada za realizację wszystkich niezbędnych kroków w celu udostępnienia pożądanej funkcjonalności, a nie za realizację konkretnego zadania
Architektura klient-serwer Cechy charakterystyczne: każdy proces/komputer odgrywa jedną z ról -klienta lub serwera rozwiązanie skalowalne Web Server Print Directory Database File Mail
Architektura klient-serwer (c.d.) strona serwera zazwyczaj ma większe wymagania (np. odpowiednie zasoby sprzętowe) strona klienta prostsza, o mniejszych wymaganiach klient realizuje zadania w oparciu o dane i usługi z serwera, klient może zlecać realizację złożonych zadań serwerowi
Architektura trójwarstwowa Cechy charakterystyczne: rodzaj architektury klient-serwer wyróżnia się trzy warstwy: interfejs użytkownika, warstwę aplikacji, dostęp i przechowywanie danych stanowią one odrębne moduły, które są utrzymywane i rozwijane niezależnie, często w oparciu o różne platformy sprzętowe i programowe
Architektura zorientowana na usługi Service Oriented Architecture – SOA Koncepcja budowania rozproszonych systemów, które dostarczają funkcjonalność jako usługi, zarówno dla użytkownika końcowego jak i do innych usług
Cele SOA Szybciej odpowiadać na zmiany po stronie biznesu Móc działać w heterogenicznym środowisku Dostarczać rozwiązania szerokiej gamie odbiorców nie powtarzając funkcjonalności Integrować systemy i dane
Zalety SOA Możliwość stopniowego rozwoju Większa elastyczność Ponowne użycie – niższe koszty Możliwość zróżnicowania dostawców Oparcie na otwartych standardach Wsparcie dla federacyjności
Podstawowe pojęcia SOA Usługa w SOA mapowanie zidentyfikowanych w trakcie analizy procesów biznesowych funkcji może być definiowana na różnym poziomie szczegółowości fine-grained <–> coarse-grained w zależności od charakterystyki procesu biznesowego
Podstawowe pojęcia SOA(c.d.) Usługa w SOA posiada dobrze zdefiniowany interfejs umożliwiający: publikację, odnajdywanie, wywołanie. może być publikowana wewnętrznie (wewnątrz organizacji) lub udostępniana na zewnątrz może być komponowana z innych usług
Podstawowe pojęcia SOA Podmioty w ramach SOA mogą występować w jednej bądź obu następujących rolach: Konsument (Service Consumer) Aplikacja, moduł programowy lub inna usługa która żąda wywołania usługi Inicjuje proces wyszukiwania usługi w rejestrze, tworzy powiązanie z usługą przez usługi transportowe a następnie ją wywołuje Konsument korzysta z usługi na zasadach określonych przez udostępniony interfejs. Dostawca usługi (Service Provider) Element dostępny poprzez sieć teleinformatyczną, który akceptuje i realizuje żądania konsumentów Publikuje usługi w rejestrze oraz definiuje ich interfejs
Podstawowe pojęcia SOA tekst slajdu
Cloud computing Paradygmat obliczeniowy w którym zakładamy realizacje zadań przy pomocy usług dostępnych w środowisku sieciowym. Urządzenie dostępowe (typowo: cienki klient) pozwala na korzystanie z „chmury” (cloud) usług. Zdolności obliczeniowe chmury daleko przekraczają możliwości klienta. Pierwsze przykłady: tranzycja programy pocztowe mail via WWW
Usługi SOKU – Service Oriented Knowledge Utilities Usługa SOKU: Skojarzona jest z semantycznym opisem w postaci metadanych, wystarczającym do jej automatycznego wywołania w zadanym celu. Podlega kompozycji z innymi usługami. Jest (częściowo) autonomiczna i korzysta w mechanizmów podejmowania decyzji. Wykorzystuje semantycznie opisane zasoby = przetwarza, produkuje, wykorzystuje wiedzę.
Usługi SOKU - pojęcie Service-oriented Knowledge Utility Gotowa do użytku usługa z spełniająca zadane miary jakości, funkcjonalności i zaufania, dopasowana do oczekiwań odbiorcy Service-oriented Knowledge Utility Semantyczny opis usług Semantyczny opis dostarczanej lub przetwarzanej informacji oraz możliwości personalizacji
Usługi SOKU - działanie
Usługi SOKU – języki opisu XML RDF Resource Description Framework OWL Ontology Web Language OWL-S Ontology Web Language for Services
Usługi SOKU – języki opisu – OWL-S