Introduzione alla generazione di oggetti combinatori. Richiami sui principali oggetti combinatori: permutazioni, partizioni, tableaux, alberi, grafi, gruppi finiti, insiemi parzialmente ordinati. Algoritmi di backtracking. Algoritmi lessicografici. Codici Gray combinatori: aspetti algoritmici e graph-theoretic. Algoritmi di generazione casuale per svariate classi di oggetti combinatori.
Conoscenze: Il corso si propone di avviare lo studente ad alcune delle principali tematiche della generazione esaustiva e casuale di strutture combinatorie. Gli argomenti saranno affrontati da una prospettiva che terrà in considerazione il più possibile gli aspetti matematici di ogni questione.
Competenze acquisite Al termine del corso lo studente avrà acquisito un linguaggio, dei metodi e delle tecniche che gli permetteranno di comprendere e risolvere problemi (anche avanzati) di generazione esaustiva e casuale di classici oggetti combinatori.
Prerequisiti
Corsi raccomandati: corsi di Informatica della triennale (Informatica, Laboratorio Informatico)
Metodi Didattici
Numero di ore totali del corso: 150 (= 6 x 25)
Numero di ore per studio personale e altre attività formative di tipo individuale: 108
Numero di ore relative alle attività in aula: 42
Altre Informazioni
Orario di ricevimento
Giovedì ore 14.30 - 16.30 o su appuntamento (contattare il docente per telefono o per e-mail)