Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Savjet
  • Primjeri neizrazite logike za lutke. Projektiranje sustava tipa Mamdani

Primjeri neizrazite logike za lutke. Projektiranje sustava tipa Mamdani

mehanizama mišljenja, uočio da u stvarnosti ne postoji samo jedna logika (npr. Booleova), već koliko god želimo, jer je sve određeno izborom odgovarajućeg sustava aksioma. Naravno, nakon što su aksiomi odabrani, sve tvrdnje izgrađene na njihovoj osnovi moraju biti striktno, bez proturječja, povezane jedna s drugom prema pravilima utvrđenim u ovom sustavu aksioma.

Ljudsko mišljenje je kombinacija intuicije i strogosti, koja, s jedne strane, svijet promatra kao cjelinu ili analogno, a s druge strane, logično i dosljedno te stoga predstavlja nejasan mehanizam. Zakoni mišljenja koje želimo uključiti u računalne programe moraju nužno biti formalni; nejasni su zakoni mišljenja koji se očituju u dijalogu između čovjeka i čovjeka. Možemo li stoga reći da se neizrazita logika može dobro prilagoditi ljudskom dijalogu? Da - ako softver , razvijen uzimajući u obzir neizrazitu logiku, postat će operativan i moći će se tehnički implementirati, tada će komunikacija čovjek-stroj postati mnogo praktičnija, brža i prikladnija za rješavanje problema.

Uvjet " Mutna logika" se obično koristi u dva različita značenja. U užem smislu, neizrazita logika je logički račun, koji je proširenje mnogoznačne logike. U svom širem smislu, koji je danas dominantan u upotrebi, neizrazita logika je ekvivalentna teorija nejasni skupovi. S ove točke gledišta, neizrazita logika u užem smislu je grana neizrazite logike u širem smislu.

Definicija. Bilo koje neizrazita varijabla karakteriziraju tri

Gdje je naziv varijable, - univerzalni set, je neizraziti podskup skupa, koji predstavlja neizrazito ograničenje na vrijednost varijable, uvjetovano .

Koristeći analogiju s putnom torbom, neizrazita varijabla može se usporediti s putnom torbom s etiketom koja ima "meke" stijenke. Zatim - natpis na etiketi (naziv vrećice), - popis predmeta koji se, u načelu, mogu staviti u vrećicu, i - dio ovog popisa, gdje je za svaki predmet naveden broj koji karakterizira stupanj lakoće s kojim se predmet može staviti u torbu.

Razmotrimo sada različite pristupe definiranju osnovnih operacija na neizrazite varijable, naime konjunkcija, disjunkcija i negacija. Te su operacije temeljne za neizrazitu logiku u smislu da se sve njezine strukture temelje na tim operacijama. Trenutno u neizrazitoj logici kao operacije konjunkcije a disjunkcije široko koriste -norme i -konorme, koje su došle do neizrazite logike iz teorije probabilističkih metričkih prostora. Oni su prilično dobro proučeni i čine temelj mnogih formalnih konstrukcija neizrazite logike. U isto vrijeme, proširenje opsega primjene neizrazite logike i mogućnosti neizrazitog modeliranja zahtijeva generalizaciju ovih operacija. Jedan smjer je povezan sa slabljenjem njihove aksiomatike kako bi se proširili alati neizrazitog modeliranja. Drugi smjer generalizacije operacije konjunkcije a disjunkcija neizrazite logike povezana je sa zamjenom skupa vrijednosti pripadnosti linearno ili djelomično uređenim skupom procjena lingvističke vjerodostojnosti. Ove generalizacije osnovnih operacija neizrazite logike, s jedne strane, uzrokovane su potrebom razvoja ekspertni sustavi, u kojima su istinite vrijednosti činjenica i pravila opisane od strane stručnjaka ili korisnika izravno na lingvističkoj ljestvici i kvalitativne su prirode. S druge strane, takve generalizacije uzrokovane su promjenom smjera aktivni razvoj neizrazita logika od modeliranja kvantitativnih, mjerljivih procesa do modeliranja procesa ljudskog mišljenja, gdje se percepcija svijeta i donošenje odluka odvijaju na temelju granuliranja informacija i izračunavanja riječima.

