Fördjupningsarbete HT 2012 FUZZY LOGIC
|
|
- Elsa Forsberg
- för 8 år sedan
- Visningar:
Transkript
1 FUZZY LOGIC 1
2 Innehåll Bakgrund & Introduktion till fuzzy logic... 3 Syfte... 3 Fuzzy sets... 4 Hedges... 5 Fuzzy set logic... 6 IF-THEN relger... 7 Fuzzy Inference... 7 Användandet utav fuzzy logic i tvättmaskiner... 9 Diskussion Referenser:
3 Bakgrund & Introduktion till fuzzy logic I svenskan brukar fuzzy logic kallas luddig/ oskarp logik, men man brukar oftast bara säga fuzzy logic. Namnet kommer från att man utgår från att påståendens sanningshalt kan vara oklara, d.v.s. hur väl ett objekt uppfyller en diffus beskrivning. Studerar man ett problem genom första ordningens predikat logik (FOPL) kommer det i många fall brista. Då det i denna typ av logik finns ett sant värde (1) och ett falsktvärde (0). Tar man problemet att beskriva hur lång Kalle är kan en dator dela in längderna i tre olika kategorier, lång, mellan eller kort. Men skulle gränsen för lång gå vid 190, skulle då inte Kalle vara lång utan medel om han var cm och inte 190? Det måste gå att beskriva Kalles längd bättre än att dela in längderna i tre olika delar. Utifrån sådana här problem kom Lotfi Askar Zadeh att utveckla fuzzy logic, den luddiga logiken under talet. För att kunna översätta vårt oformella vanliga talspråk till något mer formellt som datorer också kan behandla. Istället för att säga att det är sant eller falskt sätter fuzzy logic ett värde på hur sant/falskt påståendet är. Syfte Syfte med denna rapport är att få en djupare förståelse om Fuzzy Logic, och hur den kan användas i dagens tekniker. Där har jag valt att göra en djupare förståelse i hur fuzzy logic kan användas i tvättmaskiner. 3
4 Fuzzy sets Om vi ska fortsätta på exemplet hur lång Kalle är från inledningen och beskriva hur fuzzy logic använder sig utav informationen kring uppgiften. Vanlig enkel logik som FOPL skulle använda sig utav den här bilden att beskriva problemet. Här visar bilden hur de olika längderna är uppdelade i olika kategorier med en tydlig gräns, så kallade crisps. Man har satt intervaller mellan längderna som delar upp vart gränsen går till att vara lång, så i detta crisps menar man på att mellan 190 och 210cm är man lång. Vilket ger Lång=[190, 210], är man innanför detta intervall blir sannolikheten=1, alltså så är man lång. Detta skulle betyda att han som är 189cm är inte lång, utan han tillhör gruppen utav de medellånga, då sannolikheten för meddellång=1 och sannolikheten för lång = 0. Men fuzzy logic använder sig utav att ytorna kommer att korsa varandra så att det inte kommer att finnas ett precis stopp mellan de olika kategorierna (se bild nedan). Det kommer att finnas en gräns då medellång och lång blandas. De kommer alltså att räkna ut ett medlemskap, där de kommer att överlappa varandra. Beroende på vart man kommer ligga i hänsyn till överlappningen kommer man få ett högt eller lågt medlemskap, och där av kommer sanningsvärdet av att vara lång ändras. Skulle nu Kalle vara 189 cm, kommer hans längd att ligga i ett högt medlemskap för kategorin lång och ett lågt medlemskap av medellång. Fuzzy logic kommer där ta hänsyn och 4
5 inte bara dra slutsatsen att Kalle är lång, utan visa på hur lång han är gentemot hur medellång han är. [1] Hedges Hedges är operatorer som tillämpas på medlemskaps funktionerna för att spegla deras språkliga betydelse och att skapa en virtuell uppsättning. När vi använder oss utav talspråk för att förstärka ett påstående som t.ex. Han är väldigt lång.. Då behövs en tillämpning på medlemskapen för att förtydliga påståendet ännu mer. Här kommer Kalle som är 190cm att tillhöra både väldigt lång och lång och samt på gränsen till medlemskapet mellan medellång och lång. Detta gör man för att datorn ska uppfatta en ännu starkare bild utav vårt talspråk av våra påståenden. Olika starka ord har olika starka kurvor för att vissa ord symboliserar en starkare relation än vad andra gör. [1] 5
6 Fuzzy set logic För att kunna uttrycka oss mot en dator måste vi definiera ett logiskt uttryck som vi kan använda till att räkna, då kommer fuzzy set logic in. När man kollar på att börja räkna med fuzzy set har den logiken tre relevanta operatorer, OR AND och NOT. Att räkna med dessa är inte så luddigt som man kan tro från namnet, utan fungerar nästan som vanlig logik. På det här sättet räknas ett sanningsvärde ut för komplexare meningar. OR A U B = Max (A,B) AND A B = Min(A,B) NOT A = 1 A Dessa bilder representerar (a och b) vanliga venndiagram och de två under (c och d) representerar samma utfall fast i fuzzy diagram. Operatorn OR, union, representeras genom att ta det högsta medlemskapsvärdet, Max(A,B). Detta kan vi se i bild c. Skulle vi unifiera X och Y, då X={a,b,c,d} och Y={c,d,e} skulle vi få unionen U={a,b,c,d,e}, sedan skulle det element med högt medlemsvärde att återges. 6
7 Operatorn AND, snitt, representeras genom att ta det minsta medlemskapsvärdet, Min(A,B). Detta ser vi i bilden under bokstaven d. Skulle vi räkna ut snittet som i samma exempel som ovan skulle vi få fram {c,d} och sedan skulle det element med minst medlemskapsvärde att återges. (Jan Jantzen [2]) IF-THEN relger Tanken med fuzzy logik är att den enkelt ska kunna användas med vanliga regler, om det är så här gör då såhär. Man ska inte behöva veta alla information bakom utan enkelt kunna styra världen med [källa], {IF situation THEN action}, {IF its_early THEN Kalle_can_study}. Så här kommer en dator som använder sig utav fuzzy logic att göra. Först kommer världen att representeras exempelvis klockslagen: u = (4, 8, 10, 16, 22) Nu kommer fuzzy logic att sätta sanningsvärden på när det räknas som tidigt. tidigt = {(4, 0) (8, 1) (10, 0.9) (16, 0.5) (22, 0.1)} Där 1 representerar att Kalle studerar i perfektion vid 8 på morgonen. Men vid klockan 4 (16) studerar han bara hälften så bra. (Jan Jantzen [2]) [3] Fuzzy Inference Fuzzifier: Skulle det hända att man fick ett error input måste en kontroll analys i fuzzy logic ske. Först skulle vara att omvandla det skarpa inputet till en fuzzy variabel, vilket är att ge en sanningsgrad på variabeln. Helt enkelt att göra variabeln till en medlemskapsfunktion som tidigare nämnts. Att göra så här kallas för fuzziefiera. Fuzzy Rule Set: För att styra upp problem som har hänt måste man åtgärda problemet. Det kommer att 7
8 göras genom att följa förprogrammerade regler som finns. Regler som utgår från vanliga (IF situation THEN action), som nämnts tidigare. Defuzzifier: Detta tar fram kvantifierbara resultat från de oskarpa signalerna som fuzzifieren framkallade. Den gör helt enkelt till inputs signal så att den kan användas till att utföra andra åtgärder igen. Defuzzifiera är motsatsen till fuzzifiera. Ett exempel på detta problem kan vara med luftkonditioneringen i en bil. Vi säger att vi har satt en behaglig temperatur på 18 grader, och där ska den hålla sig. Så öppnar någon fönstret i bilen och det är en varm sommar dag så massor med varmluft strömmar in. Temperaturen kommer inte längre att vara 18 grader utan höjas upp emot 20 grader. Kontrollsystemet får en input som säger error. Fuzzifieraren kollar vad är det för som är fel, genom att först omvandla den mätta signalen x till en fuzzy variabel, genom att sätta ett medlemsvärde. När det satt ut alla värden skickar den vidare sin signal till fuzzy rule set som börjar åtgärda problemet genom att följa vanliga IF situation THEN action regler. Som kanske så simpel kan se ut så här (IF warmen_then_18 THEN blow_cold), och fortsätta tills man uppnår den variabeln som tidigare skickats in. För att nu allt ska gå ihop måste defuzzifier göra sitt jobb genom att återskapa den signal och göra den skarp igen, så att den kan utföra åtgärderna. [4] 8
9 Användandet utav fuzzy logic i tvättmaskiner Fuzzy logic används idag i många av våra tekniska maskiner, så som i tvättmaskiner, mikrovågsugn, att justera fläktarna i bilar eller i t.ex. tunnelbanesystem för att få en skön acceleration och inbromsning. Men kommer i denna rapport enbart behandla hur fuzzy logic fungerar i tvättmaskiner. De nya och moderna och mer bekväma tvättmaskiner behöver vi som använder oss utav inte ens ställa hur länge den ska tvätta, det räknar tvättmaskinen ut åt oss. Tiden är beroende på hur smutsig tvätten är och vilken typ av smuts det rör sig om, om det är fett eller t.ex. lera, eller en blandning. Fuzzy logic har stor betydande roll i att detta fungerar men det är självklart inte enbart fuzzy logic som gör arbetet, sensorer måste finnas att ge fuzzy logic en input om tvätten. Men här kommer fokus intresset ligga på fuzzy logics roll i processen. Det finns ingen standard i hur mycket eller hur avancerade saker tvättmaskin gör, men de vanligaste delarna är: Vatten intag Temperaturen Tids anpassning Spinhastighet / centrifugering För att tvättmaskinen ska kunna bestämma dessa olika enheter behöver den veta hur smutsig tvätten är, vilket görs av sensorer. I denna artikel kommer vi anta att vi bara får svaret från sensorerna och kommer inte gå in på en djupare förståelse kring dem. Sensorerna kommer att mäta smutshalten utav provvattnet som görs innan ett program startas. Det är här fuzzy logic kommer in i bilden, smutsvattnet kommer att hamna på en sannolikhets skala om hur smutsig den är, som sedan sätts in i grafen (se bild). Här är en enkel bild utav fuzzy logics steg som kommer att göras i programmet. Vi har fått en input från sensorerna om hur smutsig tvätten är och vilken typ av smuts det rör sig om. Fuzzy controller kommer att översätta dessa lingvistiska inputs, i ett steg som kallas 9
10 fuzzifier, till medlemskap som används till att få en uppfattning mot den riktiga världen. På vilken skala är det smutsigt. [5] Programmet kommer sedan att avgöra i vilket smutsighetsgrad det rör sig om, kommer räkna ut ett medlemskapsvärde för omgången tvätt. Efter att värdena är satta kommer maskingen utgå från vanliga IF THEN regler för att få en optimal tvätt. Stegen kommer att se ut följande:[4] Fuzzy controller kommer att använda sig utav alla förprogrammerade regler som finns, d.v.s. fuzzy rule set. Ett exempel på en sådan regel kan vara: IF dirtness_of_clothes large AND type_of_clothes is greasy THEN wash_time is very long. Defuzzier som nämndes tidigare kommer att omvandla dessa regler till en riktig signal som kommer att bli ett output. Genom detta kommer en perfekt tvättid att utlovas. Detta output kommer samt ta del av hur mycket vatten som behövs och även justera temperaturen för att få en så ren tvätt som möjligt. Fuzzy Logic underlättar och gör bland annat vår tvätt till ett nöje. För att få en optimal tvättning, tvätta med fuzzy logic. 10
11 Diskussion Fuzzy logic är en jättebra upptäckt, att få tekniken att göra så mycket själv är fantastiskt. Men det jag tyckte var väldigt intressant att jag läste en artikel från skriver Bart och Satoru.. For that reason, fuzzy logic system may well find their way into an ever growing number of computers, home appliances and theoretical models. The next century may be fuzzier than we think. Vilket jag tyckte vad väldigt intressant nu när jag läst så många andra nya artiklar, att fuzzy logic är så pass utvecklad och finns i så stort utbud bland tekniken idag är fascinerande. Det är nästan 10 år sedan, och han har rätt idag! 11
12 Referenser: [1] [2] Jantzen, J. Tutorial on Fuzzy Logic. [3] [4] [5] Artificial Intelligence A Modern Approach, second edition. Stuart Rusell & Peter Norvig 12
Fuzzy Logic. När oskarpa definitioner blir kristallklara. Åsa Svensson. Linköpings Universitet. Linköping
Fuzzy Logic När oskarpa definitioner blir kristallklara Linköpings Universitet Linköping Sammanfattning I denna fördjupningsuppgift har jag fokuserat på Fuzzy Logic och försökt att beskriva det på ett
729G11 Artificiell Intelligens Marcus Johansson Marjo581. Fuzzy logic. Marcus Johansson Marjo581
Fuzzy logic 880328-2535 Innehåll Fuzzy logic... 1 1. Inledning... 4 2. Jämförelse mellan fuzzy logic och tvåvärdeslogik.... 4 3. Fuzzy sets.... 4 4. Linvistiska variabler... 5 5. Operatorer... 5 6. If-
LINKÖPINGS UNIVERSITET. Fuzzy Logic. Johan Brage 9/16/2012
LINKÖPINGS UNIVERSITET Fuzzy Logic Johan Brage 9/16/2012 Innehållsförteckning 1. Inledning... 1 2. Fuzzy Logic... 2 3. Crisp Sets... 3 4. Fuzzy Sets... 4 4.1 Operatorer... 5 4.2 IF-THEN... 7 4.3 Hedges...
Fuzzy Logic Linköpings Universitet
Fuzzy Logic Linköpings Universitet 2 Innehållsförteckning 1. Inledning... 4 2. Bakgrund... 4 3. Fuzzy Logic... 5 3.1. Fuzzy Sets... 6 4. Operatorer... 7 4.1. Union och snitt... 7 4.2. IF, THEN, AND och
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 Innehållsförtekning Sida Inledning 3 Vad är fuzzy logic? 3 Mängder 3 Medlemsfunktioner 5 Operationer 6 Fuzzification 8 Litteraturförteckning 9 2 Inledning Med detta fördjupningsarbete vill
FUZZY LOGIC. Christopher Palm chrpa087
FUZZY LOGIC 900223-1554 Innehållsförteckning INLEDNING...2 HUR DET FUNGERAR...3 Crisp Sets och Fuzzy Sets...3 Operatorer...5 IF THEN regler...7 FUZZY INFERENCE...7 Fuzzification...8 Regelsättning...8
Fuzzy Logic: Den oskarpa skarpheten
Fuzzy Logic: Den oskarpa skarpheten Av: 1 Innehåll Inledning... 3 Vad är Fuzzy Logic?... 4 Fuzzy sets... 4 Medlemsskapsfunktion... 5 Operatorer... 7 Union... 7 Snitt... 8 Komplement... 8 Exempel med de
William Hernebrink
Fuzzy Logic @student.liu.se 1 Sammanfattning Följande arbete är ett individuellt kursmoment som omfattar 3hp i kursen Artificiell Intelligens II (729G11) vid Linköpings universitet. I denna litteraturstudie
729G11 ARTIFICIELL INTELLIGENS 2, LINKÖPINGS UNIVERSITET. Fuzzy Logic. Caroline Allmér, caral
729G11 ARTIFICIELL INTELLIGENS 2, LINKÖPINGS UNIVERSITET Fuzzy Logic Caroline Allmér, caral281 2011-09-19 Innehåll Innehåll... 2 1. Inledning... 3 2. Hur det fungerar... 4 2.1 Crisp-set och fuzzy set...
Fuzzy control systems
Institutionen för datavetenskap Artificiell intelligens II, 729g11 Projekt HT-12 LINKÖPING UNIVERSITET Fuzzy control systems Användning av fuzzy logic I tvättmaskiner Karolin Nissa 9/17/2012 Abstract Den
Molly Lundberg 729G43 Kognitionsvetenskap mollu341 Artificiell Intelligens Linköpings Universitet. Fuzzy Logic. Vad är det och hur fungerar det?
Fuzzy Logic Vad är det och hur fungerar det? Molly Lundberg Sammanfattning Den här rapporten har ämnat att skapa förståelse i vad Fuzzy Logic är för något, hur det fungerar och hur det används. Traditionell
Beräkning med ord. -hur en dator hanterar perception. Linköpings universitet Artificiell intelligens 2 2010-10-03 Erik Claesson 880816-1692
Beräkning med ord -hur en dator hanterar perception 2010-10-03 Erik Claesson 880816-1692 Innehåll Inledning... 3 Syfte... 3 Kan datorer hantera perception?... 4 Naturligt språk... 4 Fuzzy Granulation...
FUZZY LOGIC. - Var går gränsen? Lovisa Rönmark lovro
FUZZY LOGIC - Var går gränsen? Sammanfattning Det här fördjupningsarbetet är gjort I kursen Artificiell Intelligens 2 på Linköpings Universitet. Syftet med arbetet är att ta upp och förklara ämnet Fuzzy
Fuzzy logic. Julia Birgersson, julbi
Fuzzy logic, Innehållsförteckning Inledning 3 Vad är Fuzzy Logic, varför finns det? 3 Fuzzy sets och crisp sets 4 Medlemsfunktioner 4 Operationer 7 Lingvistiska termer och lingvistiska variabler 9 Artificiell
Fuzzy Logic. Ellinor Ihs Håkansson, ellih
Fuzzy Logic, 2016-01-09 Innehållsförteckning Introduktion... 3 Vad är Fuzzy Logic?... 3 Fuzzy eller crisp?... 4 Fuzzy set... 5 Medlemskapsfunktioner... 6 Operationer... 8 Fuzzy expert systems och Fuzzy
När det oskarpa ger skärpa
En litteraturstudie om oskarp logik av för kursen Artificiell intelligens 729G43 Innehållsförteckning Inledning... 2 Syfte... 2 Upplägg och litteratur... 2 Varför använda oskarp logik?... 2 Oskarp mängdteori...
Fussy sets och Fuzzy logik Luddigt eller självklart? Kognitionsvetenskap, 729G11 Sandra Svanberg, sansv418 19/09/2011 Linköpings universitet
Luddigt eller självklart? Kognitionsvetenskap, 729G11 Sandra Svanberg, sansv418 19/09/2011 Linköpings universitet 2 2 3 Innehållsförteckning 1 Figur och tabellförteckning... 4 Sammanfattning... 6 2 Inledning...
Artificiell Intelligens II, 729g11 Linköpings universitet Fuzzy logic
Fuzzy logic Sammanfattning Inom klassiska logiska system är ett påstående antingen sant eller falskt. Fuzzy logic använder sig istället av grader av medlemskap som är värden mellan 0(inte alls sant) och
2017% Fuzzy%Logic% %%%%%% LISA%NILSSON% %LISNI222%
2017% Fuzzy%Logic% %%%%%% LISA%NILSSON% %LISNI222% Innehållsförteckning0 1.#Inledning# 3% 1.1% Syfte( 3% 1.#Fuzzy#Logic# 4% 1.1(Bakgrund( 4% 2.#Fuzzy#Set# 5% 2.1(Fuzzy(set(vs(crisp(set( 5% 2.2(Medlemskap(
Oskarp logik - en flervärdeslogik för framtiden? Karl Bruno Linköpings universitet 2006-10-15
- en flervärdeslogik för framtiden? Karl Bruno Linköpings universitet 2006-10-15 Sammanfattning Oskarp logik är en utvidgning av den klassiska logiken. Den baseras på oskarpa mängder, mängder till vilka
Fuzzy Logic och dess implementering i ett företagsspel
Fuzzy Logic och dess implementering i ett företagsspel Phian632 Philip Anzén Linköpings Universitet Artificiell Intelligens II, 729g11 2012-09-16 Innehåll 1. Inledning...3 2. Översikt av Fuzzy Logic...4
Fuzzy logic och fuzzy kontrollsystem
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
1 Suddig logik och gitter
UPPSALA UNIVERSITET Matematiska institutionen Erik Palmgren Kompletterande material Algebra DV2 ht-2000 1 Suddig logik och gitter Suddig logik (engelska: fuzzy logic) är en utvidgning av vanlig boolesk
Introduktion till logik
Introduktion till logik Av Johan Johansson Johan.johansson@guldstadsgymnasiet.se Logik sägs som många andra saker komma från de grekiska filosoferna, och ordet kommer också därifrån. Grekerna kallade det
Logik. Dr. Johan Hagelbäck.
Logik Dr. Johan Hagelbäck johan.hagelback@lnu.se http://aiguy.org Vad är logik? Logik handlar om korrekta och inkorrekta sätt att resonera Logik är ett sätt att skilja mellan korrekt och inkorrekt tankesätt
Laboration Fuzzy Logic
BILAGA B Laboration Fuzzy Logic Lär dig simulera ett program! ABB INDUSTRIGYMNASIUM Fuzzy Logic Wikingsons Wåghalsiga Wargar Projekt ABB VT 2006 Västerås Innehåll 1 Introduktion... 3 2 Uppgiften... 3 2.1
MA2047 Algebra och diskret matematik
MA2047 Algebra och diskret matematik Något om logik och mängdlära Mikael Hindgren 5 september 2018 Utsagor Utsaga = Påstående som har sanningsvärde Utsagan kan vara sann (S) eller falsk (F) öppen eller
729G04 Programmering och diskret matematik. Python 2: Villkorssatser, sanningsvärden och logiska operatorer
729G04 Programmering och diskret matematik Python 2: Villkorssatser, sanningsvärden och logiska operatorer Föreläsningsöversikt Vad händer när vi kör vår pythonkod? Programmerare Villkorssatser Jämförelser
Mängdlära. Kapitel Mängder
Kapitel 2 Mängdlära 2.1 Mängder Vi har redan stött på begreppet mängd. Med en mängd menar vi en väldefinierad samling av objekt eller element. Ordet väldefinierad syftar på att man för varje tänkbart objekt
Sanningsvärdet av ett sammansatt påstående (sats, utsaga) beror av bindeord och sanningsvärden för ingående påståenden.
MATEMATISK LOGIK Matematisk logik formaliserar korrekta resonemang och definierar formellt bindeord (konnektiv) mellan påståenden (utsagor, satser) I matematisk logik betraktar vi påståenden som antingen
(N) och mängden av heltal (Z); objekten i en mängd behöver dock inte vara tal. De objekt som ingår i en mängd kallas för mängdens element.
Grunder i matematik och logik (2017) Mängdlära Marco Kuhlmann 1 Grundläggande begrepp Mängder och element 2.01 En mängd är en samling objekt. Två standardexempel är mängden av naturliga tal (N) och mängden
Introduktion till programmering SMD180. Föreläsning 4: Villkor och rekursion
Introduktion till programmering Föreläsning 4: Villkor och rekursion 1 1 Några inbyggda funktioner (med resultat!) Konverterar mellan de grundläggande typerna: >>> int("32") 32 >>> int(3.999) 3 >>> float(32)
Ett Oskarpt Beslut. Om Oskarp Logik i Speldesign. Mikael Hedenström
Ett Oskarpt Beslut Om Oskarp Logik i Speldesign Mikael Hedenström Examensarbete i speldesign, 15 högskolepoäng Speldesign och grafik/speldesign och programmering, vt 2013 Handledare: Kim Solin, Tommi Lipponen
Visual Basic, en snabbgenomgång
Visual Basic, en snabbgenomgång Variabler och Datatyper En variabel är som en behållare. Olika behållare passar bra till olika saker. I Visual Basic(härefter VB) finns olika typer av behållare för olika
Föreläsning 2 Programmeringsteknik och C DD1316. Programmering. Programspråk
Föreläsning 2 steknik och C DD1316 python introduktion Variabler Datatyp Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer betyder att instruera en dator Ett program
Föreläsning 2 Programmeringsteknik och C DD1316. Mikael Djurfeldt
Föreläsning 2 Programmeringsteknik och C DD1316 Mikael Djurfeldt Föreläsning 2 Programmeringsteknik och C Python introduktion Utskrift Inläsning Variabler Datatyp Aritmetiska operatorer Omvandling
JavaScript del 3 If, Operatorer och Confirm
JavaScript del 3 If, Operatorer och Confirm Under förra uppgiften så kollade vi på hur användaren kan ge oss information via promt(), vi använde den informationen både för att skriva ut den och för att
Logik och kontrollstrukturer
Logik och kontrollstrukturer Flödet av instruktioner i ett programmeringsspråk bygger vi upp med hjälp av dess kontrollstrukturer. I C har vi exemplen if, if else, while, do while. Dessutom finns switch
Några inbyggda funktioner (med resultat!) Introduktion till programmering D0009E. Föreläsning 4: Villkor och rekursion. Modulus-operatorn.
Några inbyggda funktioner (med resultat!) Introduktion till programmering D0009E Föreläsning 4: Villkor och rekursion Konverterar mellan de grundläggande typerna: >>> int("") >>> int(.999) >>> float().0
Utsagor (Propositioner) sammansatta utsagor sanningstabeller logisk ekvivalens predikat (öppna utsagor) kvantifierare Section
Föreläsning 1 Utsagor (Propositioner) sammansatta utsagor sanningstabeller logisk ekvivalens predikat (öppna utsagor) kvantifierare Section 1.1-1.3 i kursboken Definition En utsaga (proposition) är ett
Fuzzy%Logic% Linköpings&Universitet&
729G11 HT212 ArtificiellIntelligensII Carno535 FuzzyLogic LinköpingsUniversitet Fördjupningsarbete Caroline Norén 91131-172 Carno535 729G11 HT212 ArtificiellIntelligensII Carno535 729G11 HT212 ArtificiellIntelligensII
JavaScript Block Editor:
Micro:bit Tärningen Att räkna med slumpen genom t.ex. tärningsslag och föra statistik över antal slag kan vara tidskrävande. Speciellt om man ska gör 100 st eller 1000 st kast. Genom att använda programmering
Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek
De åtta primitiva typerna Java, datatyper, kontrollstrukturer Skansholm: Kapitel 2) Uppsala Universitet 11 mars 2005 Typ Innehåll Defaultvärde Storlek boolean true, false false 1 bit char Tecken \u000
Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk
Föreläsning 2 steknik DD1310 Python introduktion Variabler Datatyper Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer betyder att instruera en dator Ett program är
Föreläsningsanteckningar och övningar till logik mängdlära
Inledande matematisk analys tma970, 010, logik, mängdlära Föreläsningsanteckningar och övningar till logik mängdlära Dessa öreläsningsanteckningar kompletterar mycket kortattat kap 0 och appendix B i Persson/Böiers,
Formell logik Kapitel 1 och 2. Robin Stenwall Lunds universitet
Formell logik Kapitel 1 och 2 Robin Stenwall Lunds universitet Kapitel 1: Atomära satser Drömmen om ett perfekt språk fritt från vardagsspråkets mångtydighet och vaghet (jmf Leibniz, Russell, Wittgenstein,
Övningshäfte 1: Logik och matematikens språk
GÖTEBORGS UNIVERSITET MATEMATIK 1, MMG200, HT2014 INLEDANDE ALGEBRA Övningshäfte 1: Logik och matematikens språk Övning A Målet är att genom att lösa och diskutera några inledande uppgifter få erfarenheter
Filosofisk Logik (FTEA21:4) föreläsningsanteckningar/kompendium. v. 2.0, den 29/ III. Metalogik 17-19
Filosofisk Logik (FTEA21:4) föreläsningsanteckningar/kompendium IV v. 2.0, den 29/4 2013 III. Metalogik 17-19 Modeller för satslogiken 18.1 Vi har tidigare sagt att en modell är en tolkning av en teori
Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk
Föreläsning 2 steknik DD1310 python introduktion Variabler Datatyp Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer funktioner betyder att instruera en dator Ett program
Komponentvisa operationer,.-notation Multiplikation (*), division (/) och upphöj till (ˆ) av vektorer följer vanliga vektoralgebraiska
Matlab-föreläsning 3 (4), 17 september, 2015 Innehåll Sekvenser (från förra föreläsningen) Upprepning med for-slingor och while-slingor Villkorssatser med if - then -else - Logik Sekvenser - repetion från
1 Föreläsning Implikationer, om och endast om
1 Föreläsning 1 Temat för dagen, och för dessa anteckningar, är att introducera lite matematisk terminologi och notation, vissa grundkoncept som kommer att vara genomgående i kursen. I grundskolan presenteras
Föreläsning 10 Datalogi 1 DA2001. Utskrift på skärmen. Syntax. print( Hej ) Hur är det? Hej. print( Hej,end= ) print( Hur är det? ) HejHur är det?
Föreläsning 10 Datalogi 1 DA2001 python introduktion Variabler Datatyp Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer på skärmen print( Hej ) print( Hur är det?
Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic
Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic Inledning Starta Microsoft Visual Studio 2005. Välj create Project Välj VB + Vindows Application och välj ett nytt
Introduktion till formella metoder Programmeringsmetodik 1. Inledning
Introduktion till formella metoder Programmeringsmetodik 1. Inledning Fokus på imperativa program (ex. C, Java) program betyder härefter ett imperativt program Program bestäms i en abstrakt mening av hur
ANDREAS REJBRAND NV3ANV Matematik Matematiskt språk
ANDREAS REJBRAND NV3ANV 2006-02-14 Matematik http://www.rejbrand.se Matematiskt språk Innehållsförteckning MATEMATISKT SPRÅK... 1 INNEHÅLLSFÖRTECKNING... 2 INLEDNING... 3 MÄNGDER... 4 Att uttrycka en mängd...
Artificial Intelligence
Omtentamen Artificial Intelligence Datum: 2013-01-08 Tid: 09.00 13.00 Ansvarig: Resultat: Hjälpmedel: Gränser: Cecilia Sönströd Redovisas inom tre veckor Inga G 10p, VG 16p, Max 20p Notera: Skriv läsbart!
Uppgift 1 (grundläggande konstruktioner)
Uppgift 1 (grundläggande konstruktioner) a) Skriv ett program som låter användaren mata in 7 heltal och som gör utskrifter enligt nedanstående körexempel. Mata in 7 heltal: 1 0 0 3 1 1 1 Tal nr 2 var en
MATEMATIKENS SPRÅK. Avsnitt 1
Avsnitt 1 MATEMATIKENS SPRÅK Varje vetenskap, liksom varje yrke, har sitt eget språk som ofta är en blandning av vardagliga ord och speciella termer. En instruktionshandbok för ett kylskåp eller för en
Logik och Jämförelser. Styrsatser: Villkorssatsen if och repetitonssatsen for. Scriptfiler. Kommentarer. Tillämpningar: Ett enkelt filter.
TAIU07 Föreläsning 3 Logik och Jämförelser. Styrsatser: Villkorssatsen if och repetitonssatsen for. Scriptfiler. Kommentarer. Tillämpningar: Ett enkelt filter. 27 januari 2016 Sida 1 / 21 Logiska variabler
Digitalitet. Kontinuerlig. Direkt proportionerlig mot källan. Ex. sprittermometer. Elektrisk signal som representerar ljud.
Analog Digitalitet Kontinuerlig Direkt proportionerlig mot källan Ex. sprittermometer Elektrisk signal som representerar ljud Diskret Digital Representation som siffror/symboler Ex. CD-skiva Varje siffra
Resonemang under osäkerhet. Bayes Certainty factors Dempster-Schafer Fuzzy logic
Resonemang under osäkerhet Bayes Certainty factors Dempster-Schafer Fuzzy logic Varför resonera med sannolikheter? Om agenten vet tillräckligt om världen, kan den med logik få fram planer som garanterat
Shakey s värld med HTNplanering
Shakey s värld med HTNplanering 2010-10-03 Artificiell Intelligens 2, 729G11 Maria Lindqvist Fördjupningsarbete, HT 2010 880913-0506 Linköpings Universitet marli314 2 Innehållsförteckning Inledning...
A. MENING OCH SANNINSGVÄRDE HOS IDENTITETSPÅSTÅENDE. Freges utgångspunkt: mening och meningsfullhet hos identitetspåståenden
II. FREGE A. MENING OCH SANNINSGVÄRDE HOS IDENTITETSPÅSTÅENDE Freges utgångspunkt: mening och meningsfullhet hos identitetspåståenden antag att namn A står för objekt a och namn B står för objekt b antag
PYTHON SNABBREPETITION MEN FÖRST LITE ALLMÄNT OM PROGRAMMERING 729G04 PYTHON 2. Dagens Python
Dagens Python 729G04 PYTHON 2 Mer om funktioner Villkorssatser JODY FOO Department of Computer and Information Science (IDA) Linköping University, Sweden Linköpings universitet 1 2 MEN FÖRST LITE ALLMÄNT
TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 9 november 2015 Sida 1 / 28
TANA17 Matematiska beräkningar med MATLAB för M, DPU Fredrik Berntsson, Linköpings Universitet 9 november 2015 Sida 1 / 28 Föreläsning 3 Linjära ekvationssystem. Invers. Rotationsmatriser. Tillämpning:
Bygga intelligenta system med luddig logik. Josefin Carlbring (josca824) Linköpings universitet 729G43 Artificiell Intelligens
Bygga intelligenta system med luddig logik () Linköpings universitet 729G43 Artificiell Intelligens 2016-01-24 Sammanfattning Denna rapport täcker in hur man bygger intelligenta system med hjälp av luddig
LEGO Robot programmering och felsökning Hur svårt ska det vara att följa den svarta linjen?
ICT LEGO Robot programmering och felsökning Hur svårt ska det vara att följa den svarta linjen? Daniel Lindfors 12/9/07 dlindf@kth.se Introduktionskurs i datateknik II1310 Sammanfattning Denna laboration
Statistisk mönsterigenkänning
Statistisk mönsterigenkänning Jonas Sandström Artificiell intelligens II Linköpings universitet HT 2011 Innehållsförteckning 1. Innehållsförteckning sid 2 2. Inledning sid 3 3. Statistisk mönsterigenkänning
Lösningar Datastrukturer TDA
Lösningar Datastrukturer TDA416 2016 12 21 roblem 1. roblem 2. a) Falskt. Urvalssortering gör alltid samma mängd av jobb. b) Sant. Genom att ha en referens till sista och första elementet, kan man nå både
Föreläsning 9: NP-fullständighet
Föreläsning 9: NP-fullständighet Olika typer av problem: 1. Beslutsproblem: A(x) =Ja. 2. Optimeringsproblem: A(x) =m Vanligen max/min. 3. Konstruktionsproblem: A(x) =En struktur. Vanligen lösningen till
TDIU01 - Programmering i C++, grundkurs
TDIU01 - Programmering i C++, grundkurs Sammanfattning period 1 Eric Elfving Institutionen för datavetenskap 1 oktober 2013 Översikt Ett C++-programs uppbyggnad Variabler Datatyper Satser Uttryck Funktioner
p /\ q r DD1350 Logik för dataloger Kort repetition Fö 3 Satslogikens semantik
DD1350 Logik för dataloger Fö 3 Satslogikens semantik 1 Kort repetition Satslogik formellt språk för att uttrycka påståenden med variabler och konnektiv /\, \/,, t.ex. p /\ q r 1 Kort repetition Naturlig
Extramaterial till Matematik Y
LIBER PROGRAMMERING OCH DIGITAL KOMPETENS Extramaterial till Matematik Y NIVÅ ETT Taluppfattning och tals användning ELEV Det finns många olika programmeringsspråk. Ett av dem är Python, som du ska få
SPELTESTNING FUZZY LOGIC. Kandidatuppsats i Informatik. Patrik Lundqvist Michael Enhörning VT 2010
SPELTESTNING FUZZY LOGIC Kandidatuppsats i Informatik Patrik Lundqvist Michael Enhörning VT 2010 Svensk titel: Speltestning Engelsk titel: Gametesting Utgivningsår: 2010 Författare: Patrik Lundqvist, Michael
Carrer de Viladomat 89 BH-703
www.barcelona-home.com info@barcelona-home.com +34 934 231 270 - Carrer de Viladomat 89 EXKLUSIVT HUS MED POOL ATT HYRA I BARCELONA Beskrivning Pris / natt från 253 Pris per månad från 8000 Denna underbara
Kritiskt tänkande HTXF04:3 FTEB05. Utvärdering av argument
Kritiskt tänkande HTXF04:3 FTEB05 Utvärdering av argument Utvärdering av argument Två allmänna strategier Felslutsmetoden: Man försöker hitta felslut, formella och informella, från en lista över vanliga
SF1901: Sannolikhetslära och statistik Föreläsning 2. Betingad sannolikhet & Oberoende
SF1901: Sannolikhetslära och statistik Föreläsning 2. Betingad sannolikhet & Oberoende Jan Grandell & Timo Koski 21.01.2015 Jan Grandell & Timo Koski () Matematisk statistik 21.01.2015 1 / 1 Repetition:
729G74 IT och programmering, grundkurs. Tema 2. Föreläsning 3 Jody Foo,
729G74 IT och programmering, grundkurs Tema 2. Föreläsning 3 Jody Foo, jody.foo@liu.se Föreläsningsöversikt Information i grafstrukturer Diskret matematik Relationer: kopplingar mellan mängder Funktioner
732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner
732G11 Linköpings universitet 2011-01-21 1 2 3 4 5 6 Skapa program Kompilera: Källkod Kompilator bytekod Köra: Bytekod Virtuell maskin Ett riktigt program Hej.java class Hej { public static void main (
Logisk semantik I. 1 Lite om satslogik. 1.1 Konjunktioner i grammatisk bemärkelse. 1.2 Sant och falskt. 1.3 Satssymboler. 1.
UPPSALA UNIVERSITET Datorlingvistisk grammatik I Institutionen för lingvistik och filologi Oktober 2007 Mats Dahllöf http://stp.ling.uu.se/ matsd/uv/uv07/dg1/ Logisk semantik I 1 Lite om satslogik 1.1
Innehållsförteckning. Figur- och tabellförteckning. Figure 1 Blockschema över hårdvaran...4 Figure 2 Blockschema över programet...
Abstract Syftet var att konstruera en väder station som håller koll på temperaturen. Huvudfunktionen var att få en grafisk visning av temperaturen över ett visst tidsintervall eftersom vi valde den grafiska
Objektorienterad Programmering (TDDC77)
Objektorienterad Programmering (TDDC77) Föreläsning II: utmatning, variabler, typer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Kompilera och köra programmet under terminal 2: I Skapa Hej.java
Objektorienterad programmering Föreläsning 4
Objektorienterad programmering Föreläsning 4 Copyright Mahmud Al Hakim mahmud@dynamicos.se www.webbacademy.se Agenda Introduktion till objektorientering Klasser och Objekt Instansvariabler Metoder Introduktion
Fuzzy Logic. En smidig väg för att reglera ditt system! BILAGA A. Fuzzy Logic Wikingsons Wåghalsiga Wargar Projekt ABB VT 2006 Västerås
BILAGA A Fuzzy Logic En smidig väg för att reglera ditt system! ABB INDUSTRIGYMNASIUM Fuzzy Logic Wikingsons Wåghalsiga Wargar Projekt ABB VT 2006 Västerås Innehåll 1 Introduktion...4 1.1 Reglerteknik...4
Uppgift 4A - Definition av enkla funktioner
Uppgift 4A - Definition av enkla funktioner (defun start-klockslag (tidsperiod) "tidsperiod -> klockslag" (typkontroll tidsperiod #'tidsperiod?) (first (packa-upp tidsperiod))) (defun slut-klockslag (tidsperiod)
I Skapa Hej.java och skriv programmet. I Kompilera med javac Hej.java. I Rätta fel och repetera tills du lyckas kompilera ditt program
Kompilera och köra programmet Objektorienterad Programmering (TDDC77) Föreläsning II: utmatning, variabler, typer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 under terminal 2: I Skapa Hej.java
Introduktion till Python
# * coding : utf 8 * 2 """ 3 Spyder Editor 4 5 This i s a temporary s c r i p t f i l e. 6 """ 7 import t h i s 8 9 """ 0 B e a u t i f u l i s b e t t e r than ugly. E x p l i c i t i s b e t t e r than
Föreläsning 15. Logik med tillämpningar
Föreläsning 15 Logik med tillämpningar 00-05-22 Innehåll Exempel på expertsystem Eliza Min forskning Vad är ett beslutsstöd? Exempel på byggda beslutsstöd The production line för beslutsstöd. Extraktionsfasen
Skapa modeller i Vikingen
Skapa modeller i Vikingen Generellt En modell är egentligen ett datorprogram som utför saker åt dig. Det börjar med att du har en idé som du vill testa om den är lönsam eller inte. Du behöver skriva ned
Föreläsning 4. Val, boolska värden, läsbarhet, osv
Föreläsning 4 Val, boolska värden, läsbarhet, osv Exempel /* Programmeringsteknik med C och Matlab Programmering i C HT13 Exempel Fil: plus_one.c Författare: Jonny Pettersson Användare: jonny Datum: 7
Structured Query Language (SQL)
Structured Query Language (SQL) Christer Stuxberg christer.stuxberg@im.uu.se Institutionen för Informatik och Media Översikt Introduktion Enkla frågor (queries) Hämta en specifik kolumn Sök Sammanfattning
Formell logik Kapitel 9. Robin Stenwall Lunds universitet
Formell logik Kapitel 9 Robin Stenwall Lunds universitet Kapitel 9: Introduktion till kvantifiering Vi har hittills betraktat logiska resonemang vars giltighet enbart beror på meningen hos konnektiv som
LARS. Ett e-bokningssystem för skoldatorer.
LARS Ett e-bokningssystem för skoldatorer. Därför behöver vi LARS Boka dator i förväg. Underlätta för studenter att hitta ledig dator. Rapportera datorer som är sönder. Samordna med schemaläggarnas system,
Micro:bit och servomotorer
Micro:bit och servomotorer Servomotorer som beskrivs här är så kallade micro servos och har beteckningarna: FS90 FS90R En servomotor har tre kablar. En brun som kopplas till GND, en röd som är för strömförsörjning
1.2 Polynomfunktionens tecken s.16-29
Detta avsnitt handlar om olikheter. < mindre än > större än mindre än eller lika med (< eller =) större än eller lika med (> eller =) Vilka tal finns mellan 2 och 5? Alla tal som är större än 2. Och samtidigt
I kursen i endimensionell analys är mängden av reella tal (eng. real number), R, fundamental.
Lunds tekniska högskola Datavetenskap Lennart ndersson Föreläsningsanteckningar EDF10 4 Mängder 4.1 Motivering Mängden är den mest grundläggande diskreta strukturen. Nästan alla matematiska begrepp går
Programmering A C# VT 2010. Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson 2010 02 08
Programmering A C# VT 2010 Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson 2010 02 08 Innehåll Hjälp och referenser... 3 Kap 1 Introduktion... 3 Steg för steg... 3 Kapitel 2 Variabler...
Viktiga begrepp. Algoritm. Array. Binärkod. Blockprogrammering. Bugg / fel och felsökning. Dataspel. Dator
Viktiga begrepp Den här ordlistan är till för dig som går kursen Om Programmering. Eftersom detta är en grundläggande kurs har vi i vissa fall gjort en del förenklingar. En del begrepp är svåra att förenkla,
Logik. Boolesk algebra. Logik. Operationer. Boolesk algebra
Logik F4 Logik Boolesk algebra EDAA05 Roger Henriksson Jonas Wisbrant Konsten att, och vetenskapen om, att resonera och dra slutsatser. Vad behövs för att man ska kunna dra en slutsats? Hur kan man dra
Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten 2010. Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk:
Föreläsning 1 OH: Övergripande information Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk: * maskinspråk = ettor och nollor, kan bara en maskin förstå. * programmeringsspråk