Fuzzy logic och fuzzy kontrollsystem

Relevanta dokument
729G11 ARTIFICIELL INTELLIGENS 2, LINKÖPINGS UNIVERSITET. Fuzzy Logic. Caroline Allmér, caral

Fuzzy Logic Linköpings Universitet

Fuzzy control systems

William Hernebrink

Fuzzy Logic. När oskarpa definitioner blir kristallklara. Åsa Svensson. Linköpings Universitet. Linköping

Innehållsförtekning Sida. Inledning 3 Vad är fuzzy logic? 3 Mängder 3 Medlemsfunktioner 5 Operationer 6 Fuzzification 8 Litteraturförteckning 9

FUZZY LOGIC. - Var går gränsen? Lovisa Rönmark lovro

LINKÖPINGS UNIVERSITET. Fuzzy Logic. Johan Brage 9/16/2012

FUZZY LOGIC. Christopher Palm chrpa087

729G11 Artificiell Intelligens Marcus Johansson Marjo581. Fuzzy logic. Marcus Johansson Marjo581

Fuzzy Logic: Den oskarpa skarpheten

2017% Fuzzy%Logic% %%%%%% LISA%NILSSON% %LISNI222%

Fuzzy logic. Julia Birgersson, julbi

Artificiell Intelligens II, 729g11 Linköpings universitet Fuzzy logic

Fuzzy Logic och dess implementering i ett företagsspel

Fördjupningsarbete HT 2012 FUZZY LOGIC

Beräkning med ord. -hur en dator hanterar perception. Linköpings universitet Artificiell intelligens Erik Claesson

När det oskarpa ger skärpa

Fussy sets och Fuzzy logik Luddigt eller självklart? Kognitionsvetenskap, 729G11 Sandra Svanberg, sansv418 19/09/2011 Linköpings universitet

Oskarp logik - en flervärdeslogik för framtiden? Karl Bruno Linköpings universitet

Fuzzy Logic. Ellinor Ihs Håkansson, ellih

Molly Lundberg 729G43 Kognitionsvetenskap mollu341 Artificiell Intelligens Linköpings Universitet. Fuzzy Logic. Vad är det och hur fungerar det?

Linköpings universitet

Probabilistisk logik 2

Optimeringslära Kaj Holmberg

Statistisk mönsterigenkänning

729G43 Artificiell intelligens / Maskininlärning 3. Marco Kuhlmann

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs...

Samråd har skett med utbildningsledare vid akademin för innovation, design och teknik för de kurser de ansvarar för.

Vardagssituationer och algebraiska formler

Programschema för Kandidatprogram i teknisk matematik, 180 hp Gäller för läsåret 2019/2020 Om programschemat

Alexander Medvedev Rum 2111 Dynamiska system

DIFFERENTIALEKVATIONER. INLEDNING OCH GRUNDBEGREPP

Anna: Bertil: Cecilia:

1.2 Polynomfunktionens tecken s.16-29

DEL I. Matematiska Institutionen KTH

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs...

Fuzzy%Logic% Linköpings&Universitet&

Case-based resoning. och dess användning inom sjukvården. Linköpings universitet Artificiell intelligens II 729G11 HT 2011

Introduktion till algoritmer - Lektion 1 Matematikgymnasiet, Läsåret Lektion 1

Optimeringslära Kaj Holmberg

LARS ULVELAND HOPFIELDNÄTVERK FÖR IGENKÄNNING AV DEGRADERADE BILDER OCH HANDSKRIVNA TECKEN

Begreppen "mängd" och "element" är grundläggande begrepp i matematiken.

7 Extremvärden med bivillkor, obegränsade områden

DIFFERENTIALEKVATIONER. INLEDNING OCH GRUNDBEGREPP

3 differensekvationer med konstanta koefficienter.

1 Suddig logik och gitter

Några viktiga satser om deriverbara funktioner.

LKT325/LMA521: Faktorförsök

dametric GMS-SD1 Gap Control Beskrivning GMS-SD1 GapControl SE.docx / BL Sida 1 (5)

