Computazione Naturale - Dipartimento di Matematica e Informatica

Computazione Naturale
AA. 2012-2013
Prof. Mario Pavone
CdL Magistrale in Informatica
Dip. Matematica ed Informatica
[email protected]
http://www.dmi.unict.it/mpavone/
— 
— 
— 
— 
— 
— 
Cos’è la Computazione Naturale?
Programma del corso
Obiettivi formativi
Modalità di Valutazione
Elaborati Finali/Tesi
Altre utili informazioni
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
— La
Teoria dell Evoluzione (Darwin, 1859) si basa
principalmente su due punti: la selezione, che premia gli
individui più forti di una specie, e la mutazione, che
introduce diversità nel patrimonio genetico
— Algoritmi Evolutivi: provano a simulare l’evoluzione
naturale/biologica per risolvere complessi problemi.
— Come mai tali sistemi artificiali complessi raggiungono
buone soluzione per un dato problema ?
— Finalità:
— comprendere più a fondo i processi di sviluppo dei sistemi
viventi
— s viluppare sistemi artificiali che riproducono le
caratteristiche dei processi naturali
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
— Sono
sistemi computazionali che prendono ispirazione
dall’evoluzione naturale
— Nature Inspired Computation: SIMULANO E NON
COPIANO
— Uno dei principi presi in prestito è la sopravvivenza del
migliore
— Le tecniche di computazione naturale vengono utilizzati per
problemi di ottimizzazione e learning
— Le tecniche di computazione naturale non richiedono alcuna
conoscenza del dominio di applicazione: SCATOLE NERE
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
— Applicazioni del mondo reale richiede lo sviluppo di
sistemi adattabili
— GOAL:
— scrivere solo semplici regole
— l’intelligenza emerge dall’interazione di queste regole
— L’evoluzione è un metodo di ricerca fra un numero
vasto di possibilità
— Evoluzione: metodo di adattamento ai cambiamenti
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
— Flessibilità: applicabile a differenti problemi
— Robustezza: in grado di affrontare incertezza
— Adattivi: in grado di gestire applicazioni in ambienti dinamici
attraverso l'auto-adattamento
— Autonomi: possono funzionare senza l’intervento dell’utente
— Decentrata: senza un autorità centrale
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
Stochastic optimization methods
Monte Carlo methods
Simulated Annealing
Evolutionary Algorithms
Genetic Algorithms
Evolution Strategies
Genetic Programming
Evolutionary Programming
Swarm intelligence
Artificial Immune Systems
Membrane Computing
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
— Punto di partenza: meccanismi dell
strumenti di ottimizzazione
evoluzione come
— evolvere una popolazione di soluzioni utilizzando operatori
ispirati alla variabilità genetica e selezione naturale
— Evolutionary Strategy by Rechenberg (1965,1973) e Schwefel
(1975,1977)
— Evolutionary Programming by Fogel, Owens e Walsh (1966)
— Genetic Algorithm by John Holland (1960):
— no risolvere problemi specifici, ma studiare il fenomeno di
adattamento
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
— GAs sono algoritmi basati sulla popolazione
— GAs prendono spunto dalla genetica
— popolazioni di cromosomi che si evolvono utilizzando una
simulazione della selezione naturale, assieme ad operatori di
ispirazioni genetica (incrocio, mutazione ed inversione)
— Un cromosoma è composto di geni, che rappresenta un particolare
allele
— Operatore di selezione consente ai cromosomi più adatti di
produrre più discendenti
— Incrocio: scambia parti dei cromosomi
— Mutazione: scambia casualmente i valori degli alleli
— Inversione: cambia l ordine dei geni in una sezione del cromosoma
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
Parents
Popolazione
di Soluzioni
Scambio delle
caratteristiche
dei parents
Cambiamenti
casuali
Offspring
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
— 
— 
— 
— 
— 
Teoria della computabilità
Single-Objective Optimization
Constrained Optimization
Multi-Objective Optimization
Algoritmi Evolutivi:
Evolutionary Strategy
Genetic Algorithms
Genetic Programming
Artificial Immune System
— 
— 
— 
— 
— 
Negative Selection, Clonal Selection, Immune
Network
Swarm Intelligence
— 
— 
PSO, ACO, ABC
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
— 
capire il funzionamento dei sistemi intelligenti
— 
capacità autonoma di implementazione
— 
conoscenza dei concetti biologici di base
— 
problem solving
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
— 
— 
Criteri:
—  accertamento del livello minimo per il conseguimento
degli obiettivi formativi
—  livello di maturazione nella disciplina
Esame:
1.  Test scritto
2.  Progetto e relazione: implementare un algoritmo
evolutivo su un dato problema
3.  discussione orale con presentazione del progetto
svolto.
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
— 
— 
— 
— 
— 
Consiste di 15 domande a risposta multipla
Ogni domanda può contenere una o più risposte
corrette
Per ogni risposta completamente corretta vengono
acquisiti 2 punti
Per ogni risposta parzialmente corretta viene
acquisito 1 punto
La prova scritta si considera superata se si
consegue una valutazione maggiore o uguale a 18
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
— Date le seguenti informazioni 1. 
2. 
3. 
4. 
5. 
descrizione di un problema combinatorico; un insieme di istanze del dato problema;
funzione obiettivo;
protocollo sperimentale;
elenco di alcuni algoritmi evolutivi, con specifiche
caratteristiche;
— il
candidato deve implementare un algoritmo scelto
dall'elenco al punto (5), che risolva approssimativamente le
istanze date, utilizzando il protocollo sperimentale fornito al
punto (4);
— la consegna dell'elaborato con relazione scritta in LaTeX
(min. 4 pag - max 12 pag) viene fissata 15/20 giorni successivi
alla data del punto precedente;
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
1. originalità del lavoro prodotto;
2. complessità dell'algoritmo implementato;
3. risultati ottenuti dall'algoritmo
implementato;
4. qualità della relazione prodotta.
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
— La
terza prova consiste di una discussione orale sul
progetto sviluppato
— Il
candidato deve descrivere l'elaborato prodotto
tramite presentazione
— Al candidato verrà assegnato un tempo di 10 minuti
per la sua presentazione
— La seconda e terza prova può essere sostenuta o nello
stesso appello in cui si è superata la prima prova, o al
più all’appello successivo
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
1. esposizione;
2. sintesi di presentazione del lavoro svolto;
3. qualità della presentazione prodotta.
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt
Ø 
Implementazione di Algoritmi Nature-Inspired sui
seguenti argomenti:
ü  Combinatorial and Numerical Optimization
Problems
ü  Computational Biology
ü  Operational Research
ü  Reverse Engineering Methodologies
ü  BioSystem Reverse Engineering
— 
Recapiti:
— 
— 
— 
— 
Ricevimento
— 
— 
stanza 32 - 3° blocco
tel: 095 738 3038
Email: [email protected]
Mercoledì ore 15.30 - 17.30 (previo appuntamento)
Avvisi e Materiale
— 
— 
http://www.dmi.unict.it/mpavone/nc-cs/
Forum ufficiale del corso
Mario Pavone, AA. 2012/2013– Computazione Naturale, CdL Magistrale in Informatica, DMI, UniCt