Navn. Bachelor IT Spillprogrammering 2013 2014



Like dokumenter
Bachelor IT - Spillprogrammering

Programbeskrivelse Bachelor i informasjonsteknologi - spillprogrammering

Bachelor IT - Intelligente systemer

Database Systems. A Practical Approach to Design, Implementation, and Management

Programmeringsstudiet bygger på NITHs Bachelor i Informasjonsteknologi. Studiet er 3 årig, og gir tittelen bachelor i IT.

AlgDat 12. Forelesning 2. Gunnar Misund

KONTINUASJONSEKSAMENER - "KONT" - SOMMEREN 2015

AlgDat 10. Forelesning 2. Gunnar Misund

Læreplan i informasjonsteknologi - programfag i studiespesialiserende utdanningsprogram

Navn. Bachelor IT Mobil apputvikling

Studieplan - KOMPiS Programmering

Studieplan - KOMPiS Programmering

Studieinformasjon Bachelor i IT Spillprogrammering Avdeling for teknologi

Læreplan i Programmering og modellering - programfag i studiespesialiserende utdanningsprogram

Studieinformasjon Bachelor i IT Spillprogrammering Avdeling for teknologi

Studieinformasjon

Studieplan Bachelor i IT Spillprogrammering. Institutt for teknologi

Studieplan 2019/2020

Studieinformasjon Bachelor i IT Intelligente systemer Avdeling for teknologi

Bachelor IT - Programmering

Studieplan 2018/2019

Studieplan 2017/2018

Studieinformasjon

Studieinformasjon Bachelor i IT Intelligente systemer Avdeling for teknologi

Digital markedsføring. Studieplan Avdeling for kommunikasjon

Kompetanse for kvalitet: Programmering for trinn

Studieplan Bachelor i IT Intelligente Systemer. Institutt for teknologi

TDT4105 Informasjonsteknologi, grunnkurs

STUDIEPLAN. 0 studiepoeng. Narvik, Alta, Bodø Studieår

Studieplan for Norsk 2 (8-13) Norsk i mediesamfunnet

Fagplan-/Studieplan Studieår Data. Oppstart H2010, 1. kl.

Søknadsfrist

Studieplan 2006/2007

Programbeskrivelse Bachelor i informasjonsteknologi - Intelligente systemer

Pensum: fra boken (H-03)+ forelesninger

Pensum: fra boken (H-03)+ forelesninger

Studieplan 2018/2019

Anbefalte forkunnskaper: Leseferdigheter i nordiske språk og engelsk.

Introduksjon til kurset og dets innhold

Ved KHiB brukes åtte kriterier som felles referanseramme for vurdering av studentenes arbeid ved semestervurdering og eksamen:

NIVÅBESKRIVELSER 1 til 7 (strukturert etter nivåer)

Oppstart tca. 1.oktober 1. utgave av emnebeskrivelsene og programbeskrivelsene: 1. januar. ca. 20. mars: studieutvalg ca. 1.april godkjent i styret

Programbeskrivelse Bachelor i informasjonsteknologi - programmering

Hva er drivkrefter ved utvikling av dataspill: innhold eller teknologi? Om spillutdanning i nord

IKT og læring 1. Studieplan. Beskrivelse av studiet. Studiets oppbygging. Side 1 av 11

Kravspesifikasjon MetaView

Velkommen til. IN1010 Objektorientert programmering Våren 2018

Introduksjon til programmering og programmeringsspråk. Henrik Lieng Høgskolen i Oslo og Akershus

NTNU KOMPiS Studieplan for MATEMATIKK 2 ( trinn) med hovedvekt på trinn Studieåret 2015/2016

Generelt om operativsystemer

Bachelor IT: E-Business

Velkommen til. INF våren 2017

Oppsummering. Thomas Lohne Aanes Thomas Amble

Emneplan for. Trykk og digitale foto (FOTO) Print and Digital Photography. 15 studiepoeng Deltid

Innhold. Forord Det første programmet Variabler, tilordninger og uttrykk Innlesing og utskrift...49

Vedtatt av Styret ved NTNU , med endringer vedtatt av Fakultet for samfunnsvitenskap og teknologiledelse senest

CORBA Component Model (CCM)

TDT4110 Informasjonsteknologi, grunnkurs

UNIVERSITETET I STAVANGER Det humanistiske fakultet Institutt for allmennlærerutdanning og spesialpedagogikk

NTNU KOMPiS Studieplan for Norsk 2 ( trinn) med vekt på trinn Norsk i mediesamfunnet Studieåret 2015/2016

Oversikt. Informatikk. INF1000: Grunnkurs i objektorientert programmering. Utenom INF1000 Informasjon & hjelp

Studieplan 2015/2016

Gruppe 43. Hoved-Prosjekt Forprosjekt

Software Development Plan. Software Development Plan. Forum / Nettverkssamfunn Team 2

MindIT sin visjon er å være en anerkjent og innovativ leverandør av teknologi og tjenester i den globale opplæringsbransjen

1. Å lage programmer i C++

Studieplan 2016/2017

Introduksjon til programmering og programmeringsspråk

IKT og læring 1 - Digital dannelse

LocalBank Prosjektbeskrivelse

1. Leksjon 01: Introduksjon til faget Prosjektrettet systemarbeid

Studieplan - KOMPiS Nordisk språk og litteratur (nettstudium)

Utveksling Det et mulig å ta deler av studiet ved andre høgskoler og universiteter i tråd med ERASMUS utvekslings

Studieplan 2017/2018. Verdiskapende prosjektledelse (vår 2018) Studiepoeng: 15. Målgruppe. Opptakskrav og rangering. Arbeids- og undervisningsformer

Studieplan 2012/2013

Velkommen til INF Introduksjon til operativsystemer og datakommunikasjon

UNIVERSITETET I STAVANGER Det humanistiske fakultet Institutt for allmennlærerutdanning og spesialpedagogikk

GJENNOMGANG UKESOPPGAVER 7 REPETISJON

Ved KHiB brukes åtte kriterier som felles referanseramme for vurdering av studentenes arbeid ved semestervurdering og eksamen:

Studieplan 2017/2018

Studieplan 2017/2018

Forsøkslæreplan i valgfag programmering

Oversikt. Introduksjon Kildekode Kompilering Hello world Hello world med argumenter. 1 C programmering. 2 Funksjoner. 3 Datatyper. 4 Pekere og arrays

Digital økonomi og organisasjon

IN1010 Objektorientert programmering Våren 2019

Emneplan for. Digital kunst, kultur og kommunikasjon (DIG) Digital Art, Culture and Communication. 15 studiepoeng Deltid

