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

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

Artificiell Intelligens II Lektion 1

Artificiell Intelligens Lektion 1

729G43 Artificiell intelligens Introduktion. Arne Jönsson HCS/IDA

Syfte : Lära sig objektorienterad programmering Syfte : Lära sig programmering i ett OO-språk vilket?

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5. Laboration 4 Lådplanering Exempel på grafik, ett avancerat program Frågor

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

729G06 Föreläsning 1 Objektorienterad programmering

TDDD92 Artificiell intelligens -- projekt

729G43 Artificiell intelligens. Introduktion. Introduktion. Kursöversikt. Kursens organisation. Arne Jönsson HCS/IDA

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

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5. Laboration 4 Lådplanering Exempel på layout, ett GUI-baserat program Frågor

KURS-PM för. Lärande i arbete 1 (YTLW17) 20 Yhp. Version 1.1 Uppdaterad

TDDC74 Lab 02 Listor, sammansatta strukturer

Torun Berlind Elin Önstorp Sandra Gustavsson Klas Nordberg. Föreläsningar Lektioner Laborationer Projekt

TDDC74 Lab 04 Muterbara strukturer, omgivningar

Evaluation Summary - CDT104 Grundläggande Webbdesign HT07 Dan Levin

Design och konstruktion av grafiska gränssnitt

TDDD92 Artificiell intelligens -- projekt

Individuell inlämningsuppgift TEK210

Kognition TEK210 (4,5 hp)

NATURVETENSKAP FÖR LIVET?

Design och konstruktion av grafiska gränssnitt

Artificiell intelligens

Start v. Programspråk. Poäng. 03 Institution Institutionen för datavetenskap 7.5. Antal registrerade (män/kvinnor) 59 (54/5)

Välkomna till DIT012 IPGO

Webbutveckling Laboration 1: HTML5 och CSS3.

TDDB68 - Processprogrammering och operativsystem

Introduktion till kursen och MATLAB

Kursanalys DA2003 sommar 2017

TDDC77 Objektorienterad Programmering

Sammanfattning av hantering av redovisning av uppgift U1

F0042T Optik I, Kursinformation

Uppdrag Fattigdom. Ett tema kring u-länder

Den intelligenta dammsugaren

Måns och Mahdi Ramadan

Matematik I - vårtermin Anu Kokkarinen Kurskoordinator

Algoritmer och datastrukturer. HI1029 8,0 hp Introduktion

kl Tentaupplägg

Kognitionsvetenskaplig avslutningskurs 729 G41

KURS-PM Produktionsutveckling

Matematik I. vårtermin Jennifer Chamberlain Kurskoordinator

RECEPTARIEPROGRAMMET - TERMIN 2, VT-14, FYSIOLOGI

TDIU01 (725G67) - Programmering i C++, grundkurs

RECEPTARIEPROGRAMMET - TERMIN 2, HT-11, FYSIOLOGI

Slutrapport för Pacman

Matematik I. hösttermin Jennifer Chamberlain Kurskoordinator

Närvarorapport samt bedömningsunderlag LIA 4 (Lärande i arbete 4)

Matematik I - höstermin Anu Kokkarinen Kurskoordinator

Programutveckling med Java 7.5 p, ht 2007 (D0019N) STUDIEHANDLEDNING - ALLMÄN INFORMATION

Webbprogrammering 725G54

Kursprogram, ETS032 Programvaruutveckling för stora system (PUSS), 7,5 hp

Hur tycker du kursen har varit? Tycker du att kursens upplägg har underlättat för dig att uppnå lärandemålen?

Fly me to the moon. Laboration om relationer, TDDC75 Diskreta strukturer. Mikael Asplund. 5 september 2017

729G06 Programmering och logik. Info om pythondelen & introduktion till objektorienterad programmering.

Snabb introduktion till LäsDax & SkrivDax 1 De fyra tillfällena

Svenska som andraspråk

