MKwIK wykład 17 - Sztuczna inteligencja w14.pdf · inteligencja: cecha umysłu warunkująca...
Transcript of MKwIK wykład 17 - Sztuczna inteligencja w14.pdf · inteligencja: cecha umysłu warunkująca...
Metody komputerowe
w inżynierii komunikacyjnej
Sztuczna inteligencja*
doc. dr inż. Tadeusz Zieliński
r. ak. 2016/17• główną podstawą opracowania były:
- wykłady dr W. Tracza, SGGW,
- http://www.ai.c-labtech.net/sn
Generalnie ludzie są równi,
ale jedni bardziej,
drudzy mniej....
Układ wykładu
wprowadzenie
sieci neuronowe
systemy eksperckie
Wprowadzenie
definicje
podstawy
dziedziny
Wprowadzenie
Definicje
inteligencja:
cecha umysłu warunkująca sprawność czynności
poznawczych, takich jak myślenie, rozwiązywanie
problemów
ogólna zdolność adaptacji do nowych warunków
i wykonywania nowych zadań
dostrzeganie zależności, relacji
sztuczna inteligencja – dział nauki zajmujący
się regułami rządzącymi inteligentnymi
zachowaniami człowieka (np. postrzeganiem,
uczeniem się) i tworzeniem modeli
formalnych tych zachowań
Wprowadzenie
Podstawy
wyróżniki:
człowiek – kreatywność
komputer – szybkość wykonywania algorytmów
czy można „coś” nazwać sztuczną inteligencją
test Turinga – możliwość rozróżnienia, czy na
zadawane pytania odpowiada człowiek, czy maszyna
komputer tworzący muzykę Mozarta
Wprowadzenie
Dziedzinysieci neuronowe
systemy eksperckie
logika rozmyta – uogólnienie
logiki zero – jedynkowej,
ciągłość pomiędzy fałszem
a prawdą
algorytmy ewolucyjne – przeszukiwanie przestrzeni
rozwiązań problemu w celu wyszukania rozwiązań
najlepszych; sposób działania przypomina zjawisko
ewolucji – lepszy szybciej się rozwija
robotyka
…
Sieci neuronowe
wprowadzenie
modele neuronów
struktura sieci
proces badawczy
uczenie sieci
oprogramowanie
zastosowanie
historia
literatura
Sieci neuronowe
Wprowadzeniezwane też sztuczne sieci neuronowe (SSN)
zasada działania – symulacja pracy uproszczonego
modelu systemu nerwowego, neuronów
– komórek nerwowych mózgu
definicja – system składający się z:
elementów przetwarzających informacje (neuronów)
powiązań (zależności miedzy nimi)
cechy charakterystyczne
podział
Sieci neuronowe
Wprowadzenie – cechy charakterystyczne
zalety
wady
bardzo istotną cechą jest metoda uczenia sieci
miary jakości sieci:
liczba neuronów
liczba połączeń
szybkość działania
Wprowadzenie
Wprowadzenie – zaletymożliwość rozwiązania problemu z pominięciem etapu budowy
algorytmu (jednak trzeba zdefiniować strukturę sieci)
równoległe wykonywanie obliczeń szybkości obliczeń
„inteligencja”:
możliwość uczenia się – modyfikacja parametrów neuronów tak, by
zwiększyć efektywność sieci w rozwiązywaniu zadań danego typu
możliwość przetwarzania informacji niekompletnych, rozmytych,
chaotycznych, sprzecznych
możliwość generalizacji, interpolacji
działa zawsze jako całość poprawne działanie nawet po
uszkodzeniu części sieci
całą swoja wiedzę może zyskiwać wyłącznie w trakcie nauki i nie
musi mieć z góry zadanej, precyzyjnie określonej zasady,
dopasowanej do stawianych jej zadań
Wprowadzenie
Wprowadzenie – wadybrak możliwości śledzenia przebiegu rozwiązania
(sieć neutronowa = czarna skrzynka)
brak precyzji (wyniki przybliżone)
sieć musi mieć wystarczający stopień złożoności,
żeby w jej strukturze można było w toku uczenia
wytworzyć potrzebne połączenia i zależności
niemożliwość stosowania rozumowania
wieloetapowego
Sieci neuronowe
Wprowadzenie – podziałwedług technologii:
fizyczne (układy scalone)
matematyczne (programy komputerowe)
Sieci neuronowe
Modele neuronów
pojedynczy neuron
funkcja aktywacji
Sieci neuronowe
Modele neuronów – pojedynczy neuron
do wejść doprowadzane są sygnały xj dochodzące z neuronów
poprzedniej warstwy
każdy sygnał xj mnożony przez wagę wij (określa udział w tworzeniu
sygnały wyjściowego yi)
N
si = wij xjj=1
Si – zsumowane iloczyny sygnałów i wag = argument funkcji aktywacji
neuronu F(si) wartość na wyjściu
Sieci neuronowe
Modele neuronów – funkcja aktywacji
skok jednostkowy
– funkcja progowa,
wyjście: (tak-nie)
liniowa
nieliniowa (duże zdolności uczenia się)
Sieci neuronowe
Struktura siecistruktura sieci – sposób połączenia neuronów
i ich współdziałania
typy struktury sieci:
kryterium kierunku przepływu sygnału:
jednokierunkowe
rekurencyjne
kryterium liczby warstw neuronów:
jednowarstwowe
wielowarstwowe
złożone
podsumowanie
Sieci neuronowe
Struktura – sieci rekurencyjne
występuje sprężenie
zwrotne między warstwą
wejściowa a wyjściową
mogą być:
jednowarstwowe
wielowarstwowe
proces dynamiczny
(zmienność w czasie)
nieliniowyźródło: W. Tracz – Sztuczne sieci neuronowe
Sieci neuronowe
Struktura – sieci jednowarstwowe
neurony są ułożone
w jednej warstwie
zasilanej z węzłów
wejściowych
Sieci neuronowe
Struktura – sieci jednowarstwowe
Możliwościmożliwości – rozwiązywanie zadań liniowo separowanych
przykład:
2 wejścia (para liczb)
1 wyjście:
wartość 1 = tak =
wartość -1 = nie =
rozwiązywalne nierozwiązywalne
źródło: http://nrn.prv.pl
Sieci neuronowe
Struktura – sieci wielowarstwowe
występuje 1÷3 ukrytych
warstw neuronów
– pośredniczących
między wejściem
a wyjściem
sygnał z wejścia nie
dociera bezpośrednio do
wszystkich neuronów
daje zdolność
generalizacji
Sieci neuronowe
Struktura – sieci wielowarstwowe
Możliwościprzykład:
wartość 1 = tak =
sieć 2-warstwowa nieliniowa – spójny, wypukły układ wyjść
liczba linii ograniczających obszar zależy od liczby neuronów w sieci
sieć 3-warstwowa nieliniowa – dowolny układ powierzchni
wyjść
źródło: http://nrn.prv.pl
Sieci neuronowe
Struktura – podsumowaniezawsze występuje warstwa wejściowa i wyjściowa
liczba neuronów w tych warstwach jest określona
przez model rozwiązywanego problemu
liczba neuronów w warstwach ukrytych wpływa na
poziom możliwości rozwiązania problemu (jakość):
za mała – niezdolność sieci do zgromadzenia
dostatecznej wiedzy o problemie
za duża – zbyt dokładne zapamiętywanie danych
treningowych problemy z uogólnieniami,
rozwiązywaniem problemów niewyuczonych
dobiera się eksperymentalnie
Sieci neuronowe
Proces badawczy
zdefiniowanie analizowanego problemu
zdefiniowanie modelu (czynniki, opisujące je
dane, zmienne wejściowe i wyjściowe)
budowa sieci
uczenie sieci – faza treningowa
testowanie sieci – weryfikacja jej możliwości
wykorzystanie sieci – reagowanie na bodźce
wejściowe
Sieci neuronowe
Proces badawczy – budowa sieci
wybór struktury
liczba warstw
liczba neuronów w każdej warstwie
postacie funkcji przejścia
Sieci neuronowe
Uczenie sieciuczenie sieci – wymuszenie na niej określonej
reakcji na zadane sygnały wejściowe
(dostosowanie wag)
metody uczenia:
z nauczycielem – pod nadzorem
z krytykiem – odmiana metody z nauczycielem
bez nauczyciela (samoorganizujące się)
problemy
Sieci neuronowe
Uczenie sieci – z nauczycielem
dane wejściowe i wyjściowe są znane
zasada uczenia się – dobór wag, aby sygnał wyjściowy Y
był najbliższy zadanej wartości d (błąd wpływa na zmianę
wagi); optymalizacja szukanie min. f. celu
uczenie testowanie
źródło: W. Tracz – Sztuczne sieci neuronowe
Sieci neuronowe
Uczenie sieci – z krytykiem
(ze wzmocnieniem)odmiana metody z nauczycielem
nie ma informacji o konkretnych wartościach pożądanych
na wyjściu
jest informacja czy podjęta przez sieć akcja idzie w dobrym
kierunku (jest baza wiedzy)
jeśli zmiana wartości wag daje na wyjściu:
poprawę wartości system „chwalony” (następuje wzmocnienie
tendencji do takiego zachowania systemu)
pogorszenie wartości system „karcony” (osłabienie tendencji)
bardziej uniwersalne
trudniejsze
Sieci neuronowe
Uczenie sieci – bez nauczyciela
zasada uczenia – wzmacnianie sygnału:
pierwszy sygnał – losowy,
następnie dążenie do ich wzmocnienia:silna odpowiedź pozytywna – reagują wzmocnieniem sygnału
pozytywnego
słaba odpowiedź – reagują tłumieniem sygnału
silna odpowiedź negatywna – reagują wzmocnieniem sygnału
negatywnego
Sieci neuronowe
Uczenie sieci – problemy
podział zbioru danych:
uczący – do przyjęcia odpowiednich wag
testowy – weryfikacja prawidłowości pracy sieci
wielkość zbioru uczącego:
zbiór danych powinien obejmować wartości rozrzucone po całym
obszarze problemu
liczba przypadków uczących powinna być kilka razy większa niż
liczba połączeń w sieci
początkowe wartości wag – zwykle nadawane losowo
czas uczenia sieci – zależy od trudności problemu
Sieci neuronowe
Oprogramowanienajczęściej – symulatory sieci neuronowych
przykłady:Neuronix (AITECH)
http://aitech.pl/content/view/51/39/lang,ISO-8859-2/
Statistica Neural Network (StatSoft Polska)
http://www.statsoft.pl/stat_nn.html
SPSS Neural Connection (SPSS inc.)
http://www.spss.pl/spss/spss16.html#NN
Sieci neuronowe
Zastosowanie
kiedy warto?
przykłady zastosowania:
technika
inne
Sieci neuronowe
Zastosowanie – kiedy warto?ogólnie:
nie ma algorytmu lub czas rozwiązania za jego pomocą jest zbyt długi
dane są nie tylko w postaci numerycznej ale i symbolicznej
wiedza jest niepewna
typy problemów:
przewidywanie zachowania na podstawie stanu wyjściowego
rozpoznawanie cech i klasyfikacja (kojarzenie) – rozpoznawanie
obiektów o charakterze losowym, zniekształconych, odtwarzanie
obrazów z fragmentów (znaki, obrazy, mowa, fale elekromagnetyczne),
filtrowanie sygnałów
sterowanie, działania dostosowujące się do sytuacji (sterowanie
robotami, systemy eksperckie)
zagadnienia optymalizacyjne (problem komiwojażera)
Sieci neuronowe
Zastosowanie – technikaprognozowanie
teoria sterowania
robotyka, automatyka, sterowanie, podejmowanie decyzji
kierowanie pojazdami bezzałogowymi
optymalizacja
rozpoznawanie ruchu
diagnostyka elementów
systemy eksperckie
ruch lotniczy – prześwietlanie bagaży
drogi szynowe:
prognozowanie trwałości nawierzchni
wprowadzenie ograniczenia V pociągów w okresie wysokich temperatur
diagnostyka kolejowa, konieczność szlifowania szyn
Sieci neuronowe
Zastosowanie – inne
ekonomia:
prognozowanie (giełda, ceny, rozwój firm,
branż, regionów)
wykrywanie powiązań (przyczyny niepowodzeń)
optymalizacja
pozostałe:
rozpoznawanie znaków
rozpoznawanie twarzy
wykrywanie nowotworów
wykrywanie fałszerstw bankowych
Sieci neuronowe
Zastosowanie – rozpoznawanie znaków*
prosty przykład – 4 znaki
rozpoznawanie liter
więcej: http://www.ai.c-labtech.net/sn
> Rozpoznawanie 26 liter
*źródło: http://www.ai.c-labtech.net/sn
Sieci neuronowe
Zastosowanie – rozpoznawanie znaków
założenia:
rozpoznawanie 4 znaków: X, 0, +,-
znaki zapisane w matrycy 3*3 X =
układ znaków
ciąg uczący
dobór parametrów sieci
korzystanie z sieci
źródło: http://www.ai.c-labtech.net/sn > Rozpoznawanie znaków
Sieci neuronowe
Zastosowanie – rozpoznawanie znaków
Układ znaków
źródło: http://www.ai.c-labtech.net/sn > Rozpoznawanie znaków
układ
znaku
liniowe rozwinięcie,
wektor wejściowy
Sieci neuronowe
Zastosowanie – rozpoznawanie znaków
Ciąg uczący (z nauczycielem)
źródło: http://www.ai.c-labtech.net/sn > Rozpoznawanie znaków
wektor wejściowy znak wektor wyjściowy
(numer znaku)
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
Sieci neuronowe
Zastosowanie – rozpoznawanie znaków
Dobór parametrów sieciliczba wejść:
matryca 3*3 rozwinięcie w wektor – 9 pozycji
9 wejść
liczba wyjść:
rozpoznawanie 4 znaków wektor wyjściowy – 4 pozycje
4 wyjścia
liczba warstw ukrytych i zawartych w nich neuronów:
metoda prób i błędów (są wzory sugerujące wartość początkową)
kryteria: poprawność odczytu i szybkość uczenia się
wynik: jedna warstwa ukryta z 5 neuronami
ostateczna organizacja sieci: 9 – 5 – 4
Sieci neuronowe
Zastosowanie – rozpoznawanie znaków
Korzystanie z siecirozpoznawanie również symboli zniekształconych
źródło: http://www.ai.c-labtech.net/sn > Rozpoznawanie znaków
zniekształcony
znak
wektor wejściowy rozpoznany
znak
Sieci neuronowe
Zastosowanie – rozpoznawanie liter
założenia:
rozpoznawanie 26 liter
znaki zapisane w matrycy 7*5 A =
dobór parametrów sieci
korzystanie z sieci
źródło: http://www.ai.c-labtech.net/sn > Rozpoznawanie znaków
Sieci neuronowe
Zastosowanie – rozpoznawanie liter
Dobór parametrów sieciliczba wejść:
matryca 7*5 rozwinięcie w wektor – 35 pozycji
35 wejść
liczba wyjść:
rozpoznawanie 26 liter wektor wyjściowy – 26 pozycji
26 wyjść
liczba i parametry neuronów w warstwie ukrytej
ostateczna organizacja sieci: 35 – 10 – 26
Sieci neuronowe
Zastosowanie – rozpoznawanie liter
analiza błędów dla zmiennej liczby neuronów: 4÷9
źródło: http://www.ai.c-labtech.net/sn
Sieci neuronowe
Zastosowanie – rozpoznawanie liter
modyfikacja parametrów zmiany wag
źródło: http://www.ai.c-labtech.net/sn
Sieci neuronowe
Zastosowanie – rozpoznawanie liter
modyfikacja parametrów funkcji aktywacji
źródło: http://www.ai.c-labtech.net/sn
Sieci neuronowe
Zastosowanie – rozpoznawanie liter
rozpoznawanie symboli zniekształconych
źródło: http://www.ai.c-labtech.net/sn
Sieci neuronowe
Historiarozwój głównie w USA
1943 – matematyczny opis komórki nerwowej, przetwarzania danych
1949 – odkrycie, że informacja może być przechowywana w strukturze połączeń
miedzy neuronami metoda uczenia sieci
lata 50-te – budowa pierwszych sieci neuronowych
1957 – percepton – działająca sieć neuropodobna (układ elektromechaniczno-
elektroniczny); cel – rozpoznawanie znaków
1960 – sieć elektrochemiczna; pierwszy neurokomputer, pierwsze praktyczne
wykorzystanie sieci (dziś wykorzystywana w sonarach, radarach,
telekomunikacji)
1970 – matematyczne wykazanie, że sieci jednowarstwowe maja bardzo
ograniczone zastosowanie zahamowane rozwoju
lata 70-te - sieć do rozpoznawania mowy oraz sterowania ramieniem robota
lata 80-te – pierwsze sieci ze sprzężeniem zwrotnym, odtwarzanie obrazów
z fragmentów, zadania optymalizacyjne
1985 – wykazanie bardzo dużych możliwości sieci nieliniowych
wielowarstwowych; przepisy na uczenie sieci wielowarstwowych
Sieci neuronowe
Literaturahttp://www.ai.c-labtech.net/sn – przykłady rozpoznawania
znaków i krzywych trygonometrycznych
http://nrn.prv.pl/ – ogólny, przystępny wykład; liczne przykłady
http://wl.sggw.waw.pl/units/geomatyka/SI :
W. Tracz, Sztuczne sieci neuronowe, SGGW
W. Tracz, Systemy ekspertowe, SGGW
http://alipe.webpark.pl/ – multimedialna prezentacja
J. Górska, E. Bronisławska, Sieci neuronowe, 2006, referat
niepublikowany
http://pl.wikipedia.org/wiki/Sztuczna_inteligencja
http://www.kik.pcz.czest.pl/nn/podstawy.php
Systemy eksperckiewprowadzenie
budowa systemu
źródła wiedzy
pozyskiwanie wiedzy
zapis wiedzy
sposoby wnioskowania
narzędzia do tworzenia systemów
ocena
zastosowanie
podsumowanie
literatura
Systemy eksperckie
Wprowadzenieinaczej: ekspertowe lub system z bazą wiedzy
definicja – program komputerowy wspomagający
korzystanie z wiedzy i ułatwiający podejmowanie decyzji;
wspomaga bądź zastępuje ludzkich ekspertów w danej
dziedzinie – dostarcza diagnoz, rad, zaleceń (symulacja
rozumowania człowieka w określonym obszarze wiedzy)
cechy systemu eksperckiego:
jawna reprezentacja wiedzy i oddzielenie wiedzy eksperckiej od
procedur sterowania
zdolność do wyjaśnień, w szczególności sposobu rozwiązania
danego problemu
rozwiązuje problemy nie korzystając z jawnie zapisanego algorytmu,
lecz z wykorzystaniem różnych metod wnioskowania
Systemy eksperckie
Budowa systemu eksperckiego
źródło: http://pl.wikipedia.org/wiki/System_ekspercki#Szkielety_system.C3.B3w_ekspertowych
Systemy eksperckie
Budowa systemu eksperckiegoinżynier wiedzy :
stawia ekspertowi problemy, przekazuje dane
zbiera od eksperta wiedzę, rozwiązania zapisuje w sposób sformalizowany
baza wiedzy - wiedza ekspertów z danej dziedziny zapisana w sposób sformalizowany
szkielet systemu:
interfejs użytkownika - umożliwia zadawanie pytań, udzielanie informacji systemowi
oraz odbieranie od systemu odpowiedzi i wyjaśnień
edytor bazy wiedzy - pozwala na modyfikację wiedzy zawartej w systemie, umożliwia
jego rozbudowę
mechanizmu wnioskowania - główny składnik systemu eksperckiego wykonujący cały
proces rozumowania w trakcie rozwiązywania problemu postawionego przez
użytkownika
mechanizm wyjaśniający - objaśnia, dlaczego system udzielił takiej, a nie innej
odpowiedzi, albo dlaczego system zadał użytkownikowi dodatkowe pytanie
baza danych zmiennych - pamięć robocza przechowującą pewne fakty wprowadzone
w trakcie dialogu z użytkownikiem; umożliwia odtworzenie sposobu wnioskowania
systemu i przedstawienie go użytkownikowi za pomocą mechanizmu wyjaśniającego
Systemy eksperckie
Źródła wiedzy
ekspert – najczęściej
literatura
systemy doradcze
Systemy eksperckie
Pozyskiwanie wiedzypozyskuje inżynier wiedzy od eksperta:
stawia pytania, problemy
uzyskiwane odpowiedzi zapisuje w sposób sformalizowany
wprowadza je do bazy wiedzy
metody pozyskiwania wiedzy:
bezpośrednie zapisanie wiedzy – „uczenie na pamięć”
na podstawie instrukcji
na podstawie analogii
na podstawie obserwacji – bez nauczyciela
na podstawie przykładów – generalizowanie zapisu na
podstawie zbioru przykładów (metoda indukcji)
Systemy eksperckie
Zapis wiedzyreprezentacja proceduralna – zapisanie zbioru
procedur opisująca wiedzę
reprezentacja deklaratywna – zapisanie zbioru
faktów, stwierdzeń, reguł specyficznych dla danej
dziedziny
Systemy eksperckie
Sposoby wnioskowaniaw przód (progresywne):
dane, fakty wiedza cel
stosuje się, gdy niewiele danych do sprawdzenia
a wiele konkluzji
w tył (regresywne):
cel wiedza dane, fakty
stosuje się, gdy wiele danych do sprawdzenia
a względnie niewiele konkluzji
częściej stosowana
mieszane
wykorzystanie heurystyki, aproksymacji, statystyki
Systemy eksperckie
Narzędzia do tworzeniajęzyki algorytmiczne (np. Pascal, C, C++)
oprogramowanie specjalistyczne:języki sztucznej inteligencji (Lisp, Prolog)
języki systemów eksperckich (np. CLISP, Flops,
OPS5)
szkieletowe systemy ekspertowe (np. PC Shell,
ExSys, DecisionPro, G2)
Systemy eksperckie
Ocena – porównanie z ekspertyzą naturalną
ekspertyza naturalna ekspertyza sztuczna
wady: zalety:
• utrata wartości z upływem czasu
• problemy z:
• przeniesieniem
• dokumentacją
• nieprzewidywalność
• koszty
• stała
• łatwość:
• przeniesienie
• dokumentacji
• zgodna z bazą wiedzy
• dostępna
zalety: wady:
• twórcza
• adaptacyjna
• język naturalny
• szeroki zakres
• wiedza zdrowego rozsądku
• nieinspirująca
• konieczność wprowadzenia wiedzy
• wejścia symboliczne
• wąski zakres
• wiedza przetwarzana mechanicznie
za Tracz W., na podstawie Mulawka J. – Systemy ekspertowe, WNT, 1996
Systemy eksperckie
Ocena - ograniczeniakruchość – z uwagi na wąski zakres wiedzy – brak możliwości
powrotu do wiedzy ogólnej, gdy jest taka potrzeba, np. gdy
brakuje informacji lub gdy informacja jest nieodpowiednia
pobieranie wiedzy – mimo rozwijania nowych narzędzi, ciągle
stanowi poważną przeszkodę przy wdrażaniu systemów
eksperckich do nowych obszarów
brak samooceny – rzadko kiedy posiadają wyszukaną wiedzę
na temat własnych działań i stąd brak oceny własnych
ograniczeń
kontrola działania – trudne sprawdzenie skuteczności (trudno
mierzyć i porównywać poziom wiedzy – można tylko
porównywać z wiedzą ludzi)
Systemy eksperckie
Zastosowanielata 60-te – identyfikacja struktur molekularnych związków chemicznych
lata 70-te – identyfikacja chorób krwi
technika:
wspomaganie prac geologicznych (poszukiwanie złóż)
planowanie procesu produkcji w rafinerii
systemy utrzymania nawierzchni (USA)
usprawnianie metod stosowanych do wyznaczanie priorytetów
i programowania wydatków na drogownictwo (USA)
konserwacja mostów (USA)
dignostyka sieci kolejowej
wojsko:
diagnostyka uszkodzeń w systemie obrony powietrznej
inne:
kształtowanie składu portfela giełdowego
przydzielanie kredytu
podejmowanie decyzji administracyjnych
Systemy eksperckie
Podsumowanie
ciągle rzadko stosowane
przesłanki stosowania:brak kompletnej wiedzy zapisanej w sposób algorytmiczny
przewaga wiedzy heurystycznej nad algorytmiczną
duża złożoność problemów
wąska i mało zmienna dziedzina
przewaga wiedzy symbolicznej nad numeryczną
potrzeba szybkiego podejmowania decyzji przy braku
pełnych danych
Systemy eksperckie
Literaturahttp://wl.sggw.waw.pl/units/geomatyka/SI :
W. Tracz, Systemy ekspertowe, SGGW
M. Kryński, Systemy eksperckie, 2006, referat niepublikowany
http://pl.wikipedia.org/wiki/Sztuczna_inteligencja
Michalik K.: Systemy ekspertowe. Aitech, Katowice
http://aitech.pl/content/blogcategory/46/142/lang,ISO-8859-2
Mulawka J., Systemy ekspertowe, WNT, Warszawa, 1996
Zieliński J. – Inteligentne systemy w zarządzaniu. Teoria
i praktyka, WNT, Warszawa 2000