Programvareutvikling (store systemer)

Formål og hovedinnhold Kunst og Håndverk Grünerløkka skole

2.5 BACHELORGRADSPROGRAM I INFORMATIKK

Anbefalt litteratur: Pensum-bøker: Forelesere: Velkommen til INF Introduksjon til operativsystemer og datakommunikasjon

Studieplan 2017/2018

Studieplan 2010/2011

IDRI3001 Bacheloroppgave i Drift av datasystemer

LOKAL LÆREPLAN Vestre Jakobeslv FAG: Norsk 8. klasse

Innhold uke 10. Objektorientert programmering i Python. Oblig 7 og 8. IN1000 Seminar! IN1000 Høst 2018 uke 10 Siri Moe Jensen

System Dokumentasjon. Team2. Høgskolen i Sørøst-Norge Fakultet for teknologi, naturvitenskap og maritime fag Institutt for elektro, IT og kybernetikk

INF1000: Forelesning 7

Forslag til ny læreplan for informatikk studieretningsfag

Transkript:

IT Spillprogrammering 2013 2014 Innhold Dataspillbransjen har blitt en stor, internasjonal industri. Blant de best utdannede ansatte er programmererne. Disse har likevel sjelden en skreddersydd utdannelse for produksjon av spill. Samtidig bruker flere og flere tradisjonelle industrier spill og spillrelatert teknologi. Profesjonelle spill lages av grupper med variert størrelse, men noen roller er alltid med. Spillprogrammereren utvikler ny funksjonalitet og systemer i et spill. Forbedrete grafiske effekter, bedre kunstig intelligens og mer realistisk fysikk er oppgaver som programmereren typisk har ansvaret for. Et annet viktig arbeidsområde for spillprogrammerere er verktøy som andre utviklere bruker for å lage innhold i spillet. Med fokus på sanntids grafikksimuleringer har spillprogrammereren god innsikt i teoriene og teknologiene som brukes. På Spillprogrammererstudiet vil studentene lære å realisere spennende og realistiske spillopplevelser. De får grundig opplæring i C++, så vel som andre programmeringsspråk som benyttes i profesjonell spillutvikling. Studentene lærere å integrere eksisterende teknologier til nye spill. Studiet er 3 årig, og gir tittelen bachelor i IT. 1. Det første året er felles, og gir en solid grunnkompetanse i programmering, prosjektarbeid, systemutvikling, datateknikk og databaser. 2. Det andre året gir en grundig opplæring i programmeringsspråket C++, som et mye brukt språk for utvikling av store, moderne spill. C++ gir også en fin komplementering til Java som studentene lærer i første studieår: de behersker nå to utbredte programmeringsspråk. Forløperen til C++ er fortsatt i vid bruk, og studentene lærer C som en introduksjon til C++. Ved siden av C/C++ lærer studentene matematikk og fysikk, med fokus på temaer som er relevante for spill og grafikkprogrammering. Som spesialiseringsemne innen spill lærer de Game AI (kunstig intelligens med fokus på spillbruk). Programmering involverer mer enn bare programmeringspråk, og studentene vil få et kurs i programmvareakritektur som gir innsikt i bredere problemstillinger samt et emne innen algoritmer og datastrukturer, som forbedrer studentenes evne til å skrive ytelseseffektiv kode. 3. I det tredje året vil studentene jobbe med 3D grafikk, så vel som det mattematiske grunnlaget for dette. Verktøyene studentne bruker er C++ og 3D systemet OpenGL. Studentene har også valgfag dette året, der de kan velge emner som gir de spisskompetanse innen spillindustrien eller som gir de breddekunnskap innen programmering generelt. I det avsluttende semesteret gjennomfører studentene et hovedprosjekt der de løser en krevende oppgave knyttet til spill og/eller grafikkprogrammering, i nærkontakt med en privat eller offentlig virksomhet. X. Studiet har i tillegg noen fellesemner som står sentralt i bachelor IT utdanningen. Disse emnene er Teknologi og Organisasjonen og Undersøkelsesmetoder. Navn IT Spillprogrammering 2013 2014 Programmatrise + introduksjon Spillprogrammering: Utdanne programmerere som kan utvikle spill og tunge matematikk /grafikkprogrammer Mål med studiet Etter endt studie skal studentene være i stand til å fylle et vidt spekter av programmeringsroller i norsk og internasjonalt næringsliv. De skal være høyaktuelle for spillindustrien, men de skal også være aktuelle som programutviklere innen C++ og Java generelt, spesielt i miljøer der visuelle virkemidler og multimedia benyttes samt tidskritiske applikasjoner. Sentrale emner studium IT med fordypning i Spillprogrammering har følgende fokus: Ved siden av vanlig programmerer kunnskap som software engineering og algoritmer/datastrukturer tilpasset bruksområdet, fordrer dette kjennskap til mer spesialiserte fagområder og forskningsfelt som lineær algebra og spesielle geometriske teknikker, nummeriske tilnærminger til klassisk mekanikk, optimalisering av grafisk programvare og kunstig intelligens. Jobbmuligheter Generelt vil studiet gi kompetanse til å gå inn i følgende roller: Spillprogrammerer: Som spillprogrammerer jobber man daglig med å utvikle verktøy til dataspillbransjen og/eller kjernefunksjonalitet for dataspillene. Dette er en rolle som ligger svært tett opp til studiet. Man jobber i et ungt, spennende og hektisk miljø. Systemprogrammerer: Mange firmaer lager programmer som krever mange av de samme egenskapene som spillprogrammering. Simuleringer, kontrollsystemer og andre tidsfølsome applikasjoner pruker mange av de samme teknikkene. Dette betyr at spillprogrammereren kan jobbe for et vidt spekter av bransjer. IT konsulent: Som IT konsulent får man gjerne muligheten til å oppleve flere forskjellige arbeidsplasser, da man leies ut på prosjektbasis. Det er en variert hverdag der man kan dra nytte av enkelte emner man har http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 1/39

