Použ ití konžolové č á sti áplikáčé XRéásonér

Podobné dokumenty
Deskripční logika. Petr Křemen FEL ČVUT. Petr Křemen (FEL ČVUT) Deskripční logika 37 / 157

Logika pro sémantický web

Logika a logické programování

Ontologie. Otakar Trunda

Nápověda k aplikaci EA Script Engine

Metody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka

Prolog PROgramming in LOGic část predikátové logiky prvního řádu rozvoj začíná po roce 1970 Robert Kowalski teoretické základy Alain Colmerauer, David

Middleware eop. Instalační příručka pro práci s eop v prostředí MS Windows

Aplikace s odvozováním nad ontologiemi

Databázové systémy. - SQL * definice dat * aktualizace * pohledy. Tomáš Skopal

Obsah. 1. Co byste měli vědět před spuštěním instalace Spuštění instalace Průběh instalace Odinstalování, změna instalace...

Úvod do databázových systémů

Komprese a dotazování nad XML dokumenty

AutoCAD Civil 3D 2017

Semestrální práce 2 znakový strom

4. blok část A Logické operátory

Konfigurace pracovní stanice pro ISOP-Centrum verze

Výroková a predikátová logika - X

Výroková a predikátová logika - VII

Middleware eop. Instalační příručka pro práci s eop v prostředí MS Windows

KIV/ZIS cvičení 5. Tomáš Potužák

Instalace MS SQL Serveru 2012

Semestrální projekt do předmětu SPS

Příručka pro klientský certifikát

Návod k instalaci S O L U T I O N S

SKYLA Pro II. Popis instalace programu

Úvod do databázových systémů

Postupy práce se šablonami IS MPP

Úvod do programovacích jazyků (Java)

2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE

CUZAK. Instalační příručka. Verze

Výroková a predikátová logika - III

REPREZENTACE ZNALOSTÍ

Informační systémy 2008/2009. Radim Farana. Obsah. Dotazy přes více tabulek

Základní informace pro zprovoznění Aktovky Dozory IS MPP

Výroková a predikátová logika - III

Výroková a predikátová logika - II

SQL - trigger, Databázové modelování

Sémantika výrokové logiky. Alena Gollová Výroková logika 1/23

UNIVERZITA PARDUBICE Fakulta elektrotechniky a informatiky Katedra softwarových technologií

Petr Křemen. Katedra kybernetiky, FEL ČVUT. Petr Křemen (Katedra kybernetiky, FEL ČVUT) Sémantické sítě a rámce 1 / 112

Obsah přednášky. programovacího jazyka. Motivace. Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup Kontinuace Program

Logické programy Deklarativní interpretace

Fides Software Storage Administrator

1. POSTUP INSTALACE A KONTROLA NASTAVENÍ MICROSOFT SQL SERVERU 2005 EXPRESS:

Umělá inteligence I. Roman Barták, KTIML.

Ontologie, OWL a deskripční logika

Manuál k programu IDP 1.0

Internet. dobrý sluha, zlý pán

FORTANNS. 22. února 2010

Výroková a predikátová logika - II

Inference v deskripčních logikách

Jako skript se nabízí BAT soubory, VBScript či PowerShell. Zpracovány jsou druhé dva.

Pokyny pro instalaci programu E-Config verze 3.0 na počítačích s Windows 7 / 8 / 10

Linux-příkazový řádek

Programování v Pythonu

1 Webový server, instalace PHP a MySQL 13

CUZAK. Instalační příručka. Verze

Nemocnice. Prvotní analýza a plán projektu

Tableaux metody. Jiří Vyskočil 2011

Sémantika predikátové logiky

INSTALACE DATABÁZE ORACLE A SYSTÉMU ABRA NA OS WINDOWS

Příručka pro klientský certifikát

Algoritmizace prostorových úloh

CS OTE. Dokumentace pro externí uživatele

POSTUP PRO VYTVOŘENÍ STRUKTUR PRO UKLÁDÁNÍ RDF DAT V ORACLE

