Sprawozdanie dla ``glosniki.bw`

Transkrypt

Sprawozdanie dla ``glosniki.bw`
 Systemy ekspertowe Sprawozdanie I Tworzenie bazy wiedzy w systemie PC-­‐Shell Wykonali: Wiktor Wielgus Łukasz Nowak 1. Opis systemu System został stworzony w celu pomocy użytkownikowi przy wyborze sprzętu audio odpowiedniego dla jego potrzeb. Zadaniem systemu jest – poprzez zadanie użytkownikowi serii pytań i analizie jego odpowiedzi(faktów) – zwrócenie informacji o zestawie audio pasującym do wymagań użytkownika. W przypadku braku takiego zestawu w systemie, zwraca on pusty zbiór odpowiedzi. 2. Baza wiedzy Blok facets – zawiera wszystkie atrybuty występujące w systemie wraz z wyróżnionym dla każdego atrybutu zbiorem wartości jakie może przyjmować. facets single yes; typzestawu: query "Jaki chcesz zestaw?" val oneof { "2.0", "2.1" , "3.1" , "5.1" }; wejcyfrowe: query "Czy chcesz aby zestaw posiadał wejście cyfrowe?:" val oneof { "optyczne", "koncentryczne", "brak" }; wyjsluchawki: query "Czy chcesz aby zestaw posiadał wyjście słuchawkowe?" val oneof { "tak", "nie" }; sterbezp: query "Czy chcesz aby zestaw był sterowany bezprzewodowo?" val oneof { "wi-­‐fi", "bluetooth", "pilot" , "brak"}; material: query "Z jakiego materiału mająbyćwykonane głośniki?" val oneof { "drewno" , "plastik", "metal"}; cena: query "W jakim przedziale cenowym powinny sięznajdować głośniki?" val oneof { "0-­‐100" , "101-­‐200" , "201-­‐500", "501-­‐1000" , ">1000" }; glosnik: ask no; end; Blok rules – zawiera proste reguły – na każdą składa się 6 warunków – imitujące pracę eksperta z dziedziny systemów audio, które warunkują zwracaną użytkownikowi odpowiedź. rules 06: glosnik = "Genius SP-­‐HF2020" if typzestawu = "2.0", 01: glosnik = "Genius SP-­‐HF 1800A" if wejcyfrowe = "optyczne", typzestawu = "2.0", wyjsluchawki = "tak", wejcyfrowe = "brak", sterbezp = "pilot", wyjsluchawki = "tak", material = "plastik", sterbezp = "brak", cena = "201-­‐500"; material = "drewno", cena = "201-­‐500"; 07: glosnik = "ModeCom MC-­‐MSF50" if typzestawu = "2.1", 02: glosnik = "Logitech Z906" if wejcyfrowe = "brak", typzestawu = "5.1", wyjsluchawki = "nie", wejcyfrowe = sterbezp = "brak", "koncentryczne", material = "drewno", wyjsluchawki = "tak", cena = "201-­‐500"; sterbezp = "pilot", material = "drewno", 08: glosnik = "Edifier C3" if cena = ">1000"; typzestawu = "2.1", wejcyfrowe = "brak", 03: glosnik = "Tracer Sonic" if wyjsluchawki = "tak", typzestawu = "2.0", sterbezp = "pilot", wejcyfrowe = "brak", material = "plastik", wyjsluchawki = "nie", cena = "501-­‐1000"; sterbezp = "brak", material = "plastik", 09: glosnik = "Genius SW-­‐G 2.1 1250" if cena = "0-­‐100"; typzestawu = "2.1", wejcyfrowe = "brak", 04: glosnik = "Logitech X-­‐530" if wyjsluchawki = "tak", typzestawu = "5.1", sterbezp = "brak", wejcyfrowe = "brak", material = "plastik", wyjsluchawki = "tak", cena = "101-­‐200"; sterbezp = "bluetooth", material = "metal", 10: glosnik = "Genius SW-­‐HF 5.1 4500" if cena = "201-­‐500"; typzestawu = "5.1", wejcyfrowe = "optyczne", 05: glosnik = "Genius SW-­‐HF 5.1 6000" if wyjsluchawki = "tak", typzestawu = "5.1", sterbezp = "wi-­‐fi", wejcyfrowe = "brak", material = "metal", wyjsluchawki = "tak", cena = "201-­‐500"; sterbezp = "pilot", material = "plastik", cena = "501-­‐1000"; end; Blok control – zawiera wiersze uruchomienia i zakończenia programu. W skład tego bloku wchodzi również funkcja menu z której użytkownik może wybrać rozpoczęcia wnioskowania lub zakończenie działania programu. Wybór wnioskowania powoduje rozpoczęcie rozmowy, a po jej zakończeniu wyczyszczenie zbioru faktów(odpowiedzi) udzielonych przez użytkownika tak by ponowne rozpoczęcie wnioskowania nie zwracało odpowiedzi dla poprzedniej rozmowy, a zaczynało ją od nowa. control char S1, S2, S3; run; S1 := "Wybor glosnikow"; S2 := "System doradczy wspomagający wybór głośników."; S3 := "Łukasz Nowak _ Wiktor Wielgus"; vignette( S1, S2, S3 ); setAppWinTitle("Przeglad glosnikow"); addSolution( yes ); int Odp; Odp:=1; menu "Menu" 1. "Wybor glosnikow" 2. "Exit" case 1: while (Odp==1) begin goal("glosnik=Glosnik"); confirmBox( 0, 0, "Kontynuacja","Chcesz kontynuowac wybor", Odp ); delNewFacts; end; case 2: exit; end; end; end; 3. Przykład procesu wspomagania decyzji Otworzenie bazy wiedzy powoduje wyświetlenie się komunikatu informacyjnego zawierającego tytuł, opis oraz autorów bazy. Z menu na górze ekranu mamy możliwość wyboru rozpoczęcia wnioskowania lub zamknięcia bazy wiedzy. Jeśli wybraliśmy rozpoczęcie wnioskowania, w pierwszej kolejności otrzymujemy pytanie o typ zestawu który nas interesuje – wybieramy „2.0” Następne pytanie dotyczy wejścia cyfrowego w zestawie który chcemy kupić. Wybieramy wejście cyfrowe – optyczne. Kolejnym pytaniem jest pytanie o to czy chcemy by nasz zestaw posiadał wyjście słuchawkowe – zaznaczamy „tak” Zaznaczyć należy, że w tle przy podaniu każdej odpowiedzi dochodzi do sprawdzania reguł z zbiorem posiadanych faktów. Jako, że nie znaleziona została jeszcze taka reguła otrzymujemy pytanie o sterowanie bezprzewodowe w którym wybieramy sterowanie „pilotem” Przedostatnim pytaniem jest pytanie o materiał z którego ma zostać wykonany zestaw audio – zaznaczamy „plastik”. Ostatnim pytaniem które zostaje nam zadane(jeśli wcześniej nie doszło do znalezienia pasującej reguły) jest pytanie o przedział cenowy kupowanego zestawu – wybieramy tutaj przedział „201-­‐500”. Po wybraniu opcji „Dlaczego?” z boku ekranu możemy podejrzeć co doprowadziło do zadania takiego pytania – a mianowicie byłą to seria podanych przez nas w wcześniejszych pytaniach odpowiedzi(faktów). Po udzieleniu odpowiedzi na pytanie o przedział cenowy dochodzi do zakończenia procesu wnioskowania. Zwrócona zostaje nam odpowiedź widoczna na rysunku powyżej. Jeśli wybierzemy opcję „Jak?” z boku ekranu, będziemy mogli podejrzeć, że do takiej konkluzji tj. skorzystania z reguły 6 doszło poprzez ustalenie wszystkich 6 faktów które mógł udzielić użytkownik. Po zakończonym wnioskowaniu i odczytaniu odpowiedzi możemy przystąpić do ponownego wnioskowania(znów z pustym zbiorem faktów) lub przerwać dalsze działanie programu. System posiada jednak informacje tylko o wybranych zestawach audio, w związku z czym po zakończeniu wnioskowania użytkownik może otrzymać informację o nie znalezieniu pasujących do jego wymagań zestawu. 4. Wady i zalety programu PC-­‐Shell Zalety: -­‐ Prosty i intuicyjny interfejs użytkownika -­‐ Wgląd do pliku edycji, dzięki czemu można zobaczyć w jaki sposób reprezentowana jest baza wiedzy. -­‐ Możliwość zobaczenia przyczyn decyzji algorytmu wnioskującego Wady: -­‐ stosunkowa łatwość w modyfikacji deklaratywnej reprezentacji wiedzy, opiera się na znajomości semantyki budowania wiedzy, której niekoniecznie musi znać użytkownik -­‐ program działa na regułach opracowanych przez inżyniera wiedzy, nie jest w stanie empirycznie wzbogacać swojej wiedzy 5. Wnioski Systemy ekspertowe, będące zakodowanym specjalistą w danej dziedzinie, są przydatny elementem przy procesie podejmowania decyzji oraz znajdują szerokie zastosowanie działania, jak np.: diagnozowanie chorób, udzielanie porad prawniczych, analiza rynku, kontrola jakości. Zastępują ekspertów w realizacji wybranych czynności jak również pomagają w rozwiązywaniu problemów wymagających najbardziej specjalistycznej wiedzy. Systemy ekspertowe umożliwiają wyjaśnienia jak poszczególne konkluzje zostały osiągnięte. Warto zaznaczyć jednak, że trudno jest przewidzieć działanie systemu wzbogacone o nową wiedzę, nie możemy jasno przewidzieć ingerencji w proces wnioskowania naszego systemu. Zwróćmy również uwagę na to, że nawet najlepszy system, jest tylko zakodowaną sztuczną inteligencją, mająca imitować wiedzę i doświadczenie ludzkiego umysłu, ale z pewnością nigdy go nie zastąpi. 

Podobne dokumenty