lært i et prosjekt, andre emner i det neste. Utveksling Det et mulig å ta deler av studiet ved andre høgskoler og universiteter i tråd med ERASMUS utvekslings program. Videre utdanning Etter fullført bachelor studium er det mulig å fortsette på en masterutdanning. Følgende retninger vil passe for studenter som har tatt bachelor studium IT med fordypning i Spillprogrammering: Retninger innen spill og underholdningsprogrammering Teknisk programmering Prosjekt eller IT ledelse Forkunnskaper Studiet krever generell studiekompetanse med matematikkfordypning R1 eller S1 + S2 (2MX eller 2MZ + 3MZ ) for å ta IT: Spillprogrammering. Undervisningsmåte Studiet benytter en rekke undervisningsformer for å legge til rette for læring hos studentene. Forelesninger, presentasjoner, arbeidsmøte og øvinger brukes for å introdusere nye begreper og sammenhenger, samt innøve ferdigheter og forståelse. Arbeid med fagstoff foregår både individuelt og i gruppe, med vekt på samhandling for å oppnå et godt læringsutbytte. Studiet har prosjektarbeid alle semestre for å i praksis anvende ferdigheter og forståelse til å løse mer komplekse problemstillinger. I andre og tredje studieår er problemstillingene sterkt knyttet til det enkelte studieprogrammets egenart. Studiet avsluttes med et hovedprosjekt i bedrift, hvor studentene vil anvende alle sine kompetanser opparbeidet gjennom studiet for å løse et problem/oppgave som har verdi for oppdragsgiver. Spillprogrammering 2013 2014 Emnets navn S.poengO/V *) pr. semester S1(H) S2(V) S3(H) S4(V) S5(H) S6(V) DB1100 Databaser 1 O 7,5 PG1100 Programmering 1 O 7,5 PJ1100 Kreativt webprosjekt O 7,5 TK1100 Digital teknologi O 7,5 TK2100 Informasjonssikkerhet O 7,5 PG2100 Programmering 2 O 7,5 PJ2100 Iterativt webprosjekt O 7,5 PG3300 Programvarearkitektur O 7,5 PG3400 Programmering i C for Linux O 7,5 RF3100 Matematikk og fysikk O 7,5 PJ3100 Prosjekt Software Engineering 15,00 O 7,5 7,5 PG4200 Algoritmer og datastrukturer O 7,5 PG4400 C++ Programmering O 7.5 PG4500 Game AI O 7,5 BU5100 Entreprenørskap O 7,5 PG5200 Tools programmering O 7,5 RF5100 Lineær algebra O 7,5 PG6200 Grafikkprogrammering O 7,5 PJ6000 Hovedprosjekt 15,00 O 15 PJ6100 Undersøkelsesmetoder O 7,5 Sum: 30 22,5 30 30 22,5 30 *) O Obligatorisk emne, V Valgbare emne Spillprogrammering, valgemner 1.klasse Emnets navn S.poengO/V *) pr. semester S1(H) S2(V) S3(H) S4(V) S5(H) S6(V) DS2100 Animasjon V 7,5 DS2200 Digital kultur V 7,5 Sum: 0 7,5 0 0 0 0 *) O Obligatorisk emne, V Valgbare emne Spillprogrammering Valgemner 3.klasse 2013 2014 Emnets navn S.poengO/V *) pr. semester S1(H) S2(V) S3(H) S4(V) S5(H) S6(V) PG5500 Embedded systems V 7,5 PJ5100 Game Development V 7,5 Sum: 0 0 0 0 7,5 0 http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 2/39

*) O Obligatorisk emne, V Valgbare emne BU5100 Entreprenørskap BU5100 Entreprenørskap Eivind Brevik Tilsynssensor Magne Johannessen 03.05.2013 en med emnet er å gi forståelse for hva innovasjon og entreprenørskap er og kunne utvikle ferdigheter for å fremme ideer og realisere disse. Kurset er orientert mot praktisk anvendelse av teknikk og metoder, med utarbeidelse av forretningsplan som bærende element. Etter fullført emne skal studenten ha tilstrekkelig innsikt og kompetanse til å kunne delta i og drive en slik prosess med utvikling av forretningsplan for å etablere et nytt firma eller forretningsområde. Ingen Kunnskaper Etter å ha fullført emnet skal studenten: Kunne definere innovasjon og entreprenørskap Kjenne til betydningen av innovasjon og entreprenørskap for individ, organisasjoner og samfunn Kjenne til de markedsmessige og organisatoriske konsekvenser for innovasjon og entreprenørskap Ha forståelse for immaterielle rettigheter Ferdigheter Etter å ha fullført emnet skal studenten: Kunne utvikle planer for innovasjon og entreprenørskap, fra idé til implementering og drift Kunne evaluere, velge og selge inn egne prosjekter for egnet målgruppe Generell kompetanse Etter å ha fullført emnet skal studenten: Kunne reflektere over innovasjon og entreprenørskap i et videre perspektiv Ha kunnskap om og forståelse for hvordan ideer aksepteres og spres i et sosialt system Forelesninger og øvinger Deltakelse i undervisning 25 Selvstudium 80 Forberedelse til presentasjon/diskusjon i klassen 5 Øving 20 Vurdering 70 totalt 200 Emnet har gitt studenten forståelse for hva innovasjon og entreprenørskap er, og ferdigheter med å fremme ideer og realisere disse. Kurset er orientert mot praktisk anvendelse av teknikk og metoder, med http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 3/39

utarbeidelse av forretningsplan som bærende element. Mappevurdering Tittel Forfatter Forlag Utgitt år ISBN Utgave Kommentar Type Litteratur Business Model Generation: A Handbook for Osterwalder, Visionaries, Game Changers, and Challengers A., Peigner, Y. Wiley 2010 9780470876411 1 Bok Pensum The Lean Startup: How Today's Entrepreneurs Use Continuous Ries, Eric Innovation to Create Radically Successful Businesses Crown Business 2011 9780670921607 1 Bok Pensum DB1100 Databaser 1 DB1100 Databaser 1 Per Lauvås Tilsynssensor Bjørn Kristoffersen 18.04.2013 Etter fullført Databaser 1 skal man kunne forklare hva en relasjonsdatabase er, hva den kan brukes til og hvordan den skiller seg fra andre former for persistent lagring. Man skal kunne modellere og strukturere data for et domene. Man skal kunne opprette tabeller, legge inn ulike typer data i disse, kople dem sammen og hente ut rapporter ved hjelp av SQL spørringer. Man skal kunne forklare og anvende prinsippene for god design (normalisering, nøkkelbruk). Generell studiekompetanse Etter å ha fullført emnet skal studenten kunne: Kunnskap: http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 4/39

