| | | corso | | | | |
Laboratorio di Algoritmi per Big Data
Codice: | 588AA | Crediti: | 6 | Semestre: | 1 | Sigla: | LAD | |
|
Settore disciplinare: | INF/01 - Informatica |
Docente
Rossano Venturini
Tel. 0502213139Ultima versione disponibile: programma da confermare per l’a.a. 2015/2016
Obiettivi di apprendimento
L’obiettivo del corso è quello di permettere agli studenti di
- confrontarsi con problemi algoritmici difficili e di interesse pratico che coinvolgono big data;
- misurare direttamente l’impatto di soluzioni algoritmiche efficienti, rispetto a soluzioni baseline, nella progettazione di software che gestiscono big data;
- realizzare software che utilizzino librerie algoritmiche sofisticate;
- entrare in contatto con alcune aziende per eventuali periodi di internship, borse di approfondimento, o tesi di laurea magistrale.
Descrizione
Il corso consiste di una prima parte di lezioni su principi e tecniche algoritmiche avanzate legate alla memorizzazione, analisi, accesso e ricerca di big data (3 CFU), e di una seconda parte laboratoriale (3 CFU) durante la quale gli studenti sfrutteranno le conoscenze acquisite per la realizzazione di un progetto. Gli studenti potranno scegliere tra un insieme di progetti che offriranno spunti algoritmici interessanti per applicare le tecniche/metodologie studiate nel corso. Tali progetti saranno concordati con aziende del settore IT di livello (inter-)nazionale che contribuiranno anche ad identificare/costruire dataset reali su cui testare i progetti svolti.
English Description
The course consists of a first part of lectures describing advanced algorithms and data structures (3 CFU), and a laboratory in the second part (3 CFU) in which the students will deploy these techniques to develop a software project. The students will select their projects among a set of proposals by major IT companies which are challenging from an algorithmic perspective. These companies will also contribute to identify/construct significant datasets that will help in testing the proposed algorithmic solutions.
The course will provide the opportunity of:
- facing with difficult algorithmic problems of practical interest involving big data;
- evaluating the impact of efficient algorithmic solutions in the design of software managing big data;
- implementing advanced software by using powerful and sophisticated libraries;
- getting in touch with some companies for internships, scholarships, or thesis proposals.
Programma
- Strutture dati compresse: interi, testi, alberi
- Strutture dati randomizzate: hashing e sketching
- Grafi: memorizzazione compresa, visite e analisi
- Strutture dati geometriche elementari (opzionale)