AutoCAD definice bloku

Rekurentní rovnice, strukturální indukce

Kerio IMAP Migration Tool

Ostravská univerzita, Přírodovědecká fakulta, 30. dubna 22, Ostrava,

Návod k použití OOCorr (rošíření OpenOffice.org)

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

POTŘEBA A PRODUKCE ENERGIÍ V ZEMĚDĚLSKÉ VÝROBĚ V ČR V KRIZOVÉ SITUACI. Specializovaná mapa. Návod k používání programu

.NET Framework verze Program pro připojení ke vzdálené ploše (RDC) verze

NÁVOD NA INSTALACI APLIKACE ESAM

Výroková a predikátová logika - II

Booleovská algebra. Booleovské binární a unární funkce. Základní zákony.

Algoritmizace a programování

Instrukce pro vzdálené připojení do učebny 39d

Logické operace. Datový typ bool. Relační operátory. Logické operátory. IAJCE Přednáška č. 3. může nabýt hodnot: o true o false

1. Webový server, instalace PHP a MySQL 13

Uživatelská příručka pro práci s Portálem VZP. Test kompatibility nastavení prohlížeče

[1] ICAReNewZEP v1.2 Uživatelská příručka

My English Vocabulary

DIPL 2. Stručný manuál pro vysokoškolské kvalifikační práce.

Klauzulární logika. úvod. Šárka Vavrečková. 20. října Ústav informatiky Filozoficko-Přírodovědecká fakulta Slezské univerzity, Opava

IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ

Nahrávání image flash do jednotek APT81xx, PPC81xx

[APLIKACE PRO PŘEHRÁVÁNÍ VIDEA - PROJEKT MIAMI - SERVEROVÁ ČÁST]

CS OTE. Dokumentace pro externí uživatele

EPLAN Electric P8 2.7 s databázemi na SQL serveru

CS OTE. Dokumentace pro externí uživatele

Příprava prostředí pro výuku PHP a MySQL

DIPL 2. Příloha č. 1 ke Směrnici rektora č. 120/08 o vysokoškolských kvalifikačních pracích. Stručný manuál pro vysokoškolské kvalifikační práce.

Instalace programového vybavení

Informační systémy ve zdravotnictví. 6. cvičení

APS Control Panel. Ovládací panel systému APS mini Plus pro SW balík APS Administrator. Uživatelská příručka

4.2 Syntaxe predikátové logiky

Návod pro připojení k síti VŠPJ prostřednictvím VPN Vysoká škola polytechnická Jihlava

Transkript:

Použ ití konžolové č á sti áplikáčé XRéásonér Marek Vajgl (marek.vajgl@osu.cz) Katedra informatiky a počítačů Přírodovědecká fakulta Ostravská univerzita v Ostravě Obsah Úvodní popis... 1 Instalace aplikace... 2 Základní nabídka programu... 3 Vkládání formulí... 3 Demonstrace chování systému... 4 Základní práce se znalostní bází... 4 Porovnání chování formálních systémů DL a DL1 v systému XReasoner... 6 Nemonotónní přístup v systému XReasoner... 8 Odebrání aplikace... 9 Úvodní popis Dalším vytvořeným projektem je jednoduchý projekt konzolové aplikace nad základním nastavením znalostní báze. Uživatel po spuštění příslušeného souboru do konzole zadává příkazy k vykonání. Tato aplikace umožňuje například rychlé otestování chování systému deskripční logiky pro uživatele seznamující se danou problematikou. Konzolová aplikace umožňuje také porovnání chování standardního systému deskripční logiky DL v porovnání se systémem DL1 nad stejnými daty.