definere og forklare forskjellen på data, struktur og presentasjon forklare komponentene som inngår i et RDBMS definere hva ACID egenskapene er og hvorfor disse bør oppfylles beskrive hva relasjonsalgebra er, og forklare mulighetene den gir ved å benytte begrepene kartesisk produkt, union, snitt og mengde definere begrepene primær, fremmed, kandidat og super nøkkel, og anvende disse i relasjonsdatabaser definere begrepene funksjonell avhengighet og normalisering forklare hvilke administrative mekanismer som finnes i et DBMS og hvordan disse brukes til å opprette databaser kunne forklare roller og rettigheter Ferdigheter: beskrive og utføre trinnene i utvikling av en EAR modell fra kravspesifikasjonen til ferdig database, tegne en EAR modell med korrekt notasjon og kardinalitet bruke SQL for å utføre CRUD operasjoner på databasen bruke SELECT spørringer med opsjoner til å hente rapport fra en enkelt tabell kombinere og hente rapporter fra flere tabeller ved bruk av JOIN klausuler benytte de vanligste normaliseringsformene (UNF, 1NF, 2NF, 3NF, BCNF) bruke VIEW utføre enkel brukeradministrasjon modellere, opprette, legge inn data og hente ut rapporter fra en database med en viss kompleksitet (f.eks. 10 15 tabeller og 5 10 relasjoner ) Generell kompetanse: forklare og eksemplifisere fordelene med å benytte en database og vurdere om disse er til stede i konkrete tilfeller skissere livsløpet til en typisk database: modellering, opprettelse, bruk, revisjon, og eventuell migrasjon. forklare hvilke lover og regler som gjelder for lagring og bruk av personoppplysninger i Norge. Forelesninger, øvinger og selvstudium. Deltakelse i undervisning 40 Selvstudium 100 Forberedelse til presentasjon/diskusjon i klassen 14 Øving 40 Vurdering 6 totalt 200 Verktøy MySQL Database Etter å ha fullført emnet skal man kunne forklare hva en relasjonsdatabase er, hva den kan brukes til og hvordan den skiller seg fra andre former for persistent lagring. Man skal kunne modellere og strukturere data for et domene. Man skal kunne opprette tabeller, legge inn ulike typer data i disse, kople dem sammen og hente ut rapporter ved hjelp av SQL spørringer. Man skal kunne forklare og anvende prinsippene for god design (normalisering, nøkkelbruk), og utføre grunnleggende administrative oppgaver. Skriftlig Vurdering Flervalgseksamen (25%) Skriftlig eksamen (75%) Tittel Forfatter Forlag Utgitt år ISBN Utgave Kommentar Type Litteratur Database Systems. A Practical Thomas ISBN 10: http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 5/39

Approach to Design, Implementation, and Management Connolly & Begg, Carolyn Addison Wesley 2014 0132943263 ISBN 13: 978 0132943260 6. Bok Pensum DS2100 Animasjon DS2100 Animasjon Hrafnhildur Jonasdottir Tilsynssensor Bård R.Gunnerud 30.05.2012 I dagens samfunn er det stadig en utvikling i teknologi, applikasjoner og teknikker. Animasjon knytter tradisjonelle teknikker som historiefortelling, tegning og konstruksjon sammen med ny teknologi innenfor kanaler som reklame, spill, film, mobiltelefoni, kunst, internett osv. Animasjon hjelper oss å kommunisere og visualisere våre budskap gjennom disse kanalene og spiller en stor rolle i utdanning, underholdning, industri og kunst. I løpet av emnet vil studenten ha tilegnet seg kunnskap og ferdigheter til å lage en kort animasjonsfilm med lyd, samt vise forståelse innenfor dramaturgi og filmkunnskap til å kommunisere et gitt budskap gjennom visuelle grep. Studenten skal kunne vise til kreativ og kritisk tenkning knyttet til animasjon. Kunnskaper Etter fullført emne skal studenten kunne: o forklare virkemåten til, og produksjonsmåten for, ulike animasjons teknikker og uttrykk o beskrive rollen til manus, storyboard, lyd og etterarbeid i produksjon av (egen) animasjonsfilm o gjengi og benytte regler og teori innenfor filmkunnskap og dramaturgi til å analysere animasjonsfilm o beskrive de spesifikke visuelle virkemidlene som benyttes i animasjonskultur Ferdigheter Etter fullført emne skal studenten kunne: o demonstrere ferdigheter innenfor tegning, fotografering, lyd og filmredigering gjennom å kunne skape en enkel animasjonsfilm fra ide til ferdig produkt o demonstrere ulike teknikker for å lage en animasjonsfilm o utvikle et eget animasjonsuttrykk o benytte ulike digitale verktøy og filformater til å produsere, publisere og distribuere animasjoner. Generell kompetanse Etter fullført emne skal studenten kunne: o demonstrere kreativ og kritisk tenkning og kommunikasjonsevner gjennom animasjonsteknikker en av emnet er basert på kombinasjon av forelesning, prosjektarbeid, og individuell skriftlig prøve Deltakelse i undervisning 48 http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 6/39

Selvstudium 60 Forberedelse til presentasjon/diskusjon i klassen 12 Øving 40 Vurdering 40 totalt 200 Studenten skal ha tilegnet seg tilstrekkelig kunnskap og ferdigheter til å lage en kort animasjonsfilm med lyd, samt vise forståelse innenfor dramaturgi og filmkunnskap til å kommunisere et gitt budskap gjennom visuelle grep. Studenten skal kunne vise til kreativ og kritisk tenkning knyttet til animasjon. Pensum publiseres på emnesiden i It's Learning Innlevering Vurdering Mappevurdering (se emnesiden) Tittel Forfatter Forlag Utgitt år ISBN Utgave Kommentar Type Litteratur Ideas for the Karen Animated Sullivan, Short: Kate Elsevier 2013 Finding Alexander 9780240818726 2. utg Bok Pensum and Building og Gary Schumer Stories DS2200 Digital kultur DS2200 Digital kultur Faltin Karlsen Tilsynssensor Anders Fagerjord, UiO 08.05.2013 Internett har stor innflytelse på hvordan vi kommuniserer og våre liv, både privat og i kommersielle sammenhenger. Innen mange bransjer har Internett bidratt til å bryte ned skillet mellom produsent og tjenesteyter på den ene siden, og brukere og konsumenter på den andre. I dag påvirker brukerne ofte direkte hvordan nye produkter, tekster og tjenester utformes. Samtidig gir Internett helt nye muligheter for å overvåke brukernes adferd og å styre tilgang til informasjon, i tillegg til at skillet mellom privat og offentlig blir mye mer uklart og det blir enklere for flere å delta som aktive brukere. http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 7/39

