Fundamentele Informatica IN 3005 Deel 2

Vergelijkbare documenten
Onderwerpen Fundamentele Informatica IN 3120

(On)Doenlijke problemen

Quantum computing. Dirk Nuyens. dept. computerwetenschappen KULeuven.

Vorig college. IN2505-II Berekenbaarheidstheorie. Turingmachines. Turingmachine en Taal. College 2

Beslisbare talen (1) IN2505-II Berekenbaarheidstheorie. Beslisbare talen (2) Beslisbare talen (3) De talen: College 7

Stelling. SAT is NP-compleet.

Negende college complexiteit. 9 april NP-volledigheid I: introductie

Twaalfde college complexiteit. 7 mei NP-volledigheid IV Cook-Levin Savitch 1

Tentamen IN3105 Complexiteitstheorie

Vorig college. IN2505-II Berekenbaarheidstheorie. Voorbeeld NDTM. Aanbevolen opgaven. College 3

Tentamen IN3105. Complexiteitstheorie. 16 april 2012, uur

TW2020 Optimalisering

Uitwerking tentamen Analyse van Algoritmen, 29 januari

Tentamen in2505-ii Berekenbaarheidstheorie

NP-Volledigheid. Wil zo snel mogelijke algoritmes om problemen op te lossen. De looptijd is polynomiaal: O n k - dat is heel erg mooi

Vorig college. IN2505-II Berekenbaarheidstheorie College 4. Opsommers versus herkenners (Th. 3.21) Opsommers

TW2020 Optimalisering

Fundamentele Informatica

Tentamen TI3300 / IN3105 Complexiteitstheorie

NP-volledigheid. Algoritmiek

Elfde college complexiteit. 23 april NP-volledigheid III

Paradox van zelfreproductie. IN2505-II Berekenbaarheidstheorie. Zelfreproductie? Programma s en zelfreproductie. College 11.

IN2505 II Berekenbaarheidstheorie. IN2505-II Berekenbaarheidstheorie. Practicum: Inschrijven. Practicum

Divide & Conquer: Verdeel en Heers vervolg. Algoritmiek

Het computationeel denken van een informaticus Maarten van Steen Center for Telematics and Information Technology (CTIT)

1 Complexiteit. of benadering en snel

Uitgebreide uitwerking Tentamen Complexiteit, mei 2007

TW2020 Optimalisering

IN2505 II Berekenbaarheidstheorie Tentamen Maandag 2 juli 2007, uur

Logische Complexiteit

Getallensystemen, verzamelingen en relaties

Quantum aanvallen op de 3-round Feistel Cipher

Masterproef Quantum Computing

Automaten en Berekenbaarheid

Benaderingsalgoritmen

Module Limieten van de berekenbaarheid : antwoorden

Quantum-computing toegepast op het n-queens probleem

Q-bits en Quantumcomputers

Gödels theorem An Incomplete Guide to Its Use and Abuse, Hoofdstuk 3

8C080 deel BioModeling en bioinformatica

Elfde college algoritmiek. 18 mei Algoritme van Dijkstra, Heap, Heapify & Heapsort

Hoofdstuk 8: Algoritmen en Complexiteit

Logische Complexiteit Hoorcollege 12

Waarmaken van Leibniz s droom

Algoritmen, Datastructuren en Complexiteit ( en ) Uitwerkingen

Zevende college Algoritmiek. 6 april Verdeel en Heers

Zevende college algoritmiek. 24 maart Verdeel en Heers

Inleiding Programmeren 2

Automaten & Complexiteit (X )

Samenvatting college 1-12

Examen Datastructuren en Algoritmen II

Zevende college algoritmiek. 23/24 maart Verdeel en Heers

8. Complexiteit van algoritmen:

Uitgebreide uitwerking Tentamen Complexiteit, juni 2018

Discrete Structuren. Piter Dykstra Opleidingsinstituut Informatica en Cognitie

Practicum Ox intro. Practicum Ox intro. VU Numeriek Programmeren 2.5. Charles Bos. Vrije Universiteit Amsterdam. 3 april /18

Berekenbaarheid 2015 Uitwerkingen Tentamen 5 november 2015

