Le classi P, NP, PSPACE
|
|
- Bonaventura Ruggeri
- 6 anni fa
- Visualizzazioni
Transcript
1 Le classi P, NP, PSPACE
2 Argomenti della lezione Classi di complessità notevoli I teoremi di gerarchia Il teorema di Savitch Problemi aperti
3 Classi di complessità notevoli LOGSPACE = DSPACE(log n) P P= = k DTIME(n k ) NP = k NTIME(n k ) PSPACE = k DSPACE(n k ) NSPACE = k NSPACE(n k ) EXPTIME = k DTIME (2n k ) NEXPTIME = k NTIME (2n k )
4 La classe EXPTIME contiene già problemi di elevatissima complessità Per n = 10, 2 n2 = 2 100, se fossero nanosecondi il tempo di calcolo sarebbe maggiore di anni, superiore alla vita dell Universo
5 Problemi interessanti hanno livelli di complessità ancora più elevati Classi doppiamente esponenziali (es: Aritmetica di Presburger) (per n = 10, 2 2 n = )
6 Linguaggi elementari: tutti i linguaggi che, su input di taglia n, vengono riconosciuti in tempo: n con una catasta di k esponenziali, per k qualsiasi
7 Linguaggi non elementari Linguaggi che, su input di taglia n, vengono riconosciuti in tempo: con una catasta di n esponenziali (es. equivalenza di espressioni regolari con complementazione)
8 La complessità del problema di decidere se due espressioni regolari sono equivalenti è: esponenziale, per le usuali espressioni doppiamente esponenziale, per le espressioni con il quadrato
9 La complessità del problema di decidere se due espressioni regolari sono equivalenti è: non elementare, per le espressioni con la complementazione
10 La complessità del problema di decidere se una formula è un teorema è: esponenziale, per formule booleane quantificate
11 doppiamente esponenziale, per formule della teoria dell addizione (Aritmetica di Presburger); es. x y z(x+z=y w(w+w=y)) non elementare, per formule della teoria dell addizione del secondo ordine (WS1S); es. B ( y B z (z=0 y+z B))
12 LA CLASSE P La classe P è la classe dei problemi risolubili efficientemente con macchine deterministiche In prima approssimazione i problemi in P sono considerati computazionalmente trattabili.
13 Motivazioni: un aumento della potenza di calcolo degli elaboratori incide in modo significativo nella soluzione di problemi di costo polinomiale; non per problemi di costo esponenziale
14 Motivazioni: la classe P è una classe stabile, cioé invariante per diversi modelli di calcolo
15 LA CLASSE NP La classe NP è la classe dei problemi risolubili efficientemente con macchine non deterministiche Per moltissimi problemi di interesse pratico non conosciamo algoritmi polinomiali. Sappiamo però che essi sono risolubili in tempo polinomiale con MTND
16 Esempi: decidere se un grafo è hamiltoniano, decidere se un sistema di disequazioni lineari con variabili in {0, 1} è soddisfacibile.
17 Finora, la mancanza di risultati sulla relazione tra NP e P non ci consente di stabilire se essi siano o non siano problemi trattabili
18 LA CLASSE PSPACE La classe PSPACE è la classe dei problemi risolubili efficientemente in termini di spazio Per molti problemi di interesse pratico non conosciamo algoritmi in tempo polinomiale. Sappiamo però che essi sono risolubili in spazio polinomiale
19 Esempi: decidere se una formula booleana quantificata è un teorema
20 Finora, la mancanza di risultati sulla relazione tra PSPACE e P non ci consente di stabilire se anche essi siano o non siano trattabili
21 Le relazioni tra classi spaziali e classi temporali implicano: NEXPTIME NPSPACE EXPTIME PSPACE PSPACE P NPSPACE NP P LOGSPACE
22 Le relazioni tra MT deterministiche ed MT non deterministiche implicano NP P
23 Nessun contenimento è stretto NEXPTIME EXPTIME NPSPACE PSPACE P NP LOGSPACE
24 I teoremi di gerarchia Chiamiamo spazio-costruibile (tempo-costruibile) una funzione totale f tale che f(n) log n (f(n) n+1) esiste una MTM M che per ogni n opera in spazio (tempo) f(n)
25 Teorema di gerarchia spaziale Siano s1, s2: N N due funzioni spazio costruibili tali che lim(n ) s1(n)/s2(n) = 0 allora esiste un linguaggio L tale che L DSPACE(s1(n)) e L DSPACE(s2(n))
26 Teorema di gerarchia temporale Siano s1, s2: N N due funzioni tempo costruibili tali che lim(n ) t1(n)(log t1(n))/t2(n) = 0 allora esiste un linguaggio L tale che L DTIME(t1(n)) e L DTIME(t2(n))
27 Conseguenze: PSPACE LOGSPACE EXPTIME P
28 Il teorema di Savitch Teorema di Savitch Sia s(n) log n: DSPACE (s(n) 2 ) NSPACE (s(n))
29 Assumiamo per semplicità che la macchina di Turing non deterministica sia ad un solo nastro. Se essa usa spazio s(n) per decidere se una data stringa x ( x =n) appartiene ad un linguaggio L abbiamo che il numero di configurazioni possibili è c s(n)
30 Definiamo la funzione REACH(c1,c2,t): REACH (c1,c2,t) = if (c1=c2) (c1 c2) then TRUE else if c3 such that REACH(c1,c3,t/2) REACH(c3,c2,t/2) then TRUE else FALSE in cui c1, c2, c3 s(n)
31 Per decidere se x L la macchina deterministica può semplicemente calcolare REACH (c0,cf,2 s(n) ). Per far ciò è necessario utilizzare spazio s(n), pari alla dimensione di una configurazione, per il numero di configurazoni che possono essere inserite nella pila durante le chiamate ricorsive (log 2 s(n) = s(n)). In totale s(n) 2
32 Conseguenze: PSPACE = NPSPACE PSPACE NP
33 Problemi aperti più significativi LOGSPACE vs P P vs NP (il problema da $!) NP vs PSPACE PSPACE vs EXPTIME
34 Come possiamo caratterizzare la complessità di problemi in presenza di tante questioni irrisolte riguardanti la relazione tra le classi?
35 Utilizzando trasformazioni tra problemi (riduzioni) possiamo stabilire risultati di complessità relativa
PARTE VI COMPLESSITA
PARTE VI COMPLESSITA Complessità di algoritmi e problemi Classi di complessità Proprietà delle classi spaziali e temporali Le classi P, NP, PSPAZIO Problemi NP-completi 6.1. Introduzione alla complessità
DettagliTeoria della Complessità Computazionale. Accettazione/riconoscimento di linguaggi in tempo/spazio
Teoria della Complessità Computazionale. Obiettivo: classifcare i problemi (risolubili con algoritmi) in base alle risorse di calcolo che richiedono per essere risolti. Risorse: tempo e spazio (memoria)
DettagliDI CALCOLO 13. COMPLESSITA
DI CALCOLO 13. COMPLESSITA 13.1 INTRODUZIONE Concetti di base: Upper bound e lower bound di complessità di risoluzione un problema (es: il problema dell ordinamento di un vettore di n elementi ha un upper
DettagliTeoria della NP-completezza
Teoria della NP-completezza Ivan Lanese Dipartimento di Informatica Scienza e Ingegneria Università di Bologna Ivan.lanese@gmail.com http://www.cs.unibo.it/~lanese/ NP-completezza 2 Complessità di problemi
DettagliCapitolo 9: Trattabilitá e intrattabilitá dei problemi
Capitolo 9: Trattabilitá e intrattabilitá dei problemi 1 La classe P : é considerata tradizionalmente come una caratterizzazione formale dei problemi trattabili. n = 2 n = 5 n = 10 n = 100 n = 1000 n 2
DettagliTEORIA DELLA COMPLESSITÀ
TEORIA DELLA COMPLESSITÀ MATERIALE CONSIGLIATO: TESTO DI RIFERIMENTO SULLA TEORIA DELLA COMPLESSITÀ: Computers and Intractibility A Guide to the Theory of NP-Completeness M. R. Garey, D. S. Johnson Freeman
DettagliTeoria della NP-completezza. Damiano Macedonio
Teoria della NP-completezza Damiano Macedonio mace@unive.it Copyright 2010, Moreno Marzolla, Università di Bologna, Italy (http://www.moreno.marzolla.name/teaching/asd2009/) This work is licensed under
Dettaglia cura di Luca Cabibbo e Walter Didimo
a cura di Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1 tipologie di problemi e notazioni sulla complessità classi di complessità appartenenza di problemi
DettagliCapitolo 8: Teoria della complessitá
Capitolo 8: Teoria della complessitá 1 La Teoria della calcolabilitá considera aspetti qualitativi della soluzione di problemi. Distingue il calcolabile dal non calcolabile. La Teoria della complessitá
DettagliDentro P e oltre NP?
Dentro P e oltre NP? Tra P e EXPTIME? EXPTIME PSPACE conp NP P Si sa solo che P EXPTIME PSPACE completezza Un linguaggio A è PSPACE completo se 1.A è in PSPACE, cioè esiste una TM T che accetta A con complessità
DettagliAniello Murano Classe dei problemi NP. Nella lezione precedente abbiamo visto alcuni problemi che ammettono soluzione polinomiale
Aniello Murano Classe dei problemi NP 13 Lezione n. Parole chiave: Classe NP Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Introduzione alla lezione Nella lezione
Dettagliacuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1
acuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1 tipologie di problemi e notazioni sulla complessità classi di complessità appartenenza di problemi
DettagliAniello Murano Space Complexity
Aniello Murano Space Complexity Lezione n. Parole chiave: Space Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Definizione Space- complexity Definizione: Sia M un
DettagliArgomenti Avanzati 1
Argomenti Avanzati 1 Programmazione dinamica Come la tecnica divide-et-impera si basa sull'idea di scomporre il problema in sottoproblemi, risolvere quelli, e ricombinarli si applica però quando i problemi
DettagliProblemi intrattabili
Tempo polinomiale ed esponenziale Una Tm M ha complessita in tempo T(n) se, dato un input w di lunghezza n, M si ferma dopo al massimo T (n) passi. Problemi intrattabili Ci occuperemo solo di problemi
DettagliPARTE I APPROFONDIMENTI SULLA COMPLESSITA COMPUTAZIONALE: LE CLASSI P E PSPACE
PARTE I APPROFONDIMENTI SULLA COMPLESSITA COMPUTAZIONALE: LE CLASSI P E PSPACE - Richiami sulla complessita dei problemi decisionali: I problemi NP-completi - Dentro la classe P: le classi NC e LOGSPACE
DettagliComplessità computazionale. Intermezzo tecnico
computazionale Intermezzo tecnico Piero A. Bonatti Università di Napoli Federico II Laurea Magistrale in Informatica Tema della lezione Normalizzazioni varie, tecnicamente utili funzioni di complessità
DettagliCalcolabilità e Complessità. Schifano S. Fabio
schifano@fe.infn.it Laurea Specialistica in Informatica - Universitá di Ferrara 2005-2006 [1] Complessità La teoria della complessità si occupa di caratterizzare e classificare i problemi, di cui la teoria
DettagliAutomi e Linguaggi Formali
Automi e Linguaggi Formali Problemi intrattabili, classi P e NP A.A. 2014-2015 Alessandro Sperduti sperduti@math.unipd.it Problemi intrattabili Ci occuperemo solo di problemi decidibili, cioè ricorsivi.
DettagliPietro Battiston 26/09/2008
26/09/2008 Macchina di Turing Tesi di Church-Turing: Modello astratto di calcolatore. Tutto ciò che è calcolabile è Turing-calcolabile. È al tempo stesso una congettura ed un assioma alla base della teoria
DettagliDispensa di Informatica Teorica (Elementi) - Teorema di Cook
Teorema di ook (Idea generale) Dato L NP, costruire una trasformazione polinomiale f da L a L (sodd, e), cioè il linguaggio composto dalle stringhe che corrispondono ad istanze del problema sodd. La trasformazione
DettagliPartizioni intere. =! i# P. Es: Dato {38, 17, 52, 61, 21, 88, 25} possiamo rispondere positivamente al quesito poiché
Partizioni intere PARTIZIONAMENTO: Dato un insieme di n interi non negativi rappresentati in binario, trovare un sottoinsieme P! {1,2,..., n } tale che! i"p a i =! i# P a i Es: Dato {38, 17, 52, 61, 21,
DettagliSommario. Complessità di tempo e spazio di una TM che si ferma sempre.
Sommario Complessità di tempo e spazio di una TM che si ferma sempre. Relazioni tra le due misure Analisi complessità delle TM costruite per dimostrare che più nastri o il non determinismo non aumentano
DettagliIn prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni:
6.5 Trattabilita' computazionale. In prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni: - la forte differenza nell'andamento asintotico
DettagliProblemi intrattabili, classi P e NP. Problemi intrattabili, classi P e NP
roblemi intrattabili Ci occuperemo solo di problemi decidibili, cioe ricorsivi. Tra loro, alcuni sono detti trattabili, se si puo provare che sono risolvibili in tempo polinomiale in modo deterministico.
DettagliIn prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni:
6.5 Trattabilita' computazionale. In prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni: - la forte differenza nell'andamento asintotico
DettagliTeoria della Complessità Computazionale
Teoria della Complessità Computazionale Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, 56127 Pisa laura.galli@unipi.it http://www.di.unipi.it/~galli 21 Ottobre 2014 Ricerca Operativa 2
DettagliDiario delle Lezioni del Corso di Algoritmimodulo
Diario delle Lezioni del Corso di Algoritmimodulo Complessità A.A. 2010-2011 Dott.ssa Margherita Zorzi 1 Materiale didattico Libro di testo C.H. Papadimitrious, Computational Complexity, ed Addison-Wesley
DettagliLe parole dell informatica: modello di calcolo, complessità e trattabilità
Le parole dell informatica: modello di calcolo, complessità e trattabilità Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Ciclo di seminari su un Vocabolario
DettagliTeoria della complessità
Fondamenti di Informatica per la Sicurezza a.a. 2006/07 Teoria della complessità Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università
DettagliProblemi decisionali. Esempi
Problemi decisionali La teoria della complessità computazionale è definita principalmente in termini di problemi di decisione Essendo la risposta binaria, non ci si deve preoccupare del tempo richiesto
DettagliComplessità Strutturale e NP-Completezza
Complessità Strutturale e NP-Completezza Una breve introduzione Francesco De Rose Alberto Giorgi Università degli Studi di Brescia Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica
DettagliAlgoritmo per A. !(x) Istanza di B
Riduzioni polinomiali Una funzione f: T*!T* è detta computabile in tempo polinomiale se esiste una macchina di Turing limitata polinomialmente che la computi. Siano L 1 e L 2 " T* due linguaggi. Una funzione
DettagliSommario. Caratterizzazione alternativa di NP: il verificatore polinomiale esempi di problemi in NP
Sommario Caratterizzazione alternativa di NP: il verificatore polinomiale esempi di problemi in NP I conjecture that there is no good algorithm for the traveling salesman problem. My reasons are the same
DettagliPSPACE completezza. Un linguaggio A è PSPACE completo se. 1. A è in PSPACE, cioè esiste una TM T che accetta A con complessità di spazio polinomiale.
Sommario Il problema della verità per formule booleane pienamente quantificate è PSPACE - completo PSPACE come la classe dei giochi. Il gioco geografico generalizzato è PSPACE - completo 1 PSPACE completezza
DettagliCapitolo 1 Concetti matematici di base Insiemi, relazioni e funzioni... 1
iv Indice Capitolo 1 Concetti matematici di base 1 1.1 Insiemi, relazioni e funzioni.................... 1 Capitolo 2 Linguaggi formali 35 2.1 Grammatiche di Chomsky..................... 36 2.2 Grammatiche
DettagliAniello Murano NP- Completezza (prima parte)
Aniello Murano NP- Completea (prima parte) 14 Leione n. Parole chiave: Npcompletea Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Introduione I problemi NP-completi
DettagliL INFORMATICA: DUE CONCETTI DI BASE Fabrizio Luccio, Pisa 2019
L INFORMATICA: DUE CONCETTI DI BASE Fabrizio Luccio, Pisa 2019 La decidibilità l algoritmo non tutti i problemi sono risolubili La complessità la rappresentazione problemi trattabili e intrattabili La
DettagliInformatica Teorica - Compito A
Informatica Teorica - Compito A 7 luglio 2003 Cognome:................................................................... Nome:...................................................................... Matricola:...................................................................
DettagliCammini minimi. peso cammino minimo da u a v:
Argomenti avanzati Cammini minimi Cammini minimi Si vuole ottenere il cammino minimo tra due nodi (es. problema distanze tra stazioni ferroviarie) Ingresso: G = (V, E) orientato, funz. di peso w : E R
DettagliComplessità. Ricorda: Problema P decidibile Linguaggio L P decidibile Taglia input x x. Esempio: G è un grafo connesso? { G G è un grafo connesso}
Complessità Calcolabilità: studia la frontiera tra problemi solubili e insolubili, Si limita ad aspetti qualitativi della risolubilità dei problemi (distingue ciò che è risolubile da ciò che non lo è).
Dettagli3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Scopo: Stimare l onere computazionale per risolvere problemi di ottimizzazione e di altra natura
DettagliTeoria della Complessità Computazionale
Teoria della Complessità Computazionale Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it Rev. 1.3, 11/00 rev. 1.3 - Novembre 2000 Teoria della Complessità Studia la difficoltà dei problemi
DettagliComplessità computazionale. Principali relazioni tra le classi di. Complessità
computazionale Principali relazioni tra le classi di complessità Piero A. Bonatti Università di Napoli Federico II Laurea Magistrale in Informatica Tema della lezione I Col procedere del corso studieremo
Dettagli(ETC) A.A. 2016/17 MATRICOLE DISPARI
Elementi di Teoria della Computazione (ETC) A.A. 2016/17 MATRICOLE DISPARI Docente: Prof. Luisa Gargano BENVENUTI! Finalità: Fornire gli elementi di base delle teorie che sono di fondamento all'informatica
DettagliTrattabilità computazionale.
Trattabilità computazionale. Tesi di Cobham. Tutti i modelli di calcolo introdotti per defnire la calcolabilità in tempo polinomiale hanno al più lo stesso potere computazionale delle MT operanti in tempo
DettagliSommario. Caratterizzazione alternativa di NP: il verificatore polinomiale la classe conp e le relazioni tra P, NP,coNP e EXPTIME
Sommario Caratterizzazione alternativa di NP: il verificatore polinomiale la classe conp e le relazioni tra P, NP,coNP e EXPTIME HAMPATH - 1 HAMPATH = { G è un grafo diretto con un cammino hamiltoniano
DettagliProblemi decidibili, semidecidibili, indecidibili
Problemi decidibili, semidecidibili, indecidibili (Paragrafo 3.5 delle dispense) Il problema di determinare se una formula A della logica proposizionale sia valida o no può essere risolto mediante un procedimento
DettagliAlgoritmi e Principi dell'informatica Seconda Prova in Itinere - 14 Febbraio 2014
Algoritmi e Principi dell'informatica Seconda Prova in Itinere - 14 Febbraio 2014 Nome..Cognome.Matr. Laureando Avvisi importanti Il tempo a disposizione è di 1 ora e 30 minuti. Se non verranno risolti
DettagliSommario. Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi?
Sommario Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi? Decisione vs ricerca! Se disponiamo di un efficiente algoritmo per risolvere
DettagliTeoria della Complessità Computazionale Parte II: Classi di Complessità
Teoria della Complessità Computazionale arte II: Classi di Complessità Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it rev. 3.0 - Ottobre 2003 Classi di complessità: ed N classe dei problemi
DettagliCertificati dei problemi in NP
Certificati dei problemi in NP La stringa y viene in genere denominata un certificato Un Certificato è una informazione ausiliaria che può essere utilizzata per verificare in tempo polinomiale nella dimensione
DettagliRiduzioni che preservano l approssimazione e completezza nelle classi di approssimabilità.
RISULTATI DI NON APPROSSIMABILITA Tecnica di base: gap. Riduzioni che preservano l approssimazione e completezza nelle classi di approssimabilità. Risultati negativi basati su prove verificabili in modo
DettagliProblemi intrattabili
Problemi intrattabili Introduzione Ci si occuperà ora dello studio delle relazioni tra le classi: P=U i=0.. DTIME(n i ) NP=U i=0.. NTIME(n i ) PSPACE=U i=0.. DSPACE(n i ) NSPACE=U i=0.. NSPACE(n i ) Proposizione
DettagliAnno accademico 2001/2002
Raccolta temi d esame del corso di Complessità Roberto Posenato 12 febbraio 2014 Parte I Anno accademico 2001/2002 1 Appello del 24/06/2002 Esercizio 1.1. (Esercizio annunciato) Dimostrare il teorema della
DettagliProblemi computazionali
Problemi computazionali Intrattabilità, indecidibilità, e classi computazionali Algoritmo Essenza computazionale di un programma che ne descrive i passi fondamentali (più implementazioni) Ingredienti:
DettagliInformatica teorica Lez. n 7 Macchine di Turing. Macchine di Turing. Prof. Giorgio Ausiello Università di Roma La Sapienza
Macchine di Turing Argomenti della lezione Definizione della macchina di Turing Riconoscimento e accettazione di linguaggi Macchine a più nastri La macchina di Turing èun è automa che può leggere e scrivere
DettagliAncora su 2-SAT. può essere pensata come una coppia di implicazioni!! " 1
Ancora su 2-SAT Qualsiasi clausola a 1! a 2 può essere pensata come una coppia di implicazioni!! " 1 " a 2 e " 2 " a 1 Il caso di letterale singolo a viene considerato come "" a Partendo da una istanza
DettagliUn algoritmo realizza una relazione funzionale tra i valori di input e quelli di output
Un algoritmo realizza una relazione funzionale tra i valori di input e quelli di output F = { (s, s ) } per ogni s esiste una e una sola coppia (s, s ). Esempio: un algoritmo che calcola il quadrato di
DettagliLogica Algoritmi Cognizione
Logica Algoritmi Cognizione Le nozioni di DECIDIBILITÀ e COMPUTABILITÀ e i loro limiti Formulazione della logica in termini di teorie formalizzate e di dimostrazioni (all interno di teorie formalizzate)
DettagliTesto di riferimento. Problema delle 12 monete. Algoritmi. Complessità degli algoritmi (cenni) Dispense del Corso di Algoritmi e Strutture Dati
Testo di riferimento Complessità degli algoritmi (cenni) CORDA Informatica A. Ferrari Dispense del Corso di Algoritmi e Strutture Dati Marco Bernardo - Edoardo Bontà Università degli Studi di Urbino Carlo
DettagliComplessità degli algoritmi (cenni)
Complessità degli algoritmi (cenni) CORDA Informatica A. Ferrari Testo di riferimento Dispense del Corso di Algoritmi e Strutture Dati Marco Bernardo - Edoardo Bontà Università degli Studi di Urbino Carlo
DettagliLa classe P. Fondamenti di Informatica - modulo /2017 M.Di Ianni. Indice
Fondamenti di Informatica - modulo 2 2016/2017 M.Di Ianni La classe P Indice 8.1 Classe P e trattabilità........................................... 2 8.2 La struttura della classe P.........................................
DettagliPrefazione all edizione italiana
Questo è l'indice del libro, in cui sono evidenziati i paragrafi corrispondenti agli argomenti trattati nel corso e che costituiscono il programma d'esame. Si noti che la presentazione di alcuni argomenti
DettagliProblemi intrattabili e quantum computing
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
DettagliProblemi, istanze, soluzioni
lgoritmi e Strutture di Dati II 2 Problemi, istanze, soluzioni Un problema specifica una relazione matematica tra dati di ingresso e dati di uscita. Una istanza di un problema è formata dai dati di un
DettagliSoddisfacibilità e Semantic Tableau [1]
Intelligenza Artificiale I Soddisfacibilità e Semantic Tableau Marco Piastra Soddisfacibilità e Semantic Tableau [1] Problemi e decidibilità (automatica) Problema In forma rigorosa, un problema è una relazione
DettagliSommario. Esempi di problemi NP-completi: 3-COLORING TSP. HamCycle
Sommario Esempi di problemi NP-completi: 3-COLORING HamCycle SP 3-Coloring è NP-hard Una colorazione di un grafo G=(V,E) è una funzione f : V {1,...,n} tale che {u,v} E f(u) f(v). Una 3- colorazione usa
DettagliIntroduzione Problemi e codifiche Classe P e linguaggi Da NP a NP-C Il mondo NP-C Conclusioni. NP-Completezza
NP-Completezza e la complessità strutturale degli algoritmi Simone Frassanito Dipartimento di Elettronica per l Automazione Università degli Studi di Brescia Cosa non è l NP-Completezza Si potrebbe pensare
DettagliSommario. Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi?
Sommario Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi? Decisione vs ricerca Se disponiamo di un efficiente algoritmo per risolvere
DettagliFondamenti dell informatica
Fondamenti dell informatica Funzioni ricorsive e linguaggi funzionali Rosario Culmone rosario.culmone@unicam.it 16/4/2008 UNICAM - p. 1/21 Funzioni ricorsive Metodo di definizione di algoritmi introdotto
DettagliTempo e spazio di calcolo
Tempo e spazio di calcolo Modelli di calcolo e metodologie di analisi In quale modo stimiamo il tempo di calcolo? Possiamo considerare due approcci: Approccio empirico (a posteriori) Approccio teorico
DettagliTrasformazione di un NDFA in un DFA con ε-regole
Trasformazione di un NDFA in un DFA con -regole a A B D d b C E c t A B C D E a D E b D D c D,E D E D d C C a - t ( s, q i ) = -chiusura (δ (s, q j )) qj -chiusura ( qi) -Primo passo dell algoritmo modificato
DettagliPrecorso di Matematica
UNIVERSITÀ DEGLI STUDI ROMA TRE FACOLTA DI ARCHITETTURA Precorso di Matematica Anna Scaramuzza Anno Accademico 2005-2006 4-10 Ottobre 2005 INDICE 1. ALGEBRA................................. 3 1.1 Equazioni
DettagliTeoria della Complessità Concetti fondamentali
Teoria della Complessità Concetti fondamentali L oggetto della teoria della complessità è stabilire se un problema sia facile o difficile La difficoltà di un problema è una caratteristica generale e non
DettagliTeoria della Calcolabilità!
Teoria della Calcolabilità Si occupa delle questioni fondamentali circa la potenza e le limitazioni dei sistemi di calcolo. L'origine risale alla prima metà del ventesimo secolo, quando i logici matematici
DettagliNote sulle classi di complessità P, NP e NPC per ASD (DRAFT)
Note sulle classi di complessità P, NP e NPC per ASD 2010-11 (DRAFT) Nicola Rebagliati 20 dicembre 2010 1 La complessità degli algoritmi Obiettivo principale della teoria della complessità: ottenere una
DettagliTeoria della complessità
Teoria della complessità Materiale consigliato: testo del corso capitolo 34 Introduzione agli algoritmi e strutture dati T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein McGraw Hill, 2005 Denise Salvi
Dettaglicomplessità degli algoritmi
complessità degli algoritmi progetto CORDA informatica algoritmo matematico persiano Muhammad al-khwarizmi (IX secolo) un algoritmo è una sequenza finita di passi interpretabili da un esecutore l esecuzione
DettagliOttimizzazione Combinatoria
Ottimizzazione Combinatoria Riepilogo degli argomenti trattati nel corso a.a. 2018/2019 1 Algoritmi e complessità computazionale (dispense n. 1) Riepilogo sulla programmazione strutturata e sugli algoritmi;
DettagliEsempio : i numeri di Fibonacci
Esempio : i numeri di Fibonacci La successione di Fibonacci F 1, F 2,... F n,... è definita come: F 1 =1 F 2 =1 F n =F n 1 F n 2,n 2 Leonardo Fibonacci (Pisa, 1170 Pisa, 1250) http://it.wikipedia.org/wiki/leonardo_fibonacci
DettagliLa matematica negli algoritmi. Maat: dea egizia dell ordine. Liber Abaci 1202
La matematica negli algoritmi Maat: dea egizia dell ordine Liber Abaci 1202 Tre concetti di base La decidibilità il concetto di algoritmo non esistono dimostrazioni gratis La crescita esponenziale rappresentazione
DettagliPIANO DI STUDIO DELLA DISCIPLINA
DISCIPLINA: MATEMATICA PIANO DELLE 1 ANNO IPSIA SETTORE IP Anno 2016/2017 COMPETENZE della ABILITA n. 1 I NUMERI NATURALI Ore: 12 settembre procedure del calcolo (a mente, per iscritto, a macchina) per
DettagliEsempio. Grammatica E! T E!! T! *F T " F! (E) i. procedure E. ! if cc in FIRST (TE )! then T; E!!! else ERRORE (1); E! T E
Esempio Grammatica E! T E!! E! + T E " T! F T T! *F T " F! (E) i E! T E T! F T E! + T E "!! tabella codici di errore # 1. omissione di operando 2. omissione di operatore 3. simbolo inatteso 4. carattere
DettagliVerifica di programmi
Verifica di programmi Informalmente, un programma è corretto se l output prodotto è quello atteso rispetto all input. La correttezza dei programmi può essere espressa mediante formule per la correttezza
DettagliElementi di Teoria della Computazione (ETC) Classe 2: matricole congrue a 1 (mod 3) Docente: Prof. Luisa Gargano BENVENUTI!
Elementi di Teoria della Computazione (ETC) Classe 2: matricole congrue a 1 (mod 3) Docente: Prof. Luisa Gargano BENVENUTI! Finalità: Fornire gli elementi di base delle teorie che sono di fondamento all'informatica
DettagliStudio degli algoritmi
COMPLESSITÀ COMPUTAZIONALE DEGLI ALGORITMI Fondamenti di Informatica a.a.2006/07 Prof. V.L. Plantamura Dott.ssa A. Angelini Studio degli algoritmi Dato un problema P, le problematiche riguardano: Sintesi
DettagliFONDAMENTI DI INFORMATICA. Prof. Alfredo Accattatis
FONDAMENTI DI INFORMATICA Prof. Alfredo Accattatis accattatis@ing.uniroma2.it Fondamenti di Informatica a.a. 2015/16 - A.Accattatis 2 Prefazione Il materiale della presente lezione è ispirato ai lavori
Dettagli2 OTTIMIZZAZIONE SU GRAFI. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
2 OTTIMIZZAZIONE SU GRAFI E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Molti problemi decisionali possono essere formulati utilizzando il linguaggio della teoria dei grafi. Esempi: - problemi di
DettagliTipologie di macchine di Turing
Tipologie di macchine di Turing - Macchina di Turing standard - Macchina di Turing con un nastro illimitato in una sola direzione - Macchina di Turing multinastro - Macchina di Turing non deterministica
DettagliAlgoritmi e Strutture Dati. Luciano Gualà
Algoritmi e Strutture Dati Luciano Gualà guala@mat.uniroma2.it www.mat.uniroma2.it/~guala Programmazione dinamica una tecnica di progettazione algoritmica molto potente Sommario La tecnica della programmazione
DettagliProblemi computazionali
Problemi computazionali Intrattabilità e classi computazionali Decidibilità e Trattabilità Problemi decidibili possono richiedere tempi di risoluzione elevati: Torri di Hanoi Decidibilità e Trattabilità
DettagliIl problema del commesso viaggiatore (TSP) la somma delle distanze tra le città. essere espresso dalla domanda:
Classe NP: il TSP Il problema del commesso viaggiatore (TSP)! È definito in termini di un insieme di n città c 1,..., c n e di una matrice delle distanze: D = ( d(i,j) ) d(i,j) = distanza(c i, c j )! Un
DettagliLinguaggi Regolari e Linguaggi Liberi
Linguaggi Regolari e Linguaggi Liberi Potenza espressiva degli automi Potenza espressiva delle grammatiche 9/11/2004 Programmazione - Luca Tesei 1 Linguaggi Regolari Tutti i linguaggi che possono essere
DettagliInformatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi
Informatica Generale Andrea Corradini 12 - Gli algoritmi e la risoluzione di problemi Sommario Che significa risolvere un problema? Algoritmi e programmi Rappresentazione di algoritmi Lo pseudocodice Primitive
DettagliAlgoritmi e Principi dell Informatica
Algoritmi e Principi dell Informatica Appello del 1 Settembre 2016 Chi deve sostenere l esame integrato (API) deve svolgere tutti gli esercizi in 2 ore e 30 minuti. Chi deve sostenere solo il modulo di
DettagliFondamenti dell Informatica. Esercizi di preparazione al secondo compitino
Fondamenti dell Informatica (III anno Laurea Triennale) Esercizi di preparazione al secondo compitino a.a. 2016/17 Funzioni primitive ricorsive Si definiscano come primitive ricorsive le seguenti funzioni:
Dettagli