Problemi intrattabili e quantum computing

31
Problemi intrattabili e quantum computing

description

Problemi intrattabili e quantum computing. Il problema del commesso viaggiatore. Noto anche come Travelling Salesman Problem (TSP) Il commesso viaggiatore deve visitare n città in automobile - PowerPoint PPT Presentation

Transcript of Problemi intrattabili e quantum computing

Page 1: Problemi intrattabili e quantum computing

Problemi intrattabilie quantum computing

Page 2: Problemi intrattabili e quantum computing

Il problema del commesso viaggiatore

• Noto anche come Travelling Salesman Problem (TSP)

• Il commesso viaggiatore deve visitare n città in automobile

• Se viaggiasse per una distanza totale maggiore di k il viaggio non gli converrebbe più (per il costo della benzina)

• Ogni città è collegata direttamente a tutte le altre

• Esiste un percorso di lunghezza < k che visita una sola volta tutte le città ?

Page 3: Problemi intrattabili e quantum computing

?

Ancona

Bari

Como

Domodossola

Page 4: Problemi intrattabili e quantum computing

(Un) algoritmo

1. disponi le città in una permutazione qualunque…ABCD

2. somma le distanze tra A e B, tra B e C, tra C e D; se la somma è < k stampa il percorso e termina con successo

3. se non ci sono altre permutazioni termina con fallimento, altrimenti scegline un’altra e riparti dal passo 2

Page 5: Problemi intrattabili e quantum computing

Complessità di TSP

• Nel caso peggiore, dobbiamo esaminare tutte le permutazioni possibili

• Date n città, le possibili permutazioni sono n!

• TSP è O(n!)• Se n = 30, n! = 2,61032

• Un computer capace di esaminare 1000 miliardi di percorsi al secondo, lanciato all’istante presunto del big bang, dovrebbe lavorare ancora per 8000 miliardi di anni

Page 6: Problemi intrattabili e quantum computing

Problemi (in)trattabili

• Si dicono intrattabili problemi i cui algoritmi richiedono una quantità irragionevolmente alta di risorse

• Attualmente la distinzione tra problemi trattabili e non si basa sulla polinomialità

• Problemi in O(nk) sono considerati trattabili

Page 7: Problemi intrattabili e quantum computing

Problemi di complessità polinomiale

• Sono considerati trattabili in base all’esperienza

• O(n10300) non è affatto ragionevole• Fino ad oggi, però, per tutti i problemi

con complessità polinomiale si è sempre trovato un algoritmo al più O(n4)

• Se un giorno si dovesse scoprire un problema polinomiale il cui migliore algoritmo è O(n10300), allora l’equivalenza polinomiale ~ trattabile andrebbe rivista

Page 8: Problemi intrattabili e quantum computing

La classe P

• Contiene i problemi per i quali esiste un algortimo di complessità polinomiale

• Il TSP ha un algoritmo O(n!)• Perché TSP sia dimostrabilmente in P,

dobbiamo esibire un algoritmo O(nk) che lo risolva

• Finora non è stato trovato niente del genere

Page 9: Problemi intrattabili e quantum computing

Verifica di possibile soluzione TSP

• Dato un possibile percorso, verificare che soddisfa le condizioni del TSP

< k?

Page 10: Problemi intrattabili e quantum computing

• Avviene in tempo lineare rispetto al numero di città: O(n)

• Se potessimo controllare tutti i percorsi possibili contemporaneamente, avremmo un algoritmo O(n) per TSP

Verifica di possibile soluzione TSP

Page 11: Problemi intrattabili e quantum computing

Macchina di Turing

< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?

< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?

Page 12: Problemi intrattabili e quantum computing

Macchina di Turing non deterministica

• È tale una MT la cui tavola può comprendere più di una quintupla in corrispondenza di una certa configurazione

• Una MTN (MT non deterministica), in corrispondenza di certi input, riesce a produrre più di una singola sequenza di calcolo

Page 13: Problemi intrattabili e quantum computing

< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?

< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?