Obr. 0-1: Konzolová aplikace pro testování chování znalostní báze Aplikace také umožňuje uložení a načtení znalostní báze z binárního souboru, dotazování na splnitelnost formulí, získání instancí daného konceptu a další. Instalace aplikace Před instalací aplikace si pročtěte licenční podmínky, za kterých je aplikace dodávána. Instalací aplikace (rozbalením ZIP souboru) souhlasíte s licenčními podmínkami, za kterých je aplikaci možnou instalovat, spouštět, používat a odstranit. V souladu s licenčními podmínkami autor aplikace nenese žádnou odpovědnost za přímé i nepřímé škody související s touto aplikací. Autor však udává, že aplikace vědomě neprovádí žádné zásahy a změny ve spuštěném prostředí, které by překračovaly rozsah použití aplikace a mohli způsobit ztráty integrity, dostupnosti nebo důvěrnosti dat na nainstalovaném počítači. Aplikace je (díky své závislosti na platformě.net) určena a testována pouze nad operačními systémy rodiny MS Windows. Konkrétně byla aplikace otestována nad MS Windows XP SP2/3 a Windows 7. Postup instalace: 1) Pro spuštění vyžaduje nainstalovaný.net Framework verze 3.5. Tento bývá standardní součastí současných operačních systémů Windows, nicméně v případě potřeby jej lze zdarma stáhnout z webu firmy Microsoft (http://www.microsoft.com/cscz/download/details.aspx?id=25150). Zpětná kompatibilita vyšších verzí.net Frameworku (4.0, 4.5) s aplikací nebyla testována. Po instalaci.net Frameworku je doporučeno restartovat počítač. 2) Stažený ZIP soubor rozbalit do libovolného umístění s právem zápisu.

Základní nabídka programu Po spuštění programu souborem XReasonerClient.exe se aplikace dotáže na použitý odvozovací mechanismus: 1) První variantou je odvozování podle standardního formalismu deskripční logiky 2) Druhou variantou je odvozování podle upravené sémantiky deskripční logiky DL1 Po této volbě aplikace nabízí základní obrazovku s variantami: Kód příkazu Význam příkazu 1 Přidání nové definice novou definici lze vložit ve formátu uvedeném dále. Zadáním skupiny definic lze vytvořit/změnit existující znalostí bázi 11 Přidání nemonotónního pravidla 2 Kontrola důsledků/konzistence znalostní báze 3 Zjištění instancí zadaného konceptu 4 Výpis definic s případnou možností odebrání definice 44 Výpis definic nemonotónních pravidel s případnou možností odebrání definice 5 Výpis stromu subsumpce jednotlivých konceptů 8 Uložení znalostní báze do souboru 9 Načtení znalostní báze ze souboru 0 Vymazání znalostní báze 99 Ukončení programu Vkládání formulí Program při zadávání definic vyžaduje zadávání formulí v konkrétně stanovené syntax. Pro tuto syntax je utvořena referenční implementace (tj. programátor si může vytvořit syntax vlastní vytvořením požadovaného analyzátoru), která reprezentuje speciální symboly formalismu deskripční logiky (jako například znak pro disjunkci, konjunkci, kvantifikaci a další) pomocí klíčových slov, a ve výsledku lze tedy zapisovat formule deskripční logiky pomocí standardních znaků.

Symbol DL Klíčové slovo Operátor and Operátor or Operátor sub Operátor def Operátor neg Kvantifikátor all Kvantifikátor ex Koncept _T_ Koncept _F_ Oddělovač role a konceptu ( R.C). Oddělovač termů u role (R(a, b)), Závorky priority formulí () Závorky připojených termů [] Tab. 0-1: Syntaxe referenční implementace DLLanguage Formuli Mother Person haschild.person lze tedy zapsat Mother def (Person and ex haschild.person). Klíčová slova musí být od ostatních symbolů oddělena mezerou. Demonstrace chování systému Základní práce se znalostní bází Následující příklad ukazuje tvorby jednoduché znalostní báze s koncepty a instancemi rodiny. Znalostní báze byla vytvořena pomocí formulí uvedených v příloze A a je uložena v souboru family.kb, odkud může být do konzolové aplikace načtena. Základním dotazem může být získání všech individuí konceptu Person. Aplikace po zadání volby 4 a vstupu Person vrací výsledek: ***** XReasoner console ***** Choose: 1... enter new definition 2... check for consequent/consistency 3... get instances of... 4... print / remove definition 5... print subsumption tree 8... save knowledge base to file 9... load knowledge base from file 0... clear knowledge base 99... (or close window) to exit