Prirodna generalizacija involutivnih operacija negacije neizrazite logike su neinvolutivne negacije. Oni su od neovisnog interesa i razmatraju se u neizrazitoj i drugim neklasičnim logikama. Potreba za proučavanjem takvih operacija negacije također je uzrokovana uvođenjem u razmatranje generaliziranih operacije konjunkcije a disjunkcije međusobno povezane pomoću operacije negacije.

Standardni rad o neizrazitoj logici obično pati od dvije stvari:

  1. U 99% slučajeva članak se bavi isključivo primjenom neizrazite logike u kontekstu neizrazitih skupova, odnosno neizrazitog zaključivanja, još preciznije Mamdanijevog algoritma. Čini se da je to jedini način na koji se neizrazita logika može primijeniti, ali nije tako.
  2. Gotovo uvijek je članak napisan matematičkim jezikom. Sjajno, ali programeri koriste drugačiji jezik s drugačijim zapisima. Stoga se ispostavlja da je članak jednostavno nerazumljiv onima koji bi, čini se, trebali biti korisni.
Sve je to žalosno, jer neizrazita logika jedno je od najvećih dostignuća matematike 20. stoljeća, ako se kao kriterij uzme praktična primjena. U ovom ću članku pokušati pokazati kako jednostavno i moćan alat programiranje - jednako jednostavno, ali mnogo moćnije od sustava običnih logičkih operacija.

Najviše izvanredna činjenica o neizrazitoj logici je da je prvenstveno logike. Od početaka matematičke logike poznato je da bilo koja logička funkcija može se prikazati disjunktivnom ili konjunktivnom normalnom formom, iz čega slijedi da su za implementaciju iskaznog računa dovoljne samo tri operacije: konjunkcija (&&), disjunkcija (||) i negacija (!). U klasičnoj logici, svaka od ovih operacija određena je tablicom istine:

A b || a b && a ! -------- -------- ---- 0 0 0 0 0 0 0 1 0 1 1 0 1 0 1 0 1 0 1 1 0 0 1 1 1 1 1 1
U neizrazitoj logici, za razliku od klasične logike, umjesto kvantiteta pravi I laž korištena vrijednost stupanj istine, uzimajući bilo koju vrijednost iz beskonačnog skupa od 0 do uključivo 1. Stoga logičke operacije više se ne mogu prikazati u tablici. U neizrazitoj logici oni su određeni funkcijama.

Postoje dva načina implementacije disjunkcije i konjunkcije:

#Maximin pristup: a || b => max(a, b) a && b => min(a, b) #Kolorometrijski pristup: a || b => a + b - a * b a && b => a * b
Dana je negacija jedini način(nije teško pogoditi):

A => 1 - a
Lako je provjeriti da za ekstremne slučajeve - kada su vrijednosti varijabli isključivo 1 ili 0 - gornje funkcije daju tablice istinitosti za operacije klasične logike. Spreman! Sada imamo naprednu logiku koja je nevjerojatno snažna, jednostavna, a opet potpuno kompatibilna s klasičnom logikom u ekstremnim slučajevima. To znači svugdje gdje mi [programeri] koristimo logički izrazi, možemo li koristiti izraze neizrazite logike? Ne baš.

Činjenica je da svi operatori programskog jezika zahtijevaju jasne uvjete, tako da u nekom trenutku uvijek morate dobiti jasan kriterij okidača iz nejasnog stupnja istine. Ovo je slično onome što se događa u kvantni svijet: Sve dok se sustav razvija u skladu sa Schrödingerovom jednadžbom, njegovo kvantno stanje se deterministički i kontinuirano mijenja, ali čim dotaknemo sustav, događa se kvantni skok i sustav kolabira u jedno od diskretnih stanja. U neizrazitoj logici to se zove defuzzifikacija. Priroda jednostavno pretvara kvantno stanje u vjerojatnost i baca kockice, ali općenito govoreći postoje različite metode defuzzifikacije. Neću ulaziti dublje u ovu temu, jer njen obim zahtijeva poseban članak. Samo da spomenem da metodu defuzzifikacije treba odabrati uzimajući u obzir semantiku problema.

Kao primjer, zamislite sustav upravljanja raketom koji koristi neizrazitu logiku za izbjegavanje prepreka. Zamislimo da raketa leti ravno uz planinu, a kontrolni sustav izračunava rješenje: let udesno - 0,5, let u lijevo - 0,5. Ako koristite defuzzifikaciju koristeći metodu centra mase, kontrolni sustav će dati naredbu za let ravno. Boom! Očito, u ovom slučaju ispravno rješenje- bacite kocku i primite naredbu “lijevo” ili “desno” s vjerojatnošću od 50%.