Page 14: Problemi intrattabili e quantum computing

< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?

< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?< k?

Page 15: Problemi intrattabili e quantum computing

La classe NP

• TSP è O(n) per una MT non deterministica, perché viene effettuata contemporaneamente la verifica (di complessità lineare) per ogni possibile percorso

• TSP è dunque nella classe NP dei problemi nondeterministico-polinomiali

• P NP, perché ovviamente se una MT risolve un problema in tempo polinomiale, anche una MTN è in grado di farlo

Page 16: Problemi intrattabili e quantum computing

P = NP ?• Clay Mathematics Institute

One Bow StreetCambridge, Massachusetts 02138USA http://www.claymath.org/millennium/

• Offerti $1000000 per chi lo dimostra o dimostra il contrario

• Per dimostrare che P NP, ossia P NP, occorre dimostrare che esiste un problema in NP per il quale non esiste un algoritmo polinomiale

Page 17: Problemi intrattabili e quantum computing

La collocazione di TSP

• TSP è sicuramente in NP perché una MTN lo risolve in tempo polinomiale

• Attualmente, il migliore algoritmo per TSP è O(n22n)

• Non è stato dimostrato che non si possa migliorare

• Né è stato dimostrato che sicuramente esiste un algoritmo polinomiale

Page 18: Problemi intrattabili e quantum computing

Problemi di decisione

• TSP è un problema di decisione• “Date queste città collegate in questo

modo, esiste un percorso....?”• Sì / No

Page 19: Problemi intrattabili e quantum computing

Riduzione polinomiale

• Siano dati un problema di decisione p e un input d

• Sia R un algoritmo che, dati p e d in input, restituisce un altro problema p’ e un altro input d’ tali chep’(d’ ) = sì se e solo se p(d) = sì

• Se R ha complessità polinomiale, si dice che p è polinomialmente riducibile a p’

Page 20: Problemi intrattabili e quantum computing

Problemi NP-completi

• Un problema NP si dice NP-completo quando tutti i problemi NP sono polinomialmente riducibili ad esso

• È stato dimostrato che TSP lo è• I problemi NP-completi sono

particolarmente interessanti perché se un giorno si trova un algoritmo polinomiale che ne risolve uno, allora avremo dimostrato che P = NP

Page 21: Problemi intrattabili e quantum computing
Page 22: Problemi intrattabili e quantum computing

Realizzazione di una MTN

• Una possibile strada da seguire per realizzare fisicamente una macchina che esegua calcoli in parallelo è lo sfruttamento dei fenomeni di tipo quantistico

• Quantum computing

Page 23: Problemi intrattabili e quantum computing
Page 24: Problemi intrattabili e quantum computing

Sovrapposizione

• Se un’entità quantistica può trovarsi in due stati, oppure assumere due valori diversi, si trova in uno stato di sovrapposizione delle due situazioni, con un coefficiente di probabilità per ciascuna

| = |0 + |1||2+ ||2 = 1

Page 25: Problemi intrattabili e quantum computing
Page 26: Problemi intrattabili e quantum computing

Interferenza

• Un’entità quantistica può trovarsi in più di uno stato

• Se vogliamo conoscere lo stato in cui si trova, dobbiamo effettuare una misura

• Il tentativo stesso di misura interferisce con l’entità e determina un particolare valore che prima era solo una tra tante possibilità

Page 27: Problemi intrattabili e quantum computing
Page 28: Problemi intrattabili e quantum computing

Correlazione

• Nota anche come entanglement• Porta a un paradosso in cui sembra

violato il principio di località di Einstein, secondo cui se A e B sono separati da una distanza superiore a ct non possono influenzarsi in alcun modo

• La misura di una grandezza quantistica influenza istantaneamente a distanza un’altra grandezza quantistica correlata

Page 29: Problemi intrattabili e quantum computing

0 1

01

Page 30: Problemi intrattabili e quantum computing

Computer classici vs quantistici

0 1 12n registri per le 2n configurazioni

1 registro per le 2n configurazioni