Emnet Digital kultur behandler disse temaene fra hovedsakelige humanistiske og medievitenskapelige kulturteoretiske tilnærminger gjennom fokus på generell kultur og medieforståelse knyttet opp mot digitale kulturfenomener. Klassiske og moderne kulturteorier og tradisjoner benyttes i analyser og drøftinger av produsenter, innhold/tekster, forbrukere og kommunikasjonskanaler. Studentene lærer hvordan digitale kulturfenomener ligner på og skiller seg fra andre kulturfenomener, samt hvordan kulturteori kan anvendes for å kontekstualisere, belyse, diskutere og problematisere disse fenomenene. Generell studiekompetanse Kunnskaper Ferdigheter Studentene skal kjenne til sentrale kulturteoretiske perspektiver og tradisjoner, og vite hvordan disse kan belyse forskjellige aspekter og problemstillinger rundt digitalekulturfenomener. Sentrale perspektiver og tradisjoner inkluderer semiotikk, retorikk,hermeneutikk, ideologikritikk og postmodernisme. Sentrale fenomener inkluderer sosialemedier, produsage, transmediering, franchising, kollektiv intelligens og spillkultur. Studentene skal kjenne til akademisk tenkning og skriving som genre, med fokus på analyse, drøfting, kildekritikk og referanseteknikk. Studentene skal kunne kritisk reflektere over og bruke fagstoff i analyser og drøftinger samt skrive akademiske tekster og holde faglige presentasjoner. Studentene skal kunne utvikle en strategi for bruk av sosiale medier i forretningssammenheng Generell kompetanse Studentene skal kjenne til sentrale klassiske og moderne kulturteorier og kritisk anvende disse i forståelse og analyser av kulturfenomener Studentene skal kunne problematisere ulike tilnærminger rundt bruk av digitale medier i offentlig, kommersiell, og privat sammenheng. Studentene skal kunne kritisk anvende fagstoff i egne akademiske tekster og presentasjoner som følger god akademisk skikk med hensyn til problemstilling, struktur, innhold,argumentasjon og referanseteknikk. Emnet gjennomføres som fellesforelesninger og som samlinger i mindre grupper. Studentene skal i løpet av emnet gjennomføre minst en presentasjon av et tema de har jobbet med i grupper. Deltakelse i undervisning 24 Selvstudium 104 Forberedelse til presentasjon/diskusjon i klassen 24 Øving 24 Vurdering 24 totalt 200 Verktøy Studentene vil benytte enkle og gratis tilgjengelig publiseringsverktøy og sosiale medier som flickr, posterous, facebook og twitter. Disse tjenestene vil brukes aktivt i undervisningen. Studenten skal vite hvordan digitale kulturfenomener ligner på og skiller seg fra andre kulturfenomener, samt hvordan kulturteori kan anvendes til å kontekstualisere, belyse og problematisere disse fenomenene. Studenten skal kunne skrive akademiske tekster og holde faglige presentasjoner. Pensum Gripsrud, Jostein: Mediekultur, mediesamfunn Universitets forlaget 2011 (4. utg) ISBN 9788215017921 Detaljert oversikt over hvilke kapitler som skal være med vil oppgis før oppstart. Innlevering Vurdering http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 8/39

I semesteret må det leveres to kvalifikasjonsoppgaver. I forbindelse med siste innlevering må man også delta på en muntlig eksamen. Tittel Forfatter Forlag Utgitt år ISBN Utgave Kommentar Type Litteratur Mediekultur, mediesamfunn Gripsrud, Jostein Universitetsforlaget 2011 9788215017921 4. utg Bok Pensum PG1100 Programmering 1 PG1100 Programmering 1 Stein Marthinsen Tilsynssensor Morten Andersen Gott 16.10.2011 I utviklingen av applikasjoner er programmering en meget sentral disiplin, siden det er dette som benyttes til å realisere /lage kjørbare systemer på en datamaskin. Denne disiplinen trekkes direkte eller indirekte inn i en rekke andre fag ved IT utdanningen. Emnet skal gi en første innføring i programmering og utvikling av algoritmer for å løse ulike problemer. Emnet krever ingen konkrete faglige forutsetninger utover generell studiekompetanse og god kjennskap til bruk av en PC. Programmering krever en høy grad av nøyaktighet, tålmodighet, utholdenhet og evne til logisk tenking. Kunnskaper Etter å ha fullført emnet skal studenten Ferdigheter vite hva et programmeringsspråk er, og hvordan slike skiller seg fra naturlige språk vite forskjellen på interpreterte og kompilerte språk kjenne til forskjellene på hendelsesdrevne og rent sekvensielle programmer Etter å ha fullført emnet skal studenten kunne o variabler o tilordning bruke et API lage enkle programmer som bl.a. gjør bruk av http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 9/39

o ulike datatyper o aritmetiske og logiske uttrykk o valg o løkke lage enkle programmer som anvender kontrollstrukturene lage enkle programmer med fokus på utvikling av algoritmer lage enkle programmer som skriver til og leser fra tekstfiler deklarere og bruke statiske tabeller (arrays) beherske et enkelt integrert utviklingsverktøy (IDE) kunne skrive og redigere kildekode med dette verktøyet kunne kjøre programmer med dette verktøyet kunne bruke de grunnleggende elementene i et programmeringsspråk til å lage programmer kunne tolke og forholde seg til feilmeldinger og rette kildekode ut fra disse Generell kompetanse Etter å ha fullført emnet skal studenten kunne vurdere passende strategi for løsing av et problem diskutere problemløsningsmetoder med medstudenter gjøre rede for tankegang for egne løsninger Forelesninger, øvinger med veileder, innleveringer og skriftlig vurdering. Deltakelse i undervisning 24 Selvstudium 110 Forberedelse til presentasjon/diskusjon i klassen Øving 36 Vurdering 30 totalt 200 Verktøy Java 1.6 JCreator/DrJava Emnet har gitt en introduksjon i programmering med vekt på utvikling av algoritmer for å løse enkle problemer. Studenten kan deklarere og anvende ulike datatyper og gjøre bruk av kontrollstrukturene valg og løkke. Studenten kan også gjøre bruk av tabeller (arrays) etter behov. Mappevurdering Vurdering Mappe bestående av innleveringer og avsluttende skriftlig vurdering. Tittel Forfatter Forlag Utgitt år ISBN Utgave Kommentar Type Litteratur Building Stuart Java Addison Reges/Marty Programs Wesley Stepp 2013 978 0133360905 3. utg Bok Pensum PG2100 Programmering 2 http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 10/39