Bygga intelligenta system med luddig logik. Josefin Carlbring (josca824) Linköpings universitet 729G43 Artificiell Intelligens

Begreppen "mängd" och "element" är grundläggande begrepp i matematiken.

International Olympiad in Informatics July 2011, Pattaya City, Thailand Tävlingsuppgifter Dag 2 Svenska 1.3. Papegojor

Ett Oskarpt Beslut. Om Oskarp Logik i Speldesign. Mikael Hedenström

1. (Dugga 1.1) (a) Bestäm v (3v 2u) om v = . (1p) and u =

Fallbaserat resonerande

729G43 Artificiell intelligens (2016) Maskininlärning 3. Marco Kuhlmann Institutionen för datavetenskap

de var svåra att implementera och var väldigt ineffektiva.

Ansiktsigenkänning med MATLAB

LAB 1. FELANALYS. 1 Inledning. 2 Flyttal. 1.1 Innehåll. 2.1 Avrundningsenheten, µ, och maskinepsilon, ε M

Probabilistisk logik 1

1(15) Bilaga 1. Av Projekt Neuronnätverk, ABB Industrigymnasium, Västerås Vt-05

Lösning av tentamensskrivning i Diskret Matematik för CINTE och CMETE, SF1610, tisdagen den 27 maj 2014, kl

, S(6, 2). = = = =

Optimeringslära Kaj Holmberg

Regression med Genetiska Algoritmer

Quine McCluskys algoritm

TANA17 Matematiska beräkningar med Matlab

Explorativ övning 7 KOMPLEXA TAL

Hur implementera algoritmerna på maskinnivå - datorns byggstenar

Optimala koder. Övre gräns för optimala koder. Gränser. Övre gräns för optimala koder, forts.

Öka prestanda i Shared-Cache multi-core processorer

Optimala koder. Det existerar förstås flera koder som har samma kodordsmedellängd. Enklaste fallet är att bara byta 0:or mot 1:or.

x 1 1/ maximum

Lösningsförslag till tentamen i SF1861 Optimeringslära för T. Torsdag 28 maj 2010 kl

Sidor i boken f(x) = a x 2 +b x+c

MA2047 Algebra och diskret matematik

SF1911: Statistik för bioteknik

R LÖSNINGG. Låt. (ekv1) av ordning. x),... satisfierar (ekv1) C2,..., Det kan. Ekvationen y (x) har vi. för C =4 I grafen. 3x.

1, 2, 3, 4, 5, 6,...

Algoritmer, datastrukturer och komplexitet

SF1661 Perspektiv på matematik Tentamen 24 oktober 2013 kl Svar och lösningsförslag. z 11. w 3. Lösning. De Moivres formel ger att

Neurala nätverk och språkigenkänning. Henrik Linnarsson. Linköping University

Sådana avbildningar kallar vi bijektioner mellan A och B (eller från A till B).

matematik Lektion Kapitel Uppgift Lösningg T.ex. print(9-2 * 2) a) b) c) d)

DFA2 Design For Assembly

NATIONELLT PROV I MATEMATIK KURS E VÅREN Tidsbunden del

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

2D Potentialen i en nervcell definieras normalt som skillnaden i spänning mellan dess axon och dendrit.

Algoritmer, datastrukturer och komplexitet

1. (3p) Bestäm den minsta positiva resten vid division av talet med talet 31.

Lösningar för tenta i TMV200 Diskret matematik kl. 14:00 18: Svar: Ja, det gäller, vilket kan visas på flera sätt (se nedan).

STABILITET FÖR LINJÄRA HOMOGENA SYSTEM MED KONSTANTA KOEFFICIENTER

Inlärning utan övervakning

Lösningsförslag, preliminär version 0.1, 23 januari 2018

Digitalitet. Kontinuerlig. Direkt proportionerlig mot källan. Ex. sprittermometer. Elektrisk signal som representerar ljud.

I en matchning ligger varje hörn i högst en kant. I en stig ligger varje hörn i högst två kanter.

v0.2, Högskolan i Skövde Tentamen i matematik

JavaScript Block Editor:

Laboration Fuzzy Logic

Transkript:

Fuzzy logic och fuzzy kontrollsystem - med neurala nätverk Sofie Nyström - sofny263 Artificiell Intelligens II 729G11 2012-09-16

Sammanfattning Detta arbete är gjort som ett fördjupningsarbete i kursen Artificiell Intelligens II vid Linköpings universitet. Arbetet går ut på att förklara generella begrepp inom fuzzy logic såsom operationer, fuzzy sets och medlemskapsfunktioner för att sedan beskriva hur ett fuzzy kontrollsystem fungerar och vad som sker i de olika modulerna. Slutligen sker en beskrivning av hur ett kontrollsystem byggt av fuzzy logic och neurala nätverk kan fungera. 2

Innehåll Sammanfattning... 2 Inledning... 4 Crisp sets & Fuzzy sets... 5 Medlemskapsfunktioner... 6 Operationer... 7 Fuzzy kontrollsystem... 9 Preprocessing... 9 Fuzzification... 10 Rule Base... 10 Inference Engine... 11 Defuzzification... 11 Postprocessing... 12 ANFIS-system... 12 Slutsats av ANFIS... 15 Diskussion... 15 Referenser... 16 3

Inledning Vid en första anblick kan fuzzy logic (på svenska: oskarp logik) verka som något ostrukturerat och ge intrycket att logiken behöver vidare definiering. När kunskapen växer inser man dock snart att det snarare handlar om en sorts logik som kan hantera osäkra värden och inte bara standardfallen True/False som klassisk logik hanterar. Fuzzy logic introducerades av Lotfi A. Zadeh vid University of California i Berkeley 1965 (L.A Zadeh 1965) och har sedan dess fram tills idag implementerats i olika system. Eftersom implementeringen av en strategi är intressant gås fuzzy kontrollsystem igenom i det här arbetet tillsammans med en beskrivning av hur ett sådant system tillsammans med neurala nätverk kan fungera. 4

Crisp sets & Fuzzy sets Ett fuzzy system består av ett fuzzy (sub)set. Vi är vanligtvis bekanta med vad som inom klassisk logik kallas crisp sets. Om X är alla reella värden mellan 0 och 100 så kan subset A av X definieras som 0 x 22, där alla element i A har värdet 1 eftersom de tillhör A, medan resterande element har värdet 0 eftersom de inte tillhör A. Denna indelning är väldigt sann/falsk och ett element kan inte tillhöra A till en viss grad. Traditionell eller klassisk logik saknar flexibilitet, framför allt vid vissa klassificeringar av till exempel inläst data. Som exempel kan vi säga att vatten är kallt vid 0 grader som en lägre gräns och 20 som en övre gräns, [0, 20]. Detta innebär att vattnet är kallt vid 20 grader, men varmt vid 21 grader (se fig. 1). Det är ett strukturellt problem, och man kan med samma fråga givetvis ställa sig vid godtyckligt gradantal. När ett element inte vill tillhöra en mängd till 0 eller 100 %, utan lite, lagom eller hyfsat mycket använder man sig av fuzzy sets. Detta innebär att ett element med värdet 0 inte är en medlem i A, med värdet 1 är en medlem i A och element med alla värden däremellan har ett gradvist medlemskap i A. Här kan det vara väl värt att sätta upp en distinktion mellan fuzzy logic och probabilistisk logik. Båda logikerna opererar över samma numeriska värde [0, 1], men ett element g med värde 0.5 innebär i probabilistisk logik att g tillhör A med 50 % chans medan detta i fuzzy logic innebär g:s grad av medlemskap i A är 50 % (M. Hellmann). Fig. 1. Jämförelse mellan crisp set och fuzzy set. 5