U najjednostavnijem slučaju, kada trebate donijeti odluku na temelju stupnja istine, možete podijeliti skup u intervale i koristiti if-else-if.

Ako se neizrazita logika koristi za pretraživanje pomoću neizrazitog kriterija, tada defuzzifikacija možda uopće neće biti potrebna. Usporedbom ćemo dobiti određeni stupanj vrijednosti jednakosti za svaki element prostora pretraživanja. Možemo definirati neki minimalni stupanj jednakosti, ispod kojeg nismo zainteresirani; za preostale elemente, stupanj jednakosti bit će relevantnost, prema silaznom redoslijedu, poredat ćemo rezultate i prepustiti korisniku da odluči koji je rezultat točan.

Kao primjer, dat ću vam korištenje neizrazite logike za rješavanje problema s kojim sam se zabavljao još na faksu - problem pronalaženja kineskog znaka na slici.

Odmah sam odbacio ideju o prepoznavanju bilo kakve škrabotine koju je korisnik nacrtao na ekranu (tada je to bio PDA ekran). Umjesto toga, program je ponudio odabir vrste osobine između otprilike 23, definirana pravilima Japanska kaligrafija. Nakon što je odabrao vrstu obilježja, korisnik je nacrtao pravokutnik u koji je stalo obilježje. Zapravo, hijeroglif - i upisan i pohranjen u rječniku - predstavljen je kao skup pravokutnika za koje je definirana vrsta.

Kako odrediti jednakost hijeroglifa u takvom prikazu? Za početak, formulirajmo kriterij u jasnoj izjavi:

Hijeroglifi A i B su jednaki ako i samo ako za svaku crtu u A postoji jednaka crta u B i za svaku crtu u B postoji jednaka crta u A.

Implicitno se pretpostavlja da hijeroglifi ne sadrže duplicirana obilježja, odnosno ako se određeno obilježje podudara s obilježjem u drugom hijeroglifu, onda se ne može podudarati ni s jednim drugim obilježjem u istom hijeroglifu.

Jednakost svojstava može se definirati na sljedeći način:

Svojstva su jednaka ako i samo ako su iste vrste i njihovi pravokutnici zauzimaju istu površinu.

Ove dvije definicije daju nam sustav iskaza koji je dovoljan za implementaciju algoritma pretraživanja.

Prvo, konstruirajmo matricu E na sljedeći način:

Za i u 1..n za j u 1..n E = A[i] == B[j] kraj kraj #A i B su hijeroglifi; A[i] i B[j] su njihove značajke, a operator "==" izračunava njihovu neizrazitu jednakost. #Pretpostavlja se da oba hijeroglifa imaju isti broj obilježja - n.
Zatim ovu matricu zatvaramo u vektor M[n]:

For i in 1..n M[i] = E.max_in_row(i) end #Max_in_row metoda izračunava maksimalnu vrijednost u retku matrice.
Koristim maksiminski pristup jer u praksi kolorometrijski pristup daje premale vrijednosti za konjunkcije. Ako se sjetimo da je max disjunkcija, ispada da izračunavamo izjavu da i-to obilježje A je jednako prvom potezu od B ili drugom ili trećem, itd. Dakle, M je vektor podudaranja između značajki A i značajki B.

#Samo nejasna konjunkcija. e = M.min #Ili ovako: e = M.sum / M.length #(omjer zbroja elemenata i duljine vektora).
Obje metode funkcioniraju, ali na različite načine, a druga metoda funkcionira čak i ako jasno usporedite značajke. Koji je ispravniji, filozofsko je pitanje.

Treba reći još nekoliko riječi o usporedbi svojstava. Prema definiciji, jednakost svojstava je spoj dva uvjeta: jednakosti tipova i jednakosti pravokutnika. Osobine nekih tipova vrlo su slične. Prilikom unosa, korisnik ih može lako zbuniti, stoga vrijedi imati tablicu sličnosti, čije će vrijednosti odražavati koliko je značajka i slična značajki j (naravno da će ih biti na glavnoj dijagonali). Kao stupanj jednakosti pravokutnika možemo uzeti omjer površine njihovog sjecišta prema površini većeg pravokutnika.