Uitgebreide uitwerking Tentamen Complexiteit, juni 2017

De Kwantumcomputer. Patrick De Causmaecker Katholieke Universiteit Leuven Campus Kortrijk

Vierde college complexiteit. 26 februari Beslissingsbomen en selectie Toernooimethode Adversary argument

Algoritmes en Priemgetallen. Hoe maak je een sleutelpaar voor RSA?

Vierde college algoritmiek. 23/24 februari Complexiteit en Brute Force

Fundamenten van de Informatica

TU Delft. TU Delft. TU Delft. TU Delft. IN3100 Fundamentele Informatica. Practicum. Practicum: Inschrijven. Practicum: LET OP

Gegevens invullen in HOOFDLETTERS en LEESBAAR, aub. Belgische Olympiades in de Informatica (duur : maximum 1u15 )

Discrete Structuren. Piter Dykstra Sietse Achterop Opleidingsinstituut Informatica en Cognitie

DomJudge-Practicum. Open Dag UU

Vierde college complexiteit. 16 februari Beslissingsbomen en selectie

Tiende college algoritmiek. 2 mei Gretige algoritmen, Dijkstra

Vierde college complexiteit. 14 februari Beslissingsbomen

Inleiding Programmeren 2

TENTAMEN Basismodellen in de Informatica VOORBEELDUITWERKING

Limits of algorithmic computation. Introductie 213. Leerkern 214. Zelftoets 222. Terugkoppeling 223

Discrete Structuren. Piter Dykstra Opleidingsinstituut Informatica en Cognitie

Cover Page. The handle holds various files of this Leiden University dissertation

c, X/X a, c/λ a, X/aX b, X/X

Berekenbaarheid, onberekenbaarheid en complexiteit: een aanvullende studie. Gijs Vermeulen

Tiende college algoritmiek. 13/21 april Gretige Algoritmen Algoritme van Dijkstra

REEKS I. Zaterdag 6 november 2010, 9u

Derde college complexiteit. 7 februari Zoeken

Sequentiële Logica. Processoren 24 november 2014

start -> id (k (f c s) (g s c)) -> k (f c s) (g s c) -> f c s -> s c

Computationale Intelligentie Dirk Thierens

Credit cards, computationele complexiteit en consistentie uitspraken

Programmeren A. Genetisch Programma voor het Partitie Probleem. begeleiding:

Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms

Hoofdstuk 13: Integer Lineair Programmeren

Automaten. Informatica, UvA. Yde Venema

Semantiek (2IT40) Jos Baeten. HG 7.19 tel.: Hoorcollege 3 (12 april 2007)

Discrete Wiskunde 2WC15, Lente Jan Draisma

Ter Leering ende Vermaeck

Vierde college algoritmiek. 2 maart Toestand-actie-ruimte Exhaustive Search

Netwerkstroming. Algoritmiek

Twaalfde college algoritmiek. 13 mei Branch & Bound Heap, Heapsort & Heapify

Recursion. Introductie 37. Leerkern 37. Terugkoppeling 40. Uitwerking van de opgaven 40

Elliptische krommen en digitale handtekeningen in Bitcoin

Het vreemde van de Quantum mechanica

n-queens Local Search met Conflict Minimalizatie

MARKOV MODEL MET KOSTEN In Markov modellen zijn we vaak geïnteresseerd in kostenberekeningen.

Controle structuren. Keuze. Herhaling. Het if statement. even1.c : testen of getal even of oneven is. statement1 statement2

Transcriptie:

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? Random en Quantum Turing Machines - Quantum computing - Quantum complexiteit Turing machines voor onberekenbare problemen - hoe het stop probleem op te lossen - lerende machines - boost your IQ

Parallelle berekeningen: circuits als berekeningsmodel Een (m,n) circuit is een gerichte acyclische graaf (DAG). Knopen: m+n poorten (gates), verbonden door lijnen. De eerste m gates zijn input gates, de overige n gates zijn circuit gates, met g m+n de output gate. Iedere gate berekent een boolese functie. g 18 g 10 g 1 g 9

