Temat: Systemy Ekspertowe i ich zastosowania

Podobne dokumenty
Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski

Systemy ekspertowe. Krzysztof Patan

Cel projektu: Wymogi dotyczące sprawozdania:

Ćwiczenie numer 4 JESS PRZYKŁADOWY SYSTEM EKSPERTOWY.

Transformacja wiedzy w budowie i eksploatacji maszyn

Systemy ekspertowe i sztuczna inteligencja. dr Agnieszka Nowak Brzezioska

Systemy ekspertowe : program PCShell

Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych

Przykład bazy wiedzy opracował dr inż. Jacek Habel

PODSTAWY BAZ DANYCH. 19. Perspektywy baz danych. 2009/2010 Notatki do wykładu "Podstawy baz danych"

PRZEWODNIK PO PRZEDMIOCIE

Systemy eksperowe. Agnieszka Nowak Brzezińska Wykład I

EFEKTY UCZENIA SIĘ DLA KIERUNKU INŻYNIERIA DANYCH W ODNIESIENIU DO EFEKTÓW UCZENIA SIĘ PRK POZIOM 6

Zapisywanie algorytmów w języku programowania

SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD

PRZEWODNIK PO PRZEDMIOCIE

Metody wnioskowania. Wnioskowanie w przód (ang. forward chaining) Wnioskowanie w tył (ang. Backward chaining) Od przesłanki do konkluzji Np..

INFORMATYKA Pytania ogólne na egzamin dyplomowy

6. Zagadnienie parkowania ciężarówki.

Informacje i materiały dotyczące wykładu będą publikowane na stronie internetowej wykładowcy, m.in. prezentacje z wykładów

Wykład I. Wprowadzenie do baz danych

KIERUNKOWE EFEKTY KSZTAŁCENIA

Efekt kształcenia. Wiedza

Algorytmika i pseudoprogramowanie

Metody Prognozowania

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE

Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej.

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

SZTUCZNA INTELIGENCJA

PRZEWODNIK PO PRZEDMIOCIE

Praca dyplomowa magisterska

STANDARDOWE FUNKCJE PRZYNALEŻNOŚCI. METODY HEURYSTYCZNE wykład 6. (alternatywa dla s) (zdef. poprzez klasę s) GAUSSOWSKA F.

Algorytm. a programowanie -

zakładane efekty kształcenia

Analiza i projektowanie aplikacji Java

INFORMATYKA TECHNICZNA Badanie możliwości wykorzystania języka AutoLISP i środowiska VisualLISP w systemie CAx

Systemy Agentowe główne cechy. Mariusz.Matuszek WETI PG

Algorytm. Krótka historia algorytmów

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

prawda symbol WIEDZA DANE komunikat fałsz liczba INFORMACJA (nie tyko w informatyce) kod znak wiadomość ENTROPIA forma przekaz

ANALITYKA GOSPODARCZA, STUDIA MAGISTERSKIE WIEDZA

INŻYNIERIA WIEDZY I SYSTEMY EKSPERTOWE

KIERUNKOWE EFEKTY KSZTAŁCENIA

Elementy logiki i teorii mnogości

Pytania z przedmiotów kierunkowych

PRZEWODNIK PO PRZEDMIOCIE

Uniwersytet Śląski w Katowicach str. 1 Wydział Informatyki i Nauki o Materiałach

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

7. Zagadnienie parkowania ciężarówki.

Wyszukiwanie binarne

1 Moduł Neuronu Cyfrowego SM

AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 3 AUTOMATYKA

Systemy ekspertowe. Wnioskowanie w systemach regułowych. Część piąta. Autor Roman Simiński.

Klasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi

Inteligencja obliczeniowa

Odniesienie do efektów kształcenia dla obszaru nauk EFEKTY KSZTAŁCENIA Symbol

TEORETYCZNE PODSTAWY INFORMATYKI

SZTUCZNA INTELIGENCJA

Opis efektów kształcenia dla programu kształcenia (kierunkowe efekty kształcenia) WIEDZA. rozumie cywilizacyjne znaczenie matematyki i jej zastosowań

METODY ANALIZY DANYCH ORAZ PREZENTACJI INFORMACJI GEOPRZESTRZENNYCH

PRZEWODNIK PO PRZEDMIOCIE

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Celem ćwiczenia jest zapoznanie się z podstawowymi możliwościami języka Prolog w zakresie definiowania faktów i reguł oraz wykonywania zapytań.

Ekonometria - ćwiczenia 10

Technologie i systemy oparte na logice rozmytej