Kursmaterial för laborationer i

RECEPTARIEPROGRAMMET FYSIOLOGI (3FF112) VT-2012

Lathund till Elevcentralen

Individuell inlämningsuppgift del 1: Kognitiv design.

Probabilistisk logik 1

Varför behöver vi förstå programmering? Se video

Asymptotisk analys innebär att... man försöker uppskatta vad som händer för stora indatamängder.

Sammanställning av studentutvärdering samt utvärdering kurs vid institutionen för naturvetenskapernas och matematikens didaktik

Poäng. Start v. DV1: Datavetenskapens byggstenar 7.5. Antal registrerade (män/kvinnor) 38 (38/0)

Objektorienterad Programmering (TDDC77)

Undervisningsplan MEKANIK II, för WQF, VT 2015

Programutvecklingsmetodik, teori

INSIKT nr 4 årgång vetlanda.pingst.se

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

Kristendomen och andra livsåskådningar

Tentamen: INTE

Kursplan Webbutveckling 2, 100p Läsår

Tentamen, EDAA10 Programmering i Java

Kurskompendium VT 2016 NBIA24, 91BI11, 92BI11, 91BI17, 92BI17, TFBI11

Objektorienterad Programmering (TDDC77)

Erik Östergren lärarutbildningen, 5hp HT 2015

Anonymiserade tentamina

KURS-PM för. Lärande i arbete 2 (YTLR27) 40 Yhp. Version 1.0 Uppdaterad

Spår 4 Robotiseringens möjligheter. Moderatorer: Bo Henriksson och Clara Wadman, ESV

Kursprogram, ETSF20 Programvaruutveckling för stora projekt (PUSP), 7,5 hp

Föreläsning 1: Introduktion till kursen

KURS-PM Produktionsutveckling

Tentamen TEN1 HI

729G74 IT och programmering, grundkurs. Tema 1, Föreläsning 2 Jody Foo,

Studiehandbok 1FE196 Introduktion till ekonomistyrning, 7,5

TSKS10 - Signaler, information och kommunikation

TDP Regler

Hur bedömer du som helhet det bemötande du fått som student under kursens gång? ( ), där 1 anger lägsta betyg och 5 anger högsta betyg)

Pedagogisk kartläggning av nyanlända elever

Sammanställning av studentutvärdering samt utvärdering kurs vid institutionen för naturvetenskapernas och matematikens didaktik

Outline. Objektorienterad Programmering (TDDC77) Kursinfo. Outline. Hemsida. Organization. Ahmed Rezine Examination. Webreg.

Språk, datorer och textbehandling

1DV423 Databas med Administration

WEBDESIGN A - DTR 1210

Lathund till Elevcentralen

de var svåra att implementera och var väldigt ineffektiva.

GRUNDKURS I C-PROGRAMMERING

Linköpings Universitet Linköping Institutionen för Fysik, Kemi och Biologi Per Sandström

Transkript:

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 1

Om lektioner Lektioner i SU-sal Laborationsförberedande Lektionsövningar Se upp för schemaändringar!

Om laborationerna Viktigt att komma igång med labbarna när hjälp finns Assistenter hjälper till med aktuell labb i första hand Arbete utöver laborationstillfällena kommer att krävas ThinLinc finns att tillgå för de som bill jobba hemma eller från egen dator Laborationer uppdateras varje år Feedback viktigt om något inte fungerar All information finns på hemsidan https://www.ida.liu.se/~729g43/labbar/index.sv.shtml Frågor: robin.keskisarkka@liu.se

Laborationspersonal Labbassistenter Robin Keskisärkkä Ellinor Ihs Håkansson Cornelia Böhm

Grupper Anmäl er grupp i Webreg Länk finns på hemsidan Labba i grupper om 2 Uppdelade labbassistentgrupper för muntlig redovisning Delas upp mellan assistenter vid behov