Parallelle berekeningen: PGS circuits hardware sequentiële tijd size(c) = aantal circuit gates van C depth(c) = lengte langste pad van input element naar output parallelle tijd size = 9 depth = 5

Voorbeeld: : parity functie f(x 1,x 2,x 3,x 4 ) = (x 1 +x 2 +x 3 +x 4 ) mod 2 Ÿ Ÿ size = O(n) depth = O(log n) Ÿ Ÿ Ÿ x 1 x 2 x 3 Ÿ x4 x 4

Circuit families Voor iedere input grootte n is er een circuit C n nodig om berekening uit te voeren: algoritme specificatie { C 1, C 2,..., C n, } Resultaat Als P/poly NP dan heeft geen enkel NPC probleem polynomiale circuits.

Wanneer loont parallellisme een probleem is parallelliseerbaar als het kan worden opgelost - in extreem korte tijd NC NC = Nick s class polylogaritmische tijd depth = O(log O(1) n) - met een redelijk aantal processoren polynomiaal begrensd # processoren size = O(n O(1) )

NC : realistisch parallellisme PGS Een NC-algoritme is een algoritme dat in O(log O(1) )- tijd en met O(n O(1) ) processoren kan worden uitgevoerd. Er geldt: NC Õ P. Een NC-reductie van probleem A naar probleem B NC is een Karp-reductie berekenbaar met een NC algoritme P-complete problemen: A is P-compleet als A Œ P en voor iedere B Œ P geldt B NC A. Vermoeden : P - NC

Voorbeeld NC-probleem probleem: PGS max van een rij depth = O(log n) 9 size = O( n) 8 9 8 7 3 9 5 8 1 7 3 2 9 6

NC : vervolg PGS Voorbeeld P-compleet probleem: Naam : Instantie Circuit Value Problem (CVP) Gegeven een boolean circuit met AND, OR en NOT poorten en binaire inputs x 1, x 2,, x n en binaire output y. Vraag Geldt y = 1 voor de inputs x 1, x 2,, x n? Resultaat: CVP is P-compleet onder NC-reducties. Andere voorbelden: LP, unificatie in Prolog, Depth First Search Als P-complete problemen efficient parallelliseerbaar zijn dan geldt P = NC. Vermoeden: P-complete problemen zijn niet efficient parallelliseerbaar

Onderwerpen Parallelle machines en complexe problemen - circuits als berekeningsmodel - wanneer loont parallellisme? Random en Quantum Turing Machines Turing machines voor onberekenbare problemen - hoe het stop probleem op te lossen - lerende machines - boost your IQ

Test of polynoom 0 input: polynoom p(x 1,x 2,..., x n ), integer N > 0 output: yes or no begin k : = 0; d:= degree(p); while k < N do for i =1 to n do a i := random(-n.d, +n.d) if p(a 1,a 2,..., a n ) 0 then return no else k := k+1 return yes end Nb: Pr [ output yes p(x) 0 ] 0.5 N

randomized complexity Probabilistische Turingmachines (PrTm): toestandsovergangsfunctie specificeert kans Pr[ (q..) (q, input, ) ] RP (Klasse problemen met Monte Carlo algoritmen) A in RP als er een polynomiale PrTM M bestaat waarvoor geldt: x Œ Y A Pr ( M(x) = accept] 0.5 (alleen false negatives) x œ Y A Pr ( M(x) = reject ] = 1 co-rp A in co-rp als er een polynomiale PrTM M bestaat waarvoor geldt: x œ Y A Pr ( M(x) = reject ] 0.5 (alleen false positives) x Œ Y A Pr ( M(x) = accept ] = 1 ZPP = RP «co-rp (klasse problemen met Las Vegas algoritmen) [ Intuitief: run RP en co-rp algoritme totdat RP-algoritme accepteert of co-rp algoritme verwerpt. De kans dat dit na k ronden nog niet gebeurd is, is kleiner dan 0.5 k ]

