INF Algoritmer: Design og effektivitet
|
|
- Ingvar Tønnessen
- 6 år siden
- Visninger:
Transkript
1 INF 4130 Algoritmer: Design og effektivitet
2 Velkommen Forelesere: Stein Krogdahl, steinkr at ifi.uio.no Petter Kristiansen pettkr at ifi.uio.no Lærebok: Algorithms: Sequential, Parallel, and Distributed, Kenneth A. Berman and Jerome L. Paul. Til salgs i bokhandelen. (Sørg for å få boka med copyright 2005.)
3 Velkommen Gruppelærer: Matias Holte kjetimh at student.matnat.uio.no Obliger: Tre stykker, som må godkjennes. Andre, «nærliggende» kurs: INF-MAT 3370 INF-MAT 5360 Lineær optimering Matematisk optimering
4 Kvalitetssikring ved Ifi Som student har du rett og plikt til å bidra til kvalitetssikringen av studiet ditt. Dette gjør du først og fremst gjennom å delta i undervisningsevaluering. Faglærer vil ta initiativ til å sette i gang undervisningsevalueringen for hvert enkelt emne. Undervisningsevalueringen gir deg mulighet til å komme med tilbakemeldinger og innspill på undervisningen i løpet av semesteret, slik at forbedringer kan gjøres underveis. Du finner mer informasjon om dette på hovedsiden til Institutt for informatikk, under Annet Kvalitetssikring, eller ved å følge denne linken:
5 Undervisningsplan 27/08 pk Introduksjon 03/09 pk Søking i strenger (kap. 20) 10/09 pk Dynamisk programmering (kap. 9) 17/09 24/09 01/10 08/10 11/12 Eksamen (09:00, 3 timer, sted ikke fastsatt)
6 Algoritmer, effektivitet, kompleksitet Hvordan løse databehandlingsproblemer effektivt. Problemer interessante, formelle språk naturlige problemer (formal languages) (MATCHING, SORTING, TSP) Løsninger algoritmer Turing-maskiner Effektivitet kompleksitet kompleksitetsklasser
7 Algoritmer, effektivitet, kompleksitet Problemene (de formelle språkene) havner i ulike klasser, kompleksitstsklasser, ut ifra hvor effektive løsninger som er mulig for disse problemene. Problemer, formelle språk Uløsbare (unsolvable) Umedgjørlige (intractable) Lette
8 R ELEMENTARY 2-EXP EXPSPACE conexp NEXP EXP PSPACE conp NP P
9 Algoritmer, effektivitet, kompleksitet Problemene (de formelle språkene) havner i ulike klasser, kompleksitstsklasser, ut ifra hvor effektive løsninger som er mulig for disse problemene. Problemer, formelle språk Uløsbare (unsolvable) Umedgjørlige (intractable) Lette
10 Historisk introduksjon Den beste måte å løse et problem på (enten det er matematisk eller kulinarisk eller noe annet) er å lage en generell metode som håndterer alle situasjoner (alle instanser av problemet). På den måten kan vi si at løsning = algoritme. Eksempler: Den babylonske metode for kvadratrøtter 253 = Andregradslikningsformelen ax 2 + bx + c = 0 Euclids algoritme for største felles faktor (g.c.d.) den første ikke-trivielle algoritme?
11 Historisk introduksjon Fra 1900 og utover vokste feltet som kalles metamatematikk (matematiske studier av matematikken selv, dens muligheter og begrensninger). På 1930-tallet kom en del resultater omkring eksistens/ikke-eksistens av algoritmer for ulike problemer. Kurt Gödel (1931): Ufullstendighetsresultater. Alan Turing (1936): «On computable numbers, with an application to the Entscheidungsproblem». Uløsbare Løsbare Turings resultater og teknikker
12 Historisk introduksjon CPU John von Neumann (ca 1945): den første moderne datamaskin. Minne Program kontroll Regneenhet I/O Jack Edmonds (1965): «Paths, Trees, and Flowers», en algoritme for MAXIMUM MATCHING. Anne Camilla Elin Bjørn David Frank Artikkelen ble først refusert av redaktørene i Canadian Journal of Mathematics ettersom en triviell algoritme opplagt finnes: prøv alle muligheter!
13 Historisk introduksjon Kompleksitetsanalyse av den trivielle matching-algoritmen: Anta n = 100 gutter. n! = 100 * 99 * 98 * * 11 * 10 * 9 * 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1 > 10 * 10 * 10 * * 10 = Anta muligheter (permutasjoner) testes per sekund. (1,4 Pflops (1,4*10 15 ) er pt. verdens raskeste maskin, Roadrunner.) = muligheter testes per århundre. Kjøretiden for n = 100 er = århundrer(!!)! Universets antatte alder : 14 mrd år (1,4 * < år)! Ca(?) elementærpartikler i det synlige univers (diameter ca 95 mrd lysår).
14 Historisk introduksjon Edmonds: «min algoritme har polynomisk kjøretid, den trivielle bruker eksponensiell tid!» Vi har altså nå resultater omkring problemer som har algoritmer med polynomisk kjøretid. Cook / Levin (1972): NP-completeness. Umedgjørlige Cook / Levins resultater og teknikker P (Polynomisk kjøretid)
15 Problemer, formelle språk Alle mulige databehandlingsproblemer Lønnsberegning, månelanding, ruteplanlegging, grafer tall «interessante», «naturlige» problemer MATCHING SORTING TSP input output Funksjoner (Mengder av I/O-par) output = JA/NEI Formelle språk (Mengder av «JA-strenger»)
16 Problemer, formelle språk Definisjon Et alfabet Ʃ er en endelig mengde symboler. Alfabetet vårt kan f.eks være Ʃ = {0,1} eller Ʃ = {a,, å}. (Alle symboler kan kodes med ASCII-koder el. og deretter binært.) Definisjon Ʃ* = alle endelige strenger vi kan lage med symbolene i Ʃ. For alfabetet {0,1} er Ʃ* = {ε, 0, 1, 00, 01, } i leksikografisk rekkefølge. Definisjon Et formelt språk L over Ʃ er en delmengde av Ʃ*. Når et formelt språk L skal brukes til å representere et problem, lar vi L bestå av mengden av alle «JA-instanser» for problemet vårt. Et formelt språk for SORTING (av heltallene) vil f.eks bestå av alle korrekt sorterte sekvenser av heltall: {ε, 0, 1, 2,, 01, 02,, 012, 013, }.
17 Algoritmer, Turing-maskiner Algoritme = input 443 output beregning regler Turingmaskin b b 0/ 1 0 b b uendelig tape (input/output) lese-/skrivehode Regler (del av maskinen) q 1 s «prosessor» Kontrollenhet med et endelig antall tilstander og regler for overgang mellom tilstandene, skriving på tapen og flytting av lese-/skrivehodet d(s,0) = (q 1, b, R) d(q 1,0) = (q 2, b, R) q 2 tilstander
18 Algoritmer, Turing-maskiner b b b q 2 q 1 s Regler (del av maskinen) d(s,0) = (q 1, b, R) d(q 1,0) = (q 2, b, R) CPU Minne Program kontroll Regneenhet I/O
19 Algoritmer, Turing-maskiner program, regler b b Regler (del av maskinen) s De hardkodede reglene styrer nå bare applisering av de programmerte reglene fra tapen q 1 q 2 CPU Minne Program kontroll Regneenhet I/O
20 Algoritmer, Turing-maskiner Problemene våre har vi sett at vi kan modellere med formelle språk. Algoritmene kan representeres med Turing-maskiner. En Turing-maskin M avgjør språket L hvis og bare hvis M beregner funksjonen f : Ʃ* {JA, NEI} slik at for hver l œ L : f(l) = JA for hver l L : f(l) = NEI En Turing-maskin M aksepterer språket L hvis og bare hvis gir stopper med svaret JA for alle l œ L. For l L krever vi ikke engang at maskinen stopper. Turing-maskiners regnekraft gir en inndeling av de formelle språkene:
21 Algoritmer, Turing-maskiner Alle mulige formelle språk
22 Algoritmer, Turing-maskiner Alle mulige formelle språk Språk som aksepteres av Turing-maskiner (svarer Ja)
23 Algoritmer, Turing-maskiner Alle mulige formelle språk Komplementene av de språk som aksepteres av Turing-maskiner (svarer Nei) Språk som aksepteres av Turing-maskiner (svarer Ja)
24 Algoritmer, Turing-maskiner Alle mulige formelle språk Komplementene av de språk som aksepteres av Turing-maskiner (svarer Nei) Språk som aksepteres av Turing-maskiner (svarer Ja) Det er kun disse språkene (problemene) som har algoritmer (svarer ja og nei). De kalles rekursive språk (R).
25 Algoritmer, Turing-maskiner Alle mulige formelle språk Komplementene av de språk som aksepteres av Turing-maskiner (svarer Nei) ELEMENTARY 2-EXP EXPSPACE conexp NEXP EXP PSPACE conpnp Språk som aksepteres av Turing-maskiner (svarer Ja) P Det er kun disse språkene (problemene) som har algoritmer. De kalles rekursive språk (R).
26 Effektivitet, kjøretid, kompleksitet Algoritmers kjøretid beregnes i prinsippet ved å telle antall operasjoner. Det tar som regel mindre tid å løse en liten probleminstans enn det tar å løse en stor, f.eks å sortere noen få tall i forhold til å sortere mange. Algoritmers kjøretid angis derfor som en funksjon av lengden på input. Polynomiske algoritmer (gode algoritmer) Hvis f(n) er en algoritmes maksimale kjøretid på instanser av lengde inntil n, så sier vi at algoritmen er polynomisk hvis f(n) = O(n k ), for en konstant k. Ekponensielle algoritmer (dårlige algoritmer) Litt feilaktig regner vi ofte algoritmer som ikke har polynomisk kjøretid for eksponensielle. Disse har typisk kjøretid Θ(k n ) eller Θ(n!), eller liknende.
27 Churchs tese Turing-maskin Turing-maskiner kan beregne enhver funksjon som kan beregnes av en algoritme, et dataprogram eller en datamaskin. Programmeringsspråks beregningskraft Et programmeringsspråk (Java, C, Lisp, ) er Turing-komplett om det kan gjøre de samme beregninger som Turing-maskiner. Kan vi implementere en Turingmaskin i språket vårt, er det det. Universelle datamaskinmodeller En datamaskinmodell er Turing-komplett om den kan gjøre de samme beregninger som en Turing-maskin. McCullok og Pitts har vist at nevrale nett kan simulere Turing-maskiner. Uberegnbarhet Hvis en funksjon f ikke kan beregnes av en Turing-maskin, så finnes det ingen datamaskin som kan beregne f.
28
Stein Krogdahl, Dino Karabeg, Petter Kristiansen. Kenneth A. Berman and Jerome L. Paul.
Stein Krogdahl, Dino Karabeg, Petter Kristiansen steinkr at ifi.uio.no dino at ifi.uio.no pettkr at ifi.uio.no INF 4130 / 9135 Algoritmer: Design og effektivitet Algorithms: Sequential Parallel and Distributed
DetaljerINF 4130. 8. oktober 2009. Dagens tema: Uavgjørbarhet. Neste uke: NP-kompletthet
INF 4130 8. oktober 2009 Stein Krogdahl Dagens tema: Uavgjørbarhet Dette har blitt framstilt litt annerledes tidligere år Se Dinos forelesninger fra i fjor. I år: Vi tenker mer i programmer enn i Turing-maskiner
DetaljerINF Stein Krogdahl. NB: Det som under forelesningen ble kalt et vitne er nå omdøpt til et sertifikat.
INF 4130 15. oktober 2009 Stein Krogdahl NB: Det som under forelesningen ble kalt et vitne er nå omdøpt til et sertifikat. Dagens tema: NP-kompletthet Eller: hvilke problemer er umulig å løse effektivt?
DetaljerINF oktober Stein Krogdahl. Altså: Hva kan ikke gjøres raskt (med mindre P = NP)
INF 4130 22. oktober 2009 Stein Krogdahl Dagens tema: Mer om NP-kompletthet Altså: Hva kan ikke gjøres raskt (med mindre P = NP) Også her: Dette har blitt framstilt litt annerledes tidligere år Pensum
DetaljerTuringmaskiner en kortfattet introduksjon. Christian F Heide
7. november 016 Turingmaskiner en kortfattet introduksjon Christian F Heide En turingmaskin er ikke en fysisk datamaskin, men et konsept eller en tankekonstruksjon laget for å kunne resonnere omkring blant
DetaljerTuringmaskiner en kortfattet introduksjon. Christian F Heide
13. november 2014 Turingmaskiner en kortfattet introduksjon Christian F Heide En turingmaskin er ikke en fysisk datamaskin, men et konsept eller en tankekonstruksjon laget for å kunne resonnere omkring
DetaljerINF2220: Time 8 og 9 - Kompleksitet, beregnbarhet og kombinatorisk søk
INF0: Time 8 og 9 - Kompleksitet, beregnbarhet og kombinatorisk søk Mathias Lohne mathialo Rekursjonseksempel Eksempel Finn kjøretid for følgende program: (Ex11 b) 1 float foo(a) { n = Alength; 3 4 if
DetaljerINF 4130 / / Dagens foiler hovedsakelig laget av Petter Kristiansen Foreleser Stein Krogdahl Obliger:
INF 4130 / 9135 29/8-2012 Dagens foiler hovedsakelig laget av Petter Kristiansen Foreleser Stein Krogdahl Obliger: Tre stykker, som må godkjennes. Frister: 21. sept, 26. okt, 16. nov Andre, «nærliggende»
DetaljerKompleksitetsteori reduksjoner
Kompleksitetsteori reduksjoner En slags liten oversikt, eller huskeliste, for kompleksitetsteorien i INF 4130. Ikke ment å være verken fullstendig eller detaljert, men kanskje egnet til å gi noen knagger
DetaljerAnalyse av Algoritmer
Analyse av Algoritmer Lars Vidar Magnusson 10.1.2014 Asymptotisk notasjon (kapittel 3) Kompleksitetsklasser Uløselige problem Asymptotisk Notasjon Asymptotisk analyse innebærer å finne en algoritmes kjøretid
DetaljerUNIVERSITETET I OSLO. Det matematisk-naturvitenskapelige fakultet
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i: INF 4130: lgoritmer: Design og effektivitet Eksamensdag: 12. desember 2008 Tid for eksamen: Kl. 09:00 12:00 (3 timer) Oppgavesettet
DetaljerKompleksitet og Beregnbarhet
Kompleksitet og Beregnbarhet 16. September, 2019 Institutt for Informatikk 1 Dagens plan Avgjørelsesproblemer. P EXPTIME NP Reduksjoner NP-kompletthet Uavgjørbarhet UNDECIDABLE DECIDABLE PSPACE NPC NP
DetaljerINF2080 Logikk og beregninger
INF2080 Logikk og beregninger Forelesning 22: Fliser Sist oppdatert: 2012-04-16 20:32 22.1 Fliser Beregne med fliser 22.1 Fliser Beregne med fliser INF2080 Logikk og beregninger Forelesning 22 Side 3 /
DetaljerIntroduksjon til Algoritmeanalyse
Introduksjon til Algoritmeanalyse 26. August, 2019 Institutt for Informatikk 1 Hvordan skal vi tenke i IN2010? Effektive løsninger Hvordan skalérer problemet og løsningen? 2 Terminologi Betegnelse Problem
DetaljerKompleksitet. IN algoritmer og datastrukturer Plenumstime / repetisjon
Kompleksitet IN2010 - algoritmer og datastrukturer Plenumstime / repetisjon Dagens agenda Kompleksitet - hva er det? Avgjørelsesproblemer Kompleksitetsklassene P og NP Reduksjoner - å redusere et problem
DetaljerLØSNINGSFORSLAG, EKSAMEN I ALGORITMER OG DATASTRUKTURER (IT1105)
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Side 1 av 8 Faglig kontakt under eksamen: Magnus Lie Hetland LØSNINGSFORSLAG, EKSAMEN I ALGORITMER OG DATASTRUKTURER
DetaljerFølger Sipsers bok tett både i stoff og oppgaver.
1 - hrj 1 Følger Sipsers bok tett både i stoff og oppgaver. Tirsdag forelesninger, nytt stoff Onsdag eksempler og utfyllende stoff Torsdag oppgaver fra uka før Start: kapittel 1 (2uker), 2 (2uker),3 (2uker),4
DetaljerINF Algoritmer og datastrukturer. Hva er INF2220? Algoritmer og datastrukturer
Praktiske opplysninger INF2220 - Algoritmer og datastrukturer HØSTEN 2007 Institutt for informatikk, Universitetet i Oslo Tid og sted: Mandag kl. 12:15-14:00 Store auditorium, Informatikkbygningen Kursansvarlige
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer Institutt for informatikk, Universitetet i Oslo INF2220, forelesning 11: Huffman-koding & Dynamisk programmering (Ifi, UiO) INF2220 H2015, forelesning 11 1 / 32 Dagens
DetaljerVELKOMMEN TIL MAT-INF1100(L) Knut Mørken knutm@ifi.uio.no Rom 1033, Niels Henrik Abels hus
VELKOMMEN TIL MAT-INF1100(L) Knut Mørken knutm@ifi.uio.no Rom 1033, Niels Henrik Abels hus Forelesere Knut Mørken og Martin Reimers, Matematisk institutt, 10. etg i Niels Henrik Abels hus Arbeider med
DetaljerMAT1030 Diskret Matematikk
MAT1030 Diskret Matematikk Forelesning 29: Kompleksitetsteori Roger Antonsen Institutt for informatikk, Universitetet i Oslo 13. mai 2009 (Sist oppdatert: 2009-05-17 22:38) Forelesning 29: Kompleksitetsteori
DetaljerForelesning 29: Kompleksitetsteori
MAT1030 Diskret Matematikk Forelesning 29: Kompleksitetsteori Roger Antonsen Institutt for informatikk, Universitetet i Oslo Forelesning 29: Kompleksitetsteori 13. mai 2009 (Sist oppdatert: 2009-05-17
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2017 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 4: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2220 H2017, forelesning
DetaljerDagens plan. INF Algoritmer og datastrukturer. Koding av tegn. Huffman-koding
Grafer Dagens plan INF2220 - Algoritmer og datastrukturer HØSTEN 2007 Institutt for informatikk, Universitetet i Oslo Avsluttende om grådige algoritmer (kap. 10.1.2) Dynamisk programmering Floyds algoritme
DetaljerForelesning 30: Kompleksitetsteori
MAT1030 Diskret Matematikk Forelesning 30: Kompleksitetsteori Roger Antonsen Institutt for informatikk, Universitetet i Oslo Forelesning 30: Kompleksitetsteori 19. mai 2009 (Sist oppdatert: 2009-05-19
DetaljerGenerell induksjon og rekursjon. MAT1030 Diskret matematikk. Generell induksjon og rekursjon. Generell induksjon og rekursjon.
MAT1030 Diskret matematikk Forelesning 18: Generell rekursjon og induksjon Dag Normann Matematisk Institutt, Universitetet i Oslo 12. mars 2008 Mandag så vi på induktivt definerte mengder og noen eksempler
DetaljerOm Kurset og Analyse av Algoritmer
Om Kurset og Analyse av Algoritmer Lars Vidar Magnusson 8.1.2014 Praktisk informasjon om kurset Hva er en algoritme? (kapittel 1) Hvordan analysere en algoritme? (kapittel 2) Praktisk Informasjon Introduction
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer Institutt for informatikk, Universitetet i Oslo INF2220, forelesning 13: Dynamisk programmering (Ifi, UiO) INF2220 H2017, forelesning 13 1 / 30 Dagens plan Dynamisk
DetaljerVelkommen til INF Introduksjon til operativsystemer og datakommunikasjon
Velkommen til INF-1060 Introduksjon til operativsystemer og datakommunikasjon 21.08.2007 INF1060 1 Forelesere: Pål Halvorsen (paalh@ifi.uio.no) Nettverk og Distribuerte systemer (ND) (ved Simula) Kjell
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2016 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 4: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2220 H2016, forelesning
DetaljerEksamensoppgave i TDT4120 Algoritmer og datastrukturer
Institutt for datateknikk og informasjonsvitenskap Eksamensoppgave i TDT0 Algoritmer og datastrukturer Faglig kontakt under eksamen Magnus Lie Hetland Telefon 98 5 99 Eksamensdato 9. august, 07 Eksamenstid
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Side Det matematisk-naturvitenskapelige fakultet Prøveekasmen 2007, med svarforslag Eksamen i: INF 330/430: Algoritmer: Design og effektivitet Eksamensdag: Fredag. desember 200 Tid
DetaljerEksamensoppgave i TDT4120 Algoritmer og datastrukturer
Institutt for datateknikk og informasjonsvitenskap Eksamensoppgave i TDT0 Algoritmer og datastrukturer Faglig kontakt under eksamen Magnus Lie Hetland Telefon 98 5 99 Eksamensdato 7. desember, 06 Eksamenstid
DetaljerIN2010: Forelesning 11. Kombinatorisk søking Beregnbarhet og kompleksitet
IN2010: Forelesning 11 Kombinatorisk søking Beregnbarhet og kompleksitet KOMBINATORISK SØKING Oversikt Generering av permutasjoner Lett: Sekvens-generering Vanskelig: Alle tallene må være forskjellige
DetaljerInnhold. Innledning 1
Innhold Innledning 1 1 Kompleksitetsanalyse 7 1.1 Innledning.............................. 8 1.2 Hva vi beregner........................... 8 1.2.1 Enkle operasjoner...................... 8 1.2.2 Kompleksitet........................
DetaljerEksamen i fag SIF8010 Algoritmer og Datastrukturer Tirsdag 18. Desember 2000, kl
Student nr.: Side 1 av 5 Eksamen i fag SIF8010 Algoritmer og Datastrukturer Tirsdag 18. Desember 2000, kl 0900-1500 Faglig kontakt under eksamen: Arne Halaas, tlf. 73 593442. Hjelpemidler: Alle kalkulatortyper
DetaljerProsessoren. Bakgrunnen Innhold LMC. Assemblerkode Oppsummering instruksjonene [Englander kap 6] Hva inneholder den? Hvordan utføres instruksjonene?
Prosessoren Bakgrunnen Innhold LMC Hva inneholder den? Hvordan utføres instruksjonene? Assemblerkode Oppsummering instruksjonene [Englander kap 6] Lagdelingen av en datamaskin Internett Lokalnett (LAN)
DetaljerAnbefalt litteratur: Pensum-bøker: Forelesere: Velkommen til INF Introduksjon til operativsystemer og datakommunikasjon
Forelesere: Velkommen til INF-1060 Introduksjon til operativsystemer og datakommunikasjon Pål Halvorsen (paalh@ifi.uio.no) Nettverk og Distribuerte systemer (ND) (ved Simula) Kjell Åge Bringsrud (kjellb@ifi.uio.no)
DetaljerKompleksitetsanalyse Helge Hafting 25.1.2005 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LO117D Algoritmiske metoder
Helge Hafting 25.1.2005 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LO117D Algoritmiske metoder Innhold 1 1 1.1 Hva er en algoritme?............................... 1 1.2
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2015 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 4: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2220 H2015, forelesning
DetaljerOppgave 1. Sekvenser (20%)
Det matematisk-naturvitenskapelige fakultet UNIVERSITETET I BERGEN Eksamen i emnet I 20 - Algoritmer, datastrukturer og programmering Mandag 2.Mai 200, kl. 09-5. Ingen hjelpemidler tillatt. Oppgavesettet
DetaljerForelesning 14. Rekursjon og induksjon. Dag Normann februar Oppsummering. Oppsummering. Beregnbare funksjoner
Forelesning 14 og induksjon Dag Normann - 27. februar 2008 Oppsummering Mandag repeterte vi en del om relasjoner, da spesielt om ekvivalensrelasjoner og partielle ordninger. Vi snakket videre om funksjoner.
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2015 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 4: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2220 H2015, forelesning
DetaljerNotat for oblig 2, INF3/4130 h07
Notat for oblig 2, INF3/4130 h07 Dag Sverre Seljebotn 15. oktober 2007 Jeg har skrivd et noe langt notat for oblig 2 som interesserte kan se på. Merk at dette er kun for å gi et par tips (for oppgave 3
DetaljerObligatorisk oppgave 1 i INF 4130, høsten 2009
Obligatorisk oppgave 1 i INF 4130, høsten 2009 Leveringsfrist fredag 2. oktober Institutt for informatikk Krav til innleverte oppgaver ved Institutt for informatikk (Ifi) Ved alle pålagte innleveringer
DetaljerIN2080. Oppgave 1. Oppgave 2. Eksamen. Vår Den nondeterministiske endelige automaten A er gitt ved (Q, Σ, δ, q 0, F ) der
IN2080 Eksamen Vår 2019 Oppgave 1 Den nondeterministiske endelige automaten A er gitt ved (Q, Σ, δ, q 0, F ) der Q = {q 0, q 1, q 2 } er mengden av tilstander Σ = {a, b} er inputalfabetet q 0 er starttilstanden
DetaljerINF3/4130 PRØVE-EKSAMEN MED SVARFORSLAG Gjennomgås 1/ , (lille aud.)
Oppgave 1 Uavgjørbarhet INF3/4130 PRØVE-EKSAMEN MED SVARFORSLAG Gjennomgås 1/12-2005, 14.15 (lille aud.) L = {(M 1, M 2 ) M 1 og M 2 er Turingmaskiner som er ekvivalente, dvs. gir samme output for samme
DetaljerMAT-INF 1100: Obligatorisk oppgave 1
13. september, 2018 MAT-INF 1100: Obligatorisk oppgave 1 Innleveringsfrist: 27/9-2018, kl. 14:30 i Devilry Obligatoriske oppgaver («obliger») er en sentral del av MAT-INF1100 og er utmerket trening i å
DetaljerMAT1030 Forelesning 19
MAT1030 Forelesning 19 Generell rekursjon og induksjon Roger Antonsen - 25. mars 2009 (Sist oppdatert: 2009-03-25 11:06) Forelesning 19 Forrige gang så vi på induktivt definerte mengder og noen eksempler
DetaljerMAT1030 Forelesning 28
MAT1030 Forelesning 28 Kompleksitetsteori Roger Antonsen - 12. mai 2009 (Sist oppdatert: 2009-05-13 08:12) Forelesning 28: Kompleksitetsteori Introduksjon Da er vi klare (?) for siste kapittel, om kompleksitetsteori!
DetaljerLO118D Forelesning 2 (DM)
LO118D Forelesning 2 (DM) Kjøretidsanalyse, matematisk induksjon, rekursjon 22.08.2007 1 Kjøretidsanalyse 2 Matematisk induksjon 3 Rekursjon Kjøretidsanalyse Eksempel Finne antall kombinasjoner med minst
DetaljerAlgDat 12. Forelesning 2. Gunnar Misund
AlgDat 12 Forelesning 2 Forrige forelesning Følg med på hiof.no/algdat, ikke minst beskjedsida! Algdat: Fundamentalt, klassisk, morsomt,...krevende :) Pensum: Forelesningene, oppgavene (pluss deler av
DetaljerVelkommen til MAT1030!
MAT1030 Diskret Matematikk Forelesning 1: Algoritmer, pseudokoder, kontrollstrukturer Roger Antonsen Institutt for informatikk, Universitetet i Oslo Velkommen til MAT1030! 13. januar 2009 (Sist oppdatert:
DetaljerMAT1030 Diskret Matematikk
MAT1030 Diskret Matematikk Forelesning 1: Algoritmer, pseudokoder, kontrollstrukturer Roger Antonsen Institutt for informatikk, Universitetet i Oslo 13. januar 2009 (Sist oppdatert: 2009-01-14 16:44) Velkommen
DetaljerMAT1030 Diskret matematikk
MAT1030 Diskret matematikk Forelesning 14: Rekursjon og induksjon Dag Normann Matematisk Institutt, Universitetet i Oslo 27. februar 2008 Oppsummering Mandag repeterte vi en del om relasjoner, da spesielt
DetaljerHashing: Håndtering av kollisjoner
Hashing: Håndtering av kollisjoner Innsetting av dataelement i hashtabell Algoritme: 1. Bruk en hashfunksjon til å beregne hashverdi basert på dataelementets nøkkelverdi 2. Sett inn dataelementet i hashtabellen
DetaljerKapittel 3: Litt om representasjon av tall
MAT1030 Diskret Matematikk Forelesning 3: Litt om representasjon av tall Dag Normann Matematisk Institutt, Universitetet i Oslo Kapittel 3: Litt om representasjon av tall 26. januar 2010 (Sist oppdatert:
DetaljerDynamisk programmering Undervises av Stein Krogdahl
Dynamisk programmering Undervises av Stein Krogdahl 5. september 2012 Dagens stoff er hentet fra kapittel 9 i læreboka, samt kapittel 20.5 (som vi «hoppet over» sist) Kapittel 9 er lagt ut på undervisningsplanen.
DetaljerINF2220: Forelesning 1. Praktisk informasjon Analyse av algoritmer (kapittel 2) (Binær)trær (kapittel )
INF2220: Forelesning 1 Praktisk informasjon Analyse av algoritmer (kapittel 2) (Binær)trær (kapittel 4.1-4.3 + 4.6) PRAKTISK INFORMASJON 2 Praktisk informasjon Kursansvarlige Ragnhild Kobro Runde (ragnhilk@ifi.uio.no)
DetaljerAlle mot alle. Åttende forelesning. (eller eller Bellman-Ford, eller BFS, alt ettersom) fra alle noder.
Enkel alle-til-allealgoritme: Kjør Dijkstra (eller eller Bellman-Ford, eller BFS, alt ettersom) fra alle noder. Kan fungere for spinkle grafer blir dyrt ellers. Alle mot alle Åttende forelesning 1 Dijkstra
DetaljerHva er en kø? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn først
Køer Hva er en kø? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn først Et nytt element legges alltid til sist i køen Skal vi ta ut et element, tar vi alltid
DetaljerKontinuasjonseksamen i fag SIF8010 Algoritmer og Datastrukturer Torsdag 9. August 2001, kl
Student nr.: Side 1 av 5 Kontinuasjonseksamen i fag SIF8010 Algoritmer og Datastrukturer Torsdag 9. August 2001, kl 0900-1500 Faglig kontakt under eksamen: Arne Halaas, tlf. 73 593442. Hjelpemidler: Alle
DetaljerHva er en algoritme? INF HØSTEN 2006 INF1020. Kursansvarlige Ragnar Normann E-post: Dagens tema
va er en algoritme? Vanlig sammenligning: Oppskrift. nput lgoritme NF1020 - ØSTEN 2006 Kursansvarlige Ragnar Normann E-post: ragnarn@ifi.uio.no Output Knuth : tillegg til å være et endelig sett med regler
DetaljerObligatorisk oppgave 1 i INF 4130, høsten 2008
Obligatorisk oppgave 1 i INF 4130, høsten 2008 Leveringsfrist 3. oktober Institutt for informatikk Krav til innleverte oppgaver ved Institutt for informatikk (Ifi) Ved alle pålagte innleveringer av oppgaver
DetaljerVelkommen til. IN1010 Objektorientert programmering Våren 2018
Velkommen til IN1010 Objektorientert programmering Våren 2018 Idag: 1. time: Om IN1010 2. time (+ i morgen og neste uke): Om Java og objekter i Java 1 Stein Gjessing, Siri Jensen og Dag Langmyhr Universitetet
DetaljerMAT1030 Diskret Matematikk
MAT1030 Diskret Matematikk Forelesning 27: Trær Dag Normann Matematisk Institutt, Universitetet i Oslo 4. mai 2010 (Sist oppdatert: 2010-05-04 14:11) Forelesning 27 MAT1030 Diskret Matematikk 4. mai 2010
DetaljerUNIVERSITETET I OSLO. Med svar-forslag
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i: INF 3130/4130: Algoritmer: Design og effektivitet Eksamensdag: Fredag 14. desember 2007 Tid for eksamen: Kl. 09.00 til 12.00
DetaljerIN Algoritmer og datastrukturer
IN2010 - Algoritmer og datastrukturer HØSTEN 2018 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 3: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2010 H2018, forelesning
DetaljerALGORITMER OG DATASTRUKTURER
Stud. nr: Side 1 av 6 NTNU Norges teknisk-naturvitenskapelige universitet BOKMÅL Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap AVSLUTTENDE
DetaljerALGORITMER OG DATASTRUKTURER
Stud. nr: Side 1 av 6 NTNU Norges teknisk-naturvitenskapelige universitet BOKMÅL Fakultet for informasjonsteknologi matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap AVSLUTTENDE
DetaljerSvarforslag til ukeoppgaver til INF 4130
Svarforslag til ukeoppgaver til INF 4130 15. november 2011 Oppgave 1: Løs 14.4 (hvori innbakt svaret på oppgave 14.5) Vi skal altså vise at Hungarian-algoritmen kan implementeres i tid O(n 3 ), der n er
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i: INF 2220 Algoritmer og datastrukturer Eksamensdag: 8. desember 2016 Tid for eksamen: 09:00 13:00 (4 timer) Oppgavesettet er på:
DetaljerIN1010 Objektorientert programmering Våren 2019
IN1010 Objektorientert programmering IN1010 Objektorientert programmering Våren 2019 Stein Gjessing Hva skjer de første to ukene? Forelesninger de to første ukene i dag 1. time: Info om IN1010 i dag 2.
DetaljerGenerell rekursjon og induksjon. at(n) + bt(n 1) + ct(n 2) = 0
Forelesning 17 Generell rekursjon og induksjon Dag Normann - 10. mars 2008 Opphenting Forrige uke så vi på rekurrenslikninger. En rekurrenslikning er en funksjonslikning på formen at(n) + bt(n 1) + ct(n
DetaljerAvgjørbarhet / Uavgjørbarhet
Avgjørbarhet / Uavgjørbarhet For å kunne snakke om avgjørbarhet/uavgjørbarhet trenger vi Turingmaskiner og for å snakke om Turingmaskiner trenger vi formelle språk, og strenger og alfabeter. Pluss litt
DetaljerDagens stoff er hentet fra kapittel 9 i læreboka, samt kapittel 20.5 (som vi «hoppet over» sist)
Dynamisk programmering Undervises av Stein Krogdahl 5. september 2012 Dagens stoff er hentet fra kapittel 9 i læreboka, samt kapittel 20.5 (som vi «hoppet over» sist) Kapittel 9 er lagt ut på undervisningsplanen.
DetaljerKapittel 6: Funksjoner
MAT1030 Diskret Matematikk Forelesning 14: Mer om funksjoner Roger Antonsen Institutt for informatikk, Universitetet i Oslo Kapittel 6: Funksjoner 10. mars 2009 (Sist oppdatert: 2009-03-10 11:34) MAT1030
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i IN 115 og IN 110 Algoritmer og datastrukturer Eksamensdag: 14. mai 1996 Tid for eksamen: 9.00 15.00 Oppgavesettet er på 8 sider.
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet «Midterm» i: INF 4130: Algoritmer: Design og effektivitet Eksamensdag: 1. november 2011 Tid for «midterm»: Kl. 09:00 13:00 (4 timer) [124%,
DetaljerVELKOMMEN TIL MAT-INF1100(L) Knut Mørken knutm@ifi.uio.no Rom 1033, Niels Henrik Abels hus
VELKOMMEN TIL MAT-INF1100(L) Knut Mørken knutm@ifi.uio.no Rom 1033, Niels Henrik Abels hus Foreleser Knut Mørken, Matematisk institutt Rom nr. 1033 i Niels Henrik Abels hus E-post: knutm@ifi.uio.no Arbeider
DetaljerMAT1030 Diskret Matematikk
MAT1030 Diskret Matematikk Forelesning 4: Logikk Roger Antonsen Institutt for informatikk, Universitetet i Oslo 21. januar 2009 (Sist oppdatert: 2009-01-22 13:02) Kapittel 4: Logikk (fortsettelse) MAT1030
DetaljerMAT1030 Diskret Matematikk
MAT1030 Diskret Matematikk Forelesning 26: Trær Roger Antonsen Institutt for informatikk, Universitetet i Oslo 5. mai 2009 (Sist oppdatert: 2009-05-06 22:27) Forelesning 26 MAT1030 Diskret Matematikk 5.
DetaljerKapittel 4: Logikk (fortsettelse)
MAT1030 Diskret Matematikk Forelesning 4: Logikk Roger Antonsen Institutt for informatikk, Universitetet i Oslo Kapittel 4: Logikk (fortsettelse) 21. januar 2009 (Sist oppdatert: 2009-01-22 13:03) MAT1030
DetaljerVi som skal undervise. MAT1030 Diskret matematikk. Hva er diskret matematikk? Hva er innholdet i MAT1030?
Vi som skal undervise MAT1030 Diskret matematikk Forelesning 1: Algoritmer, pseudokoder og kontrollstrukturer Dag Normann Matematisk Institutt, Universitetet i Oslo 14. januar 2008 Dag Normann Roger Antonsen
DetaljerForelesning 25. MAT1030 Diskret Matematikk. Litt repetisjon. Litt repetisjon. Forelesning 25: Trær. Roger Antonsen
MAT1030 Diskret Matematikk Forelesning 25: Trær Roger Antonsen Institutt for informatikk, Universitetet i Oslo Forelesning 25 29. april 2009 (Sist oppdatert: 2009-04-29 00:28) MAT1030 Diskret Matematikk
DetaljerTDT4105 Informasjonsteknologi, grunnkurs
1 TDT4105 Informasjonsteknologi, grunnkurs Matlab: Sortering og søking Anders Christensen (anders@idi.ntnu.no) Rune Sætre (satre@idi.ntnu.no) TDT4105 IT Grunnkurs 2 Pensum Matlab-boka: 12.3 og 12.5 Stoffet
DetaljerVELKOMMEN TIL MAT-INF 1100
VELKOMMEN TIL MAT-INF 1100 1 Forelesere Geir Pedersen, Matematisk institutt, avd. for mekanikk Rom nr. 918 i Niels Henrik Abels hus E-post: geirkp@math.uio.no Arbeider med havbølger og numerisk analyse
DetaljerMAT1030 Diskret matematikk
MAT1030 Diskret matematikk Forelesning 17: Generell rekursjon og induksjon Dag Normann Matematisk Institutt, Universitetet i Oslo 10. mars 2008 Opphenting Forrige uke så vi på rekurrenslikninger. En rekurrenslikning
DetaljerVelkommen til. INF våren 2017
Velkommen til INF1010 - våren 2017 Idag: 1. time: Om INF1010 2.time: Om Objekter i Java 1 Stein Gjessing og Stein Michael Storleer Universitetet i Oslo 1 INF1010 Objektorientert programmering I INF1010
DetaljerVELKOMMEN TIL MAT-INF1100 og MAT-INF1105. Knut Mørken Rom Ø368, Fysikkbygget
VELKOMMEN TIL MAT-INF1100 og MAT-INF1105 Knut Mørken knutm@ifi.uio.no Rom Ø368, Fysikkbygget Lærere Knut Mørken og Martin Reimers, Matematisk institutt Arbeider med beregningsorientert matematikk. En anvendelse
DetaljerStudentnummer: Side 1 av 1. Løsningsforslag, Eksamen i TDT4120 Algoritmer og datastrukturer August 2005
Studentnummer: Side 1 av 1 Løsningsforslag, Eksamen i TDT4120 Algoritmer og datastrukturer August 2005 Faglige kontakter under eksamen: Magnus Lie Hetland, Arne Halaas Tillatte hjelpemidler: Bestemt enkel
DetaljerMAT1030 Diskret matematikk
MAT1030 Diskret matematikk Forelesning 27: Trær Dag Normann Matematisk Institutt, Universitetet i Oslo 30. april 2008 Oppsummering Mandag så vi på hvordan vi kan finne uttrykk og termer på infiks form,
DetaljerLØSNINGSFORSLAG EKSAMEN VÅR07, MA0301
Norges teknisk naturvitenskapelige universitet Institutt for matematiske fag Side 1 av 5 LØSNINGSFORSLAG EKSAMEN VÅR07, MA0301 Oppgave 1 Om mengder. a) (10%) Sett opp en medlemsskapstabell (membership
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2009 Institutt for informatikk, Universitetet i Oslo INF2220, forelesning 5: Prioritetskø og Heap Bjarne Holen (Ifi, UiO) INF2220 H2009, forelesning 5 1 /
DetaljerForelesning 27. MAT1030 Diskret Matematikk. Bevistrær. Bevistrær. Forelesning 27: Trær. Roger Antonsen. 6. mai 2009 (Sist oppdatert: :28)
MAT1030 Diskret Matematikk Forelesning 27: Trær Roger Antonsen Institutt for informatikk, Universitetet i Oslo Forelesning 27 6. mai 2009 (Sist oppdatert: 2009-05-06 22:28) MAT1030 Diskret Matematikk 6.
DetaljerObligatorisk oppgave 2 i INF 4130, høsten 2009
Obligatorisk oppgave 2 i INF 410, høsten 2009 Leveringsfrist 2. oktober Generelt for alle oppgavene Samme reglement gjelder som for obligatorisk oppgave 1. Det kan komme presiseringer og forandringer i
DetaljerHvor raskt klarer vi å sortere?
Sortering Sorteringsproblemet Gitt en array med n elementer som kan sammenlignes med hverandre: Finn en ordning (eller permutasjon) av elementene slik at de står i stigende (evt. avtagende) rekkefølge
DetaljerValg av kontaktpersoner/tillitsvalgte. MAT1030 Diskret matematikk. Oppsummering av kapittel 2. Representasjon av hele tall
Valg av kontaktpersoner/tillitsvalgte MAT1030 Diskret matematikk Forelesning 4: Tall som data Dag Normann Matematisk Institutt, Universitetet i Oslo 23. januar 2008 Før vi tar pause skal vi velge to til
DetaljerINF2820 Datalingvistikk V2017 Forelesning 1.2 Jan Tore Lønning
INF2820 Datalingvistikk V2017 Forelesning 1.2 Jan Tore Lønning ENDELIGE TILSTANDSMASKINER OG REGULÆRE SPRÅK 19. januar 2017 2 Fysisk modell En tape delt opp i ruter. I hver rute står det et symbol. En
Detaljer