729G43'Ar*ficiell'intelligens' Kunskapsrepresenta*on' Kunskapsrepresenta*on' Kunskapsbaserade'agenter' Kunskapsbaserad'agent' Arne'Jönsson' HCS/IDA' '

Storlek: px
Starta visningen från sidan:

Download "729G43'Ar*ficiell'intelligens' Kunskapsrepresenta*on' Kunskapsrepresenta*on' Kunskapsbaserade'agenter' Kunskapsbaserad'agent' Arne'Jönsson' HCS/IDA' '"

Transkript

1 Kunskapsrepresenta*on' 729G43'Ar*ficiell'intelligens' Kunskapsrepresenta*on' Arne'Jönsson' HCS/IDA' ' Introduk*on' WumpusEvärlden' FOPL,'Inferens' Resolu*on,'Unifiering' Representa*on'av'kunskap' Ontologi' Strukturerad'representa*on/seman*ska'nät' Kunskapsbaserade'agenter' Generell'kunskap'om'världen' Deklara*v'beskrivning'' (jfr'agent'med'procedurell'kunskap)' Resonemang' Flexibla' explicita'mål' ny'kunskap' Par*ellt'observerbara'världar'(jfr'sökning)' Kunskapsbaserad'agent' Har'en'kunskapsbas'som'innehåller'fakta'och' resonemangmekanismer'för'ax'dra'slutsatser'baserat'på' dessa'fakta' Agenten' tolkar'percept'vid'en'*d't' uppdaterar'kb'med'perceptet' väljer'handling'baserat'på'kb' uppdaterar'kb'med'handling'vid't' UZör'handling'och'uppdaterar'*den'