PG2100 Programmering 2 Stein Marthinsen Tilsynssensor Morten Andersen Gott 16.10.2011 Emnet skal gi en første innføring i objektorientert programmering. Flere sentrale mekanismer i objektorientert programmering vil bli gjennomgått, samt eksempler på samspill mellom objekter av noen få klasser. Modellering i UML av små systemer (klassediagrammer og sekvensdiagrammer) blir også brukt. Emnet skal gi en enkel innføring i programmering av grafiske grensesnitt (GUI) med hendelseshåndtering. Emnet gir en introduksjon av en standard Collection klasse (ArrayList). PG1100 Kunnskaper Etter å ha fullført emnet skal studenten: Ferdigheter vite hva arv er vite hva polymorfi er vite om likheter/forskjeller mellom abstrakte klasser og interfacees vite hvordan mekanismen for hendelseshåndtering fungerer Etter å ha fullført emnet skal studenten kunne: definere klasser, og kunne beherske bruk av objekter beherske ulike UML diagramtyper slik som enkle klassediagrammer og sekvensdiagrammer beherske bruk av objekter og få objekter til å samarbeide kunne definere spesialiseringer av klasser gjennom arv beherske bruk av abstrakte klasser og interface ( kontrakter ) anvende arv og interfaces gjennom kode med polymorfisk oppbygning programmere enkle grafiske grensesnitt bruke ArrayList klassen til å opprette og bruke en dynamisk datastruktur Generell kompetanse Etter å ha fullført emnet skal studenten kunne: beherske et enkelt integrert utviklingsverktøy (IDE) skrive og redigere kildekode med dette verktøyet kjøre programmer med dette verktøyet bruke de grunnleggende elementene i dette språket til å lage programmer bruke en debugger for å finne feil Forelesninger, øvinger, innleveringer og skriftlig vurdering. Deltakelse i undervisning 24 Selvstudium 128 Forberedelse til presentasjon/diskusjon i klassen Øving 24 Vurdering 24 totalt 200 http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 11/39

Verktøy Java JDK 1.6 eller nyere IDE Emnet har gitt en innføring i objektorientert programmering. Studenten kan definere og anvende spesialiseringer av klasser gjennom arv/interface/polymorfi og mestrer programmering av enkle grafiske brukergrensesnitt (GUI) med tilhørende enkel hendelseshåndtering. I tillegg har studenten lært å bruke en standard Collection klasse til å implementere en dynamisk datastruktur. Mappevurdering Vurdering Mappe bestående av innleveringer og skriftlig prøve. Tittel Forfatter Forlag Utgitt år ISBN Utgave Kommentar Type Litteratur Building Java Programs Stuart Reges/Marty Stepp 2013 978 0133360905 3. utg Bok Pensum PG3300 Programvarearkitektur PG3300 Programvarearkitektur Per Lauvås Tilsynssensor Alf Inge Wang Kurset skal gjøre studentene i stand til å designe og videreutvikle større programvaresystemer i tråd med kjente teknikker for modellering, testing og implementasjon. Erfaring med grunnleggende objektorietert programmering. Etter å ha fullført emnet skal studenten kunne: Kunnskap: Vite bakgrunn og innhold for UML standarden. Kjenne til konsepter for versjonskontroll. Vite hva Unit Testing er. Forklare prinsippene for test driven development (TDD). Vite hva design patterns er. http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 12/39

Kjenne til og kunne identifisere en del viktige design patterns når de ser de i kode. Vite hva refactoring er. Vite hva multi threading er. Forstå hvordan locking/lås kan brukes for å kode trådsikkert Forklare hvordan action listeners kan brukes for event handling. Ferdigheter: Ha oversikt over og kunne benytte den grunnleggende syntaksen i programmeringspråket C# og vite på hvilke måter denne skiller seg fra Java. Beherske UML diagrammene: use case, klassediagram, komponent diagram og sekvensdiagram. Bruke UML til å designe programarkitektur. Implementere følgende patterns: MVC & MVP, singleton, factory, builder, flyweight, composition, decorator. Kunne anvende design guidelines, som layers og GRASP prinsippene (med fokus på følgende for sistnevnte: controller, information expert, low coupling, high cohesion). Kunne gjennomføre refactoring på eksisterende kode. Kunne implementere applikasjoner som benytter flere tråder. Beherske et integrert utviklingsverktøy (IDE). Skrive og redigere kildekode med dette verktøyet. Generell Kompetanse: Reflektere over multi threading og dets bruksområder. Samarbeide med andre programmerere på en effektiv måte for å utvikle gode programmer. Vurdere kvalitet på eksisterende programmer og foreslå strukturelle forbedringer. Forelesninger, øvinger og egenstudier. Deltakelse i undervisning 24 Selvstudium 128 Øving 24 Vurdering 24 totalt 200. Verktøy IDE: Visual Studio Ultimate Kurset skal gjøre studentene i stand til å designe og videreutvikle større programvaresystemer i tråd med kjente teknikker for modellering, testing og implementasjon. Pensum Lærebok (se "Litteraturliste", under) samt forelesningsmaterialet og nødvendige hjelpemidler for å gjennomføre øvingsopplegget. Innlevering Vurdering 2 innleveringer og 1 muntlig prøve (se "Vurdering / Assessment", under). Tittel Forfatter Forlag Utgitt år ISBN Utgave Kommentar Type Litteratur Applying UML and Patterns Craig Larman Prentice Hall 2004 978 0131489066 3rd ed. Bok Pensum PG3400 Programmering i C for Linux http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 13/39

PG3400 Programmering i C for Linux Kjetil Raaen Emnet gir innføring i programmeringspråket C og hvordan dette kan brukes til å interaktere direkte med operativstytemet. Det skal også gi forståelse av operativsystemet Linux og kunnskap om hvordan dette virker. Grunnleggende programmeringskunnskap (PG2100 Programmering 2 eller tilsvarende) samt grunnleggende digital teknologi (TK1100 Digital teknologi eller tilsvarende). Kunnskaper Etter å ha fullført emnet skal studenten: Ferdigheter Kjenne til operativsystemene Unix og Linux: bakgrunn og historie overordnet arkitektur og oppbygning Kjenne til utviklingen av og bruksområdet for programmerinspråket «C» Forstå hva «viritualisering» er Kjenne til byggeprosessen i C inkludert: compile link Forklare konseptet «everything is a file» og kjenne til eksempler inkludert: devices procfs Forstå hva et «filsystem» er og hva det brukes til Forstå konseptene bak brukere og permissions i Linux Kjenne til forskjellen på userspace og kernelspace og hvordan bruke systemkall og signaler Kjenne til minneområdene «stack» og «heap» og forklare forskjellen Kjenne til konseptet "buffer owerflow" og hvorfor det er farlig. Etter å ha fullført emnet skal studenten: Bruke grunnleggende konstuksjoner i programmeringspråket «C» inkludert: main, basic types, printf, scanf, strings, #include, enum, typedef, struct, union, command line parameters, macros, varargs Statisk minnehåndtering Utvikle programmer under paradigmet «strukturert programmering» Anvende dynamisk minnehåndtering inkludert: malloc, free, pointers, memcpy, sprintf, arrays, sizeof Lese og skrive enkeltbits og grupper av bits in en større datastruktur. Generere kjørbare filer fra C kode makefile static libraries Implementere lesing og skriving til fil r/w modes seek buffer size Operere kommandolinjen i linux for å utføre viktige operasjoner inkludert: ls, cd, mkdir, rm, cp, chmod, chown, pwd, ps, kill, man, wget pipes, redirection starte programmer mounting av filsystemer Lage programmer som unngår buffer overflow. http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 14/39

