Studiare
In questa sezione è possibile reperire le informazioni riguardanti l'organizzazione pratica del corso, lo svolgimento delle attività didattiche, le opportunità formative e i contatti utili durante tutto il percorso di studi, fino al conseguimento del titolo finale.
Calendario accademico
Il calendario accademico riporta le scadenze, gli adempimenti e i periodi rilevanti per la componente studentesca, personale docente e personale dell'Università. Sono inoltre indicate le festività e le chiusure ufficiali dell'Ateneo.
L’anno accademico inizia il 1° ottobre e termina il 30 settembre dell'anno successivo.
Calendario didattico
Il calendario didattico indica i periodi di svolgimento delle attività formative, di sessioni d'esami, di laurea e di chiusura per le festività.
Periodo | Dal | Al |
---|---|---|
I semestre | 1-ott-2009 | 31-gen-2010 |
II semestre | 1-mar-2010 | 15-giu-2010 |
Sessione | Dal | Al |
---|---|---|
Sessione straordinaria | 1-feb-2010 | 28-feb-2010 |
Sessione estiva | 16-giu-2010 | 31-lug-2010 |
Sessione autunnale | 1-set-2010 | 30-set-2010 |
Sessione | Dal | Al |
---|---|---|
Sessione autunnale | 29-set-2009 | 29-set-2009 |
Sessione straordinaria | 10-dic-2009 | 10-dic-2009 |
Sessione invernale | 17-mar-2010 | 17-mar-2010 |
Sessione estiva | 20-lug-2010 | 20-lug-2010 |
Periodo | Dal | Al |
---|---|---|
Festa di Ognissanti | 1-nov-2009 | 1-nov-2009 |
Festa dell'Immacolata Concezione | 8-dic-2009 | 8-dic-2009 |
Vacanze Natalizie | 21-dic-2009 | 6-gen-2010 |
Vacanze Pasquali | 2-apr-2010 | 6-apr-2010 |
Festa della Liberazione | 25-apr-2010 | 25-apr-2010 |
Festa del Lavoro | 1-mag-2010 | 1-mag-2010 |
Festa del Santo Patrono di Verona S. Zeno | 21-mag-2010 | 21-mag-2010 |
Festa della Repubblica | 2-giu-2010 | 2-giu-2010 |
Vacanze Estive | 9-ago-2010 | 15-ago-2010 |
Calendario esami
Gli appelli d'esame sono gestiti dalla Unità Operativa Segreteria Corsi di Studio Scienze e Ingegneria.
Per consultazione e iscrizione agli appelli d'esame visita il sistema ESSE3.
Per problemi inerenti allo smarrimento della password di accesso ai servizi on-line si prega di rivolgersi al supporto informatico della Scuola o al servizio recupero credenziali
Docenti
Piano Didattico
Il piano didattico è l'elenco degli insegnamenti e delle altre attività formative che devono essere sostenute nel corso della propria carriera universitaria.
Selezionare il piano didattico in base all'anno accademico di iscrizione.
Insegnamenti | Crediti | TAF | SSD |
---|
Insegnamenti | Crediti | TAF | SSD |
---|
1° Anno
Insegnamenti | Crediti | TAF | SSD |
---|
2° Anno Attivato nell'A.A. 2010/2011
Insegnamenti | Crediti | TAF | SSD |
---|
Insegnamenti | Crediti | TAF | SSD |
---|
Legenda | Tipo Attività Formativa (TAF)
TAF (Tipologia Attività Formativa) Tutti gli insegnamenti e le attività sono classificate in diversi tipi di attività formativa, indicati da una lettera.
Algoritmi (2009/2010)
Codice insegnamento
4S02709
Crediti
12
Coordinatore
Lingua di erogazione
Italiano
Offerto anche nei corsi:
- Algoritmi avanzati del corso Laurea specialistica in Informatica
- Intelligenza artificiale del corso Laurea specialistica in Sistemi intelligenti e multimediali
- Algoritmi avanzati del corso Laurea specialistica in Sistemi intelligenti e multimediali
L'insegnamento è organizzato come segue:
Obiettivi formativi
Modulo: ALGORITMI AVANZATI
-------
Acquisire un'adeguata conoscenza dei principali paradigmi avanzati di algoritmi per problemi di ottimizzazione combinatorica con particolare attenzione per i paradigmi che permettono di determinare soluzione approssimante per problemi di ottimizzazione combinatoria difficili.
Modulo: COMPLESSITÀ
-------
Il corso è costituito da un'introduzione alla complessità strutturale con particolare attenzione alla teoria del NP-completezza e da un'introduzione alla analisi di complessità dei problemi rispetto alla loro approssimabilità computazionale.
Scopo di tale introduzione è fornire agli studenti gli strumenti necessari per comprendere e affrontare la difficoltà nel risolvere alcuni problemi comuni da un punto di vista computazionale.
Modulo: INTELLIGENZA ARTIFICIALE
-------
Il modulo presenta paradigmi e tecniche principali della rappresentazione simbolica e soluzione automatica di problemi. L'obbiettivo è dare allo studente strumenti per ideare, applicare e valutare algoritmi per problemi difficili, nel senso che la loro soluzione meccanica cattura aspetti di intelligenza artificiale o razionalità computazionale.
Programma
Modulo: ALGORITMI AVANZATI
-------
Richiamo dei principali concetti inerenti ai problemi computazionali.
Richiamo dei principali concetti inerenti agli algoritmi: risorse computazionali, codifica dell'input, dimensione dell'input, definizione di tempo computazionale. Analisi caso peggiore e caso medio. Tempo di calcolo e ordini di grandezza: possibili insidie.
Tempi di calcolo e miglioramenti hardware: relazioni principali. Algoritmi efficienti e problemi trattabili.
Paradigma divide et impera
Richiamo struttura. Analisi complessità. Esempi di applicazione: prodotto tra due numeri, Prodotto fra due matrici.
Introduzione al problema della mediana e, generalizzazione, al problema della selezione. Risoluzione del problema della selezione.
Paradigma greedy
Richiamo struttura. Esempio di applicazione per il problema dell'albero minimo di ricoprimento. Richiamo sulla struttura dati per insiemi disgiunti. Esempio di applicazione per il problema dei cammini minimi da sorgente singola (algoritmo di Dijkstra).
Introduzione ai matroidi: definizione, proprietà fondamentali. Problema del Massimo di un matroide pesato. Dimostrazione che la tecnica greedy determina sempre la soluzione ottima per il problema del Massimo di un matroide pesato.
Uso dei matroidi per la risoluzione del problema di programmazione di task unitari su singolo processore. Limiti della rappresentazione con i matroidi. Esempi di problemi risolvibili con tecnica greedy che non sono rappresentabili da matrodidi.
Tecnica backtracking
Introduzione. Schema generale. Aspetti cruciali.
Applicazione della tecnica al problema dello zaino con ripetizione. Analisi correttezza e complessità.
Introduzione uso della tecnica al problema dell'inviluppo convesso: algoritmo di Graham. Uso della tecnica backtracking al problema del string matching: algoritmo di Knuth, Morris & Pratt.
Tecnica branch & bound
Introduzione. Schema generale. Aspetti cruciali.
Scelta ordine di visita dei figli: strategia hill climbing. Tecnica come nuova tecnica ricerca in un albero: strategia best-first. Applicazione della tecnica al problema dell'assegnamento e al problema dello zaino. Applicazione della tecnica al problema del commesso viaggiatore come esempio di funzione lower bound non banale.
Paradigma programmazione dinamica
Introduzione. Schema generale. Aspetti cruciali. Applicazione della tecnica al problema della massima sottosequenza crescente. Applicazione della tecnica al problema del string matching approssimato e al problema dello zaino. Analisi di esempi di applicazione. Pattern ricorrenti per la determinazione di sottoproblemi. Tecnica memoization (annotazione).
Tecnica ricerca locale
Introduzione e studio caso applicazione al problema dell'albero minimo di ricoprimento. Risoluzione del problema dell'ordinamento mediante tecnica di ricerca locale: ordinamento per inserimento e ShellSort.
Tecniche avanzate di ricerca locale: Simulated annealing e Tabù search.
Algoritmi probabilistici
Definizione. Algoritmi probabilistici numerici, algoritmi di Monte Carlo e algoritmi di Las Vegas. Esempi di problemi risolti con tali algoritmi: Buffon's needle, Pattern Matching e Universal hashing.
Algoritmi di approssimazione
Classi NPO e PO. Errore relatio e indice di performance. Algorimo r-approssimante. Problema r-approssimabile.
Studio dell'approssimabilità del problema Min Vertex Cover: dall'algoritmo greedy all'algoritmo pseudo-casuale.
Modulo: COMPLESSITÀ
-------
Introduzione
Concetto di modello di calcolo, risorsa computazionale, algoritmo efficiente e problema trattabile.
Modelli di calcolo
Macchina di Turing (MdT). MdT a più nastri (k-MdT). Decidere o accettare un linguaggio.
"Macchina ad accesso casuale" (RAM = Random Access Machine). Tempo di computazione secondo il criterio di costo uniforme e costo logaritmico.
Complessità in tempo
Classe di complessità TIME(). Teorema di relazione polinomiale tra le computazioni delle macchine k-MdT e MdT.
Teorema sul costo di simulazione di una MdT mediante un programma RAM.
Teorema sul costo di simulazione di un programma RAM mediante una MdT (solo enunciato).
Tesi del calcolo sequenziale e sue conseguenze.
Teorema dell'accelerazione lineare (linear speed-up) e sue conseguenze.
La classe di complessità P.
Esempio di problemi della classe P: PATH, MAX FLOW, ACCOPPIAMENTO PERFETTO (PERFECT MATCHING).
Estensione della MdT: MdT non deterministica (NMdT).
La risorsa tempo nelle NMdT a k-nastri. Classe di complessità NTIME(). Relazione tra NMdT e MdT.
La classe di complessità NP.
Relazione tra NP e P.
Caratterizzazione alternativa della classe NP: verificatori polinomiali.
La classe di complessità EXP.
Complessità in spazio
Concetto di complessità spaziale. Macchina di Turing con input e output. Classi di complessità SPACE() e NSPACE().
Teorema di compressione.
Classi di complessità L e NL.
Esempi di problemi: PALINDROME ∈ L e PATH ∈ NL.
Teoremi di relazione tra spazio e tempo di computazione per una MdT con I/O. Relazioni tra classi di complessità
Concetto di funzione propria ed esempi di funzioni.
Il teorema del gap di Borodin.
Il metodo di raggiungibilità.
Teorema di inclusione tra classi in tempo e in spazio: NTIME(f(n)) ⊆ SPACE(f(n)), NSPACE(f(n)) ⊆ TIME(k(log n+f(n))).
Concetto di Macchina di Turing Universale. L'insieme Hf. Lemma 1 e 2 per il teorema di gerarchia temporale.
Teorema di gerarchia in tempo: versione lasca e versione stretta. Corollario P ⊂ EXP.
Teorema di gerarchia spaziale (solo enunciato). Corollario L ⊂ PSPACE. Teorema di Savitch. Corollario SPACE(f(n))=SPACE(f(n)^2). Corollario PSPACE=NPSPACE.
Riduzioni e completezza
Concetto di riduzione e di riduzione logaritmica in spazio.
Esempio di riduzione: HAMILTON PATH ≤log SAT, PATH ≤log CIRCUIT VALUE, CIRCUIT SAT ≤log SAT.
Proprietà delle riduzioni.
Concetto di completezza di un linguaggio.
Concetto di chiusura rispetto alla riduzione. Chiusura delle classi L, NL, P, NP, PSPACE e EXP.
Concetto di tabella di computazione.
Dimostrazione che CIRCUIT VALUE è P-completo.
Dimostrazione alternativa del teorema di Cook: CIRCUIT SAT è NP-completo.
Esempi di problemi NP-completo e loro riduzioni: SAT e sue varianti (3SAT, 3SAT con vincoli). Il caso 2SAT.
Cenni sulla completezza della PROGRAMMAZIONE LINEARE INTERA, ZAINO e RIEMPIMENTO DEI CESTINI (BIN PACKING).
Concetto di algoritmo pseudo polinomiale. Problemi fortemente NP-completi.
Modulo: INTELLIGENZA ARTIFICIALE
-------
Risoluzione di problemi come ricerca in uno spazio di stati; procedure di ricerca non informate; procedure di ricerca informate e ricerca euristica. Problemi di soddisfazione di vincoli. Rappresentazione della conoscenza con logica proposizionale e al primo ordine; forme normali; uguaglianza.
Algoritmi per la soddisfacibilità (SAT). Dimostrazione di teoremi per risoluzione e riscrittura.
Bibliografia
Autore | Titolo | Casa editrice | Anno | ISBN | Note |
---|---|---|---|---|---|
Sanjoy Dasgupta, Christos Papadimitriou, Umesh Vazirani | Algorithms (Edizione 1) | McGraw-Hill Higher Education | 2007 | 978-0-07-352340-8 | Testo secondario |
Alan Bertossi | Algoritmi e strutture dati (Edizione 1) | UTET | 2000 | 88-7750-611-3 | Testo secondario |
T. Cormen, C. Leiserson, R. Rivest, C. Stein | Introduzione agli Algoritmi e Strutture Dati (Edizione 2) | McGraw-Hill | 2005 | 88-386-6251-7 | Testo consigliato per la prima parte del corso |
Steven S. Skiena | The Algorithm Design Manual (Edizione 2) | Springer | 2008 | 9781848000698 | Testo secondario per il corso ma ottimo come manuale di riferimento per un'ampia classe di problemi. |
Christos H. Papadimitriou | Computational complexity | Addison Wesley | 1994 | 0201530821 | testo principale |
Stuart Russell, Peter Norvig | Artificial Intelligence: A Modern Approach (Edizione 2) | Prentice Hall | 2003 | 0137903952 | Testo adottato |
Judea Pearl | Heuristics: Intelligent search strategies for computer problem solving (Edizione 1) | Addison Wesley | 1985 | 0-201-0559 | Testo complementare |
Stuart Russell, Peter Norvig | Intelligenza artificiale: Un approccio moderno (Edizione 2) | Pearson Education Italia | 2005 | 88-7192-22 | Traduzione italiana del testo adottato |
Chin-Liang Chang, Richard Char-Tung Lee | Symbolic Logic and Mechanical Theorem Proving (Edizione 1) | Academic Press | 1973 | 0121703509 | Testo complementare |
Modalità d'esame
Modulo: ALGORITMI AVANZATI
-------
L'esame consiste in una prova scritta (da sostenere insieme alle prove scritte degli altri due moduli) della durata di 1 ora (3 ore complessive). Il voto di questo modulo vale 1/3 del voto finale.
Modulo: COMPLESSITÀ
-------
L'esame consiste in una prova scritta (da tenersi insieme alle prove scritte degli altri due moduli) della durata di 1 ora (3 ore complessive). Il voto di questo modulo vale 1/3 del voto finale.
Modulo: INTELLIGENZA ARTIFICIALE
-------
Il voto nel modulo Intelligenza artificiale vale 1/3 del voto nell'esame di Algoritmi. La prova consiste in un compito scritto.
Tipologia di Attività formativa D e F
Insegnamenti non ancora inseriti
Prospettive
Avvisi degli insegnamenti e del corso di studio
Per la comunità studentesca
Se sei già iscritta/o a un corso di studio, puoi consultare tutti gli avvisi relativi al tuo corso di studi nella tua area riservata MyUnivr.
In questo portale potrai visualizzare informazioni, risorse e servizi utili che riguardano la tua carriera universitaria (libretto online, gestione della carriera Esse3, corsi e-learning, email istituzionale, modulistica di segreteria, procedure amministrative, ecc.).
Entra in MyUnivr con le tue credenziali GIA: solo così potrai ricevere notifica di tutti gli avvisi dei tuoi docenti e della tua segreteria via mail e a breve anche tramite l'app Univr.
Prova Finale
Scadenziari e adempimenti amministrativi
Per gli scadenziari, gli adempimenti amministrativi e gli avvisi sulle sessioni di laurea, si rimanda al servizio Sessioni di laurea - Scienze e Ingegneria.
Necessità di attivare un tirocinio per tesi
Per stage finalizzati alla stesura della tesi di laurea, non è sempre necessaria l'attivazione di un tirocinio tramite l'Ufficio Stage. Per maggiori informazioni, consultare il documento dedicato, che si trova nella sezione "Documenti" del servizio dedicato agli stage e ai tirocini.
Regolamento della prova finale
Alla tesi di laurea sono dedicati 24 CFU, per un lavoro che non deve superare i 4-5 mesi a tempo pieno per la/o studentessa/studente.
Scopo della Tesi di Laurea
La Tesi di Laurea costituisce un importante ed imprescindibile passo nella formazione della/del futura/o laureata/o Magistrale in Ingegneria e Scienze Informatiche. Scopo della tesi è quello di sviluppare uno studio quanto più originale che può culminare con un progetto applicativo o un risultato teorico connesso a specifici problemi di natura progettuale o una rassegna critica sullo stato dell'arte in un determinato ambito di studio. Su proposta della/del relatrice/relatore, può essere compilato e discusso in lingua straniera. Nel corso dello svolgimento della Tesi il laureando dovrà, sotto la guida della relatrice/relatore ed eventuali correlatrici/correlatori, affrontare lo studio e l'approfondimento degli argomenti scelti, ma anche acquisire capacità di sintesi e applicazione creativa delle conoscenze acquisite. Il contenuto della Tesi deve essere inerente a tematiche dell'ingegneria e delle Scienze Informatiche o discipline strettamente correlate. La Tesi consiste nella presentazione in forma scritta di attività che possono essere articolate come:
- progettazione e sviluppo di applicazioni o sistemi;
- analisi critica di contributi tratti dalla letteratura scientifica;
- contributi originali di ricerca.
La Tesi può essere redatta sia in lingua inglese che in lingua italiana, e può essere discussa sia in inglese che in italiano, anche mediante l'ausilio di supporti multimediali quali slide, filmati, immagini e suoni. Nel caso di tesi redatta in lingua italiana alla medesima dovrà essere aggiunto un breve riassunto in lingua inglese.
Modalità di svolgimento e valutazione
Ogni Tesi di Laurea può essere interna o esterna a seconda che sia svolta presso l'Università di Verona o in collaborazione con altro ente, rispettivamente. Ogni Tesi prevede una/un relatrice/relatore eventualmente affiancata/o da una/uno o più correlatrici/correlatori e una/un controrelatrice/controrelatore. La/il controrelatrice/controrelatore è nominata/o dal Collegio Didattico di Informatica almeno 20 giorni prima della discussione della Tesi, verificata l'ammissibilità della/o studentessa/studente a sostenere l’esame di Laurea Magistrale. Per quanto riguarda gli aspetti giuridici (e.g., proprietà intellettuale dei risultati) legati alla Tesi e ai risultati ivi contenuti si rimanda alla legislazione vigente in materia ed ai Regolamenti di Ateneo.
Valutazione delle Tesi
I criteri su cui sono chiamati ad esprimersi relatore ed eventuali correlatori e controrelatore sono i seguenti:
- livello di approfondimento del lavoro svolto, in relazione allo stato dell'arte dei settori disciplinari di pertinenza informatica;
- avanzamento conoscitivo o tecnologico apportato dalla Tesi;
- impegno critico espresso dalla/dal laureanda/o;
- impegno sperimentale e/o di sviluppo formale espresso dal laureando;
- autonomia di lavoro espressa dalla/dal laureanda/o;
- significatività delle metodologie impiegate;
- accuratezza dello svolgimento e della scrittura;
- la/il controrelatrice/controrelatore non è chiamata/o ad esprimersi sul punto 5.
Voto di Laurea
Il voto di Laurea (espresso in 110mi) è un valore intero compreso tra 66/110 e 110/110 e viene formato dalla somma, arrotondata al numero intero più vicino (e.g., 93.50 diventa 94, 86.49 diventa 86), dei seguenti addendi:
- 1. media pesata sui crediti e rapportata a 110 dei voti conseguiti negli esami di profitto;
- 2. valutazione del colloquio di Laurea e della Tesi secondo le seguenti modalità:
- a. attribuzione di un coefficiente compreso tra 0 e 1 (frazionario con una cifra decimale) per ciascuno dei punti 1-7 elencati sopra;
- b. attribuzione di un coefficiente compreso tra 0 e 1 (frazionario con una cifra decimale) per la qualità della presentazione;
- c. somma dei coefficienti attribuiti ai punti a e b.
La presenza di eventuali lodi ottenute negli esami sostenuti, la partecipazione a stage ufficialmente riconosciuti dal Collegio Didattico di Informatica, il superamento di esami in soprannumero ed il raggiungimento della Laurea in tempi contenuti rispetto alla durata legale del corso degli studi possono essere utilizzati dalla Commissione di Laurea per attribuire un ulteriore incremento di un punto.
Qualora la somma ottenuta raggiunga 110/110, la Commissione può decidere l'attribuzione della lode. La lode viene proposta e discussa dalla Commissione, senza l'adozione di particolari meccanismi di calcolo automatico. In base alle norme vigenti, la lode viene attribuita solo se il parere è unanime.
Tesi esterne
Una Tesi esterna viene svolta in collaborazione con un ente diverso dall'Università di Verona. In tal caso, la/il laureanda/o dovrà preventivamente concordare il tema della Tesi con una/un relatrice/relatore dell'Ateneo. Inoltre, è previsto almeno una/un correlatrice/correlatore appartenente all'ente esterno, quale riferimento immediato per la/o studentessa/studente nel corso dello svolgimento dell’attività di Tesi. Relatrice/relatore e correlatrici/correlatori devono essere indicate/i nella domanda di assegnazione Tesi. Le modalità assicurative della permanenza della/o studentessa/studente presso l'Ente esterno sono regolate dalle norme vigenti presso l'Università di Verona. Se la Tesi si configura come un periodo di formazione presso tale ente, allora è necessario stipulare una convenzione tra l'Università e detto ente. I risultati contenuti nella Tesi sono patrimonio in comunione di tutte le persone ed enti coinvolti. In particolare, i contenuti ed i risultati della Tesi sono da considerarsi pubblici. Per tutto quanto riguarda aspetti non strettamente scientifici (e.g. convenzioni, assicurazioni) ci si rifà alla delibera del SA. del 12 gennaio 1999
Relatrice/relatore,correlatrici/correlatori,controrelatrici/controrelatori
La Tesi di Laurea viene presentata da una/un relatrice/relatore docente di ruolo del Dipartimento di Informatica o inquadrato nei SSD ING-INF/05 e INF/01. Oltre a coloro che hanno i requisiti indicati rispetto al ruolo di relatrice/relatore (come indicato sopra), possono svolgere il ruolo di correlatrici/correlatori anche ricercatrici/ricercatori operanti in istituti di ricerca extrauniversitari assegnisti di ricerca, titolari di borsa di studio post-dottorato, dottorandi di ricerca, personale tecnico del Dipartimento, cultrici/cultori della materia nominate/i da un Ateneo italiano ed ancora in vigore, referenti aziendali esperte/i nel settore considerato nella Tesi. Può essere nominata/o controrelatrice/controrelatore qualunque docente professoressa/professore o ricercatrice/ricercatore del Dipartimento di Informatica dell'Università degli Studi di Verona, che risulti particolarmente competente nell'ambito specifico di studio della Tesi.
Elenco delle proposte di tesi e stage
Erasmus+ e altre esperienze all’estero
Modalità di frequenza
Come riportato nel Regolamento Didattico per l'A.A. 2022/2023, la frequenza al corso di studio non è obbligatoria.
Per le modalità di erogazione della didattica, si rimanda alle informazioni in costante aggiornamento dell'Unità di Crisi.