NP-komplett, hva nå?
|
|
- Jorun Bråthen
- 7 år siden
- Visninger:
Transkript
1 NP-komplett, hva nå? Anta vi har klart å vise at problemet vårt er NP-komplett eller NP-hardt. Hva betyr det? Såfremt P NP (de fleste tror det) har ikke problemet noen polynomisk algoritme. Hva skal vi gjøre? Vi trenger jo fortsatt en algoritme, vi kan ikke bruke NP-kompletthet som en unnskyldning for å gi opp. Vi må bruke litt andre teknikker og tenkemåter enn vi vanligvis gjør. Vi må slakke litt på kravene. Optimal løsning God nok løsning for alle instanser Noen instanser i polynomisk tid, worst case Gjennomsnittsanalyse
2 NP-komplett, hva nå?. Nøyaktige studier av eksponensialiteten - Fixed Paramter Tractability Hvilke instanser kan håndteres på «vanlig» måte?. Approximasjonsalgoritmer Godta en god nok løsning. 3. Gjennomsnittsanalyse Godta at ikke alle instanser løses i polynomisk tid. 4. Randomiserte algoritmer Godta at vi ikke et 0% sikre på løsningen (Monte Carlo), eller kjøretiden (Las Vegas). 5. Andre metoder, meta-heuristikker Simulated annealing, Genetiske algoritmer, etc. 6. Parallellisering (hjelper egentlig ikke )
3 Begrensning av instanser Det første vi bør gjøre når vi har vist at problemet vårt er NP-komplett, er å se om det kanskje er en naturlig begrensning på «våre» instanser. Grafene er kanskje planare? Det er kanskje et begrenset antall naboer? Tallene er kanskje aldri større enn 9999? etc Bak i Garey&Johnson står det en lang liste av NP-komplette problemer, og hvilke begrensninger som gjør at problemet fortsatt kan løses i polynomisk tid.
4 Fixed Parameter Tractability Feltet Parameterized Complexity (parametrisert kompleksitet) dreier seg om å studere hva det er ved et problem som gir eksponensialitet, for å forsøke å kontrollere denne når vi designer algoritmene. Ofte er det som gir eksponensialitet også begrenset i «våre» instanser. Vi måler her ikke lenger kompleksiteten kun i forhold til lengden av input. k-vertex COVER INSTANS: En graf G og et positivt heltall k. PARAMETER: k. QUESTION: Finnes et vertex cover C for G med C k? Nå kan vi snakke om kompleksiteten både i forhold til lengden av input og parameteren. Parameteren har ofte en naturlig begrens- ning, og vi ser på den som en konstant. Algoritme med kjøretid O(kn k ); takler n 0 5, k 50. g jø ( );, Exhaustive search har kjøretid O(n k * k ); takler ikke engang n00, k0.
5 Approksimering OPT ( ) ϵ OPT ϵ OPT Hvis P er et optimaliseringsproblem, sier vi at en algoritme A er en polynomisk tid ϵ-approksimasjon hvis: As kjøretid er polynomisk, og det finnes en konstant ϵ > 0 slik at A for alle instanser alltid gir en løsning med verdi innenfor et ϵ-intervall rundt den optimale løsningen. c( A( n)) - OPT Formelt betyr det at den relative feilen er mindre enn ϵ. OPT Vi gjør fortsatt worst case-analyse, vi forlanger bare ikke alltid HELT optimal løsning, vi godtar noe i nærheten.
6 Traveling Salesman [TSP] approksimasjon Triangelulikheten sier at c a + b for lengden av sidene i en trekant. (Hvis c > a + b, så blir det ikke noe triangel.) Vi kan anta denne ulikheten holder for avstander mellom byer. a c b AlgoritmeTSP- :. Finn et minste spenntre i grafen over byene.. Lag en rundreise ved å gå i treet på følgende måte Kostnaden av en slik rundtur kan ikke være mer enn OPT, ellers vil en optimal rundtur (OPT) minus en kant gi oss et spenntre som er mindre enn det minste spenntreet vi startet med. Vi har altså en ϵ-approksimasjon med ϵ.
7 Traveling Salesman [TSP] approksimasjon Teorem Uten triangeulikheten har ikke TSP noen ϵ-approksimasjon, med mindre P NP (og da er jo approksimasjon irrelevant). Bevis. Gitt ϵ lager vi en reduksjon fra HAMILTONICITY, som bare har en løsning i ϵ-intervallet rundt den optimale løsningen (OPT), nemlig den optimale løsningen selv. a b c d a b a +ϵn +ϵn d c b +ϵn +ϵn c +ϵn +ϵn d +ϵn +ϵn Kn4 Feilen ved å måtte bruke en ikke-kant (fra HAMILTONICITY-siden) er gitt ved Approksimert løsning - OPT (n + + ϵn) n ( + ϵ)n > ϵn. Derfor vil en ϵ-approksimasjon for TSP, sammen med reduksjonen, løse HAMILTONICITY i polynomisk tid.
8 VERTEX COVER approksimasjon, heuristikk Heuristikker brukes ofte når vi må løse umedgjørlige eller vanskelige (optimerings)problemer i praksis. Basert på tommelfingerregler. Heuristikker er forskjellige fra algoritmer ved at de ikke har noen garantier (ytelse/nøyaktighet). La oss se på to grådigheuristikker for VERTEX COVER-opt.: Heuristikk VC-H: Gjenta helt til alle kanter er dekket:.finn noden v med høyest grad og legg i vertex coveret;.fjern v(og dens kanter) fra grafen; Dette er dessverre ikke en ϵ-approksimasjon for noen fast ϵ. Teorem Heuristikk VC H er ikke en ϵ approksimasjon for VERTEX COVER opt Teorem Heuristikk VC-H er ikke en ϵ-approksimasjon for VERTEX COVER-opt for noen fast ϵ.
9 VERTEX COVER approksimasjon, heuristikk Bevis. Vi lager oss et moteksempel, som viser at heuristikken gjør det så dårlig vi vil. Lag en graf med noder a,..., a n and b,..., b n. Node b i kobles (kun) til node a i. En mengde c-noder kobles til a-nodene på følgende måte: Node c kobles til a and a ; node c kobles til a 3 og a 4, Node c n/+ kobles til a, a and a 3 ; node c n/+ kobles til a 4, a 5 and a 6, Node c m kobles til to a, a,..., a n. Node c m is kobles til alle a-noder.
10 VERTEX COVER approksimasjon, heuristikk Den optimale løsningen, OPT, er å plukke alle a-nodene, dette gir et vertex cover med n noder. Hva gjør VC-H? VC-H velger først alle c-nodene (med c m først), for å dekke opp c-a-kantene, før den før den velger a-noder eller b-noder for å dekke a-b-kantene. Antall c-noder er av orden n log n. Den relative feilen for VC-H på vårt moteksempel er altså VC H - OPT OPT ( nlogn + n) n nlogn log n n n ϵ Den relative feilen vokser som en funksjon av n, så vi kan få feilen så stor vi bare vil ved å øke n.
11 VERTEX COVER approksimasjon, heuristikk Heuristikk VC-H: Gjenta helt til alle kanter er dekket:.ta en kant e og legg begge endepunktene i vertex coveret;.fjern e og begge endepunktene fra grafen; (Det vi gjør er egentlig å finne en maksimal matching (grådig), og så legger vi alle de matchede nodene inn i vertex coveret.) Siden minst ett endepunkt av hver kant må ligge i vertex coveret, har vi at VC-H OPT. VC-H er altså en polynomisk-tid ϵ-approksimasjon for VERTEX COVER-opt med ϵ. Litt overraskende er denne naive algoritmen faktisk er beste (worst case) g ( ) approksimasjon av VERTEX COVER-opt.
12 Gjennomsnittsanalyse For å kunne snakke om gjennomsnitt og gjøre gjennomsnittsanalyser trenger vi å vite hvor sannsynlig instansene av et problem er. Problem (L, P r ) (Vi legger sannsynlighet på strengene i språket.) P r er en sannsynlighetsfunksjon over strengene i språket L: P r : Σ* [0,]. Σ xϵσ* P r (x). Gjennomsnittlig kjøretid for en algoritme A er gitt ved: T ( n ) TT ( x ) P ( x ) A A { x * x n } r Utfordringen er selvsagt å finne en realistisk sannsynlighetsmodell. Den naturlige løsningen (om man ikke vet noe spesielt) er å anta at alle instanser av lengde n har samme sannsynlighet (uniform distribusjon).
13 Stokastiske grafer (random graphs) Uniform modell G(n,N) Hver graf med n noder og N kanter er like sannsynlig. Med n noder og N kanter, så er P r ( G) # grafer n n n ( ) N N Binomial modell G(n,p) Hver mulige kant (i,j) j)ermedig i med sannsynlighet p. Sannsynligheten for at en kant er med avhenger ikke av om de andre kantene er med eller ei. Sannsynligheten for en graf G er her P ( G ) r p e( G ) ( p ) n e( G ) Når forventet antall kanter i binomial modell er lik antall kanter i uniform modell n er modellene så å si like, altså når p N.
14 Stokastiske grafer (random graphs) / t / d
15 GRAPH-3-COLORABILITY [G3C] I G3C er vi gitt en graf og skal avgjøre om det er mulig å fargelegge nodene i grafen med 3 farger, slik at ingen nabonoder får samme farge. Teorem: G3C, som er NP-komplett, er løsbart i gjennomsnittlig (forventet) konstant tid på binomial modell med p/ med en branch-and-bound- algoritme (worst case er fortsatt eksponensielt). Bevis: Strategien er å bruke den binomiale modellen for å beregne forventet tid det tar å finne et bevis for at grafen ikke er 3-fargbar. a b K 4 (en klikk [komplett graf] av størrelse 4) er et bevis for ikke-3-fargbarhet d c
16 GRAPH-3-COLORABILITY [G3C] Sannsynligheten for at 4 noder utgjør en K 4 er gitt ved ) ( p K P Forventet antall firenodersmengder vi må sjekke før vi finner en K er 8 ) ( 6 4 p K P r Forventet antall firenodersmengder vi må sjekke før vi finner en K 4 er ) ( ) ( * i i i i i i 8 ) ( )) ( ( ( - -6 ) i- -6 er sannsynligheten for at den første K 4 blir funnet i forsøk i. ) ( q Δ Δ * Følger av ( ) ) ( q q q q q q iq i i i i Δ Δ Δ Δ I gjennomsnitt behøver vi altså bare sjekke 8 firenodersmengder før vi finner en K 4.
17 Stokastiske grafer (random graphs) Kantsannsynligheten lar vi ofte være en funksjon av antall noder n, f.eks pp(n) n, eller pp(n)5/n. Når vi ser på slike stokastiske grafer, ser vi at nesten alle er ikke 3-fargbare sammenhengende Hamiltonske Når en stokastisk graf enten har, eller ikke har, en egenskap når n går mot uendelig, kalles dette en 0--lov. (Formelt snakker vi om at grenseverdien til sannsynligheten for en gitt egenskap skal gå mot 0 eller.)
18 Hamiltonicity (Gurevich & Shelahs algoritme) Algoritme fra ca 987 som finner Hamiltonsk sti i G(n.p) i forventet lineær tid!! Vanskeligheten består i at sannsynligheten for at grafen ikke er Hamiltonsk er for stor til å neglisjeres, P( minst isolert node) n. Algoritmen har 3 faser: Fase : Prøver å bygge en hamiltonsk sti i linær tid, O(n). Feiler med sannsynlighet P (n). Fase : Finn bevis for ikke-hamiltonisitet, eller bygg sti I tid O(n ). Feiler med sannsynlighet P (n). Fase 3: Ehastiesearch Exhaustive search (dynamic programming) itido( n ). Feiler ikke. Forventet kjøretid er O(n) + O(n ) P (n) + O( n ) P (n) P (n), som er O(n) hvis O(n ) P (n) O(n) og O( n ) P (n) P (n) O(n)
19 Randomisering Når 99, % er sikkert nok Det er ikke sikkert kravet om 00% garantert optimal/rett løsning er fruktbart. Vi er igjen tilbake til worst case-analyse, analyse vi forlanger bare ikke 00% sikkerhet når det gjelder løsning eller kjøretid. Vi lager algoritmer som kaster mynt/kron, (genererer og bruker random bits til å ta avgjørelser.)
20 Randomisering I problemet POLYNOMIAL IDENTITY blir vi gitt to polynomer, og skal avgjøre om de er like (gir samme verdi for alle mulige tilordninger til variablene). POLYNOMIAL NON-IDENTITY er å avgjøre om to polynomer er ulike. ( x + y )?? x + xy + y x + y Rask randomisert algoritme (Monte Carlo- algoritme): Gjett verdier for x og y, og beregn Venstre Side (VS) og Høyres Side (HS) Hvis VS HS, vet vi at polynomene er ulike. 3 Hvis VS HS, mistenker vi at polynomene er like, men kan ikke være sikre, så vi gjentar med andre verdier for x og y. Dette virker bra hvis det er mange sertfikater (verdier som gir ulikhet). Etter 00 forsøk er sannsynligheten for å ikke være sikker på ulikhet mindre enn -00.
21 Metaheuristikker Simulated Annealing (simulert størkning) Analogi med fysisk størkning (av f.eks et flytende metall) «Temperatur» T, størkningsplan «Uphill moves» med sannsynlighet e ( E/T) Genetic algorithms Analogi med evolusjonsteori «Individer», «fitness», «Paring» Nevrale nett Analogi med menneskehjernen «Nevroner», «Læring» Taboo search Analogi med kultur Forby søk der vi allerede har søkt med en tabu-liste
22 Metaheuristikker Simulated Annealing t l d /f /f l t l GA Nevrale nett
23 Parallellitet Noen problemer kan parallelliseres effektivt. Andre ser ut til å ha en iboende sekvensialitet. t Flere maskinmodeller: Boolske kretser Parallell Random Access Machine (CRCW,CREW,ERCW,EREW) Kompleksitet for Boolske kretser: «tid» (lengden av nettverket) og hardware (antall porter). Kompleksitet for PRAM: tid (antall steg) og hardware (antall prosessorer).
24 Parallellitet Gode nyheter Parallell tidsbruk sekvensielt minnebruk. En graf med n noder har n! mulige Hamiltonske stier.. Bruk n! prosessorer, hver sjekker en mulig løsning, i polynomisk tid. 3. Samle sammen svarene (OR). O(log n!) O(n log n). Dårlige nyheter Teorem: Med et polynomisk antall prosessorer er polynomisk parallell tid polynomisk sekvensiell tid Bevis: prosessor kan simulere ett steg for m prosessorer i sekvensiell tid t (m) O(m). Hvis t (n) er polynomisk parallell tid for en beregning, og m er polynomisk, så er t (m) t (n) polynomisk.
25 Parallell kompleksitet Parallelle kompleksitetsklasser Et formelt språk ligger i klassen NC hvis det kan gjenkjennes i polylogaritmisk l i parallell tid, O(log k n), med uniform polynomisk hardware. Dette er altså problemene som kan parallelliseres effektivt. P-komplett Åpent spørsmål om NC P. (Tilsvarende som det er åpent om P NP)
26 Andre metoder?
Kompleksitet 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
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
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?
DetaljerNP-kompletthet. «Hvordan gjøre noe lett for å vise at noe annet er vanskelig»
NP-kompletthet «Hvordan gjøre noe lett for å vise at noe annet er vanskelig» Gjennomgang Øving 12, maks flyt Oppskrift på et NPkomplett problem 1. Vise at problemet er veldig lett å sjekke 2. Vise at problemet
DetaljerHeuristisk søk 1. Prinsipper og metoder
Heuristisk søk Prinsipper og metoder Oversikt Kombinatorisk optimering Lokalt søk og simulert størkning Populasjonsbasert søk Traveling sales person (TSP) Tromsø Bergen Stavanger Trondheim Oppdal Oslo
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
DetaljerOversikt. Branch-and-bound. Hvordan løse NP-hard kombinatorisk optimering? Eks: Eksakt Min Vertex cover. Mulige løsninger representert som søketre
Oversikt Branch-and-bound Pål ætrom Branch and bound Prinsipper Min Vertex cover B & B eksempler Median string TP Hvordan løse NP-hard kombinatorisk optimering? Kombinatorisk opt. Løsningsrom, C Målfunksjon
DetaljerKontinuasjonseksamen i tdt4125 Algoritmekonstruksjon, videregående kurs
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Side 1 av 7 Eksamenforfattere: Ole Edsberg Kvalitetskontroll: Magnus Lie Hetland Kontakter under eksamen:
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
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
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
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
DetaljerMaks Flyt og NPkompletthet
Maks Flyt og NPkompletthet Flyt - Intro Mange av oppgavene om flyt handler om å se at Dette kan vi løse som et flytproblem. Resten er som regel kortsvarsoppgaver, og går på grunnleggende forståelse av
DetaljerKontinuasjonseksamen i tdt4125 Algoritmekonstruksjon, videregående kurs
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Side 1 av 7 Eksamenforfattere: Ole Edsberg Kvalitetskontroll: Magnus Lie Hetland Kontakter under eksamen:
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
DetaljerOversikt. Heuristisk søk 1. Kombinatorisk optimering Lokalt søk og simulert størkning Populasjonsbasert søk. Prinsipper og metoder
Oversikt Heuristisk søk Kombinatorisk optimering Lokalt søk og simulert størkning Populasjonsbasert søk Prinsipper og metoder Pål Sætrom Traveling sales person (TSP) Kombinatorisk optimering Trondheim
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
DetaljerAvanserte flytalgoritmer
Avanserte flytalgoritmer Magnus Lie Hetland, mars 2008 Stoff hentet fra: Network Flows av Ahua m.fl. (Prentice-Hall, 1993) Graphs, Networks and Algorithms, 2. utg., av Jungnickel (Springer, 2005) Repetisjon
DetaljerLøsningsforslag: Deloppgave om heuristiske søkemetoder ALGKON 2001, ordinær eksamen
Løsningsforslag: Deloppgave om heuristiske søkemetoder ALGKON 21, ordinær eksamen 14. september 23 Innledning En klikk i en graf G er en komplett subgraf av G. Det såkalte maksimum-klikk problemet består
DetaljerForelesning 23. Grafteori. Dag Normann april Oppsummering. Oppsummering. Oppsummering. Digresjon: Firefarveproblemet
Forelesning 23 Grafteori Dag Normann - 16. april 2008 Oppsummering En graf består av noder og kanter Kanter ligger inntil noder, og noder kan være naboer. Vi bør kjenne til begrepene om sammenhengende
DetaljerEksamensoppgave i TDT4120 Algoritmer og datastrukturer
Eksamensoppgave i TDT4120 Algoritmer og datastrukturer Faglig kontakt under eksamen Magnus Lie Hetland Tlf. 91851949 Eksamensdato 7. desember 2013 Eksamenstid (fra til) 0900 1300 Hjelpemiddelkode Målform/språk
DetaljerMAT1030 Diskret matematikk
MAT1030 Diskret matematikk Forelesning 23: Grafteori Dag Normann Matematisk Institutt, Universitetet i Oslo 16. april 2008 Oppsummering En graf består av noder og kanter Kanter ligger inntil noder, og
DetaljerOppsummering. MAT1030 Diskret matematikk. Oppsummering. Oppsummering. Forelesning 23: Grafteori
Oppsummering MAT1030 Diskret matematikk Forelesning 23: Grafteori Dag Normann Matematisk Institutt, Universitetet i Oslo 16. april 2008 En graf består av noder og kanter Kanter ligger inntil noder, og
DetaljerMAT1030 Forelesning 24
MAT1030 Forelesning 24 Grafteori og trær Roger Antonsen - 28. april 2009 (Sist oppdatert: 2009-04-28 22:32) Forelesning 24 Oppsummering En graf består av noder og kanter Kanter ligger inntil noder, og
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
DetaljerKjøretidsanalyse. Hogne Jørgensen
Kjøretidsanalyse Hogne Jørgensen Program Presentasjon/tips til Øving 5 Kompleksitetsanalyse Kahoot Rekurrensligninger Kahoot 2 Øving 5 Veibygging i Ogligogo Finne dyreste kant i minimalt spenntre Prim
DetaljerLP. Leksjon 9: Kapittel 13: Nettverk strøm problemer, forts.2
LP. Leksjon 9: Kapittel 13: Nettverk strøm problemer, forts.2 Vi tar siste runde om (MKS): minimum kost nettverk strøm problemet. Skal oppsummere algoritmen. Se på noen detaljer. Noen kombinatorisk anvendelser
DetaljerSøking i strenger. Prefiks-søking Naiv algoritme Knuth-Morris-Pratt-algoritmen Suffiks-søking Boyer-Moore-algoritmen Hash-basert Karp-Rabin-algoritmen
Søking i strenger Vanlige søkealgoritmer (on-line-søk) Prefiks-søking Naiv algoritme Knuth-Morris-Pratt-algoritmen Suffiks-søking Boyer-Moore-algoritmen Hash-basert Karp-Rabin-algoritmen Indeksering av
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å:
DetaljerINF2220: Time 12 - Sortering
INF0: Time 1 - Sortering Mathias Lohne mathialo Noen algoritmer Vi skal nå se på noen konkrete sorteringsalgoritmer. Gjennomgående i alle eksempler vil vi sortere tall etter tallverdi, men som diskutert
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
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
DetaljerKorteste vei problemet (seksjon 15.3)
Korteste vei problemet (seksjon 15.3) Skal studere et grunnleggende kombinatorisk problem, men først: En (rettet) vandring i en rettet graf D = (V, E) er en følge P = (v 0, e 1, v 1, e 2,..., e k, v k
DetaljerAvsluttende eksamen i TDT4125 Algoritmekonstruksjon, videregående kurs
TDT4125 2010-06-03 Kand-nr: 1/5 Avsluttende eksamen i TDT4125 Algoritmekonstruksjon, videregående kurs Eksamensdato 3. juni 2010 Eksamenstid 0900 1300 Sensurdato 24. juni Språk/målform Bokmål Kontakt under
DetaljerTuringmaskiner.
Turingmaskiner http://www.youtube.com/watch?v=e3kelemwfhy http://www.youtube.com/watch?v=cyw2ewoo6c4 Søking i strenger Vanlige søkealgoritmer (on-line-søk) Prefiks-søking Naiv algoritme Knuth-Morris-Pratt-algoritmen
DetaljerOverview. Heuristic search 1. Target function and optimization. Minimum vertex cover
Overview Heuristic search Combinatorial optimization Local search and simulated annealing Population-based search Principles and methods Pål Sætrom Traveling sales person (TSP) Combinatorial optimization
DetaljerNotater til INF2220 Eksamen
Notater til INF2220 Eksamen Lars Bjørlykke Kristiansen December 13, 2011 Stor O notasjon Funksjon Navn 1 Konstant log n Logaritmisk n Lineær n log n n 2 Kvadratisk n 3 Kubisk 2 n Eksponensiell n! Trær
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
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
DetaljerPG4200 Algoritmer og datastrukturer forelesning 10. Lars Sydnes 21. november 2014
PG4200 Algoritmer og datastrukturer forelesning 10 Lars Sydnes 21. november 2014 I Grafer Grafisk fremstilling av en graf D A B C Ikke-rettet graf Grafisk fremstilling av en graf D A B C Rettet graf Grafisk
DetaljerStein 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
DetaljerSøk i tilstandsrom. Backtracking (Kap. 10) Branch-and-bound (Kap. 10) Iterativ fordypning. Dijkstras korteste sti-algoritme A*-søk (Kap.
Søk i tilstandsrom Backtracking (Kap. 10) DFS i tilstandsrommet. Trenger lite lagerplass. Branch-and-bound (Kap. 10) BFS Trenger mye plass: må lagre alle noder som er «sett» men ikke studert. Kan også
DetaljerGrafteori. MAT1030 Diskret Matematikk. Oppsummering. Oppsummering. Forelesning 24: Grafer og trær. Dag Normann
MAT1030 Diskret Matematikk Forelesning 24: Grafer og trær Dag Normann Matematisk Institutt, Universitetet i Oslo Grafteori 21. april 2010 (Sist oppdatert: 2010-04-21 12:55) MAT1030 Diskret Matematikk 21.
DetaljerKORTESTE STI. Vektede Grafer. Korteste Sti. Dijkstra s Algoritme. Vektet Urettet Graf
Vektet Urettet Graf KORTESTE STI Finn: fra en Enkel Kilde til Alle Noder. (Engelsk: Single Source Shortest Path - SSSP) Vektede Grafer vekter på kanter representerer f.eks. avstand, kostnad, båndbredde...
DetaljerDynamisk programmering
Dynamisk programmering Metoden ble formalisert av Richard Bellmann (RAND Corporation) på 5-tallet. Programmering i betydningen planlegge, ta beslutninger. (Har ikke noe med kode eller å skrive kode å gjøre.)
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
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
DetaljerDynamisk programmering
Dynamisk programmering Metoden ble formalisert av Richard Bellmann (RAND Corporation) på 50-tallet. Programmering i betydningen planlegge, ta beslutninger. (Har ikke noe med kode eller å skrive kode å
DetaljerLP. Leksjon 8: Kapittel 13: Nettverk strøm problemer, forts.1
LP. Leksjon 8: Kapittel 13: Nettverk strøm problemer, forts.1 Vi fortsetter studiet av (MKS): minimum kost nettverk strøm problemet. Har nå en algoritme for beregning av x for gitt spenntre T Skal forklare
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
DetaljerLøsningsforslag til eksamen i fag SIF8010 Algoritmer og Datastrukturer Tirsdag 14. Desember 1999, kl
Student nr.: Side 1 av 7 Løsningsforslag til eksamen i fag SIF8010 Algoritmer og Datastrukturer Tirsdag 14. Desember 1999, kl 0900-1500 Faglig kontakt under eksamen: Arne Halaas, tlf. 73 593442. Hjelpemidler:
DetaljerNITH PG4200 Algoritmer og datastrukturer Løsningsforslag Eksamen 4.juni 2013
NITH PG00 Algoritmer og datastrukturer Løsningsforslag Eksamen.juni 0 Dette løsningsforslaget er til tider mer detaljert enn det man vil forvente av en eksamensbesvarelse. Det er altså ikke et eksempel
DetaljerAvsluttende eksamen i TDT4120 Algoritmer og datastrukturer
Avsluttende eksamen i TDT4120 Algoritmer og datastrukturer Eksamensdato 13. august 2012 Eksamenstid 0900 1300 Sensurdato 3. september Språk/målform Bokmål Kontakt under eksamen Magnus Lie Hetland (tlf.
DetaljerComputational Geometry
Computational Geometry Grafisk Databehandling 1. Convex hull konveks innhyling 2. Nærmeste par av punkter Convex hull La P være en mengde punkter i et k-dimensjonalt rom, P R k. (Vi skal for enkelthets
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
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»
DetaljerLøsningsforslag for eksamen i fag TDT4120 Algoritmer og datastrukturer Tirsdag 9. desember 2003, kl
TDT4120 2003-12-09 Stud.-nr: Antall sider: 1/7 Løsningsforslag for eksamen i fag TDT4120 Algoritmer og datastrukturer Tirsdag 9. desember 2003, kl. 0900 1500 Faglig kontakt under eksamen: Arne Halaas,
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
DetaljerLøsnings forslag i java In115, Våren 1998
Løsnings forslag i java In115, Våren 1998 Oppgave 1 // Inne i en eller annen klasse private char S[]; private int pardybde; private int n; public void lagalle(int i) if (i==n) bruks(); else /* Sjekker
DetaljerPrioritetskøer. Prioritetskøer. Binære heaper (vanligst) Prioritetskøer
Binære heaper (Leftist) Prioritetskøer Prioritetskøer er viktige i bla. operativsystemer (prosesstyring i multitaskingssystemer), og søkealgoritmer (A, A*, D*, etc.), og i simulering. Prioritetskøer Prioritetskøer
DetaljerINF Algoritmer: Design og effektivitet
INF 4130 Algoritmer: Design og effektivitet Velkommen Forelesere: Stein Krogdahl, steinkr at ifi.uio.no Petter Kristiansen pettkr at ifi.uio.no Lærebok: Algorithms: Sequential, Parallel, and Distributed,
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
DetaljerEksamensoppgave i TDT4120 Algoritmer og datastrukturer
Eksamensoppgave i TDT4120 Algoritmer og datastrukturer Faglig kontakt under eksamen Magnus Lie Hetland Tlf.!! 91851949 Eksamensdato! 15. august 2013 Eksamenstid (fra til)! 0900 1300 Hjelpemiddelkode D.
DetaljerLøsningsforslag for eksamen i fag SIF8010 Algoritmer og Datastrukturer Tirsdag 18. Desember 2000, kl
Student nr.: Side 1 av 5 Løsningsforslag for eksamen i fag SIF8010 Algoritmer og Datastrukturer Tirsdag 18. Desember 2000, kl 0900-1500 Faglig kontakt under eksamen: Arne Halaas, tlf. 73 593442. Hjelpemidler:
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
DetaljerMAT1140: Kort sammendrag av grafteorien
MAT1140, H-15 MAT1140: Kort sammendrag av grafteorien Dette notatet gir en kort oppsummering av grafteorien i MAT1140. Vekten er på den logiske oppbygningen, og jeg har utelatt all motivasjon og (nesten)
DetaljerGrafalgoritmer: Korteste vei
Grafalgoritmer: Korteste vei Korteste-vei problemer for vektede grafer * Single Source Shortest Path Problem Finn lengden av korteste vei fra én bestemt node til alle andre noder i grafen All-Pairs Shortest
DetaljerEksamensoppgave i TDT4120 Algoritmer og datastrukturer
Eksamensoppgave i TDT4120 Algoritmer og datastrukturer Faglig kontakt under eksamen Magnus Lie Hetland Tlf. 91851949 Eksamensdato 7. desember 2013 Eksamenstid (fra til) 0900 1300 Hjelpemiddelkode Målform/språk
DetaljerEksamensoppgave i TDT4120 Algoritmer og datastrukturer
Eksamensoppgave i TDT4120 Algoritmer og datastrukturer Faglig kontakt under eksamen Magnus Lie Hetland Tlf.!! 91851949 Eksamensdato! 15. august 2013 Eksamenstid (fra til)! 0900 1300 Hjelpemiddelkode D.
DetaljerHeuristiske søkemetoder II
Heuristiske søkemetoder II Lars Aurdal Intervensjonssenteret Lars.Aurdal@labmed.uio.no 4. september 23 Plan Hva er en heuristisk søkealgoritme? Hvorfor heuristiske søkealgoritmer framfor tilbakenøsting?
DetaljerLP. Leksjon 7. Kapittel 13: Nettverk strøm problemer
LP. Leksjon 7. Kapittel 13: Nettverk strøm problemer Skal studere matematiske modeller for strøm i nettverk. Dette har anvendelser av typen fysiske nettverk: internet, vei, jernbane, fly, telekommunikasjon,
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.
DetaljerIN Algoritmer og datastrukturer
IN00 - Algoritmer og datastrukturer HØSTEN 08 Institutt for informatikk, Universitetet i Oslo Forelesning 5: Grafer II Ingrid Chieh Yu (Ifi, UiO) IN00 8.09.08 / Dagens plan: Korteste vei en-til-alle vektet
DetaljerMinimum spenntrær. Lars Vidar Magnusson Kapittel 23. Kruskal Prim
Minimum Spenntrær Lars Vidar Magnusson 2.4.2014 Kapittel 23 Minimum spenntrær Kruskal Prim Minimum Spenntrær Et spenntre er et tre som spenner over alle nodene i en graf G = (V, E). Et minimum spenntre
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
DetaljerINF2220: Forelesning 2
INF2220: Forelesning 2 Mer om analyse av algoritmer Analyse av binære søketrær Balanserte søketrær Rød-svarte trær (kapittel12.2) B-trær (kapittel 4.7) ANALYSE AV ALGORITMER 2 Analyse av tidsforbruk Hvor
DetaljerINF-MAT 5380 - Geir Hasle - Leksjon 3 2
Leksjon 3 !"#$ Eksempler på DOP Alternative representasjoner Definisjon nabolag, -operator Lokalsøk Definisjon lokalt optimum Eksakt nabolag Prosedyre for lokalsøk Traversering av nabolagsgraf Kommentarer,
DetaljerMAT1140: Kort sammendrag av grafteorien
MAT1140: Kort sammendrag av grafteorien Dette notatet gir en kort oversikt over den delen av grafteorien som er gjennomgått i MAT1140 høsten 2013. Vekten er på den logiske oppbygningen, og jeg har utelatt
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 /
DetaljerAnvendelser av grafer
Grafer Anvendelser av grafer Passer for modeller/datastrukturer med usystematiske forbindelser Ikke-lineære og ikke-hierarkiske koblinger mellom dataobjektene Modellering av nettverk: Veisystemer/rutekart
DetaljerTMA4140 Diskret Matematikk Høst 2016
Norges teknisk naturvitenskapelige universitet Institutt for matematiske fag TMA4140 Diskret Matematikk Høst 2016 Seksjon 10.2 18 La G = (V,E) være en enkel graf med V 2. Ettersom G er enkel er de mulige
DetaljerDisjunkte mengder ADT
Binære relasjoner A A = {(x, y) x, y A}: mengden av ordnede par over A. Disjunkte mengder ADT Weiss kap. 8.1 8.5 Løser ekvivalensproblemet Lett og rask implementasjon Vanskelig tidsforbrukanalyse Ark 1
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.
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
DetaljerTo geometriske algoritmer, kap. 8.6
INF 4130, 18. november 2010 To geometriske algoritmer, kap. 8.6 Computational Geometry Stein Krogdahl Hovedkapittelet t (kap. 8) dreier seg generelt om devide-and-conquer eller splitt og hersk : Splitt
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
DetaljerEksamensoppgave i TDT4120 Algoritmer og datastrukturer
Eksamensoppgave i TDT4120 Algoritmer og datastrukturer Faglig kontakt under eksamen Magnus Lie Hetland Tlf. 91851949 Eksamensdato 11. august 2014 Eksamenstid (fra til) 0900 1300 Hjelpemiddelkode D. Ingen
DetaljerPG4200 Algoritmer og datastrukturer Forelesning 12
PG4200 Algoritmer og datastrukturer Forelesning 12 Lars Sydnes, NITH 30. april 2014 I. SIST: NOTAT OM HARDE PROBLEMER INNHOLD Håndterlige problemer: Problemer med kjente algoritmer med polynomisk kjøretid
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
DetaljerPrioritetskøer. Binære heaper Venstrevridde heaper (Leftist) Binomialheaper Fibonacciheaper
Prioritetskøer Binære heaper Venstrevridde heaper (Leftist) Binomialheaper Fibonacciheaper Prioritetskøer er viktige i bla. operativsystemer (prosesstyring i multitaskingssystemer), og søkealgoritmer (A,
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
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
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
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
Detaljerkap. 8.6 Computational Geometry Hovedkapittelet (kap. 8) dreier seg generelt om devide-and-conquer eller splitt og hersk :
INF 4130, 17. november 2011 kap. 8.6 Computational Geometry Stein Krogdahl Hovedkapittelet (kap. 8) dreier seg generelt om devide-and-conquer eller splitt og hersk : Splitt problemet opp i mindre problemer.
DetaljerOnline datingtjeneste The Hungarian Algorithm
Online datingtjeneste The Hungarian Algorithm Problemet Forestill deg at du har startet en online datingtjeneste hvor du lar brukerne sette opp en ønskeliste over hvilke andre brukere på siden de kunne
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
DetaljerLøsningsforslag: Deloppgave om heuristiske søkemetoder, ALGKON 2003, kontinuasjonseksamen
Løsningsforslag: Deloppgave om heuristiske søkemetoder, ALGKON 2003, kontinuasjonseksamen 1. september 2003 Deloppgave a I denne oppgaven skal vi ta for oss isomorfismer mellom grafer. To grafer G og H
DetaljerEksamen i fag SIF8010 Algoritmer og Datastrukturer Tirsdag 14. Desember 1999, kl
Student nr.: Side 1 av 7 Eksamen i fag SIF8010 Algoritmer og Datastrukturer Tirsdag 14. Desember 1999, kl 0900-1500 Faglig kontakt under eksamen: Arne Halaas, tlf. 73 593442. Hjelpemidler: Alle kalkulatortyper
Detaljer