? 3? Person Instances of Person: Marek; Miroslav; Petr; Lukáš; Stanislav; Alice; Eva; Bozena; Petra; EvaK; Při zadávání lze pokládat i dotazy nejen na koncepty, ale na instance splňující obecné formule. Zde je třeba ale dotaz položit ve formátu sémantiky jazyka vytvořeného v knihovně DLLanguage. ***** XReasoner console ***** Choose: 1... enter new definition 2... check for consequent/consistency 3... get instances of... 4... print / remove definition 5... print subsumption tree 8... save knowledge base to file 9... load knowledge base from file 0... clear knowledge base 99... (or close window) to exit? 3? ex haschild.man Instances of ex haschild.man: Eva; Miroslav; Petr; Alice; Obdobně lze získat výpis aktuální subsumpce konceptů podle terminologického boxu: ***** XReasoner console ***** Choose: 1... enter new definition 2... check for consequent/consistency 3... get instances of... 4... print / remove definition 5... print subsumption tree 8... save knowledge base to file 9... load knowledge base from file 0... clear knowledge base 99... (or close window) to exit? 5 Subsumption tree in form gen : spec $_T_$ = Person; Animal; Parent; UnhappyFather; GrandParent; Person = Man; Woman; Man = Woman = Animal = Parent =

UnhappyFather = GrandParent = Porovnání chování formálních systémů DL a DL1 v systému XReasoner Při porovnání se bude vycházet opět ze znalostní báze představené výše. Pro testování je ve znalostní bázi vytvořen koncept využívající existenční kvantifikace role Parent, definující rodiče jako instanci, pro kterou existuje instance role haschild s jinou instancí osoby Person: Parent haschild.person Pro univerzální kvantifikaci byl pak vytvořen koncept UnhappyParent zahrnující takové instance, jejichž všechny děti jsou dcerami. UnhappyParent haschild.woman Ještě před odvozováním nad instancemi však lze ověřit chování subsumpce R.C R.C nad oběma variantami systému. V systému konzole to lze povést pomocí volby check for consequent/consistency a zadáním požadované formule. Při zadání do systému DL vrátí systém odpověď, že subsumpce neplatí: Enter formula definition to check? all haschild.parent sub ex haschild.parent Press 1 to check consistency, press 2 to check consequent from knowledge base:? 2 Formula is not consequent of knowledge base. U systému DL1 je však na stejný dotaz výstup opačný v tomto případě tedy subsumpce jednotlivých konceptů platí u univerzálně kvantifikovaných formulí se tedy odvozovací mechanismus systému XReasoner chová dle definic sémantiky systémů DL, respektive DL1. Enter formula definition to check? all haschild.parent sub ex haschild.parent Press 1 to check consistency, press 2 to check consequent from knowledge base? 2 Formula is consequent of knowledge base. Další dotazy lze provést na instance jednotlivých koncept. Jelikož chování existenčně kvantifikované role se u logik DL a DL1 neliší, výsledky si v obou případech odpovídají, jak ukazuje následující výpis.? Parent Instances of Parent: EvaK; Eva; Miroslav; Bozena; Stanislav; Petr; Alice;

