Antonio Mario CARUSO

Antonio Mario CARUSO

Ricercatore Universitario

Settore Scientifico Disciplinare INF/01: INFORMATICA.

Dipartimento di Matematica e Fisica "Ennio De Giorgi"

Ex Collegio Fiorini - Via per Arnesano - LECCE (LE)

Ufficio, Piano terra

Telefono +39 0832 29 9046

Area di competenza:

Algoritmi, Internet of Things, Industria 4.0, Sensor Networks, CyberSecurity, Scheduling, BlockChain

Recapiti aggiuntivi

http://bilbo.unisalento.it/antonio

Visualizza QR Code Scarica la Visit Card

Curriculum Vitae

Brief CV:

  • Assistant Professor, Departement of Mathematics, University of Salento. From 2005.
  • PhD in Computer Science, University of Pisa, 2003.
  • Laurea Degree (MSc equivalent) in Computer Science with honors, University of Pisa, 1997.
  • August 2017 - Award from Lecce - 'Premio Eccellenza Città di Lecce 2017'.
  • June 2017 - September 2017, Ottawa University, Visiting Researcher - Premio Canada-Italia per l’Innovazione 2017. Research Project: 'Privacy-Utility Trade off in Big Data for Green Smart Cities'
  • 2012: Visiting Research Associate at Curiciba University and Belo Horizonte University - Brasil
  • April. 2007 – Nov. 2007: Visiting Research Associate at the Network Research Lab, University of California in Los Angeles (UCLA).
  • October 2004 – Feb. 2005: Visiting Research Associate at the Network Research Lab, University of California in Los Angeles (UCLA).
  • 2004 : Research Associate (post-doc position) at the Institute of Information Science and Technologies of CNR.
  • 2003 : Research Associate (post-doc position) at the Institute of Informatics and Telematics of CNR.
  • 1997 : Lieutenant at the Naval Accademy, Livorno.
Scarica curriculum vitae

Didattica

A.A. 2022/2023

TECNICHE ALGORITMICHE

Corso di laurea MATEMATICA

Tipo corso di studio Laurea Magistrale

Lingua ITALIANO

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Anno accademico di erogazione 2022/2023

Per immatricolati nel 2021/2022

Anno di corso 2

Struttura DIPARTIMENTO DI MATEMATICA E FISICA "ENNIO DE GIORGI"

Percorso APPLICATIVO

Sede Lecce

TECNICHE ALGORITMICHE

Corso di laurea MATEMATICA

Tipo corso di studio Laurea Magistrale

Lingua ITALIANO

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Anno accademico di erogazione 2022/2023

Per immatricolati nel 2021/2022

Anno di corso 2

Struttura DIPARTIMENTO DI MATEMATICA E FISICA "ENNIO DE GIORGI"

Percorso GENERALE

Sede Lecce

A.A. 2021/2022

CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE

Corso di laurea MATEMATICA

Tipo corso di studio Laurea Magistrale

Lingua ITALIANO

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Anno accademico di erogazione 2021/2022

Per immatricolati nel 2020/2021

Anno di corso 2

Struttura DIPARTIMENTO DI MATEMATICA E FISICA "ENNIO DE GIORGI"

Percorso APPLICATIVO

Sede Lecce

CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE

Corso di laurea MATEMATICA

Tipo corso di studio Laurea Magistrale

Lingua ITALIANO

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Anno accademico di erogazione 2021/2022

Per immatricolati nel 2020/2021

Anno di corso 2

Struttura DIPARTIMENTO DI MATEMATICA E FISICA "ENNIO DE GIORGI"

Percorso GENERALE

Sede Lecce

A.A. 2020/2021

CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE

Corso di laurea MATEMATICA

Tipo corso di studio Laurea Magistrale

Lingua ITALIANO

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Anno accademico di erogazione 2020/2021

Per immatricolati nel 2019/2020

Anno di corso 2

Struttura DIPARTIMENTO DI MATEMATICA E FISICA "ENNIO DE GIORGI"

Percorso GENERALE

CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE

Corso di laurea MATEMATICA

Tipo corso di studio Laurea Magistrale

Lingua ITALIANO

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Anno accademico di erogazione 2020/2021

Per immatricolati nel 2019/2020

Anno di corso 2

Struttura DIPARTIMENTO DI MATEMATICA E FISICA "ENNIO DE GIORGI"

Percorso APPLICATIVO

A.A. 2019/2020

CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE

Corso di laurea MATEMATICA

Tipo corso di studio Laurea Magistrale

Lingua ITALIANO

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Anno accademico di erogazione 2019/2020

Per immatricolati nel 2018/2019

Anno di corso 2

Struttura DIPARTIMENTO DI MATEMATICA E FISICA "ENNIO DE GIORGI"

Percorso APPLICATIVO

Sede Lecce

CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE

Corso di laurea MATEMATICA

Tipo corso di studio Laurea Magistrale

Lingua ITALIANO

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Anno accademico di erogazione 2019/2020

Per immatricolati nel 2018/2019

Anno di corso 2

Struttura DIPARTIMENTO DI MATEMATICA E FISICA "ENNIO DE GIORGI"

Percorso GENERALE

Sede Lecce

Torna all'elenco
TECNICHE ALGORITMICHE

Corso di laurea MATEMATICA

Settore Scientifico Disciplinare INF/01

Tipo corso di studio Laurea Magistrale

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Per immatricolati nel 2021/2022

Anno accademico di erogazione 2022/2023

Anno di corso 2

Semestre Primo Semestre (dal 26/09/2022 al 16/12/2022)

Lingua ITALIANO

Percorso APPLICATIVO (022)

Sede Lecce

TECNICHE ALGORITMICHE (INF/01)
TECNICHE ALGORITMICHE

Corso di laurea MATEMATICA

Settore Scientifico Disciplinare INF/01

Tipo corso di studio Laurea Magistrale

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Per immatricolati nel 2021/2022

Anno accademico di erogazione 2022/2023

Anno di corso 2

Semestre Primo Semestre (dal 26/09/2022 al 16/12/2022)

Lingua ITALIANO

Percorso GENERALE (000)

Sede Lecce

TECNICHE ALGORITMICHE (INF/01)
CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE

Corso di laurea MATEMATICA

Settore Scientifico Disciplinare INF/01

Tipo corso di studio Laurea Magistrale

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Per immatricolati nel 2020/2021

Anno accademico di erogazione 2021/2022

Anno di corso 2

Semestre Primo Semestre (dal 27/09/2021 al 17/12/2021)

Lingua ITALIANO

Percorso APPLICATIVO (022)

Sede Lecce

Programmazione, Algoritmi.  

Il corso è tenuto per l'ultimo anno accademico, dal prossimo anno infatti la denominazione del corso cambia in 'Tecniche Algoritmiche' (ma in starebbe meglio 'Algorithmic Engineering'). 
I contenuti del corso quindi saranno diversi dagli ultimi anni accademici e saranno definitivi insieme agli studenti frequentanti a partire dai seguenti:

 

* Programmazione in Python, dalla programmazione procedurale alla programmazione ad oggetti e funzionale.

* Networks: modelli per reti: grafi, definizione, strutture dati, algoritmi di base, e problemi di ottimizzazione discreta su grafi, modelli probabilistici.

* Complessità Computazionale: definizione, classi P,  NP NP-C e loro relazioni. Problemi di Ottimizzazione e algoritmi di approssimazione.

* Modellazione Algoritmica, Machine Learning

 

Conoscenze e comprensione. Possedere una preparazione di base sui concetti teorici relativi alla calcolablità e alla complessità computazionale.

Capacità di applicare conoscenze e comprensione: # essere in grado di produrre semplici dimostrazioni rigorose di risultati matematici non identici a quelli già conosciuti, ma chiaramente correlati ad essi, # essere in grado di formalizzare matematicamente problemi relativi alla calcolabilità o complessità di funzioni/algoritmi di moderata difficoltà, in modo da facilitare la loro analisi e risoluzione, # essere capaci di leggere e comprendere, in modo autonomo, testi avanzati o articoli di rivista relativi a questi settori.

Autonomia di giudizio. L’esposizione dei contenuti e delle argomentazioni sarà svolta in modo da migliorare la capacità dello studente di riconoscere dimostrazioni rigorose e individuare ragionamenti fallaci.

Abilità comunicative. La presentazione degli argomenti sarà svolta in modo da consentire l’acquisizione di una buona capacità di comunicare problemi, idee e soluzioni riguardanti l’Informatica Teorica, sia in forma scritta che orale.

Capacità di apprendimento. Saranno indicati argomenti da approfondire, strettamente correlati con l’insegnamento, al fine di stimolare la capacità di apprendimento autonomo dello studente.

Lezioni frontali ed esercitazioni in aula

orale.

Calcolabilità: Macchine di Turing, Riconoscimento vs calcolo di funzione. Problema della Fermata, linguaggi R, RE, co-RE. Riduzioni. (2 lezioni)

Python: Introduzione, parte imperativa, parte funzionale, parte ad oggetti. (6 lezioni)
 

Complessità e Algoritmi: Classi di Complessità: DTIME, NDTIME, PSPACE, NPSPACE. P vs NP. Definizioni diverse per NP e loro relazioni. NPSPACE, EXP, etc. Problemi Np-Completi e NP-Ardui, Teorema di Cook-Levin, SAT e riduzioni polinomiali, esempi di varie riduzioni. Limiti e Utilità della teoria della complessità computazionale. Algoritmi di Approssimazione, esempi vari. Algoritmi Probabilistici, Max-SAT, Matching, etc. Effetto soglia sulle istanze di SAT. (7 lezioni)

 

Esempi in Python di soluzioni per problemi Np-Completi.

 

 

Quasi tutti i testi sotto sono reperibili liberamente come PDF su web. Usare un motore di ricerca per trovarli.

Italiano:

Inglese:

CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE (INF/01)
CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE

Corso di laurea MATEMATICA

Settore Scientifico Disciplinare INF/01

Tipo corso di studio Laurea Magistrale

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Per immatricolati nel 2020/2021

Anno accademico di erogazione 2021/2022

Anno di corso 2

Semestre Primo Semestre (dal 27/09/2021 al 17/12/2021)

Lingua ITALIANO

Percorso GENERALE (000)

Sede Lecce

Programmazione, Algoritmi.  

Il corso è tenuto per l'ultimo anno accademico, dal prossimo anno infatti la denominazione del corso cambia in 'Tecniche Algoritmiche' (ma in starebbe meglio 'Algorithmic Engineering'). 
I contenuti del corso quindi saranno diversi dagli ultimi anni accademici e saranno definitivi insieme agli studenti frequentanti a partire dai seguenti:

 

* Programmazione in Python, dalla programmazione procedurale alla programmazione ad oggetti e funzionale.

* Networks: modelli per reti: grafi, definizione, strutture dati, algoritmi di base, e problemi di ottimizzazione discreta su grafi, modelli probabilistici.

* Complessità Computazionale: definizione, classi P,  NP NP-C e loro relazioni. Problemi di Ottimizzazione e algoritmi di approssimazione.

* Modellazione Algoritmica, Machine Learning

 

 

 

Conoscenze e comprensione. Possedere una preparazione di base sui concetti teorici relativi alla calcolablità e alla complessità computazionale.

Capacità di applicare conoscenze e comprensione: # essere in grado di produrre semplici dimostrazioni rigorose di risultati matematici non identici a quelli già conosciuti, ma chiaramente correlati ad essi, # essere in grado di formalizzare matematicamente problemi relativi alla calcolabilità o complessità di funzioni/algoritmi di moderata difficoltà, in modo da facilitare la loro analisi e risoluzione, # essere capaci di leggere e comprendere, in modo autonomo, testi avanzati o articoli di rivista relativi a questi settori.

Autonomia di giudizio. L’esposizione dei contenuti e delle argomentazioni sarà svolta in modo da migliorare la capacità dello studente di riconoscere dimostrazioni rigorose e individuare ragionamenti fallaci.

Abilità comunicative. La presentazione degli argomenti sarà svolta in modo da consentire l’acquisizione di una buona capacità di comunicare problemi, idee e soluzioni riguardanti l’Informatica Teorica, sia in forma scritta che orale.

Capacità di apprendimento. Saranno indicati argomenti da approfondire, strettamente correlati con l’insegnamento, al fine di stimolare la capacità di apprendimento autonomo dello studente.

Lezioni frontali ed esercitazioni in aula

orale.

Calcolabilità: Macchine di Turing, Riconoscimento vs calcolo di funzione. Problema della Fermata, linguaggi R, RE, co-RE. Riduzioni. (2 lezioni)

Python: Introduzione, parte imperativa, parte funzionale, parte ad oggetti. (6 lezioni)
 

Complessità e Algoritmi: Classi di Complessità: DTIME, NDTIME, PSPACE, NPSPACE. P vs NP. Definizioni diverse per NP e loro relazioni. NPSPACE, EXP, etc. Problemi Np-Completi e NP-Ardui, Teorema di Cook-Levin, SAT e riduzioni polinomiali, esempi di varie riduzioni. Limiti e Utilità della teoria della complessità computazionale. Algoritmi di Approssimazione, esempi vari. Algoritmi Probabilistici, Max-SAT, Matching, etc. Effetto soglia sulle istanze di SAT. (7 lezioni)

 

Esempi in Python di soluzioni per problemi Np-Completi.

 

 

Quasi tutti i testi sotto sono reperibili liberamente come PDF su web. Usare un motore di ricerca per trovarli.

Italiano:

Inglese:

CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE (INF/01)
CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE

Corso di laurea MATEMATICA

Settore Scientifico Disciplinare INF/01

Tipo corso di studio Laurea Magistrale

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Per immatricolati nel 2019/2020

Anno accademico di erogazione 2020/2021

Anno di corso 2

Semestre Primo Semestre (dal 21/09/2020 al 18/12/2020)

Lingua ITALIANO

Percorso GENERALE (000)

Programmazione, Algoritmi.  

Lo scopo del corso è l'acquisizione di competenze e conoscenze di base dell'Informatica Teorica:  il corso introdurrà le nozioni formali relative al concetto di funzione calcolabile da parte di una macchina di Turing,  il problema della fermata e la riduzione tra linguaggi. Per la parte di complessità computazionale si definiranno e studieranno le proprietà delle classi: P, NP, NP-C e Np-Hard, ed il concetto di riduzione polinomiale. Enunciato e cenni della dimostrazione del Teorema di Cook-Levin. Si utilizzerà il linguaggio Python per studiare alcuni problemi Np-Hard come Zaino e Commesso Viaggiatore. 

Conoscenze e comprensione. Possedere una preparazione di base sui concetti teorici relativi alla calcolablità e alla complessità computazionale.

Capacità di applicare conoscenze e comprensione: # essere in grado di produrre semplici dimostrazioni rigorose di risultati matematici non identici a quelli già conosciuti, ma chiaramente correlati ad essi, # essere in grado di formalizzare matematicamente problemi relativi alla calcolabilità o complessità di funzioni/algoritmi di moderata difficoltà, in modo da facilitare la loro analisi e risoluzione, # essere capaci di leggere e comprendere, in modo autonomo, testi avanzati o articoli di rivista relativi a questi settori.

Autonomia di giudizio. L’esposizione dei contenuti e delle argomentazioni sarà svolta in modo da migliorare la capacità dello studente di riconoscere dimostrazioni rigorose e individuare ragionamenti fallaci.

Abilità comunicative. La presentazione degli argomenti sarà svolta in modo da consentire l’acquisizione di una buona capacità di comunicare problemi, idee e soluzioni riguardanti l’Informatica Teorica, sia in forma scritta che orale.

Capacità di apprendimento. Saranno indicati argomenti da approfondire, strettamente correlati con l’insegnamento, al fine di stimolare la capacità di apprendimento autonomo dello studente.

Lezioni frontali ed esercitazioni in aula

orale.

Calcolabilità: Macchine di Turing, Riconoscimento vs calcolo di funzione. Problema della Fermata, linguaggi R, RE, co-RE. Riduzioni. (2 lezioni)

Python: Introduzione, parte imperativa, parte funzionale, parte ad oggetti. (6 lezioni)
 

Complessità e Algoritmi: Classi di Complessità: DTIME, NDTIME, PSPACE, NPSPACE. P vs NP. Definizioni diverse per NP e loro relazioni. NPSPACE, EXP, etc. Problemi Np-Completi e NP-Ardui, Teorema di Cook-Levin, SAT e riduzioni polinomiali, esempi di varie riduzioni. Limiti e Utilità della teoria della complessità computazionale. Algoritmi di Approssimazione, esempi vari. Algoritmi Probabilistici, Max-SAT, Matching, etc. Effetto soglia sulle istanze di SAT. (7 lezioni)

 

Esempi in Python di soluzioni per problemi Np-Completi.

 

 

Quasi tutti i testi sotto sono reperibili liberamente come PDF su web. Usare un motore di ricerca per trovarli.

Italiano:

Inglese:

CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE (INF/01)
CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE

Corso di laurea MATEMATICA

Settore Scientifico Disciplinare INF/01

Tipo corso di studio Laurea Magistrale

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Per immatricolati nel 2019/2020

Anno accademico di erogazione 2020/2021

Anno di corso 2

Semestre Primo Semestre (dal 21/09/2020 al 18/12/2020)

Lingua ITALIANO

Percorso APPLICATIVO (022)

Programmazione, Algoritmi.  

Lo scopo del corso è l'acquisizione di competenze e conoscenze di base dell'Informatica Teorica:  il corso introdurrà le nozioni formali relative al concetto di funzione calcolabile da parte di una macchina di Turing,  il problema della fermata e la riduzione tra linguaggi. Per la parte di complessità computazionale si definiranno e studieranno le proprietà delle classi: P, NP, NP-C e Np-Hard, ed il concetto di riduzione polinomiale. Enunciato e cenni della dimostrazione del Teorema di Cook-Levin. Si utilizzerà il linguaggio Python per studiare alcuni problemi Np-Hard come Zaino e Commesso Viaggiatore. 

Conoscenze e comprensione. Possedere una preparazione di base sui concetti teorici relativi alla calcolablità e alla complessità computazionale.

Capacità di applicare conoscenze e comprensione: # essere in grado di produrre semplici dimostrazioni rigorose di risultati matematici non identici a quelli già conosciuti, ma chiaramente correlati ad essi, # essere in grado di formalizzare matematicamente problemi relativi alla calcolabilità o complessità di funzioni/algoritmi di moderata difficoltà, in modo da facilitare la loro analisi e risoluzione, # essere capaci di leggere e comprendere, in modo autonomo, testi avanzati o articoli di rivista relativi a questi settori.

Autonomia di giudizio. L’esposizione dei contenuti e delle argomentazioni sarà svolta in modo da migliorare la capacità dello studente di riconoscere dimostrazioni rigorose e individuare ragionamenti fallaci.

Abilità comunicative. La presentazione degli argomenti sarà svolta in modo da consentire l’acquisizione di una buona capacità di comunicare problemi, idee e soluzioni riguardanti l’Informatica Teorica, sia in forma scritta che orale.

Capacità di apprendimento. Saranno indicati argomenti da approfondire, strettamente correlati con l’insegnamento, al fine di stimolare la capacità di apprendimento autonomo dello studente.

Lezioni frontali ed esercitazioni in aula

orale.

Calcolabilità: Macchine di Turing, Riconoscimento vs calcolo di funzione. Problema della Fermata, linguaggi R, RE, co-RE. Riduzioni. (2 lezioni)

Python: Introduzione, parte imperativa, parte funzionale, parte ad oggetti. (6 lezioni)
 

Complessità e Algoritmi: Classi di Complessità: DTIME, NDTIME, PSPACE, NPSPACE. P vs NP. Definizioni diverse per NP e loro relazioni. NPSPACE, EXP, etc. Problemi Np-Completi e NP-Ardui, Teorema di Cook-Levin, SAT e riduzioni polinomiali, esempi di varie riduzioni. Limiti e Utilità della teoria della complessità computazionale. Algoritmi di Approssimazione, esempi vari. Algoritmi Probabilistici, Max-SAT, Matching, etc. Effetto soglia sulle istanze di SAT. (7 lezioni)

 

Esempi in Python di soluzioni per problemi Np-Completi.

 

 

Quasi tutti i testi sotto sono reperibili liberamente come PDF su web. Usare un motore di ricerca per trovarli.

Italiano:

Inglese:

CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE (INF/01)
CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE

Corso di laurea MATEMATICA

Settore Scientifico Disciplinare INF/01

Tipo corso di studio Laurea Magistrale

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Per immatricolati nel 2018/2019

Anno accademico di erogazione 2019/2020

Anno di corso 2

Semestre Primo Semestre (dal 30/09/2019 al 20/12/2019)

Lingua ITALIANO

Percorso APPLICATIVO (022)

Sede Lecce

Programmazione, Algoritmi.  

Lo scopo del corso è l'acquisizione di competenze e conoscenze di base dell'Informatica Teorica:  il corso introdurrà le nozioni formali relative al concetto di funzione calcolabile da parte di una macchina di Turing,  il problema della fermata e la riduzione tra linguaggi. Per la parte di complessità computazionale si definiranno e studieranno le proprietà delle classi: P, NP, NP-C e Np-Hard, ed il concetto di riduzione polinomiale. Enunciato e cenni della dimostrazione del Teorema di Cook-Levin. Si utilizzerà il linguaggio Python per studiare alcuni problemi Np-Hard come Zaino e Commesso Viaggiatore. 

Conoscenze e comprensione. Possedere una preparazione di base sui concetti teorici relativi alla calcolablità e alla complessità computazionale.

Capacità di applicare conoscenze e comprensione: # essere in grado di produrre semplici dimostrazioni rigorose di risultati matematici non identici a quelli già conosciuti, ma chiaramente correlati ad essi, # essere in grado di formalizzare matematicamente problemi relativi alla calcolabilità o complessità di funzioni/algoritmi di moderata difficoltà, in modo da facilitare la loro analisi e risoluzione, # essere capaci di leggere e comprendere, in modo autonomo, testi avanzati o articoli di rivista relativi a questi settori.

Autonomia di giudizio. L’esposizione dei contenuti e delle argomentazioni sarà svolta in modo da migliorare la capacità dello studente di riconoscere dimostrazioni rigorose e individuare ragionamenti fallaci.

Abilità comunicative. La presentazione degli argomenti sarà svolta in modo da consentire l’acquisizione di una buona capacità di comunicare problemi, idee e soluzioni riguardanti l’Informatica Teorica, sia in forma scritta che orale.

Capacità di apprendimento. Saranno indicati argomenti da approfondire, strettamente correlati con l’insegnamento, al fine di stimolare la capacità di apprendimento autonomo dello studente.

Lezioni frontali ed esercitazioni in aula

orale.

Calcolabilità: Macchine di Turing, Riconoscimento vs calcolo di funzione. Problema della Fermata, linguaggi R, RE, co-RE. Riduzioni. (2 lezioni)

