(On)Doenlijke problemen
|
|
- Hanne de Ruiter
- 6 jaren geleden
- Aantal bezoeken:
Transcriptie
1 Fundamentele Informatica In3 005 Deel 2 College 1 Cees Witteveen Parallelle en Gedistribueerde Systemen Faculteit Informatie Technologie en Systemen Overzicht Inleiding - Relatie Deel 1 en Deel 2 - Doenlijke en Ondoenlijke problemen - P versus NP - Inhoud Deel 2 Intro Complexiteitsthorie - Complexiteit van programma s en problemen - Beslissingsproblemen - Karp reducties Relatie Deel 1 en Deel 2 (On)Doenlijke problemen Deel 1 Alle problemen Berekenbare problemen Doenlijke problemen Een probleem is doenlijk als het in polynomiale tijd op te lossen is (polynomiaal in de grootte van de invoer); Doenlijke problemen Deel 2 P : klasse van polynomiaal oplosbare problemen Ondoenlijke problemen Een probleem is ondoenlijk als er geen polynomiaal algoritme voor het probleem bestaat. waarom onderscheid: kijk naar volgende tabel
2 Tijdcomplexiteits functies Doenlijk (P) vss ondoenlijk tijd complexiteit O(n) O(n 2 ) O(n 3 ) O(2 n ) O(n!) omvang grootste instantie oplosbaar in t tijdseenheden n 1 n 2 n 3 n 4 n 5 huidig systeem 10x sneller systeem 10 n n n 3 n < n x sneller systeem 1000 n n 2 10 n 3 n < n 5 +1 voor ondoenlijke problemen is (constante) technologische speed-up van beperkt belang: Stel probleem heeft tijdcomplexiteit 2 n en speed up is c. Als een instantie ter grootte van m in een bepaalde hoeveelheid tijd kan worden opgelost, dan kan na de speed-up in dezelfde tijd een instantie ter grootte van < m + 2 log c opgelost worden. voor doenlijke problemen is speed-up van belang: Stel probleem heeft tijdcomplexiteit n k en speed up is c. Als een instantie ter grootte van m in een bepaalde hoeveelheid tijd kan worden opgelost, dan kan na de speed up in dezelfde tijd een instantie ter grootte van c 1/k.m opgelost worden. Voorbeelden (on)doenlijke problemen P en NP problemen in P sorteren, lineair programmeren, kortste pad bepaling vermoedelijk ondoenlijke problemen langste pad bepaling, prop. vervulbaarheid ondoenlijke problemen bepalen van alle diagnoses in digitale circuits. Eigenschap P-probleem oplossing in polynomiale tijd te construeren. oplossing in polynomiale tijd te verifiëren. Eigenschap NP-probleem (vermoedelijk ondoenlijk) niet bekend of oplossing in polynomiale tijd is te construeren. oplossing in polynomiale tijd te verifiëren. NP = niet-deterministisch polynomiale (tijd)
3 Vb NP-probleem instantie van freq. toewijzing Frequentietoewijzing Gegeven: - een k-tal verschillende frequenties f 1,, f k, - een n-tal locaties l 1,l 2,, l n van mobiele telefoons, met gegeven onderlinge afstanden d ij > 0; - een kritieke afstand D > 0. Vraag: - is er een toekenning T van frequenties aan locaties zodanig dat voor ieder tweetal locaties l i en l j met d ij D geldt: T(l i ) T(l j ). D = 4 frequenties k = 6 n =16 instantie van freq. toewijzing Centraal probleem: : P = NP? D geen polynomiale constructie: best bekende algoritme kost O(k n )-tijd oplossing te verifieren in O(n 2 )-tijd frequenties k P = NP? Voor NP problemen zijn tot nu toe alleen exponentiële algoritmen bekend; we weten niet of geldt dat P = NP of P NP. Belang: NP bevat groot aantal belangrijke problemen satisfiability van boolese formules padproblemen in grafen (TSP, Hamiltoons pad) cover problemen: set en vertex cover. rooster en schedulings problemen.
4 Inhoud colleges Deel 2 Literatuur en studiemateriaal inleiding complexiteitstheorie - reducties, complexiteitsklassen doenlijk vss ondoenlijk: P versus NP - NP-complete problemen, voorbij NP praktische aspecten van NP-problemen - pseudopolynomiale algoritmen - heuristieken bijzondere onderwerpen - quantum computing - zero-knowledge proof systems Literatuur B.M. Moret, The Theory of Computation Hfst aanvullende informatie zie blackboard course IN3005 voor Practicum college overzichten; tentamens en uitwerkingen; voorbeelden twee opgaven: correctheidsbewijs van een gegeven reductie ontwerpen van een reductie + correctheidsbewijs Practicum en tentamen Overzicht practicum twee opgaven: opgaven correctheidsbewijs van een gegeven reductie ontwerpen van een reductie + correctheidsbewijs groepsindeling zoals voor deel 1 afronden voor einde kwartaal 3 opgave 2 wordt verstrekt na voltooiing opgave 1 correctie: assistenten Roman van der Krogt en Maja van der Werf (dinsdag uur) tentamen meerkeuzevragen (±10 ) + open vragen (1 tot 2) Inleiding - Relatie Deel 1 en Deel 2 - Doenlijke en Ondoenlijke problemen - P versus NP - Inhoud Deel 2 Intro Complexiteitsthorie - Complexiteit van programma s en problemen - Beslissingsproblemen - Karp reducties
5 Complexiteit programma s Complexiteit programma s fibonacci functie fib(n) = 1 als n = 0, 1 fib(n-1) + fib(n-2) elders fib(n) = 1 als n = 0, 1 fib(n-1) + fib(n-2) elders programma 1 O(2 n ) procedure fibo1(n) begin if n < 2 then return 1 else return fibo(n-1)+fibo(n-2) end tijd complexiteit T(0) = 2; T(1) = 2; T(n) = 1 + T(n-1) + T(n-2) +1 voor n > 1 T(n) = O(2 n ) programma 2 procedure fibo2(n) begin O(n) programma 3 procedure fibo3(n) begin O(log n) a:= 1; b:=1; k:=1; while k < n do z:= a; a:= b; b:= z+b; k:= k+1; return b; if n < 2 then return 1 else M := mat([1,1],[1,0]); Z:= matpower(m,n-1); return Z(1,1)+Z(1,2); end end Complexiteit algoritmen versus problemen Complexiteit van probleem tijdcomplexiteit algoritme: aantal elementaire rekenstappen als functie van grootte van de input tijdcomplexiteit probleem tijdcomplexiteit algoritme voor probleem: vb fibonacci probleem: gegeven n 0, bepaal fib(n) tijdcomplexiteit algoritmen fibo1 : O(22^(log n) fibo2 : O(2 log n) ) fibo3 : O(log n) tijdcomplexiteit fibonacci probleem O(m) Nb: size input: m = O( log n) Complexiteit probleem maximale hoeveelheid tijd of ruimte die het beste algoritme voor oplossing van het probleem in het slechtste geval nodig heeft. Nb: complexiteit probleem doet uitspraak over complexiteit van alle algoritmen voor het probleem
6 Complexiteitstheorie Beslissingsproblemen (1) klassificatie van problemen naar maximale hoeveelheid tijd/ruimte die het beste algoritme voor oplossing van het probleem in het slechtste geval nodig heeft. beperking (voorlopig) tot beslissings problemen Definitie A is een beslissingsprobleem als alle instanties van A met ja ( yes ) of nee ( no ) beantwoord kunnen worden. Voorbeelden Satisfiability: Gegeven een propositionele formule F, is F vervulbaar? Clique: Gegeven een graaf G = (V, E) en een integer K > 0, heeft G een clique ter grootte van K? Beslissingsproblemen (2) Beslissingsproblemen: : vb Notatie D A verzameling van van alle alle instanties van van A I A instanties van van A Yes A No A alle alle yes-instanties alle alle no-instanties van van A van van A Vertex Cover (VC) - instantie: een graaf G = (V,E) en K Œ Z + - vraag: heeft G een vertex cover V Õ V ter grootte van K of minder, m.a.w. bestaat er een subset V ter grootte van hoogstens K zodat iedere kant e = {x,y} uit E tenminste een knoop uit V bevat? Traveling Sales Person (TSP) - instantie: een verzameling S van n steden, een intercity afstanden matrix D nxn met d ij Œ Z + en een integer B Œ Z + - vraag: bestaat er een tour langs alle steden met totale afstand B?
7 Beslissingsproblemen: reducties Eisen aan reductie Stel A en B beslissingsproblemen. A is niet essentieel moeilijker dan B ( A B ): er bestaat een efficiënte manier om A op te lossen met behulp van een algoritme voor B. idee reductie A naar B: fase 1: gebruik een polynomiaal algoritme om A instanties te transformeren naar B instanties; fase 2: gebruik een algoritme voor B om het antwoord te berekenen. reductie van A naar B moet efficient zijn (polynomiale tijd). reductie moet betrouwbaar zijn: dwz: als R transformatie is van A naar B dan moet gelden: als I A Œ Y A dan R(I A ) Œ Y B en als I A Œ N A dan R(I A ) Œ N B voor alle I A Œ D A : I A Œ Y A R(I A ) Œ Y B Karp-reducties reducties m Karp-reductie reductie: : vb A m B: voor alle I A Œ D A : I A Œ Y A R(I A ) Œ Y B R(Y A ) Y A N B A R Y B algoritme voor B yes B N B no R(N A ) algoritme voor A reductie van VERTEX COVER (VC) naar CLIQUE: input: G = ( V, E ), K Œ Z + ; output: yes alss VC ter grootte van K bestaat begin Laat G = ( V, E ) met V = V en E = { { v,w } v w Œ V, {v,w} œ E }; K = V - K return CLIQUE(G, K ) end Nb: CLIQUE is het algoritme voor het clique probleem; CLIQUE(G, K ) = yes alss G een clique ter grootte van K bevat anders no
8 Zo werkt de reductie Zo werkt de reductie G G vertex cover size 5 in G ( K ) clique size 3 in G ( V - K ) Hoe correctheid te bewijzen ga na dat transformatie polynomiaal is ga na dat yes-instanties van VC worden getransformeerd naar yes-instanties van CLIQUE ga na dat een getransformeerde yes-instantie van CLIQUE altijd afkomstig is van een oorspronkelijke yes-instantie van VC. Tot volgende week
Fundamentele Informatica
Fundamentele Informatica (IN3120 en IN3005 DOI nwe stijl) 20 augustus 2004, 9.00 11.00 uur Het tentamen IN3120 bestaat uit 10 meerkeuzevragen en 2 open vragen. Voor de meerkeuzevragen kunt u maximaal 65
Nadere informatieTW2020 Optimalisering
TW2020 Optimalisering Hoorcollege 11 Leo van Iersel Technische Universiteit Delft 25 november 2015 Leo van Iersel (TUD) TW2020 Optimalisering 25 november 2015 1 / 28 Vandaag Vraag Voor welke problemen
Nadere informatieTentamen IN3105. Complexiteitstheorie. 16 april 2012, uur
Faculteit Elektrotechniek, Wiskunde en Informatica Ti Delft Tentamen IN3105 Complexiteitstheorie 16 april 2012, 9.00-12.00 uur Dit tentamen bestaat uit 10 meerkeuzevragen, 5 korte (open) vragen en 2 open
Nadere informatieTentamen IN3105 Complexiteitstheorie
Tentamen IN3105 Complexiteitstheorie 31 maart, 9.00 12.00 uur - Dit tentamen bestaat uit 10 meerkeuzevragen, 5 korte (open) vragen en 2 open vragen. - Per meerkeuzevraag kunnen 0 tot 4 alternatieven juist
Nadere informatieHoofdstuk 17: Approximation Algorithms
Hoofdstuk 17: Approximation Algorithms Overzicht: Vorige week: Π NP-volledig Π waarschijnlijk niet polynomiaal oplosbaar 2 opties: 1 Optimaal oplossen, niet in polynomiale tijd (B&B, Cutting planes) 2
Nadere informatieElfde college complexiteit. 23 april NP-volledigheid III
college 11 Elfde college complexiteit 23 april 2019 NP-volledigheid III 1 TSP Als voorbeeld bekijken we het Travelling Salesman/person Problem, ofwel het Handelsreizigersprobleem TSP. Hiervoor geldt: TSP
Nadere informatieNP-Volledigheid. Wil zo snel mogelijke algoritmes om problemen op te lossen. De looptijd is polynomiaal: O n k - dat is heel erg mooi
NP-Volledigheid Wil zo snel mogelijke algoritmes om problemen op te lossen Gezien: selectie [O(n)], DFS [O(n + m)], MaxFlow [O nm n + m ], MST [O(n + m)], etc De looptijd is polynomiaal: O n k - dat is
Nadere informatie1 Complexiteit. of benadering en snel
1 Complexiteit Het college van vandaag gaat over complexiteit van algoritmes. In het boek hoort hier hoofdstuk 8.1-8.5 bij. Bij complexiteitstheorie is de belangrijkste kernvraag: Hoe goed is een algoritme?
Nadere informatieUitwerking tentamen Analyse van Algoritmen, 29 januari
Uitwerking tentamen Analyse van Algoritmen, 29 januari 2007. (a) De buitenste for-lus kent N = 5 iteraties. Na iedere iteratie ziet de rij getallen er als volgt uit: i rij na i e iteratie 2 5 4 6 2 2 4
Nadere informatieBenaderingsalgoritmen
Benaderingsalgoritmen Eerste hulp bij NP-moeilijkheid 1 Herhaling NP-volledigheid (1) NP: er is een polynomiaal certificaat voor jainstanties dat in polynomiale tijd te controleren is Een probleem A is
Nadere informatieTW2020 Optimalisering
TW2020 Optimalisering Hoorcollege 7 Leo van Iersel Technische Universiteit Delft 21 oktober 2015 Leo van Iersel (TUD) TW2020 Optimalisering 21 oktober 2015 1 / 20 Deze week: algoritmes en complexiteit
Nadere informatieTentamen TI3300 / IN3105 Complexiteitstheorie
Tentamen TI3300 / IN3105 Complexiteitstheorie 24 juni 2013, 9.00-12.00 uur - Dit tentamen bestaat uit 10 meerkeuzevragen, 5 korte (open) vragen en 2 open vragen. - Voor de meerkeuzevragen kunt u maximaal
Nadere informatieTW2020 Optimalisering
TW2020 Optimalisering Hoorcollege 7 Leo van Iersel Technische Universiteit Delft 26 oktober 2016 Leo van Iersel (TUD) TW2020 Optimalisering 26 oktober 2016 1 / 28 Deze week: analyseren van algoritmes Hoe
Nadere informatieDivide & Conquer: Verdeel en Heers vervolg. Algoritmiek
Divide & Conquer: Verdeel en Heers vervolg Algoritmiek Algoritmische technieken Vorige keer: Divide and conquer techniek Aantal toepassingen van de techniek Analyse met Master theorem en substitutie Vandaag:
Nadere informatieTwaalfde college complexiteit. 7 mei NP-volledigheid IV Cook-Levin Savitch 1
college 12 Twaalfde college complexiteit 7 mei 2019 NP-volledigheid IV Cook-Levin Savitch 1 Turing machine {0 n 1 n n 0} q Y 0/b, +1 b/b, 0 q N 0/0, +1 1/1, +1 b/b, 1 q 1 q 2 q 0 1/1, 0 b/b, +1 0/0, 0
Nadere informatieDe Resolutiemethode (Logica, hoofdstuk 15) Robinson (1965) TI1300 Redeneren en Logica
De Resolutiemethode (Logica, hoofdstuk 15) Robinson (1965) TI1300 Redeneren en Logica College 7: Resolutie Tomas Klos Algoritmiek Groep De Resolutiemethode De resolutiemethode is een methode waarmee je
Nadere informatieHoofdstuk 8: Algoritmen en Complexiteit
Hoofdstuk 8: Algoritmen en Complexiteit Vandaag: Hoe meten we de performance van algoritmen? Waar ligt de grens tussen een goed en een slecht algoritme? 22 oktober 2014 1 Vandaag: Hoe meten we de performance
Nadere informatieNegende college complexiteit. 9 april NP-volledigheid I: introductie
College 9 Negende college complexiteit 9 april 2019 NP-volledigheid I: introductie 1 Handelbaar/onhandelbaar -1- N 10 50 100 300 1000 log 2 N 3 5 6 8 9 5N 50 250 500 1500 5000 N log 2 N 33 282 665 2469
Nadere informatieTentamen combinatorische optimalisatie Tijd:
Tentamen combinatorische optimalisatie 26-05-2014. Tijd: 9.00-11.30 Tentamen is met gesloten boek. Beschrijf bij elke opgave steeds het belangrijkste idee. Notatie en exacte formulering is van minder belang.
Nadere informatieDiscrete Structuren. Piter Dykstra Opleidingsinstituut Informatica en Cognitie
Discrete Structuren Piter Dykstra Opleidingsinstituut Informatica en Cognitie www.math.rug.nl/~piter piter@math.rug.nl 22 februari 2009 INDUCTIE & RECURSIE Paragrafen 4.3-4.6 Discrete Structuren Week 3:
Nadere informatieNP-volledigheid. Algoritmiek
NP-volledigheid Polynomiale algoritmen of moeilijke problemen? Algoritme A is polynomiaal, als er een constante c bestaat, zodat het algoritme bij inputs van formaat n O(n c ) tijd gebruikt. Sommige problemen
Nadere informatieNetwerkstroming. Algoritmiek
Netwerkstroming Vandaag Netwerkstroming: definitie en toepassing Het rest-netwerk Verbeterende paden Ford-Fulkerson algoritme Minimum Snede Maximum Stroming Stelling Variant: Edmonds-Karp Toepassing: koppelingen
Nadere informatieNetwerkstroming. Algoritmiek
Netwerkstroming Netwerkstroming Toepassingen in Logistiek Video-streaming Subroutine in algoritmen 2 Vandaag Netwerkstroming: wat was dat ook alweer? Minimum Snede Maximum Stroming Stelling Variant: Edmonds-Karp
Nadere informatieHoofdstuk 13: Integer Lineair Programmeren
Hoofdstuk 13: Integer Lineair Programmeren Vandaag: Wat is Integer Lineair Programmeren (ILP)? Relatie tussen ILP en LP Voorbeeld 1: Minimum Spanning Tree (MST) Voorbeeld 2: Travelling Salesman Problem
Nadere informatiel e x e voor alle e E
Geselecteerde uitwerkingen Werkcollege Introduceer beslissingsvariabelen x e met x e = als lijn e in de boom zit en anders x e = 0. De doelfunctie wordt: min e E l e x e Voor elke deelverzameling S V met
Nadere informatieTW2020 Optimalisering
TW2020 Optimalisering Hoorcollege 13 Leo van Iersel Technische Universiteit Delft 9 december 2015 Leo van Iersel (TUD) TW2020 Optimalisering 9 december 2015 1 / 13 Vraag Wat moet ik kennen en kunnen voor
Nadere informatieTiende college algoritmiek. 13/21 april Gretige Algoritmen Algoritme van Dijkstra
Algoritmiek 017/Gretige Algoritmen Tiende college algoritmiek 13/1 april 017 Gretige Algoritmen Algoritme van Dijkstra 1 Algoritmiek 017/Gretige Algoritmen Muntenprobleem Gegeven onbeperkt veel munten
Nadere informatieSamenvatting college 1-12
Samenvatting college 1-12 Probleemformulering Duidelijk definiëren van beslissingsvariabelen Zinvolle namen voor variabelen bv x ij voor ingrediënt i voor product j, niet x 1,..., x 20 Beschrijving van
Nadere informatieTW2020 Optimalisering
TW2020 Optimalisering Hoorcollege 12 Leo van Iersel Technische Universiteit Delft 7 december 2016 Leo van Iersel (TUD) TW2020 Optimalisering 7 december 2016 1 / 25 Volgende week: Study guide Vragenuurtje
Nadere informatieDerde college complexiteit. 7 februari Zoeken
College 3 Derde college complexiteit 7 februari 2017 Recurrente Betrekkingen Zoeken 1 Recurrente betrekkingen -1- Rij van Fibonacci: 0,1,1,2,3,5,8,13,21,... Vanaf het derde element: som van de voorgaande
Nadere informatieTiende college algoritmiek. 2 mei Gretige algoritmen, Dijkstra
College 10 Tiende college algoritmiek mei 013 Gretige algoritmen, Dijkstra 1 Muntenprobleem Gegeven onbeperkt veel munten van d 1,d,...d m eurocent, en een te betalen bedrag van n (n 0) eurocent. Alle
Nadere informatieHeuristieken en benaderingsalgoritmen. Algoritmiek
Heuristieken en benaderingsalgoritmen Wat te doen met `moeilijke optimaliseringsproblemen? Voor veel problemen, o.a. optimaliseringsproblemen is geen algoritme bekend dat het probleem voor alle inputs
Nadere informatieDiscrete Structuren. Piter Dykstra Opleidingsinstituut Informatica en Cognitie
Discrete Structuren Piter Dykstra Opleidingsinstituut Informatica en Cognitie www.math.rug.nl/~piter piter@math.rug.nl 23 februari 2009 GRAFEN & BOMEN Paragrafen 6.1-6.4 Discrete Structuren Week 3 en 4:
Nadere informatieAchtste college complexiteit. 2 april Polynoomevaluatie Matrixvermenigvuldiging Euler- en Hamiltonkringen
College 8 Achtste college complexiteit 2 april 2019 Polynoomevaluatie Matrixvermenigvuldiging Euler- en Hamiltonkringen 1 Polynoomevaluatie Zij p(x) = a n x n + a n 1 x n 1 +... + a 1 x + a 0 een polynoom
Nadere informatieVierde college algoritmiek. 23/24 februari Complexiteit en Brute Force
Algoritmiek 2017/Complexiteit Vierde college algoritmiek 23/24 februari 2017 Complexiteit en Brute Force 1 Algoritmiek 2017/Complexiteit Tijdcomplexiteit Complexiteit (= tijdcomplexiteit) van een algoritme:
Nadere informatieDiscrete Structuren. Piter Dykstra Sietse Achterop Opleidingsinstituut Informatica en Cognitie
Discrete Structuren Piter Dykstra Sietse Achterop Opleidingsinstituut Informatica en Cognitie www.math.rug.nl/~piter piter@math.rug.nl 3 maart 2008 GRAFEN & BOMEN Paragrafen 6.1-6.4 Discrete Structuren
Nadere informatieUitgebreide uitwerking Tentamen Complexiteit, mei 2007
Uitgebreide uitwerking Tentamen Complexiteit, mei 007 Opgave. a. Een beslissingsboom beschrijft de werking van het betreffende algoritme (gebaseerd op arrayvergelijkingen) op elke mogelijke invoer. In
Nadere informatieOefententamen in2505-i Algoritmiek
TECHNISCHE UNIVERSITEIT DELFT Faculteit Elektrotechniek, Wiskunde en Informatica Oefententamen in2505-i Algoritmiek Maart 2007 Het gebruik van boek of aantekeningen tijdens dit tentamen is niet toegestaan.
Nadere informatieStelling. SAT is NP-compleet.
Het bewijs van de stelling van Cook Levin zoals gegeven in het boek van Sipser gebruikt niet-deterministische turing machines. Het is inderdaad mogelijk de klasse NP op een alternatieve wijze te definiëren
Nadere informatieAchtste college algoritmiek. 12 april Verdeel en Heers. Dynamisch Programmeren
Achtste college algoritmiek 12 april 2019 Verdeel en Heers Dynamisch Programmeren 1 Uit college 7: Partitie Partitie Partitie(A[l r]) :: // partitioneert een (sub)array, met A[l] als spil (pivot) p :=
Nadere informatieTiende college algoritmiek. 26 april Gretige algoritmen
Algoritmiek 01/10 College 10 Tiende college algoritmiek april 01 Gretige algoritmen 1 Algoritmiek 01/10 Muntenprobleem Gegeven onbeperkt veel munten van d 1,d,...d m eurocent, en een te betalen bedrag
Nadere informatieMinimum Opspannende Bomen. Algoritmiek
Minimum Opspannende Bomen Inhoud Het minimum opspannende bomen probleem Een principe om een minimum opspannende boom te laten groeien Twee greedy algoritmen + tijd en datastructuren: Het algoritme van
Nadere informatieTiende college algoritmiek. 14 april Gretige algoritmen
College 10 Tiende college algoritmiek 1 april 011 Gretige algoritmen 1 Greedy algorithms Greed = hebzucht Voor oplossen van optimalisatieproblemen Oplossing wordt stap voor stap opgebouwd In elke stap
Nadere informatieFundamentele Informatica IN 3005 Deel 2
Fundamentele Informatica IN 3005 Deel 2 Laatste College! Cees Witteveen witt@cs.tudelft.nl Onderwerpen Parallelle machines en complexe problemen - circuits als berekeningsmodel - wanneer loont parallellisme?
Nadere informatieOp zoek naar de Hamilton cykel. Mike Hoffmeister
Op zoek naar de Hamilton cykel Mike Hoffmeister June 29, 2010 Contents 1 Grafentheorie 2 1.1 Overige gebruikte definities..................... 3 2 De Hamilton Eigenschap 4 2.1 Voldoende en noodzakelijke
Nadere informatieAchtste college algoritmiek. 8 april Dynamisch Programmeren
Achtste college algoritmiek 8 april 2016 Dynamisch Programmeren 1 Werkcollege-opgave Dutch Flag Problem Gegeven een array gevuld met R, W, en B. Reorganiseer dit array zo dat van links naar rechts eerst
Nadere informatieModeluitwerking Tentamen Computationele Intelligentie Universiteit Leiden Informatica Vrijdag 11 Januari 2013
Modeluitwerking Tentamen Computationele Intelligentie Universiteit Leiden Informatica Vrijdag Januari 20 Opgave. Python Gegeven is de volgende (slechte) Python code:. def t(x): 2. def p(y):. return x*y
Nadere informatieAlgoritmen, Datastructuren en Complexiteit ( en ) Uitwerkingen
Universiteit Twente 2009-2010/2 Afdeling Informatica, Faculteit EWI Tentamen dinsdag 19 januari 2010, 8.45-12.15 Algoritmen, Datastructuren en Complexiteit (214020 en 214025) Uitwerkingen Bij dit tentamen
Nadere informatieElfde college algoritmiek. 18 mei Algoritme van Dijkstra, Heap, Heapify & Heapsort
Algoritmiek 018/Algoritme van Dijkstra Elfde college algoritmiek 18 mei 018 Algoritme van Dijkstra, Heap, Heapify & Heapsort 1 Algoritmiek 018/Algoritme van Dijkstra Uit college 10: Voorb. -1- A B C D
Nadere informatieSommige praktische IP problemen kunnen worden geformuleerd als optimalisering op een netwerk.
Netwerkanalyse (H3) Sommige praktische IP problemen kunnen worden geformuleerd als optimalisering op een netwerk. Deze problemen kunnen vaak als continu LP probleem worden opgelost. Door de speciale structuur
Nadere informatieAlgoritmiek. 2 februari Introductie
College 1 Algoritmiek 2 februari 2017 Introductie 1 Introductie -1- docent: Rudy van Vliet rvvliet@liacs.nl assistent werkcollege: Bart van Strien bartbes@gmail.com website: http://www.liacs.leidenuniv.nl/~vlietrvan1/algoritmiek/
Nadere informatieCredit cards, computationele complexiteit en consistentie uitspraken
Credit cards, computationele complexiteit en consistentie uitspraken Joost J. Joosten 14 december 2005 Praag en bier Sinds enkele maanden werk ik als post-doc aan de Czech Academy of Sciences in Praag.
Nadere informatieProgrammeermethoden. Recursie. week 11: november kosterswa/pm/
Programmeermethoden Recursie week 11: 21 25 november 2016 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Pointers Derde programmeeropgave 1 Het spel Gomoku programmeren we als volgt: week 1: pointerpracticum,
Nadere informatieTiende college algoritmiek. 4 mei Gretige Algoritmen Algoritme van Dijkstra
Tiende college algoritmiek mei 018 Gretige Algoritmen Algoritme van Dijkstra 1 Muntenprobleem Gegeven onbeperkt veel munten van d 1,d,...d m eurocent, en een te betalen bedrag van n (n 0) eurocent. Alle
Nadere informatieVierde college complexiteit. 26 februari Beslissingsbomen en selectie Toernooimethode Adversary argument
Complexiteit 2019/04 College 4 Vierde college complexiteit 26 februari 2019 Beslissingsbomen en selectie Toernooimethode Adversary argument 1 Complexiteit 2019/04 Zoeken: samengevat Ongeordend lineair
Nadere informatieKortste Paden. Algoritmiek
Kortste Paden Vandaag Kortste Paden probleem All pairs / Single Source / Single Target versies DP algoritme voor All Pairs probleem (Floyd s algoritme) Dijkstra s algoritme voor Single Source Negatieve
Nadere informatieTW2020 Optimalisering
TW2020 Optimalisering Hoorcollege 9 Leo van Iersel Technische Universiteit Delft 16 november 2016 Leo van Iersel (TUD) TW2020 Optimalisering 16 november 2016 1 / 28 Vandaag Integer Linear Programming (ILP)
Nadere informatieTW2020 Optimalisering
TW2020 Optimalisering Hoorcollege 8 Leo van Iersel Technische Universiteit Delft 2 november 2016 Leo van Iersel (TUD) TW2020 Optimalisering 2 november 2016 1 / 28 Minimum Opspannende Boom (Minimum Spanning
Nadere informatieAutomaten & Complexiteit (X )
Automaten & Complexiteit (X 401049) Inleiding Jeroen Keiren j.j.a.keiren@vu.nl VU University Amsterdam Materiaal Peter Linz An Introduction to Formal Languages and Automata (5th edition) Jones and Bartlett
Nadere informatieOnderwerpen Fundamentele Informatica IN 3120
Onderwerpen Fundamentele Informatica IN 3120 Probabilistische Turing Machines - Probabilistisch beslissen - de klasse en PP College 7 Cees Witteveen witt@cs.tudelft.nl Quantum Turing Machines - Quantum
Nadere informatieAlgoritmen en programmeren: deel 1 - overzicht
Algoritmen en programmeren: deel 1 - overzicht Ruud van Damme Creation date: 15 maart 2005 Update: 3: september 2006, 5 november 2006, 7 augustus 2007 Overzicht 1 Inleiding 2 Algoritmen 3 Programmeertalen
Nadere informatie8. Complexiteit van algoritmen:
8. Complexiteit van algoritmen: Voorbeeld: Een gevaarlijk spel 1 Spelboom voor het wespenspel 2 8.1 Complexiteit 4 8.2 NP-problemen 6 8.3 De oplossing 7 8.4 Een vuistregel 8 In dit hoofdstuk wordt het
Nadere informatieTW2020 Optimalisering
TW2020 Optimalisering Hoorcollege 8 Leo van Iersel Technische Universiteit Delft 28 oktober 2015 Leo van Iersel (TUD) TW2020 Optimalisering 28 oktober 2015 1 / 25 Definitie Een boom is een samenhangende
Nadere informatieMinimum Spanning Tree
Minimum Spanning Tree Wat is MST? Minimum spanning tree De meest efficiënte manier vinden om een verbonden netwerk op te bouwen Wat is een tree/boom? Graaf G: een verzameling knopen (vertices): V een verzameling
Nadere informatieHet Chinese Postbode Probleem. Marene Dimmendaal s
Het Chinese Postbode Probleem Marene Dimmendaal s4419553 Nijmegen 2018 Het Chinese Postbode Probleem Marene Dimmendaal s4419553 Bachelorscriptie Wiskunde aan de Radboud Universiteit te Nijmegen Geschreven
Nadere informatieVierde college complexiteit. 16 februari Beslissingsbomen en selectie
Complexiteit 2016/04 College 4 Vierde college complexiteit 16 februari 2016 Beslissingsbomen en selectie 1 Complexiteit 2016/04 Zoeken: samengevat Ongeordend lineair zoeken: Θ(n) sleutelvergelijkingen
Nadere informatie8C080 deel BioModeling en bioinformatica
Vijf algemene opmerkingen Tentamen Algoritmen voor BIOMIM, 8C080, 13 maart 2009, 09.00-12.00u. Het tentamen bestaat uit 2 delen, een deel van BioModeling & bioinformatics en een deel van BioMedische Beeldanalyse.
Nadere informatieExamen Datastructuren en Algoritmen II
Tweede bachelor Informatica Academiejaar 2012 2013, tweede zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele
Nadere informatieDerde college algoritmiek. 22 februari Complexiteit Toestand-actie-ruimte
Algoritmiek 2019/Complexiteit Derde college algoritmiek 22 februari 2019 Complexiteit Toestand-actie-ruimte 1 Algoritmiek 2019/Complexiteit Opgave 1 bomenpracticum Niet de bedoeling: globale (member-)variabele
Nadere informatieProgrammeermethoden. Recursie. Walter Kosters. week 11: november kosterswa/pm/
Programmeermethoden Recursie Walter Kosters week 11: 20 24 november 2017 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Vierde programmeeropgave 1 De Grote getallen programmeren we als volgt: week 1: pointerpracticum,
Nadere informatieDatastructuren. Analyse van algoritmen. José Lagerberg. FNWI, UvA. José Lagerberg (FNWI, UvA) Datastructuren 1 / 46
Datastructuren Analyse van algoritmen José Lagerberg FNWI, UvA José Lagerberg (FNWI, UvA) Datastructuren 1 / 46 Datastructuren en Algoritmen Datastructuren, 6 ECTS eerstejaars Bachelor INF Datastructuren,
Nadere informatieKortste Paden. Algoritmiek
Kortste Paden Toepassingen Kevin Bacon getal Six degrees of separation Heeft een netwerk de small-world eigenschap? TomTom / Google Maps 2 Kortste paden Gerichte graaf G=(N,A), en een lengte L(v,w) voor
Nadere informatieDynamisch Programmeren III. Algoritmiek
Dynamisch Programmeren III Vandaag Dynamisch programmeren met wat lastiger voorbeelden: Handelsreiziger Longest common subsequence Optimale zoekbomen Knapsack 2 - DP2 Handelsreiziger Een handelsreiziger
Nadere informatieVierde college complexiteit. 14 februari Beslissingsbomen
College 4 Vierde college complexiteit 14 februari 2017 Restant zoeken Beslissingsbomen 1 Binair zoeken Links := 1; Rechts := n; while Links Rechts do Midden := Links + Rechts 2 ; if X = A[Midden] then
Nadere informatieDatastructuren en Algoritmen
Datastructuren en Algoritmen Tentamen Vrijdag 6 november 2015 13.30-16.30 Toelichting Bij dit tentamen mag je gebruik maken van een spiekbriefje van maximaal 2 kantjes. Verder mogen er geen hulpmiddelen
Nadere informatie2WO12: Optimalisering in Netwerken
2WO12: Optimalisering in Netwerken Leo van Iersel Technische Universiteit Eindhoven (TU/E) en Centrum Wiskunde & Informatica (CWI) 10 maart 2014 http://homepages.cwi.nl/~iersel/2wo12/ l.j.j.v.iersel@gmail.com
Nadere informatieAutomaten. Informatica, UvA. Yde Venema
Automaten Informatica, UvA Yde Venema i Inhoud Inleiding 1 1 Formele talen en reguliere expressies 2 1.1 Formele talen.................................... 2 1.2 Reguliere expressies................................
Nadere informatie2WO12: Optimalisering in Netwerken
2WO12: Optimalisering in Netwerken Leo van Iersel Technische Universiteit Eindhoven (TU/E) en Centrum Wiskunde & Informatica (CWI) 27 februari 2014 http://homepages.cwi.nl/~iersel/2wo12/ l.j.j.v.iersel@gmail.com
Nadere informatieComplexiteit van berekeningen
Logica in actie H O O F D S T U K 7 Complexiteit van berekeningen We hebben nu al een paar keer gezien dat logica nauw verbonden is met processen die informatie bewerken en overdragen. Het proces bij uitstek
Nadere informatieDerde college algoritmiek. 23 februari Complexiteit Toestand-actie-ruimte
Algoritmiek 2018/Complexiteit Derde college algoritmiek 2 februari 2018 Complexiteit Toestand-actie-ruimte 1 Algoritmiek 2018/Complexiteit Tijdcomplexiteit Complexiteit (= tijdcomplexiteit) van een algoritme:
Nadere informatieHoorcollege Logica. Hans-Dieter A. Hiep
Hoorcollege Logica Hans-Dieter A. Hiep Agenda 1. Horn-formules 2. Vervulbaarheidsprobleem Validiteit en vervulbaarheid Gegeven een formule φ in de (klassieke) propositielogica. Definitie φ is valide voor
Nadere informatieGerichte Grafen Boolese Algebra s &. Logische Netwerken
Discrete Structuren Piter Dykstra Opleidingsinstituut Informatica en Cognitie www.math.rug.nl/~piter piter@math.rug.nl 10 maart 2009 Gerichte Grafen Boolese Algebra s &. Logische Netwerken. Paragrafen
Nadere informatieInleiding Programmeren 2
Inleiding Programmeren 2 Gertjan van Noord November 26, 2018 Stof week 3 nogmaals Zelle hoofdstuk 8 en recursie Brookshear hoofdstuk 5: Algoritmes Datastructuren: tuples Een geheel andere manier om te
Nadere informatieREEKS II. Zaterdag 6 november 2010, 11u
TEST INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCHAPPEN - ACADEMIEJAAR 2010-2011 REEKS II Zaterdag 6 november 2010, 11u NAAM :... VRAAG 1: AFSTAND [5 PUNTEN] In deze oefening gaan we opzoek naar identieke
Nadere informatieDatastructuren en algoritmen voor CKI
Datastructuren en algoritmen voor CKI Jeroen Bransen 1 11 september 2015 1 met dank aan Hans Bodlaender en Gerard Tel Heaps en heapsort Heap 1 2 3 4 5 6 7 8 9 10 16 14 10 8 7 9 3 2 4 1 16 14 10 8 7 9 3
Nadere informatieUitgebreide uitwerking Tentamen Complexiteit, juni 2017
Uitgebreide uitwerking Tentamen Complexiteit, juni 017 Opgave 1. a. Een pad van de wortel naar een blad stelt de serie achtereenvolgende arrayvergelijkingen voor die het algoritme doet op zekere invoer.
Nadere informatieUitgebreide uitwerking Tentamen Complexiteit, juni 2018
Uitgebreide uitwerking Tentamen Complexiteit, juni 018 Opgave 1. a. Een pad van de wortel naar een blad stelt de serie achtereenvolgende arrayvergelijkingen voor die het algoritme doet op zekere invoer.
Nadere informatiePuzzels en wiskunde. Inleiding. Algoritme. Sudoku. 22 Puzzels en wiskunde
Een miljoen dollar verdienen in de kerstvakantie? Het enige dat u hoeft te doen, is een polynomiaal algoritme te vinden om een sudoku mee op te lossen. Niels Oosterling schetst waar u dan rekening mee
Nadere informatieGreedy algoritmes. Algoritmiek
Greedy algoritmes Algoritmiek Algoritmische technieken Trucs, methoden, paradigma s voor het ontwerpen van algoritmen Dynamisch Programmeren Divide & Conquer Greedy 2 Greedy algoritme Bouwt de oplossing
Nadere informatieTiende college algoritmiek. 14 april Dynamisch Programmeren, Gretige Algoritmen, Kortste Pad met BFS
Algoritmiek 2016/Dynamisch Programmeren Tiende college algoritmiek 14 april 2016 Dynamisch Programmeren, Gretige Algoritmen, Kortste Pad met BFS 1 Algoritmiek 2016/Dynamisch Programmeren Houtzaagmolen
Nadere informatieOefententamen in2505-i Algoritmiek
TECHNISCHE UNIVERSITEIT DELFT Faculteit Elektrotechniek, Wiskunde en Informatica Oefententamen in2505-i Algoritmiek Maart 2007 Het gebruik van boek of aantekeningen tijdens dit tentamen is niet toegestaan.
Nadere informatieMMI. The Digital World 4. Peter van Kranenburg
MMI The Digital World 4 Peter van Kranenburg Intro Vandaag: Terugblik vorige week Leren programmeren Algoritmes Terugblik Hogere-orde programmeertalen maken het schrijven van code eenvoudiger. Je hoeft
Nadere informatieOptimalisering en Complexiteit, College 1. Han Hoogeveen, Utrecht University
Optimalisering en Complexiteit, College 1 Han Hoogeveen, Utrecht University Gegevens Docent : Han Hoogeveen : j.a.hoogeveen@uu.nl Vak website : http://www.cs.uu.nl/docs/vakken/opt/ Student assistenten
Nadere informatieTransport-, Routing- en Schedulingproblemen. Wi4062TU / Wi487TU / a86g. Uitwerkingen
Transport-, Routing- en Schedulingproblemen Wi4062TU / Wi487TU / a86g Uitwerkingen 28-03-2003 1 Docenten Onderdeel a Er zijn 6 vakken V 1, V 2,..., V 6. Vak V j heeft een vraag b j = 1, voor j = 1, 2,...,
Nadere informatieTweede college complexiteit. 12 februari Wiskundige achtergrond
College 2 Tweede college complexiteit 12 februari 2019 Wiskundige achtergrond 1 Agenda vanmiddag Floor, Ceiling Rekenregels logaritmen Tellen Formele definitie O, Ω, Θ met voorbeelden Stellingen over faculteiten
Nadere informatieZevende college algoritmiek. 24 maart Verdeel en Heers
Zevende college algoritmiek 24 maart 2016 Verdeel en Heers 1 Verdeel en heers 1 Divide and Conquer 1. Verdeel een instantie van het probleem in twee (of meer) kleinere instanties 2. Los de kleinere instanties
Nadere informatie2 Recurrente betrekkingen
WIS2 1 2 Recurrente betrekkingen 2.1 Fibonacci De getallen van Fibonacci Fibonacci (= Leonardo van Pisa), 1202: Bereken het aantal paren konijnen na één jaar, als 1. er na 1 maand 1 paar pasgeboren konijnen
Nadere informatieInleiding Programmeren 2
Inleiding Programmeren 2 Gertjan van Noord November 28, 2016 Stof week 3 nogmaals Zelle hoofdstuk 8 en recursie Brookshear hoofdstuk 5: Algoritmes Datastructuren: tuples Een geheel andere manier om te
Nadere informatieRecursion. Introductie 37. Leerkern 37. Terugkoppeling 40. Uitwerking van de opgaven 40
Recursion Introductie 37 Leerkern 37 5.1 Foundations of recursion 37 5.2 Recursive analysis 37 5.3 Applications of recursion 38 Terugkoppeling 40 Uitwerking van de opgaven 40 Hoofdstuk 5 Recursion I N
Nadere informatieHonours projecten BSc Informatica: twee voorstellen
Honours projecten BSc Informatica: twee voorstellen mogelijk ook geschikt voor BSc Kunstmatige Intelligentie Alban Ponse section Theory of Computer Science Informatics Institute, University of Amsterdam
Nadere informatie