PRZEWODNIK PO PRZEDMIOCIE

Efekty kształcenia dla: nazwa kierunku

Weryfikacja hipotez statystycznych. KG (CC) Statystyka 26 V / 1

DLA SEKTORA INFORMATYCZNEGO W POLSCE

Systemy uczące się wykład 1

OPTYMALIZACJA HARMONOGRAMOWANIA MONTAŻU SAMOCHODÓW Z ZASTOSOWANIEM PROGRAMOWANIA W LOGICE Z OGRANICZENIAMI

Efekty kształcenia na kierunku AiR drugiego stopnia - Wiedza Wydziału Elektrotechniki, Automatyki i Informatyki Politechniki Opolskiej

Zastosowanie symulacji Monte Carlo do zarządzania ryzykiem przedsięwzięcia z wykorzystaniem metod sieciowych PERT i CPM

Teraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony. Część 1.

Tabela odniesień efektów kierunkowych do efektów obszarowych (tabele odniesień efektów kształcenia)

KARTA MODUŁU KSZTAŁCENIA

MATEMATYCZNE METODY WSPOMAGANIA PROCESÓW DECYZYJNYCH

Opis. Wymagania wstępne (tzw. sekwencyjny system zajęć i egzaminów) Liczba godzin zajęć dydaktycznych z podziałem na formy prowadzenia zajęć

Opracował: Jan Front

Sterowanie z wykorzystaniem logiki rozmytej

SCENARIUSZ LEKCJI. Dzielenie wielomianów z wykorzystaniem schematu Hornera

Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa.

Programowanie obiektowe - 1.

Zastosowanie metod eksploracji danych (data mining) do sterowania i diagnostyki procesów w przemyśle spożywczym

Typy, klasy typów, składnie w funkcji

5. OKREŚLANIE WARTOŚCI LOGICZNEJ ZDAŃ ZŁOŻONYCH

Opis efektu kształcenia dla programu kształcenia

ANALITYKA GOSPODARCZA, STUDIA LICENCJACKIE WIEDZA

Kryteria oceniania z Technologii Informacyjnej

REGUŁOWO-MODELOWE SKORUPOWE SYSTEMY EKSPERTOWE

WIEDZA. Ma podstawową wiedzę niezbędną do rozumienia ekonomicznych i innych pozatechnicznych uwarunkowań działalności inżynierskiej.

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Metody drążenia danych D1.3

Nowe narzędzia zarządzania jakością

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

Metodologia badań psychologicznych

Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe.

WYMAGANIA EDUKACYJNE

Transkrypt:

Temat: Systemy Ekspertowe i ich zastosowania Opracował: mgr inż. Jacek Habel 1. Wprowadzenie do systemów ekspertowych ogólne definicje. System ekspertowy jest pojęciem, które jest przypisywane do pewnej klasy programów, ale jak na razie nie istnieje jego obowiązująca definicja. Zacytujmy tu dwie przykładowe definicje. 1. System ekspertowy to program obliczeniowy (komputerowy), który obejmuje zorganizowaną wiedzę dotyczącą pewnego obszaru, w którym człowiek może występować jako ekspert, wystarczający do występowania jako efektywny jakościowo i finansowo konsultant (P.Finlay Loughborouhgh University, Wielka Brytania). 2. System ekspertowy to program komputerowy, który wykazuje w pewnej określonej dziedzinie taki stopień ekspertowości w rozwiązywaniu problemów, który może być porównywalny do stopnia wykazywanego przez człowieka eksperta (J.Ignizo University of Huston). Głównymi elementami systemu ekspertowego są: baza wiedzy, baza danych, mechanizm wnioskowania, mechanizm sterowania oraz interfejs użytkownika. Są to elementy występujące w większości spotykanych rozwiązań architektury systemów. Należy tu zauważyć, że wyłącznie baza wiedzy i baza danych są zależne bezpośrednio od zastosowań systemu, podczas gdy pozostałe elementy mogą być w dużym stopniu niezależne od zakresu zastosowań. Spostrzeżenie to doprowadziło do powstania tzw. szkieletowych systemów ekspertowych, czyli systemów posiadających pustą i edytowalną bazę wiedzy oraz zaimplementowane wszystkie pozostałe elementy. Przykładem takiego oprogramowania jest program Exsys Professional. Budowa systemu ekspertowego, z wykorzystaniem tego pakietu, sprowadza się do wypełnienia baz wiedzy i danych za pomocą programu edytora wiedzy. Omawiane oprogramowanie cechuje duża elastyczność, która pozwala ingerować w sposób działania poszczególnych mechanizmów systemu poprzez odpowiednie implementacje prostych języków programowania. Zastosowanie szkieletowych systemów ekspertowych pozwala na znaczną redukcję pracochłonności wykonania i kosztów wdrażania systemu ekspertowego. 2. Kiedy stosować system ekspertowy? Teoretycznie każdy proces podejmowania decyzji można przedstawić w postaci systemu ekspertowego. Jednak praktycznie wiele problemów nie można w sposób efektywny przedstawić, np. jeśli dany problem nie jest do końca rozpoznany lub jest zbyt złożony. Najważniejszym krokiem podczas projektowania systemu ekspertowego jest właściwe zdefiniowanie problemu. Należy zatem postawić sobie następujące pytania: 1. Czy człowiek wie jak rozwiązać dany problem? Jeżeli nie ma człowieka eksperta, który potrafiłby rozwiązać dany problem to wówczas nie możliwe jest zaprojektowanie systemu ekspertowego. Sposób rozwiązywania problemu musi być znany i ściśle zdefiniowany. 2. Czy dany problem posiada znane rozwiązania? Systemy ekspertowe potrafią wybrać jedno lub wiele możliwych rozwiązań ze zbioru dopuszczalnych. Jeżeli nie możliwe jest określenie wszystkich możliwych rozwiązań, to pisanie reguł do rozwiązywania danego problemu jest bardzo trudne lub wręcz niemożliwe. Niektóre zadania mogą posiadać bardzo duży zbiór możliwych rozwiązań, np. zadanie konfiguracji komputera, ale w tym przypadku możliwe jest określenie zbioru znanych rozwiązań. 3. Jaki jest stopień zrozumienia problemu i jaki jest jego zakres?