randomized complexity PP A in PP als er een polynomiale PrTM M bestaat waarvoor geldt: x Œ Y A Pr ( M(x) = accept] 0.5 x œ Y A Pr ( M(x) = reject ] 0.5 BPP A in BPP als er een polynomiale PrTM M bestaat waarvoor geldt: x Œ Y A Pr ( M(x) = accept] 0.75 x œ Y A Pr ( M(x) = reject ] 0.75 Relaties: ZPP Õ RP Õ NP Õ PP en RP Õ BPP Õ PP als BPP Õ NP dan NP = RP m.a.w. niet waarschijnlijk dat BPP Õ NP. BPP Õ S 2 «P 2 alle problemen in BPP hebben polynomiale circuits

P, NP, ZPP, RP, BPP en PP PP Co-NPC NPC BPP Co-NP co-rp ZPP P RP NP

Quantum Computing Conventionele machines opereren op 0-1 bitrijtjes met logische poorten (AND, OR, NOR, NAND,... ) Quantum computers - opereren op quantum bits (qubit). Een qubit kent twee basistoestanden: spin-down ( Ø of 0 >) en spin-up ( of 1 > ). - Een rijtje van k-qubits kan in een superpositie van 2 k toestanden verkeren (parallellisme!) - alternatieve berekeningspaden van een quantum machine kunnen interfereren

Quantum Computing Conventionele machines opereren op 0-1 bitrijtjes met logische poorten (AND, OR, NOR, NAND,... ) Quantum computers - opereren op quantum bits (qubit). Een qubit kent twee basistoestanden: spin-down ( 0>) en spin-up ( 1> ). - Een qubit bevindt kan zich ook in een superpositie van toestanden bevinden: a 0> + b 1> met a 2 + b 2 = 1. - Meting van zo n toestand resulteert in een basistoestand: 0> met kans a 2 en 1> met kans b 2 - Een k-qubit systeem kan bestaan in iedere superpositie van de 2 k basistoestanden: a 1 000 0> + a 2 000 1> +... + a 2^k 111 1> met a 2 i = 1

Quantum Computing een niet geobserveerd quantum systeem evolueert volgens een unitaire tranformatie Zo n transformatie T opereert op een superpositie vector u T = (a 1, a 2,, a 2^n ) en heeft de eigenschap dat (u T T) 2 i = (u it ) 2 = a 2 i = 1 (T bewaart de L2-norm) Vb 1/ 2 1/ 2 1/ 2 1/ 2 T = (a 1 a 2 ) = (a 1 -a 2 )/ 2, (a 1 +a 2 )/ 2 ) -1// 2 1/ 2-1// 2 1/ 2 merk op dat T t T = I

Quantum fenomenen Als een foton een halfdoorlaatbare spiegel passeert, wordt met p =.5 het foton gedetecteerd door d1 of d2 Plaatsen we twee halfdoorlaatbare en twee niet-doorlaatbare spiegels, dan zou je opnieuw met p =.5 het foton verwachten bij d1 of d2. Het foton verschijnt echter alleen bij d1 Plaatsen we nu een ondoorlaatbaar object op een pad, dan wordt opnieuw met p =.5 het foton gedetecteerd door d1 en d2

Quantum fenomenen door de halfdoorlaatbare spiegel wordt toestand (1,0) getransformeerd in toestand 1/ 2 1/ 2 (1, 0) = (1/ 2 1/ 2 ) -1// 2 1/ 2 na 2e spiegel wordt de toestand (1/ 2, 1/ 2 ) wordt getransformeerd in (1/ 2, 1/ 2 ) 1/ 2 1/ 2 = (0, 1) -1// 2 1/ 2 blokkade reduceert superpositie (1/ 2 1/ 2 ) tot (1, 0)

Quantum Turing machines Doel: presentatie quantum complexiteits theorie zonder fysica-ballast Hoe: introductie Turingmachines en configuratie transitiematrices 1. deterministische Tm 2. nondeterministische Tm 3. probabilistische Tm 4. quantum Tm bron: Lance Fortnow: One Complexity Theorist s view of Quantum Computing

Configuratie overgangen Configuratie van een Tm M voor input x is een beschrijving van - input - inhoud van de werktapes, - huidige toestand - posities van de lees- en schrijkoppen op de tapes. Transitiematrix T is aanpassing van transitiefunctie d van M voor configuraties Definitie Voor een DTM M met configuratieverzameling C en input x: T(c, c ) = 1 M in configuratie c voor input x, kan in één stap overgaan naar configuratie c