2 Kunskapsbaserad'agent' WumpusEvärlden' KB = [ ] t = 0 def KBagent(percept): tell(kb, makeperceptsentence(percept, t)) action = ask(kb, makeactionquery(t)) tell(kb, makeactionsentence(action, t)) t = t + 1 return action Stank Stank Stank Bris Bris HÅL Bris HÅL Bris Bris HÅL Bris WumpusEvärlden' Percept'(Stank,'Bris,'GliXer,'Bump,'Skrik)' Wumpusen's*nker'en'ruta'ver*kalt'och'horsiontellt' Hål'ger'bris'en'ruta'ver*kalt'och'horisontellt' Guld'gliXrar' Bump'i'vägg' Döende'wumpus'skriker' WumpusEvärlden' Handlingar'(framåt,'(sväng'höger),'(sväng'vänster),'ta,' skjut,'kläxra)' Om'agenten'är'vid'skaXen'innebär' ta 'ax'agenten'har'guldet' Om'agenten'står'riktad'mot'wumpusen'och'skjuter'dör'wumpusen' Om'agenten'är'vid'startplatsen'och'kläXrar'kommer'den'ut' Om'agenten'hamnar'i'hål'eller'hos'wumpusen'dör'den'

3 WumpusEvärlden'resonemang' Om'det'blåser'på'ruta'x'och'ruta'a,'b,'c'och'd'är' angränsande'rutor'så'kan'det'finnas'hål'på'a,'b,'c'och'd' Om'det'inte'blåser'på'ruta'x'och'a,'b,'c'och'd'är' angränsande'rutor'så'kan'det'inte'finnas'hål'på'a,'b,'c' eller'd' Om'det'finns'eX'hål'på'ruta'x'eller'y'och'det'inte'finns'eX' hål'på'x'så'finns'det'ex'hål'på'y' Wumpusvärlden' Percept = [Stench, Breeze, Glitter, Bump, Scream] Action = [Forward, Right, Left, Grab, Shoot, Climb] Representera tid och välja handling Ex Antag Percept([s, b, Glitter, m, c], 5) ask( a bestaction(a, 5)) bör ge Grab tell(grab, 5) Representa*on'av'världen' Rutor'[x,'y]' Närliggande'rutor' x,'y,'z,'w'adjacent([x,'y],[z,'w])' '' [z,'w]' '{[x+1,y],'[xe1,y],'[x,'y+1],'[x,'ye1]}' Lagra'uZorskning,'ex' s,t'at(agent,'s,'t)' 'Breeze(t)' 'Breezy(s)' Diagnosregler'(diagnos*cerar'från'effekter'*ll'fakta)' s'breezy(s)' ' r'adjacent(r,s)' 'Pit(r)' Kausalregler'(modellbaserade'resonemang)' r'pit(r)' '[ s'adjacent(r,s)' 'Breezy(s)]'' Hantera'föränding' Vill'uXrycka'hur'en'handling'påverkar'världen'i'FOPL' Inför'situa*onsvariabel'för'fluents'dvs'sådant'som'ändrar' sig'' Ex'At(Agent,'[1,'1],'S0),'At(Agent,'[1,'2],'S1)' Saker'som'inte'ändrar'sig'behöver'ingen'si*a*onsvariabel,'ex'Wall([0,'1])' Uppdatera'världen.'Inför'Result(ac*on,'situa*on)' Result(Forward,'S0)'='S1' Result(Grab,'S1)'='S2'

4 Situa*onskalkyl' Världen'består'av'en'sekvens'situa0oner2 Handlingar'resulterar'i'nya'situa*oner' Fluents'är'predikat'som'beskriver'rela*oner'eller' egenskaper'som'kan'påverkas'av'handlingar,'' dessa'tar'ex'extra'situa*onsargument' Funk*onen'Result(ac*on,'situa*on)'används'för' representera'övergången'mellan'två'situa*oner' Situa*onskalkyl' 'Exempel' Beskrivning'av'wumpusvärldens'ini*al*llstånd' At(agent,'[1'1],'s0)' Direc*on(agent,'east,'s0)' At(wumpus,'[1'3])' At(pit1,'[3'1])' At(pit2,'[3'3])' At(pit3,'[4'4])' At(gold,'[2'3])' Effektaxiom' Wumpusvärldens'handlingar' s'at(agent,'(x'y),'s)' 'Direc*on(agent,'east,'s)' ' '''''At(agent,'(x+1'y),'Result(forward,'s))' s'direc*on(agent,'east,'s)' ' '''''Direc*on(agent,'north,'Result(turnElen,'s))' s'at(agent,'(x'y),'s)' 'At(gold,'(x'y),'s)' ' '''''Holding(agent,'gold,'Result(grab,'s))' Kallas'effektEaxiom,'beskriver'det'som'förändras' Situa*onskalkyl'E'exempel' Handlingsekvens' s1'='result(forward,'s0)' s2'='result'(turnelen,'s1)' s3'='result(forward,'s2)' s4'='result(forward,'s3)' s5'='result(grab,'s4)'

5 Förändringar'i'världen' Antag'' At(Agent,'[2,3],'S0),'Portable(guld),'Present(guld,'S0)' Grab'ger'Holding(guld,'S1)' Antag'aX'agenten'går'framåt' At(Agent,'[2,3],'Result(Forward,'S1))'ger' At(Agent,'[2,4],'S2)' Men'agenten'har'också'guldet'med'sig,'dvs' a,x,s'holding(x,'s)' '(a Release)' 'Holding(x,'Result(a,'s))' och' a,x,s' Holding(x,s)' '(a Grab)' ' (Present(x,s)' 'Portable(x))' ' Holding(x,'Result(a,s))' Kallas'frameaxiom' Frameproblemet' Hur'representera'vad'som'påverkas''och'vad'som'inte' påverkas'av'en'handling.' Representa*onsproblemet:'representa*on'av'handlingar' Inferensproblemet:'representa*on'av'sekvenser'av'handlingar' Relaterade'problem:' Qualifica*on'problem' Hur'räknar'vi'upp'under'vilka'omständigheter'en'handling'lyckas' Ramifica*on'problem' Hur'räknar'vi'upp'alla'implicita'konsekvenser'av'en'handling' SuccesorEstateEaxiom' Successor5state2axiom2beskriver'hur'fluents'förändras' över'*d' Kombinera'effektEoch'frameaxiom' Handling'som'gör'något'sant' ' redan'sant'och'ingen'handling'som'gör'falskt' s'at(agent,'(x+1'y),'result(a,'s)' ' '''''[(a'='forward' 'At(agent,'(x'y),'s)' '' ''''''Direc*on(agent,'east,'s))]' ' '''''(a' forward' 'At(agent,'(x+1'y),'s))'' Skapa'en'kunskapsbas' 1. Itera*v'process' 2. Iden*fiera'uppginen' 3. Hämta'relevant'domänkunskap' 4. Definiera'en'vokabulär' 'Ontologi' 5. Skriv'axiom'som'beskriver'domänen' 6. Gör'en'problemkodning' 7. Testa'och'använd' 8. Debug'

6 Inferens' Tre'typer:' Framåtsökning' Söker'från'reglerna'framåt' Bakåtsökning' Söker'från'reglerna'bakifrån' Resolu*on' Exempel' 1. Rökning' 'Eld' 'Rök' 2. Rök' 'Rökdetektor' 'Larm' 3. Larm' 'Brandkåren'kommer' 4. Rökning' 'Larm' 'Falsklarm' 5. Brandkåren'kommer' 'Falsklarm' 'Arga'brandmän' 6. Rökning' 7. Rökdetektor' 8. Arga'brandmän?' Framå*nferens' 1. Rökning Eld Rök 2. Rök Rökdetektor Larm 3. Larm Brandkåren kommer 4. Rökning Larm Falsklarm Bakå*nferens' 1. Rökning Eld Rök 2. Rök Rökdetektor Larm 3. Larm Brandkåren kommer 4. Rökning Larm Falsklarm Börja'i'någon'premiss' 5. Brandkåren kommer Falsklarm Arga brandmän 6. Rökning Börja'i'slutsatsen' 5. Brandkåren kommer Falsklarm Arga brandmän 6. Rökning 7. Rökdetektor 8. Arga brandmän? 7. Rökdetektor 8. Arga brandmän? Falsklarm Rökdetektor Rökning Rök Larm Brandkåren Arga brandmän Arga brandmän Brandkåren Larm Rök Rökdetektor Falsklarm Rökning

7 Resolu*on' Mekanisk'bevismetod' Ex,'satslogik' Rökning' 'Rök' Rök' Brandvarnarlarm' Implika*on'transi*v,'dvs'Rökning' 'Brandvarnarlarm' α' 'β'kan'skrivas'som' α' 'β' 'Rökning' 'Rök' ' 'Rök' 'Brandvarnarlarm' Dvs' Rökning' 'Brandvarnarlarm' Kallas'resolvent'' Resolu*on' 1. Konvertera'alla'satser'*ll'konjunk*v'normalform' 2. Negera'vad'som'skall'visas,'konvertera'*ll'konjunk*v' normalform'och'lägg'*ll'kunskapsbasen' 3. Upprepa'*ll'kontradik*on'eller'ingen'förbäXring'eller' annat'stoppvillkor' a. Välj'två'klausuler' b. Resolvera'dessa.'Resolventen'är'disjunk*onen'av'alla'termer' med'lämpliga'subs*tu*oner.' c. Om'resolventen'tomma'mängden'så'returnera'kontradik*on,' annars'lägg'resolventen'*ll'kb' Exempel' 1. Rökning' 'Eld' 'Rök' 2. Rök' 'Rökdetektor' 'Larm' 3. Larm' 'Brandkåren'kommer' 4. Rökning' 'Larm' 'Falsklarm' 5. Brandkåren'kommer' 'Falsklarm' 'Arga'brandmän' 6. Rökning' 7. Rökdetektor' 8. Arga'brandmän?' Gör'om'*ll'konjunk*v'form,'1' 1. (Rökning' 'Eld)' 'Rök' 2. (Rök' 'Rökdetektor)' 'Larm' 3. Larm' 'Brandkåren'kommer' 4. (Rökning' 'Larm)' 'Falsklarm' 5. (Brandkåren'kommer' 'Falsklarm)' 'Arga'brandmän' 6. Rökning' 7. Rökdetektor' 8. Arga'brandmän'

8 Gör'om'*ll'konjunk*v'form,'2' 1. (Rökning' 'Eld)' 'Rök' '( Rökning' ' Eld)' 'Rök' 1. Rökning' 'Rök' 2. Eld' 'Rök' 2. (Rök' 'Rökdetektor)' 'Larm' '( Rök' ' Rökdetektor)' 'Larm'' 1. Rök' ' Rökdetektor' 'Larm' 3. Larm' 'Brandkåren'kommer' 4. (Rökning' 'Larm)' 'Falsklarm' '( Rökning' ' Larm)' ' Falsklarm'' 1. Rökning' ' Larm' 'Falsklarm' 5. (Brandkåren'kommer' 'Falsklarm)' 'Arga'brandmän' 1. Brandkåren'kommer' ' Falsklarm' 'Arga'brandmän' 6. Rökning' 7. Rökdetektor' 8. Arga'brandmän' Konjunk*v'form' 1. Rökning' 'Rök' 2. Eld' 'Rök' 3. Rök' ' Rökdetektor' 'Larm' 4. Larm' 'Brandkåren'kommer' 5. Rökning' ' Larm' 'Falsklarm' 6. Brandkåren'kommer' ' Falsklarm' 'Arga'brandmän' 7. Rökning' 8. Rökdetektor' 9. Arga'brandmän' Härled'en'motsägelse' Plocka'två'satser,'t.ex.'1+2'och'lägg'*ll'KB' Rökning' ' Eld' 'Rök' Eller'3+8'' Rök' 'Larm' 10+11'ger' Rökning' ' Eld' 'Larm' 6+9'ger' Brandkåren'kommer' ' Falsklarm'' 4+13'ger' Larm' ' Falsklarm' 14+5'ger' Rökning' ' Larm' 15+7'ger' Larm' 3+16'ger' Rök' ' Rökdetektor'' 1+17'ger' ' Rökning' ' Rökdetektor'' 18'+'7'ger' Rökdetektor'' 19'+'8'ger'en'motsägelse' 1. Rökning Rök 2. Eld Rök 3. Rök Rökdetektor Larm 4. Larm Brandkåren kommer 5. Rökning Larm Falsklarm 6. Brandkåren kommer Falsklarm Arga brandmän 7. Rökning 8. Rökdetektor 9. Arga brandmän Resolu*on'för'predikatlogik' Variabler'och'kvan*fierare' Ex'' 1. At(Wumpus,'[1,2],'5)' 2. At(Wumpus,'[1,'3],'6)' Ger'resolventen' At(Wumpus,'[1,'3],'6)' 'At(Wumpus,'[1,2],'5)' medan' 3. ' At(Wumpus,'l,'t)'och'1.' med'{l/[1,2],'t/5}'(l'subs*tueras'med'[1,2]'och't'subs*tueras'med'5)' ger'en'motsägelse,'dvs'en'tom'klausul''

9 Unifiering' För'aX'lyckas'med'resolu*on'i'FOPL'behöver'man' använda'unifiering' Variabler'byts'mot'andra'variabler'eller'konstanter,'en' subs*tu*on' Ona'söker'man'den'mest'generella'unifieringen,'MGU' Unifiering' 'Exempel' Gillar(Olga,'x)' x/mask' '''''''''''Gillar(y,'mask)' ' ''''''''''''''''''y/olga' ' Gillar(Olga,'mask)' ' Gillar(Olga,'x)'och'Gillar(y,'mask)'kan'alltså'unifieras'med' hjälp'av'subs*tu*onen'{x/mask,'y/olga)' Subs*tu*oner'propageras' 'Ex' x'hund(x)' 'Skäller(x)'kan'konverteras'*ll' Hund(x)' 'Skäller(x)'om'vi'antar'aX'variabler'all*d'är'allkvan*fierade' Hund(Pluto)' 1+2'med'[x/Pluto]'ger'Skäller(Pluto),'dvs'x'har'subs*tuerats'i'båda' predikaten' Unifiering' 'Exempel' Unifiera'Flagga(blå,x)'med'Flagga(blå,gul)' {Flagga(blå,x)'='Flagga(blå,gul)}' {blå=blå,'x=gul}' {x=gul}'

10 Unifiering' 'Exempel' Unifiera'Flagga(blå,x)'med'Flagga(y,gul)' {Flagga(blå,x)'='Flagga(y,gul)}' {blå=y,'x=gul}' {y=blå,'x=gul}' Unifiering' 'Exempel' Unifiera'Flagga(blå,x)'med'Flagga(y,KomplemenZärg(y))' {Flagga(blå,x)'='Flagga(y,KomplemenZärg(y))}' {blå=y,'x=komplemenzärg(y)}' {y=blå,'x=komplemenzärg(y)}' {y=blå,'x=komplemenzärg(blå)}' Unifiering' 'Exempel' Unifiera'Flagga(blå,x)'med'Flagga(x,gul)' {Flagga(blå,x)'='Flagga(x,gul)}' {blå=x,'x=gul}' {x=blå,'x=gul}' FEL' Unifieringsalgoritmen,'1' def unify(x, y, subst): if subst=="fail": return "Fail" elif x==y: return subst elif variable(x): unifyvar(x, y, subst) elif variable(y): unifyvar(y, x, subst) elif isinstance(x, list) and isinstance(y, list): unify(rest(x), rest(y), unify(first(x), first(y), subst)) else: return "Fail"

11 Unifieringsalgoritmen,'2' def unifyvar(var, x, subst): if getsubst(var, subst): unify(lookup(var, subst), x, subst) elif variable(x) and getsubst(x, subst): unify(var, lookup(x, subst), subst) elif occursin(var, x, subst): return "Fail" else: extendsubst(var, x, subst) Exempel' Unifiera Smelly([1,2]) och Smelly(l) unify([ Smelly, [1,2] ], [ Smelly,l],[]) x = [ Smelly, [1,2] ], y = [ Smelly,l] 1. subst Fail 2. x y 3. x eller y inte variabler 4. x och y listor 5. unify( [1,2], l, unify([ Smelly ], [ Smelly ],[]) 6. x==y alltså inga nya substitutioner 7. l variabel så unify ger anrop till unifyvar(l, [1,2],[]) 8. unifyvar hittar inga substitutioner så 9. extendsubst(l, [1,2], []) returnerar {l/ [1,2] } Större'exempel'(med'förenklingar)' unify([ F,[ G, A, m], [ F, k, m]], [ F, l, [ F, l, [ G, A, B ]]], [ ]) unify([[ G, A, m], [ F, k, m]], [l, [ F, l, [ G, A, B ]]], unify( F, F, [ ])) [ ] unify([[ G, A, m], [ F, k, m]], [l, [ F, l, [ G, A, B ]]], [ ]) unify([ F, k, m], [ F, l, [ G, A, B ]], unify([ G, A, m], l, [ ])) unify-var(l, [ G, A, m], [ ]) [l/[g, A, m]] unify([k, m], [l, [ G, A, B ]], unify( F, F, [l/[g, A, m]] )) [l/[g A m]] unify([k, m], [l, [ G, A, B ]], [l/[g, A, m]] )) unify(m, [ G, A, B ], unify(k, l, [l/[g, A, m]] )) unify-var(k, l, {l/[g, A, m]}) unify(k, [ G, A, m], [l/[g, A, m]] ) unify-var(k, [ G, A, m], [l/[g, A, m]]) [k/[g A m]] unify(m, [ G, A, B ], [k/[g, A, m], l/[g, A, m]] ) unify-var(m, [ G, A, B ], [k/[g, A, m], l/[g, A, m]] ) [m/[g A B]] [m/[g A B], k/[g A m], l/[g A m]] Konvertering'*ll'konjunk*v'normalform' 1. Eliminera'implika*on' 2. Reducera'nega*onernas'räckvidd' xp(x) x P(x),' xp(x) x P(x),' x P(x) xp(x),' x P(x) xp(x)''' 3. Standardisera'variabler' 4. Eliminera'existenskvan*fierare,'skolemisering' 5. Konvertera'*ll'prenex'form' 6. Skippa'prefix' Allt'är'allkvan*fierat' 7. Konvertera'*ll'konjunk*on'av'disjunk*oner' 8. Bilda'klausuler' 'Implicit'konjuk*on'mellan'klausuler' 9. Döp'om'variabler'

12 Skolemisering' ErsäXer'existenskvanifierade'variabler'med'konstant,'eller' funk*on'som'vid'behov'tar'fram'den'individ'för'vilken'uxrycket' gäller' Ex.' xp(x)' 'P(S)'där'S'är'en'skolemkonstant'och'står'för'den' individ's'för'vilken'p(x)' Ex.'Alla'har'eX'hjärta' x'person(x)' ' y'hjärta(y)' 'Har(x,y)' Skolemkonstant'ger' x'person(x)' 'Hjärta(S)' 'Har(x,S),'dvs' alla'har'samma'hjärta'vilket'är'fel' Inför'skolemfunk*on,'g(x),'som'beror'av'allkvan*fierade' variabeln'x'ger' x'person(x)' 'Hjärta(g(x))' 'Har(x,g(x))'' Exempel,'1' x'{p(x)' '( y[p(y)' 'P(f(x,'y))]' ' y[q(x,'y)' 'P(y)])}' ' 1'Eliminera'implika*on' ' x'{ P(x)' '( y[ P(y)' 'P(f(x,'y))]' ' y[ Q(x,'y)' 'P(y)])}' 2'Reducera'nega*onernas'räckvidd' ' x'{ P(x)' '( y[ P(y)' 'P(f(x,'y))]' ' y[q(x,'y)' ' P(y)])}' 3'Standardisera'variabler' ' x'{ P(x)' '( y[ P(y)' 'P(f(x,'y))]' ' z[q(x,'z)' ' P(z)])}' 4'Eliminera'existenskvan*fierare' ' x'{ P(x)' '( y[ P(y)' 'P(f(x,'y))]' '[Q(x,'g(x))' ' P(g(x))])}' 5'Konvertera'*ll'prenex'form' ' x' y{ P(x)' '([ P(y)' 'P(f(x,'y))]' '[Q(x,'g(x))' ' P(g(x))])}' Exempel,'2' 6 Skippa prefix { P(x) ([ P(y) P(f(x, y))] [Q(x, g(x)) P(g(x))])} 7 Konvertera till konjunktion av disjunktioner [ P(x) P(y) P(f(x, y))] [ P(x) Q(x, g(x))] [ P(x) P(g(x))] 8 Bilda klausuler P(x) P(y) P(f(x, y)) P(x) Q(x, g(x)) P(x) P(g(x)) 9 Döp om variabler P(x) P(y) P(f(x, y)) P(z) Q(z, g(z)) P(w) P(g(w)) Exempel' 1. Ber*l'var'pudel' 2. Ber*l'föddes'1955' 3. Ingen'hund'lever'längre'än'50'år'' 4. Pudlar'är'hundar' 5. Alla'hundar'är'däggdjur' 6. Nu'är'det'2015' 7. Visa'aX'det'finns'döda'pudlar'nu'

13 Exempel,'översäX' 1. Ber*l'var'pudel' Pudel(Ber*l)' 2. Ber*l'föddes'1955' Född(Ber*l,'1955)' 3. Ingen'hund'lever'längre'än'50'år' x,s,t'hund(x)' 'Född(x,'s)' 'gt(tes,'50)' 'Död(x,'t)' 4. Pudlar'är'hundar' x'pudel(x)' 'Hund(x)' 5. Alla'hundar'är'däggdjur' x'hund(x)' 'Däggdjur(x)' 6. Nu'är'det'2015' Nu'='2015' 7. Det'finns'döda'pudlar'nu' x'pudel(x)' Död(x,'Nu)' Exempel,'konvertera'1' 1. Pudel(Ber*l)' 2. Född(Ber*l,'1955)' 3. x,s,t'hund(x)' 'Född(x,'s)' 'gt(tes,'50)' 'Död(x,'t)' ' (Hund(x)' 'Född(x,'s)' 'gt(tes,'50))' 'Död(x,t)' ' Hund(x)' ' Född(x,'s)' ' gt(tes,'50)' 'Död(x,t)' 4. s'pudel(x)' 'Hund(x)' Pudel(x)' 'Hund(x)' 5. s'hund(x)' 'Däggdjur(x)' Hund(x)' 'Däggdjur(x)' 6. Nu'='2015' 7. x'pudel(x)' Död(x,'Nu)' ' x'pudel(x)' Död(x,'Nu)' '' x' '(Pudel(x)' Död(x,'Nu))' ' Pudel(x)' ' Död(x,'Nu)' Exempel,'konvertera'2' 1. Standardisera'variabler' 2. Pudel(Ber*l)' 3. Född(Ber*l,'1955)' 4. Hund(x)' ' Född(x,'s)' ' gt(tes,'50)' 'Död(x,t)' 5. Pudel(p)' 'Hund(p)' 6. Hund(h)' 'Däggdjur(h)' 7. Nu'='2015' 8. Pudel(w)' ' Död(w,'Nu)' Resolu*onsstrategier' Ta'bara'satser'med'komplement' Föredra'små'resolventer' Unit'preference' Set'of'support' Behåll'en'bra'delmängd.'Börja'med'slutsatsen' Eliminera'satser'som'subsumeras'av'andra'