Medlemskapsfunktioner Varje element i X (om X är universum) är medlem i något fuzzy set till någon grad, även grad 0. Medlemskapsfunktionen brukar skrivas µ(x). Det finns olika funktioner att använda sig av, men triangulära och trapetser är de vanligaste. Funktionerna används för att rita upp fuzzy sets och beräkna vilken medlemsgrad elementen har i setet. Funktionerna bestäms ofta av en områdesexpert som är bekant med graderingarna och vet var gränsen för till exempel 100 % och 0 % medlemskap bör gå. Nedan finns medlemsfunktionen för en trapets och grafer till den samt till den triangulära varianten. 0, x a x a, a x b b a µμ (x; a, b, c, d) = 1, b x c d x, c x d d c 0, d x, x R Formel tagen från Jantzén (2006) Parametrarna a b c d betecknar olika hållpunkter för intervallet, och x är en variabel som rör sig inom intervallet. Den triangulära medlemsfunktionen har en liknande ekvation som den för trapets, skillnaden är att b = c och den har bara en topp. Det finns också den Gaussianska medlemsfunktionen som liknar den triangulära till väldigt stor del men har mjukare linjer. 6

Fig 2 och 3. Medlemskapsfunktioner i form av trapets och triangel. Ett problem som faller på designern av dessa set är hur formen bör se ut på funktionerna och hur många set som är nödvändiga och tillräckliga. Man brukar vilja ha set som är tillräckligt breda för att tillåta störningar i mätningen. Man vill också att seten skall överlappa varandra (Jantzén, 1998). Ett element är oftast medlem i mer än ett set, detta för att öka säkerheten så att inget element faller mellan två set och man får dåligt definierade tillstånd. Operationer Liksom operationer på crisp sets vill vi inom fuzzy logic kunna konjugera, unifiera och negera fuzzy sets. Operationerna liknar väldigt mycket de som används på crisp set, speciellt om vi också använder oss av medlemsintervallet [0,1]. På nästa sida kan vi som exempel säga att A representerar intervallet [0, 20] och B [17,25]. 7

Fig. 4. Mängd A Fig 5. Mängd B. Fig. 6. Unifieringen av A och B. Fig. 7. Konjunktionen av A och B. Fig 8. Negationen av A. 8

Fuzzy kontrollsystem Ett kontrollsystem uppbyggt av fuzzy logic används idag i konsumentprodukter som videokameror och riskokare men även i industriella processer som tunnelbanetåg och robotar. Precis som att fuzzy logic kan beskrivas som beräknande med ord hellre än med siffror kan ett fuzzy kontrollsystem beskrivas som beräknande med meningar hellre än med ekvationer (Jantzén 1998). Lingvistiska variabler beskrivs som fuzzy sets. A är lång är till exempel en lingvistisk variabel som skapar ett fuzzy set A där alla långa blir medlemmar, och ett fuzzy kontrollsystem klarar av att hantera dessa. Nedan följer en beskrivning av hur ett fuzzy kontrollsystem fungerar. Fig. 9. Illustrering av en Fuzzy controller. Hämtad från Jantzén (1998) Preprocessing Inputen till ett kontrollsystem kan vara ett crisp (hårt) värde från mätinstrument istället för lingvistiska värden som systemet önskar. Preprocessing kan vara att: Justera värden eller avrunda siffror Normalisera eller skala till ett specifikt standardiserat omfång (en operator matar in gränsvärden för till exempel högt, medium och lågt ) Filtrering för att reducera störningar När detta är gjort skickas datan vidare till controllern. 9