Jeżeli rozpatrywany problem jest zbyt ogólny lub wymaga wysokiego poziomu rozpoznania, to nie należy do jego rozwiązywania stosować systemu ekspertowego. Uwaga 1 wada: Wiedza eksperta nie może być w całości zapisana w pamięci komputera lecz tylko pewien jej fragment. Jedynie człowiek może rozwiązać nowe zadanie bazując na swojej inteligencji i doświadczeniu komputer tego nie potrafi (na razie). Uwaga 2 zaleta: System ekspertowy może rozwiązywać określone zadania, dla których został zaprojektowany i może go używać każdy człowiek, nawet nie znający sposobu rozwiązywania danego problemu. Uwaga 3 zaleta: Zazwyczaj rozwiązanie naszego problemu uzyskujemy znacznie szybciej. 4. Czy sposób rozwiązania problemu jest dostatecznie udokumentowany? Jeśli tak to rozwiązanie danego problemu może być przedstawione w postaci drzewa decyzyjnego, opisu procedury postępowania, regulacji lub dokładnie określonych instrukcji postępowania. Dobrze rozpoznane problemy łatwiej zapisać w postaci systemu ekspertowego a otrzymywane rozwiązania są czytelne i zrozumiałe. 3. Zakres praktycznych zastosowań. Systemy ekspertowe znalazły bardzo szerokie zastosowanie głównie jako systemy doradcze dla zadań identyfikacji, klasyfikacji, sterowania, symulacji, diagnostyki. Pierwsze implementacje systemów ekspertowych miały miejsce w medycynie do diagnostyki medycznej w badaniach profilaktycznych takich jak pediatria czy okulistyka. Kolejnym polem zastosowań jest ekonomia. Przykładowe zastosowania systemów ekspertowych w ekonomii to: System do wspomagania negocjacji, System do oceny sytuacji finansowej przedsiębiorstwa, System do oceny umiejętności pracowników. Oczywiście najszerszy zakres zastosowań systemy ekspertowe znalazły w technice. Oto przykładowe ich zastosowania: Zadania identyfikacji, rozpoznawania i klasyfikacji, Diagnostyka stanu urządzeń i awarii, Analiza danych eksperymentalnych, Systemy sterowania oparte na wiedzy (regulacja adaptacyjna), Projektowanie konstrukcji i technologii, Systemy gromadzenia wiedzy (akwizycji wiedzy), Symulacji, Prognozowania zapotrzebowania, Określania stanu technicznego.