Generell kompetanse Etter å ha fullført emnet skal studenten kunne: Vurdere hvilke situasjoner det er fornuftig å bruke programmeringspråket «C» Anvende «C» for å løse systemprogrammeringsoppgaver Forholde seg til manuell minnehåndtering Forholde seg til linux som operativsysem Kurset gjennomføres med 12 forelesninger a ca 2 timer og 12 lærerstyrte øvinger a ca 2 timer. Øvingene er ikke obligatoriske, men for å oppnå kompetansemålene forventes det at studentene fullfører øvingsoppgavene på egenhånd der øvingstimene ikke strekker til. Deltakelse i undervisning/forelesning 24 Selvstudium 110 Forberedelse til presentasjon/diskusjon 0 Øving/prosjektarbeid/workshop 24 Vurdering 42 totalt 200 Verktøy Linux og gcc Etter å ha gjennomført emnet skal studentene kunne bruke operativsystemet Linux. De skal også være i stand til å programmere i programmeringspråket «C». Pensum Pensum skal være egnet til å sikre kandidatenes kompetanse i relasjon til læringsutbyttene for emnet. Mappevurdering Tittel Forfatter Forlag Utgitt år ISBN Utgave Kommentar Type Litteratur Programming in C Kochan, Stephen G Sams publishing 2004 9780672326660 3. utg Bok Pensum PG4200 Algoritmer og datastrukturer PG4200 Algoritmer og datastrukturer Lars Sydnes Tilsynssensor Magnus Lie Hetland, NTNU http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 15/39

24.04.2014 Emnet skal gi innsikt i algoritmer og datastrukturer som er sentrale i arbeidet med implementasjon og design av effektive datasystemer. Det legges vekt på en asymptotisk analyse av worst case ressursrbruk, samt sentrale algoritmer og datastrukturer knyttet til søk og sortering. Emnet tar også for seg enkelte grafalgoritmer. PG1100 og PG2100 eller tilsvarende grunnleggende programmeringskunnskap. Kunnskapsmål Studentene skal kjenne til følgende: Sentrale abstrakte datatyper: Lister, køer, stakker, Mengder (sets, collections), Avbildninger (maps) Trær og grafer. Egenskapene til sentrale datastrukturer: Tabeller (arrays). Lenkede lister. Binære trær, søketrær, balanserte søketrær, B trær, AVL trær, Red Black trær. Hash tabeller og Hash avbildninger. Grafer implementert ved naboskapslister og matriser. Sentrale søkealgoritmer: Linært søk, Binært søk. Søk i binære søketrær. Søk i Hash tabeller. Sorteringsalgoritmer: Insertion sort, Selection sort, Bubble sort, Quicksort, Merge sort, Heap sort, Radix sort. Enkelte graf algoritmer, inkludert traversering av grafer, Dijkstras algoritme, A* algoritmen, Prims algoritme. Oppbygning, virkemåte og bruk av rekursive funksjoner, inkludert rekursiv traversering av trær og grafer, rekursiv søk og sortering, backtracking. Grunnleggende begreper innen teorien for beregningskompleksitet, inkludert O notasjon, NP kompletthet og reduksjon, den handelsreisendes problem (Travelling salesman problem), ryggsekkproblemet (Knapsack problem). Ferdighetsmål Studenten skal kunne: Bruke eksisternde bilblioteker for algoritmer og datastrukturer, Implementere kjente datastrukturer, inkludert tabell lister, lenkede lister, binære søketrær og heaps, hash tabeller, grafer. Implementere kjente algoritmer, inkludert Insertion sort, selection sort, Merge sort, Heap sort. Drøfte worst case ressursbruk for konkrete elementer i dataprogrammer ved hjelp av O notasjon. Bruke grunnleggende generisk programmering i java. Generelle kompetansemål Studenten skal beherske klassisk asymptotisk analyse av dataprogrammer, kunne bruke eksisterende bibliotek og egenutviklede algoritmer og datastrukturer til å løse praktiske problemer, beherske et språk og begrepsapparat som egner seg for å drøfte ressursbruken til dataprogrammer, ha den kunnskapen om algoritmer og datastrukturer som kreves i videre informatikkstudier. http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 16/39

Forelesninger (ca. 50%) og øvinger (ca. 50%) Deltakelse i undervisning 24 Selvstudium 128 Forberedelse til presentasjon/diskusjon i klassen Øving 24 Vurdering 24 totalt 200 Verktøy Java Development Kit 1.8 Emnet skal gi innsikt i algoritmer og datastrukturer som er sentrale i arbeidet med implementasjon og design av effektive datasystemer. Innlevering Vurdering To innleveringer underveis i semesteret og skriftlig avsluttende eksamen. Tittel Forfatter Forlag Utgitt år ISBN Utgave Kommentar Type Litteratur Robert Sedgewick, Addison Algorithms 2011 Kevin Wesley Wayne 978 0 321 57351 3 4 Bok Pensum PG4400 C++ Programmering PG4400 C++ Programmering Kjetil Raaen Tilsynssensor Olve Maudal Emnet skal gi studentene kunnskap om fundamentale og avanserte programmeringsbegreper i språket C++. Målet er å videreutvikle studentenes programmeringskunnskaper til det som er nødvendig for å utvikle effektive og komplekse systemer, inklusive spill og interaktive applikasjoner. De vil lære å beherske Microsoft Visual Studio som IDE for C++. Objektorientert programmering som fra PG2100 (Programmering 2), samt C programmering som fra http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 17/39