DTM : transitiematrix T PGS T(c a,c b ) =1 c b is in een stap vanuit c a te bereiken, anders T(c a,c b ) = 0 T k (c a,c b ) =1 als M voor input x in c a start, is M na k stappen in configuratie c b T t( x ) (c init,c acc ) =1 M accepteert x efficient berekenbare klasse c init : beginconfiguratie c acc : accepterende configuratie P : klasse van problemen oplosbaar met polynomiale DTM

NDTM: transitiematrix T T(c a,c b ) =1 c b is in één stap vanuit c a te bereiken, anders T(c a,c b ) = 0 T n (c a,c b ) = k aantal berekeningpaden ter lengte van n vanuit c a naar c b is gelijk aan k T t( x ) (c init,c acc ) > 0 efficient berekenbare klasse M accepteert x NP : klasse van problemen oplosbaar met polynomiale NDTM

Quantum TM: transities Transitiematrix voor configuraties (T(c a,c b )) 2 = z 2 Pr [ c b vanuit c a in een stap] = z 2 z Œ Q arbitrair T is unitair : voor alle vectoren u geldt u T T 2 = S i=1.. C u i 2 (T t( x ) (c init,c acc )) 2 = p Pr [ M accepteert x ] = p BQP : klasse van efficient quantum-berekenbare problemen A Œ BQP " x Œ Yes A (T t( x ) (c init,c acc )) 2 > 0.75 " x œ Yes A (T t( x ) (c init,c acc )) 2 < 0.25 (t(n) is polynoom in n)

PrTm : Transitie matrix T Transitiematrix T(c a,c b ) = p kans om c b in één stap vanuit ( 0 p 1) c a te bereiken is p. T n (c a,c b ) = p Pr[ c b in n stappen vanuit c a te bereiken ] = k "c  c ŒC T(c,c ) = 1 : T is een stochastische matrix T t( x ) (c init,c acc ) = p efficient berekenbare klasse Pr [ M accepteert x ] = p L Œ BPP " x Œ L T t( x ) (c init,c acc ) > 0.75 (t(n) is polynoom in n) " x œ L T t( x ) (c init,c acc ) < 0.25

Quantum complexity : BQP PSPACE PP BQP BPP P BPP Õ BQP Õ PP Õ PSPACE

Opmerkingen Quantum Comp quantum turing machine (qtm) zijn krachtiger dan standaard Tm s Commentaar: Nee, iedere quantum computer kan gesimuleerd worden door een klassieke Tm. Voor een aantal problemen is mogelijkerwijs een speedup t.o.v. kllassieke berekeningsmodellen te behalen. reversibele operaties zijn een kenmerk van quantum berekeningen Commentaar: reversibiliteit is een consequentie van het feit dat T unitair is. Unitaire matrices zijn inverteerbaar: als Tu = v, dan is het mogelijk uit toestand v weer u te verkrijgen: T -1 v= u. quantum computers zijn sneller dan klassieke computers Commentaar Teruggebracht tot de vraag geldt BPP Ã BQP? luidt het antwoord, dat weten we niet. Dit zou namelijk impliceren P PSPACE en dit is nog open.

QC: nog een paar resultaten Bennett et al 1997: er bestaat een random orakel zodat een qtm exponentiele tijd nodig heeft om een NPC probleem op te lossen. Varizani 2000 BQP is waarschijnlijk niet bevat in NP; BQP ΠBPP NP is open Grover (1996) : quantum computing algoritme voor vinden item in een ongesorteerde database van n items in O( n)-tijd. (Bennet: Grover s algoritme is optimaal) Schor (1994) factorizering : O(n 3 ) quantum computing algoritme

BQP en NPC Onwaarschijnlijk dat NPC «BQP gegeven een blackbox programma dat op precies één n-bit string een 1 oplevert. Er is geen enkel quantum algoritme dat deze string kan vinden in minder dan 2 n/2 - tijd

NP, BPP en BQP? PGS Co-NPC NPC Co-NP BQP P BPP NP

