Úvod do expertních systémů

Slides:



Advertisements
Podobné prezentace
Matematické modelování a operační výzkum
Advertisements

Projektové řízení Modul č.1.
Přednáška č. 1 Úvod, Historie zpracování dat, Základní pojmy
Přednáška č. 3 Normalizace dat, Datová a funkční analýza
Nepravidlové a hybridní expertní systémy
JUI přednáška Příklad využití Prologu pro tvorbu expertních systémů RNDr. Jiří Dvořák, CSc.
 Informací se data a vztahy mezi nimi stávají vhodnou interpretací pro uživatele, která odhaluje uspořádání, vztahy, tendence a trendy  Existuje celá.
Pravidlové expertní systémy
Přednáška č. 5 Proces návrhu databáze
Hodnotový management Teorie rozhodování
Úvod do expertních systémů
Vypracoval: Ladislav Navrátil, EI-4 Umělá inteligence Zaměření Expertní systémy.
Expertní systémy. Historie ES výzkumné prototypy (Mycin, Prospektor, Hearsey II) experimentální nasazování komerčně dostupné.
IS V EKONOMICKÝCH SUBJEKTECH Ing. Jiří Šilhán. IS IS – data+lidi+HW, prvky + relace mezi uživateli, které splňují nějaké cílové chování – tak aby byly.
PROGRAMOVACÍ JAZYKY (c) Tralvex Yeap. All Rights Reserved.
Audit administrativních činností
Databáze Jiří Kalousek.
Gymnázium, SOŠ a VOŠ Ledeč nad Sázavou I NFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE Ing. Jan Roubíček.
Definování prostředí pro provozování aplikace dosud jsme řešili projekt v obecné rovině aplikace bude ovšem provozována v konkrétním technickém a programovém.
Algoritmizace a programování
ÚČEL AUTOMATIZACE (c) Tralvex Yeap. All Rights Reserved.
Expertní řízení průběhu E-learningu VOSTROVSKÝ Václav Česká zemědělská univerzita Praha.
Seminář – Základy programování
Outsourcing jako strategický nástroj řízení nejen v komerční sféře
Auditorské postupy Činnosti před uzavřením smlouvy
Algoritmizace a základy programování
Případové usuzování v expertním systému NEST Vladimír Laš, Petr Berka Vysoká škola ekonomická, Praha.
Fuzzy logika.
Systémy pro podporu managementu 2
Relační databáze.
Databázové systémy Architektury DBS.
Metainformační systém založený na XML Autor: Josef Mikloš Vedoucí práce: Ing. Jan Růžička, Ph.D. V/2004.
Reprezentace znalostí v UI Inteligentní systém musí umět předvídat důsledky svých akcí – potřebuje „model svého prostředí“. K jeho konstrukci potřebuje.
Informatika pro ekonomy II přednáška 10
Simulační modely a programové vybavení. Vývoj simulačních programů  Původně pouze strojový kód –Příliš dlouhé, náročné na programátora, obtížné hledání.
Transparentní modelování a provádění procesů Michael Juřek Software Architect Microsoft s.r.o.
Artificial Intelligence (AI).  „Úloha patří do oblasti umělé inteligence, jestliže řešení, které najde člověk považujeme za projev jeho inteligence.
Od zadání úlohy k programu Výpočetní systémy I 8. přednáška.
Dokumentace informačního systému
Systémy pro podporu managementu 2 Inteligentní systémy pro podporu rozhodování 1 (DSS a znalostní systémy)
DATABÁZOVÉ SYSTÉMY. 2 DATABÁZOVÝ SYSTÉM SYSTÉM ŘÍZENÍ BÁZE DAT (SŘBD) PROGRAM KTERÝ ORGANIZUJE A UDRŽUJE NASHROMÁŽDĚNÉ INFORMACE DATABÁZOVÁ APLIKACE PROGRAM.
Umělá inteligence Minského definice: UI je věda o vytváření strojů nebo systémů, které budou při řešení určitého úkolu užívat takového postupu, který –
Úvod do expertních systémů
Databázové modelování
Databázové systémy Informatika pro ekonomy, př. 18.
4IZ 229 – Cvičení 2 Tvorba báze znalostí Vladimír Laš.
Základní struktura projektu Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Název projektu: Kvalitní vzdělání je efektivní investice.
Procedurální (klasické) programování Popisuje algoritmus – postup, jak vyřešit úlohu.
Přehled metod umělé inteligence a její historie (bakalářská práce) Vedoucí práce: Ing. Ladislav Beránek, CSc., MBA Vypracoval: Michal Jelínek.
Jazyky pro umělou inteligenci RNDr. Jiří Dvořák, CSc.
Procedurální (klasické) programování Popisuje algoritmus – postup, jak vyřešit úlohu.
Reprezentace znalostí
Teorie ES a jejich aplikace Biskup Jiří, Fakulta stavební, ČVUT Praha, Květen 2004.
IB111 Programování a algoritmizace
ECM – Enterprise Content Management
Expertní & znalostní systémy
Úvod do expertních systémů
METODY STŘEDNĚDOBÉHO PROGNÓZOVÁNÍ SURO jaro 2010.
Databázové systémy Úvod, Základní pojmy. Úvod S rozvojem lidského poznání roste prudce množství informací. Jsou kladeny vysoké požadavky na ukládání,
KURZ ALGORITMIZACE A PROGRAMOVÁNÍ V JAZYCE C Lekce č. 2: Základní pojmy Bc. Radek Libovický.
SOFTWAROVÁ PODPORA PRO VYTVÁŘENÍ FUZZY MODELŮ Knihovna fuzzy procedur Ing. Petr Želasko, VŠB-TU Ostrava.
Výukový materiál zpracován v rámci projektu
Dobývání znalostí z databází znalosti
Strukturace učiva Příprava učitelova.
Digitální učební materiál
PROLOG strategie vyhodnocení dotazu
Informatika pro ekonomy přednáška 8
Tradiční metody vývoje softwaru
Procedurální (klasické) programování
Obsah Co je to GIS Segmentace GIS HZS ČR GIS portál HZS ČR
Transkript prezentace:

