opracowanie pdf
TRANSCRIPT
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
1
Omów wnioskowanie z czynnikiem pewności, podaj krótki przykład podaj zalety i
wady(gotowe)
Wnioskowanie z czynnikiem pewności jest heurystyczną metodą, jednym z rodzajów
wnioskowania z niepewnością, w którym możemy wyróżnić trzy typy niepewności:
1. wejściowe fakty niepewne lub mają przypisane prawdopodobieństwa
2. reguły, nawet kiedy fakty są absolutnie pewne, generują nowe fakty z pewnym
stopniem ufności, np. IF wirus grypy w w organiźmie (100%) THEN jesteśmy chorzy
(90%)
3. kombinacje przypadków 1. i 2
W przypadku wnioskowania z czynnikiem pewności, oznaczanym przez CF, zarówno
przesłankom jak i konkluzjom w regułach przypisujemy wartośc czynnika pewności, który
jest wartoscią oznaczającą jak bardzo prawdopodobny jest dany predykat w ocenie eksperta.
Jednakże nie jest to ani prawdopodobieństwo, ani również stopień przynależności znany z
logiki rozmytej.
Czynnik ten można wyliczyć korzystając ze wzoru CF(h)=MB(h)-MD(h), gdzie MB -
measure of belief, MD - measure of disbelief, oraz 0<=MB<=1; 0<=MD<=1; -1<= CF <= +1.
Wnioskowanie oparte o czynnik pewności charakteryzuje się tzw. propagacją niepweności, tj.
niepewność przesłanek bezpośrednio rzutuje na niepewność konkuzji. Propagacja ta obliczana
jest na podstawie nastepujacego wzoru:
CF(h: reguła1, reguła2) = CF(h:reguła1) + CF(h:reguła2)*[1-CF(h:reguła1)]
Przykład.
IF kaszle(x) AND ma_goraczke(x) THEN ma_grype(x) CF=0.6
Zalety Wady
przesuwa zaufanie
produkowanych
hipotez
asymptotycznie do
pewności, kumulując
miary kolejnych reguł
produkujących
rozważane hipotezy.
(wprost: zbliżamy się
do pewności)
w przypadku gdy CF
bliski 0 - niemożliwe
rozróżnienie czy MB i
MD są takie same
(konflikt, bo
jednocześnie
wierzymy i nie) czy
obie miary są bliskie
zeru (hipoteza nie
może być
potwierdzona ani
zanegowana)
CF jest symetryczną
miarą - niezależny od
kolejności zapalania
reguł
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
2
Przetwarzanie jezyka naturalnego - problemy i sposoby (chyba gotowe)
O co chodzi?:
• Przetwarzanie języka – przetwarzanie dokumentów tekst tekstowych
• Przetwarzanie języka – rozumienie języka
• Przetwarzanie języka – przetwarzanie mowy
• Rozpoznawanie słów – rozumienie języka
Problemy:
• Rzeczy nieuchwytne typu mowa ciała, humor, akcent, ...
• Umyj głowę Irence - umyj głowę i ręce
Sama gramatyka niewiele pomoże, inteligentny program musi umieć wychwycić znaczenie
• Andrzej wyrzuci te śmieci za karę / chałupę / godzinę
Poprawna interpretacja zależy od słów 'kara', 'godzina', ‘chałupa'
• Język polski jest językiem silnie fleksyjnym
– różnorodność odmian wyrazów
– duża dowolność w ich szyku w zdaniu
– Utrudnia to tworzenie schematów wypowiedzi czy
choćby słowników
• Co zatem potrafimy zrobić? Aby zrozumieć zdanie, trzeba
– rozpoznać poszczególne wyrazy - analiza leksykalna ( np dzielenie słowa na
przedrostek, temat i przyrostek)
– sprawdzić jakie są ich wzajemne związki w tym zdaniu, tworząc np.drzewo
rozbioru - analiza syntaktyczna (tworzenie drzewa rozkładu logicznego - część
rzeczownikowa i czasownikowa... . . .)
– przetworzoną strukturę odnieść do danych zawartych w komputerze - ~analiza
semantyczna (dopasowanie uzyskanych struktur do danych)
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
3
07. Zdefiniuj problem spelniania ograniczen. Jakie znasz metody jego
rozwiazywania wymien je i omow jedna z nich(@ work)
• CSP charakteryzowany jest przez trzy składowe (liczba
zmiennych jest wymiarem CPS):
– zmienne: V1,V2,...,Vn – ich dziedziny (odpowiednio): D1,D2,...,Dn – ograniczenie qk dla k= 1,2,...,L • jest zdefiniowane na iloczynach kartezjańskich zbiorów wartości • jest j-relacją, j∈{1,...,n}: q ∈ D × D × ... × D
• Binarne ograniczenia można przedstawiać na grafie ograniczeń. Wielowymiarowe
ograniczenia rzecz jasna w hipergrafie lub w sieci ograniczeń,
1. Przegląd wszystkich możliwych wartości zmiennych –
– przegląd zupełny zapewnia znalezienie rozwiązania
–złożoność obliczeniowa: D1xD2x...xDnxE (Di,E – liczności zbiorów)
1. Algorytm z powrotami
– zmniejsza liczbę sprawdzanych kombinacji
– dla złożonych problemów – nie są wystarczające
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
4
Co mowi ci okreslenie system ekspertowy zalezny od kolejnosci regul(co wiesz o takich systemach) (wygląda na gotowe) -- "nie-zamiennych" noncommutative
Systemem ekspertowym nazywamy system wnioskowania posiadający możliwość
wyjaśnienia ścieżki dojścia do konkluzji otrzymanej na jego wyjściu. Systemem ekspertowym
zaleznym od kolejnosci reguł nazywamy taki system, w którym proces wnioskowania nie jest
oparty o logikę klasyczną (monotoniczną), a o logikę niemonotoniczną, czyli taką, w której w
kolejność zapalania reguł jest istotna. System produkcji sterujący takim wnioskowaniem
okreslamy mianem noncommutative (niezamienny, zależny od kolejnosci reguł).
Zastosowanie logiki niemonotonicznej stwarza konieczność przejrzenia więcej niż jednej
możliwej permutacji kolejności zapalania reguł. Problem wynika z faktu iż w logice
niemonotonicznej w zależnosci o kolejności zapalania możemy otrzymać inny zbiór faktów
D' zawierajacy poczatkowe fakty i reguły poszerzone o konkluzje wynikające z zapalonych
reguł. Inna permutacja reguł może doprowadzić do wygenerowania takiego samego zbioru
faktów, ale w większej ilości kroków lub nawet zbioru faktów, który przy żadnej innej
permutacji nie jest osiągalny.
13. Wnioskowanie z niepewnoscia - sposob, mozliwosci i ograniczenia stosowania
rachunku prawdopodobienstwa
Wnioskowanie z niepewnością jest to wnioskowanie (proces dedukcji nowych faktów z
innych istniejących faktów), w którym występuje jeden z trzech możliwych typów
niepewności:
1. wejściowe fakt są niepewne lub mają przypisane prawdopodobieństwa
2. reguły, nawet kiedy fakty są absolutnie pewne, generują nowe fakt z pewnym
stopniem ufności,
3. kombinacje przypadków 1 i 2.
Jednym z możliwych wniokowań z niepwenością jest wnioskowanie oparte o rachunek
prawdopodobieństwa, który jest formalnie poprawnym mechanizmem wnioskowania. fakty
modelowanego świata zapisywane są w postaci implikacji których prawdopodobieństwo
prawdziwości określane jest przez formalny zapis rachunku podobieństwa.
Przykład:
A i B -> c ; A i C -> D
Probabilistyczna reprezentacja:
P(A) , P(B), P(D)
Przy założeniu niezależności A i B -> P(C) = P(a)*P(B)
Przy braku założenia niezależności A i C mamy P(D) = P(A i C) = P(A) * P(C|A)
• Wymaga distarczenia prawdopodobieństw dla poszczególnych faktów zgromadzonych
w bazie oraz dostarczenia prawdopodobieństw warunkowych
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
5
• Nie powoduje propagacji niezależności zdarzeń, tj. z niezależności faktów
początkowych nie wynika niezalezność w procesie wnioskowania.
• Ponadto założenie niezależności powoduje produkcję zbyt rygotsytycznych rezultatów
(złych rezultatów)
•
01. Reprezentacja wiedzy w problemach planowania: sposób reprezentacji i przykład
(gotowe)
Planowanie jako technika rozwiązywania problemów obejmująca określenie sekwencji akcji,
które spowodują przejscie systemu ze stanu początkowego do docelowego, pod wieloma
względami podobne jest do wnioskowania na bazie reguł. Jednakże w znacznej większości
przypadków w przypadku planowania reprezentacja wiedzy jest bardziej złożona i prawie
zawsze wymaga revocable strategii stareowania (noncommutative system, czyli system, w
którym kolejność zapalania reguł jest istotna, tj. system oparty o logikę niemonotoniczną).
Wiedza ta w planowaniu wymaga nastepujących reprezentacji:
- reprezentacji akcji (operatorów): programy generujące opisy kolejnych stanów, definicji
warunków wstępnych i efektów
- reprezentacji stanów: struktury danych opisujące bieżące sytuacje
- reprezentacji planów (sekwencji akcji = sekwencji operatorów): każde rozwiązanie jest
sekwencja akcji
Przykład reprezentacji wiedzy w systemie STRIPS
- reprezentacja stanu: koniunkcja podstawowych literałów, bez zmiennych (nie ma funkcji,
predykaty ze stałymi symbolami, możliwe negacje), np. At(Home), Have(Milk)
- reprezentacja celu: koniunkcja literałów, które mogą zawierać zmienne, np. At(x) Sells(x,
Milk)
- reprezentacja akcji(operatorów): zkłada się z:
• własności (opisu) akcji: nazwa i opis znaczenia, np. podnieś plok y z bloku z
• warunków wstępnych (precondition): koniunkcja prawdziwych literałów (atomów),
np. ontable(x), (clear y), (empty)
• efektu: koniunkcja literałów (prawdziwych lub negatywnych) opisujących jak zmieni
się sytuacja po wykonaniu akcji (operatora).
Istnieją dwie reprezentacje efektów:
o ADD lista, np. (empty), (clear x)
o DELETE lista, np. (hold y)
- reprezentacja planów: jest to struktura danych składająca się z:
• zbioru kroków planu: każdy krok = jeden dostępny operator
• zbioru ograniczeń na porządek operatorów: specyfikuje, że jedna akcja musi wystapić
przed drugą
• zbioru ograniczeń na wiązanie zmiennych: postaci v=x, gdzie x to zmienna w pewnym
kroku, a x jest zmienną lub stałą
• zbioru związków (połączeń) przyczynowych: opisują cele poszczególnych kroków.
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
6
06. Metody reprezentacji wiedzy w systemach ekspertowych: wymien znane
metody i scharakteryzuj krotko kazda metodę (chyba gotowe - więcej w wykładach nie ma)
• Fakty pamiętane są w postaci predykatów • Predykaty z pojedynczą zmienną zwykle stosuje
się do reprezentacji relacji unarnych (unary
relations), popularnie zwanych własnościami:
– may_move (Object) – next_to (Region1, Region2) – on_top (Support, Object)
• Chcemy reprezentować zdanie:
The circuit breaker in line 4 is open
• W rachunku predykatów możemy zapisać:
– is-open (circuit-breaker, line-4)
– circuit breaker (line 4 is open)
circuit-breaker (line-4, is-open)
– line-4 (circuit-breaker, is-open)
• Wszystkie powyższe reprezentacje są dopuszczalne
• Ogólne dwu-zmienne relacje:
– is-open (What, Where)
– circuit-breaker (Where, Status)
– line-4 (Protection, Status)
• Przykłady odpowiednich dziedzin dla zmiennych:
– What = {circuit-breaker, disconnect-switch, line-itself}
– Where = {line-1, line-2, line-3, line-4}
– Status = {open, closed, inoperable}
– Protection = {relay, circuit-breaker, recloser}
Zwykle, jako predykat wybierany jest czasownik
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
7
• Dobrze zdefiniowana formuła (Well formed formula, wff) jest predykatem lub
wyrażeniem (z negacją, koniunkcją, dysjunkcją, implikacją, kwantyfikatorami)
• Klauzule:
– są analogiczne do zdań
– są zbudowane z wykorzystaniem predykatów i logicznych łączników
– mogą zawierać uniwersalny kwantyfikator
• Można udowodnić prawdziwość klauzuli w kontekście zbioru znanych prawdziwych
klauzul przez dodanie logicznego zaprzeczenia tej klauzuli do znanego zbioru i
szukanie sprzeczności (dowodzenie rpzez zaprzeczenie, inaczej Rezolucja)
16. Dedukcja, indukcja abdukcja - co to jest na czym polega i gdzie do czego są
stosowane (znasz jakies zastosowania? w sensie jak to ująć)
Dedukcja, indukcja i abdukcja są metodami wnioskowania, czyli narzędziami
wykorzystywanymi w procesie dedukcji nowych faktów z istniejących faktów.
Dedukcja jest logicznie poprawną metodą wnioskowania, która przy założeniu prawdziwości
reguły zapisanej np. w formie implikacji (p->q) oraz prawdziwości faktu (q) dedukuje
prawdziwość konkluzji q. (np. p: pada deszcz, q: jest mokro; p->q: jesli pada deszcz to jest
mokro; z prawdziwosci p: pada deszcz oraz przewdziwości implikacji p->q wnioskujemy: jest
mokro (q jest prawdziwe)). Dedukcja znajduje zastosowanie w systemach produkcyjnych
Indukcja natomiast nie jest poprawną formą wnioskowania logicznego. Stanowi
wnioskowanie bottom-up, czyli od szczegółu do ogółu. W indukcji znamy jedynie zbiór
faktów (przykładów) nie mając wiedzy ogólnej w postaci reguł. 'Domyslamy się czegoś
sensownego', tj. indukujemy ogólną regułę na podstawie zbioru przykładów.
Abdukcja, analogicznie do indukcji, nie jest logicznie poprawną metodą wnioskowania, ale w
przeciwieństwie do indukcji a analogicznie do dedukcji, w abdukcji dysponujemy zbiorem
ogólnych reguł rządzących modelowanym światem. Zakładając prawdziwość konkretnej
reguły (p->q) i obserwując jej konkluzję (q), dedukujemy prawdziwość przesłanki (p).
Przykład: p: człowiek jest pijany; q: nie może iść prosto; p->q: jeśli człowiek jest pijany to nie
może iść prosto; zakładamy prawdziwość p->q i obserwujemy prawdziwe q: iksiński nei idzie
prosto; wniosek: iksiński jest pijany
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
8
Korzystasz z systemu ekspertowego, ktory ma mozliwosc wyboru wnioskowania w
przod lub w tyl. Załóż że masz niezbedna wiedze do tego by optymalnie wybrac jeden ze
sposobow. czym bedziesz sie kierowac przy wyborze sposobu wnioskowania?(Chyba
gotowe)
Problem wyboru wnioskowania:
• Czy system ma za zadanie wyciąganie ogólnych wniosków na temat świata jaki został
mu przedstawiony za pomocą faktów (zaobserwowanych - true).
-- FCh
• Czy system ma móc sprawdzać, czy w świecie istnieją fakty (są zaobserwowane - są
true), które odpowiadałyby za konkretną (wybraną) konsekwencję.
-- BCh
• System zaczyna ze zbiorem reguł prawdziwych w danym momencie i określa to co
jest prawdziwe na mocy istniejących w nim reguł - nie ma celu okreslonego.
[wynik: wiele faktów]
-- FCh
• System ma określony cel i sprawdzane jest czy ten cel jest 'prawdzowy' w danym
świecie (fakty + reguły).
[wynik: poprawność wybranej konkluzji, lub jej brak]
-- BCh
• Można by powiedzieć, że FCh zazwyczaj działa dłużej od BCh (zależy od konstrukcji
reguł w bazie).
Wnioskowanie w przód:
• generowanie nowych faktów na podstawie posiadanego zbioru reguł i
zaobserwowanych faktów.
• wnioskowanie dedukcyjne, które jest poprawne logicznie
• Forward Chaining - paradygmat wnioskowania w przód.
• Algorytm:
1. ES zaczyna pracę z przynajmniej jednym faktem.
2. Dla każdego warunku Maszyna Wnioskująca szuka reguł w bazie wiedzy, których cześć IF
odpowiada warunkowi (warunkom).
3. Jeśli przesłanka jest prawdziwa, produkowana jest konkluzja konkluzja jako prawdziwa.
4 Dla każdego dodanego faktu następuje powrót do punktu 2.
5. Wnioskowanie jest zatrzymywane, kiedy wszystkie konkluzje (fakty) są przeanalizowane.
Dedukowane fakty są wyjściem systemu.
Wnioskowanie w tył: Backward Chaining
1. Określ konkluzję
2. Przeszukaj listę konkluzji, znajdź nazwę konkluzji
3. Ustal IF klauzule w części IF (warunki) reguły
4. Jeśli jedna z klauzul IF nie ma wartości, i nie jest zmienna konkluzji, zapytaj
użytkownika o jej wartość
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
9
5. Jeśli jest zmienna konkluzji w innej regule, zapisz numer tej reguły na wierzch stosu
konkluzji i idź do kroku 3
6. Jeśli wyrażenie na wierzchu stosu nie może być ustalone za pomocą tej reguły, usuń go ze
stosu i wyszukaj na liście konkluzji innego wyrażenia z tą zmienną
7. Jeśli znajdziesz, idź do kroku 3.
8. Jeśli nie ma więcej konkluzji na stosie z ta nazwą, to reguła dla poprzedniej konkluzji jest
fałszywa. Jeśli nie ma poprzedniej konkluzji, nie można znaleźć odpowiedzi. Jeśli jest, wróć
do kroku 6
9. Powtórz powyższe (idąc do 3) aż żadnej innej zmiennej konkluzji nie ma w kolejce
Attribute Backward Chaining Forward Chaining
Also known as Goal-driven Data-driven
Starts from Possible conclusion New data
Processing Efficient Somewhat wasteful
Aims for Necessary data Any conclusion (s)
Approach Conservative/cautious Opportunistic
Practical if
Number of possible final
answers is reasonable or a set
of known alternatives is available
Combinatorial explosion
creates an infinite number of possible right answers
Appropriate for Diagnostic, prescription and debugging application
Planning, monitoring, control and interpretation application
Example of application
Selecting a specific type of investment
Making changes to corporate pension fund
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
10
17. Omow wnioskowanie w tyl algorytm kiedy stosujemy wady zalety przyklad.
Ktore z wnioskowan (dedukcja, indukcja, abdukcja) stosuje sie w tym wnioskowaniu?
Wnioskowanie w tył Backward Chaining
• podobnie jak wnioskowanie w przód, oparte na dedukcji (ale spojrzenie jest "od tyłu")
• znając cel, szukamy reguł przy pomocy których można go osiągnąć, tj. takie reguły
które mają cel po stronie konkluzji
• jeżeli znajdziemy taką regułe, lub reguły, przy pomocy których udowodnimy że
poprzednik implikacji, która implikuje postawiony cel, jest prawdziwy, to
udowodnimy cel
• jest algorytmem depth-first search, czy li występują problemy w przypadku
niepełności bazy wiedzy lub powtarzania się stanów
•
Algorytm:
1. Określ konkluzję
2. Przeszukaj listę konkluzji, znajdź nazwę konkluzji
3. Ustal IF klauzule w części IF (warunki) reguły
4. Jeśli jedna z klauzul IF nie ma wartości, i nie jest zmienna konkluzji, zapytaj
użytkownika o jej wartość
5. Jeśli jest zmienna konkluzji w innej regule, zapisz numer tej reguły na wierzch stosu
konkluzji i idź do kroku 3
6. Jeśli wyrażenie na wierzchu stosu nie może być ustalone za pomocą tej reguły, usuń go ze
stosu i wyszukaj na liście konkluzji innego wyrażenia z tą zmienną
7. Jeśli znajdziesz, idź do kroku 3.
8. Jeśli nie ma więcej konkluzji na stosie z ta nazwą, to reguła dla poprzedniej konkluzji jest
fałszywa. Jeśli nie ma poprzedniej konkluzji, nie można znaleźć odpowiedzi. Jeśli jest, wróć
do kroku 6
9. Powtórz powyższe (idąc do 3) aż żadnej innej zmiennej konkluzji nie ma w kolejce
Zalety
� występuje mniejsza liczba generowanych faktów niż przy wnioskowaniu wprzód, co
oszczędza pamięć komputera
� wnioskowanie wstecz jest niezawodne
� w odróżnieniu do wnioskowania w przód, pozwala zaplanować algorytm wnioskujący,
tak aby z odpowiednim prawdopodobienstwem zachwoywał odpowiedni kierunek
wnioskowania.
� działa dobrze kiedy rozwiązywanie problemu rozpoczynamy od postawienia hipotezy
(np. diagnoza wystawiona przez lekarza,; poszukiwanie objawów i sprawdzanie czy
wtępują)
Wady
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
11
• kontynuuje podążanie obraną ścieżką wnioskowania nawet jeśli w trakcie wystąpiły
przesłanki do zmiany ścieżki na inna
Kiedy stosujemy
• diagnostyka, np. medyczna, kiedy znamy stan obecny a chcemy ustalić przyczyny
• ogólne sytuacje w których od problemu (celu) dochodzimy do przyczyn.
•
• 11. Podaj przyklady wnioskowania dedukcyjnego. Czym rozni sie od
abdukcyjnego? •
• Wnioskowanie dedukcyjne jest wnioskowaniem opartym o logicznie (formalnie)
poprawną metodę wnioskowania – dedukcję. Wykiorzystuje operator implikacji do
zapisu reguł rządzących opisywanym światem. We wnioskowaniu dedukcyjnym
zakłada się prawdziwość faktu zapisanego w postaci implikacji, np. p->q oraz
prawdziwość przesłanki p.
• Z prawdziwości implikacji i przesłanki dedukujemy prawdziwość konkluzji q.
• Przykład.
• True: p->q
• True: p
• Dedukujemy: q is True
•
• Przykład 2.
• True: Jeśli pada deszcz to jest mokro (p: pada deszcz; q: jest mokro)
• True: Pada deszcz (q)
• Dedukujemy: Jest mokro (q jest prawdziwe)
•
• Wnioskowanie abdukcyjne natomiast od dedukcyjnego odróżnia fakt iż bazuje ono
na formalnie niepoprawnej metodzie wnioskowania (abdukcji) i w przeciwieństwie do
dedukcji, która orzeka na temat możliwych konkluzji przy znajomości prawdziwości
przesłanek i reguł, abdukcja zakładając prawdziwość reguł (zapisanych w postaci
implikacji) oraz prawdziwość konkluzji, orzeka prawdziwość przesłanki.
• Przykład.
• Implikacja: jeśli człowiek jest pijany, to nie może iść prosto
• Fakt: Iksiński nie idzie prosto
• Wniosek: Iksiński jest pijany
18. Wymien metody rownoleglego rozwiazywania problemow spelniania ogranczen
omow jedna - te ktora wybralbys do stosowania i uzasadnij dlaczego te wybrales
Problem spełniaqnia ograniczeń (CSP) można rozproszyć na równoległe zadania ze względu
na:
• dziedzinę zmiennych
• funkcję rozwiązującą problem
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
12
Rozproszenie w oparciu o zmienne dokonywane jest z wykorzystaniem dziedziny jednej
lubie kilku zmiennych.
• Każdy z równoległych procesów odpowiedzialny jest za jedną lub kilka zmiennych.
• przestrzeń poszukiwań jest rozdzielona pomiędzy agentów i decyzja podjęta rpzez
jednego wpływa na inne poprzez ograniczenia łączące zmienne
• Proces przetwarzania jest dwuetapowy:
o rozwiązanie przez agenta lokalnego CSP dla przydzielonych mu zmiennych
o konsultacja rozwiązania czesciowego z innymi procesami - sprawdzanie
poprawności rozwiązania.
• wartości niepoprawne są usuwane z dziedzin zmiennych
Wady:
• asynchroniczne przetwarzanie procesów - konieczne mechanizmy chroniące przez
przekazywaniem zdezaktualizowanych danych pomiędzy procesami
• rozproszona pamięć (brak danych globalnych) - koszty komunikacji miedzy procesami
Zalety
• efektywność - komunikacja między procesami jest minimalna
• w najgorszym przypadku: czas znalezienia rozwiązania taki jak dla algorytmu
rozproszonego + czas na tozesłanie zadań na procesory i odebranie rozwiązań
Rozproszenie w oparciu o funkcję rozwiązującą problem rozwiązanie to oparte jest o algorytm Forward Checking.
Forward checking:
• sprawdza do przodu
• eliminuje zmienne nie spełniające ograniczeń ze WSZYSTKICH dziedzin
• pusta dziedzina jakiejś zmiennej = nie tędy droga. trzeba tę wartość odrzucić
• jeżeli wszystkie wartości danej zmiennej zostaną odrzucone (przejrzymy wszystkie
wartości z dziedziny i nie będą spełniać ograniczeń) to zawracamy
Efektywniejszy od klasycznego algorytmu z powrotami ze względu na mniejszą ilość
powrotów.
Przeszukiwanie wszystkich dziedzin, z kótymi łączy się dana zmienna może odbywać się
równoczesnie
Moje zdanie
osobiście wybrałbym rozwiązanie z rozproszeniem w oparciu o funkcję rrozwiązujacą
problem i wykorzystującą algorytm Forward Checking, ponieważ zapewnia on większą
efektywnośc, dzieki wykorzystaniu algorytmu FC. ponadto charakterystyka tego algorytmu
pozwala na dalsze usprawnienia m.in. wprowadzenie kolejnego problemu równoległości
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
13
wykonywania zadań przeszukiwania dziedzin zmiennych (opisane w ostatnim podpunkcie).
09. Analiza obrazow - omow podane na wykladzie problemy (ciężko powiedzieć,
temat rzeka...)
Rozpoznawanie obrazów /not/= rozpoznawanie wzorców.
1. Pomiar cech opisujących rozpoznane obiekty.
2. Podejmowanie decyzji na podstawie okczytancyh cech.
Dwa podejścia:
Całościowe – bierze się pod uwagę wszystkie cechy całego rozpoznawanego obiektu
– podejmuje się decyzję o jego przynależności w jednym etapie (jednym akcie decyzyjnym)
– np. metody oparte na pojęciu odległości w przestrzeni cech, metody oparte na metodach
aproksymacji funkcji przynależności podejście na metodach probabilistycznych, nawiązujące
do statystyki, itp.
Strukturalne – w rozpoznawanym obiekcie wyróżnia się najpierw określone elementy
– ustala się ich wzajemne relacje (wykorzystując wybrane i pomierzone cechy)
– właściwe rozpoznawanie dokonywane jest na podstawie strukturalnego opisu,
uwzględniającego wszystkie wykryte elementy i wszystkie ustalone relacje
– metody podejmowania decyzji są bardziej złożone i nawiązują m.in. do metod
lingwistycznych (wykorzystywanych w technikach programowania)
– podejście to jest bardziej złożone i mniej efektywne
Własności obserwowalne na obrazie nie są przypadkowe, lecz odpowiadają własnościom 3-
wymiarowym.
• Etapy przetwarzania w systemach wizyjnych - jakiś schemat a'la sieć neuronowa.
Przetwarzanie wczesne – uzyskanie użytecznej informacji z surowego obrazu, każda część
obrazu jest przetwarzana w ten sam sposób (równoległe lokalne)
Przetwarzanie późne – znalezienie obiektów z użytecznej informacji, uzyskanie
symbolicznego opisu sceny.
Rysuneczek...
•Tilt – prosta prostopadła (normalna) do powierzchni
•Slant – kąt pomiędzy normalną a linią wzroku
•strzałki są narysowane w kierunku 'tilt',
•ich długość jest proporcjonalna do 'slant'
Etapy wstępnego przetwarzania w systemach wizyjnych...
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
14
• Zadanie – wykonanie wielu charakterystyk obrazu, aby wywnioskować wiele
fizycznych charakterystyk. Nie ma do tego wystarczającej liczby ograniczeń.
1. Primal Sketch
• 1 krok – analiza surowego obrazu jako struktury zmian poziomu szarości
• Efekt – baza opisów cech – krawędzi
• Cechy opisane w 'primal sketch' są trzech rodzajów: krawędzie (edges), słupki 'bars' i
plamki 'blobs'
Coś o liniach wirtualnych - raczej głupoty... podobnie w pozostałych przypadkach, same hasła
powinny wystarczyć...
Rozpoznawanie obrazów cd.
Dysponujemy
• z analizy virtal-lines: zbiorem linii
• z analizy texture: zbiorem regionów o podobnej strukturze
• z analizy stereo: przybliżoną głębokością każdego elementu powierzchni
• z analiz texture i stereo: przybliżonym kierunkiem elementów powierzchni
Jak to złączyć razem? – nie jest łatwo!
• Opisywanie kształtu - połączenia linii
• Dopasowywanie kształtu
08. Omow wnioskowanie z logika rzomyta podaj tez krotki przyklad zalety i wady
Logika w świecie rozmytym
• logika rozmyta gałąź informatyki
• cel - umożliwienie komputerom tworzenia zdroworozsądkowego, zróżnicowanego
obrazu niepewnej rzeczywistości
Logika wielowartościowa.... taki rozkład pozostałych wartości w przedziale 0-1. np. {0; 1/3,
2/3, 3/3}
Definicja operatorów w boolu - oczywista
Definicja operatorów w logice 3 wartościowej:
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
15
~1-a ~max(a, b) ~min(a, b) ~sum(a, b) ~diff(a, b)
UWAGA DLA: sum(x, y)<=1 diff(1, 1)=1
silna koniunkcja: T(A ∧ B) = min{T(A), T(B)}
słaba koniunkcja: T(A ⊗B) = max{0, A+B -1}
silna alternatywa: T(A ∨ B) = max{T(A), T(B)}
słaba alternatywa: T(A ⊕ B) = min{1,T(A)+T(B)}
Negacja i implikacja są jednakowo definiowane:
negacja: T(A) = 1–T(A),
implikacja: T(AB) = T(AB)
Rozmywanie i wnioskowanie rozmyte Funkcja przynależności µ dla zmiennej temperatura (T)
Reguła 1: if A and B then Z and X; Reguła 2: if C and D then Z and Y
Siła(Reguła 1)=min{µ(A), µ(B)},
Siła(Reguła 2) min{µ(C) µ(D)}
Siła akcji X = Strength(Reguła 1),
Siła akcji Y = Strength(Reguła 2),
Siła akcji Z = max{Strength(Reguła 1), Strength(Reguła 2)}
= max{min(µ(A), µ(B)), min(µ(C), µ (D))}.
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
16
If cena _akcji_spada and obroty_są_duże then sprzedaj_akcje.
If jest ciepło then obroty silnika ustaw małe.
If jest chłodno then obroty silnika ustaw średnie.
• Podczas wnioskowania sprawdza się, czy dana reguła może być zastosowana, tzn. czy
spełnione są jej przesłanki.
• Jeśli tak, to w oparciu o przypisane przesłankom wartości przynależności wyliczana
jest moc każdej akcji produkowanej przez rozpatrywana regułę.
Kilka reguł może produkować tę samą akcję, każda z różną siłą –
jaka jest ostateczna siła produkowanej akcji.
• Korzysta się z interpretacji koniunkcji i alternatywy dla logiki wielo-wartościowej.
Przykład:
R1: jeśli A i B to Z i Y i R2: jeśli C i D to Z i Y
Siła R1 = min(wartość przynależności A, wartość przynależności B),
Siła R2 = min(wartość przynależności C, wartość przynależności D),
Siła akcji X = Siła R1,
Siła akcji Y = Siła R2,
Siła akcji Z = max(Siła R1, Siła R2) =
= max{min(wartość przynależności A, wartość przynależności B),
min(wartość przynależności C wartość przynależności D)}.
Example:
Załóżmy, że:
Rozmyty zbiór SLOWLY zdefiniowany jest dla X ∈ [0, 40],
Rozmyty zbiór MEDIUM zdefiniowany jest dla X ∈ [30 70],
Punkty obcięcia dla SLOWLY są: X1=6, X2=34, µ=0.6 ,
Punkty obcięcia dla MEDIUM są: X3= 34, X4= 66, µ=0.4,
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
17
Inne rozmyte wartości nie zostały wywnioskowane (ich siła jest równa zero),
Centroid dla SLOWLY = 20,20
Centroid dla MEDIUM=50.
Mamy funkcję przynależności:
• Obliczenie środka ciężkości (centroidu) każdej funkcji przynależności (rozmyte
wartości wyjść).
• Obcięcie funkcji przynależności do poziomu siły, z jaka dane wyjście jest
produkowane (niebieska i brązowa linia na rysunku).
• Obliczenie pola powierzchni obciętych funkcji przynależności
• Ostra wartość wyjścia jest obliczana jako średnia ważona współrzędnych centroidów x
i obliczonych pól, z polami jako wagami
Przykład - wyostrzanie:
Centroid (T=SLOWLY)=20,
Centroid (X=MEDIUM)=50,
Pole obciętej figury SLOWLY=0,6·(40+28)/2 = 20,4,
Pole obciętej figury MEDIUM=0,4·(40+32)/2 = 14,4.
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
18
Uproszczony proces - w wykładach "7_8_Wnioskowanie..."
28. 'Dekomponowalność systemów ekspertowych' (systemów produkcji) - jak
rozumiesz, kiedy można zdekomponować system ekspertowy (system produkcji)
Dekomponowalność systemów ekspertowych jest zaganieniem dotyczacym podziału systemu
ekspertowego, tj. jego bazy danych oraz celu. Jeżeli baza danych systemu ekspertowego i
jego cel są dekomponowalne oznacza to że możemy je podzielić na rozłączne zbiory które
mogą być niezależnie przetwarzane.
Cel SE, a zatem również cały system ekspertowy (jego system produkcji) jest
dekomponowalny na podcele jeśli można każdy z tych podceli wywnioskować w oparciu o
częsciowe bazy danych (podsystemy). Ponadto cel musi być spełniany przez pewną logiczną
funkcje podceli, z któych każdy może być rezultatem niezależnego procesu wnioskowania w
podzielonej bazie danych.
Czyli jeżeli mamy drzewo które zmierza do celu, to jeśli wybierzemy sobie dowolne
poddrzewa, to te poddrzewa będa podsystemami, w któych regułami są krawedzie, a faktami
są wierzchołki. Korzeń drzewa w danym podsystemie, jest tym podcelem, którego funkcją
powinien być cel systemu, czyli po polsku: cel końvowy musi zależec od celu, korzenia
drzewa, z tego podsystemu.
21. Omów wnioskowanie w przód w systemach z bazą wiedzy, podaj przykład
TEORIA -> zadanie 02.
Przykłąd:
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
19
Baza wiedzy:
IF INTEREST=FALL THEN STOCK=RISE
IF INTEREST=RISE THEN STOCK FALL
IF DOLLAR=FALL THEN INTERES=RISE
IF DOLLAR=RISE THEN INTEREST=FALL
IF FEDIN=FALL AND FEDMON=ADD THEN INTEREST=RISE
Przetwarzanie wiedzy zgodnie z algorytmem w 02.
Generalnie w wykładach jest jeszcze rysunek pseudo implementacyjny, który jest trywialny i
głupi...
24. Generowanie planu - metoda propagacji stanów w przód
Generowanie planu:
• proces wykonywany przez agenta planującego (zadania agenta: wygenerowanie celu,
konstrukcja planu, osiągnięcie celu z aktualnego stanu)
• ma na celu zbudowanie planu (sekwencji akcji), który spowoduje przejście systemu ze
stanu początkowego do stanu docelowego
Generowanie planu w oparciu o metodę GAT (generate-and-test) może odbywać się z
wykorzystaniem dwóch podsatwowych metod:
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
20
- metody propagacji stanów w przód (Forward State Propagation - FSP)
- metody propagacji stanów wstecz (Backward State Propagation - BST)
Metoda propagacji stanów w przód Metoda ta może zostać zastosowana zarówno bez jak i z wykorzystaniem heurystyki.
Przykładowa heurystyka mogłaby się opierać o odległość euklidesową na płaszczyźnie i
powodować wybór operatorów, które najbardziej przybliżają do celu.
Cechy metody:
• generuje wszystkie mozliwości rozwiązań i sprawdza ich wykonalnośc
• użyteczny gdy liczba możliwych rozwiązań jest mała (zbyt duża liczba mozliwości
doprowadzi do eksplozji kombinatorycznej)
• łatwo jest wygenerować zamknięte cykle - trzeba trzymać ślad akcji żeby nie tworzyć
cykli
W wersji bez heurystyki FST:
0. reprezentuj stan początkowy i stan docelowy
0. reprezentuj operatory
0. ustal aktualny stan jako stan początkowy
0. jesli początkowy jest koncowym, to zatrzymaj
1. tworzymy zbiór L0 - czyli zbiór operatorów których warunki wstępne sa spełnione w
aktualnym stanie Si
- jeśli L jest puste, to zawracamy
- jeśli nie ma alternatyw - planu nie można znaleźć
2. Wybierz jeden operator z L0 i tymczasowo sformułuj kolejny stan Si+1 jako wynik
azstosowania tego operatora
3a. sprawdż czy są konfliktowe subcele w wygenerowanym zbiorze Si+1
- jeśli istnieją, to zmień operator
3b. zatrzymaj dla sprawdzenia cyklu
- jeśli jest cylko, zawróć i wybierz inny operator
- jeśli nie ma cyklu, to przejsć do kroku 4
4. sprawdź czy w tym wygenerowanym zbiorze Si+1 jest moze stan końcowy Sg. jesli tak -
SUKCES, jeśli nie, to Si=Si+1, czyli uznajemy że zrobiliśmy krok dalej i powtarzamy cały
proces od punktu 1.
Tworzymy drzewko, takie jak na slajdzie.
23. Własności systemów "zamiennych" (commutative - zaienne, niezależne od kolejności reguł)
Czy system produkcji jest deterministyczny?
• W ogólności program jest niedeterministyczny, kiedy dopuszcza więcej niż jedno
obliczenie (wnioskowanie kilkoma ścieżkami do celu równocześnie)
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
21
Systemy produkcji:
• commutative (zamienne, niezależne od kolejności reguł)
• noncommutative (niezamienne, zależne od kolejności reguł) -> 05.
Trzy własności systemów "zamiennych” - za Nilsson’em:
1. Każda reguła stosowalna w D, jest też stosowalna w D’ osiągniętej z D przez
stosowanie stosowalnych reguł
2. Jeśli cel jest osiągalny w D, to jest też osiągalny w każdej D’ produkowanej przez
stosowalne reguły w D
3. D’ generowana przez zapalone stosowalne reguły w D jest niezmienna dla permutacji
w zapalonej sekwencji
Można więc:
• stosować jedną permutację stosowalnych reguł
• stosować 'irrevocable' strategię (nieodwołalna bez pamięci)
Chyba więcej ciekawych rzeczy nie ma...
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
22
26. Omów wnioskowanie w tył w systemach z bazą wiedzy, podaj przykład
TEORIA -> zadanie 02.
Przykład. Wnioskowanie w tył: Backward Chaining 1. Określ konkluzję 2. Przeszukaj listę konkluzji, znajdź nazwę konkluzji 3. Ustal IF klauzule w części IF (warunki) reguły 4. Jeśli jedna z klauzul IF nie ma wartości, i nie jest zmienna konkluzji, zapytaj użytkownika o jej wartość 5. Jeśli jest zmienna konkluzji w innej regule, zapisz numer tej reguły na wierzch stosu konkluzji i idź do
kroku 3 6. Jeśli wyrażenie na wierzchu stosu nie może być ustalone za pomocą tej reguły, usuń go ze stosu i wyszukaj na
liście konkluzji innego wyrażenia z tą zmienną 7. Jeśli znajdziesz, idź do kroku 3. 8. Jeśli nie ma więcej konkluzji na stosie z ta nazwą, to reguła dla poprzedniej konkluzji jest fałszywa. Jeśli nie
ma poprzedniej konkluzji, nie można znaleźć odpowiedzi. Jeśli jest, wróć do kroku 6 9. Powtórz powyższe (idąc do 3) aż żadnej innej zmiennej konkluzji nie ma w kolejce
Baza wiedzy:
IF DEGREE NO THEN POSITION NO
IF DEGREE=YES THEN QUALIFY=YES
IF DEGREE=YES AND DISCOVERY=YES
THEN POSITION=RESEARCH
IF QUALIFY=YES AND GRADE < 3.5 AND EXPERIENCE ≥ 2
THEN POSITION=SERVICE ENGINEER
IF QUALIFY=YES AND GRADE < 3.5 AND EXPERIENCE < 2
THEN POSITION=NO
IF QUALIFY=YES AND GRADE ≥ 3.5
THEN POSITION=PRODUCT ENGINEER
Przykład to zastosowanie algorytmu do bazy - nie powinno być straszne....
Autorzy: kulfoniasty & switch486
Źródło: wykłady dr Haliny Kwaśnickiej.
23
25. Omów metodę rozwiązywania problemów spełniania ograniczeń (CSP):
rozpraszanie w oparciu o dziedziny zmiennych - podaj przykład
Rozpraszanie w oparciu o zmienne determinuje sposób podziału zadań pomiędzy działających
agentów.
• każdy agent odpowiedzialny za jedną lub kilka zmiennych
• przestrzeń poszukiwań podzielona pomiędzy agentów
• decyzja jednego agenta wpływa na inne poprzez ograniczenia łączące zmienne
• wartości niepoprawne są usuwane z dziedzin zmiennych
Przykład.
Problem trzech hetmanów. Każda kolumna to jest inna zmienna, 3 możliwe wartości. Kazdy
proces otrzymuje jedną zmienną. kazdy proces zakłada że zna zmienna w jednej kolumnie i
poszukuje wartości dla dwóch pozostałych kolumn. Poszukiwanie rozwiązania jest
niezależne. Dla każdego podproblemu może być inny algorytm ale nie musi.