Python: Introduzione, parte imperativa, parte funzionale, parte ad oggetti. (6 lezioni)
 

Complessità e Algoritmi: Classi di Complessità: DTIME, NDTIME, PSPACE, NPSPACE. P vs NP. Definizioni diverse per NP e loro relazioni. NPSPACE, EXP, etc. Problemi Np-Completi e NP-Ardui, Teorema di Cook-Levin, SAT e riduzioni polinomiali, esempi di varie riduzioni. Limiti e Utilità della teoria della complessità computazionale. Algoritmi di Approssimazione, esempi vari. Algoritmi Probabilistici, Max-SAT, Matching, etc. Effetto soglia sulle istanze di SAT. (7 lezioni)

 

Esempi in Python di soluzioni per problemi Np-Completi.

 

 

Quasi tutti i testi sotto sono reperibili liberamente come PDF su web. Usare un motore di ricerca per trovarli.

Italiano:

Inglese:

CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE (INF/01)
CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE

Corso di laurea MATEMATICA

Settore Scientifico Disciplinare INF/01

Tipo corso di studio Laurea Magistrale

Crediti 6.0

Ripartizione oraria Ore totali di attività frontale: 42.0

Per immatricolati nel 2018/2019

Anno accademico di erogazione 2019/2020

Anno di corso 2

Semestre Primo Semestre (dal 30/09/2019 al 20/12/2019)

Lingua ITALIANO

Percorso GENERALE (000)

Sede Lecce

Programmazione, Algoritmi.  

Lo scopo del corso è l'acquisizione di competenze e conoscenze di base dell'Informatica Teorica:  il corso introdurrà le nozioni formali relative al concetto di funzione calcolabile da parte di una macchina di Turing,  il problema della fermata e la riduzione tra linguaggi. Per la parte di complessità computazionale si definiranno e studieranno le proprietà delle classi: P, NP, NP-C e Np-Hard, ed il concetto di riduzione polinomiale. Enunciato e cenni della dimostrazione del Teorema di Cook-Levin. Si utilizzerà il linguaggio Python per studiare alcuni problemi Np-Hard come Zaino e Commesso Viaggiatore. 

Conoscenze e comprensione. Possedere una preparazione di base sui concetti teorici relativi alla calcolablità e alla complessità computazionale.

Capacità di applicare conoscenze e comprensione: # essere in grado di produrre semplici dimostrazioni rigorose di risultati matematici non identici a quelli già conosciuti, ma chiaramente correlati ad essi, # essere in grado di formalizzare matematicamente problemi relativi alla calcolabilità o complessità di funzioni/algoritmi di moderata difficoltà, in modo da facilitare la loro analisi e risoluzione, # essere capaci di leggere e comprendere, in modo autonomo, testi avanzati o articoli di rivista relativi a questi settori.

Autonomia di giudizio. L’esposizione dei contenuti e delle argomentazioni sarà svolta in modo da migliorare la capacità dello studente di riconoscere dimostrazioni rigorose e individuare ragionamenti fallaci.

Abilità comunicative. La presentazione degli argomenti sarà svolta in modo da consentire l’acquisizione di una buona capacità di comunicare problemi, idee e soluzioni riguardanti l’Informatica Teorica, sia in forma scritta che orale.

Capacità di apprendimento. Saranno indicati argomenti da approfondire, strettamente correlati con l’insegnamento, al fine di stimolare la capacità di apprendimento autonomo dello studente.

Lezioni frontali ed esercitazioni in aula

orale.

Calcolabilità: Macchine di Turing, Riconoscimento vs calcolo di funzione. Problema della Fermata, linguaggi R, RE, co-RE. Riduzioni. (2 lezioni)

Python: Introduzione, parte imperativa, parte funzionale, parte ad oggetti. (6 lezioni)
 

Complessità e Algoritmi: Classi di Complessità: DTIME, NDTIME, PSPACE, NPSPACE. P vs NP. Definizioni diverse per NP e loro relazioni. NPSPACE, EXP, etc. Problemi Np-Completi e NP-Ardui, Teorema di Cook-Levin, SAT e riduzioni polinomiali, esempi di varie riduzioni. Limiti e Utilità della teoria della complessità computazionale. Algoritmi di Approssimazione, esempi vari. Algoritmi Probabilistici, Max-SAT, Matching, etc. Effetto soglia sulle istanze di SAT. (7 lezioni)

 

Esempi in Python di soluzioni per problemi Np-Completi.

 

 

Quasi tutti i testi sotto sono reperibili liberamente come PDF su web. Usare un motore di ricerca per trovarli.

Italiano:

Inglese:

CALCOLABILITA' E COMPLESSITA' COMPUTAZIONALE (INF/01)

Tesi

Sono disponibili tesi sui seguenti argomenti:

* Stato dell'arte sui modelli fisico-matematici usati per descrivere il movimento di particelle lagrangiane (free-drifting) trasportate in un fluido. Uso di questi modelli per studiare reti di sensori subacquei (reti underwater acustiche). 

* Algoritmi di distributed consensus basati su BlockChain: applicazioni alle CriptoValute, (non solo BitCoin).

* Algoritmi di Approssimazione per Alberi di Steiner in R^2, per un insieme di punti dinamico (mobili).

Pubblicazioni

Book editor

  • Antonio Caruso, Vittorio Bilò. Proceedings of the 17th Italian Conference on Theoretical Computer Science (ICTCS 2016), Lecce, 7-9 Sep. 2016. CEUR Workshop Proceedings. [pdf]

Refereed Journals and Magazines

  • A. Caruso, S. Chessa, S. Escolar, J. Barba and J. C. López, "Collection of Data with Drones in Precision Agriculture: Analytical Model and LoRa Case Study," in IEEE Internet of Things Journal, doi: 10.1109/JIOT.2021.3075561.

  • Dr. Soledad Escolar, Caruso, Antonio; Chessa, Stefano; Escolar, Soledad; del Toro, Xavier; López, Juan Carlos,  A Dynamic Programming Algorithm for High-Level Task Scheduling in Energy Harvesting IoTIEEE Internet of Things Journal,Volume: 5, Issue: 3, June 2018, pp 2234 - 2248 (doi: 10.1109/JIOT.2018.2828943).
  • Michele Girolami, Stefano Chessa, Antonio Caruso, On service discovery in mobile social networks: Survey and perspectives, pages 51-71, Computer Networks 88 (09/15) [pdf]
  • G. Amato, A. Caruso, S. Chessa, Application-Driven, Energy-Efficient Communication in Wireless Networks, Computer Communications, Volume 32, Issue 5, 27 March 2009, Pages 896-906.
  • Antonio Caruso, Stefano Chessa, Piero Maestrini, Worst-case Diagnosis Completeness in Regular Graphs under the PMC Model, IEEE Transactions on Computers, 56 (7), July 2007, pp. 917-924.
  • Luiz Carlos P. Albini, Antonio Caruso, S. Chessa, P. Maestrini, Reliable routing in wireless ad hoc networks: the virtual routing protocol, Journal of Network and Systems Managment, special issue of Wireless Ad Hoc Networks and Wireless sensor networks, 14 (3), September 2006, pp.335-358.
  • Yeng-Zhong Lee, Mario Gerla, Jason Chen, Jiwei Chen, Biao Zhou, Antonio Caruso, Direction Forward Routing for Highly Mobile Ad-Hoc Networks, Journal Ad Hoc & Sensor Wireless Network, 2 (2) February 2006.
  • Swades De, Antonio Caruso, Tamalika Chaira, and Stefano Chessa, Bounds on Hop Distance in Greedy Routing Approach in Wireless Ad Hoc Networks, International Journal on Wireless and Mobile Computing, 1 (2), 2006, pp. 131-140.
  • Antonio Caruso, S. Chessa, P. Maestrini, P. Santi, Fault-Diagnosis of Grid Structures, Theoretical Computer Science, January 2003, pp. 1149-1174
  • Antonio Caruso, S. Chessa, P. Maestrini, P. Santi, Diagnosability of Regular Systems, Journal of Algorithms, November 2002, Vol 45, pp. 126-143.
  • Antonio Caruso, S. Chessa, P. Maestrini, P.Santi, Evaluation of a Diagnosis Algorithm for Regular Structures, IEEE Transaction on Computers, July 2002, Vol 51, number 7, pp. 16.

    Refereed International Conferences

  • M. Kuzman, X. d. Toro García, S. Escolar, A. Caruso, S. Chessa and J. C. López, "A Testbed and an Experimental Public Dataset for Energy-Harvested IoT Solutions," 2019 IEEE 17th International Conference on Industrial Informatics (INDIN), 2019, pp. 869-876, doi: 10.1109/INDIN41052.2019.8972219.

  • A. Caruso, et al., "Experimenting Forecasting Models for Solar Energy Harvesting Devices for Large Smart Cities Deployments," in 2019 IEEE Symposium on Computers and Communications (ISCC), Barcelona, Spain, 2019 pp. 1177-1182. doi: 10.1109/ISCC47284.2019.8969684

  • S. Escolar, A. Caruso, S. Chessa, X. d. Toro, F. J. Villanueva and J. C. López, "Statistical Energy Neutrality in IoT Hybrid Energy-Harvesting Networks," 2018 IEEE Symposium on Computers and Communications (ISCC), 2018, pp. 00444-00449, doi: 10.1109/ISCC.2018.8538532.

  • S. Escolar, Caruso Antonio; Chessa S., del Toro, Xavier; López, Juan Carlos, Félix J. Villanueva. Statistical Energy Neutrality in IoT Hybrid Energy-Harvesting Networks, IEEE ISCC 2018,25-28 June 2018 – Natal, Brazil.
  • Antonio Caruso and Melike Erol-Kantarci, Privacy-Utility Trade off in Big Data of Smart Cities, I-CiTies 2017, Bari.
  • Flaviano Di Rienzo, M. Girolami, S. Chessa, F. Paparella, A. Caruso. Signals From the Depths: Properties of Percolation Strategies with the Argo Dataset. ISCC 2016, Messina, http://dx.doi.org/10.1109/iscc.2016.7543768. June 2016.
  • Antonio Caruso, Stefano Chessa, Swades De, Relation between gradients and geographic distances in dense sensor networks with greedy message forwarding, (The Fourth International Conference on Systems and Networks Communications), Porto, Portugal, September 20-25, 2009.
  • Erol M., L.F.M. Vieira, A. Caruso, F. Paperella, M. Gerla, S. Oktug, Multi Stage Underwater Sensor Localization Using Mobile Beacons, The Second International Workshop on Underwater Sensors and Systems (UNWAT2008), Cap Esterel (France), August 2008.
  • A. Caruso, F. Paparella, Luiz Vieira, Melike Erol , Mario Gerla, The Meandering Current Mobility Model and its impact on Underwater Mobile Sensor Networks, INFOCOM 2008, Phoenix, AZ, USA.
  • Nicola Filardi, Antonio Caruso, Stefano Chessa, “Virtual Naming and Geographic Routing on Wireless Sensor Networks“, The Twelfth IEEE Symposium on Computers and Communications, Aveiro, Portugal, July 2007.
  • Filippo Barsotti, Antonio Caruso, and Stefano Chessa, “The Localized Vehicular Multicast Middleware: a Framework for Ad Hoc Inter-Vehicles Multicast Communications“, 10th WSEAS Int.Conf. on Communications, Athens, Greece, 10-15 July 2006, pp.6.
  • Mario Gerla, Yeng-Zhong Lee, Biao Zhou, Jason Chen, Antonio Caruso, ‘Direction’ forwarding for highly mobile, large scale ad hoc networks“, Mediterranean Ad Hoc Networking Workshop (MedHoc 2005), June 21-24, Île de Porquerolles, France.
  • Antonio Caruso, Stefano Chessa, Swades De, Alessandro Urpi, “GPS Free Coordinate Assignment and Routing in Wireless Sensor Networks“, 24th IEEE International Conference on Computer Communications (INFOCOM), March 13 – 17 2005 in Miami, Florida USA. keywords: virtual coordinates, sensor networks, routing.
  • A. Caruso, L. Albini, P. Maestrini, “A New Diagnosis Algorithm for Regular Interconnected Structures“, First Latin American Symposium on Dependable Computing – LADC 2003 (LNCS 2847), Sao Paulo, Brasil, October 2003, pp. 264-281.
  • A. Caruso, S. Chessa, P. Maestrini, P.Santi, “Diagnosis of Regular Structures“, Proc. IEEE DSN 2000, International Conference on Dependable Systems and Networks (FTCS 30), New York, USA, 25-28 June 2000, pp.25.
  • A. Caruso, S. Chessa, P. Maestrini, “Comparison-Based Diagnosis of VLSI Wafers“, DDECS 2000, Slovakia, April 5-7 2000a, pp.227-232.
  • A. Caruso, S. Chessa, P. Maestrini, P.Santi, “Reliable Diagnosis of Grid-Connected Systems“, Proc. IEEE LATW 2000, first Latin-American Test Workshop, Rio de Janeiro, Brazil, 13-15 March 2000, pp.163-165.
  • A. Caruso, S. Chessa, P. Maestrini, “Wafer-Scale VLSI Testing“, Proc. IEEE TMRCS 2000, Test Methods and Reliability of Circuits and Systems, Grassau, Germany, 1/l1 March 2000, pp.4.

 

Temi di ricerca

 

  • Energy Efficient Scheduling of Tasks in Energy Harvesting IoT nodes.
  • Machine Learning for Energy Efficient Scheduling.
  • Routing e Localizzazione su reti wireless ad-hoc
  • Routing e problemi algoritmici per reti wireless di sensori
  • Analisi Reti di Sensori Underwaters
  • Protocolli e algoritmi distribuiti: diagnosi di guasti.

 

  Vedi la pagina personale