Úvod do expertních systémů 1

Expertní systém Definice ES (Feigenbaum): expertní systémy jsou počítačové programy, simulující rozhodovací činnost experta při řešení složitých úloh a využívající vhodně zakódovaných, explicitně vyjádřených znalostí, převzatých od experta, s cílem dosáhnout ve zvolené problémové oblasti kvality rozhodování na úrovni experta. Charakteristické rysy ES: oddělení znalostí a mechanismu jejich využívání, rozhodování za neurčitosti, schopnost vysvětlování. 2

Základní složky ES báze znalostí, inferenční mechanismus, I/O rozhraní (uživatelské, vývojové, vazby na jiné systémy), vysvětlovací modul, modul pro udržování znalostí. 3

Rozhraní k jiným systémům Architektura ES Báze znalostí Znalostní inženýr, expert Prázdný ES Vysvětlovací modul Inferenční mechanismus Modul udržování znalostí Uživatelské rozhraní Rozhraní k jiným systémům DBS, programy, měřicí přístroje, … Uživatel 4

Báze znalostí a báze faktů Báze znalostí obsahuje znalosti z určitého oboru a specifické znalosti o řešení problémů v tomto oboru. Báze faktů se vytváří v průběhu řešení konkrétního problému a obsahuje data k řešenému problému. Prostředky reprezentace znalostí: matematická logika, pravidla (rules), sémantické sítě (semantic nets), rámce a scénáře (frames and scripts), objekty (objects). 5

Inferenční mechanismus Inferenční mechanismus obsahuje obecné (oborově nezávislé) algoritmy schopné řešit problémy na základě manipulace se znalostmi z báze znalostí. Typický inferenční mechanismus je založen na inferenčním pravidle pro odvozování nových poznatků z existujících znalostí, strategii prohledávání báze znalostí. 6

Neurčitost v expertních systémech Neurčitost se může vyskytovat jednak v bázi znalostí a jednak v bázi faktů. Zdroje neurčitosti: nepřesnost, nekompletnost, nekonzistence dat, Stochastická neurčitost Kvantová neurčitost vágní pojmy, nejisté znalosti. Prostředky pro zpracování neurčitosti: Bayesovský přístup, Bayesovské sítě fuzzy logika. 7

Nástroje pro tvorbu expertních systémů Prázdné expertní systémy: EXSYS, FLEX, G2, HUGIN, M4, ... Speciální programová prostředí: CLIPS, OPS5, Lisp, Prolog, ... Obecná programová prostředí: Pascal, Delphi, C, C++Builder, ... 8

Aplikace ES Aby mělo smysl použít expertní systém pro řešení nějakého problému, musejí být splněny dvě podmínky: 1. Musí se jednat o problém složitý rozsahem nebo neurčitostí vztahů, pro nějž exaktní metoda řešení buď není k dispozici, nebo není schopna poskytnout řešení v požadované době. 2. Efekty plynoucí z použití expertního systému musejí převyšovat vynaložené náklady. To znamená, že by mělo jít o problém s opakovanou potřebou řešení a značnými finančními dopady, pro nějž lidští experti jsou drazí nebo omezeně dostupní. 9

Výhody a nevýhody ES Výhody ES: schopnost řešit složité problémy, dostupnost expertíz a snížené náklady na jejich provedení, trvalost a opakovatelnost expertízy, trénovací nástroj pro začátečníky, uchování znalostí odborníků odcházejících z organizace. Nevýhody ES: nebezpečí selhání ve změněných podmínkách, neschopnost poznat meze své použitelnosti. 10

Historie vývoje ES Etapy vývoje: 1965-70 počáteční fáze (Dendral) 1970-75 výzkumné prototypy (MYCIN, PROSPECTOR, HEARSAY II) 1975-80 experimentální nasazování 1981- komerčně dostupné systémy 11

Produkční (pravidlové) systémy Poskytují vhodnou strukturu na opis a provádění procesu prohledávání. Tři základní složky produkčních systémů: báze dat (reprezentace faktů) báze (produkčních) pravidel inferenční mechanizmus (interpreter) 12

