Člověk |
Expertné systémy dokážu simulovať rozhodovací proces vykonávaný expertom v nejakej problémovej oblasti. Modelujú spracovanie vstupných údajov tak, akoby ho robil odborník. Rozdiel medzi "klasickými" programami a týmito znalostnými technológiami možno špecifikovať aj pomerom medzi v systéme obsiahnutými údajmi a počtom procedúr, ktoré s týmito údajmi pracujú. Pokiaľ konvenčné programy na manipuláciu s údajmi – typicky databázy – obsahujú veľký počet údajov, nad ktorými definujú iba malý počet zväčša jednoduchých operácií, znalostné systémy majú oveľa nižší pomer medzi počtom údajov a počtom procedúr, ktoré s nimi pracujú.
Expertné systémy dokážu simulovať rozhodovací proces vykonávaný expertom v nejakej problémovej oblasti. Modelujú spracovanie vstupných údajov tak, akoby ho robil odborník. Rozdiel medzi "klasickými" programami a týmito znalostnými technológiami možno špecifikovať aj pomerom medzi v systéme obsiahnutými údajmi a počtom procedúr, ktoré s týmito údajmi pracujú. Pokiaľ konvenčné programy na manipuláciu s údajmi – typicky databázy – obsahujú veľký počet údajov, nad ktorými definujú iba malý počet zväčša jednoduchých operácií, znalostné systémy majú oveľa nižší pomer medzi počtom údajov a počtom procedúr, ktoré s nimi pracujú.
Poznatky sú v znalostných systémoch chápané ako drobné procedúry pracujúce s veľmi špecifickými – a s týmito procedúrami veľmi tesne spojenými – údajmi. Oblastí nasadenia týchto systémov je veľa, ale úlohy, ktoré expertné systémy riešia, je možné rozdeliť do niekoľko málo základných skupín.
Diagnostika
Najrozšírenejším typom expertných systémov sú diagnostické expertné systémy. Ich úlohou je interpretovať dostupné údaje s cieľom určiť, ktorá hypotéza z dopredu stanovenej množiny hypotéz najlepšie týmto údajom zodpovedá. Riešenie prebieha formou postupného prehodnocovania čiastkových a nakoniec cieľových hypotéz v rámci pevne daného vnútorného modelu riešeného problému. Tento model – báza znalostí – je dopredu navrhnutý expertom.
Informácie o danej problémovej oblasti a spôsobe riešenia úloh v nej sú uložené v báze znalostí. Tieto vedomosti sa aplikujú na údaje o konkrétnej riešenej úlohe, ktoré interaktívne zadáva používateľ (tzv. dialógový režim činnosti expertného systému), získavajú sa výberom z vopred pripraveného úložišťa údajov, napr. z databázy (tzv. dávkový režim činnosti expertného systému), alebo môžu byť snímané priamo z reálnych objektov.
Mechanizmus, akým sa znalosti z bázy znalostí použijú, t.j. spôsob určenia postupnosti aplikovania odvodzovacích (inferenčných) pravidiel na údaje o konkrétnej úlohe, určuje inferenčný mechanizmus. Od jeho kvality závisí kvalita celého expertného systému. Informácie o konkrétnej úlohe – zadané "zvonku" aj odvodené expertným systémom v rámci odvodzovacieho procesu – tvoria tzv. bázu údajov.
Báza údajov na začiatku obsahuje predvolené údaje o všeobecnej úlohe z danej problémovej oblasti. V priebehu práce systému sa postupne tieto údaje upresňujú a dopĺňajú, čím vzniká model riešenej úlohy. Je určená jedena alebo niekoľko cieľových hypotéz, z ktorých sa expertný systém snaží určiť tie, ktoré zodpovedajú stavu popísanému vstupnými údajmi.
Príkladom diagnostického expertného systému môže byť expertný systém Mycin, vyvinutý už v roku 1984 v Standford Research Institute. Jeho úlohou bolo na základe jednoducho dostupných údajov určovať typy bakteriálnej infekcie, ktorými by mohol byť práve hospitalizovaný pacient postihnutý. Systém MYCIN dokázal navrhnúť liečbu antibiotikami tak, aby sa stav pacienta stabilizoval do doby, kým sa ukončia časovo náročné podrobné laboratórne vyšetrenia.
Hoci najčastejšie uvádzané príklady diagnostických expertných systémov sú práve z oblasti medicíny, existuje príklad z priemyslu, ktorý je rozhodne hodný spomenutia. Jedná sa o expertný systém Dipmeter Advisor, ktorý bol vyvinutý pre potreby niekoľkých naftárskych spoločností. Poskytuje rady obsluhe vrtných zariadení v prípade problémov s hĺbkovými vrtmi. Náklady na vývoj tohto systému presiahli 21,5 milióna dolárov, ale návratnosť investícií sa dala vyjadriť v týždňoch. To nemožno nazvať inak ako "dobrá investícia".
Plánovanie
Plánovacími expertnými systémami sa obvykle riešia také úlohy, kde je známy cieľ riešenia a počiatočný stav a systém má využitím údajov o konkrétnom prípade nájsť – pokiaľ možno optimálnu – postupnosť krokov, ktorými možno z počiatočného stavu cieľ dosiahnuť. Podstatnou časťou takýchto expertných systémov je generátor možných riešení, ktorý automaticky kombinuje postupnosť operátorov.
S rastúcim počtom operátorov – a predovšetkým s nutným počtom krokov riešenia – rastie veľmi rýchlo počet kombinácií pri vytváraní postupností krokov – hovorí sa o tzv. kombinatorickej explózii. Znalosť experta aj údaje o reálnom prípade sa v plánovacích expertných systémoch používajú k výraznému obmedzeniu kombinatorickej explózie skúmaných riešení, navrhovaných generátorom.
Výsledkom činnosti plánovacieho expertného systému je zoznam navrhovaných riešení, obvykle ohodnotených istou mierou optimality, k výpočtu ktorej sa tak isto využívajú informácie z bázy dát. Tento zoznam je uchovávaný v zásobníku vhodných riešení, ktorý sa v priebehu riešenia úlohy dynamicky mení.
Plánovacie expertné systémy sú viac problémovo závislé ako diagnostické expertné systémy. V súvislosti s uvedeným rozdelením expertných systémov na diagnostické a plánovacie je potrebné uviesť, že aj pomocou diagnostických expertných systémov je možné riešiť celý rad úloh plánovacieho charakteru, avšak za predpokladu, že počet možných riešení (alternatív) plánovania nie je príliš veľký.
Hybridné systémy
Hybridné expertné systémy sa vyznačujú kombinovanou architektúrou, pretože čiastočne využívajú diagnostické princípy a čiastočne plánovacie systémy. K hybridným systémom zaraďujeme napríklad inteligentné výukové systémy (u ktorých sa strieda "diagnostika" znalostí vyučovaného s plánovaním ďalšieho výučbového procesu) či monitorovacie systémy (diagnostický sledovací systém je v okamihu detekcie poruchy nahradený systémom pre plánovanie zásahu na jej odstránenie).
Prázdne systémy
Od samého počiatku rozvoja expertných systémov bola zdôrazňovaná opakovateľná využiteľnosť vyvíjaných expertných systémov či ich častí. Vysoká znovupoužiteľnosť je zrejmá najmä u obecných, problémovo nezávislých častí expertných systémov, t.j. u riadiacich a vysvetľovacích mechanizmov.
Expertné systémy bez problémovo závislých častí, t.j. bez bázy znalostí a bázy údajov, sa obvykle nazývajú prázdne expertné systémy (angl. shells). Až doplnením bázy znalostí k prázdnemu systému sa systém orientuje na riešenie príslušnej problematiky (stáva sa z neho problémovo orientovaný expertný systém). Doplnením bázy údajov je tak vždy riešený konkrétny prípad.
Prázdne expertné systémy sa podarilo vyvinúť iba pre riešenie diagnostických úloh. Vzhľadom k silnej závislosti efektívnosti plánovacích a hybridných systémov na použitej reprezentácii znalostí, ktorá je obvykle tiež výrazne problémovo závislá, dosiaľ neexistujú prázdne expertné systémy spomínaných dvoch druhov. Prázdne expertné systémy boli dôležité pre výskum v tejto oblasti umelej inteligencie a pre návrh pilotných projektov expertných systémov, pretože umožňovali relatívne rýchlu a ľahkú implementáciu nových systémov. "Relatívne" preto, lebo návrh a implementácia expertného – alebo všeobecne znalostného – systému nikdy nie je triviálnou záležitosťou a neraz končí aj neúspechom.
Pohľad používateľa
Uvedené rozdelenie úloh zodpovedalo pohľadu zo strany expertných systémov na triedy úloh, ktoré dokážu riešiť. Pre čitateľa môže byť ale tiež zaujímavé pozrieť sa na problematiku úloh pre expertné systémy z pohľadu používateľa a hľadať odpoveď na otázku, či na riešenie danej konkrétnej úlohy možno použiť znalostný systém. Najmä manažérov firiem zvažujúcich investíciu do takéhoto systému bude zaujímať, kedy je ich použitie vhodné a opodstatnené, a kedy je naopak rizikové alebo nevhodné.
Existujú určité predpoklady problémov alebo riešených úloh – také, že po splnení aspoň niektorých z nich možno predpokladať, že pre ich riešenie je možné navrhnúť znalostný systém. V prvom rade musia existovať špecialisti, ktorí ovládajú postupy na riešenie týchto úloh. Ak je problémom firmy napr. nevýhodný kurz eura voči korune, ani najlepší špecialista firmy s týmto problémom nič neurobí a firma sa mu jednoducho musí prispôsobiť (predpokladajme, že onou firmou nie je práve Národná banka, ktorá disponuje mechanizmami ako danú nepriaznivú skutočnosť ovplyvniť). Pre danú problémovú oblasť musí existovať dostatok odbornej literatúry alebo iných explicitných podkladov.
Je potrebné si uvedomiť, že špeciálne znalosti ľudského experta sú iba onou povestnou špičkou ľadovca, pod ktorou musí existovať celý horský masív poznatkov o danej problematike. Rovnako aj znalostný systém, ktorý má implementovať expertove špecifické znalosti, musí implementovať aj teoretický základ úloh v danej problematike. Dôležité je, aby experti dokázali svoje odborné rozhodnutia dostatočne zdôvodniť, prípadne odôvodniť svoje zlyhanie. Len tak dokážu svoje poznatky odovzdať znalostnému inžinierovi, ktorý ich práve na základe spomínaného vysvetlenia implementuje do umelého systému.
Nevhodnými kandidátmi na riešenie pomocou znalostných systémov sú úlohy, ktorých riešenie je silne závislé od tzv. bežných poznatkov. Reprezentácia takýchto úloh je pre umelé systémy veľmi zložitá a je predmetom aktívneho skúmania umelej inteligencie. Rovnako závislosť úlohy a jej riešenia od zmyslových údajov signalizuje, že použitie umelého systému v tomto prípade môže zlyhať. Pokiaľ pre človeka sú zmyslami prijímané informácie spracovateľné dobre a rýchlo, pre umelé systémy predstavuje veľký problém ich objem a presnosť práce s nimi.
Ak je úloha závislá od zmyslových údajov, je vhodné hľadať spôsoby, ako túto závislosť odstrániť. V istom priemyselnom závode bol hlavný výrobný proces založený na kondenzácii, ktorá bola citlivá na teplotu a hustotu vstupujúcej pary a tento proces bol riadený na základe čuchovej analýzy "ovzdušia" v kondenzátore. Táto "analýza" bola jednak zdraviu škodlivá, jednak bolo len niekoľko málo ľudí, ktorí ju vedeli urobiť. S veľkým úspechom bol na reguláciu tohto výrobného procesu nasadený fuzzy regulátor, pričom analýza stavu v kondenzátore sa vykonávala veľmi jednoduchým spôsobom, a to meraním vodivosti pary (išlo o vodnú paru nasýtenú niklom a úlohou analýzy bolo určiť koncentráciu kovu v pare).
Zmeny systému
Znalosti experta sa zvyknú časom meniť. Rovnako z času na čas je potrebné pozmeniť alebo doplniť aj bázu znalostí expertného systému. Ak takéto zmeny budú časté a veľkého rozsahu, náklady na prevádzku systému sa môžu dramaticky zvýšiť. Časté zmeny by vyžadovali častú prítomnosť tak znalostného inžiniera ako aj experta, preto je namieste zvážiť, či v takomto prípade nebude výhodnejšia trvalá prítomnosť experta – a umelý systém je teda zbytočný.
Posledne zmienená zbytočnosť expertného systému pri súčasnej prítomnosti ľudského experta však neplatí vo všetkých situáciách. Expertný systém sa len zriedkavo používa ako úplná náhrada človeka, zvyčajne je to v aplikáciách diagnostiky porúch či on-line riadenia. Často expertný systém funguje ako rovnocenný spolupracovník človeka, prípadne len ako jeho poradca, pričom je na ľudskom expertovi, aby zvážil a prípadne korigoval závery expertného systému.
Expertný systém tak môže človeka odbremeniť od rutinnej práce a poskytnúť mu väčší priestor venovať sa špecifikám konkrétnej úlohy. Tento prístup je charakteristický pre väčšinu metód umelej inteligencie: Snažia sa poskytnúť mechanizmy na riešenie ťažkých úloh. Pri riešení týchto úloh sa inšpirujú tým, ako dané problémy riešia ľudia, prípadne príroda. Nesnažia sa však ľudí nahradiť.
Budúcnosť
Expertné systémy ešte určite nepovedali svoje posledné slovo. Pri ich vzniku sa kládol dôraz na znovupoužiteľnosť ich jednotlivých častí, najmä inferenčného a vysvetľovacieho mechanizmu. Za posledné roky prudko stúpli možnosti vývoja softwaru a otázky implementácie programov už nie sú tými, na ktorých by ich tvorba stála a padala. Preto sa v poslednom čase dostávajú do popredia tzv. dedikované (vyhradené) expertné systémy, ktoré sa už od počiatku vývoja špecializujú na určitú konkrétnu problémovú oblasť. Strácajú tak síce veľkú časť svojej flexibility, ale v oblasti, na ktorú sú určené, fungujú o to efektívnejšie. (V praxi sa ukazuje, že flexibilita implementovaná do programov je vo veľkej väčšine prípadov zbytočná a čas venovaný jej implementácii by mohol byť pri tvorbe programov využívaný oveľa efektívnejšie; podrobne viď napr. metodika extrémneho programovania) Sú to neraz vnorené subsystémy oveľa zložitejších celkov. Môžu sa použiť najmä v spolupráci s inými technológiami umelej inteligencie, tak klasickej – symbolickej (napr. v procese objavovania a manažmentu znalostí) ako aj výpočtovej – subsymbolickej (napr. pri predspracovaní údajov pred ich spracovaní neurónovými sieťami či na adaptáciu parametrov optimalizačných algoritmov).
Je známe, že kombinácia dvoch prvkov určitej zložitosti môže vytvoriť nový systém s novými – tzv. emergentnými – vlastnosťami. Ak sa na expertné systémy nebude zabúdať a nebudú sa považovať za technológiu, ktorej čas je už za nami, určite dokážu svoje kvality v ďalších aplikáciách.
Komentáře
Napsat vlastní komentář
Pro přidání příspěvku do diskuze se prosím přihlašte v pravém horním rohu, nebo se prosím nejprve registrujte.