14 1. Pudel(Bertil) 1. Pudel(Bertil) 2. Född(Bertil, 1955) 2. Född(Bertil, 1955) Resolu*onsexempel' (7) (1) 3. Hund(x) Född(x, s) gt(t-s, 50) Död(x,t) 4. Pudel(p) Hund(p) 5. Hund(h) Däggdjur(h) 6. Nu = 2015 Resolu*onsexempel,'2' 3. Hund(x) Född(x, s) gt(t-s, 50) Död(x,t) 4. Pudel(p) Hund(p) 5. Hund(h) Däggdjur(h) 6. Nu = 2015 {w/bertil} 7. Pudel(w) Död(w, Nu) 7. Pudel(w) Död(w, Nu) 8. Död(Bertil, Nu) (6) 10. Hund(Bertil) Född(Bertil, s) gt(2015-s, 50) (2) {Nu/2015} (4) {s/1955} 11. Hund(Bertil) gt( , 50) 9. Död(Bertil, 2015) (3) {p/bertil} gt( , 50) gt(60,50) T F {x/bertil, t/2015} (1) 12. Pudel(Bertil) 10. Hund(Bertil) Född(Bertil, s) gt(2015-s, 50) Motsägelse, alltså Det finns en död pudel nu Ontologi' Toppontologi' Kategorier'och'objekt' Fysiska'objekt' SammansaXa'objekt' MåX'och'enheter' Handlingar,'situa*oner'och'händelser' Situa*onskalkyl,'Frameproblemet' Tid,'rum'och'förändring' Händelser'och'processer' Abstrakta Objekt Allt Generaliserade händelser Mängder Tal Repr. Objekt Intervall Platser Fysiska objekt Processer Kategorier Meningar Mått Händelser Saker Materia Tidsintervall' Mentala'objekt'och'uppfaXningar' Tider Vikter Djur Agenter Fast Flytande Gas Människor

