729G74 IT och programmering, grundkurs Tema 1, Föreläsning 1 Jody Foo, jody.foo@liu.se
Föreläsningsöversikt Kurspresentation: teman, kursmoment, examination, kurshemsidan, administration, Tema 1: introduktion till det första temat
Välkomna till Hogwarts Jakovche
Any sufficiently advanced technology is indistinguishable from magic. Clarke's Third Law. Arthur C. Clarke
Every time we figure out a piece of it, it stops being magical; we say, 'Oh, that's just a computation.' Rodney Brooks (kallas för "the AI effect)
Vi ska lära oss om magin för att "förstöra" den.
Om kursen + kursupplägg
Höstterminen 2017 Åk 1 ht17 vt18 Kognitionsvetenskaplig intro.-kurs 729G01 v34-38 block 24 Kognitiv psykologi 729G02 v39-43 block 24 Forskningsmetodik och statistik 729G03 v44-48 block 24 Lingvistik 729G08 v49-3 block 24 IT och programmering: grundkurs 729G74 v34-3 block 1
Kursupplägg Kursen går över hela terminen, parallellt med era andra kurser Teman 3 teman under kursen Ett tema = 5 veckor Samma struktur på varje tema
Temaupplägg Vecka 1: Introduktion (föreläsning + introduktionsuppgift) Vecka 2: Temats kärna (föreläsning, begreppspresentationer) Vecka 3-4: Praktisk fördjupning (föreläsning, lektion inför temauppgift) Vecka 5: Avslutning (redovisning, inlämning)
Teman Tema 1: Människans maskiner - Byggstenar Tema 2: Informationsbearbetning - Maskinen människan? Tema 3: Verktyget Python
Kurshemsidan allmän information om kursen instruktioner och deadlines för uppgifter och redovisningar uppgifter att göra under kursen https://www.ida.liu.se/~729g74/
"Offensiv kunskapsinhämtning" Du som student måste delta aktivt i dina universitetsstudier Förvänta dig inte att allt du "måste" lära dig tas upp på föreläsningar. Kurslitteraturen är en del av kursen. Kogvets "Rekommendationer om examination och kursupplägg" (se kandidatprogramsidorna) SOLO-taxonomin. Riktlinjer: Godkänt = Relationell nivå, Väl godkänd = Utvidgat abstrakt
Kursplan - kursmål förklara grundläggande informationsteknologiska begrepp och vilken koppling dessa har till kognitionsvetenskap och ämnesområden som är relevanta för en kognitionsvetare förklara vad ett program är och hur ett program fungerar förklara programkod de själva och andra på kursen skrivit använda grundläggande datatyper/datastrukturer och styrstrukturer för att skriva enklare program använda och förklara begrepp från grundläggande diskret matematik i formella beskrivningar
Blooms taxonomi för lärandemål Kognitiva mål 1 Kunskapstaxonomi med några aktiva verb för lärandets resultat Lägre nivå av lärande Högre nivå av lärande Faktakunskaper Förståelse Tillämpning Analys Syntes Värdering Komma ihåg Definiera Beskriva Nämna Välja Identifiera Lista Lokalisera Citera Recitera Upprepa Markera Ange Förstå med egna ord Förklara Försvara Skilja Utveckla Generalisera Ge exempel Förutse Skriva om Sammanfatta Använda Använda i den aktuella kontexten Kunna tillämpa Beräkna Bevisa Upptäcka Modifiera Verkställa Förutse Förbereda Producera Relatera Visa Lösa Använda Skissera Ta isär i komponenter för att förstå strukturen Identifiera Urskilja Illustrera Peka ut Relatera Välja Separera Indela Sortera Differentiera Skissera Ange Kritiskt bearbeta Sammanställa nya mönster och strukturer Kategorisera Kombinera Ställa samman Utarbeta Skapa Tänka ut Konstruera Förklara Framställa Modiviera Organisera Planera Rekonstruera Relatera Bedömning genom kriterier Värdera Jämföra Komma fram till Konstrastera Kritisera Förklara Motivera Bevisa Avgöra Relatera Sammanfatta Stödja Försvara Föreslå Repetera någon annans definition av en princip Förklara principen genom exempel på dess användning inom andra områden Personligen använda principen på procedurer i verkliga situationer Kan separera fakta från antaganden i principer Sammanfatta Kombinerar ett antal principer till en ny fungerande strategi Ta ställning Bedöma användningen av den nya strategin Modellen bygger på en sammanfattning och översättning som Khalid El Gaidi gjort efter Gronlund N.E. How to Write and Use Instructional Objectives. (2000) 1 Bloom Benjamin S. and David R. Krathwohl. Taxonomy of Educational Objectives: The Classification of Educational Goals, by a committee of college and university examiners. Handbook I: Cognitive Domain. New York, Longmans, Green, 1956.
Kurslitteratur Från 729G01 IT Bermudéz, J. L. (2014). Cogntive Science, 2nd edition. Cambridge: Cambridge University Press. Janlert, L.-E. (2015). Tänkande och beräkning: en inledning till datavetenskap och kognitionsvetenskap. Studentlitteratur AB. Lunell, H. (2011). Datorn i världen, världen i datorn: en introduktion till data- och informationsteknik. Studentlitteratur AB. Python Downey. A. B. (2015). Think Python: How to Think Like a Computer Scientist Green Tea Press. (finns som PDF och fysisk bok) Tips: Punch, W. F., & Enbody, R. (2017). The Practice of Computing Using Python, Global Edition, 3/E. Boston: Pearson. (kommer användas på 729G75 till våren) Diskret matematik Kuhlman, M., & Dahllöf, M. (2014). Matematik för språkteknologer. (PDF)
Temamoment och planering
729G74, 6hp Kurser utformas så att 1,5 högskolepoäng (hp) motsvarar 1 veckas heltidsarbete (40h) givet de förkunskaper som antas. 1hp kommer ta mer tid för vissa, mindre tid för andra. Examination på kurs delas upp i examinationsmoment: INL1, 1hp ~ 26,7h INL2, 1,5hp ~ 40h DUG1, 1hp ~ 26,7h PRA1, 2,5hp ~ 66,7h Totalt 160h Förskjuten kursstart för att undvika arbetstoppar med parallella kurser. Något förkortad för att inte ta för mycket tid från lingvistiken som går v49-v3
Examinationsmoment i Ladok INL1: Begreppspresentationer och temarapport 1 och 2 INL2: Uppgifter i diskret matematik + temarapport 3 DUG1: Pythonuppgifter + dugga PRA1: Intro- och Temauppgifter ~53h/tema, ett tema är 5 veckor 4-6h schemalagt per vecka, ~25h eget arbete/ tema
Introduktionsuppgift Syfte: Konkret exempel på begrepp som är relevanta för temat. Mindre uppgift som görs med hjälp av dator/på IDAs system Muntlig redovisning: Demonstration av uppgift + frågor från lärare (frågor står på uppgiftssidan)
Begreppspresentation Syfte: eget arbete med att sammanfatta och presentera begrepp relaterade till temat Presentation hålls i seminariegrupper: 3 par (6 personer) Presentation, 10 minuter med Powerpoint/Keynote och projektor. Seminariegruppen har möjlighet att ställa frågor till presenterande pargrupp diskussion, inte förhör Vid missat seminarium skickas presentation med manus, samt inspelad screencast till medlemmarna i seminariegruppen.
Uppgifter i diskret matematik Grundläggande notation och begrepp i diskret matematik Uppgifter görs tillgängliga på kurshemsidan temavecka 2 Lämnas in temavecka 5 Max 10 poäng, 7 poäng för godkänt. Se kurshemsidan för mer information. Tidsåtgång 1-2h
Pythonuppgifter Uppgifter att göra självständigt. Del av duggan - duggan består till största del av ett urval av dessa uppgifter. Automatisk rättning
Temauppgift Något större uppgift som är en tillämpning av det som gåtts igenom under temat. Redovisas muntligt. Föregås av förberedelselektion Redovisas muntligt
Temarapport Sammanfattande rapport som behandlar de begrepp och ämnen som tagits upp under temat. För Tema 1 och 2 är innehållet det samma som till begreppspresentationerna. Max 2 sidor. Uppdaterad rapportmall kommer på kurshemsidan.
Uppskattning eget arbete Begreppspresentation + temarapport: 8h Introuppgift: 3h Temauppg: 5h Pythonuppgifter: 4h Uppgifter i diskret matematik: 2h ~22h Progression för intro-, tema-, och pythonuppgifter över kursen.
Temaupplägg, deadlines
Välkomna till Hogwarts Jakovche
Människans maskiner Byggstenar
Datorer och datavetenskapens roll inom kognitionsvetenskap Computational Theory of Mind (Hilary Putnam, Jerry Fodor) Universal Turing Machine, universell turingmaskin Artificiell intelligens
Universell turingmaskin Oändligt antal rutor som kan innehålla en symbol (eller vara tom) Maskinen kan befinna sig i ett ändligt antal tillstånd Maskinen läser aktuell ruta Beroende på indata och aktuellt tillstånd utför maskinen en operation
Koppling diskret matematik Begreppet mängd Oändlig, diskret mängd rutor Ändlig mängd symboler Ändligt antal tillstånd Regler för tillståndsövergångar (funktion)
Symboler och abstraktion
Blinkenlights Frontpanelen hos en IBM System/360 Modell 91 By MBlairMar0n - Own work, CC BY-SA 4.0, h=ps://commons.wikimedia.org/w/index.php?curid=50243909
IBM System/360 Modell 91 på Goddard Space Flight Center slutet på 1960-talet By Unknown - NASA, Public Domain, h=ps://commons.wikimedia.org/w/index.php?curid=931293
ATmega32U4 (används t.ex. till tangentbord)
Datorn som modell
Kognitionsvetenskap och modeller
"Likheter" mellan datorn och människan Hjärna = Processor Lagringsmedia/RAM = Minne In-enheter (tangentbord, mikrofon, etc) = sinnen Ut-enheter (högtalare, skärm etc) = armar, ben, röst etc
Fler begrepp att fundera över program nätverk språk och kunskap, abstraktion
Datorer är enkla
Vad menar vi med "enkel"/"simple"? Enkel att förstå? Enkel att använda? Enkel att bygga? Enkel att ta sönder? Enkelspårig?
Datorer är enkla för att antalet möjliga symboler är 2. { 0, 1 }
Men vi kan göra "komplicerade" saker med datorer!?
Datorn som startpunkt: "Vi" har byggt den och vi vet hur den fungerar.
Saker som ser enkla ut kan vara komplicerade.
Saker som ser komplicerade ut kan vara enkla.
Datorn och datorvetenskap är ett verktyg som kognitionsvetare kan och ska kunna använda. Det ska inte vara magiskt, eftersom man inte kan lita på magi!
Introduktionsuppgift Grundläggande IT-begrepp Ni ska hitta filen med ert LiU-ID i den och kopiera den till en specifik katalog. Läs och följ instruktionerna i filen. Vad är en fil? Hur navigerar man i ett filsystem med hjälp av kommandoraden? Hur söker man efter information för en teknisk domän som man kanske inte känner till sedan tidigare?
Introduktionsuppgift Jobba med terminalen Leta information om terminalkommandon Problemorienterat