U univerzálně kvantifikované role se však sémantická definice u obou formálních systémů liší. Pro logiku DL získáme výpis:? UnhappyParent Instances of UnhappyParent: Marek; Stanislav; Lukáš; Bozena; Petra; EvaK; Po změně odvozovacího mechanismu na mechanismus DL1 (nejdříve je třeba v konzolové aplikaci smazat znalostní bázi a při zadávání zvolit systém DL1 a poté opět nahrát znalostní bázi ze souboru), dostaneme na stejný dotaz výsledek:? UnhappyParent Instances of UnhappyParent: EvaK; Bozena; Stanislav; V prvním případě jsou mezi nešťastné rodiče zařazeni i ty instance (=lidé), kteří žádné děti nemají, tedy Marek, Lukáš a Petra. V druhém případě se restrikce provádí pouze nad těmi instancemi, které alespoň jedno dítě mají. Odlišnost lze také demonstrovat na znalostní bázi vytvořené podle ontologie diagramů aktivit získané analýzou RDF souboru. Ontologie zachycuje vztahy aktivit cílem dotazu bude získat takové workflow, které mají (pouze) kořenové aktivity typu jiné aktivity. Výpis systému DL:? all rootactivity.workflow Instances of all rootactivity.workflow: http://protege.stanford.edu/rdf/workflow#collaborativediscussion_instance_0 ; http://protege.stanford.edu/rdf/workflow#collaborativediscussion_instance_2 0000; http://protege.stanford.edu/rdf/workflow#collaborativediscussion_instance_5 0004; http://protege.stanford.edu/rdf/workflow#collaborativediscussion_instance_1 ; http://protege.stanford.edu/rdf/workflow#collaborativediscussion_instance_1 0000;... (cca 80 záznamů) Do výstupu se zahrnují i takové aktivity, které nemají žádnou kořenovou aktivitu, což však nebylo cílem dotazu. Uživatel, který toto chování neočekává, tak bude zmaten. Po položení stejného dotazu nad sémantikou DL1:? all rootactivity.workflow Instances of all rootactivity.workflow: http://protege.stanford.edu/rdf/workflow#collaborativediscussion_instance_0 ; http://protege.stanford.edu/rdf/workflow#collaborativediscussion_instance_2 0000;

http://protege.stanford.edu/rdf/workflow#collaborativediscussion_instance_5 0004; Tento výpis vrací pouze takové individua, které mají nějakou kořenovou aktivitu a všechny aktivity jsou opět typu aktivity. Opět se jedná o prokázání chování systému XReasoner (a implementace sémantického tabla) pro systém DL1 korektně dle představeného řešení. Nemonotónní přístup v systému XReasoner Implementované řešení poskytuje také základní nemonotónní přístupy k reprezentaci znalostí. Znalostní báze umožňuje definovat nová pravidla na základě Reiterovy default logiky ve tvaru. Všechny tři části při zadávání pravidla jsou formule. Znalostní báze umožňuje definici, výpis a odebrání pravidla ze znalostní báze. Následující ukázka bude opět vycházet ze znalostní báze rodiny použité v předchozích příkladech. Bude demonstrováno pravidlo říkající, že běžní muži jsou vysocí, tedy Muž : Tall Tall. Do znalostní báze lze zavést nový atom Tall Person a následně přidat nemonotónní pravidlo. Aplikace si vyžádá zadání po jednotlivých blocích, jak ukazuje následující výpis: Enter prerequisity formula (or empty to abort):? Man Enter justification formula (or empty to abort):? Tall Enter conclusion formula (atom) (or empty to abort):? Tall Formula added to kb. Při dotazu na všechny dlouhé muže se vrátí všechna taková individua, o nichž nelze ze znalostní báze prokázat, že nejsou vysocí:? Tall Instances of Tall: Marek; Miroslav; Petr; Stanislav; Lukáš; Pro ověření lze do znalostní báze vložit tvrzení, že Petr není vysoký Tall(Petr). Enter new formula definition? not Tall[Petr] Formula added to kb. Opakovaným výpisem lze zjistit, že Petr již není vrácen jako instance konceptu Tall, protože je o něm ve znalostní bázi známo, že není vysoký.

? Tall Instances of Tall: Marek; Miroslav; Stanislav; Lukáš; Odebrání aplikace Aplikaci lze odinstalovat pouhým smazáním z umístění, na které byla nainstalována. V rámci odstranění lze odebrat také nainstalovaný MS.NET Framework 3.5, pozor však, že tento framework mohou používat také jiné aplikace nainstalované na počítači a jeho odstraněním tyto aplikace přestanou fungovat!

Příloha A seznam formulí znalostní báze rodiny family.kb