Fuzzification I den första delen av controllern konverteras varje del av inputdatan till grader av medlemskap genom att undersöka medlemskapsfunktioner. Varje input matchas med villkoren till reglerna för att bestämma hur väl villkoret matchar den instansen. Controllern har nu en grad av medlemskap som överensstämmer med varje inputvärde. Rule Base Klassificerare är en tillämpning av fuzzy theory som fungerar som ett regelsystem för att göra input till output, dvs. att flera fuzzy sets kombineras till ett nytt. Klassificeringsmomentet innebär att fuzzy sets kombineras (ofta i en tabell) till olika regler där varje regel mynnar ut i en klass (se fig. 10). En regel blir då IF A är tunn AND B är tjock AND C är medium AND D är medium THEN klass = klass1. Villkoret efter IF kallas för antecendenten och konsekvensen efter THEN kallas decendenten. (M. Hellmann) # Regel A B C D klass 1 tunn tjock medium medium klass1 2 tunn tjock tjock tunn klass2 3 tjock medium tunn medium klass3 4 medium medium tjock tunn klass4.. n? Fig. 10. Det kanske inte är nödvändigt att utvärdera varenda möjlig input-kombination (dvs. att skapa alla möjliga regler) eftersom vissa kombinationer kan ha väldigt låg eller till och med ingen sannolikhet att slå in. Är systemet erfaret i detta fall så kanske det kan själv utesluta dessa regler och då behöver färre regler utvärderas. (M. Hellmann) En lingvistisk modifierare (kallas också hedges) är en operation som modifierar betydelsen av en term, till exempel väldigt nära 1 där väldigt modifierar nära 1 och det blir en operation på ett fuzzy set. Very a kan till exempel beräknas som a 2, och slightly a kan beräknas som a 1/3. (Jantzén 1998) Universum innebär en rymd eller ett intervall inom vilket fuzzy set kan definieras. Det kan vara bra att göra en distinktion huruvida medlemskapsfunktionerna är diskreta (ändliga) eller 10

beständiga (Jantzén 2006). Är de diskreta är också universumet ändligt, och då måste intervallet definieras och värdet för varje punkt. Valet av datatyper kan styra valet av intervall, men vanliga intervall kan till exempel vara [-1, 1], [0, 4095] eller [-2047, 2048]. Inference Engine Inference Engine består av tre moment: Aggregation (sammanklumpning), aktivering och ansamling. Sammanklumpningsoperationen används för att räkna fram graden av uppfyllnad av ett villkor för en regel, dvs. en styrka för hur väl villkoret är uppfyllt (kallas även firing strength). Till exempel så genererar regel x ett medlemskapsvärde µ A för A och µ B för B. Sammanklumpningen är kombinationen µ A och µ B. Aktiveringen innebär en slutledning eller deduktion av en regel och den kan vara reducerad av firing strength. Om villkoret är IF A and IF B THEN så används min-operatorn, men om villkoret är IF A or IF B THEN så används max-operatorn. Min-operatorn väljer en output som gäller för det minsta medlemsvärdet medan max-operatorns gäller för det största. Ansamlingen innebär att alla aktiverade slutsatser samlas ihop till den slutgiltiga grafen genom unifiering. (Jantzén 1998) Defuzzification Kontrollsystemet har nu skapat en output som den vill skicka tillbaka, det slutgiltiga steget är bara att göra om det till en siffra som kan tolkas som en kontrollsignal vilket innebär att det resulterande fuzzy setet blir en crisp kontrollsignal. Det finns ett par olika Defuzzificationmetoder: Centre of gravity räknar ut medel för elementen i setet, dvs. grafens mittpunktsvärde. Formeln kan skrivas som u = ( ) ( ) där x i är ett flytvärde i ett diskret universum och µ(x i ) är medlemskapsgraden, dvs. summan av medlemskapsgraden för alla punkter gånger punkternas värde delat på medlemskapsgraderna för alla punkter. Är universumet oändligt används integralen istället för summan. Formeln har hög beräkningskomplexitet och är därför sämre att använda vid stora datamängder. Centre of gravity for singeltons har låg beräkningskomplexitet men används bara då outputens består av singeltons (fuzzy set med ett enda värde). Ekvationen skrivs 11