Onderwerpen Parallelle machines en complexe problemen - circuits als berekeningsmodel - wanneer loont parallellisme? Random en Quantum Turing Machines Turing machines voor onberekenbare problemen - hoe het stop probleem op te lossen - lerende machines - boost your IQ

Turingmachines en PGS onberekenbaarheid Turingmachine model om te bepalen wat berekenbaar is en wat doenlijk is om te berekenen. onberekenbare problemen zijn er interessante problemen die onberekenbaar zijn? kunnen we machines definieren die deze problemen oplossen? Er zijn Turingmachines voor niet-berekenbare functies

Leren van functies n f(n) g(n) h(n) 1 2 1 0 f(n) = n de priemgetal 2 3 1 0 3 4 5 6 7 5 7 11 13 17 2 4 7 13 24 0 0 24 120 360 g(1) = 1 g(n) = S i=1,2,3; n-i >0 g(n-i), n >1 h(n) = (n-1)(n-2)(n-3)(n-4)

en meer open functie-inductie n f(n) 6 3 8 4 12 6 10? zes acht twaalf tien

nodig: PGS mind changing machines n-trial machine Turing machine die n verschillende outputs mag geven en waarbij det laatst geproduceerde output telt. resultaten 2-trial machines kunnen het STOP-probleem voor turing machines oplossen voor iedere eindige n is er een berekenbare functie f zodat f niet geidentificeerd kan worden door een n-trial Tm.

Vb: tm voor stop-probleem probleem Solve Stop input : < M, x > ( turingmachine M, invoer x voor M) output : yes als M(x) stopt voor x, anders no 1. print no op output tape; 2. simuleer M voor input x; 3. als simulatie stopt (dwz M(x) stopt voor x), print yes op output tape. laatste antwoord gegeven door deze 2-trial machine is correct!

en wat zegt de theorie... kunnen zwak lerend niet alle berekenbare functies P is is zwak lerend als leren P oneindig lang doorgaat met voorspellen; vanaf een zeker tijdstip steeds een juiste voorspelling doet. sterk lerend kunnen alle berekenbare P is is sterk lerend als functies leren P oneindig lang doorgaat met voorspellen; oneindig vaak een juiste voorspelling doet (maar af af en en toe de de mist in in gaat).

Onverwachte conclusies wetenschap volgens leertheorie een verzameling speciale kennisproducten K bereikt met speciale zwak lerende machines M. M. resultaat uit leertheorie er er zijn oneindig veel alternatieve verzamelingen van (lerende) machines M M met kennisproducen K K zodat K K «K = en en M M «M = Conclusie de de kans dat we resultaten van een buitenaardse beschaving kennen en/of hun methoden begrijpen is is praktisch 0!!

Voorlopige conclusie wat is de waarde van IQ-tests? wat is de waarde van het oordeel van een Tm (testconstructie+afname) over een niet-berekenbaar proces?

Boost your IQ (i) hints voor aanvulling polynomiale reeksen f(n) = p(n) voor een polynoom p. pas methode van geitereerde verschillen toe f(n) 1 3 11 31 69 131 2 8 20 38 62 6 12 18 24 30 6 6 6 6 92 223

Boost your IQ (ii) In IQ-tests komen wel eens vragen over extrapolatie van letter reeksen. De volgende truc kan gebruikt worden voor zgn Thurstone series: wat zijn de volgende letters in de reeks d e f g e f g h f g h i...

programma voor extrapolatie d e f g e f g h f g h i 1. < > fi d 2 2. x fi x (2 2 2) 3. y... fi y 2 1. < > fi d 2 2. x fi x x x 3 3. y... fi y 2 1. < > fi d 2 2. x fi x x x x 2

Nog een voorbeeld n p a o q a p r a q s a 1. < > fi n 2. x fi x 3. x fi a 4. x. fi x 2 3 4 2 1. < > fi n 2 2. x fi x a x 2

Einde in3005 deel 2 Op de in345/in3005-site: - proeftentamen + uitwerking - uitwerkingen oefenopgaven - lijst met NP-problemen - korte handleiding te bestuderen - leerstof uit Moret. Succes!

TOT ZIENS!