PG3400 (Programmering i C for Linux). Eventuelt tilsvarende emner. Kunnskap Ferdigheter Kjenne til referanser og pekere, samt deres relasjon til hverandre. Kjenne til et bibliotek for 2D grafikkprogrammering. Kjenne til grunnleggende konsepter i 2D grafikkprogrammering. Kjenne til minneallokering i C++ inklusiv forskjellene på stack og heap. Kjenne til erstatninger for function pointers i C++, som callback functions og functors. Kjenne til templates og deres bruksområder. Kjenne til ulike revisjoner av C++ og de viktigste forskjellene. Kjenne til hvordan kompilatoren utnytter CPU, minne og cache. Beherske Visual Studio som C++ programmeringsmiljø (opprette projects, kompilere, linke, kjøre). Beherske debugging i Visual Studio. Programmere med standard IO (cin, cout). Beherske skriving og lesing til og fra fil med streams. Anvende pekere og referanser. Korrekt anvendelse av minne ved new og delete. Korrekt anvendelse av const og mutable. Programmere med containers, algoritmer og iteratorer fra STL. Kunne anvende og utvikle egne templates. Kunne anvende objektorientert programmering i C++ med bruk av klasser, objekter, arv og polymorfi. Programmere med threads og synkroniseringsmekanismer i C++. Anvende smart pointers for å forenkle minnehåndtering. Programmere med operator overlasting. Håndtere og lage egne exceptions. Kunne inkludere og anvende tredjepartsbiblioteker ved hjelp av macroer i Visual Studio. Beherske enkel 2D grafikkprogrammering. Benytte callback functions. Kunne anvende tid som en faktor under kjøring av et program. Håndtere brukerinput interaktivt i applikasjoner. Utnytte "move semantics" for bedre kode. Benytte tråder, promises og futures til paralell programmering. Generell kompetanse Utvide sin forståelse for hvordan objektorientering og template programming kan benyttes til å skape veldesignede programmer. Forstå poenget med operator overlasting og bruksområde. Forstå når man skal bruke tredjeparts biblioteker og når en skal utvikle selv. Forstå hvordan parallel programmering er nødvendig for å få optimal ytelse av moderne hardware. Forelesninger og øvinger, til sammen 4 timer/uke. Kurset gjennomføres med 12 forelesninger a ca 2 timer og 12 lærerstyrte øvinger a ca 2 timer. Øvingene er ikke obligatoriske, men for å oppnå kompetansemålene forventes det at studentene fullfører øvingsoppgavene på egenhånd der øvingstimene ikke strekker til. Deltakelse i undervisning 24 Selvstudium 92 Forberedelse til presentasjon/diskusjon i klassen 0 Øving 24 Vurdering 60 totalt 200 Verktøy Microsoft Visual Studio med 3. parts biblioteker for ekstra funksjonalitet. Emnet har gitt studentene kunnskap om fundamentale og avanserte programmeringsbegreper i språket C++. Studentenes programmeringskunnskaper er videreutviklet til det som er nødvendig for å utvikle effektive og komplekse systemer, inklusive spill og interaktive applikasjoner. De har lært å beherske Microsoft Visual Studio som IDE for C++. Pensum Se litteraturliste, under. Pensum dekkes i tillegg av forelesningsmaterialet og nødvendige hjelpemidler for å http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 18/39

gjennomføre øvingsopplegget. Materiellet gjøres tilgjengelig for studentene fortløpende gjennom kurset. Mappevurdering Vurdering 2 innleveringer Skriftlig eksamen Tittel Forfatter Forlag Utgitt år ISBN Utgave Kommentar Type Litteratur The C++ Bjarne Programming Strostrup Language Addison Wesley 2013 978 0 321 56384 2 4 Bok Pensum PG4500 Game AI PG4500 Game AI Kjetil Raaen Etter fullført emne har studentene fått en innføring i kunstig intelligens for spill: Hvilke byggesteiner som utgjør AI i ulike typer spill, og hvilken teknikk som passer i en bestemt situasjon. Videre har studentene fått praktisk erfaring med å implementere kunstig intelligens. Erfaring med grunnleggende C# programmering (som C# delen av PG3300 programvarearkitektur, eller liknende). Etter å ha fullført emnet skal studenten: Kunnskap: Kjenne til forskjeller og likheter mellom kunstig intelligens (AI) for spill og mer tradisjonelle bruksområder. Vite hva pathfinding er, samt kunne sammenlikne en rekke kjente pathfinding algoritmer. Kjenne til hierarkisk pathfinding. Kjenne til fuzzy logic, og hvordan dette kan brukes i AI sammenheng. Vite hva regelbaserte systemer er, og hvordan de virker. Kjenne til måter AI kan ta taktiske og strategiske avgjørelser på. Vite hvordan vi kan lage koordinert AI for grupper. Kjenne til teknikker for å la AI systemer lære, blant annet ved hjelp av nevrale nettverk. Ferdigheter: Kunne lage og bruke agentbasert AI. Kjenne til steering behaviors, og bruke de vanligeste steering behaviors i praksis. Kunne lage og bruke tilstandsmaskiner, særlig i forbindelse med spill. Kunne implementere riktig AI for spill innen flere sjangere. Kunne programmere A* algoritmen med fler for pathfinding. http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 19/39

Kunne scripte AI oppførsel for spill. Generell Kompetanse: Forstå hvordan AI kan brukes til å gi unike spillopplevelser. Forstå hvilke AI teknikker som er riktig å velge, gitt bestemte situasjoner. Forelesninger, øvinger og egenstudier. Deltakelse i undervisning 24 Selvstudium 128 Øving 24 Vurdering 24 totalt 200 Verktøy Visual Studio IDE. Etter fullført emne har studentene fått en innføring i kunstig intelligens for spill: Hvilke byggesteiner som utgjør AI i ulike typer spill, og hvilken teknikk som passer i en bestemt situasjon. Videre har studentene fått praktisk erfaring med å implementere kunstig intelligens. Pensum Se litteraturliste. Mappevurdering Tittel Forfatter Forlag Utgitt år ISBN Utgave Kommentar Type Litteratur Ian Artificial Millington Morgan Intelligence & John Kaufmann 2009 for Games Funge 978 0 12 374731 0 2nd ed. Bok Pensum PG5200 Tools programmering PG5200 Tools programmering Kjetil Raaen Målet med faget er å gi studentene innsikt i utfordringer å løsninger for utvikling av verktøy som lar andre profesjoner produsere innhold for spill. Studentene utvikler en enkel leveleditor og andre verktøy som trengs for å utvikle spill og andre multimediaprodukter. Videre vil studentene bli kjent med behovet for http://nith.studiehandbok.no/layout/set/print/content/view/complete/7617/language/nor NO 20/39