Općenito, opseg neizrazite logike je vrlo opsežan. U bilo kojem algoritmu, u bilo kojem sustavu pravila, pokušajte istinu i laž zamijeniti stupnjem istine i možda će ovaj sustav pravila ili algoritam točnije odražavati stvarnost. Uostalom, živimo u svijetu koji je fundamentalno nejasan.

Epimenid iz Knososa s otoka Krete je polumitski pjesnik i filozof koji je živio u 6. stoljeću. Kr., jednom je izjavio: “Svi Krećani su lažljivci!” Budući da je i sam bio Krećanin, zapamćen je kao izumitelj tzv. kretskog paradoksa.


U terminima aristotelovske logike, u kojoj izjava ne može biti istovremeno istinita i lažna, takve samonegacije nemaju smisla. Ako su istiniti onda su lažni, ali ako su lažni onda su istiniti.


I ovdje u igru ​​ulazi neizrazita logika, gdje varijable mogu biti djelomični članovi skupova. Istina ili netočnost više nisu apsolutne – izjave mogu biti djelomično istinite, a djelomično lažne. Korištenje ovog pristupa omogućuje nam da striktno matematički dokažemo da je Epimenidov paradoks točno 50% istinit i 50% lažan.

Dakle, neizrazita logika je fundamentalno nekompatibilna s aristotelovskom logikom, posebice s obzirom na zakon Tertium non datur („Treće nije dano“ - latinski), koji se također naziva zakon isključenja prosjeka1. Ukratko, to ide ovako: ako izjava nije istinita, onda je lažna. Ti su postulati toliko osnovni da se često jednostavno uzimaju zdravo za gotovo.


Trivijalniji primjer korisnosti neizrazite logike može se dati u kontekstu koncepta hladnoće. Većina ljudi zna odgovoriti na pitanje: "Je li ti sada hladno?" U većini slučajeva (osim ako ne razgovarate sa studentom diplomskog studija fizike), ljudi razumiju da ne govorimo o apsolutna temperatura na Kelvinovoj skali. Iako se temperatura od 0 K bez sumnje može nazvati hladnom, mnogi temperaturu od +15 C neće smatrati hladnom.


Ali strojevi nisu sposobni napraviti tako fine gradacije. Ako je standardna definicija hladnoće "temperatura ispod +15 C", tada će se +14,99 C smatrati hladnoćom, ali +15 C neće.

Teorija neizrazitih skupova

Pogledajmo sl. 1. Prikazuje grafikon koji vam pomaže razumjeti kako osoba percipira temperaturu. Osoba doživljava temperaturu od +60 F (+12 C) kao hladnoću, a temperaturu od +80 F (+27 C) kao vruću. Temperature od +65 F (+15 C) nekima se čine hladnima, ali drugima prilično ugodnima. Ovu skupinu definicija nazivamo funkcijom pripadnosti skupovima koji opisuju subjektivnu percepciju osobe o temperaturi.

Jednako je jednostavno stvoriti dodatne skupove koji opisuju ljudsku percepciju temperature. Na primjer, možete dodati skupove kao što su "vrlo hladno" i "vrlo vruće". Može se opisati slične funkcije za druge koncepte, kao što su otvorena i zatvorena stanja, temperatura rashladnog uređaja ili temperatura rashladnog tornja.


To jest, neizraziti sustavi mogu se koristiti kao univerzalni aproksimator (prosječnik) za vrlo široku klasu linearnih i nelinearnih sustava. Ovo ne samo da čini strategije upravljanja pouzdanijima u nelinearnim slučajevima, već također omogućuje korištenje stručnih procjena za izgradnju računalnih logičkih sklopova.

Neizraziti operatori

Da biste primijenili algebru na neizrazite vrijednosti, trebate odrediti operatore koje ćete koristiti. Obično u Booleova logika Koristi se samo ograničen skup operatora uz pomoć kojih se izvode ostale operacije: NOT (operator NOT), AND (operator AND) i OR (operator OR).

Za ovo troje mogu se dati mnoge definicije osnovni operatori, od kojih su tri prikazane u tablici. Usput, sve definicije jednako su važeće za Booleovu logiku (za provjeru samo zamijenite 0 i 1 u njima). U Booleovoj logici, FALSE je ekvivalentno 0, a TRUE je ekvivalentno 1. Isti način u neizrazitoj logici, stupanj istine može varirati od 0 do 1, tako da je vrijednost “Cold” istinita na potenciju 0,1, a operacija NOT(“Cold”) će dati vrijednost 0,9.