Produkční pravidlo předpoklady důsledek (akce) důsledková (akční) část předpokladová část 13

Inferenční mechanizmus Inferenční mechanizmus určuje, jak a v jakém pořadí aplikovat pravidla na bázi dat. Principiálně lze rozlišit: přímé (dopřední) řetězení, kdy při aplikaci produkčních pravidel postupujeme ve směru od počátečního stavu k některému ze stavů cílových (strategie řízená daty) zpětné řetězení, kdy se vychází od cíle ve směru počátečních stavů (strategie řízená cílem) 14

Příklad A (Je zamračeno.) & B (Je podzim.)  E (Bude pršet.) C (Zmoknu.) & D (Jsem mimo domova.)  G (Dostanu chřipku.) E (Bude pršet.)  H (Nateče mi do bot.) B (Je podzim.) & G (Dostanu chřipku.) I (Dostanu zápal plic.) E (Bude pršet.) & H (Nateče mi do bot.)  C (Zmoknu.) G (Dostanu chřipku.) & E (Bude pršet.)  F (Budu dlouho nemocná/ý.) I (Dostanu zápal plic.) & K (Nebudu se léčit.) F (Budu dlouho nemocná/ý.) Báze dat ať obsahuje data B, D a E, cílový údaj ať je symbol G. 15

Přímé řeťezení Báze dat: B (Je podzim) D (Jsem mimo domova) Cíl: E (Bude pršet) Cíl: G (Dostanu chřipku) Řešení: c) E (Bude pršet)  H (Nateče mi do bot) e) E (Bude pršet) & H (Nateče mi do bot)  C(Zmoknu) b) C (Zmoknu) & D (Jsem mimo domova)  G (Dostanu chřipku) 16

Zpětné řeťezení Báze dat: B (Je podzim) Cíl: G (Dostanu chřipku) D (Jsem mimo domova) E (Bude pršet) Cíl: G (Dostanu chřipku) b) C (Zmoknu) & D (Jsem mimo domova)  G (Dostanu chřipku) Řešení: e) E (Bude pršet) & H (Nateče mi do bot)  C(Zmoknu) c) E (Bude pršet)  H (Nateče mi do bot) 17

Procedurální (klasické) programování Popisuje algoritmus – postup, jak vyřešit úlohu 18

Příklad programu v procedurálním programovacím jazyce (Pascal)‏ Procedure kvadraticka_rovnice (a,b,c:Real); Begin D:=b*b-4*a*c if D<0 then writeln ('neni reseni'); if D=0 then writeln ('jedno reseni:', -b/(2*a)); if D>0 then begin D:=sqrt(D); R1:=(-b+D)/(2*a); R2:=(-b-D)/(2*a); writeln ('Dve reseni:', R1, R2); end; 19

Neprocedurální (logické) programování „Program“ je pouze popis situace, problému. Programátor nespecifikuje, jak problém řešit. To nechává na programu, respektive na překladači, či interpretu jazyka 20

Neprocedurální programovací jazyky LISP AUTOLISP „SQL“ Prolog (SWI-Prolog) 21

Příklad programu v Prologu Fakta pravidla 22

Fakta zena(lucie). muz(tomas). zena(zdislava). muz(petr). zena(petra). zena(hana). zena(johana). zena(anna). zena(eliska). muz(tomas). muz(petr). muz(jan). muz(jiri). muz(josef). muz(lukas). muz(bartolomej). 23

Fakta rodic(tomas,josef). rodic(jiri,tomas). rodic(tomas,anna). rodic(jiri,petr). rodic(jiri,petra). rodic(hana,tomas). rodic(hana,petr). rodic(hana,petra). rodic(tomas,josef). rodic(tomas,anna). rodic(tomas,eliska) rodic(lucie,josef). rodic(lucie,anna). rodic(lucie,eliska). rodic(petr,johana). rodic(petr,bartolomej). rodic(zdislava,johana). rodic(zdislava,bartolomej). rodic(jan,lukas). rodic(petra,lukas). 24

Pravidla otec(X,Y) :- rodic(X,Y), muz(X). matka(X,Y) :- rodic(X,Y), zena(X). dite(X,Y) :- rodic(Y,X). sourozenec(X,Y) :- rodic(Z,X), rodic (Z,Y). bratr(X,Y) :- sourozenec(X,Y), muz(X). sestra(X,Y) :- sourozenec(X,Y), zena(X). manzel(X,Y) :- dite(Z,X), dite(Z,Y), muz(X). manzelka(X,Y) :- dite(Z,X), dite(Z,Y),zena(X). 25

Dotazy muz(tomas)‏ muz(anna)‏ otec(tomas,josef)‏ otec(X,josef)‏ dite(tomas,X)‏ dite(X,_)‏ otec(X,Y)‏ sestra(X,Y)‏ bratr(tomas,X)‏ 26

Úkoly Napiše tato pravidla: dedecek(X,Y)‏ babicka(X,Y)‏ stryc(X,Y)‏ teta(X,Y)‏ synovec(X,Y)‏ neter(X,Y)‏ bratranec(X,Y)‏ sestrenice(X,Y)‏ 27