Il corso introduce alla progettazione e implementazione di algoritmi che prendono ispirazione dalla natura e dalla biologia, nonché alle caratteristiche chiavi necessari all'ottenimento di algoritmi di successo. Verranno altresì analizzate varie applicazioni di diversi algoritmi bio-inspired in ambito dell'ottimizzazione, della sicurezza, della teoria delle decisioni e della teoria dei giochi.
Il corso presuppone una buona conoscenza di strumenti matematici (discreti e continui) e buona conoscenza di algoritmi e strutture dati.
La frequenza è fortemente consigliata.
Il corso si suddivide in 2 parti fondamentali:
PRIMA PARTE:
SECONDA PARTE:
Tutto il materiale didattico fornito dal docente saà reperibile al seguente link:
http://www.dmi.unict.it/mpavone/nc-cs/
* | Argomenti | Riferimenti testi | |
1 | Definizione informale di Computazione Naturale | ||
2 | Teoria della computabilità | ||
3 | Teoria dei Grafi | Reinhard Diestel, ''Graph Theory'', Electronic Edition 2000 | |
4 | * | Sistemi Complessi | Hiroki Sayama, ''Introduction to the Modeling and Analysis of Complex Systems'', Electronic Edition 2015 |
5 | * | Modellistica dei sistemi complessi | Hiroki Sayama, ''Introduction to the Modeling and Analysis of Complex Systems'', Electronic Edition 2015 |
6 | * | Landscape e Search Space: topologie, significato e importanza | |
7 | * | Modelli per l’ottimizzazione: (i) Single-Objective Optimization; (ii) Constrained Optimization; (iii) Multi-Objective Optimization; (iv) Optimization under Uncertainty; (v) Dynamic Optimization | |
8 | * | Single-solution based Metaheuristics: (i) Local Search; (ii) Tabu Search; (iii) Hill Climbing | E.G. Talbi, ''Metaheuristics: From Design to Implementation'', Wiley, 2009 - C. Blum and G.R. Raidl, ''Hybrid Metaheuristics: Powerful Tools for Optimization'', Artificial Intelligence: Foundations, Theory, and Algorithms, 2016 |
9 | * | Population based Metaheuristics: (i) Concetti comuni; (a) Selection methods; (b) Reproduction; (c) Replacement strategies; (ii) ESs; (iii) EPs; (iv) GAs; (v) GPs; (vi) AIS; (vii) Swarm Intelligence | Talbi, ''Metaheuristics: From Design to Implementation'', Wiley, 2009 - Blum & Raidl, ''Hybrid Metaheuristics: Powerful Tools for Optimization'', A.I.: Foundations, Theory, & Algorithms, 2016 - materiale fornito dal docente |
L'esame consiste di tre prove: (i) test scritto; (ii) progetto e relazione; e (iii) colloquio orale.
TEST SCRITTO: Consiste di 15 domande a risposta multipla, i cui questiti riguardano la prima del programma.
PROGETTO E RELAZIONE: lo studente dovrà sviluppare un algoritmo evolutivo da applicare e testare su un problema complesso (algoritmo, problema e protocollo sperimentale verranno concordati con il docente). Alla conclusione del progetto, lo studente dovrà consegnare per la valutazione del proprio elaborato: (a) codice sorgente dell’algoritmo sviluppato; e (b) relazione scritta sull'originalità introdotte nell'elaborato.
COLLOQUIO ORALE: discussione orale, attraverso una presentazione in PowerPoint or PDF, sul progetto sviluppato. Lo studente avrà un tempo massimo di 10 minuti per descrivere il progetto svolto e i relativi punti chiavi e originali.
non previste
non previste
n.a.