HKGBB0 Artificiell Intelligens Fördjupningsarbete HT 06 Erik Prytz eripr541 2006-10-12 Fuzzy Logic and Fish Extinction Vulnerability Estimation Erik Prytz [email protected] 850301-8916 HKGBB0 Artificiell Intelligens Fördjupningsarbete HT 06 Erik Prytz eripr541 Sammanfattning I detta arbete handlar om en logik som kallas för fuzzy logic. Fuzzy logic är en logik med multipla sanningsvärden. A behöver inte vara helt sant, eller helt falskt, till skillnad från klassisk, tvåvärd logik. Mängden operationer som kan utföras inom fuzzy logik är till stor del samma som kan göras i den traditionella logiken. Tack vare att man kan representera olika sanningsvärden lämpar sig fuzzy logic väl för att representera naturligt språk. Detta gör det till en användbar metod inom till exempel expertsystem och kontrollsystem. Expertsystemet som skrevs av Cheung et al (2005) använder sig av just fuzzy logic och presterar bättre än liknande system som är baserade på klassisk logik. 1 HKGBB0 Artificiell Intelligens Fördjupningsarbete HT 06 Erik Prytz eripr541 Innehållsförteckning Sammanfattning ......................................................................................................................... 1 Innehållsförteckning................................................................................................................... 2 1.1 Inledning............................................................................................................................... 3 1.2 Syfte ................................................................................................................................. 3 1.3 Källor................................................................................................................................ 3 2.1 Historien bakom fuzzy logic ................................................................................................ 4 2.2 Hur fungerar Fuzzy Logic? .............................................................................................. 4 2.3 Fuzzy Set Theory ......................................................................................................... 4 2.4 Beräkningar inom Fuzzy Set ............................................................................................ 6 2.5 Medlemsskapsfunktion..................................................................................................... 7 3.1 Fuzzy Logic.......................................................................................................................... 8 3.2 Logiska Operatorer........................................................................................................... 8 3.3 Naturligt Språk och Hedges ............................................................................................. 8 3.4 If - Then............................................................................................................................ 9 4.1 Expertsystem ...................................................................................................................... 10 4.2 Systemet ......................................................................................................................... 10 4.3 Tekniska Specifikationer................................................................................................ 11 4.2 Sammanfattning ............................................................................................................. 12 5.1 Diskussion .......................................................................................................................... 13 Källhänvisning ......................................................................................................................... 14 2 HKGBB0 Artificiell Intelligens Fördjupningsarbete HT 06 Erik Prytz eripr541 1.1 Inledning I detta arbete kommer jag att avhandla ämnet fuzzy logic, främst med inriktning på detta ämnes användning inom artificiell intelligens. Först kommer jag att förklara en del kring vad som skiljer fuzzy logic (FL) från vanlig logik, och sedan en del historia och bakgrund till varför denna typ av logik uppkom. Därefter kommer ett särskilt expertsystem, avsett att bedöma graden av hot om utrotning för fiskar, att granskas för att visa på ett praktiskt exempel av FL. 1.2 Syfte Syftet med denna rapport är att granska vad som skiljer fuzzy logic från andra typer av logik. Detta kommer främst att göras med avseende på syftet och meningen bakom fuzzy logic, vilket även inkluderar en studie av ett expertsystem som använder sig av denna logik. Fuzzy logic används inom många andra områden, till exempel kontrollsystem, men dessa kommer inte att behandlas i den här rapporten. 1.3 Källor De källor som främst använts är en mängd böcker inom ämnet samt en rapport om ett expertsystem som kan bedöma graden av hot om utrotning hos fiskar (”A fuzzy logic expert system to estimate intrinsic extinction vulnerabilities of marine fishes to fishing”). 3 HKGBB0 Artificiell Intelligens Fördjupningsarbete HT 06 Erik Prytz eripr541 2.1 Historien bakom fuzzy logic ”If we consider all animals that have ever lived instead of just modern animals, such words as ’human’ and ’bird’ become just as blurred and unclear at the edges as words like ‘tall’ and ‘fat’.” (Dawkins 1991, s. 262) Ordet ”fuzzy” får en osökt att tänka på den svenska översättningen, som närmast är ”luddig”. Att kombinera orden logik och luddig verkar närmast omöjligt. Logik är absolut sanning, logik är bevis på bevis för att visa att något antingen är sant eller falskt. Det är emellertid just detta som fuzzy logic vill råda bot på. Fuzzy logic skapades av Lotfi Zadeh på 60-talet som ett verktyg för att representera vår värld i logisk form. Det fanns då ett problem som vanlig förstaorderslogik hade svårt att hantera, nämligen att allt i vår verkliga reella värld inte går att representera i termer av sant eller falskt. En lampa till exempel behöver inte vara tänd eller släckt. Man kan ha en dimmer och ställa in lampan att lysa mer eller mindre i ett kontinuerligt spektra. Vi människor kan enkelt uttrycka en sådan sak i att ”lampan lyser ganska lite”, ”lampan lyser starkt” eller ”lampan lyser hyfsat o-starkt”. Det hela började med Zadeh’s rapport 1965 (Baldwin, 1996), som handlade om Fuzzy Sets. Efter att detta arbete publicerats arbetade Zadeh vidare och utvecklade det som är känt som fuzzy logic. Fuzzy logic blev till en början inte vidare spritt, men ibland annat Japan upptäcktes hur man kunde använda fuzzy control theory, en slags kontrollsystem för olika system, i kommersiellt syfte. I och med detta började även fler länder intressera sig för fuzzy logic. (Baldwin 1996) 2.2 Hur fungerar Fuzzy Logic? 2.3 Fuzzy Set Theory För att förstå fuzzy logic måste man först förstå det som kallas fuzzy set theory. Ett vanligt missförstånd är att fuzzy logic inte innehåller något som är sant eller falskt. Detta stämmer inte, och kommer förmodligen från ett av de mer grundläggande dragen inom fuzzy set theory; nämligen att man tilldelar ett objekt ett värde mellan 0 X 1. Värdet anger till vilken grad X tillhör ett särskilt mängd A, alltså till vilken grad X har egenskapen (S. Russel, 2003). Noll representerar då falskt, och ett representerar sant. Alla grader däremellan är alltså ett varierande sanningsvärde. Ett klassiskt exempel är gamla människor: Om personen Nils är 58 år, är han då gammal (alltså tillhör mängden A som är ”gamla människor”)? I normal förstaordnings logik skulle vi behöva ett fast definierat värde, till exempel 60. Enligt alla konstens regler skulle logiken säga 58 < 60, alltså är inte Nils gammal. I fuzzy logic däremot kan vi tilldela Nils värdet 0,75 vilket kan utläsas som att han är gammal till tre fjärdedelar, eller tillhör mängden gamla människor till 75 %. 4 HKGBB0 Artificiell Intelligens Fördjupningsarbete HT 06 Erik Prytz eripr541 För att visa detta grafiskt kan man göra en enkel graf. Vi väljer att sätta åldern 1-25 år som ung (0-1 års ålder räknas man som spädbarn), och att man därefter blir äldre (eller mindre ung): Ungdomlighet 1 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0 Ålder 0 5 10 15 20 25 30 35 40 45 50 55 60 Nu är det inte alltid som man lätt kan hugga ett värde mellan 0 och 1 ur luften. Det finns ett antal sätt att få fram detta sanningsvärde, här är några exempel; 1. Att använda sig av sin egen subjektiva uppfattning. Detta må vara ett väldigt enkelt sätt att mata in sanningsvärden i ett system, men kanske inte alltid det snabbaste eller mest konsekventa då det är baserade på en eller flera människors egna åsikter. 2. Omvandlade sannolikhetstabeller/sannolikheter kan användas för att tilldela olika sanningsvärden. Det behöver nödvändigtvis inte vara en rak av omvandling mellan P(x) till sanningsvärdet. 3. Faktiska värden. Det kan vara uppmätta eller insamlade data. Insamlade data är sällan i en lämplig form, ofta finns en mängd värden som ska användas och vardagliga termer på dessa. Man säger att värdena är i intervallet [0, ]. När = 1 säger man att man har normal fuzzy logic. För att göra detta måste man normalisera värdena, detta kan enkelt göras genom att dela samtliga värden i en mängd med mängdens supremum. Supremum är det högsta av samtliga tal i mängden, och detta ger värden mellan 0 X 1. Man kan matematiskt uttrycka normaliseringen på detta sätt; sup µ A( ) = 1 X Där A är en mängd objekt i universumet X, och är sanningsvärdet. Ett annat exempeluttryck från Cai (1996) är följande; 5 HKGBB0 Artificiell Intelligens Fördjupningsarbete HT 06 Erik Prytz eripr541 Där universum A består av åldrarna [0,100] och vi definierar åldersgruppen ung som alla värden som tillhör intervallet 0-25. Dessa får sanningsvärdet 1, då de är unga. När vi sedan ska bestämma i vilken grad övriga åldrar är använder beräknar vi detta. För att återgå till mitt förra exempel med Nils som är 58 år gammal (eller ung beroende på synsätt) kan vi räkna på ((((58-25)/5)²)+1)-1 = 0,022. Man kan då sluta sig till att Nils är väldigt lite ung. (Kantrowitz et al 1997; Kartalopoulos 1996; Cai 1996; Ralescu et al 1997) Ett annat vanligt missförstånd är att det är fuzzy logic som oprecist försöker beskriva vår värld, medan det i själva verket är tvärtom; Fuzzy logic är ett väldigt exakt verktyg för att beskriva vår luddiga (fuzzy) värld. Som tidigare visats finns det många olika beräkningar att göra med fuzzy sets (och fuzzy logic som jag kommer visa i ett senare kapitel). 2.4 Beräkningar inom Fuzzy Set Det finns många olika typer av beräkningar man kan göra med hjälp av fuzzy sets. I princip allt man kan räkna på vanliga mängder kan även användas för fuzzy sets, om än i lite annan form. Cai (1996) ger i Introduction to Fuzzy Reliability några exempel på hur vanlig mängdlära kan överföras till fuzzy sets; ”A is empty, denoted by A = Ø, if its support if empty” (Cai 1996) Det betyder att i ett universum U, om alla element i mängden A har värdet 0 så är A tom. Vidare visas komplementet till A, union, snitt och produkt i följande formler; Union, snitt och komplement kan med fördel representeras i dessa grafer: 1 0,9 0,8 0,7 0,6 A 0,5 B 0,4 0,3 0,2 0,1 0 1 2 3 4 5 6 7 A i union med B är området under de tjocka linjerna. 6 HKGBB0 Artificiell Intelligens Fördjupningsarbete HT 06 Erik Prytz eripr541 Området mellan de två tunnare linjerna är A snitt B (Pedrycz & Gomide 1998). Detta är ett enkelt sätt att förstå hur union och snitt i fuzzy set theory hänger ihop, kopplingen till Venn-diagram är väldigt tydlig. 1 0,9 0,8 0,7 0,6 A 0,5 Icke-A 0,4 0,3 0,2 0,1 0 1 2 3 4 5 6 7 8 9 10 11 Komplementet till A (Fullér 2000). 2.5 Medlemsskapsfunktion Graferna som tidigare visats var varit enkla, räta funktioner. Ett sanningsvärde behöver dock inte ha en rät linje mellan falskt/sant, utan kan egentligen se ut lite hur som helst. Det finns dock ett antal standardgrafer som är de mest vanligt förekommande, några av dem kommer vi även att se under kapitlet om expertsystemet. Grafen över komplementet till A är en typisk så kallade triangulär funktion. En annan mycket vanlig graf är den trapeziodala funktionen: S- Funktion Trapez iodal Funktion 1 1 0,9 0,9 0,8 0,8 0,7 0,7 0,6 0,6 0,5 0,5 0,4 0,4 0,3 0,3 0,2 0,2 0,1 0,1 0 1 2 3 4 5 6 Trapeziodal funktion. 7 8 9 10 11 12 13 14 15 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 S-funktion Den så kallade S-funktionen är ett exempel på en graf där linjen inte går i en rät funktion. Det finns även exponentiella funktioner, som aldrig når värdet noll och som därför inte kan sägas vara helt falska vid något givet tillfälle. 7 HKGBB0 Artificiell Intelligens Fördjupningsarbete HT 06 Erik Prytz eripr541 3.1 Fuzzy Logic Booleansk logik, tvåvärd logik, hanterar enbart två sanningsvärden, sant eller falskt. Då fuzzy logic kan anta dessa två värden, och oändligt många fler, kan man se det som att booleansk logik är en del av fuzzy logic. Att fuzzy logic är något mer, som innefattar även den mer traditionella logiken. ”For the extreme case, where the distribution is of ‘zero’ width, the membership function is reduced to singularities; in other words, the fuzzy logic reduces to a crisp logic. If the singularities are of two possibilities, we then have binary logic.” (Kartalopoulos 1996 s122) “Any logical system can be fuzzified.” (Fullér, 2000, s V) 3.2 Logiska Operatorer Medan normal logik använder sig av operatorerna AND och OR (konjunktion och disjunktion) samt NOT på följande sätt; AND (konjunktion): X och Y ska båda vara sanna för att X ^ Y = True. OR (disjunktion): Antingen X eller Y är sann för X v Y = True. NOT ( ): Negerar X. AND samt OR är ekvivalent med union respektive snitt, NOT är ekvivalent med komplement, (Kartalopoulos 1996) och i fuzzy logic används en annan metod för att visa på dessa operatorer. Vi låter A och B vara två fuzzy mängder och kan då visa att; AND: min(A( ),B( )) OR: max(A( ),B( )) NOT: 1 – A( ) (Pedrycz & Gomide 1998) Den grafiska representationen är densamma som för konjunktion, disjunktion och komplement. 3.3 Naturligt Språk och Hedges När vi i dagligt tal pratar om i princip vad som helst använder vi oss gärna av ord som förstärker det vi vill få fram. Jag kanske inte uttrycker mig som ”Nils är gammal”, utan istället uttrycker det kraftigare i form av ”Nils är verkligen riktigt jättegammal!”. Då fuzzy logic vill kunna ta in så mycket som möjligt av det naturliga talet används något som kallas för hedges. Man kan dela upp en mening, till exempel ”Nils är väldigt gammal och inte ung” i tre olika beståndsdelar (Pedrycz & Gomide 1998): 8 HKGBB0 Artificiell Intelligens Fördjupningsarbete HT 06 Erik Prytz eripr541 1. Primära termer. 2. Hedges. 3. Negationer och konjunktioner. Där de primära termerna i föregående exempel skulle vara ”gammal” och ”ung”. Hedges skulle vara ”väldigt” och ”och” samt ”inte” skulle vara negationer och konjunktioner. För att bära med oss denna förändring i värde som ”väldigt” har på begreppet ”gammal”, kan man se ”väldigt” som en operator som påverkar sanningsvärdet för ”gammal”. Hur detta går till rent matematiskt beror helt på hur man vill röra sig på skalan. Ett starkt uttryck kanske man vill ge en större effekt på ett uttryckt en ett svagare adverb/adjektiv. Exempel på operationer som ger större effekt är att upphöja sanningsvärdet i två och mindre effekter kan uppnås genom plus eller minus. 3.4 If - Then När fuzzy logic implementeras i expertsystem eller kontrollsystem sker detta oftast genom en mängd If/Then-regler (Kartalopoulos 1996; Pedrycz & Gomide 1998; Fullér 2000). Dessa kan typiskt se ut på följande sätt (Kartalopoulos 1996); IF A1 AND/OR B1 THEN H11, else IF A2 AND/OR B1 THEN H21, else IF A1 AND/OR B2 THEN H12, else IF A2 AND/OR B2 THEN H22 Dessa if-satser använder sig oftast av den lingvistiska expertkunskap som systemet har tillgång till. Systemen kan även ha olika många inputs och outputs. Till exempel kan vi välja att definiera ett multi-input-multi-output (MIMO) eller ett multi-input-single-output (MISO) system. Ett exempel från Fullér (2000) på ett MISO-system ser ut som följande; R1: if x is A1 and y is B1 then z is C1 also R2: if x is A2 and y is B2 then z is C2 also … also Rn: if x is An and y is Bn then z is Cn Det finns även sätt att bryta ned if-satserna till mindre genom att ta uttryck likt if Ai and Bj and Ck, then Hijk, else och bryta ned till följande if Ai and Bj, then Hij If Hij and Ck, then Hijk Man kan säga att Hij är en mellanvariabel (intermediate variable) (Kartalopoulos 1996). 9 HKGBB0 Artificiell Intelligens Fördjupningsarbete HT 06 Erik Prytz eripr541 4.1 Expertsystem Ett expertsystem som använder sig av fuzzy logic är det system som utvecklades av William W. L. Cheung, Tony J. Pitcher samt Daniel Pauly, som beräknar till vilken grad en fiskart är utrotningshotad. Genomgången av systemet är baserat på deras rapport som publicerades i Biological Conservation 123 (2005) 97-111 s. 97 med titeln ”A fuzzy logic expert system to estimate intrinsic extinction vulnerabilites of marine fishes to fishing”. 4.2 Systemet Motiveringen till att de började arbeta på detta system var att en ökad mängd bevis på att fler och fler fiskarter, globalt sett, är i riskzonen för utrotning. Detta framförallt med avseende på kommersiellt fiske som direkt eller indirekt ökar graden av utrotningshot. Då vanlig bedömning, utförd av människor, kräver en djup förståelse av populationslära och i vissa delar av världen inte går att utföra på grund av brist på pengar och eller mänskliga resurser var tanken att ett expertsystem skulle med hjälp av stora databaser lösa problemet istället. Detta skulle göras med hjälp av ett antal utvalda fakta om given fiskart, där den fakta man använder sig av är relevant för graden av utrotningshot. Detta skulle alltså fungera som en slags heuristik för att systemet skulle kunna göra en bedömning om graden av utrotningshot på en skala mellan 0 till 100, med fuzzy mängder av lingvistiska termer. Systemet skulle alltså ta en större mängd inputs och ge upphov till ett tillhörighetsvärde på följande graf: De variabler som matades inkluderade; max längd, ålder vid könsmognad, levnadstid, von Bertalanffys växtparameter K (VBGF), naturlig dödlighetsnivå, fruktsamhet, styrkan hos det spatiala beteendet samt geografisk spridning. Dessa var variabler som via publicerad litteratur kunde knytas till sårbarheten för fiske. Därefter utförde systemet en mängd beräkningar som placerade fisken någonstans längs grafen till höger. För de olika in-parametrarna valde de att först lägga lika stor vikt vid samtliga, och lägga ett tröskelvärde för när en heuristik skulle börja gälla. De satte denna tröskel till 0,2, vilket innebar att systemet betraktade de premisser som fanns som falska tills sanningsvärdet nådde 0,2. Detta för att sortera ut de premisser som antog väldigt låga sanningsvärden. Detta tröskelvärde togs fram genom att variera värdet och sedan se hur slutresultatet blev. En intressant detalj är att Cheung et al (2005) även konstruerade ett expertsystem som byggde på traditionell logik, men med samma regler och attribut. Den största skillnad detta medförde 10 HKGBB0 Artificiell Intelligens Fördjupningsarbete HT 06 Erik Prytz eripr541 var att en fisk inte längre kunde anses vara två attribut samtidigt. Till exempel kunde inte en fisk av en viss längd vara till 0,8 i Large och 0,2 Medium. När sedan systemet (det fuzzy logic-baserade) uppskattade utrotningshotet med utgångspunkt från de ekologiska parametrarna och fiskarternas specifikationer visade det sig att den var signifikant relaterad till dem kategori av utrotningshot som IUCN (the World Conservation Union) tilldelat fiskarten. Däremot gällde samma korrelation inte då metoden med klassisk logik provades. Den slutsats som Cheung et al (2005) kom fram till var att deras studie visade dels på att fuzzy logic i ett expertsystem ger ett bättre resultat än klassisk logik. Dessutom noterade de att; ”Comparisons with empirical population abundance trends showed that a fuzzy system could be used to predict the intrinsic vulnerability of marine fishes.” Cheung et al (2005) Detta betyder alltså att ett system kan användas i syftet att kontrollera olika fiskarters känslighet. Tyngdpunkten låg alltså på systemets förmåga att ge en varning i förväg om att en art är hotad. 4.3 Tekniska Specifikationer Systemet utvecklades med hjälp av Microsoft Excel samt Visual Basic for Applications. De samband mellan livshistoria och ekologiska faktorer som kunde knytas till graden av utrotningshot formulerades som en mängd ”if-then”-regler. Några exempel är; Attribut 1 1 1 1 2 2 2 2 3 3 3 3 Regel 1 2 3 4 5 6 7 8 9 10 11 12 IF IF IF IF IF IF IF IF IF IF IF IF Premiss Maximum lenght is very large Maximum lenght is large Maximum lenght is medium Maximum lenght is small Age at first maturity (Tm) is very high Age at first maturity (Tm) is high Age at first maturity (Tm) is medium Age at first maturity (Tm) is low Maximum age (T max) is very high Maximum age (T max) is high Maximum age (T max) is medium Maximum age (T max) is low THEN THEN THEN THEN THEN THEN THEN THEN THEN THEN THEN THEN Konsekvens Vulnerability is very high Vulnerability is high Vulnerability is moderate Vulnerability is low Vulnerability is very high Vulnerability is high Vulnerability is moderate Vulnerability is low Vulnerability is very high Vulnerability is high Vulnerability is moderate Vulnerability is low Utdrag från Table 1 från ”A fuzzy logic expert system to estimate intrinsic extinction vulnerabilites of marine fishes to fishing”. (Cheung et al, 2005) Trapezoida och triangulära funktioner valdes för både in-värden och slutresultatet, i formen av trapezoiderna i vardera ände av X-skalan, med ett antal triangulära funktioner däremellan. Dessa överlappade varandra en hel del, vilket också var meningen. För att sedan räkna ut hur olika regler skulle vägas mot varandra när det kom till slutresultatet vägdes samtliga med en vikt på 0,5. I andra ord; en factor på 0,5 ”means we have 50% of belief to the validity of the rule.” (Cheung et al, 2005) 11 HKGBB0 Artificiell Intelligens Fördjupningsarbete HT 06 Erik Prytz eripr541 Formeln som användes var: Membershipconclusion = Membershippremise * CF Där CF representerar viktningen. En annan viktig detalj när systemet skulle designas var de lingvistiska termer som fanns i de databaser som användes. Cheung et al (2005) valde att använda sig av en metod som gav ett basvärde och som därefter multiplicerade med en faktor beroende på vilken term som användes. Detta är enligt mig ett typiskt exempel på en variant av hedges. Den faktor som de granskade var framförallt hur fiskarten rör sig genom livet, på engelska spatial behaviour. Linguistic Descriptions Multiplication Usually solitary/pair -40% Occasionally/sometimes/alternately/may/probably/loose/small -40% Sometimes solitary/pair -20% Presumably/apparently -20% Frequently/often 20% Commonly/usually/large/dense 40% Table A.1 från ”A fuzzy logic expert system to estimate intrinsic extinction vulnerabilities of marine fishes to fishing”. (Cheung et al, 2005) Genom att kombinera dessa faktorer i formeln: S = B * (1 + A1 + A2 + ... + An) Där S är den totala styrkan hos det spatiala beteendet och n är antalet lingvistiska termer. Ett exempel från rapporten ser ut så här: ”Callionymus limiceps (round-headed dragonet) is described as ‘usually in small aggregations’ in FishBase. The baseline spatial behaviour strength for ‘aggregation’ is 40, the multiplication factors for ‘usually’ and ‘small’ are 40% and -40%, respectively. Therefore, the spatial behaviour strength is calculated as: S = 1/1 * (1 + 40% - 40%) * 40 = 40.” Genom att kombinera de olika medlemskapen efter viktningen nåddes en slutlig konklusion. Cheung et al (2005) använde sig av metoden: Membershipe = Membershipe-1 + Membershipi * (1 – Membershipe-1) För att sammanfoga resultaten från reglerna. Membershipe är det slutliga sanningsvärdet efter att ha kombinerat e regler, och Membershipi är sanningsvärdet för konklusionen av regel i. 4.2 Sammanfattning Cheung’s et al (2005) expertsystem använder sig av fuzzy logic och kunde i tester bevisa sig bättre än samma system byggt på traditionell logik. 12 HKGBB0 Artificiell Intelligens Fördjupningsarbete HT 06 Erik Prytz eripr541 Det visar även på att fuzzy logic har en mängd användningsområden och att expertsystem fortfarande är aktuella och intressanta forskningsobjekt. Till exempel kan systemet som tagits upp under 4.1 användas med fördel för att övervaka fiskbestånd i olika delar av världen. En klar fördel med fuzzy-logic baserade system är att kunskapen ligger lätt abstraherad i form av IF-THEN satser som kan ändras efter behov. 5.1 Diskussion Fuzzy logic har utvecklats mycket sedan det först dök upp i mitten på 60-talet. Många olika användningsområden har utvecklats, förfallit och återuppstått. Zadeh själv sa i en intervju (Blair, 1994) att; “I expected people in the social sciences-economics, psychology, philosophy, linguistics, politics, sociology, religion and numerous other areas to pick up on it. It' s been somewhat of a mystery to me why even to this day, so few social scientists have discovered how useful it could be. Instead, Fuzzy Logic was first embraced by engineers and used in industrial process controls and in "smart" consumer products such as handheld camcorders that cancel out jittering and microwaves that cook your food perfectly at the touch of a single button. I didn' t expect it to play out this way back in 1965.” Zadeh (1994) Det kanske ligger något i vad Lotfi här get uttryck för; att fuzzy logic skulle kunna tillämpas inom så mycket mer än expertsystem eller kontrollsystem. Just kontrollsystemen är annars något som fuzzy logic används flitigt inom. Många av våra dagliga hushållsapparater, till exempel tvättmaskiner, använder sig av kontrollsystem som baseras på fuzzy logic. Det är framförallt i Japan som Fuzzy control systems används i stor skala, då detta land snabbt tog till sig tekniken med fuzzy logic och såg att den kunde utvecklas och användas kommersiellt. Mina egna åsikter efter att jag har studerat ämnet djupare är att fuzzy logic är en bra metod att använda inom många områden, där expertsystem är ett typiskt exempel. Några nackdelar finns dock. En av dessa är att dess tolkningar av naturligt språk kan vara väldigt kontextberoende. Om Lisa, 150 cm lång, uttrycker att Pelle är lång får det en helt annan betydelse än om Jimmy, 210 cm lång, uttrycker samma mening. Däremot anser jag det bra att man kan spegla (oändligt) många sanningsvärden i en logik. För att kunna representera vår värld är det enligt mig nödvändigt, trots tidigare nämnda problem med tolkningar. Ett klassiskt exempel på hur fuzzy logic kan hantera vissa situationer bättre än klassisk logik är en höstack. Om jag tar och lägger ett strå i taget på ett golv, när är det tillräckligt många strån för att det ska vara en höstack? Istället för att sätta en gräns på 1 853 569 stycken strån (eller annat lämpligt nummer) för att göra en stack som man skulle bli tvungen att göra med klassisk logik kan man se det som att denna mängd strån rör sig mot ett större tillhörandevärde för mängden ”stackar”. 13 HKGBB0 Artificiell Intelligens Fördjupningsarbete HT 06 Erik Prytz eripr541 Källhänvisning 1 S. Kartalopoulos (1996), Understanding Neural Networks and Fuzzy Logic, Institute of electrical and Electronics Engineers, Inc. 2 Lotfi A. Zadeh (2001), AI Magazine, A new direction in AI –Toward the computational theory of perceptions vol. 22 no. 1 spring s. 73-84. 3 William W.L. Cheung, Tony J. Pitcher & Daniel Pauly (2005), A fuzzy logic expert system to estimate intrinsic extinction vulnerabilities of marine fishes to fishing, Biological Conservation 124 (2005) 97-11, s. 97-111. 4 Stuart Russel och Peter Norvig (2003), Artificial Intelligence –A modern Approach, Second Edition. 5 Mark Kantrowitz, Erik Horstkotte och Cliff Joslyn (1997), FAQ Fuzzy Logic and Fuzzy Expert Systems, http://www.cs.cmu.edu/Groups/AI/html/faqs/ai/fuzzy/part1/faq-doc-9.html 6 Kai-Yuan Cai (1996), Introduction to Fuzzy Reliability, Kluwer Academic Publishers Group. 7 Robert Fullér (2000), Advances in Soft Computing –Introduction to NeuroFuzzy Systems, Physica-Verlag Heidelberg. 8 Witold Pedrycz och Fernando Gomide (1998), An Introduction to Fuzzy Sets –Analysis and Design, Massachusetts Institute of Technology. 9 Richard Dawkins (1991), The Blind Watchmaker, Penguin Group. 10 IUCN, The World Conservation Union, http://www.iucn.org/ 11 Betty Blair, Interview with Lotfi Zadeh –Creator of Fuzzy Logic, http://www.azer.com/aiweb/categories/magazine/24_folder/24_articles/24_f uzzylogic.html 12 J. F. Baldwin (1996), Fuzzy Logic, John Wiley & Sons Ltd. 13 Anca L. Ralescu, James G. Shanahan (Eds.) (1997), Fuzzy Logic in Artificial Intelligence, Springer-Verlag Berlin Heidelberg 14