Možete se vratiti na Epimenidov paradoks i pokušati ga riješiti (matematički se izražava kao A = NOT(A), gdje je A stupanj istinitosti odgovarajuće izjave). Ako želite više težak zadatak, zatim pokušajte riješiti problem zvuka pljeskanja jedne ruke...

Rješavanje problema metodama neizrazite logike

Samo se nekoliko ventila može otvoriti "samo malo". Prilikom rada opreme obično se koriste jasne vrijednosti (na primjer, u slučaju bimodalnog 0-10 V signala), koje se mogu dobiti pomoću takozvanog "rješavanja problema neizrazite logike". Ovaj pristup omogućuje transformaciju semantičkog znanja sadržanog u neizrazitom sustavu u provedivu kontrolnu strategiju2.


To se može učiniti različitim tehnikama, ali da ilustriramo proces u cjelini, pogledajmo samo jedan primjer.


U metodi defuzzifikacije visine, rezultat je zbroj vrhova neizrazitog skupa, izračunat pomoću utega. Ova metoda ima nekoliko nedostataka uključujući loš posao s funkcijama pripadnosti asimetričnog skupa, ali ima jednu prednost - ovu metodu je najlakše razumjeti.

Pretpostavimo da nam skup pravila koja upravljaju otvaranjem ventila daje sljedeći rezultat:


"Ventil djelomično zatvoren": 0,2

"Ventil djelomično otvoren": 0,7

"Ventil otvoren": 0,3

Ako za određivanje stupnja otvorenosti ventila koristimo metodu defuzzifikacije visine, dobit ćemo rezultat:

"Ventil zatvoren": 0,1

(0,1*0% + 0,2*25% + 0,7*75% + 0,3*100%)/ /(0,1 + 0,2 + 0,7 + 0,3) =

= (0% + 5% + 52,5% + 30%)/(1,3) = = 87,5/1,3 = = 67,3%,

oni. ventil mora biti otvoren na 67,3%.

Praktična primjena neizrazite logike

Kada se teorija neizrazite logike tek pojavila, članci o njezinim mogućim područjima primjene mogli su se naći u znanstvenim časopisima. Kako razvoj događaja u ovom području napreduje, sve više praktične aplikacije jer je neizrazita logika počela brzo rasti. Ovaj bi popis u ovom trenutku bio predug, ali evo nekoliko primjera koji će vam pomoći da shvatite koliko se široko koristi neizrazita logika u sustavima upravljanja i ekspertnim sustavima3.


– Uređaji za automatsko održavanje brzine vozila i povećanje učinkovitosti/stabilnosti automobilskih motora (firme Nissan, Subaru).

Osnove teorije neizrazitih skupova i neizrazite logike

Jedna od metoda za proučavanje skupova bez određivanja njihovih granica je teorija neizrazitih skupova koju je 1965. predložio profesor Lotfi Zadeh sa Sveučilišta u Kaliforniji. Izvorno je razvijen kao sredstvo modeliranja neizvjesnosti u prirodnom jeziku. Međutim, kasnije se raspon problema koji se rješavaju korištenjem aparata za neizrazite skupove značajno proširio i sada uključuje područja kao što su analiza podataka, prepoznavanje, operacijsko istraživanje, modeliranje složenih sustava, podrška odlučivanju itd.

Često se pri određivanju i opisivanju karakteristika objekata ne operira samo s kvantitativnim, već i s kvalitativnim vrijednostima. Konkretno, visina osobe može se kvantitativno mjeriti u centimetrima ili se može opisati pomoću kvalitativnih vrijednosti: patuljak, nizak, srednji, visok ili div. Tumačenje kvalitativnih vrijednosti je subjektivno, tj. mogu se različito tumačiti od strane različitih ljudi (subjekata). Zbog neodređenosti kvalitativnih vrijednosti, kada je potrebno prijeći s njih na kvantitativne vrijednosti, javljaju se određene poteškoće.

U sustavima izgrađenim na temelju neizrazitih skupova koriste se pravila oblika “IF A THEN B” (A ® B), u kojima i A (uvjet, premisa) i B (rezultat, hipoteza) mogu uključivati ​​kvalitativne vrijednosti. Na primjer, "IF Height = "tall" THEN Sport_type = "basketball"."

