SYSTEMY EKSPERTOWE
Podstawy systemów ekspertowych
Struktura komputerowego systemu ekspertowego
Systemy ekspertowe są to programy komputerowe, które na podstawie
szczegółowej wiedzy mogą wyciągnąć wnioski i samodzielnie podjąć decyzję,
działając podobnie jak człowiek będący ekspertem w danej dziedzinie. Systemy
ekspertowe składają się z trzech podstawowych bloków pokazanych na rys. 1.
Moduł
wnioskowania
Baza
wiedzy
Interfejs
Dane
Rady i wnioski
Rys. 1. Schemat blokowy systemu
ekspertowego
W głównej mierze systemy ekspertowe to nic innego jak programy, których
podstawowym zadaniem jest symulowanie ludzkiej ekspertyzy w określonej,
najczęściej wąskiej dziedzinie. Trudno podać ścisłe wyznaczniki tej
technologii, ponieważ jest ona bowiem w trakcie znaczącego rozwoju. Nie
mniej jednak, można przytoczyć kilka cech które odróżniają te systemy od
konwencjonalnych programów:
•
zdolność wyjaśniania znalezionych przez system rozwiązań problemów;
•
do rozwiązywania problemów wykorzystane są głównie różne metody
rozumowania (wnioskowania), w mniejszym zaś stopniu algorytmy;
•
przetwarzanie wiedzy wykorzystujące głównie przetwarzanie symboli; w
mniejszym zaś stopniu przetwarzanie numeryczne;
•
jawna interpretacja wiedzy i oddzielenie jej od procedur sterowania.
•
Baza wiedzy - zawiera wiedzę z danej dziedziny, niezbędną w procesie
rozwiązywania problemów decyzyjnych. Reprezentacja wiedzy w “bazie
wiedzy” może mieć charakter zadeklarowany w postaci reguł i faktów lub
jako procedury i funkcje.
•
Moduł wnioskowania ma za zadanie przeszukiwanie elementów bazy wiedzy,
ustalenie kolejności ich analizowania i sprawdzenie warunków ich
stosowalności. Moduł ten wybiera elementy wiedzy, które następnie
zostaną sformułowane jako odpowiedź udzielona przez system.
•
Interfejs – to ta część systemu która umożliwia prowadzenie dialogu
pomiędzy użytkownikiem, a systemem. Dialog bazuje zazwyczaj na
pojęciach zrozumiałych dla osoby obsługującej system. Sposób prowadzenia
dialogu odpowiada sposobowi i kolejności rozwiązywania problemu przez
eksperta.
Systemy ekspertowe nie zawierają jawnego opisu sposobu rozwiązania
danego problemu (algorytmu), co różni je z systemami tradycyjnymi.
To właśnie system ekspertowy, a raczej jego część zwana modułem
wnioskującym (z ang. inference engine) rozwiązuje zaistniały
problem, wykorzystując do tego wiedzę za deklaratywną w bazie
wiedzy. Natomiast moduł wnioskowania realizowany jest zazwyczaj
przy pomocy zasad logiki
.
Cechy charakterystyczne, odróżniające systemy ekspertowe od
systemów konwencjonalnych to :
• jawnie przedstawiona reprezentacja wiedzy,
• zdolność do objaśniania znalezionych przez system rozwiązań,
• możliwość zastosowania do rozwiązywania problemów określonych
procedur wnioskowania (rozumowania),
• przetwarzane wiedzy jest oparte na przetwarzaniu symboli a nie
obliczeń matematyczno numerycznych.
Różnica pomiędzy klasycznym programem a systemem ekspertowym
jest w bazie wiedzy która opisuje problem bez podania szczegółowego
sposobu rozwiązania danego problemu. Jest to bardziej czytelna
forma, nawet dla osób które nie są specjalistami w danej dziedzinie
systemów ekspertowych.
Podczas etapu projektowania systemu należy poprawnie zinterpretować
problem jaki ma rozwiązać system, gdyż od tego zależy jego trafność
wnioskowania. Ten proces przedstawia rys 2. Należy zadać pytanie- “jakie są
oczekiwania i wymagania?”. Wówczas w odpowiedni sposób należy zdefiniować
pojęcia a także reprezentację wiedzy i reguł, która będzie wykorzystywana w
procesie wnioskowania . Ostatnim etapem w tworzeniu systemu jest proces
testowania
poprawności
działania
i
jednoczesna
ocena
trafności
podejmowanych decyzji.
Identyfikacja problemu
1.Definiowanie pojęć
2.Projektowanie struktury i
organizacja wiedzy
3.Formułowanie reguł
reprezentujących
Test i ocena aplikacji
Rys 2. Etapy projektowania systemu ekspertowego
wymagania
Tworzenie systemu ekspertowego składa się z kilku faz:
• zapoznanie się z problemem, który ma być rozwiązany,
• zebranie odpowiedniej ilości wiedzy od ekspertów,
• zapisanie jej w postaci programu komputerowego,
• “nauczenie" programu posługiwania się dostępnymi informacji do
skutecznej pracy nad założonym problemem.
Nad tworzeniem takiego produktu musi być obecnych wielu ludzi
Problemem jest tworzenie bazy danych, tak aby ona spełniała wymogi
aktualnego poziomu techniki, czyli musi być elastyczna (powinna mieć
możliwość zapisywania dodatkowych informacji w czasie użytkowania
systemu przez późniejszego użytkownika a także aby te zmiany były
uwzględnianie w pracy całego systemu).
Główna część tworzenia systemu ekspertowego to zdefiniowanie informacji i
znalezienie między nimi zależności. W niej tworzone są wszelkie reguły, z
których będzie on później korzystał. Zapisuje się je w postaci zdań
wnioskujących typu “ Jf.... then... " .
Stosuje się dwie postacie reguł wnioskowania:
Wnioskowania:
Jeżeli przesłanka to konkluzja ponieważ objaśnienie
Działania
Jeżeli przesłanka to działanie ponieważ objaśnienie
Wiedza przechowywana w komputerze jest zapisana przy pomocy tzw. języka
reprezentacji wiedzy, w którego skład najczęściej wchodzi opis reguł
stosowanych w procesie wnioskowania opisujących strategię rozwiązywania
danego problemu, oraz faktów (wiedza o charakterze faktograficznym).
Spotyka się systemy które wykorzystują tzw. ramy, które z jednej strony są
wykorzystywane w procesie wnioskowania, z drugiej zaś strony odwzorowują
wiedzę o strukturze problemu.
Zawarta wiedza w bazie wiedzy może pochodzić z różnych źródeł, zazwyczaj
jednak pochodzi od ekspertów lub innych specjalistów z danej dziedziny.
Wiedzę ekspertową pozyskuje oraz formalizuje przeważnie informatyk tzw.
Inżynier wiedzy. Inżynier wiedzy to nowa specjalizacja która powstała na
bazie sztucznej inteligencji. Pozyskiwanie wiedzy jest bardzo pracochłonne i
realizowane przy współpracy inżyniera wiedzy i eksperta.
W klasycznym podejściu do pozyskiwania wiedzy, używa się techniki z
których możemy wyróżnić takie jak:
•
Rozmowa z ekspertem lub obserwacja eksperta w czasie
rozwiązywania przez niego konkretnych problemów.
•
Pozyskiwanie wiedzy z instrukcji, polega to na wykorzystaniu źródeł
wiedzy wskazanych przez nauczyciela i ich przekształceniu na język
akceptowany przez uczącego się.
•
Pozyskiwanie wiedzy na podstawie analogii – polega to na takim
przekształceniu istniejącej wiedzy tak, aby mogła być ona użyteczna
do opisów faktów podobnych ( lecz nie tych samych) do tych, które
już wcześniej zostały zawarte w bazie wiedzy,
•
Pozyskiwanie wiedzy na podstawie przykładów – sposób ten jest dość
często stosowany do konstruowania baz wiedzy. Metoda polega na
generowaniu ogólnego opisu pojęć na podstawie zbioru przykładów
i/lub kontrprzykładów obiektów reprezentujących te pojęcia. Opis
ogólny jest otrzymywany na podstawie zasady indukcji. Przykłady
mogą być pozyskiwane różnymi metodami ale najczęściej pochodzą
od eksperta. Dobieranie przykładów powinno być z dużą starannością,
ponieważ to rzutuje na trafność podejmowanych decyzji przez system.
•
Pozyskiwanie wiedzy na podstawie obserwacji – metoda ta zwana jest
także jako metoda uczenia się bez nauczyciela. Podejście to wymaga
znacznie większego udziału uczącego się podczas procesu uczenia. W
zależności od interakcji uczącego się z otoczeniem można tutaj
wyróżnić metody obserwacji biernych oraz obserwacji czynnych, tzw.
Eksperymentowanie.
W projektowaniu systemów ekspertowych praktycznie wykorzystuje
się zazwyczaj dwie metody wnioskowania: do tyłu (ang. backward chaining)
oraz do przodu (ang. forward chaining). Niekiedy stosuje się tzw.
wnioskowanie mieszane, które jest połączeniem w różnych proporcjach obu
wymienionych metod.
Pierwszy rodzaj wnioskowania “do tyłu”- zaczyna się od postawienia
hipotezy (celu), która musi być potwierdzona w trakcie dalszego
wnioskowania. Dla takiego przypadku proces wnioskowania przebiega od
hipotezy, poprzez reguły do faktów, które potwierdzają warunki reguł.
System ma za zadanie potwierdzenie, zaprzeczenie lub wskazanie braku
rozwiązania danego problemu.
Natomiast w przypadku wnioskowania “do przodu”-, proces
wnioskowania przebiega w kierunku odwrotnym i rozpoczyna się od zbioru
faktów podanych na wejściu. W końcowym rezultacie zostają wygenerowane
wszystkie logiczne fakty które, stanowią ostateczne sedno rozwiązania
problemu.
Unikalną cechą systemów ekspertowych jest ich możliwość
automatycznego generowania różnego rodzaju objaśnień w czasie
konsultacji z użytkownikiem systemu. Wyjaśnienia są tworzone
przez tzw. moduł wyjaśniający (ang. explanation facility).
Rozróżniamy trzy rodzaje wyjaśnień:
•
“co to jest?" (ang. what is) – które objaśnia pojęcia zawarte w bazie
wiedzy,
•
“dlaczego?" (ang. why) -które odpowiada na pytanie “dlaczego
system zadał użytkownikowi pytanie"; wyjaśnienia tego typu
pokazują sedno zadanego pytania, poprzez pokazanie aktualnego
kontekstu wnioskowania oraz to jaka odpowiedź na dane pytanie
rozwiąże problem;
•
“jak?" (ang. how) – które odpowiada na pytanie “w jaki sposób
system wyprowadził dany zbiór wyjaśnień"; wyjaśnienia te mają
charakter retrospektywny i przedstawiają logiczny wywód systemu;
Kolejnym etapem podczas pracy nad systemem jest -“uczenie się"
(wnioskowanie) programu. Niestety jest to proces długotrwały i zależnie od
stopnia skomplikowania programu oraz możliwości obliczeniowych jednostki
centralnej - może trwać od kilku godzin do kilku lat. W tej fazie tworzenia
systemu ekspertowego program jest poddawany normalnym oraz
ekstremalnym warunkom, z jakimi może mieć do czynienia w trakcie
użytkowania. Wyniki testów są analizowane przez specjalistów, którzy
współpracując z twórcami programu dokonują ewentualnych poprawek i
udoskonaleń.
Dużą zaletą programów pisanych jako systemy ekspertowe jest
praca w istniejących już systemach komputerowych (np. DOS, Windows, i in.)
oraz możliwość współpracy z innymi programami. Dobrze działający program
wymaga opracowania takiego interfejsu, który będzie czytelny oraz
przyjazny dla przyszłego użytkownika. Pozostaje jeszcze problem
pozytywnego nastawienia pracowników, którzy muszą zaakceptować fakt ,że
maszyna ich w jakiś sposób wyręczy w procesie podejmowania decyzji.
Dlatego ważną cechą systemów ekspertowych jest to aby posiadały
przyjazny i czytelni interfejs dla użytkownika.
Systemy ekspertowe mogą być tworzone z wykorzystaniem różnych
narzędzi programowych, ogólnie jednak można je podzielić na dwie
grupy:
•
mniej lub bardziej typowe języki programowania;
• szkieletowe systemy ekspertowe (ang. expert system shells
lub skeletal systems).
Opracowanie systemu ekspertowego, przy zastosowaniu
pierwszego sposobu, jest zadaniem bardzo pracochłonnym i
wymagającym zatrudnienia programistów o wysokich kwalifikacjach.
Jest to zatem podejście kosztowne, lecz trzeba przyznać bardziej
elastyczne. Alternatywą dla tego sposobu jest zastosowanie systemu
szkieletowego, który zawiera gotowy podsystem przetwarzania wiedzy.
Systemy szkieletowe mają pustą bazę wiedzy oraz bazę danych,
pozostałe elementy systemu są kompletne (bazę wiedzy i bazy danych
zapisuje się w odpowiedni z góry ustalony sposób). W takim przypadku
zadanie tworzącego system polega głównie na pozyskaniu i
sformalizowaniu wiedzy eksperckiej, co jednak bywa zadaniem
niełatwym samym w sobie. Ustalony sposób działania systemu
szkieletowego ogranicza możliwości jego zastosowania. Stosowanie
szkieletowych systemów ekspertowych jest zalecane ze względu na
skrócenie czasu tworzenia programu w porównaniu w wcześniej
przedstawionymi językami programowania.
Systemy ekspertowe w medycynie
W przypadku systemów medycznych gromadzenie i przetwarzania wiedzy
medycznej wymaga zdefiniowania i omówienia kilku pojęć:
•
Problem diagnostyczny jest to fakt kliniczny (objaw, cecha), stanowiący
przedmiot wyjaśniania w procesie diagnostycznym na podstawie wiedzy
ekspertów oraz danych klinicznych pacjenta. W czasie wywiadu zostaje
skonstruowane
drzewo
wiadomości
o
pacjencie.
Korzeń
drzewa
jest
identyfikatorem pacjenta. Fakty zawarte są w zbiorach trójelementowych (obiekt-
atrybut-wartość). Obiektem jest organ, dla którego możemy określić atrybut i
jego wartość. Atrybuty pacjenta to np. podejrzana choroba, poprzednie i
teraźniejsze metody leczenia. Wysokość drzewa może być oczywiście
powiększana.
•
Hipotezy diagnostyczne to czynniki rozważane jako przyczyny wystąpienia
dolegliwości pacjenta (problemu diagnostycznego).
•
Objawy są to dane o pacjencie pomocne w różnicowaniu hipotez diagnostycznych,
testy natomiast to działania, kroki diagnostyczne służące uzyskiwaniu objawów
przyjętych w systemie.
Wiedza medyczna jest zbiorem reguł relacyjnych opisanych za pomocą formuły:
JEŚLI <problem diagnostyczny> I <objaw> TO
<hipoteza diagnostyczna A> R <hipoteza diagnostyczna B>
gdzie R oznacza jedną z następujących relacji binarnych:
- silnie preferowana względem,...
- preferowana bardziej niż,...
- brak preferencji.
Przykłady systemów eksperckich w diagnostyce
medycznej
System MYCIN do diagnozy i terapii niektórych chorób
infekcyjnych krwi.
Został
on
zaprojektowany
w
Uniwersytecie
Stanforda
w
latach
siedemdziesiątych. Cechą charakterystyczną tego systemu jest
umiejętność postawienia prawidłowej diagnozy w przypadku gdy brak
jest kompletnych, czy pewnych danych. Przybliża to system do
codziennej praktyki medycznej i czyni z niego użytecznego, służącego
poradą, pomocnika. System MYCIN w działaniu bazuje na wstępnym
postawieniu diagnozy i założeniu, że podejrzana choroba istnieje.
System, cofając się do hipotetycznych wniosków próbuje znaleźć dowód,
który
potwierdzi
lub
zaprzeczy
założoną
diagnozę.
Logiczne
rozumowanie systemu MYCIN polega na dopasowaniu reguł do danych.
Już w 1974 roku testy systemu MYCIN na realnych przypadkach pokazały
jego użyteczność. W 1979 roku porównano w serii testów diagnozy i
zalecenia MYCIN z zaleceniami specjalistów z kliniki w Stanfordzie.
Oceny dokonało 8 ekspertów nie wiedząc, czy zalecenia pochodzą od
programu czy ludzi. MYCIN zdobył 52 punkty, specjaliści od 34 do 50,
student medycyny uzyskał 24 punkty.
System ekspertowy DIACOL do wspomagania diagnostyki
różnicowej chorób tkanki łącznej u dzieci.
• System do diagnozy alergii.
System powstał na początku lat 80-tych. Prace badawcze nad nim
prowadziło kilka uniwersytetów: Pittsburg, Stanford i Rutgers.
• System DIADYS do wspomagania diagnostyki w zakresie
dysmorfologii
,
która jest dziedziną medycyny zaliczaną do genetyki klinicznej, a której
przedmiotem są wady rozwojowe.
• System Icterus w zastosowania do diagnostyki grupy chorób
,
których wspólną cechą jest występowanie żółtaczki w okresie
niemowlęcym, czyli do ukończenia 12. miesiąca życia.
• System konsultacji lekarskiej AMIGO w podstawowych
problemach ginekologii ambulatoryjnej.
Koncepcja systemu jest próbą wyjścia naprzeciw potrzebom lekarza
ginekologa lub lekarza niespecjalisty w lecznictwie podstawowym.
Założono, że system winien ułatwiać formułowanie hipotez
diagnostycznych jako wyjaśnienia problemu diagnostycznego oraz
wspomagać decyzję o dalszych krokach diagnostycznych.
• System INTERNIST opracowany w 1974 r.
Jego powstanie poprzedziło 15 lat pracy naukowców z Uniwersytetu w
Pittsburgu pod kierownictwem specjalistów Pople'a (informatyk) i
Myers'a (internista). Prace nad systemem rozpoczęto od analizy
warsztatu pracy człowieka, lekarza i eksperta z dziedziny medycyny.
Założono, że przed przystąpieniem do konkretnego problemu system
układa plan swojego działania. INTERNIST podejmując decyzję próbuje
naśladować sposób myślenia lekarza. INTERNIST nie podaje sposobu
leczenia
wykrytego
schorzenia
i
swoje
działanie
skupia
na
automatyzacji znanych mu technik podejmowania decyzji przez ludzi.
• System diagnostyczny Dxplain
Jest jednym z najbardziej praktycznych programów wspomagania
podejmowania
decyzji
diagnostycznych.
Stworzony
został
w
Massachussetts Generał Hospital we współpracy z Amerykańskim
Towarzystwem Medyczny. Program został wprowadzony do sieci
AMA/NET i dlatego jest dostępny dla wszystkich, którzy posiadają
terminal i modem. Baza wiedzy zawiera opisy około 2000 chorób, blisko
4700 terminów (wyniki, objawy, itd.) oraz prawie 65 000 zależności
między nimi. Wszystkie pozycje połączone są poprzez stosunkowo
proste algorytmy i reguły wyboru. Program działa bardzo podobnie do
“elektronicznego podręcznika", umożliwiając szybki i łatwy dostęp do
wiedzy medycznej. Lekarz wprowadza wyniki obserwacji i badań
klinicznych a program generuje listę uporządkowanych hipotez
diagnostycznych. System dostarcza listę prawdopodobnych chorób
pasujących do ponad 5000 objawów i testów klinicznych
.
• System ekspertowy do wspomagania projektowania koron
protetycznych
,
służy
do
podejmowania
optymalnej
decyzji
na
podstawie
wyników
usystematyzowanego
wielostronnego
badania
pacjenta].
System
opracowano w PAM do celów dydaktycznych.
• System PIP diagnozujący choroby pacjentów cierpiących na
zaburzenia pracy nerek.
System został skonstruowany w Massachsetts Institute of Technology. PIP jako
reprezentacji wiedzy używa ramek (frame) i jego mechanizm wnioskowania
polega na wypełnianiu ramek, które wykorzystując wzajemne powiązania
działają, jak skomplikowana sieć. Każda ramka odpowiada chorobie, na
którą może cierpieć pacjent. Dlatego atrybuty ramek zawierają, informacje o
objawach danej choroby, oraz koniecznych do potwierdzenia podejrzeń
testach.
• System ekspercki CYC (enCYClopedic knowledge)
oparty na regułach zawartych w bazie wiedzy o świecie - realizowany od 1984
roku. Do końca 1990 roku system CYC zawierał około 2 milionów reguł.
• System GS52 do wspomagania diagnozy w zakresie genetyki.
System ten wykorzystuje reprezentację wiedzy, która powstała w sposób
kumulacyjny z doświadczeń zbieranych z pojedynczych przypadków, grup
przypadków lub prototypów choroby. Gromadzenie wiedzy w tym systemie
jest jednym z elementów metody opartej na zasadzie podobieństw. Główną
częścią systemu jest tworzenie odpowiednich zestawów przypadków, a
następnie przeszukiwanie przestrzeni tych przypadków.
System diagnostyczny “stanów ostrego brzucha”
Przykład diagnostyki wieloetapowej. Stawianie diagnozy przez lekarza,
pomijając proste i oczywiste przypadki, jest wieloetapowym procesem
decyzyjnym, w którym lekarz z etapu na etap, w miarę ujawniania się
nowych symptomów, coraz dokładniej uściśla stan patologiczny
pacjenta]. Taką procedurę stawiania diagnozy może być formalnie ujęta
następującym schematem. Etap pierwszy - następuje pomiar
określonych cech, wybranych z wszystkich dostępnych cech
opisujących diagnozowanego pacjenta, które stanowią podstawę do
postawienia diagnozy. Diagnoza na pierwszym etapie określa pewien
zbiór chorób w zbiorze wszystkich rozpatrywanych M i jednocześnie
wskazuje te cechy, które należy zmierzyć, aby postawić diagnozę na
drugim etapie. Etap drugi – dokonuje się pomiaru wskazanych cech i na
ich podstawie stawia kolejną diagnozę, która określa następne cechy
potrzebne do podjęcia kolejnej decyzji (diagnozy na trzecim etapie)
oraz - również podobnie - wskazuje zbiór chorób, z tym że nie w zbiorze
M, lecz w zbiorze wskazanym przez diagnozę poprzednią. Cała
procedura kończy się etapem ostatnim (n-tym), na którym postawiona
diagnoza wskazuje pojedynczą chorobę (stan pacjenta) stanowiącą
ostateczny wynik rozpoznania.
System hybrydowy ACORN (przyjmowanie na kardiologię
)
doradzający w sprawach bólu klatki piersiowej w sali reanimacyjnej. Służy
do wspomagania diagnoz i leczenia podtrzymującego tych pacjentów
.
Przykłady zastosowania systemów ekspertowych w terapii
• System ekspertowy YIE-PNN do określenia składu pozajelitowego
odżywiania noworodków na oddziałach intensywnej opieki.
System wspomaga planowanie odpowiedniego żywienia z uwagi na
utrzymywania metabolicznych potrzeb chorych niemowląt.
• System wspomagania decyzji leczenia pooperacyjnego POEMS
(PostOperative Expert Medical System).
System wspomaga decyzje w oparciu o monitorowanie symptomów i obserwację
oczekiwanych zmian, ma na celu doradzanie mniej doświadczonym
pracownikom służby zdrowia. POEMS otrzymuje w interaktywny sposób
dane o pacjentach zapisywane w bazach: historii choroby, historii operacji,
badań i testów pooperacyjnych. Na podstawie tych danych POEMS
opracowuje
uporządkowaną
listę
bardzo
prawdopodobnych,
prawdopodobnych, możliwych i nieprawdopodobnych diagnoz i może
odpowiedzieć na pytania, dotyczące sposobu rozumowania prowadzącego
do poszczególnych diagnoz, zaleceń terapeutycznych i działań potrzebnych
do weryfikacji czy też odróżnianie alternatywnych diagnoz. POEMS zawiera
model zmian stanu pacjenta, pozwalając na bieżąco korygować oczekiwania
z obserwacjami. POEMS ma wbudowany mechanizm uczenia się na
podstawie oceny jego działania przez ekspertów
.
System ekspercki SETH dla toksykologii klinicznej.
Zadaniem SETH jest doradzanie i monitorowanie pacjentów po zatruciu. Baza
danych zawiera 1153 najczęściej zażywanych leków i substancji trujących
należących do 78 klas substancji toksycznych. System SETH symuluje
rozumowania ekspertów biorąc pod uwagę klasę substancji, czas jaki
upłynął od jej zażycia, symptomy kliniczne, i przyjętą dawkę. Dostarcza
dokładnych porad dotyczących sposobu obserwacji i leczenia, uwzględniając
przy tym oddziaływanie różnych leków i uczulenia na leki.
• Systemy Ekspertowe do Sztucznej Wentylacji Płuc (SESWP,
NeoGanesh, VentEx).
Programy służą do optymalizacji nastaw respiratora] i zrealizowane są z
wykorzystaniem typowych dla sztucznej inteligencji technik programowania.
SYSTEM EKSPERTOWY DO DOBORU TOKAREK
W oparciu o zgromadzoną wiedzę katalogową, postanowiono opracować
program
ekspertowy
podejmujący
decyzję
na
podstawie
pytań
zadawanych przez system w czasie wnioskowania. Końcowa decyzja ma
przedstawiać określoną tokarkę, która spełnia określone potrzeby.
Opracowany system może być pomocny w procesie doboru tokarki. Do
stworzenia systemu użyto programu PC-Shell firmy AITECH w wersji
pracującej w środowisku Windows 98. Wykorzystany program jest
systemem
szkieletowym
umożliwiającym
tworzenie
systemów
ekspertowych. Zgromadzona wiedza katalogowa o tokarkach została
odpowiednio zalgorytmizowana i uporządkowana a następnie została
zapisana w postaci reguł:
“ jeśli .... to... lub ...”
tworząc bazę wiedzy dzięki której system będzie mógł podejmować
decyzje. W środowisku programu PC-Shell znajduje się edytor, który
umożliwia tworzenie i edycję reguł. Znajduje się także “maszyna
wnioskująca” umożliwiająca przeprowadzenie wnioskowania na podstawie
zgromadzonej wiedzy. “Maszyna wnioskująca” jest niezależna względem
bazy wiedzy, dzięki temu jest możliwość dopisywania nowych elementów
do bazy wiedzy. Ta charakterystyczna cecha sprawia, że system może
pracować także w przyszłości kiedy pojawią się nowe tokarki. Wystarczy
jedynie je wprowadzić do systemu, a w kolejnych wnioskowaniach system
będzie brał je także pod uwagę. Stworzona baza wiedzy o tokarkach
zawiera 37 obrabiarek.
•
Czy materiałem wyjściowym będzie wałek ?
•
tak
szukaj w bazie tokarek kłowych
•
nie
kontynuować
•
Czy materiałem wyjściowym będzie tarcza ?
•
tak
szukaj w bazie tokarek uchwytowych
•
nie
kontynuować
•
Czy materiałem wyjściowym będzie pręt ?
•
tak
szukaj w bazie automatów tokarskich, potrzebny jest podajnik pręta
•
nie
kontynuować
•
Czy potrzebne są narzędzia obrotowe?
•
tak
szukaj w bazie tokarek z narzędziami
obrotowymi,
•
nie
kontynuować
•
Czy potrzebna jest oś C ?
•
tak
szukaj w bazie tokarek z osią C
•
nie
kontynuować
•
Czy obrabiane będą dwa końce przedmiotu ?:
•
tak
szukaj w bazie tokarek z przeciwwrzecionem
•
nie
szukaj w bazie tokarek mających konik
•
Czy jest potrzebny konik ?
•
tak
szukaj w bazie tokarek mających konik
•
nie
szukaj w bazie tokarek uchwytowych
•
Czy jest potrzebna oś B - głowicy ?
•
tak
szukaj w bazie centrów tokarskich
•
nie
kontynuować
Czy potrzebne jest specjalne oprzyrządowanie ?
tak
przechodzi do pytań związanych ze specjalnym oprzyrządowaniem
nie
kontynuować
Czy jest potrzebny magazyn narzędzi ?
tak
szukaj w bazie centrów tokarskich
nie
kontynuować
Czy potrzebna jest oś Y ?
tak
szukaj w bazie tokarek z osią Y
nie
kontynuować
Jakiego producenta preferowane jest układ sterowania ?
Fanuc
szukaj w bazie tokarek z takim układem
sterowania
Siemens
szukaj w bazie tokarek z takim układem
sterowania
Heidenhain
szukaj w bazie tokarek z takim układem
sterowania
Jaką strukturę ma obrabiarka ?:
pozioma
kontynuować
pionowa
kontynuować
Ile głowic narzędziowych ma obrabiarka ?:
jedną
szukaj w bazie tokarek z jedną głowicą
dwie
szukaj w bazie tokarek z dwoma głowicami