4. Budowa systemu ekspertowego, elementy składowe na przykładzie Exsys Professional. Elementy składowe systemu ekspertowego przedstawia poniższy rysunek. Jak widać na rysunku centralnym elementem systemu ekspertowego jest mechanizm wnioskowania. Warstwę zewnętrzną widoczną dla użytkownika stanowią: interfejs użytkownika, moduł prezentacji wyników oraz moduł objaśniający proces wnioskowania. Elementami wewnętrznymi są baza danych i baza wiedzy. W bazie danych znajdują się zarówno zmienne definiowane przez użytkownika jak również zmienne samego systemu. Do dyspozycji mamy kilka typów zmiennych takich jak: zmienne typu liczbowego (Variable: Number), zmienne typu znakowego (Variable: String) oraz tzw. zmienne wyliczeniowe (Qualifiers) pozwalające na zapis dowolnych struktur na zwór języka potocznego. Istnieją różne metody reprezentacji wiedzy. W przypadku omawianego systemu, wiedza zapisywana jest w postaci reguł decyzyjnych, których postać jest następująca: warunek1 (and/or) warunek2 sprawdzenie warunków wystąpienia (and/or) warunek3 działania projektowego.. t i wybór działania projektowego and p1=... and p2=... nadanie wartości parametrom działania. projektowego. and procedure (p1, p2..., ) wywołanie procedury realizującej działanie projektowe 5. Opis mechanizmu wnioskowania. Najważniejszym elementem systemu ekspertowego jest mechanizm wnioskowania. Niezależnie od zastosowanej metody wnioskowania, przebieg działania mechanizmu jest ustalony w następujących krokach, pokazanych na poniższym rysunku:

Selekcja to ograniczanie zbioru faktów, reguł i hipotez dla zmniejszenia liczby uzgodnień, np. porządkowanie zbioru reguł, zawężanie liczby reguł. Uzgadnianie to znalezienie reguł, które dają się uzgodnić z faktami. Reguła może być uzgodniona raz lub wielokrotnie zależnie od danych wejściowych. Mamy tu trzy stany faktów: prawdziwe, fałszywe i niesprawdzone. Tworzenie zbioru konfliktowego w zależności od przyjętej strategii postępowania może to być np. zbiór możliwych działań do zastosowania w danym momencie. Rozstrzygnięcie sytuacji konfliktowej na podstawie zbioru reguł lub przyjętego sposobu jakościowej oceny rozwiązań wybranie najlepszego działania. Wyzwolenie wykonanie części Then wybranej reguły. 6. Opis metod wnioskowania wprzód i wstecz. Rozważmy następujący hipotetyczny przykład. Dane są 4 reguły: R1: A i B F R2: C i D G R3: F i G H R4: E i H KONIEC A. Wnioskowanie wprzód (Forward) W tym przypadku kierunek wnioskowania jest zgodny z kierunkiem wynikania logicznego w zbiorze reguł. Przyjmujemy następujące założenie: znamy fakty: A, B, C, D, E. Stąd mamy: Krok 1: Z reguły R1 wnioskuje fakt F znamy: A, B, C, D, E, F Krok 2: Z reguły R2 wnioskuje fakt G znamy: A, B, C, D, E, F, G Krok 3: Z reguły R3 wnioskuje fakt H znamy: A, B, C, D, E, F, G, H Krok 4: Z reguły R4 wnioskuje KONIEC znamy: A, B, C, D, E, F, G, H i KONIEC B. Wnioskowanie wstecz (Backward)