Varijabla čija je vrijednost određena skupom kvalitativnih vrijednosti nekog svojstva naziva se u teoriji neizrazitog skupa lingvistički. Primjer pravila koristi dvije lingvističke varijable: Height i Sport_type.

Svaka vrijednost lingvističke varijable određena je kroz takozvani neizraziti skup. Nejasan set određena kroz neku osnovnu ljestvicu x i funkcija pripadnosti (karakteristična funkcija) m( x), Gdje x Î x. Štoviše, ako u klasičnom Cantorovom skupu element ili pripada skupu (m( x) = 1), ili ne pripada (m( x) = 0), tada je u teoriji neizrazitih skupova m( x) može uzeti bilo koju vrijednost u intervalu . Na neizrazitim skupovima možete izvesti standardne operacije: zbrajanje (negacija), unija, presjek, razlika itd. (slika 33).

Za neizrazite skupove također postoji niz posebnih operacija: zbrajanje, množenje, koncentracija, proširenje itd.

Prilikom specificiranja lingvističke varijable, njezine vrijednosti, tj. neizraziti skupovi, moraju zadovoljiti određene zahtjeve (slika 34).

1. Urednost. Neizraziti skupovi moraju biti poredani (raspoređeni na osnovnoj ljestvici) u skladu s redoslijedom kojim su navedene kvalitativne vrijednosti za lingvističku varijablu.

2. Ograničeno. Opseg definicije lingvističke varijable mora biti jasno definiran (minimum i maksimalne vrijednosti lingvistička varijabla na osnovnoj skali). Na granicama univerzalnog skupa gdje je definirana lingvistička varijabla, vrijednosti funkcija pripadnosti njegovih minimalnih i maksimalnih neizrazitih skupova moraju biti jedinica. Na slici T 1 ima pogrešna funkcija pribor, a T 6 je ispravan.

3. Dosljednost. Prirodna razlika između pojmova (vrijednosti lingvističke varijable) mora se promatrati kada ista točka univerzalnog skupa ne može istovremeno pripadati m( x) = 1 do dva ili više neizrazitih skupova (zahtjev je prekršen parom T 2 – T 3).

4. Potpunost. Svaka vrijednost iz domene definiranja lingvističke varijable mora biti opisana barem jednim neizrazitim skupom (zahtjev se krši između para T 3 - T 4).

5. Normalnost. Svaki koncept u lingvističkoj varijabli mora imati barem jednu referencu ili tipični objekt, tj. u nekom trenutku funkcija pripadnosti neizrazitog skupa mora biti jedinica (zahtjev je prekršen T5).

x

Neizraziti skup “kratke visine” m n ( x)

0 20 40 60 80 100 110 120 140 160 x

Neizraziti skup "visokog rasta" m in ( x)

0 20 40 60 80 100 110 120 140 160 x

D = N: komplement neizrazitog skupa "kratka visina"

m d ( x) = 1 – m n ( x)

0 20 40 60 80 100 110 120 140 160 x

N È V: Kombiniranje neizrazitih skupova “niskog rasta” i “visokog rasta”

m nv ( x) = max(m n ( x), m u ( x))

0 20 40 60 80 100 110 120 140 160 x

N Ç V: Sjecište neizrazitih skupova "niskog rasta" i "visokog rasta"

m nv ( x) = min(m n ( x), m u ( x))

Riža. 33. Operacije na neizrazitim skupovima

m( x) T 1 T 2 T 3 T 4 T 5 T 6

Riža. 34. Primjer određivanja neizrazitih skupova za lingvističku varijablu s kršenjem zahtjeva

Zahtjevi 2–4 mogu se zamijeniti jednim univerzalnim – zbrojem funkcija pripadnosti m( x) za sve neizrazite skupove u svakoj točki u domeni definicije varijable mora biti jednaka 1.

Kod obrade pravila s lingvističkim varijablama (neizrazita pravila), neizrazita logička pravila koriste se za izračunavanje istinitosti hipoteze. Mutna logika- vrsta kontinuirane logike u kojoj same premise, hipoteze i logičke formule mogu poprimiti istinite vrijednosti s određenim stupnjem vjerojatnosti.

Osnovni principi neizrazite logike:

· istinitost premise, hipoteze ili formule leži u intervalu;

· ako su dvije premise (E 1 i E 2) povezane s Ù (logičko I), tada se istinitost hipoteze H izračunava formulom t(H) = MIN(t(E 1), t(E 2)) ;