Inlämning av laboration Inlämning skickas till: labbass.ai@gmail.com Rättning sker inom 10 arbetsdagar från deadline Om något inte rättats så hör av er! Kompletteringar rättas vid uppsamlingstillfällen

Betyg Man kan få Godkänt och Väl Godkänt på labbarna. För att få VG på labbserien måste man ha VG på alla labbar (där VG-krav finns). Med det sagt, över till första laborationen

Laborationsserien Lab 1: Intelligenta agenter Lab 2: Sökagenter Lab 3: Kunskapsrepresentation Lab 4: Planering Lab 5: Probabilistisk logik Lab 6: Beslutträdsinlärning Lab 7: ANN

Laboration 1: Intelligenta agenter

Översikt Vad? Utforma och implementera en agent som kan genomsöka en hinderfri värld, samt resonera kring vad ni gjort Varför? För att få insikt i vad en agent är och vad som egentligen menas med intelligens i kursboken och inom AI För att lära er använda AI-fältets begreppsapparat Hur? Genom att utgå från en befintlig omgivningssimulator och ett programskelett Genom att läsa och reflektera

En agent Agenten uppfattar sin omgivning på något sätt Agenten agerar utifrån percept Agenten agerar i en omgivning Agenten agerar i omgivningen med effektorer Agentens beteende = agentfunktion Implementation av agentfunktionen = agentprogram

Miljösimulering: PacMan-värld Tom yta Percept = None Agent Mat Vägg Percept = bump Agentens riktning OBS! PacMan uppfattar bara nuvarande ruta Prestationsmått Startposition (1,1) Labb-miljö ursprungligen från Stanford.

Agentens effektorer Agenten kan utföra fem handlingar GoForward GoRight GoLeft GoBack Stop

Tre typiska typer av agenter RandomAgent SimpleReflexAgent AgentWithState Bearbetar percept? Deterministiska regler för beslut av handling? Kan komma ihåg vad den gjort (state)?

Agerar enbart utifrån slumpvis valda handlingar! RandomAgent

Får percept men har inget internt tillstånd (state) SimpleReflexAgent

Får percept, uppdaterar internt tillstånd, väljer handling utifrån tillstånd AgentWithState (labb 1 & 2)

Flöde för AgentWithState 1. (vald handling utförs i omgivningen) 2. update_state_with_percept( ): Agenten varseblir aktuell nuvarande och effekterna av föregående handling Uppdaterar internt tillstånd (state) med vad den uppfattar (t.ex. bump ) 3. choose_action( ): Agenten väljer ny handling att utföra utifrån sitt interna tillstånd OBS! State kan ej ändras i choose_action 4. update_state_with_action( ): Uppdatera internt tillstånd med senast valda handling OBS! Handlingen har ännu inte utförts.

Laboration 1: Mål Bygga en PacMan-agent som ska äta all mat i en godtyckligt stor rektangulär värld Agenten ska stanna när allt är uppätet Agenten ska ha en systematisk strategi för att besöka hela världen (slump är inte tillåtet) Diskussionen ska vara relevant med tydliga kopplingar mellan teori och praktik

Att tänka på Agenten startar alltid i ruta (1,1) riktad mot öster Agenten ska klara alla världar: 1x1, 1x3, 3x1, etc. Testa att definiera egna världar

Strategiska förberedelser Läs i kapitel 2 i kursboken Läs igenom instruktionerna på hemsidan Gör klart för er själva hur er agent interagerar med sin omgivning Välj en strategi och rita upp den på papper. Översätt den sedan i termer av handlingsregler. Fundera på vilken information som måste finnas i det interna tillståndet samt hur/när denna ska uppdateras i flödet

Praktiska förberedelser Spara ned alla filer från labbsidan/ kursbiblioteket https://www.ida.liu.se/~729g43/kursbibliotek/lab1/ Öppna lab1.py och studera koden Om ni vill använda IDLE men det inte startar prova med idle -n &

Dags att spana in kod! Live-kodning