Transcript Wykłady 1-2
Inteligentne Systemy Informacyjne Krzysztof Juszczyszyn [email protected] 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 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 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 O1 O1 O3 O2 O2 O2 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 Architektura Architektura Architektura monolityczna klient-serwer trójwarstwowa 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 Server Directory Database Server Server File Server Mail Server 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 • tekst slajdu • 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 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