· ako su dvije premise (E 1 i E 2) povezane s Ú (logičko ILI), tada se istinitost hipoteze H izračunava po formuli t(H) = MAX(t(E 1), t(E 2) );

· ako pravilo (P) ima vlastitu procjenu istinitosti, tada se konačna istinitost hipoteze N ukupno prilagođava uzimajući u obzir istinitost pravila t(N ukupno) = MIN(t(N), t(P)) .

Uvod u neizrazitu logiku

Neizrazita logika je logična ili kontrolni sustav n-znamenkasti logički sustav, koji koristi stupnjeve stanja ("stupnjeve istine") ulaza i generira izlaze koji ovise o stanjima ulaza i brzini promjene tih stanja. Ovo nije uobičajena "točno ili netočno" (1 ili 0), Booleova (binarna) logika na kojoj moderna računala. Uglavnom pruža osnovu za približno razmišljanje korištenjem nepreciznih rješenja i dopušta korištenje jezičnih varijabli.



Neizrazitu logiku razvio je 1965. profesor Lotfi Zadeh na kalifornijskom sveučilištu Berkeley. Prva primjena bila je računalna obrada podataka na temelju prirodnih vrijednosti.


Jednostavno rečeno, neizrazita logička stanja mogu biti ne samo 1 ili 0, već i vrijednosti između njih, to jest 0,15, 0,8 itd. Na primjer, u binarnoj logici možemo reći da imamo čašu Vruća voda(tj. 1 ili visoko logička razina) ili čaša hladne vode, odnosno (0 ili niska logička razina), ali u neizrazitoj logici možemo reći da imamo čašu tople vode (ni tople ni hladne, odnosno negdje između ova dva ekstremna stanja) . Jasna logika: da ili ne (1, 0). Nejasna logika: naravno, da; vjerojatno ne; Teško je reći; možda da itd.

Osnovna arhitektura neizrazitog logičkog sustava

Sustav neizrazite logike sastoji se od sljedećih modula:



Fuzzifier (ili operator zamućivanja). Uzima izmjerene varijable kao ulaz i transformira numeričke vrijednosti u lingvističke varijable. On transformira fizičke vrijednosti kao i signale pogreške u normalizirani neizraziti podskup, koji se sastoji od intervala za niz ulaznih vrijednosti i funkcija pripadnosti koje opisuju vjerojatnost stanja ulaznih varijabli. Ulazni signal je uglavnom podijeljen u pet stanja, kao što su: veliki pozitivan, srednji pozitivni, mali, srednji negativni i veliki negativni.


Kontrolor. Sastoji se od baze znanja i mehanizma za zaključivanje. Baza znanja pohranjuje funkcije pripadnosti i neizrazita pravila dobivena poznavanjem rada sustava u okruženju. Stroj za zaključivanje obrađuje dobivene funkcije pripadnosti i neizrazita pravila. Drugim riječima, mehanizam za zaključivanje proizvodi izlaz na temelju lingvističkih informacija.


Defuzzifier ili operator vraćanja jasnoće. Izvodi obrnuti proces od faze vatre. Drugim riječima, pretvara neizrazite vrijednosti u normalne numeričke ili fizičke signale i šalje ih u fizički sustav za kontrolu rada sustava.

Princip rada neizrazitog logičkog sustava

Neizrazita operacija uključuje korištenje neizrazitih skupova i funkcija pripadnosti. Svaki neizraziti skup je prikaz lingvističke varijable koja definira moguće izlazno stanje. Funkcija pripadnosti je funkcija opće vrijednosti u neizrazitom skupu, tako da i opća vrijednost i neizraziti skup pripadaju univerzalnom skupu.


Stupnjevi članstva u ovoj općoj vrijednosti u neizrazitom skupu određuju izlaz na temelju načela AKO-ONDA. Članstvo se dodjeljuje na temelju pretpostavke izlaza inputa i stope promjene inputa. Funkcija članstva je u osnovi grafički prikaz neizraziti skup.


Razmotrimo vrijednost "x" tako da je x ∈ X za cijeli interval i neizraziti skup A, koji je podskup od X. Funkcija pripadnosti "x" u podskupu A dana je s: fA(x), primijetimo da "x" označava vrijednost članstva. Ispod je grafički prikaz neizrazitih skupova.



