EPN-V2

DATA3750 Anvendt kunstig intelligens og data science prosjekt Emneplan

Engelsk emnenavn
Applied AI and Data Science Project
Omfang
10.0 stp.
Studieår
2018/2019
Emnehistorikk
  • Innledning

    Dette emnet skal gi studenten videregående ferdigheter innen imperativ programmering og programutvikling. Emnet bygger på grunnleggende forståelse og ferdigheter innen programmering (DAPE1400 eller tilsvarende). Det er forventet av studentene har fulgt emnet «Programmering» i forkant av emnet «Programutvikling». Selv om det ikke er en forutsetning at «Programmering»-emne er bestått for å melde seg på «Programutvikling»-emnet, er det sterkt anbefalt å ta «Programmering» før «Programutvikling». Pensum og materiale som dekkes i kurset «Programmering» ansees som kjent og vil ikke dekkes igjen i kurset «Programutvikling». Merk at emnet «Grunnleggende programmering» og «Webprogrammering» ikke er tilstrekkelige.

  • Anbefalte forkunnskaper

    Følgende arbeidskrav er obligatorisk og må være godkjent for å fremstille seg til eksamen:

    • 3 arbeider
  • Forkunnskapskrav

    Ingen ut over opptakskrav.

  • Læringsutbytte

    Etter å ha gjennomført dette emne har studenten følgende læringsutbytte definert i kunnskap, ferdigheter og generell kompetanse:

    Kunnskap

    Studenten kan gjøre rede for:

    • Polymorfisme
    • Designmønstre, arkitektur, og modellering
    • Rekursive funksjoner
    • Alternative programmeringsstiler i Java, som generisk, funksjonell, og samtidig (concurrent) programmering

    Ferdigheter

    Studenten kan håndtere følgende programmeringskonstruksjoner i Java:

    • Abstraksjoner og grafiske brukergrensesnitt
    • Unntakshåndtering, enhetstesting, og debugging
    • Filbehandling og strømmer
    • Tekstmanipulering og regulære uttrykk
    • Algoritmer og datastrukturer i Java Collections

    Generell kompetanse

    Studenten kan:

    • kan planlegge og gjennomføre større programmeringsprosjekter i grupper
    • bruke moderne programmeringsmiljøer samt lagrings- og distribusjonsverktøy
  • Arbeids- og undervisningsformer

    Forelesninger og veiledningstimer. Prosjektarbeid i grupper. Gruppestørrelse på 2 eller 3 studenter. Tidsfrister og andre detaljer fremgår av undervisningsplanen som kunngjøres ved semesterstart. Det forventes at studentene følger forelesninger og øvinger.

  • Arbeidskrav og obligatoriske aktiviteter

    Følgende arbeidskrav er obligatorisk og må være godkjent for å fremstille seg til eksamen:

    • 2 oppgaver (gruppearbeid)
    • 1 individuell prøve av 45 minutters varighet (uten bruk av hjelpemidler)
  • Vurdering og eksamen

    Eksamensform: Prosjektarbeid i gruppe (2-3 studenter) gjennom hele semesteret der arbeidets dokumenterte resultat vurderes ut ifra programkode. Omfanget av oppgaven regnes som relativt stort (flere tusen linjer i programkode)

    Prosjektarbeidet skal utføres i gruppe, men studentene mottar en individuell vurdering som tar høyde for students bidrag inn i gruppa, i tillegg til det totale resultatet.

    Eksamensresultat kan påklages. Ved ny og utsatt eksamen skal 6-timers skriftlig eksamen bli benyttet.

  • Hjelpemidler ved eksamen

    Alle.

  • Vurderingsuttrykk

    Etter å ha gjennomført dette emnet har studenten følgende læringsutbytte, definert i kunnskap, ferdigheter og generell kompetanse.

    Kunnskap

    Studenten kan:

    • forklare oppbyggingen og hensikten med datastrukturer som tabeller, lister, stakker, køer av ulike typer, heaper, hashtabeller, trær av ulike typer, grafer og filer
    • gjøre rede for virkemåten og effektiviteten til ulike varianter av algoritmer for opptelling, innlegging, søking, sletting, traversering, sortering, optimalisering og komprimering

    Ferdigheter

    Studenten kan:

    • designe, implementere og anvende datastrukturer for ulike behov
    • analysere, designe, implementere og anvende de algoritmene som trengs for å løse konkrete oppgaver
    • bruke både egenutviklede og standardiserte algoritmer og datastrukturer til å løse sammensatte og kompliserte problemer

    Generell kompetanse

    Studenten kan:

    • delta i diskusjoner og gi råd om hvilke datastrukturer og algoritmer det er mest hensiktsmessig å bruke i ulike situasjoner
    • formidle viktigheten og nødvendigheten av å bruke gode strukturer og effektive algoritmer i programmeringsprosjekter
  • Sensorordning

    Forelesninger og individuelle øvinger. Øvingene er basert på eget arbeid med veiledning fra faglærer og/eller en studentassistent.