u = ( ) ( ) strength α i för regel i. där s i är positionen för varje singleton i universum och µ(s i ) är firing Mean of maxima (MOM) innebär att en punkt väljs som har den starkaste möjligheten, dvs. maximalt medlemskap. Om flera punkter har lika starkt medlemskap tas medelvärdet av punkterna. Ekvationen är u = { ( ) ( ( ))} vilket innebär att summan av alla positioner hos de maximala medlemskapen delas med antal punkter. Metoden har relativt bra komplexitet. (Jantzén 1998) Postprocessing Nu har controllern producerat en siffra som output, men vi är inte helt nöjda än. Siffran kanske måste omvandlas från standardintervallet [-1, 1] till en speciell enhet (typ meter) innan den skickas iväg, och detta görs i så fall i postprocessing-stadiet. ANFIS-system Flera studier har gjorts på kontrollsystem som använder sig både av neurala nätverk och av fuzzy logic. I studien beskriven nedan handlar det om en robot som kan plocka upp saker av varierande form. Denna robot måste anpassa sin gripklos storlek efter objektet som skall plockas upp och dessutom känna igen sin omgivning och objekt som plockats upp tidigare. ANFIS står för Adaptive Neuro Fuzzy Inference Strategy och strategin skall alltså kontrollera förflyttningens input hos den följsamma robotklon. (Petkovic m.fl. 2012) Ett kontrollsystem skall kontrollera varje operation i ett beslutsfattande system, detta för att ge stabilitet till systemet när det är en störning och hindra maskineriet från ytterligare skada. Fuzzy logic-kontrollern är ju en sorts algoritm som konverterar lingvistiska variabler (med regler från expertkunskap) till en automatisk kontrollstrategi. Huvudproblemet med fuzzy logic-kontrollern har enligt Petkovic m.fl. att göra med val av regleringsparametrar. ANFISmetoden anpassar dock parametrarna till reella data för problemet. Neurala nätverk är ett anpassningsbart system som omformar sin struktur baserat på vilken information den får i träningsfasen (Artificial Neural Network, Wikipedia). För ANFISsystemet gäller också att modifiering av regler är möjligt under träningen, att optimering kan 12

göras manuellt och att det behöver ett tränings-set med data som innehåller de önskade in- och outputen. Medlemskapsfunktionerna är i ANFIS-systemet anpassade efter in- och output-datan. ANFIS handlar om att ta ett initialt fuzzy kontrollsystem och justera det med en back propagationmetod (vanlig metod för att träna neurala nätverk med regler) baserat på en samling in- och output-data. Systemet har en människoliknande expertis inom en viss domän och anpassar sig också för att lära sig göra bättre i förändrande miljö. I ANFIS känner neurala nätverk igen mönster och hjälper till att anpassa systemet efter miljön. Systemet kombinerar två inputs (förflyttningen av greppare och inbäddade sensorers spänningsändring) till en output; den önskade input-förflyttningen enligt givna inputs. Att förstå kunskapen som neurala nätverk lärt sig är svårt till skillnad från ett fuzzy kontrollsystem vars regler är lätta att tyda. Hybridmetoden av dessa två kallas Neuro Fuzzy Networks eller Adaptive Neuro Fuzzy Inference System. Huvudtanken med strategin är att ge en metod för fuzzy modellering att lära om data. (Petkovic m.fl., 2012) Fig. 11. ANFIS-struktur. Det första lagret i ANFIS-strukturen tar in två outputs, i Petkovic studie var det sensorernas spänningsförändring och grepparens inputrörelse. Som output i lager fem returneras den korrekta inputrörelsen. En struktur för hur ANFIS-systemet ofta är uppbyggt finns i Fig. 11. Strukturen består av olika lager, och varje lager har noder. Dessa noder kan var fyrkantiga 13

