729G11 HT212 ArtificiellIntelligensII Carno535 FuzzyLogic LinköpingsUniversitet Fördjupningsarbete Caroline Norén 91131-172 Carno535
729G11 HT212 ArtificiellIntelligensII Carno535
729G11 HT212 ArtificiellIntelligensII Carno535 Innehållsförteckning Inledning(...(4 Crisp(set((Fuzzy(set(...(5 Medlemskapsfunktion(...(6 De(olika(medlemskapsfunktionerna(...(6 Operationer(...(8 Union(...(8 Snitt(...(8 Komplement(...(9 Lingvistiska(Variabler(...(9 Hedges(...(9 Fuzzy(Rules(...(1 Fuzzy(kontrollsystem(...(11 Preproccessing(...(11 Fuzzification(...(11 Rule(Base(...(11 Inference(Engine(...(11 Defuzzification(...(12 CenterAofAArea...12 CenterAofAMaximum...12 MeanAofAMaximum...12 Exempel(...(Error!Bookmarknotdefined. Var(används(Fuzzy(logic?(...(15 Referenser(...(16
729G11 HT212 ArtificiellIntelligensII Carno535 Inledning Tillskillnadfråndenvanligapredikatlogikendärettpåståendeenbartkanvara santellerfalsktsåkanmanifuzzylogicsägaattettpåståendeärmersanteller integenomattanvändasigavmellanliggandevärdenmellannollochett,s.k. medlemsgrader.människorssättattresonerakringsakeräroprecisaoch luddigamedandatorerssättattresonerakringtingärprecis[3].genomfuzzy Logicsträckermanutpådenvanligalogikensgränserochkangenomdenlåta datorerochmaskinerattresoneraochfattabeslutkringvagapåståendenliktdet människorgör.genomlingvistiskavariablerochifathenreglersåkanmange intelligenstillenmaskinochfådenattbeslutavilkethandlingsomskagöras. Ommatenärförkall ställindenimicron FuzzyLogicskapades1965avLotfiZadeh,enproffessoriComputerSciencevid universiteteticaliforninen,berkley[6]ochhanbeskriversjälvfuzzylogicsom Computingwithwords [5]justförattmananvändersigavordpåsammaplats sommanannarsskullanvändasigavsiffrorvidresonemang. SomtidigarenämntsåanvändersigFuzzyLogicavmedlemsgrader,ettvärde mellannollochettsomsägerhursantnågontingär,därvärdetnollärfalskt, värdetettärsantochvärdenadäremellanolikagraderavsantberoendepåhur näraettdettavärdeligger.detärviktigtattskiljapåfuzzylogicochprobalistisk Logikdåprobalistiskhargraderavsannolikhetochintegraderavhursant någontingär.
729G11 HT212 ArtificiellIntelligensII Carno535 CrispsetFuzzyset Inomlogikensåanvändermansigavset,vilketmankanbeskrivasomen samlingavobjektienuniversaldiskurs,attmedlemskapenisetetberorpå sammanhanget.inomfuzzylogicsåskiljermanpådetsomkallasförcrispset ävenkallat Klassisktset avvissa[1].crispsetärdetsomanvändsiförsta ordningenspredikatlogikochdessaobjektidennaharbaraettvärde,santeller falskt,vilketintealltidgerenrepresentativbildomkringdekategoriersomär luddiga.omviharviktpåäpplensomexempel,såfinnsdetäpplensomärolika stora.enligtcrispsetsåskullevisägaattomettäppleväger2gsåräknasdet somattäppletärtung.omettäppledåharvikten199gramsåskulledetäpplet räknassomettlättäpplefastskillnadenärsåpasslitenmellandessatvåäpplen. DärärettexempelsommankaniställetkananvändasigavFuzzyset.IettFuzzy setsåharobjektenisetetettvärdesomärgraderadpåvaddenharför medlemskapisetetgenomenmedlemskapsfunktion.medlemskapetgraderarpå vilkenskalaobjektetärmedlemisetetellerinte,destonärmarevärdet1 elementethardestosannareärdetisetet.såiställetförattdradenskarpa skillnadenpåviktenpådessaäpplensåkanmandåsägaattvianvänderossav Fuzzysetsåskulleettäpplesomväger199gramräknassomt.ex.storttillen skalapå.9.alltså,detär.9santattäppletärstort. Figur1.EngrafsomvisarskillnadenmellanFuzzySet(Rödlinje)ochCrispset (SvartLinje). Äpplen( Vikt((g)( Värde(i(Crisp( Värde(i(Fuzzy( A1 19.87 A2 148.4 A3 165.65 A4 21 1.99 Tabell1.EntabellsomvisarhurmedlemskapsgraderingenkanseutiCrispset, respektivefuzzyset.
729G11 HT212 ArtificiellIntelligensII Carno535 Medlemskapsfunktion InomFuzzysetsåfinnsdetuniversum,ettuniversumärallaobjektsomfinnsi denkategorinsomärrelevantochdettauniversumberorheltpåkontexten.på engelskasåheterdet UniverseofDiscourse [1].Exempelpåvadsomkanvara ettuniversumärallaheltal,elleromviharettsetomallabarnsåkanvårt universuminnehållaallamänniskorsomfinns. Ilogikensåkanfuzzysetuttryckassom Α={<x,μA(x)> x U} IdettasetsomvikallarförA,endelavsetetärsjälvamedlemskapsfunktionen μa(x),somgällerförallaobjekt(x)somvihariuniversumetu.<x,μa(x)>ärdet somvidefinierarsomparochsägerattviharettobjektx,ochdenharett medlemskapisetet,μa(x).medlemskapsfunktionenärettvärdeiintervallet mellannollochett.destohögrevärde,destohögremedlemskap. μ 1 Eftersomvimedfuzzysetexpanderardetklassiskasetetmeddessavärdenför medlemskapsåskullemankunnasägaattdetklassiskasetetärettspecialfallav fuzzysetsomärbegränsattilldetvåvärdernanollochett[1]. Deolikamedlemskapsfunktionerna Detfinnsfleraolikaslagsmedlemskapsfunktioner,mendevanligasteär trapezoid,triangular,smoothtrapezoidochsmoothtriangular.mendetfinns ävenandramedlemskapsfunktionersomtillexempelgaussianochgeneralized bellsomärandraversioneravsmoothtrapezoidalafunktioner. μtrapezoid(x;a,b,c,d)=!!!!!!!!!!!!!!!!!, x a!!!!!! 1!!!!!!!!!, b x c!!!!!!!!!!!!!!!!!!!!!!, d
729G11 ArtificiellIntelligensII HT212 Carno535 figur2.trapezoidalmedlemsfunktion Ifigur2såvisasdethurenTrapezoidmedlemsfunktionserutbådegrafiskoch matematiskt.entrapezoidmedlemsfunktionharfyrastyckenbrytpunkter; nollpunktenpåvänstersida(a),nollpunkenförhögersida(d),axelpunktenför vänstersida(b)ochsistaxelpunktenförhögersida(d).detärdessapunktersom användsnärmanskaanvändasigavdenmatematiskafunktionenföratträkna utmedlemskapsfunktionenförentrapezoid.omduanvändersigaven triangularmedlemskapsfunktioniställetsåbyterduutb x cmotb=c, eftersomientriangularafunktionsåharbochcsammapunkt. EnsmoothtrapezoidfunktionserungefärlikadanutsomenvanligtrapezoidA funktion,förutomattmangöromdettillencosinusafunktioneftersomdenna funktiontillskillnadfråndenvanligatrapezoidinteärlinjär.!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!, x a!!! μsmoothtrapezoid(x;a,b,c,d)= ½ +!½cos!(!!!)!!!!!!!!!!!, a x b 1!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!, b x c!!! ½ +!½cos!(!!!)!!!!!!!!!!!, c x d!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!, d Figur3,Smoothtrapezoidmedlemsfunktion 7
729G11 HT212 ArtificiellIntelligensII Carno535 Operationer Förattgenereraettnyttsetfråntvåredanexisterandesetsåmåstevianvända ossavolikaoperationerförattdetskafungera.devanligasteoperationernasom mananvändersigomärunionochsnittmenävenkomplementkanförekomma. Union!!!!! =!!A B! =!"#!A!,!B!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Unionmenasmedattmangörettnyttsetavalla elementsomärmedlemmariantingena,beller ibåda.såunionenavaochbgerettnyttset meddennyamedlemsfunktionenmax!a x,!b x. Medlemskapsfunktionenvisardenhögstagradenav relevansmellanvarjeelementochdetnyasetet. Figur4illustrerartvåsetdärdengråaytanvisar unionen. {1,2,3,4} {3,4,5,6}={1,2,3,4,5,6} Figur4, Unionenavtvåfuzzyset Snitt!!!!!!!!!!!!!!!!! B =!!A B! = min!a x,!b x!! Snitts.kintersectionpåengelska,ärnärmangörettnytt setavdeelementsomärmedlemmaribådeaochb. SnittetavAochBgerdennyamedlemsfunktionen min!a x,!b x.medlemskapsfunktionen representerardetminstagradenavrelevansmellan varjeelementochdetnyafuzzysetet.figur5illustrerar tvåsetdärdengråaytanvisarsnittet. {1,2,3,4} {2,3,4,5,6}={2,3,4} Figur5. Snittetavtvåfuzzyset
729G11 HT212 ArtificiellIntelligensII Carno535 Komplement!! =!!ca! =!!!A! Ettkomplementgällerförallaelementiuniversumetsomintegernågon relevans,alltsåsominteärmediseten.dennyamedlemskapsfunktionenblir!!!a!,där1representerardenhögstagradenavtillhörighet.figur6 illustrerartvåfuzzysetdärdengråytanvisarkomplementetavdessaseti sammauniversum. Figur6.Komplemen] tetavtvåunieradefuzzy set. LingvistiskaVariabler Lingvistiskavariableranvändersigavordellermeningarsomvärdeniställetför siffrorsomdenalgebraiskavariabelngör.denlingvistiskavariabelnisigären slagsetikettettnamnochkaninnehållafleravärden.enuppsättningavdessa värdenkallasför termset ochvarjeelementisetetkallasförlingvistisktvärde. Alltså,omviharenlingvistiskvariabel Ålder såkandesslingvistiskavariabler vara ung,väldigtungosv iettuniversumsomärt.ex.mellantill1år. Ålder={Ung,väldigtung,gammal,medelgammal} Hedges Hedgeärettordsomagerarpåenterm/ordochmodifierarochförstärkerdess betydelse.detvikallarför primaryterm ärenlingvistiskvariabelsomvimåste definieraiförvägsåsomstark,lång,kort.medanhedgesärdetsomären modifieradterm.omviharviharsammaexempelsomvihadepålingvistiska variableromålder,såharvidetlingvistiskavärdet ung ochomviläggertillen hedgesåvifårennyterm,idettafall väldigtung. Väldigt ändrardåhela betydelsenavdentermenvihadefrånbörjan.idessaresonemangsåändrar
729G11 HT212 ArtificiellIntelligensII Carno535 hedgedengamlamedlemskapsfunktioneniettlingvistisktvärdeochresultatet blirattvifårenheltny,detfinnsegentligeningaskrivnareglerhurmangörom medlemsfunktionenmenmankant.ex.genomattantagligenkvadrera,eller användarotenurmedettlämpligttalpåvårmedlemsfunktionförattfåettnytt värde,beroendepåommanvillökaellersänkadettidigarevärdet.däremotså gällerdetattvarakonsekvent,attmananvändersigavsammaförändringvid sammatypavhedges. Ung={<x,μA(x)>,μung(x)=,μung(x),x U} Väldigtung={<x,μA(x)>,μVäldigtung(x)=,μ 2 ung(x),x U} Extremtung={<x,μA(x)>,μExtremtung(x)=,μ 3 ung(x),x U} Merellermindreung={<x,μA(x)>,μmemung(x)=,μ 1/3 ung(x),x U} FuzzyRules Enfuzzyruleärenregelsombeståravenantecentochenkonsekvent,iformav enifathenregelochharformenavenantecedentochenkonsekvent.en antecedentärenellerfleravariablersombeskriveretttillståndinnanmandra enslutsats,alltsådetsommankankallaförinputavärde.enkonsekventär däremotmotsatsen,enellerfleravariablersomrepresenterarenslutsatseller handling,detsomävenkankallasföroutputavärde. IfxisAthenyisB DärAochBärolikaset,och xisa ärantecentenoch yisb ärkonsekventen. ExempelpåenIfAthenregelkanvara Ommatenärväldigtkall,såvärmden längreimicron.förattendatorskakunnafattaettbeslutomviskavärma matenlängresåmåstedenförstdefinieravadsommenasmed väldigtkallt och hurmycketlängremanskavärma.detbeslutasgenomattmananvändersigav medlemskapsfunktionen.
729G11 HT212 ArtificiellIntelligensII Carno535 Fuzzykontrollsystem FörattettFuzzykontrollsystemskafungerasåmåstedenföljavissastegföratt kunnafattabeslutsomliknarhurmänniskorfattarbeslut.förstfårdeninett crispavärdeochavrundadettillettvärdevikananvändaossav,sedanföratt dettavärdeskakunnaanvändassåmåstemananvändasigavfuzzificationför attgöraomvärdettilllingvistiskavariabler.senkommermantillsteget beslutsfattning,därbestämsdethurdefuzzylogicoperationernaskaanvändas ochdärsammanslårmanävenallaifathenreglersommanharanväntsigav, dettagörsmedhjälpavenkunskapsbasochinferenceegine.outputavärdena manfårutomvandlassedantillcrispavärdengenomattanvändasigav defuzzification. Preproccessing Iettkontrollsystemsåtarsystemetsjälvframettvärdesommankanmätaoch fattaettbeslutkring,detäroftastettcrispvärdesomkanvarat.ex.1eller2.i preproccessingsåavrundarviavdettacrispavärdetillnärmstanivåsåattdet bättreskapassadevärdensomvianvänderossav.vigöromdevärdenvihar fåttinsåattviskakunnaanvändadem. Fuzzification Fuzzificationärenprocessdärmanbryternerinputtillettellerfleraolikafuzzy set,dessainputavärdenäroftastcrispavärdensommanmåste fuzziera.genom fuzzificationsålåterinputavärdernaochoutputavärdernaiettregelbaserat kontrollsystemattbliuttrycktailingvistiskatermer. RuleBase Iregelbasenfinnsallareglersomviharbestämtskafinnasiregelbasen,deär skrivnaiifathenreglersomnämnsovan.ifxisathenyisb.iregelbasenså användermansigoftaavmatrisenförattenkeltkunnastrukturerauppreglerna ochlättaresevilketbeslutsomskafattas. InferenceEngine InfcerenceEngineärsammankoppladmedregelbasenochhjälpertillattskapa enoutputavdereglersomfinnsiregelbasen.inferenceengineskaparett medlemskapsvärdeförvarjetillståndavregelniregelbasen.inferenceengine användersigavtrestegförattkunnafåframenoutput;aggregering,aktivering ochackumulering.aggregeringinnebärattmanförsökerfåframhurstorgrad varjeregeluppfyllerdevärdenvihar,detärbarainputenmananvändersigav ochmansertillatträttmålfattasfördeninputenmanhar.iaktiveringenså använderviavutavärdetvifåravaggregeringenochberoendepåvadviharför reglersåanvänderviossavminamaxellerunifieringellersnittomviharflera premisserivåraregleriregelbasen.iackumuleringellersammanslagningenså
729G11 HT212 ArtificiellIntelligensII Carno535 samlarviihopallaaktiveradeslutsatserochskaparengrafgenomunifiering ellermax. Defuzzification DefuzzificationärenprcocessdärviharettlingvistiskoutputAvärdesomvihar fåttavinferenceengineochdettavärdebehövermanöversättatillettcrispa värde,atthittadetvärdesombästrepresenterardenlingvistiskavariabelnvi harsomoutput.föromettkontrollsystemharanväntsigavfuzzylogicsåkan dethabetydelseommangöromoutputadatantillettvärdesominteärettfuzzya värde.defuzzificationäralltsåhelttvärtemotfuzzification.detfinnsettflertal olikametodermankananvändasigavmendevanligasteärcenteraofaarea, CenterAofAMaximumochMeanAofAMaximum. CenterKofKArea CoA,beräknarmittpunktenavdetsammansattaområdetsomrepresenterar outputenochgördettillettcrispavärde. CenterKofKMaximum CoM,idennametodsåanvändsbaradehögstavärdenai medlemskapsfunktionen.detnyavärdetbestämsgenomatthittadenplatsen därvärdernaärbalanserade,alltsådärcrispavärdetochfuzzyavärdetharsamma värde.andraområdenförutommaximaanvändsinteidennametod. MeanKofKMaximum MoM,dennametodanvändsnärmanintekantillämpaCoM.Dethändernär medlemskapsfunktionensmaxinteärunikochmanmåsteväljamellannågonav dessaalternativ. Exempel Fuzzification Omviäterpåenlitefinarerestaurangochvivilllämnadrickstillservitörenså kanvibestämmahurmycketdricksvikangesåkanvitänkapåtvåfaktorer, beroendepåhurgodmatenvarochberoendepåhurgodservicenvar.omviska skattadettamedattgedetettbetygmellan1och1,såkanvigeattmatenvar godmedbetyget8,ochservicenvarganskadåligsådenfårbara3.våråttaoch treaärtvåstyckencrispvärdensomvikananvändasominputavärdenföratt bestämmahurmycketdrickssomviskage.genomfuzzifieringsåkanvigedessa inputavärdenettmedlemskapideolikafuzzysetssomvibestämtskafinnas.att matenvargod,gavvien8ibetygpåskala1a1såskulledenfåettmedlemskap på,7iettfuzzysetsomvikallarför Utmärkt.Närvikollarpåservicen,såfick denenbarten3ivårbetygsättningvilketräknassom Dålig,alltsåsåfårdenett medlemskappåivårtfuzzyset Perfekt.
729G11 HT212 ArtificiellIntelligensII Carno535 Regelsättning Närvikommertillregelsättningen,därvianvänderossavIFATHENreglersåsom omservicenärbraellermatenvarutmärkt(=antecenten)sågebrameddricks (=konsekventen)såmåstevianvändaossavoperationerförattfåframrätt värdeviskaanvändaossav.eftersomviharett eller ivårregelsåanvändervi ossavunionen,alltsåmax.!!!! B =!!A B! = max!a,7,!b, =!!!A B,7!! Efteroperationensåfårviettnyttfuzzyset,somvikankallaför Generöst som vianvänderossavförattbeslutahurmycketdrickssomviskage.meddettanya setsåanvänderviossavimplikationförattmatchadetresultatetavdetvifick frånvåroperator,ochdetvigöräregentligenattklippaavtoppenavvårtset,för vifårintegemerdricksändetsomärtillåtetmeddessainputssomvihar.
729G11 HT212 ArtificiellIntelligensII Carno535 Sammanslagning Isammanslagningbetyderattduslårihopellerkombinerarallamöjligaregler somfinnsförattmanskakunnasättadetiettnyttsetsombeståravallatyperav utfall,alltsåallatyperavhurmycketdricksmankanfå.dettagörsförattvi sedanskakunnafattaettbeslutomhurmycketdricksvisenareskage.beroende påvadmankangefördrickssåmåsteallaalternativfinnasmedivåraregler. T.ex.omvivillgedåligtmeddricks,lagommeddricksellermycketdricks. If( Or/and( Then( Servicenärdålig OchMatenäräcklig Gedåligtmeddricks Servicenärbra Gelagommeddricks Servicenärperfekt Ellermatenutmärkt Gemycketdricks Isammanslagningensåkanvidåfåframennygrafsomvianvänderossavför attbestämmahurexakthurmycketdricksviskainästasteg,defuzzification. Defuzzification IDefuzzificationärstegetdärvifrånettfuzzyset,såsom mycketdricks skafå tillbakaettcrispset,eftersomsystemetharsagtattviskagemycketdricksså kandetvarabraattvetahurmycketdricksviskage.denmetodensomär lämpligastattanvändasigidettaexempelärcenteraofaarea.denberäknarut mittenpunktenavdenoutputenvifickutochgenomdennametodsåkanvi räknautattvitillexempelskage16,7idricks
729G11 HT212 ArtificiellIntelligensII Carno535 VaranvändsFuzzylogic? FuzzylogicanvändsiFuzzykontrollsystemochiexpertsystemochmedhjälpav densåkanmaskinermedhjälpavmänskligtspråkfattabeslutliktdetmänniskor görgenomattanvändasigavuttrycksomärlitevaga.fuzzylogicanvändsi mångavanligavardagsproduktersåsomtvättmaskiner,luftkondioneringaroch kameror.detfuzzylogicanvändsavdekontrollasystemsomintemedsäkerhet vetomderasinputsärsantellerfalskt,t.ex.luftkonditionering.ommanintevet omdetärvarmtellerkalltirummet,utandetkanskeärnågontingmittemellan såärfuzzylogicmycketbättreanvändasigavänklassisklogik.fuzzylogichar blivitväldigtstortsedanstartenochkommerförmodligenväxasigännustörreju mertidengår. Medfuzzylogicsåharmangåttettstegframåtattfåmänniskoratttänkaoch resonerasommänniskor,detsomärettavmålenmedai.manärinteframme däränmendetäranbrabitpåvägen,ochjaginteattfuzzyslogicsdagaräröver, tvärtemotjagtrorattdetkommerblistörreiframtidenänvaddetredanäridag ochattflermaskinerkommerattanvändasigavdennalogik.
729G11 HT212 ArtificiellIntelligensII Carno535 Referenser [1]Jantzen,Jan.26.TutorialonFuzzyLogic.Lyngby;TechnicalUniversityof Denmark [2]Berkan,RizaC.,Trubatch,SheldonL.1997FuzzySystemsDesignPrinciples; BuldingFuzzyIFATHENRuleBases,NY;IEEEPress [3]Simoes,MarceloG.IntroductiontoFuzzyLogic.Coloradoschoolofmines [4]Zadeh,LoftiA.1992.FuzzylogicandthecalculusofFuzzyIfAThenRules.IEEE [5]Zadeh,LoftiA.1996.FuzzyLogic=Computingwithwords.Vol.4No.2IEEE [6]Hellman,M.FuzzyLogicIntroduction. [7]Jantzen,Jan.1998.TutorialonFuzzyLogic.Lyngby;TechnicalUniversityof Denmark [8]EAmath.Fuzzyinference http://www.dma.fi.upm.es/java/fuzzy/fuzzyinf/introfis_en.htm Besökt:212A9A216: