Complessità computazionale
|
|
- Faustino Alfano
- 5 anni fa
- Visualizzazioni
Transcript
1 Complessità computazionale Francesco Paoli Istituzioni di logica, Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 1 / 20
2 Un rappresentante di commercio... deve recarsi a Cagliari, Carbonia, Muravera, Oristano e Sanluri (non importa in quale ordine). rancesco Paoli (Istituzioni di logica, ) Complessità computazionale 2 / 20
3 Un rappresentante di commercio... deve recarsi a Cagliari, Carbonia, Muravera, Oristano e Sanluri (non importa in quale ordine). Più chilometri percorre, più aumentano i costi (in tempo e in denaro). rancesco Paoli (Istituzioni di logica, ) Complessità computazionale 2 / 20
4 Un rappresentante di commercio... deve recarsi a Cagliari, Carbonia, Muravera, Oristano e Sanluri (non importa in quale ordine). Più chilometri percorre, più aumentano i costi (in tempo e in denaro). Quale percorso gli conviene fare? rancesco Paoli (Istituzioni di logica, ) Complessità computazionale 2 / 20
5 Quando un algoritmo è effi ciente? Prima proposta: Quando produce la soluzione desiderata in un tempo rapido. Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 3 / 20
6 Quando un algoritmo è effi ciente? Prima proposta: Quando produce la soluzione desiderata in un tempo rapido. DIFETTI: la velocità di calcolo dipende dal computer su cui l algoritmo è implementato e dal linguaggio di programmazione usato. Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 3 / 20
7 Quando un algoritmo è effi ciente? Prima proposta: Quando produce la soluzione desiderata in un tempo rapido. DIFETTI: la velocità di calcolo dipende dal computer su cui l algoritmo è implementato e dal linguaggio di programmazione usato. Si vuole una definizione di effi cienza che non dipende da questi fattori accidentali. rancesco Paoli (Istituzioni di logica, ) Complessità computazionale 3 / 20
8 Se eseguo un algoritmo su una macchina di Turing: La lunghezza dell input è il numero di 1 presenti sul nastro all inizio del calcolo. La lunghezza del calcolo è il numero di passi necessari alla macchina per terminare l esecuzione dell algoritmo. QUESTE NOZIONI NON DIPENDONO DALLA MACCHINA DI TURING SU CUI L ALGORITMO E IMPLEMENTATO Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 4 / 20
9 Algoritmi effi cienti Definition Un algoritmo A è polinomiale (P) quando la lunghezza del calcolo è maggiorata da una funzione polinomiale della lunghezza dell input. Se N è la lunghezza del calcolo, n è lunghezza dell input, A è polinomiale sse esistono k, C tali che per ogni n N < Cn k rancesco Paoli (Istituzioni di logica, ) Complessità computazionale 5 / 20
10 Algoritmi ineffi cienti Definition Un algoritmo A è esponenziale (P) quando la lunghezza del calcolo è maggiorata solo da funzioni esponenziali della lunghezza dell input. Ad esempio, N = 2 n rancesco Paoli (Istituzioni di logica, ) Complessità computazionale 6 / 20
11 Perché polinomiale = effi ciente, esponenziale = ineffi ciente? Aumento della lunghezza del calcolo in funzione della lunghezza dell input: N = n N = 2 n Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 7 / 20
12 Perché polinomiale = effi ciente, esponenziale = ineffi ciente? (2) Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 8 / 20
13 Torniamo al nostro rappresentante... Se deve visitare n località, i percorsi possibili sono n! La funzione fattoriale cresce più rapidamente di 2 n L ALGORITMO DELLA RICERCA ESAUSTIVA E TIPICAMENTE INEFFICIENTE!!! Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 9 / 20
14 Problemi di decisione Variante decisionale del problema del commesso viaggiatore: Dato un insieme di località e un numero B, esiste un percorso che tocchi tutti i luoghi e abbia una lunghezza al massimo pari a B? rancesco Paoli (Istituzioni di logica, ) Complessità computazionale 10 / 20
15 Macchine di Turing non deterministiche Presentano istruzioni che violano la clausola di determinatezza. Ad esempio: L R 4 Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 11 / 20
16 Algoritmi NP Definition Un algoritmo A è NP quando la lunghezza del calcolo su una macchina di Turing non deterministica è data da una funzione polinomiale della lunghezza dell input. rancesco Paoli (Istituzioni di logica, ) Complessità computazionale 12 / 20
17 Algoritmo NP per il rappresentante di commercio 1 Sceglie a caso il primo luogo da visitare, poi il secondo, poi il terzo... ; 2 Calcola il percorso totale; 3 Lo confronta col numero assegnato B. Supponendo che a ogni stadio si indovini la località successiva, il risultato corretto sarà calcolato in tempo polinomiale. La probabilità che ciò si verifichi nella realtà è 1 n! Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 13 / 20
18 Problemi NP-completi Definition Un problema è NP completo se una sua eventuale soluzione polinomiale implica una soluzione polinomiale di ogni altro problema NP. Theorem (Cook). Determinare se una formula della logica proposizionale è soddisfacibile mediante le tavole di verità è un problema NP-completo. Anche il commesso viaggiatore, e molti altri problemi NP, lo sono. rancesco Paoli (Istituzioni di logica, ) Complessità computazionale 14 / 20
19 P=NP? E convinzione generale che i problemi NP non siano P... Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 15 / 20
20 P=NP? E convinzione generale che i problemi NP non siano P ma nessuno è mai riuscito a dimostrarlo. Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 15 / 20
21 P=NP? E convinzione generale che i problemi NP non siano P ma nessuno è mai riuscito a dimostrarlo. PROVATECI: se ci riuscite avrete gloria imperitura... Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 15 / 20
22 P=NP? E convinzione generale che i problemi NP non siano P ma nessuno è mai riuscito a dimostrarlo. PROVATECI: se ci riuscite avrete gloria imperitura e di dollari in contanti (Clay Institute) rancesco Paoli (Istituzioni di logica, ) Complessità computazionale 15 / 20
23 Programmazione lineare Algoritmi ineffi cienti in teoria possono funzionare bene con dati semplici (ossia nella maggior parte dei problemi pratici). ESEMPIO: programmazione lineare, che funziona nei problemi di ottimizzazione. Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 16 / 20
24 Esempio dell industria tessile (1) Un industria produce due tessuti, A e B, usando lana rossa, verde e gialla In magazzino ci sono: 1400 kg lana rossa 1800 kg lana verde 1800 kg lana gialla Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 17 / 20
25 Esempio dell industria tessile (2) Il profitto dell azienda è 12 Euro per ogni pezza di tessuto A e 8 Euro per ogni pezza di tessuto B. La lana occorrente per ciascuna pezza è: Tessuto A Tessuto B lana rossa 4 kg 4 kg lana verde 6 kg 3 kg lana gialla 2 kg 6 kg Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 18 / 20
26 Esempio dell industria tessile (3) Come dobbiamo usare la lana in modo da massimizzare il profitto? X = numero di unità di tessuto A Y = numero di unità di tessuto B P = 12X + 8Y 4X + 4Y X + 3Y X + 6Y X 0 Y Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 19 / 20
27 Esempio dell industria tessile (4) Francesco Paoli (Istituzioni di logica, ) Complessità computazionale 20 / 20
Algoritmo 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
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
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
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 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
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,
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
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á
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.
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
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
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.
DettagliLucchetto con combinazione (3 numeri tra 0 e 39)
Complessita computazionale ed il problema P / NP Fondamenti di Informatica 2011/12 Lucchetto con combinazione (3 numeri tra 0 e 39) Perche e sicuro? (escludendo che lo si rompa) Combinazione di 3 numberi
Dettaglie Algoritmi Marco Piastra Intelligenza Artificiale I Soddisfacibilità
Intelligenza Artificiale I Soddisfacibilità e Algoritmi Marco Piastra Intelligenza Artificiale I - A.A. 2010- Soddisfacibilità e Semantic Tableau [1] Problemi e decidibilità (automatica) Problema Un problema
DettagliElementi di Complessità Computazionale
Elementi di Complessità Computazionale Ultima modifica 23.06.2004 Il problema Esiste una misura oggettiva per valutare l'efficienza di un algoritmo? In che relazione sono gli input di un algoritmo con
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
DettagliProf. Pagani Corrado ALGORITMI E COMPLESSITÀ COMPUTAZIONALE
Prof. Pagani Corrado ALGORITMI E COMPLESSITÀ COMPUTAZIONALE COMPLESSITÀ DEGLI ALGORITMI L oggetto della teoria della complessità è stabilire se un problema sia facile o difficile In base a quali parametri
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
DettagliComplessità Computazionale
Complessità Computazionale La teoria della Computabilità cattura la nozione di algoritmo nel senso che per ogni problema sia esso decisionale o di calcolo di funzione stabilisce dei criteri per determinare
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à
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
DettagliLucchetto con combinazione (3 numeri tra 0 e 39)
Complessita computazionale ed il problema P / NP Fondamenti di Informatica 2010/11 Lucchetto con combinazione (3 numeri tra 0 e 39) Perche e sicuro? (escludendo che lo si rompa) Ans: Combinazione di 3
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
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)
DettagliIl problema dello zaino: dalla gita in montagna ai trasporti internazionali. Luca Bertazzi
Il problema dello zaino: dalla gita in montagna ai trasporti internazionali Luca Bertazzi 0 Ricerca Operativa (Operations Research) The Science of Better Modelli e algoritmi per la soluzione di problemi
DettagliCapitolo 11. Teoria della computazione Pearson Addison-Wesley. All rights reserved
Capitolo 11 Teoria della computazione 2007 Pearson Addison-Wesley. All rights reserved Capitolo 11: Teoria della computazione 11.1 Funzioni e loro calcolo 11.2 Macchine di Turing 11.3 Linguaggi gg di programmazione
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 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
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À COMPUTAZIONALE DEGLI ALGORITMI
COMPLESSITÀ COMPUTAZIONALE DEGLI ALGORITMI Fondamenti di Informatica a.a.00.005/06 Prof. V.L. Plantamura Dott.ssa A. Angelini Classificazione degli algoritmi Tassonomia di costo: algoritmo costante: c
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
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
Dettagliidea della crittografia a chiave pubblica
idea della crittografia a chiave pubblica sviluppare un crittosistema in cui data la funzione di cifratura e k sia computazionalmente difficile determinare d k Bob rende pubblica la sua funzione di cifratura
DettagliLa nozione di algoritmo
La nozione di algoritmo Agostino Dovier Dip. di Matematica e Informatica, Univ. Udine UDINE, Aprile 2015 Agostino Dovier (DIMI) La nozione di algoritmo UDINE 1 / 17 Un algoritmo viene descritto in un certo
DettagliNP completezza. Problemi astratti
NP completezza Vittorio Maniezzo - Università di Bologna Problemi astratti Un problema è un entità astratta (es. il TSP). Una istanzadel problema è un suo caso particolare in cui vengono specificati tutti
DettagliNP completezza. Vittorio Maniezzo - Università di Bologna
NP completezza Vittorio Maniezzo - Università di Bologna Problemi astratti Un problema è un entità astratta (es. il TSP). Una istanzadel problema è un suo caso particolare in cui vengono specificati tutti
DettagliDunque k vale all incirca log n: precisamente k = [log n] + 1.
Teoria Elementare dei Numeri Soluzioni Esercizi 1 Convenzione: Su questo foglio log n indica sempre il logaritmo in base 2 di n 1 Quante cifre binarie ha all incirca un numero intero n? Sol Scriviamo n
DettagliCapitolo 5: Macchine di Turing e calcolabilitá secondo Turing
Capitolo 5: Macchine di Turing e calcolabilitá secondo Turing 1 Macchina di Turing (MDT ) Un dispositivo che accede a un nastro (potenzialmente) illimitato diviso in celle contenenti ciascuna un simbolo
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
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
DettagliProblemi algoritmici e Complessità degli algoritmi
Problemi algoritmici e Complessità degli algoritmi Università degli Studi di Salerno Corso di Laurea in Scienze della comunicazione Informatica generale Docente: Angela Peduto A.A. 2005/2006 Problemi algoritmici!
DettagliParole note, nuovi significati: linguaggio, determinismo e infinito
Parole note, nuovi significati: linguaggio, determinismo e infinito Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Ciclo di seminari su un Vocabolario Filosofico
DettagliSistemi con vincoli. Docente: Francesca Rossi.
E-mail: frossi@math.unipd.it Scopo del corso Dare le nozioni di base della programmazione con vincoli Come rappresentare un problema reale con un insieme di vincoli Tecniche principali per risolverlo Approccio
DettagliTEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE
TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE Riccardo Dondi Dipartimento di Scienze dei linguaggi, della comunicazione e degli studi culturali Università degli Studi di Bergamo Informazione sul corso
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
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
DettagliIntelligenza Artificiale. Logica proposizionale: calcolo automatico
Intelligenza Artificiale Logica proposizionale: calcolo automatico Marco Piastra Logica formale (Parte 3) - Parte 3 Calcolo automatico Forme normali ed a clausole Risoluzione e refutazione Forward chaining
DettagliIntelligenza Artificiale. Logica proposizionale classica (Parte 1)
Intelligenza Artificiale Logica proposizionale classica (Parte ) Marco Piastra Logica formale (Parte ) - Introduzione alla logica formale Parte. Preambolo: algebra di Boole, proposizioni, conseguenza logica
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
DettagliAd ogni problema computazionale possiamo associare una misura della sua complessità.
Problema computazionale: Descrizione dell input, Compito da svolgere. Esempio: SOMMA: INPUT: 2 numeri x e y, COMPITO: stampare x+y. Ad ogni problema computazionale possiamo associare una misura della sua
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
DettagliCorso Programmazione
Corso Programmazione 2012-2013 (docente) Fabio Aiolli E-mail: aiolli@math.unipd.it Web: www.math.unipd.it/~aiolli (docenti laboratorio) L. Barastri, A. Ceccato, G. Da San Martino Dipartimento di Matematica
DettagliProblemi e algoritmi. Il che cosa e il come. F. Damiani - Alg. & Lab. 04/05 (da U. de' Liguoro - Alg. & Spe. 03/04)
Problemi e algoritmi Il che cosa e il come Il che cosa ed il come Problema: descrive che cosa si deve calcolare Specifica (di un algoritmo): descrive che cosa calcola un algoritmo Algoritmo: descrive come
Dettagli1 Tesina 1: Tecniche di costruzione di riduzioni polinomiali. 2 Tesina 2: Sistemi deduttivi per la logica proposizionale
1 Tesina 1: Tecniche di costruzione di riduzioni polinomiali Dopo aver individuato un piccolo insieme di problemi NP-completi (e relative riduzioni polinomiali) esplorare le tecniche più frequentemente
DettagliProblemi e algoritmi. Il che cosa ed il come. Il che cosa ed il come. Il che cosa e il come
Problemi e algoritmi Il che cosa e il come Problema: descrive che cosa si deve calcolare Specifica (di un algoritmo): descrive che cosa calcola un algoritmo Algoritmo: descrive come effettuare un calcolo
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
DettagliCorso Programmazione
Corso Programmazione 2016-2017 (docente) Fabio Aiolli E-mail: aiolli@math.unipd.it Web: www.math.unipd.it/~aiolli (assistenti laboratorio) M. Gelain, I. Lauriola, M. Polato Dipartimento di Matematica Torre
DettagliTeoria della Complessità Computazionale Parte I: Introduzione
Teoria della Complessità Computazionale Parte I: Introduzione Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it rev. 3.0 - ottobre 2003 Teoria della Complessità Studia la difficoltà dei
DettagliLe parole dell informatica: algoritmo e decidibilità
Le parole dell informatica: algoritmo e decidibilità Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Ciclo di seminari su un Vocabolario Filosofico dell Informatica
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
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
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
DettagliAlgoritmi e Complessità
Algoritmi e Complessità Università di Camerino Corso di Laurea in Informatica (tecnologie informatiche) III periodo didattico Docente: Emanuela Merelli Email:emanuela.merelli@unicam.it Lezione 1 Teoria
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
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
DettagliLe classi P, NP, PSPACE
Le classi P, NP, PSPACE Argomenti della lezione Classi di complessità notevoli I teoremi di gerarchia Il teorema di Savitch Problemi aperti Classi di complessità notevoli LOGSPACE = DSPACE(log n) P P=
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
DettagliAlgoritmi e Strutture Dati
Analisi Asintotica Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino Un graduale processo di astrazione Passo 1: abbiamo ignorato il costo effettivo
DettagliAlgoritmi e complessità
Appendice A Algoritmi e complessità In questa appendice vogliamo brevemente richiamare alcuni concetti fondamentali della teoria della complessità computazionale, utili per meglio comprendere la diversa
DettagliALGORITMI DI OTTIMIZZAZIONE M Esercizi Parte I
ALGORITMI DI OTTIMIZZAZIONE M Esercizi Parte I Esercizio 1 Dati n oggetti ed un contenitore, ad ogni oggetto j (j = 1,, n) sono associati un peso p j ed un costo c j (con p j e c j interi positivi). Si
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
DettagliMacchine di Turing. Francesco Paoli. Istituzioni di logica, Francesco Paoli (Istituzioni di logica, ) Macchine di Turing 1 / 29
Macchine di Turing Francesco Paoli Istituzioni di logica, 2016-17 Francesco Paoli (Istituzioni di logica, 2016-17) Macchine di Turing 1 / 29 Alan M. Turing (1912-1954) Francesco Paoli (Istituzioni di logica,
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à
DettagliPROGRAMMAZIONE I A.A. 2018/2019
PROGRAMMAZIONE I A.A. 2018/2019 COMPUTATIONAL THINKING Formalizzato da una psicologa Americana Jeanette Wing in un articolo sulla rivista ACM nel 2008 ühttps://www.ncbi.nlm.nih.gov/pmc/articles/pmc2696102/
DettagliComplessità computazionale degli algoritmi
Complessità computazionale degli algoritmi Lezione n. 3.bis I precursori dei calcolatore Calcolatore di Rodi o di Andikithira 65 a.c. Blaise Pascale pascalina XVII secolo Gottfried Leibniz Joseph Jacquard
DettagliParte I.5 Cenni alla computazione
Parte I.5 Cenni alla computazione Elisabetta Ronchieri Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Dicembre 14, 2015 Elisabetta Elisabetta Ronchieri I Concetti
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
DettagliAlgoritmo. Calcolabilità
Algoritmo In altri termini, l algoritmo può essere definito come la descrizione di un procedimento che ha le seguenti proprietà: deve essere esplicita e non ambigua per l interlocutore cui è destinata
DettagliTeoria della computabilità. Appunti tratti dal libro di testo M. Addomine, D. Pons INFORMATICA Zanichelli pag
Teoria della computabilità Appunti tratti dal libro di testo M. Addomine, D. Pons INFORMATICA Zanichelli pag.120-129 Teoria della computabilità Si occupa dell esistenza o meno di algoritmi risolutivi di
DettagliAlgoritmi e Strutture Dati (Mod. B) Algoritmi Greedy (parte I)
Algoritmi e Strutture Dati (Mod. B) Algoritmi Greedy (parte I) Algoritmi greedy Gli algoritmi per problemi di ottimizzazione devono in genere operare una sequenza di scelte per arrivare alla soluzione
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
DettagliProposte di approfondimenti
Linguaggi formali Proposte di approfondimenti 1. Forme normali di Greibach, trasformazione di una grammatica in forma normale di Greibach Automi a stati finiti 2. Automi di Büchi: particolari automi a
DettagliIntroduzione al Calcolo Scientifico
Introduzione al Calcolo Scientifico Francesca Mazzia Dipartimento di Matematica Università di Bari Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 1 / 14 Calcolo Scientifico Insieme degli
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
DettagliAlgoritmi di ricerca. Per ricerca si intende qui il procedimento di localizzare una particolare informazione in un elenco di dati.
E. Calabrese: Fondamenti di Informatica Algoritmi-1 Algoritmi di ricerca Per ricerca si intende qui il procedimento di localizzare una particolare informazione in un elenco di dati. Per esempio: - cercare
DettagliCALCOLO NUMERICO. Prof. Di Capua Giuseppe. Appunti di Informatica - Prof. Di Capua 1
CALCOLO NUMERICO Prof. Di Capua Giuseppe Appunti di Informatica - Prof. Di Capua 1 INTRODUZIONE Quando algoritmi algebrici non determinano la soluzione di un problema o il loro «costo» è molto alto, allora
DettagliAlgoritmi e Complessità
Algoritmi e Complessità Università di Camerino Corso di Laurea in Informatica (tecnologie informatiche) III periodo didattico Docente: Emanuela Merelli Email:emanuela.merelli@unicam.it a.a. 2002-03 e.merelli
DettagliLa Teoria della Complessità Computazionale fa un passo avanti:
Introduzione La Teoria della Calcolabilità fornisce criteri per analizzare i problemi computazionali dal punto di vista della loro risolvibilità per via algoritmica. La domanda centrale riguarda l'esistenza
DettagliIl problema del commesso viaggiatore: da Ulisse alla Logistica integrata. Luca Bertazzi
Il problema del commesso viaggiatore: da Ulisse alla Logistica integrata Luca Bertazzi 0 3 Ulisse: da Troia a Itaca Troia Itaca 509 km Quale è stato invece il viaggio di Ulisse? Il viaggio di Ulisse Troia
DettagliAlgoritmi e Strutture Dati
Cognome................................ Nome................................... Matricola............................... Algoritmi e Strutture Dati Prova scritta del 4 luglio 207 TEMPO DISPONIBILE: 2 ore
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 difficili e ricerca esaustiva intelligente
Problemi difficili e ricerca esaustiva intelligente Progettazione di Algoritmi a.a. 2016-17 Matricole congrue a 1 Docente: Annalisa De Bonis Gli argomenti di questa lezione sono tratti da Dasgupta, Papadimitriou,
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
Dettagli