(adaptiva och använder sig av parametrar) eller cirkulära (fixerade och saknar parametrar). Ett parameterset hos ett nätverk är alla parameterset hos de adaptiva noderna unifierade. För att få de önskade in- och outputsen uppdateras parametrarna med träningsdata och inlärningsprocedurer. Nedan följer en genomgång av hur ANFIS-strukturen fungerar utefter de olika lagren. L 1 : Hit kommer inputvariablerna (spänningsförändring och inputrörelsen) till första lagret i form av medlemskapsfunktioner. Varje nod är en adaptiv nod med nodfunktionen O 1 i = µ AB (x) och µ CD (x) där x är inputen till noden, AB/CD är lingvistiska variabler och O 1 i är hur väl x satisfierar till exempel AB. I denna studie valdes tre trapetsfunktioner med maximum 1 och minimum 0, precis som i formeln på sid. 6 där {a, b, c, d} är parametersetet som i första lagret är premissparametrar. L 2 : Andra lagret kalla medlemskapslagret. Här undersöks tyngden hos alla medlemskapsfunktioner, och noderna är fixerade. De inkommande signalerna multipliceras och produkten skickas ut som w i = µ AB (x) * µ CD (x). Varje nod representerar firing strength hos en regel. L 3 : Regellagret är det tredje lagret. Varje nod (neuron) i lagret utför en matchning med premissreglerna, dvs. räknar ut aktiveringsnivån för varje regel. Regellagret är fixerat och det räknar ut ration hos varje regels firing strength relativt till summan av alla reglers firing strength. Outputen kallas normaliserad firing strength. L 4 : Det fjärde lagret kallas defuzzification-lagret. Här genereras outputvärdena som kommer från inferensen av reglerna. Lagret består av adaptiva noder med funktionen O 4 i = w * i xf = w * i (p i x + q i y + r i ) där w i är outputen från tredje lagret och {p i, q i, r i } kallas konsekventparametrar. L 5 : Outputlagret kallas det sista lagret som bara består av en fixerad nod. Här summeras alla inputs från fjärde lagret och transformerar dessa fuzzy klassificeringar till ett binärt resultat. Den totala outputen räknas ut som summan av alla inkommande signaler på formeln O = w xf =. 14

Slutsats av ANFIS Kontrollsystemet som utformades kan hantera tre olika greppningsmönster och kontrollera inputrörelsen hos robotarmen. De tre mönstren är konvext, konkavt och inget objekt. De huvudsakliga fördelarna är beräkningseffektiviteten och förmågan att anpassas så väl med optimering och anpassningstekniker. Kontrollstrategin är både enkel, pålitlig och bör vara lätt att implementera. ANFIS-strategin kan också användas med system som tar mer komplexa parametrar. Operationstiden är snabbare än för andra kontrollsystem, den långsamma operationen är träningen av medlemskapsfunktionerna. Diskussion Fuzzy logic känns som ett väldigt bra komplement till den klassiska och probabilistiska logiken. Jag gillar hur den är definierad och att element kan ha ett gradvist medlemskap i ett set. Ett fuzzy kontrollsystem kan göra en mer mänsklig kontroll av hur ett system utför sina handlingar, ett steg i rätt riktning mot intelligenta maskiner. Kan man dessutom kombinera fuzzy logic med andra strategier (t.ex. neurala nätverk som i ANFIS-strategin) så tror jag att implementeringen kan vara väldigt nyttig i olika system. De lingvistiska variablerna kan också underlätta för användaren som inte behöver uttrycka sig i numeriska termer. Nackdelen som jag kan se är att kontrollsystem och liknande kan få svårt att skilja rätt från fel i den stora gråzonen och att strategierna ifrågasätts pga. subjektiva åsikter hos användaren. 15

Referenser Introduction to Fuzzy Logic, M. Hellmann http://see.xidian.edu.cn/faculty/xbgao/fuzzysystem/introduction/fuzzy.pdf Design of Fuzzy Controllers, J. Jantzén. 1998. http://site.iugaza.edu.ps/mahir/files/2010/02/design.pdf Tutorial on Fuzzy Logic, J. Jantzén. 2006. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.125.2096&rep=rep1&type=pdf Adaptive neuro fuzzy controller for adaptive compliant robotic gripper, Petkovic m.fl. 2012. http://www.sciencedirect.com.lt.ltag.bibl.liu.se/science/article/pii/s0957417412007889 Fuzzy sets, information and control, L.A. Zadeh. 1965 http://www-bisc.cs.berkeley.edu/zadeh-1965.pdf ANFIS: Adaptive-Network-Based Fuzzy Inference System, Jyh-Shing Roger Jang. 1993 http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=256541 http://en.wikipedia.org/wiki/fuzzy_control_system http://en.wikipedia.org/wiki/artificial_neural_network Bandemer, Hans. Gottwald, Siegfried (1995). Fuzzy Sets, Fuzzy Logic Fuzzy Methods with Applications. John Wiley & Sons Ltd. 16