Lek$on 4: Planering. Robin Keskisärkkä

Storlek: px
Starta visningen från sidan:

Download "Lek$on 4: Planering. Robin Keskisärkkä"

Transkript

1 Lek$on 4: Planering Robin Keskisärkkä

2 Sy7e Få en känsla för möjligheter och begränsningar med planering Öva på att modellera planeringsproblem för en planerare

3 Förberedelser Läs kapitel 11 i kursboken Läs igenom labbinstruktionerna Läs igenom How to write domain and problem definitions in PDDL som finns i instruktionerna

4 Planerare IPP Optimal planerare baserad på Graphplan Iterative deepening A* FF Icke-optimal planerare Hittar ofta bra lösningar snabbt Hill climbing

5 PDDL Planning Domain Defnition Language Ett försök att standardisera sättet att definiera problem och domäner inom planering Täcker STRIPS-notationen men är ej begränsad till denna STRIPS-delmängden räcker för G-nivå ADL krävs för VG

6 PDDL-domän (define (domain DOMAIN_NAME) (:requirements [:strips] [:equality] [:typing] [:adl]) (:predicates (PREDICATE_1_NAME [?A1?A2...?An]) (PREDICATE_2_NAME [?B1?B2...?Bn])... ) (:action ACTION_1_NAME [:parameters [?P1?P2...?Pn] [:precondition PRECOND_FORMULA] [:effect EFFECT_FORMULA] ) (:action ACTION_2_NAME... )... )

7 PDDL-problem (define (problem PROBLEM_NAME) (:domain DOMAIN_NAME) (:objects A B C...) (:init (PREDICATE_NAME [A1 A2... An]) (PREDICATE_NAME [A1 A2... An])...) ) (:goal (PREDICATE_NAME [A1 A2... An]) (PREDICATE_NAME [A1 A2... An])...)

8 Exempel: Blocks world Blocks world Boxar kan staplas men endast fria lådor kan flyttas Sussmans anomali A C B B A C

9 PDDL vs STRIPS Move(A, B, C) Precond: Block(A) Block(B) Block(C) On(A, B) Clear(A) Clear(C) ADD: On(A, C) Clear(B) DELETE: Clear(C) On(A, B) (:action move :parameters (?a?b?c) :precondition (and (block?a) (block?b) (block?c) (on?a?b) (clear?a) (clear?c)) :effect (and (on?a?c) (clear?b) (not (clear?c)) (not (on?a?b)))

10 PDDL: Domändefini$on (define (domain blocks-world) (:requirements :strips) (:predicates (on?x?y) (on-table?x) (clear?x) (arm-empty) (holding?x) (block?x)) ;; actions: pick-up, put-down, unstack, stack ;;...

11 PDDL: Handlingar/operatorer (:action unstack :parameters (?b1?b2) :precondition (and (block?b1) (clear?b1) (block?b2) (on?b1?b2) (arm-empty)) :effect (and (holding?b1) (not (clear?b2)) (not (arm-empty))) )

12 PDDL: Problemdefini$on (define (problem sussman-anomaly) (:domain blocks-world) (:objects a b c ) (:init (block a) (block b) (block c) (on-table b) (on c a) (clear b) (clear c) (arm-empty) (:goal (and (on a b) (on b c)) )

13 Lösningsexempel 1. unstack(c, A) 2. put-down(c) 3. pick-up(b) 4. stack(b, C) 5. pick-up(a) 6. stack(a, B) C B A

14 Uppgi7 Två uppgifter Logistik Fire Emergency VG-uppgift: Utöka Fire Emergency-domänen med hjälp av ADL

15 Uppgi7 1 Experimentera med IPP och FF Utöka logistikdomänen och modifiera problemet Diskutera era resultat För att testa era hypoteser om vad som påverkar problems komplexitet kan ni experimentera med att göra egna ändringar Visa på någon typ av insikter

16 Uppgi7 2 Implementera det som saknas i problem- och domänfilerna Läs instruktionerna Var noggranna, läs flera gånger om ni är tveksamma Använd bilden som referens och fundera över vilka antaganden måste ni göra För VG: Utöka domänen med hjälp av ADL

17 Fire Emergency

18 Uppgi7 2: Handlingar VehicleArrive VehicleDepart RescuePatient MovePatient LoadPatient UnloadPatient

19 Tips Börja smått En handling i taget Testa operatorerna på små problem som bara kräver en eller två handlingar Skilj mellan statiska och icke-statiska predikat Vanligaste felet är parenteser som inte matchar Två vanliga logiska fel är relaterade till qualification och ramification

20 Lek$onsuppgi7 En apa sitter i ett rum. I taket hänger en banan som apan inte kan nå. På golvet ligger en pinne som apan kan använda för att slå på bananen så att den ramlar ner på golvet. Apan kan bara hålla en sak i taget. Målet är att apan ska äta bananen.

21 21 Lek$onsuppgi7 Vilka handlingar och objekt behövs? Skriv ner dessa i STRIPS-notation. Hur ser start och måltillstånd ut? Ditt axiom för att lyfta något tar antagligen inte hänsyn till att det kan vara för tungt för att lyfta. Är detta ett exempel på ramification eller qualification problemet? Uppdatera handlingarna för att klara av både små och stora objekt. Om tid finns: Försök att implementera en handling i PDDL

22 Live-kodning

23

Artificiell Intelligens Lektion 1

Artificiell Intelligens Lektion 1 Labbar översikt rtificiell Intelligens Lektion 1 Labbar översikt Planering (Lab1 Projektinspiration 3 stycken datorlabbar Planering Probabilistisk logik Maskininlärning Handledare Robin, Jonas, hristian,

Läs mer

Artificiell Intelligens II Lektion 1

Artificiell Intelligens II Lektion 1 Labbar översikt rtificiell Intelligens II Lektion 1 Labbar översikt Planering (Lab1 Projektinspiration 3 stycken datorlabbar Planering Probabilistisk logik Maskininlärning Handledare Robin, Jonas, hristian,

Läs mer

729G43 Artificiell intelligens Planering

729G43 Artificiell intelligens Planering 729G43 Artificiell intelligens Planering Arne Jönsson HCS/IDA Planering Sökning vs planering Planeringsnotationer Enkel planering Partialordningsplanering Resursplanering Hierarkisk planering Planering

Läs mer

Planering. Planering vs sökning, 1. Planering vs sökning, 2. Handlingsrepresentation

Planering. Planering vs sökning, 1. Planering vs sökning, 2. Handlingsrepresentation Planering Planering vs sökning, 1! Sökning vs planering! Planeringsnotationer! Enkel planering! Partialordningsplanering! Resursplanering! Hierarkisk planering! Planering i icke-deterministiska domäner

Läs mer

Artificial Intelligence

Artificial Intelligence Omtentamen Artificial Intelligence Datum: 2014-08-27 Tid: 09.00 13.00 Ansvarig: Resultat: Hjälpmedel: Gränser: Anders Gidenstam Redovisas inom tre veckor Inga G 8p, VG 12p, Max 16p Notera: Skriv läsbart!

Läs mer

Tentamenskod: Inga hjälpmedel är tillåtna

Tentamenskod: Inga hjälpmedel är tillåtna Intelligenta och lärande system 15 högskolepoäng Provmoment: Ladokkod: Tentamen ges för: Tentamen (TEN1) Artificiell intelligens (AI) 5hp 21IS1C Systemarkitekturutbildningen Tentamenskod: Tentamensdatum:

Läs mer

729G43'Ar*ficiell'intelligens' Planering' Planering' Planering'vs'sökning,'1' Planering'vs'sökning,'2' Arne'Jönsson' HCS/IDA' '

729G43'Ar*ficiell'intelligens' Planering' Planering' Planering'vs'sökning,'1' Planering'vs'sökning,'2' Arne'Jönsson' HCS/IDA' ' Planering' 729G43'Ar*ficiell'intelligens' Planering' Arne'Jönsson' HCS/IDA' ' Sökning'vs'planering' Planeringsnota*oner' Enkel'planering' Par*alordningsplanering' Resursplanering' Hierarkisk'planering'

Läs mer

Lektion 2: Sökagenter. Robin Keskisärkkä

Lektion 2: Sökagenter. Robin Keskisärkkä Lektion 2: Sökagenter Robin Keskisärkkä Lektionens innehåll Introduktion till laboration 2 Implementation av en sökalgoritm Livekodning Konfrontera ett liknande problem själva Extra: Heuristisk sökning

Läs mer

Lek$on 3: Kunskapsrepresenta$on. Robin Keskisärkkä

Lek$on 3: Kunskapsrepresenta$on. Robin Keskisärkkä Lek$on 3: Kunskapsrepresenta$on Robin Keskisärkkä Översikt Laborationerna så här långt Genomgång av laboration 3 Uppgift Förberedelser Kunskapsrepresentation Framesteori Uppgi9 Implementera ett frames-system

Läs mer

Shakey s värld med HTNplanering

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...

Läs mer

TDDC74 Programmering: Abstraktion och modellering Tentamen, lördag 29 augusti 2015, kl 8 12

TDDC74 Programmering: Abstraktion och modellering Tentamen, lördag 29 augusti 2015, kl 8 12 TDDC74 Programmering: Abstraktion och modellering Tentamen, lördag 29 augusti 215, kl 8 12 Läs alla frågorna först, och bestäm dig för i vilken ordning du vill lösa uppgifterna. Skriv tydligt och läsligt.

Läs mer

Lek$on 4: Kunskapsrepresenta$on. Robin Keskisärkkä och Jonas Rybing

Lek$on 4: Kunskapsrepresenta$on. Robin Keskisärkkä och Jonas Rybing Lek$on 4: Kunskapsrepresenta$on Robin Keskisärkkä och Jonas Rybing Översikt Laborationerna så här långt Genomgång av Laboration 4 Uppgift Förberedelser Kunskapsrepresentation Framesteori Uppgi= Implementera

Läs mer

Vad behövs för att skapa en tillståndsrymd?

Vad behövs för att skapa en tillståndsrymd? OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervarlsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

Vad är. Domändriven design?

Vad är. Domändriven design? Vad är Domändriven design? 1 Domändriven design är utvecklare och domänexperter som arbetar tillsammans för att skapa mjukvara som är både begriplig och möjlig att underhålla. ett sätt att fånga och sprida

Läs mer

Lära dig analysera större och mer komplicerade problem och formulera lösningar innan du implementerar.

Lära dig analysera större och mer komplicerade problem och formulera lösningar innan du implementerar. Laboration 5 Mängder Syfte Lära dig analysera större och mer komplicerade problem och formulera lösningar innan du implementerar. Lära dig kombinera på ett lämpligt sätt de begrepp och metoder som du har

Läs mer

Syntaktisk parsning (Jurafsky & Martin kapitel 13)

Syntaktisk parsning (Jurafsky & Martin kapitel 13) Syntaktisk parsning (Jurafsky & Martin kapitel 13) Mats Wirén Institutionen för lingvistik Stockholms universitet mats.wiren@ling.su.se DH2418 Språkteknologi DA3010 Språkteknologi för datorlingvister Föreläsning

Läs mer

Granskningsmetoder. Mattias Institutionen för datavetenskap Linköpings universitet

Granskningsmetoder. Mattias Institutionen för datavetenskap Linköpings universitet Granskningsmetoder Mattias Arvola @mattiasarvola Institutionen för datavetenskap Linköpings universitet 1 En timmes genomgång av granskningsmetoder Heuristisk utvärdering Kognitiv genomgång KLM! Ändrat

Läs mer

Lektion G43 Artificiell intelligens. Robin Keskisärkkä Ellinor Ihs Håkansson Cornelia Böhm

Lektion G43 Artificiell intelligens. Robin Keskisärkkä Ellinor Ihs Håkansson Cornelia Böhm Lektion 1 729G43 Artificiell intelligens Robin Keskisärkkä Ellinor Ihs Håkansson Cornelia Böhm Dagens lektion Kort om laborationsserien Introduktion till laboration 1 Live-kodning Börja arbeta med laboration

Läs mer

Utsagor (Propositioner) sammansatta utsagor sanningstabeller logisk ekvivalens predikat (öppna utsagor) kvantifierare Section

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

Läs mer

Granskning av gränssnitt. Mattias Arvola

Granskning av gränssnitt. Mattias Arvola Granskning av gränssnitt Mattias Arvola 2 Att skapa interaktiva system Identifiera krav Utforma alternativ Ta fram prototyper (eller annan illustration av system) Utvärdera 3 Mål med utvärderingen Revidera,

Läs mer

Filosofisk logik Kapitel 15. Robin Stenwall Lunds universitet

Filosofisk logik Kapitel 15. Robin Stenwall Lunds universitet Filosofisk logik Kapitel 15 Robin Stenwall Lunds universitet Dagens upplägg Första ordningens mängdlära Naiv mängdlära Abstraktionsaxiomet (eg. comprehension) Extensionalitetsaxiomet Små mängder Ordnade

Läs mer

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

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs... OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervarlsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

4 grundregler. Minneshantering. Problemet. Windows minkrav

4 grundregler. Minneshantering. Problemet. Windows minkrav 4 grundregler 1. Man kan aldrig få för mycket minne 2. Minnet kan aldrig bli för snabbt Minneshantering 3. Minne kan aldrig bli för billigt 4. Programmens storlek ökar fortare än minnet i datorerna (känns

Läs mer

Mjukvarudesign. Designprocessen. Teknisk design. Konceptuell design

Mjukvarudesign. Designprocessen. Teknisk design. Konceptuell design RE SD PD I UT IT ST AT Mjukvarudesign System Requirement Specification Inkrementell och iterativ! Konceptuell design (VAD) Systemdesign (OOA) Arkitekturell (grovkornig, UML) Teknisk design (HUR) Programdesign

Läs mer

Tentamen i. TDDA 69 Data och programstrukturer

Tentamen i. TDDA 69 Data och programstrukturer 1 Linköpings tekniska högskola Institutionen för datavetenskap Anders Haraldsson Tentamen i TDDA 69 Data och programstrukturer Torsdag den 14 januari 2009, kl 14-18 Hjälpmedel: Inga. Poänggränser: Maximalt

Läs mer

Uppmärkningsspråk. TDP007 Konstruktion av datorspråk Föreläsning 4. Peter Dalenius Institutionen för datavetenskap

Uppmärkningsspråk. TDP007 Konstruktion av datorspråk Föreläsning 4. Peter Dalenius Institutionen för datavetenskap Uppmärkningsspråk TDP007 Konstruktion av datorspråk Föreläsning 4 Peter Dalenius Institutionen för datavetenskap 2015-02-03 Från förra gången XML-dokument specificeras med t.ex. en DTD Två olika sätt att

Läs mer

Artificiell Intelligens Övningsuppgifter

Artificiell Intelligens Övningsuppgifter Sökning - Tentauppg 99-:4 Artificiell Intelligens Övningsuppgifter Sökning Konjunktiv normalform Unifiering Resolution Planering Situationskalkyl Maskininlärning Beskriv sökmetoden A* genom att visa hur

Läs mer

Filosofisk logik Kapitel 15 (forts.) Robin Stenwall Lunds universitet

Filosofisk logik Kapitel 15 (forts.) Robin Stenwall Lunds universitet Filosofisk logik Kapitel 15 (forts.) Robin Stenwall Lunds universitet Dagens upplägg Antalet element i en mängd Kardinalitet Humes princip Cantors teorem Den universella mängden Några mängdteoretiska paradoxer

Läs mer

Mer OOP. Variation i typ. Medlen repetition. Generiska klasser. Gränssnitt - Interface. Mer om klasser Några exempel UML

Mer OOP. Variation i typ. Medlen repetition. Generiska klasser. Gränssnitt - Interface. Mer om klasser Några exempel UML Målet Mer OOP Mer om klasser Några exempel UML Modularitet Språkligt modulära enheter Få gränssnitt Små gränssnitt Tydliga gränssnitt Dold information Återanvändbarhet Variation i typer Variation i datastrukturer

Läs mer

Algoritmer och datastrukturer TDA Fredrik Johansson

Algoritmer och datastrukturer TDA Fredrik Johansson Algoritmer och datastrukturer TDA143 2015-02- 18 Fredrik Johansson Algoritmer Informell beskrivning E" antal steg som beskriver hur en uppgi5 görs. A set of steps that defines how a task is performed.

Läs mer

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

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs... OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervarlsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

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

Tommy Färnqvist, IDA, Linköpings universitet

Tommy Färnqvist, IDA, Linköpings universitet Föreläsning 9 Pekare, länkade noder, länkade listor TDDD86: DALP Utskriftsversion av föreläsning i Datastrukturer, algoritmer och programmeringsparadigm 25 september 2015 Tommy Färnqvist, IDA, Linköpings

Läs mer

TDDC74 Programmering: Abstraktion och modellering Dugga 3, kl 14 16, 25 mars 2015

TDDC74 Programmering: Abstraktion och modellering Dugga 3, kl 14 16, 25 mars 2015 TDDC74 Programmering: Abstraktion och modellering Dugga 3, kl 14 16, 25 mars 2015 Läs alla frågorna först, och bestäm dig för i vilken ordning du vill lösa uppgifterna. Skriv tydligt och läsligt. Använd

Läs mer

Grundläggande datalogi - Övning 2

Grundläggande datalogi - Övning 2 Grundläggande datalogi - Övning 2 Björn Terelius November 7, 2008 Klasser skapas med nyckelordet class Klasser Konstruktorer och destruktorer Undantagshantering class MyClass: Docstring and doctests for

Läs mer

TDDC74 Programmering, abstraktion och modellering DUGGA 2

TDDC74 Programmering, abstraktion och modellering DUGGA 2 AID-nummer: Datum: 2011-02-18 1 Tekniska högskolan vid Linköpings universitet Institutionen för datavetenskap Anders Haraldsson TDDC74 Programmering, abstraktion och modellering DUGGA 2 Fredag 18 feb 2011

Läs mer

I kursen i endimensionell analys är mängden av reella tal (eng. real number), R, fundamental.

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

Läs mer

Tentamen, Algoritmer och datastrukturer

Tentamen, Algoritmer och datastrukturer UNDS TEKNISKA ÖGSKOA (6) Institutionen för datavetenskap Tentamen, Algoritmer och datastrukturer 23 8 29, 8. 3. Anvisningar: Denna tentamen består av fem uppgifter. Totalt är skrivningen på 36 poäng och

Läs mer

10. Mängder och språk

10. Mängder och språk Objektorienterad modellering och diskreta strukturer 10. Mängder och språk Sven Gestegård Robertz Institutionen för datavetenskap, LTH 2013 Rekaputilation Vi har talat om satslogik, predikatlogik och härledning

Läs mer

Administrivia. hh.se/db2004. 1 Verónica Gaspes (Kursansvarig) 2 Mattias Enervall (Övningsassistent) Examination. 1 Skriftlig tentamen (betyg)

Administrivia. hh.se/db2004. 1 Verónica Gaspes (Kursansvarig) 2 Mattias Enervall (Övningsassistent) Examination. 1 Skriftlig tentamen (betyg) Programmering hh.se/db2004 Föreläsning 1 Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Välkomna till en kurs i programmering! Att programmera är att få datorn att bete sig på

Läs mer

Nätkurs Design & konstruktion av användargränssnitt 1MD113 Sid 1 (5) Lektion 11 Användare, uppgifter och krav del

Nätkurs Design & konstruktion av användargränssnitt 1MD113 Sid 1 (5) Lektion 11 Användare, uppgifter och krav del Nätkurs Design & konstruktion av användargränssnitt 1MD113 Sid 1 (5) Del 3 Uppgiftsanalys Av Stefan Blomkvist Uppgiftsanalysen ska svara på frågor om vilka uppgifter användarna utför och hur dessa genomförs.

Läs mer

TDDC74 Lab 02 Listor, sammansatta strukturer

TDDC74 Lab 02 Listor, sammansatta strukturer TDDC74 Lab 02 Listor, sammansatta strukturer 1 Översikt I denna laboration kommer ni att lära er mer om: Mer komplexa rekursiva mönster, procedurer och processer. Hur man kan hantera listor och andra enklare

Läs mer

UMEÅ UNIVERSITET 26 april 2002 Instutionen för datavetenskap. Grafproblem. Laboration 4, Datastrukturer och Algoritmer VT02

UMEÅ UNIVERSITET 26 april 2002 Instutionen för datavetenskap. Grafproblem. Laboration 4, Datastrukturer och Algoritmer VT02 UMEÅ UNIVERSITET 26 april 2002 Instutionen för datavetenskap Grafproblem Laboration 4, Datastrukturer och Algoritmer VT02 Laboration 4 - grafproblem Förpackningsdatum: Denna lab-spec är senast ändrad:

Läs mer

Administrivia. hh.se/db2004. 1 Verónica Gaspes (Kursansvarig) 2 Daniel Petersson (Labassistent) Examination. 1 Skriftlig tentamen (betyg)

Administrivia. hh.se/db2004. 1 Verónica Gaspes (Kursansvarig) 2 Daniel Petersson (Labassistent) Examination. 1 Skriftlig tentamen (betyg) Programmering hh.se/db2004 Föreläsning 1 Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Välkomna till en kurs i programmering! Att programmera är att få datorn att bete sig på

Läs mer

Programmering II (ID1019) :00-17:00

Programmering II (ID1019) :00-17:00 ID1019 Johan Montelius Programmering II (ID1019) 2014-03-10 14:00-17:00 Förnamn: Efternamn: Instruktioner Du får inte ha något materiel med dig förutom skrivmateriel. Mobiler etc, skall lämnas till tentamensvakten.

Läs mer

FÖRELÄSNING 3 ANDERS MÄRAK LEFFLER IDA/HCS

FÖRELÄSNING 3 ANDERS MÄRAK LEFFLER IDA/HCS 729G06 Logik FÖRELÄSNING 3 ANDERS MÄRAK LEFFLER IDA/HCS 160208 Idag C-regeln, informell (och formell) inledning till predikatlogik (Bevis kommer senare.) 2 3 Vår (Snöfritt Cykla) (Vår Snöfritt) Cykla Lätt

Läs mer

Analytisk relationsdatabasdesign

Analytisk relationsdatabasdesign Analytisk relationsdatabasdesign Att förbättra kvaliteten i databaser Presenter s Name Organization name www.horton.com Domän-regler och främmande nyckel regler via DDL Datatyp! Datatyp! Maxvärde! Maxvärde!

Läs mer

Interaktion 2 STYRDON, PEKDON OCH ANNAN INTERAKTION ATT RÄKNA MED

Interaktion 2 STYRDON, PEKDON OCH ANNAN INTERAKTION ATT RÄKNA MED Interaktion 2 STYRDON, PEKDON OCH ANNAN INTERAKTION ATT RÄKNA MED Sammanfattning Styrdon Tangentbord och textinmatning Pekdon Fitts lag GOMS-KLM Styrdon Tangentbord Pekdon Tangentbord QWERTY-layout QWERTY-layout

Läs mer

Relationsdatabasdesign

Relationsdatabasdesign Vad är Relationsdatabasdesign? Relationsdatabasdesign nikosd@kth.se 08-7904460 rum 8522 Connolly/Begg (3rd edition) Kapitel 4., 4.2 och 5 (4th edition) Kapitel 5., 5.2 och 6 (5th edition) Kapitel 6., 6.2

Läs mer

Problemlösning, kreativitet

Problemlösning, kreativitet Olika fasetter av intelligent tänkande Problemlösning, kreativitet Resonerande (logiskt tänkande) Strikta regler Avgöra om utsaga sann eller falsk Beslutsfattande Välja mellan alternativa handlingar Bestämma

Läs mer

(Data)Modellering. nikos dimitrakas rum 2423

(Data)Modellering. nikos dimitrakas rum 2423 (Data)Modellering nikosd@kth.se 08-161295 rum 2423 Connolly/Begg (3rd edition) Kapitel 11, 12 och 14 (4th edition) Kapitel 11, 12 och 15 (5th edition) Kapitel 12, 13 och 16 (6th edition) Kapitel 12, 13

Läs mer

Tillämpad Programmering (ID1218) :00-13:00

Tillämpad Programmering (ID1218) :00-13:00 ID1218 Johan Montelius Tillämpad Programmering (ID1218) 2014-03-13 09:00-13:00 Förnamn: Efternamn: Regler Du får inte ha något materiel med dig förutom skrivmateriel. Mobiler etc, skall lämnas till tentamensvakten.

Läs mer

Datainsamling Hur gör man, och varför?

Datainsamling Hur gör man, och varför? Datainsamling Hur gör man, och varför? FSR: 2 Preece et al.: Interaction design, kapitel 7 Översikt Att kunna om datainsamlingsmetoder Observationstekniker Att förbereda Att genomföra Resultaten och vad

Läs mer

Guide Studieteknik. Tips för lättare studier!

Guide Studieteknik. Tips för lättare studier! Guide Studieteknik Tips för lättare studier! 1 Läs- och anteckningsteknik Att läsa och att anteckna Det finns goda skäl till att göra anteckningar när du läser en text, lyssnar på en föreläsning, förbereder

Läs mer

Barnen får genom övningen känna att de spelar roll på förskolan, och att era gemensamma upplevelser är viktiga.

Barnen får genom övningen känna att de spelar roll på förskolan, och att era gemensamma upplevelser är viktiga. TACK FÖR DIG SYFTE: Att få uppmärksamhet på ett sätt som fokuserar på person och inte prestation. Det här är en övning som passar utmärkt till att ha på fredagar efter en gemensam vecka, och som fungerar

Läs mer

Det här är en övning för de barn som har förmåga till visst abstrakt tänkande.

Det här är en övning för de barn som har förmåga till visst abstrakt tänkande. ALLA SKA MED / FN-DAGEN SYFTE: Att ge förslag på lösningar, att lyssna på varandras förslag, att pröva olika lösningar och att samarbeta. Samt att knyta samman de processer som sker i det lilla med det

Läs mer

Avbildningar och hashtabeller. Koffman & Wolfgang kapitel 7, mestadels avsnitt 2 4

Avbildningar och hashtabeller. Koffman & Wolfgang kapitel 7, mestadels avsnitt 2 4 Avbildningar och hashtabeller Koffman & Wolfgang kapitel 7, mestadels avsnitt 2 4 1 2 Mängder i Java 3 Mängd-gränssnittet Set vs. List Mängder får endast innehålla unika element: Metoden.add(E) returnerar

Läs mer

3. Välj den sprajt (bild) ni vill ha som fallande objekt, t ex en tårta, Cake. Klicka därefter på OK.

3. Välj den sprajt (bild) ni vill ha som fallande objekt, t ex en tårta, Cake. Klicka därefter på OK. Moment 2: Klonspel Instruktioner för deltagare Idag ska du få lära dig om: Kloner - kopior av samma figur (sprajt) Variabler - ett värde, exempelvis antal poäng Slumptal - slå en tärning för att välja

Läs mer

Två fall: q Tom sekvens: () q Sekvens av element: (a b c) ; (sum-rec '(2 4 6)) = 12. q Första elementet uppfyller vissa villkor: (2 a b c)

Två fall: q Tom sekvens: () q Sekvens av element: (a b c) ; (sum-rec '(2 4 6)) = 12. q Första elementet uppfyller vissa villkor: (2 a b c) Programmönster: # Listan som sekvens, Rekursiv process Enkel genomgång av sekvens (element på toppnivån i en lista)) TDDC60 Programmering: abstraktion och modellering Föreläsning 5 Rekursiva och iterativa

Läs mer

TDDC74 - Projektspecifikation

TDDC74 - Projektspecifikation TDDC74 - Projektspecifikation Projektmedlemmar: Namn Efternamn abcde123@student.liu.se Namn Efternamn abcde123@student.liu.se Handledare: Handledare handledare@ida.liu.se eller handledare@student.liu.se

Läs mer

Tentamen: INTE 2011-10-26

Tentamen: INTE 2011-10-26 Tentamen: INTE 2011-10-26 Det enda godkända hjälpmedlet är ett exemplar av den personliga fusklappen som lämnats in som inlämningsuppgift tre på kursen. På nästa sida finns ett utdrag ur instruktionerna

Läs mer

F7 Agila metoder. EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson, Ulf Asklund Datavetenskap, LTH

F7 Agila metoder. EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson, Ulf Asklund Datavetenskap, LTH F7 Agila metoder EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson, Ulf Asklund Datavetenskap, LTH 1 XP - Scrum - Kanban - FDD Agila metoder: Vad innehåller SCRUM Hur skiljer sig XP och SCRUM?

Läs mer

QUEST TM Flödessimulering

QUEST TM Flödessimulering QUEST TM Vad är simulering? Simulering är att experimentera med en modell av verkligheten Simulering är ett verktyg för effektivt projektarbete Simulering är ett nytt arbetsätt 2 Varför flödessimulering?

Läs mer

EDA095 JavaScript. Per Andersson. Maj 4, Lund University Per Andersson EDA095 JavaScript Maj 4, / 23

EDA095 JavaScript. Per Andersson. Maj 4, Lund University   Per Andersson EDA095 JavaScript Maj 4, / 23 EDA095 JavaScript Per Andersson Lund University http://cs.lth.se/pierre_nugues/ Maj 4, 2017 Innehåll: JavaScript Per Andersson EDA095 JavaScript Maj 4, 2017 1 / 23 JavaScript JavaScript: syntax som Java

Läs mer

729G06 Föreläsning 1 Objektorienterad programmering

729G06 Föreläsning 1 Objektorienterad programmering Översikt Formalia Vad är objektorienterad programmering 729G06 Föreläsning 1 Objektorienterad programmering Definieria klasser Skapa och använda objekt Annika Silvervarg Ciltab, IDA, Linköpings universitet

Läs mer

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten.

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten. OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

CREATING VALUE BY SHARING KNOWLEDGE

CREATING VALUE BY SHARING KNOWLEDGE CREATING VALUE BY SHARING KNOWLEDGE PROJEKTLEDNING 101 Nidzara Dellien, Lund September 2017 PROJEKT En formell definition på projekt är följande (enligt Wikipedia): En temporär satsning för att framställa

Läs mer

Varför är logik viktig för datavetare?

Varför är logik viktig för datavetare? Varför är logik viktig för datavetare? 1. Datavetenskap handlar ofta om att automatisera processer som tidigare styrts av människor. Intuition, intelligens och mänskliga resonemang ersätts av beräkningar.

Läs mer

Classes och Interfaces, Objects och References, Initialization

Classes och Interfaces, Objects och References, Initialization Classes och Interfaces, Objects och References, Initialization Objekt-orienterad programmering och design (DIT953) Niklas Broberg/Johannes Åman Pohjola, 2018 Abstract class En abstract class är en class

Läs mer

Föreläsning 4: Kombinatorisk sökning

Föreläsning 4: Kombinatorisk sökning DD2458, Problemlösning och programmering under press Föreläsning 4: Kombinatorisk sökning Datum: 2009-09-25 Skribent(er): Kristina Nylander, Dennis Ekblom, Marcus Öman Föreläsare: Fredrik Niemelä 1 Introduktion

Läs mer

Objektsamlingar i Java

Objektsamlingar i Java 1 (6) Objektsamlingar i Java Objektorienterad programmering 3 Syfte Att ge träning i att använda objektsamlingar i Java. Mål Efter övningen skall du kunna använda objektsamlingsklasserna ArrayList och

Läs mer

Arv och polymorfism i Java

Arv och polymorfism i Java 1 (5) Arv och polymorfism i Java Objektorienterad programmering 5 Syfte Att ge en introduktion till arvsmekanismen i Java. Mål Efter övningen skall du kunna definiera klasser med arv i Java. förstå hur

Läs mer

Programmering från början

Programmering från början Färdiga lektioner till de nya digitala kunskapsmålen för årskurs 1 till 6 Lektionsserien består av följande lektioner: 1. Programmera någon att bre en smörgås 2. Lapp-programmering 3. Programmera kompisar

Läs mer

Övningsuppgifter kapitel 8

Övningsuppgifter kapitel 8 Inst. för Systemteknik Introduktion till programmering (SMD 180), 5 p Övningsuppgifter kapitel 8 1. Listor är en viktig datatyp i Python. Hur definierar kursboken lista? Vad kallas de värden som tillsammans

Läs mer

Objekt, klasser. Tillstånd Signatur Kommunikation Typ. Fält, parametrar och lokala variabler. Konstruktorer Metoder DAVA15

Objekt, klasser. Tillstånd Signatur Kommunikation Typ. Fält, parametrar och lokala variabler. Konstruktorer Metoder DAVA15 DAVA15 Objekt, klasser Vad är det? Vad är sambandet mellan dem? Vad är skillnaden mellan dem? Tillstånd Signatur Kommunikation Typ Fält, parametrar och lokala variabler Likheter och skillnader Räckvidd

Läs mer

TDDC74 Programmering: Abstraktion och modellering. Provkod TEN1, Tid: kl 14-18, , Kåra

TDDC74 Programmering: Abstraktion och modellering. Provkod TEN1, Tid: kl 14-18, , Kåra Tentamen Provkod TEN1, Tid: kl 14-18, 2013-06- 07, Kåra Läs alla frågorna först och bestäm dig för den ordning som passar dig bäst. Även om det i uppgi;en står a< du skall skriva en procedur/funk?on, så

Läs mer

Tentamen för kursen Objektorienterad programvaruutveckling GU (DIT010)

Tentamen för kursen Objektorienterad programvaruutveckling GU (DIT010) Tentamen för kursen Objektorienterad programvaruutveckling GU (DIT010) Tid: Onsdagen 15 december 2004, 8:30 till 13:30 Plats: M Ansvarig lärare: Katarina Blom, tel 772 10 60. Läraren besöker tentamen kl

Läs mer

Introduktion. Byggstenar TDBA63 2005-11-22

Introduktion. Byggstenar TDBA63 2005-11-22 Introduktion UML står för Unified Modeling Language. Det är tänkt att fungera som hjälpmedel vid modellering av alla tänkbara typer av utvecklingsarbeten, inte bara inom dataomdrådet. Det största värdet

Läs mer

Hjälpmedel för kompilatorkonstruktion, DVB004

Hjälpmedel för kompilatorkonstruktion, DVB004 Hjälpmedel för kompilatorkonstruktion, DVB004 Version 4.2 021104 Göran Fries 031104 GF Kompilatorn kan lämpligen konstrueras i tre ganska fristående pass (p1,p2,p3). Första passet gör en lexikalisk analys,

Läs mer

CliMate följer Tre-lager-arkitektur. Domänobjekt - domänlogiklagret. Viktiga domänklasser i CliMate. De tre lagren. Paketen i CliMate:

CliMate följer Tre-lager-arkitektur. Domänobjekt - domänlogiklagret. Viktiga domänklasser i CliMate. De tre lagren. Paketen i CliMate: följer Tre-lager-arkitektur De tre lagren presentation: användarhändelser+grafik+resultat domänlogik: håller systemets funktioner databasaccess: databas + sql-hantering Paketen i : climate.ui (inkl climate.ui.action

Läs mer

Funktionspekare, inledning: funktionsanropsmekanismen. Anrop via pekare

Funktionspekare, inledning: funktionsanropsmekanismen. Anrop via pekare Funktionspekare, inledning: funktionsanropsmekanismen Vid funktionsanrop läggs aktuella argumentvärden och återhoppsadressen på stacken, därefter sker ett hopp till adressen för funktionens första instruktion.

Läs mer

TDDC74 Programmering, abstraktion och modellering DUGGA 2

TDDC74 Programmering, abstraktion och modellering DUGGA 2 1 Tekniska högskolan vid Linköpings universitet Institutionen för datavetenskap Anders Haraldsson TDDC74 Programmering, abstraktion och modellering DUGGA 2 Torsdag 19 feb 2009 8-10 Namn: Personnummer:

Läs mer

Objektbaserad programmering

Objektbaserad programmering 1ME323 Webbteknik 3 Lektion 4 Objektbaserad programmering Rune Körnefors Medieteknik 1 2018 Rune Körnefors rune.kornefors@lnu.se Agenda Objekt i JavaScript Strukturering av data Strukturering av programkod

Läs mer

Lite om databasdesign och modellering

Lite om databasdesign och modellering Lite om databasdesign och modellering Konceptuell databasdesign Med konceptuell databasdesign avses processen att konstruera en datamodell för en verksamhet, oberoende av fysiska villkor. Modelleringen

Läs mer

Structured Query Language (SQL)

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

Läs mer

Att hitta projekt. Björn Victor. måndag 19 mars 12

Att hitta projekt. Björn Victor. måndag 19 mars 12 Att hitta projekt Björn Victor Övning: projektbeskrivning Till måndag: skriv en (1) sida som beskriver projektet på Distribuerade system med projekt Övning: inte obligatorisk, men nyttig! 1. vad var planen/avsikten/syftet/målet

Läs mer

Objektorienterad Programmering DAT043. Föreläsning 9 12/2-18 Moa Johansson (delvis baserat på Fredrik Lindblads material)

Objektorienterad Programmering DAT043. Föreläsning 9 12/2-18 Moa Johansson (delvis baserat på Fredrik Lindblads material) Objektorienterad Programmering DAT043 Föreläsning 9 12/2-18 Moa Johansson (delvis baserat på Fredrik Lindblads material) 1 Metoden clone() Skapa kopior av existerande objekt. Interface Cloneable Deep vs.

Läs mer

TDDC74 FÖRELÄSNING 9 ANDERS MÄRAK LEFFLER IDA/HCS

TDDC74 FÖRELÄSNING 9 ANDERS MÄRAK LEFFLER IDA/HCS TDDC74 FÖRELÄSNING 9 ANDERS MÄRAK LEFFLER IDA/HCS 180226 Idag (ADT), OOP i Racket, labb 5 2 Allmän info Duggan. Laboration 4 deadline. Planering framöver Muddy cards (nästa timme) 3 Lite repetition ADT

Läs mer

Grundkurs Programmering

Grundkurs Programmering HI124 Grundkurs Programmering F7b: Funktioner på djupet! A. Cajander, STH 6 1 5 42 3.14f a float char short circuit order of subexp eval. Dagens fokus = + - * / % ++ -- + - * / % & ^ > ==!= > < >=

Läs mer

Frågor och svar Läraren

Frågor och svar Läraren Frågor och svar Läraren side 1 TIPS! Låt eleverna skriva sina svar och göra uppgifterna på lösblad. Dessa samlar de sedan i en plastmapp. När boken är färdigläst och alla frågorna och uppgifterna är lösta

Läs mer

Företagsmodellering i UML

Företagsmodellering i UML Företagsmodellering i UML En kort-kort introduktion av Ambjörn Naeve http://kmr.nada.kth.se Modellering En modell är en förenklad beskrivning av ett komplext område En modell är motiverad av mål (= har

Läs mer

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 2. Länkade listor Stackar Köer MyList Iteratorer Lab 2 Exceptions Paket

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 2. Länkade listor Stackar Köer MyList Iteratorer Lab 2 Exceptions Paket TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 2 Länkade listor Stackar Köer MyList Iteratorer Lab 2 Exceptions Paket 1 Länkade listor Likadant som i Ada-kursen. 2 Stack MyStack MyStack

Läs mer

Problemet. Lösningen. Some problems. in the world are. not bulletizable. Aftonbladet 15 april Sir Winston Churchill.

Problemet. Lösningen. Some problems. in the world are. not bulletizable. Aftonbladet 15 april Sir Winston Churchill. Problemet Wikipedia september 009 Wired 15 april 007 Some problems Sir Winston Churchill in the world are 187 1965 not bulletizable. Aftonbladet 15 april 007 General McMaster, NATO We shall fight in France

Läs mer

12. Relationer och funktioner

12. Relationer och funktioner Objektorienterad modellering och diskreta strukturer 12. Relationer och funktioner Sven Gestegård Robertz Institutionen för datavetenskap, LTH 2013 Laboration 4 Syntaxanalys Grammatik för (vår delmängd

Läs mer

Block 1 - Mängder och tal

Block 1 - Mängder och tal Block 1 - Mängder och tal Mängder Mängder och element Venndiagram Talmängder Heltalen Z Rationella talen Q Reella talen R Räkning med tal. Ordning av talen i R Intervall Absolutbelopp Olikheter 1 Prepkursen

Läs mer

Goals for third cycle studies according to the Higher Education Ordinance of Sweden (Sw. "Högskoleförordningen")

Goals for third cycle studies according to the Higher Education Ordinance of Sweden (Sw. Högskoleförordningen) Goals for third cycle studies according to the Higher Education Ordinance of Sweden (Sw. "Högskoleförordningen") 1 1. Mål för doktorsexamen 1. Goals for doctoral exam Kunskap och förståelse visa brett

Läs mer

Tentamen'('Datastrukturer,'algoritmer'och'programkonstruktion.'

Tentamen'('Datastrukturer,'algoritmer'och'programkonstruktion.' Tentamen'('Datastrukturer,'algoritmer'och'programkonstruktion.' Skrivtid: 08.30 13.30 Hjälpmedel: Inga Lärare: Betygsgränser DVA104' Akademin)för)innovation,)design)och)teknik) Onsdag)2014:01:15) Caroline

Läs mer

Programsystem konstruktion med C++ (2D1387) Innehåll. övning 2 klasser och arv

Programsystem konstruktion med C++ (2D1387) Innehåll. övning 2 klasser och arv Programsystem konstruktion med C++ (2D1387) övning 2 klasser och arv Ronnie Johansson rjo@nadakthse grupp 4 2003 09 25 Innehåll Klasskonstruktorer och initieringslistor Klassdestruktorer Åtkomstkontroll

Läs mer

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Försättsblad till skriftlig tentamen vid Linköpings Universitet Försättsblad till skriftlig tentamen vid Linköpings Universitet (fylls i av ansvarig) Datum för tentamen Sal Tid Kurskod Provkod Kursnamn/benämning Institution Antal uppgifter i tentamen Antal sidor på

Läs mer