15 Exempel'på'genrella'ontologier' CYC' CYC' Thing Stort'(239000'koncept)'AIEKR'projekt' Logikbaserat'representa*onsspråk'CycL' WORDNET' IndividualObject Intangible RepresentedThing Stor'(117000'synsets)'lexikal'taxonomi'' Baserat'på'psykolingvis*ska'studier' Event Stuff IntangibleObject Collection Process IntangibleStuff AtributeValue Relationship Slot WORDNET' {thing, entity} {living thing, organism} {non-living thing, object} {plant, flora} {animal, fauna} {artifact} {food} Kategorier' Resonerar'inte'om'objekt'utan'om'koncept,'kategorier' Ex'Guld,'inte'Guld32' Gör'predikat'*ll'objekt'i'språket' Ex'Guld'refererar'*ll'kategorin'Guld,'x' 'Guld'betyder'aX'x'är'guld.' Kallas'reifica*on'kan'skriva't.ex.'Färg(Guld)'='gul' Kategorier'ärver'egenskaper' Ex'Guld' 'Ädelmetall'betyder'aX'Guld'är'en'subklass'av'Ädelmetall'och' ärver'alla'dess'egenskaper,'t.ex.'ax'vara'värdefull' Ex' x','x' 'Guld' 'GliXrar(x)' 'Dyrt(x)' {person, human being} {natural object} {substance}

16 Händelser' Situa*onskalkyl'är'diskret.'Behöver'en'kon*nuerlig'variant' Ex.'At(Wumpus,'Gold)'säger'inget'om'när'det'är'sant' T(At(Wumpus,'Gold),'t)'säger'aX'det'är'sant'vid'*dpunkten't' Andra'predikat:' Happens(e,'i)'säger'aX'e'händer'under'intervallet'i' Ini*ates(e,'f,'t)'säger'aX'e'får'f'aX'starta'vid'*den't' Terminates(e,'f,'t)'säger'aX'e'får'f'aX'avslutas'vid'*den't' Clipped(f,'i)'säger'aX'f'slutar'aX'vara'sant'i'intervallet'i' Restored(f,'i)'säger'aX'f'blir'sant'nångång'under'intervallet'i' Tid,'intervall'och'handlingar' Allens'temporala'logik' Definierar'eX'intervall' i'intervall(i)' 'Dura*on(i)'='(Time(End(i))E Time(Start(i)))' Huvudsakligen'fyra'olika'rela*oner' Temporala'rela*oner' Strukturerad'representa*on' Meet(i, j) i,j Meet(i,j) Time(End(i)) = Time(Start(j)) i j Frames'och'seman*ska'nät' Egenskapsärvning' Before(i,j) After(j,i) i,j Before(i,j) Time(End(i)) < Time(Start(j)) i j Default'och'undantag' Mul*pel'ärvning' During(i,j) i,j During(i,j) Time(Start(j)) Time(Start(i)) Time(End(j)) Time(End(i)) i j Förändring,'ickemonotonicitet' Overlap(i,j) i,j Overlap(i,j) k During(k,i) During (k,j) i j

17 Strukturerad'representa*on' Seman*ska'nät' Baserat'på'associa*onsteorier,'t.ex.'Quillian'&'Collins' 1969' Experiment.'Ställer'olika'frågor,'t.ex.:' Är'undulaten'en'fågel?' Kan'undulater'flyga?' Kan'undulater'sjunga?' Resultat' Kan'undulater'flyga? ''tar'längre'*d'ax'besvara'än' Kan' undulater'sjunga? '' Hypotes' Människor'lagrar'informa*on'så'abstrakt'som'möjligt' Alla'fåglar'flyger'men'inte'alla'fåglar'sjunger'' Vingar har Fjädrar har är en kan sjunga Undulat Djur har Skinn är ett är ett Fågel kan flyga true Fisk är en true Struts kan flyga false Ärvningshierarki' Undulat Sjunger: T Putte Vän: Instans Fågel Flyger: T Ben: 2 Vän Emu Flyger: F Olga Instans Levande varelse Lever: T Djur RörSig: T Elefant Färg: grå Vikt: 3500 Clyde Färg: vit Däggdjur Ben: 4 Hund Vikt: 5 Bertil Vikt: 10 Typ: Pudel Instans Instans Instans Delfin Ben: 0 Vikt: 500 Flipper AXributEvärdestrukturer' Seman*ska'nät'och'frames'lagrar'kunskapen'aXributE värdestrukturer' AXributen'kan'också'ha'egenskaper,'t.ex.:' Tillåtna'klasser,'ex'aXributet'Inkomst'är'inte'intressant'för'objekt'av' typen'emu' Värdebegränsningar,'ex'Vikt(Hund)'<'500'kg' Default' Regler'för'ärvning' Procedurer'för'aX'räkna'ut'värden,'ex'för'aX'räkna'ut'åldern' Kopplar'procedurer'(demoner)'*ll'aXributen.'Kallas'också' procedural' axachements '

18 Mul*pel'ärvning' Sällskapsfågel Instans Fågel Flyger: T Ben: 2 Emu Flyger: F Instans Sällskapsfågel Fågel Flyger: T Ben: 2 Emu Flyger: F Australisk Emu Västkust Emu Hantering'av'osäker'kunskap' IckeEstandardlogik.' Inte'en'teori'utan'många' Rivaler:'' ' tar'bort'teorem,'t.ex.'a'v' A' Utvidgningar:'' ' lägger'*ll'teorem'som'ona'är'oformulerbara'i'fopl' Olga Instans Olga Instans Väljer den mest specifika Inferensavståndet, dvs undersöker om det finns på vägen IckeEstandardlogik' Rivaler2 Probabilis*sk'logik' logik'baserad'på'sannolikhet' Flervärd'logik' inför'fler'sanningsvärden' Fuzzy'logic' sannolikhet'ax'höra'*ll'en' mängd' Utvidgningar2 Modal'logik' L:'nödvändigt'sann' M:'möjligen'sann' Temporal'logik' *dslogik' IckeEmonoton'logik' *llåter'satser'som'inte' bevisats'

HKGBB0, Artificiell intelligens

HKGBB0, Artificiell intelligens HKGBB0, Artificiell intelligens Kortfattade lösningsförslag till tentan 3 november 2005 Arne Jönsson 1. Vad karaktäriserar dagens AI-forskning jämfört med den AI-forskning som bedrevs perioden 1960-1985.

Läs mer

Introduktion till programmering D0009E. Föreläsning 5: Fruktbara funktioner

Introduktion till programmering D0009E. Föreläsning 5: Fruktbara funktioner Introduktion till programmering D0009E Föreläsning 5: Fruktbara funktioner 1 Retur-värden Funktioner kan både orsaka en effekt och returnera ett resultat. Hittills har vi ej definierat några egna funktioner

Läs mer

Bankkonto - övning. Övning 2 Skriv en metod, geträntan, som returnerar räntan.

Bankkonto - övning. Övning 2 Skriv en metod, geträntan, som returnerar räntan. Bankkonto - övning Övningar att göra efter lärardemostration. Filen bankkonto.zip innehåller ett projekt med klassen Bankkonto. Zippa upp denna fil och öppna projektet i BlueJ och skriv vidare på klassen

Läs mer

Klasser i Java kan ha metoder och egenskaper. Metoder beskriver funktioner som klassen kan utföra. Egenskaper beskriver innehållet i klassen.

Klasser i Java kan ha metoder och egenskaper. Metoder beskriver funktioner som klassen kan utföra. Egenskaper beskriver innehållet i klassen. TT Kapitel 3. Husdjur & Fisk Javaklasser Translation by Leif Lourié Java program består av klasser som beskriver saker (objekt) som finns på riktigt. Även om det finns många olika sätt att skriva program

Läs mer

Användarhandledning Version 1.2

Användarhandledning Version 1.2 Användarhandledning Version 1.2 Innehåll Bakgrund... 2 Börja programmera i Xtat... 3 Allmänna tips... 3 Grunderna... 3 Kommentarer i språket... 4 Variabler... 4 Matematik... 5 Arrayer... 5 på skärmen...

Läs mer

Föreläsning 16 Arv. Jan Lönnberg 3.11.2011. T-106.1212 Grundkurs i programmering

Föreläsning 16 Arv. Jan Lönnberg 3.11.2011. T-106.1212 Grundkurs i programmering Föreläsning 16 Arv Grundkurs i programmering Jan Lönnberg Institutionen för datateknik -universitetets högskola för teknikvetenskaper 3.11.2011 Varför? I ett studieregister har vi både studenter och lärare.

Läs mer

Kontraktsprogrammering

Kontraktsprogrammering Kontraktsprogrammering Programmera med kontrakt Samma som i vardagen Två parter (minst), bägge följer sin del 2 Bilköp Kund Krav Betala varje månad Förtjänst Få en bil Försäljare Ge kunden en bil och serva

Läs mer

Anna: Bertil: Cecilia:

Anna: Bertil: Cecilia: Marco Kuhlmann 1 Osäkerhet 1.01 1.02 1.03 1.04 1.05 Intelligenta agenter måste kunna hantera osäkerhet. Världen är endast delvist observerbar och stokastisk. (Jmf. Russell och Norvig, 2014, avsnitt 2.3.2.)

Läs mer

1 Begrepp och Hypoteser. 2 Inlärning genom sökning. 3 Objektiv inlärning. Inlärning av en boolsk funktion från exempel.

1 Begrepp och Hypoteser. 2 Inlärning genom sökning. 3 Objektiv inlärning. Inlärning av en boolsk funktion från exempel. 1 Begrepp oc Eempel Begreppsinlärning List-ten-Eliminate Begreppsinlärning 1 Begrepp oc Eempel List-ten-Eliminate Begreppsinlärning (Concept Learning) Inlärning av en boolsk funktion från eempel Kategorier

Läs mer

TDA550 Objektorienterad programvaruutveckling IT, forts. kurs Övning vecka 2

TDA550 Objektorienterad programvaruutveckling IT, forts. kurs Övning vecka 2 TDA550 Objektorienterad programvaruutveckling IT, forts. kurs Övning vecka 2 Pelle Evensen, Daniel Wetterbro 5 november 2009 Sammanfattning Denna vecka ska vi titta på abstrakta klasser kontra interface,

Läs mer

Tommy Färnqvist, IDA, Linköpings universitet. 1 Kursadministration 1. 2 Introduktion 2 2.1 Varför logik?... 2 2.2 Satslogik... 2

Tommy Färnqvist, IDA, Linköpings universitet. 1 Kursadministration 1. 2 Introduktion 2 2.1 Varför logik?... 2 2.2 Satslogik... 2 Föreläsning 1 Syntax 729G06 Logikdelen Föreläsningsanteckningar i Programmering och logik 21 januari 2014 Tommy Färnqvist, IDA, Linköpings universitet 1.1 Innehåll Innehåll 1 Kursadministration 1 2 Introduktion

Läs mer

Låt vara en reell funktion av en reell variabel med definitionsmängden som är symmetrisk i origo.

Låt vara en reell funktion av en reell variabel med definitionsmängden som är symmetrisk i origo. UDDA FUNKTIONER OCH DUBBELINTEGRALER. Från en variabelanalys vet vi att integral över ett symetrisk intervall, av en udda funktion är lika med 0. 0 om är udda. T ex 0 Här upprepar vi def. av udda ( och

Läs mer

Att deklarera och att använda variabler. Föreläsning 10. Synlighetsregler (2) Synlighetsregler (1)

Att deklarera och att använda variabler. Föreläsning 10. Synlighetsregler (2) Synlighetsregler (1) Föreläsning 10 STRING OCH STRINGBUILDER; VARIABLERS SYNLIGHET Att deklarera och att använda variabler När vi deklarerar en variabel, t ex int x; inför vi en ny variabel med ett namn och en typ. När namnet

Läs mer

UML. Översikt UML. Relationer mellan klasser. A är ett aggregerat av B:n. Kontor aggregat av Enheter. 12 olika diagramtyper, bl.a.

UML. Översikt UML. Relationer mellan klasser. A är ett aggregerat av B:n. Kontor aggregat av Enheter. 12 olika diagramtyper, bl.a. Översikt UML Sekvensdiagram (dynamic structure) Informationsflöde genom programmet Användningsfall (use cases) Aktörers interaktion med systemet Paketdiagram Beroenden mellan paket abstrakta klasser Multipel

Läs mer

Översikt. Varför lära sig detta? Motivering Syntax och semantik Imperativa språkets byggstenar och Python. PL-boken Kap 1 (repetition):

Översikt. Varför lära sig detta? Motivering Syntax och semantik Imperativa språkets byggstenar och Python. PL-boken Kap 1 (repetition): Översikt Motivering Syntax och semantik Imperativa språkets byggstenar och Python Datatyper Tilldelning och uttryck Kontrollstrukturer (på satsnivå) Subprogram Relaterade avsnitt: PL 3.1-3.2, 5.1-5.3,

Läs mer

Objektorienterad programmering (OOP) Föreläsning 15 & 16. Klasser för olika slags fordon. Klasser och objekt

Objektorienterad programmering (OOP) Föreläsning 15 & 16. Klasser för olika slags fordon. Klasser och objekt Föreläsning 15 & 16 ARV Objektorienterad programmering (OOP) Idé: vi ser ett program som en modell av verkligheten Ursprung: Simula-67, Norsk regnesentral, 1960-talet Smalltalk-80: Xerox PARC, 1970-talet

Läs mer

Språket Python - Del 1 Grundkurs i programmering med Python

Språket Python - Del 1 Grundkurs i programmering med Python Hösten 2009 Dagens lektion Ett programmeringsspråks byggstenar Några inbyggda datatyper Styra instruktionsflödet Modulen sys 2 Ett programmeringsspråks byggstenar 3 ETT PROGRAMMERINGSSPRÅKS BYGGSTENAR

Läs mer

Föreläsning 5 Mer om funktioner, villkor

Föreläsning 5 Mer om funktioner, villkor Föreläsning 5 Mer om funktioner, villkor Grundkurs i programmering Jan Lönnberg Institutionen för datateknik -universitetets högskola för teknikvetenskaper 15.9.2011 Varför? Det finns sammanhang där ett

Läs mer

UML. Klassdiagr. Abstraktion. Relationer. Överskugg. Överlagr. Aktivitetsdiagram Typomv. Typomv. Klassdiagr. Abstraktion. Relationer.

UML. Klassdiagr. Abstraktion. Relationer. Överskugg. Överlagr. Aktivitetsdiagram Typomv. Typomv. Klassdiagr. Abstraktion. Relationer. Översikt Klasshierarkier UML klassdiagram Relation mellan klasser mellan klasser och objekt Association ning ing andling Programmering tillämpningar och datastrukturer 2 UML UML Unified Modeling Language

Läs mer

Föreläsning 12: Regression

Föreläsning 12: Regression Föreläsning 12: Regression Matematisk statistik David Bolin Chalmers University of Technology Maj 15, 2014 Binomialfördelningen Låt X Bin(n, p). Vi observerar x och vill ha information om p. p = x/n är

Läs mer

Grundläggande Datalogi

Grundläggande Datalogi s delar Grundläggande Datalogi s delar s delar s delar Dataabstraktion Rekursion Algoritmanalys s delar Sortering Trädstrukturer Grafalgoritmer Optimering Stavning Strängmatchning Datakompression Versionshantering

Läs mer

ITK:P1 Föreläsning 1. Programmering. Programmeringsspråket Java. Stark typning Explicit typning Strukturerat Hög säkerhet

ITK:P1 Föreläsning 1. Programmering. Programmeringsspråket Java. Stark typning Explicit typning Strukturerat Hög säkerhet ITK:P1 Föreläsning 1 Att programmera i språket Java DSV Peter Mozelius Programmering Olika typer av programmering som t ex: o Imperativ programmering (C, Pascal m fl) o Funktionell programmering (Lisp,

Läs mer

Introduktion C-programmering

Introduktion C-programmering Introduktion C-programmering Viktor Kämpe C Historik Utvecklades först 1969 1973 av Dennis Ritchcie vid AT&T Bell Labs. Högnivå språk med kontakt mot maskinvara. Ett utav de mest använda språken. 2 C Standarder

Läs mer

Boris flyttar in ULF SINDT

Boris flyttar in ULF SINDT SIDAN 1 Läsförståelse Ett litet djur 1. Var har ekorren byggt bo? 2. Vilkens sorts fågel, tar en ekorrunge? 3. Vad heter Linas och Rickis barn? 4. Vem hittar ekorrungen? 5. Hur ska de göra, för att rädda

Läs mer

Saker du ska kunna Föreläsning 13 & 14

Saker du ska kunna Föreläsning 13 & 14 Saker du ska kunna Föreläsning 13 & 14 LISTOR Ta bort element från en vektor Både sorterad och osorterad Söka upp element i en vektor Linjärsökning räcker (jag har även visat binärsökning) Registrering

Läs mer

DOM (Document Object Model) är modellen efter vilken en webbläsaren är uppbyggd. Alla objekt/element i webbläsaren finns hierarkiskt ordnade i DOM.

DOM (Document Object Model) är modellen efter vilken en webbläsaren är uppbyggd. Alla objekt/element i webbläsaren finns hierarkiskt ordnade i DOM. JavaScript del1 Syftet med detta häfte är att sammanfatta det viktigaste i JavaScript så kort och koncist som möjligt men ändå tillräckligt omfattande för att ge god kännedom om en av de vanligaste teknikerna

Läs mer

Något om logik och logisk semantik

Något om logik och logisk semantik UPPSALA UNIVERSITET Semantik och pragmatik (HT 08) Institutionen för lingvistik och filologi Mats Dahllöf http://stp.ling.uu.se/ matsd/uv/uv08/sempht/ Något om logik och logisk semantik 1 Språk och sanning

Läs mer

(A B) C = A C B C och (A B) C = A C B C. Bevis: (A B) C = A C B C : (A B) C = A C B C : B C (A B) C A C B C

(A B) C = A C B C och (A B) C = A C B C. Bevis: (A B) C = A C B C : (A B) C = A C B C : B C (A B) C A C B C Sats 1.3 De Morgans lagar för mängder För alla mängder A och B gäller att (A B) C = A C B C och (A B) C = A C B C. (A B) C = A C B C : A B A C (A B) C B C A C B C (A B) C = A C B C : A B A C (A B) C B

Läs mer

Beräkningsvetenskap föreläsning 2

Beräkningsvetenskap föreläsning 2 Beräkningsvetenskap föreläsning 2 19/01 2010 - Per Wahlund if-satser if x > 0 y = 2 + log(x); else y = -1 If-satsen skall alltid ha ett villkor, samt en då det som skall hända är skrivet. Mellan dessa

Läs mer

Ontologier. Cassandra Svensson 2014-01-09

Ontologier. Cassandra Svensson 2014-01-09 Ontologier Cassandra Svensson 2014-01-09 Sammanfattning Jag har läst Annika Flycht-Ericssons avhandling Design and Use of Ontoligies in information-providing Dialogue Systems. Med Annikas text som utgångspunkt

Läs mer

Språkteknologi (SV2122) Föreläsning 3: Programmering i Python

Språkteknologi (SV2122) Föreläsning 3: Programmering i Python Språkteknologi (SV2122) Föreläsning 3: Programmering i Python Richard Johansson richard.johansson@svenska.gu.se 29 januari 2014 översikt inledning första stegen grundläggande begrepp större byggstenar

Läs mer

Föreläsning 6. pseudokod problemlösning logik algoritmer

Föreläsning 6. pseudokod problemlösning logik algoritmer Föreläsning 6 pseudokod problemlösning logik algoritmer Inledning Logik är läran om korrekt resonemang att kunna dra korrekta slutledningar utifrån det man vet. Vi gör detta ständigt utan att tänka på

Läs mer

(n 1)(n) 2 för n 1, dvs att tidskomplexiteten är kvadratisk i värsta fall. 0 + 1 + 2 +... + (n 1) =

(n 1)(n) 2 för n 1, dvs att tidskomplexiteten är kvadratisk i värsta fall. 0 + 1 + 2 +... + (n 1) = LULEÅ TEKNISKA UNIVERSITET Tentamen i Objektorienterad design Totala antalet uppgifter: 6 Lärare: Håkan Jonsson, Tomas Johansson, 491700, 491465 Resultatet anslås senast 2006-05-20 i A-huset. Tillåtna

Läs mer

Ordspråk och talesätt

Ordspråk och talesätt Ordspråk och talesätt Namn: VT-06 Ordspråkets historia De äldsta ordspråken tros vara 4000-5000 år gamla och stammar från en forntid då språket ännu inte kunde uttryckas i skrift. Många av ordspråken var

Läs mer

Klasshierarkier - repetition

Klasshierarkier - repetition Klasshierarkier - repetition Klasser kan byggas på redan denierade klasser, egna och/eller färdigskrivna, genom: I att klassobjekt används som attribut (instansvariabler): har-relation. Exempel: traksystemet

Läs mer

Användar- och systemdokumentation

Användar- och systemdokumentation Användar- och systemdokumentation Linköpings universitet Examinator:, IDA marme647@student.liu.se Utskriftsdatum: Innehållsförteckning Inledning... 3 Användarhandledning... 4 Systemkrav och installation...4

Läs mer

Uppdrag med Kojo. Redaktör: Björn Regnell www.lth.se/programmera

Uppdrag med Kojo. Redaktör: Björn Regnell www.lth.se/programmera Uppdrag med Kojo Redaktör: Björn Regnell www.lth.se/programmera Uppdrag med Kojo Version: 18 februari 2015 License: Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International CC BY-NC-SA 4.0

Läs mer

Innehåll. Stryk under, ringa in, kryssa 2. I vilken ordning? 6. Vilken information? 10. På samma sätt 14. Följ ledtrådarna 18. Mönster 22.

Innehåll. Stryk under, ringa in, kryssa 2. I vilken ordning? 6. Vilken information? 10. På samma sätt 14. Följ ledtrådarna 18. Mönster 22. Innehåll Stryk under, ringa in, kryssa 2 I vilken ordning 6 Vilken information 10 På samma sätt 14 Följ ledtrådarna 18 Mönster 22 Glyfer 26 Pusselbitar 30 Den här boken tillhör 3 Stryk under, ringa in,

Läs mer

Laboration A Objektsamlingar

Laboration A Objektsamlingar Laboration A Objektsamlingar Avsikten med laborationen är att du ska träna på att använda ett par objektsamlingar. Uppgift 1 Titta genom föreläsningsunderlaget DA129AFAHT07.pdf och testkör exemplen (se

Läs mer

Chapter 4: Writing Classes/ Att skriva egna klasser.

Chapter 4: Writing Classes/ Att skriva egna klasser. Chapter 4: Writing Classes/ Att skriva egna klasser. I dessa uppgifter kommer du att lära dig om hur man definierar egna objekt genom att skriva klasser. Detta är grunden för att förstå objekt orienterad

Läs mer

Introduktion. Lagom är bäst. OO eller ej? TDP004 Objektorienterad Programmering Fö 7 Objektorienterad design, tips och råd

Introduktion. Lagom är bäst. OO eller ej? TDP004 Objektorienterad Programmering Fö 7 Objektorienterad design, tips och råd Introduktion TDP004 Objektorienterad Programmering Fö 7 Objektorienterad design, tips och råd Vi har diskuterat vilka möjligheter till OO som erbjuds i C++. Vilka vill vi använda och varför? Allt har användningsområden

Läs mer

Områden om människokroppen. Celler

Områden om människokroppen. Celler Celler Vad är en cell? Var finns celler, hur och när upptäcktes dem? Hur många celler består en människa av. Vad finns det för olika typer av celler i människokroppen. Förklara skillnaden mellan cell,

Läs mer

Programmering i C++ EDA623 Mer om klasser. EDA623 (Föreläsning 6) HT 2013 1 / 26

Programmering i C++ EDA623 Mer om klasser. EDA623 (Föreläsning 6) HT 2013 1 / 26 Programmering i C++ EDA623 Mer om klasser EDA623 (Föreläsning 6) HT 2013 1 / 26 Mer om klasser Innehåll Konstanta objekt Statiska medlemmar Pekaren this Vänner (friends) Överlagring av operatorer EDA623

Läs mer

TENTAMEN I PROGRAMMERING. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng

TENTAMEN I PROGRAMMERING. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng TENTAMEN I PROGRAMMERING Ansvarig: Jan Skansholm, tel 7721012 Betygsgränser: Hjälpmedel: Sammanlagt maximalt 60 poäng. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng Skansholm,

Läs mer

Lite om felhantering och Exceptions Mer om variabler och parametrar Fält (eng array) och klassen ArrayList.

Lite om felhantering och Exceptions Mer om variabler och parametrar Fält (eng array) och klassen ArrayList. Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Objektorienterad programvaruutveckling GU (DIT011) Föreläsning 3 Innehåll Lite om felhantering och Exceptions Mer om variabler och parametrar

Läs mer

Introduktion. Klasser. TDP004 Objektorienterad Programmering Fö 2 Objektorientering grunder

Introduktion. Klasser. TDP004 Objektorienterad Programmering Fö 2 Objektorientering grunder Introduktion TDP004 Objektorienterad Programmering Fö 2 Objektorientering grunder OO är den mest använda programmeringsparadigmen idag, viktigt steg att lära sig och använda OO. Klasser är byggstenen i

Läs mer

Linn Fernström. Cirkusen ihop Linn Fernström, 2012

Linn Fernström. Cirkusen ihop Linn Fernström, 2012 Linn är en av Sveriges mest uppmärksammade konstnärer. Hennes tavlor säljer för höga summor både i Sverige och internationellt. Sommarutställningen på Grafikens Hus med Linn innehåller en mängd nya produktioner.

Läs mer

1 www.svetshuset.se 04/12. Höjd: 510 mm

1 www.svetshuset.se 04/12. Höjd: 510 mm 1 FÖRBRÄNNINGSTOALETT "INCINOLET" 1800 Watt 13-103 vit Förbränningstoalett för sommarstugan, villan, arbetsboden mm. Förvandlar toalettavfallet till aska som kan tömmas i rabatten. Ungefärlig tid för förbränning

Läs mer

Programmering B med Visual C++ 2008

Programmering B med Visual C++ 2008 Programmering B med Visual C++ 2008 Innehållsförteckning 1 Repetition och lite nytt...5 I detta kapitel... 5 Programexekvering... 5 Loop... 5 Källkod... 6 Verktyg... 6 Säkerhetskopiera... 6 Öppna, kompilera,

Läs mer

MSG830 Statistisk analys och experimentplanering

MSG830 Statistisk analys och experimentplanering MSG830 Statistisk analys och experimentplanering Tentamen 20 Mars 2015, 8:30-12:30 Examinator: Staan Nilsson, telefon 073 5599 736, kommer till tentamenslokalen 9:30 och 11:30 Tillåtna hjälpmedel: Valfri

Läs mer

E07 "Greased Lightning"

E07 Greased Lightning E07 "Greased Lightning" Föreläsning 7, HT2014 CSS och Event Kurs: 1dv403 Webbteknik I Johan Leitet E07 Greased Lightning Dagens agenda CSS-egenskaper Händelsestyrd programmering Händelsehanterare Typer

Läs mer

E09 - Totally Tool Time

E09 - Totally Tool Time E09 - Totally Tool Time Dagens agenda Fönster Systemdialoger Location History DOM och BOM DOM Document Object Model BOM Browser Object Model BOM hanterar Insorterat under denna rubrik hittar vi: Timers

Läs mer

Årskurs 7 - Biologi. Djurvärlden

Årskurs 7 - Biologi. Djurvärlden Årskurs 7 - Biologi Djurvärlden Allmänt Djuren är indelade i olika grupper beroende på hur nära släkt de är. Huvudgrupper Ryggradsdjur (ex, fiskar, groddjur, kräldjur, fåglar och däggdjur) Ryggradslösa

Läs mer

Tommy Färnqvist, IDA, Linköpings universitet. 2 Strukturer 2 2.1 Domäner... 2 2.2 Tolkningar... 3

Tommy Färnqvist, IDA, Linköpings universitet. 2 Strukturer 2 2.1 Domäner... 2 2.2 Tolkningar... 3 Föreläsning 2 Semantik 729G06 Logikdelen Föreläsningsanteckningar i Programmering och logik 27 januari 2014 Tommy Färnqvist, IDA, Linköpings universitet 2.1 Innehåll Innehåll 1 Lite mer syntax 1 2 Strukturer

Läs mer

DD2310. Javaprogrammering för Pythonprogrammerare. Johan Boye

DD2310. Javaprogrammering för Pythonprogrammerare. Johan Boye DD2310 Javaprogrammering för Pythonprogrammerare Johan Boye James Gosling pappa till Java Hej.java public class Hej { public static void main( String[] args ) { System.out.println( "Hej" ); Java basics

Läs mer

Boris flyttar in ULF SINDT

Boris flyttar in ULF SINDT Lärarmaterial SIDAN 1 Boken handlar om: En ekorrunge blir tagen, från boet, av en kråka. Ekorrungen sprattlar för att komma loss, och kråkan tappar den. Ekorren landar på trappan, utanför en familjs hus.

Läs mer

Upprepade mätningar och tidsberoende analyser. Stefan Franzén Statistiker Registercentrum Västra Götaland

Upprepade mätningar och tidsberoende analyser. Stefan Franzén Statistiker Registercentrum Västra Götaland Upprepade mätningar och tidsberoende analyser Stefan Franzén Statistiker Registercentrum Västra Götaland Innehåll Stort område Simpsons paradox En mätning per individ Flera mätningar per individ Flera

Läs mer

E13 "Behind the Wild"

E13 Behind the Wild E13 "Behind the Wild" Föreläsning 13, HT2014 Det vi missat och lite till Kurs: 1dv403 Webbteknik I Johan Leitet E13 Behind the Wild Dagens agenda Cookies Web storage Context/ändra context Augmentation

Läs mer

Lösningsförslag övning 2.

Lösningsförslag övning 2. Objektorienterad programmering, Z1 Lösningsförslag övning 2. Uppgift 1. public class SIUnits { public static double yardspermeter = 1.093613; public static double poundperkilo = 2.204623; public static

Läs mer

Denna vecka. Idag. Grafiskt användarsnitt. Vi kommer att se

Denna vecka. Idag. Grafiskt användarsnitt. Vi kommer att se 1 F18-20-2006 Denna vecka Måndag: Ett komplext problem Tisdag: Lektion. Kväll: Essäfrågan distribueras via webben. Dead-line onsdag 17 maj, kl 12.00. Inlämning elektroniskt och på papper. Onsdag: Grafik

Läs mer

Tentamen i Grundläggande programmering STS, åk 1 lördag 2002-05-25

Tentamen i Grundläggande programmering STS, åk 1 lördag 2002-05-25 Tentamen i Grundläggande programmering STS, åk 1 lördag 2002-0-2 Skrivtid: 09.00 14.00 Hjälpmedel: Inga Lärare: Anders Berglund. Elena Fersman besöker tentan vid två tillfällen: cirka kl. 10.30 samt cirka

Läs mer

LULEÅ TEKNISKA UNIVERSITET Ämneskod S0002M, MAM801, IEK600,IEK309 Institutionen för matematik Datum 2009-12-17 Skrivtid 0900 1400

LULEÅ TEKNISKA UNIVERSITET Ämneskod S0002M, MAM801, IEK600,IEK309 Institutionen för matematik Datum 2009-12-17 Skrivtid 0900 1400 LULEÅ TEKNISKA UNIVERSITET Ämneskod S0002M, MAM801, IEK600,IEK309 Institutionen för matematik Datum 2009-12-17 Skrivtid 0900 1400 Tentamen i: Statistik A1, 15 hp Antal uppgifter: 6 Krav för G: 13 Lärare:

Läs mer

ADO.NET Murach Kapitel 17-20

ADO.NET Murach Kapitel 17-20 Databaser och C# ADO.NET Murach Kapitel 17-20 2013-01-30 1 Winstrand Development Databas ADO.NET Är en del av.net ramverket och tillhandahåller delar för att kommunicera med olika datakällor. Dessa kan

Läs mer

Objekt och klasser - Introduktion. Objekt. SparKonto.java 2. SparKonto.java 1. Konton.java. Ett objekt har: Ett bankkonto

Objekt och klasser - Introduktion. Objekt. SparKonto.java 2. SparKonto.java 1. Konton.java. Ett objekt har: Ett bankkonto Objekt och klasser - Introduktion Objekt Ð Begreppet objekt Ð Hur klasser anvšnds fšr att skapa objekt Ð Fšr-definierade klasser Ð Metoder och parameteršverfšring Ð Definiera klasser Ð Modifierare Ð Statiska

Läs mer

Programmering i C++ EDA623 Arv. EDA623 (Föreläsning 6) HT 2013 1 / 42

Programmering i C++ EDA623 Arv. EDA623 (Föreläsning 6) HT 2013 1 / 42 Programmering i C++ EDA623 Arv EDA623 (Föreläsning 6) HT 2013 1 / 42 Arv Innehåll Härledda klasser Konstruktorer och destruktorer vid arv Tillgänglighet Polymorfism och dynamisk bindning Abstrakta klasser

Läs mer

kind spelling Scanning

kind spelling Scanning sats terminal Kompilatorteknik 2015 källprogram! Exempel program let var v : integer; const t ~ 3 in v := v + t kind spelling Scanning LET let föreläsningsfilmer Scannerns eller den lexikala analysatorns

Läs mer

Fråga 1: I Höörs kommun finns många fina vandringsleder och strövområden. Hur många mil av Skåneleden går genom Höörs kommun?

Fråga 1: I Höörs kommun finns många fina vandringsleder och strövområden. Hur många mil av Skåneleden går genom Höörs kommun? Fråga 1: I Höörs kommun finns många fina vandringsleder och strövområden. Hur många mil av Skåneleden går genom Höörs kommun? 1. 1,5 mil X. Drygt 3 mil 2. Nästan 6 mil Fråga 2: Den 27 augusti var det dags

Läs mer

Materialspecifikationer webb 2014

Materialspecifikationer webb 2014 SYDSVENSKAN CITY NÄRA H I T TA H E M. S E MERAJOBB.SE SYDSVENSKAN WEBBYRÅ Materialspecifikationer webb 2014 www.sydsvenskan-webbyra.se Standardformat Panoramabanner Storlek: 980x240 px Framerate: 18-24

Läs mer

Malmö högskola 2007/2008 Teknik och samhälle

Malmö högskola 2007/2008 Teknik och samhälle Laboration 9 Avsikten med denna laboration är att du ska jobba vidare med klasser. Uppgifterna går ut på att skriva metoder och att skriva konstruktorer. Laborationen bygger vidare på laboration 8. Skapa

Läs mer

LÖÖFS GASOL AB Tel:054-85 44 50 Fax:054-85 44 99 Kulinggatan 15 652 21 Karlstad www.loofsgasol.se

LÖÖFS GASOL AB Tel:054-85 44 50 Fax:054-85 44 99 Kulinggatan 15 652 21 Karlstad www.loofsgasol.se 1 FÖRBRÄNNINGSTOALETT "INCINOLET" 1800 Watt 13-1032 vit Förbränningstoalett för sommarstugan, villan, arbetsboden mm. Förvandlar toalettavfallet till aska som kan tömmas i rabatten. Ungefärlig tid för

Läs mer

FactoryCast HMI. Premium & Quantum PLC. MySQL Server och FactoryCast HMI databastjänst 2004-10-29

FactoryCast HMI. Premium & Quantum PLC. MySQL Server och FactoryCast HMI databastjänst 2004-10-29 FactoryCast HMI Premium & Quantum PLC MySQL Server och FactoryCast HMI databastjänst 2004-10-29 INNEHÅLLSFÖRTECKNING 1 DATABASTJÄNSTEN...3 1.1 KONFIGURERING AV DATABASTJÄNST...3 2 KONFIGURERING MYSQL...6

Läs mer

Malmö högskola 2007/2008 Teknik och samhälle

Malmö högskola 2007/2008 Teknik och samhälle Laboration 8 Avsikten med denna laboration är att du lära dig skapa objekt med hjälp av klasser. Detta är en introduktion till ett objektorienterat tankesätt. Med hjälp av detta tankesätt kan du så småningom

Läs mer

Tentamen i Statistik, STA A13 Deltentamen 1, 4p 13 november 2004, kl. 09.00-13.00

Tentamen i Statistik, STA A13 Deltentamen 1, 4p 13 november 2004, kl. 09.00-13.00 Karlstads universitet Institutionen för informationsteknologi Avdelningen för statistik Tentamen i Statistik, STA A Deltentamen, 4p november 004, kl. 09.00-.00 Tillåtna hjälpmedel: Bifogad formel- och

Läs mer

Resonemang under osäkerhet. Bayes Certainty factors Dempster-Schafer Fuzzy logic

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

Läs mer

Zanzibar Café & Rökeri

Zanzibar Café & Rökeri 146 Zanzibar Café & Rökeri HITTA HIT: Från Göteborg kör E6 norrut. Ta av väg 168 mot Kungälv/Marstrand/ Ytterby och kör 17 km. I Tjuvkil fortsätt rakt fram tills du ser Café Zanzibar B & Bs plank. et sticker

Läs mer

PROV. 10 Uppräknade datatyper

PROV. 10 Uppräknade datatyper 10 10.1 10.2 Definition 10.3 Användning och regler 10.4 switch-satsen 10.5 Iteration över samtliga värden 10.6 Instansvariabler och instanstjänster 10.7 Värdespecifika implementationer 10.1 Hur ser vi

Läs mer

Användarbeskrivning för Anvisningstjänsten

Användarbeskrivning för Anvisningstjänsten 1 (23) Användarbeskrivning för Anvisningstjänsten 2 (23) INNEHÅLL 1 ALLMÄN BESKRIVNING AV ANVISNINGSTJÄNSTEN... 3 1.1 Skillnad mellan Central och Lokal anvisning... 3 2 INTEGRATION ENLIGT [IDP-DISCO]...

Läs mer

En förladdare fångar användarens uppmärksamhet under tiden huvudfilmen laddas. Använd din kreativitet när du formger en förladdare och använd sedan

En förladdare fångar användarens uppmärksamhet under tiden huvudfilmen laddas. Använd din kreativitet när du formger en förladdare och använd sedan En förladdare fångar användarens uppmärksamhet under tiden huvudfilmen laddas. Använd din kreativitet när du formger en förladdare och använd sedan ActionScript för att sätta den i arbete. 10 Ladda och

Läs mer

Kort om klasser och objekt En introduktion till GUI-programmering i Java

Kort om klasser och objekt En introduktion till GUI-programmering i Java Kort om klasser och objekt En introduktion till GUI-programmering i Java Klasser En klass är en mall för hur man ska beskriva på något. Antag att vi har en klass, Bil. Den klassen innehåller en lista på

Läs mer

!!!!! !!!!!!!!!!!!!!!! Resecity i Huddinge AB Sjödalsvägen 14 - Box 123 141 28 Huddinge Tel 08-774 03 15 huddinge@resecity.se

!!!!! !!!!!!!!!!!!!!!! Resecity i Huddinge AB Sjödalsvägen 14 - Box 123 141 28 Huddinge Tel 08-774 03 15 huddinge@resecity.se Finland VåraresortillryskagränseniöstraFinlandärheltinriktadepådestorarovdjuren: björn,järvochvarg.förattkommanäradessaskyggadjursittermanigömsleöver nattendärrovdjurenoftagårförbiiettområdedärmatdiskretläggsut.detärvackra

Läs mer

Kommunikation genom fåglar

Kommunikation genom fåglar 1 Kommunikation genom fåglar Ett projekt med femårsavdelningen 2009-2010 Dokumenterat av Ann-Christin Andersson & Therese Andersson Frejaparkens förskola 2 Vad säger läroplanen? Lärandet skall baseras

Läs mer

Kurskod D0010E Datum 2012-05-15 Skrivtid 5tim

Kurskod D0010E Datum 2012-05-15 Skrivtid 5tim LULEÅ TEKNISKA UNIVERSITET Tentamen i Objektorienterad programmering och design Totala antalet uppgifter: 5 Lärare: Håkan Jonsson, 491000, 073-820 1700 Resultatet o entliggörs senast: 2012-05-29. Tillåtna

Läs mer

Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic

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

Läs mer

PROGRAMMERING A VB 2008 EXPRESS UTVECKLINGSVERKTYGET VISUAL BASIC

PROGRAMMERING A VB 2008 EXPRESS UTVECKLINGSVERKTYGET VISUAL BASIC lektion 1 PROGRAMMERING A VB 2008 EXPRESS UTVECKLINGSVERKTYGET VISUAL BASIC VB är ett applikationsutvecklingsverktyg med programmeringsspråket är basic, gränssnittet är grafiskt och man arbetar hela tiden

Läs mer

Recap Mera om nya typer Kort Fält. Programmering. Sommarkurs 2007 www.hh.se/staff/vero/programmering. Verónica Gaspes. IDE-sektionen.

Recap Mera om nya typer Kort Fält. Programmering. Sommarkurs 2007 www.hh.se/staff/vero/programmering. Verónica Gaspes. IDE-sektionen. Programmering Sommarkurs 2007 www.hh.se/staff/vero/programmering Verónica Gaspes IDE-sektionen Juni 14 Utkast 1 Recap 2 Mera om nya typer 3 Kort 4 Fält Recap Man kan ge namn till typer. Vi undersökte enum

Läs mer

MMA132: Laboration 1 & 2 Introduktion till MATLAB

MMA132: Laboration 1 & 2 Introduktion till MATLAB MMA132: Laboration 1 & 2 Introduktion till MATLAB De flesta numeriska metoder låter oss få en tillräckligt bra lösning på ett matematiskt problem genom att byta ut komplexa matematiska operationer med

Läs mer

Träd. Rot. Förgrening. Löv

Träd. Rot. Förgrening. Löv Träd Träd Rot Förgrening Löv Exempel: Organisationsschema Rot Överkucku Förgrening Underhuggare Underhuggare Administativ chef Kanslichef Knegare Knegare Knegare Byråchef Löv Intendent Avd. chef Intendent

Läs mer

"Är en"-relation. "Har en"-relation. Arv. Seminarium 2 Relevanta uppgifter. I exemplet Boll från förra föreläsningen gällde

Är en-relation. Har en-relation. Arv. Seminarium 2 Relevanta uppgifter. I exemplet Boll från förra föreläsningen gällde Föreläsning 7 "Har en"-relation Arv "Har en" "Är en" Superklassen Object Överskuggning Fordonsexempel Seminarium 2 Relevanta uppgifter Uppgift 31 I exemplet Boll från förra föreläsningen gällde följande

Läs mer

Avancerade Webbteknologier

Avancerade Webbteknologier Projektledning, Business Knowledge Användbarhet & Layout Avancerade Webbteknologier Lkti Lektion 1 Kommunikation Tobias Landén tobias.landen@chas.se Avancerade webbteknologier del 1 (4 KY poäng) Syfte

Läs mer

1 Uppgift 1. a) Skapar ett Company-objekt med hjälp av den överlagrade konstruktorn. Du kan själv välja värden på instansvariablerna.

1 Uppgift 1. a) Skapar ett Company-objekt med hjälp av den överlagrade konstruktorn. Du kan själv välja värden på instansvariablerna. 1 Uppgift 1 Klassen Company Banken FinanceTrust som tidigare bara haft privatpersoner som kunder vill nu bygga ut sitt datasystem så att även företag kan registreras som kunder. Skriv klassen Company som

Läs mer

Öppna data Gäs öreläsning i kursen 729G44 - Gränssni sdesign 2014-10- 29. Eva Blomqvist Linköpings Universitet eva.blomqvist@liu.

Öppna data Gäs öreläsning i kursen 729G44 - Gränssni sdesign 2014-10- 29. Eva Blomqvist Linköpings Universitet eva.blomqvist@liu. Öppna data Gäs öreläsning i kursen 729G44 - Gränssni sdesign 2014-10- 29 Eva Blomqvist Linköpings Universitet eva.blomqvist@liu.se Översikt Vad är öppna data? Defini on PSI- direk vet och öppna data runt

Läs mer

Programmering i C++ EDA623 Objektorienterad programutveckling. EDA623 (Föreläsning 5) HT 2013 1 / 33

Programmering i C++ EDA623 Objektorienterad programutveckling. EDA623 (Föreläsning 5) HT 2013 1 / 33 Programmering i C++ EDA623 Objektorienterad programutveckling EDA623 (Föreläsning 5) HT 2013 1 / 33 Objektorienterad programutveckling Innehåll Grundläggande begrepp Relationer mellan objekt Grafisk representation

Läs mer

Att öva på och förstå ett program med flera samverkande klasser.

Att öva på och förstå ett program med flera samverkande klasser. Inlämningsuppgift 4 klassen Kund (Customer) Att öva på och förstå ett program med flera samverkande klasser. Redovisning: Uppgiften redovisas i datasal: o Körning av programmet. o Redogöra för vad de olika

Läs mer

ASP.NET MVC. Copyright Mahmud Al Hakim mahmud@dynamicos.se http://www.webbacademy.se. Innehåll

ASP.NET MVC. Copyright Mahmud Al Hakim mahmud@dynamicos.se http://www.webbacademy.se. Innehåll ASP.NET MVC Copyright Mahmud Al Hakim mahmud@dynamicos.se http://www.webbacademy.se Innehåll Introduktion till MVC Controller Action-metoder Views Arbeta med Layout-sidor och sektioner Route konfiguration

Läs mer

Laboration 13, Arrayer och objekt

Laboration 13, Arrayer och objekt Laboration 13, Arrayer och objekt Avsikten med denna laboration är att du ska träna på att använda arrayer. Skapa paketet laboration13 i ditt laborationsprojekt innan du fortsätter med laborationen. Uppgift

Läs mer

E12 "Evil is going on"

E12 Evil is going on E12 "Evil is going on" Föreläsning 12, HT2014 AJAX Kurs: 1dv403 Webbteknik I Johan Leitet E12 Evil is going on Dagens agenda AJAX XMLHttpRequest-objektet JSON Vad är AJAX? Asynchronous JavaScript and XML

Läs mer

Börja koda. Vad är programmering? Installera Processing

Börja koda. Vad är programmering? Installera Processing Börja koda Vad är programmering? En dator är uppbyggd kring ett antal delar som samverkar för att du skall kunna använda program, spela spel och titta på bilder. Den viktigaste delen är processorn eller

Läs mer

#include #include char LEFT,RIGHT,MOTORHASTIGHET;

#include <pic.h> #include <sys.h> char LEFT,RIGHT,MOTORHASTIGHET; Att avlusa en rad Assembler tar lika lång tid som att avlusa en rad C. Att skriva i C gör att man är utlämnad till kompilatorns sätt att göra assembler koden. Assembler ger fullständig kontroll över tider.

Läs mer

TRÄNINGSPROGRAM VECKA 1 GYM 3 träningspass + 1 aktivvilodag + 3 träningspass

TRÄNINGSPROGRAM VECKA 1 GYM 3 träningspass + 1 aktivvilodag + 3 träningspass paleonordic.se 1 PASS 1 5x5 Knäböj med skivstång fram (2020, +1, 90 sec) 12 x Utfalssteg med Kettlebells + 8 x knäböj med kettlebells i rack + 60 sec vila 4 varv AmRap 8 minuter: 6 pull-ups + 10 x Kettlebell

Läs mer

SCREENIT A30 Träram fylld med A-klassad ljudabsorbent och klädd med skumlaminerat tyg.testad och A-klassad på SP enligt

SCREENIT A30 Träram fylld med A-klassad ljudabsorbent och klädd med skumlaminerat tyg.testad och A-klassad på SP enligt Bords- och golvskärmar Ett enkelt sätt att skapa en personlig sfär även i de öppnaste kontorslandskap. Våra bords- och golvskärmar ger dig ett bra skydd mot både ljud och insyn samtidigt som deras färg

Läs mer