Dok x-os označava univerzalni skup, y-os označava stupnjeve članstva. Te funkcije pripadnosti mogu biti trokutastog, trapezoidnog, jednotočkastog ili Gaussovog oblika.

Praktični primjer neizrazitog logičkog sustava

Razvijajmo se jednostavan sustav fuzzy kontrola za upravljanje radom perilice, tako da fuzzy sustav kontrolira proces pranja, unos vode, vrijeme pranja i brzinu centrifuge. Ovdje su ulazni parametri volumen odjeće, stupanj zaprljanosti i vrsta prljavštine. Dok bi volumen odjeće određivao unos vode, stupanj kontaminacije bi zauzvrat bio određen prozirnošću vode, a vrsta prljavštine bi bila određena vremenom kada je boja vode ostala nepromijenjena.


Prvi korak je definiranje lingvističkih varijabli i pojmova. Za ulazne podatke, lingvističke varijable date su u nastavku:

  • Vrsta blata: (masno, srednje, nemasno)
  • Kvaliteta prljavštine: (velika, srednja, mala)

Za izlaz, lingvističke varijable su dane u nastavku:

  • Vrijeme pranja: (kratko, vrlo kratko, dugo, srednje, vrlo dugo) (kratko, vrlo kratko, dugo, srednje, vrlo dugo).

Drugi korak uključuje konstruiranje funkcija članstva. Ispod su dijagrami koji definiraju funkcije pripadnosti za dva ulaza. Dodatne funkcije za kvalitetu blata:



Dodatne funkcije za vrstu blata:



Treći korak uključuje razvoj skupa pravila za bazu znanja. Ispod je skup pravila koja koriste logiku AKO-ONDA:

AKO je kvaliteta prljavštine mala I vrsta prljavštine masna, ONDA vrijeme pranja dugo.
AKO kvaliteta prljavštine Srednja I Vrsta prljavštine Masna, ONDA Vrijeme pranja Dugo.
AKO je kvaliteta prljavštine Velika i vrsta prljavštine Masna, ONDA Vrijeme pranja Vrlo dugo.
AKO je kvaliteta prljavštine Mala I Vrsta prljavštine Srednja, ONDA Vrijeme pranja Srednja.
AKO kvaliteta prljavštine Srednja I Vrsta prljavštine Srednja, ONDA Vrijeme pranja Srednja.
AKO kvaliteta prljavštine Velika i vrsta prljavštine Srednja, ONDA Vrijeme pranja Srednja.
AKO je kvaliteta prljavštine mala i vrsta prljavštine nemasna, ONDA vrijeme pranja vrlo kratko.
AKO je kvaliteta prljavštine srednja I vrsta prljavštine nemasna, ONDA vrijeme pranja srednje.
AKO je kvaliteta prljavštine Velika i vrsta prljavštine Masna, ONDA Vrijeme pranja Vrlo kratko.

Fazifire, koji je prvobitno pretvorio ulaze senzora u ove lingvističke varijable, sada primjenjuje gore navedena pravila za izvođenje operacija neizrazitog skupa (npr. MIN i MAX) za određivanje izlaznih neizrazitih funkcija. Funkcija pripadnosti razvijena je na temelju izlaznih neizrazitih skupova. Posljednji korak je faza defasifikacije, u kojoj defazifikator koristi izlazne funkcije članstva za određivanje vremena pranja.

Područja primjene neizrazite logike

Sustavi neizrazite logike mogu se koristiti u automobilski sustavi kao što su automatski mjenjači. Primjene u području Kućanski aparati uključiti mikrovalne pećnice, klima uređaji, perilice rublja, televizori, hladnjaci, usisavači itd.

Prednosti neizrazite logike

  • Sustavi neizrazite logike su fleksibilni i dopuštaju promjenu pravila.
  • Takvi sustavi također prihvaćaju čak i netočne, iskrivljene i pogrešne informacije.
  • Sustavi neizrazite logike mogu se lako dizajnirati.
  • Budući da su ti sustavi povezani s ljudskim razmišljanjem i donošenjem odluka, korisni su u oblikovanju odluka teške situacije V različite vrste aplikacije.

web stranica


Oznake:



   Hvala vam na interesu za informacijski projekt web stranica.
   Ako želite zanimljivo i korisni materijali izlazio češće i bilo je manje reklama,
   Naš projekt možete podržati tako što ćete donirati bilo koji iznos za njegov razvoj.

Najbolji članci na temu