W tym przypadku kierunek wnioskowania jest przeciwny do kierunku wynikania logicznego w zbiorze reguł. Przyjmujemy hipotezę, że znamy rozwiązanie KONIEC oraz zakładamy że znamy fakty: A, B, C, D, E. Stąd mamy: Krok 1: Z reguły R4 wnioskujemy, że musimy znać fakty E i H Krok 2: Aby znać H to z reguły R3 musimy przyjąć, że znamy F i G Krok 3: Aby znać G to z reguły R2 musimy przyjąć, że znamy C i D Krok 4: Aby znać F to z reguły R1 musimy przyjąć, że znamy A i B Jeśli znam fakty A, B, C, D, E (a to przyjęliśmy w założeniu) to potwierdzamy słuszność hipotezy KONIEC. Wnioskowanie wstecz umożliwia implementację tzw. zagłębianego (zagnieżdżonego) wnioskowania, które jest bardzo użytecznym narzędziem upraszczającym zapis reguł. Prosty przykład z technologii dobór półfabrykatu Weźmy regułę ustalającą postać półfabrykatu: Przedmiot to: wałek and Wielkość produkcji: jednostkowa Postać półfabrykatu: pręt walcowany Do stwierdzenia prawdziwości powyższej reguły potrzebna jest znajomość warunków w części. Może je oczywiście podać użytkownik, ale może to być dla niego trudne jeśli jest laikiem w tej dziedzinie. Dlatego lepszym rozwiązaniem jest napisanie reguł zagnieżdżonych, które mogą na podstawie innych znanych faktów stwierdzić prawdziwość faktów z tej reguły. Oto przykładowe takie reguły: Klasa przedmiotu: część obrotowa and [L]/[D]>1 and Osiowe otwory przelotowe: nie istnieją Przedmiot to: wałek [Masa przedmiotu]<100 kg and [Ilość sztuk w serii]<50 Wielkość produkcji: jednostokowa Informacje potrzebne do uzgodnienia powyższych reguł mogą być pobierane bezpośrednio z zewnętrznych źródeł informacji jak np. baza danych wyrobu. 7. Opis poziomów ufności. Jedną z najmocniejszych stron systemów bazujących na wiedzy jest tworzenie reguł, które mogą stwierdzić stan odpowiedzi (celu) z pewnym prawdopodobieństwem a nie definitywnie (prawda czy fałsz). Dlatego zaimplementowano tzw. poziomy ufności, które określają stopień pewności otrzymywanych wyników. Najprostszym trybem jest tryb Yes/No który jest bardzo prosty, ale jak uczy doświadczenie, w praktyce jest raczej rzadko spotykany. W większości przypadków konkretne fakty mogą implikować jakąś odpowiedź, ale nie definitywnie. Dlatego właściwy wybór odpowiedniego poziomu ufności jest bardzo ważny. Późniejsze zmiany są bardzo trudne lub wręcz niemożliwe. Przy wyborze należy się kierować zasadą wybierz najprostszy sposób, dzięki któremu można rozwiązać dany problem. Mamy do dyspozycji następujące tryby poziomów ufności: Tryb YES/NO Jeżeli wszystkie dane do naszego problemu można definitywnie określić jako prawdziwe lub fałszywe (0 lub 1). Dobry do wyboru obiektów ze zbiorów gdzie

mogą być jednoznacznie zidentyfikowane. Również odpowiedni do konwersji drzew decyzyjnych, które nie wymagają zastosowania prawdopodobieństwa. Tryb 0 do 10 Najlepszy dla większości problemów. Pozwala na zablokowanie wartości celu na YES(10) lub NO(0) oraz na manipulowanie wartościami od 1 do 9. Jeśli dany cel z kilku uzgodnionych reguł otrzyma różne wartości np. 3, 7 i 8 to jego końcowa wartość jest uśredniana i wynosi 6. Tryb 100 do 100 Podobny do poprzedniego, ale oferujący większą precyzję. Nie posiada blokowania wartości celu YES/NO. Stosowany głównie, gdy posiadamy dane statystyczne lub gdy potrafimy określić prawdopodobieństwo zdarzeń. Manipulacja wartościami celu może odbywać się w trzech trybach: Average poszczególne wartości otrzymywane z uzgodnionych reguł są uśredniane, zakres: -100 do 100, Dependent poszczególne wartości otrzymywane z uzgodnionych reguł są sumowane według reguł prawdopodobieństwa zależnego, zakres: 0 do 100, Independent poszczególne wartości otrzymywane z uzgodnionych reguł są sumowane według reguł prawdopodobieństwa niezależnego, zakres: 0 do 100, Tryb Incr/Decr Podstawową zaletą tego trybu jest fakt, że wartość rozwiązania nie jest ograniczona do małego zakresu. Końcowa wartość może osiągnąć wartość +/- 10 000. Pozwala to na zróżnicowanie rozwiązań, które w innych trybach otrzymywałyby tą samą wartość. Wartości celu otrzymywane z uzgodnionych reguł są dodawane lub odejmowane od aktualnej jego wartości. Przykład: Cel1 dostał 3 razy wartość 9 a Cel2 otrzymał 1 raz wartość 9. W trybie 0-10 oba cele mają wartość 9, natomiast w trybie Incr/Decr Cel1=27 a Cel2=9. Tryb Custom Formula Ten tryb daje największe możliwości. Każdy może określić własne, dowolnie skomplikowane reguły obliczania wartości celu. Pozwala również na zastosowanie różnych metod oceny w ramach jednego systemu. Tryb Fuzzy Logic Jest to bardzo użyteczna i mocna technika, która najlepiej odzwierciedla rzeczywisty świat. Jest to tzw. logika rozmyta, która pozwala przypisywać poszczególnym zmiennym funkcje stopnia jej rozmycia.