Alessandro Bollini Dipartimento di Informatica e Sistemistica Università di Pavia Via Ferrata, 1 27100 Pavia Algoritmi Evolutivi.

Slides:



Advertisements
Presentazioni simili
I meccanismi dell’evoluzione
Advertisements

Teoria e Tecniche del Riconoscimento
Prof. Salvatore Di Gregorio Dr. William Spataro Dr. Donato D’Ambrosio
Il laboratorio e l’attività di campagna
AGENTI CHE RISOLVONO PROBLEMI Ottimizzazione euristica
Applications of Evolutionary Algorithms Giuseppe Nicosia Dep. of Mathematics and Computer Science University of Catania.
Lez. 31 Universita' di Ferrara Facolta' di Scienze Matematiche, Fisiche e Naturali Laurea Specialistica in Informatica Algoritmi Avanzati Programmazione.
Evolvere robot stigmergici in Evorobot*
Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010.
L’evoluzione biologica
UN ESEMPIO DI ESPERIMENTO CASUALE
Processi Aleatori : Introduzione – Parte I
Stima ed algoritmi di consensus distribuito: considerazioni su IKF
CORSO DI MODELLI DI SISTEMI BIOLOGICI LAUREA IN INGEGNERIA CLINICA E BIOMEDICA.
TECNOLOGIE DEI SISTEMI DI CONTROLLO
BIOINGEGNERIA S. Salinari Lezione 7. RETI CON APPRENDIMENTO SUPERVISIONATO A DISTANZA Nello sviluppo delle reti neurali si è proceduto indebolendo via.
Tecniche di Risoluzione della Programmazione a Breve Termine.
DATA PROCESSING UNIVERSITÀ DEGLI STUDI DI ROMA “LA SAPIENZA”
Apprendimento di movimenti della testa tramite Hidden Markov Model
Physically-based Animations of 3D Biped Characters with Genetic Algorithms Università di Roma La Sapienza Relatore: Prof. Marco Schaerf Correlatore: Ing.
L’indagine OCSE-PISA: il framework e i risultati per la matematica
CONTROLLO DI SUPPLY CHAIN MEDIANTE TECNICHE H-INFINITO E NEGOZIAZIONE
Algoritmi Genetici Prof. Salvatore Di Gregorio Dr. William Spataro Dr. Donato DAmbrosio Modelli Computazionali per Sistemi Complessi A.A. 2003/2004 Università
EVOLUZIONE TEORIA E PROBLEMI1. Lorigine della vita Gli esperimenti per ricostruire le condizioni primordiali Levoluzione molecolare La formazione di organismi.
Monitoraggio, analisi e qualità dei dati Lucia Buzzigoli Gianni Marliani Cristina Martelli Dipartimento di Statistica G.Parenti La rilevazione dei prezzi.
FONDAMENTI DI INFORMATICA III A2A2-1 CARATTERISTICHE E MODELLIZZAZIONE DEL LAVORO DUFFICIO Argomento 2 Approfondimento 2 CARATTERISTICHE E MODELLIZZAZIONE.
Bioinformatica Andrea G. B. Tettamanzi.
Intelligenza Artificiale Algoritmi Genetici
Intelligenza Artificiale
CALCOLO EVOLUZIONISTICO. In ogni popolazione si verificano delle mutazioni. Le mutazioni possono generare individui che meglio si adattano allambiente.
In contrapposizione con i metodi convenzionali (hard computing), le tecniche di soft computing non si basano su procedimenti esprimibili in forma chiusa.
Apprendimento Automatico Calcolo Evoluzionistico Stefano Cagnoni.
ADSL VOIP Voice Over IP.
Algoritmi Genetici Alessandro Bollini
Programmazione Genetica
IMRT: “Intensity modulated Radiation Therapy”
Corso di Sistemi Complessi Adattativi
TECNICHE DI CAMPIONAMENTO DI POPOLAZIONI RARE O IN MANCANZA DI LISTE
Algoritmi genetici e giochi… PEG SOLITAIRE Attività formativa 2005/2006 Docente: Roberto TaurasoStudenti: Vincenzo Ferrazzano Luca Burini UNIVERSITA' DEGLI.
Sistemi e Tecnologie Informatiche Requisiti per la realizzazione di un buon programma.
e programmazione genetica
TRASFERIRE NEL GIOCO LE ABILITA’ TECNICHE ACQUISITE
Biologia.blu B - Le basi molecolari della vita e dell’evoluzione
1 AUTOMATIZZAIAUTOMATIZZAIAUTOMATIZZAIAUTOMATIZZAI S.I. SISTEMASISTEMA INFORMATIVO INFORMATIVO PROCESSOPROCESSO DECISIONALE DECISIONALE DECISIONEDECISIONE.
I SISTEMI OPERATIVI Per meccanismi operativi (o meccanismi organizzativi) s’intende l’insieme dei processi che fanno funzionare il sistema.
Teoria della Complessità Concetti fondamentali
Il Gruppo di Lavoro.
MUTAZIONE: cambio di un bit Viene effettuata con bassa frequenza, ad es. 1bit ogni 1000 Ha la funzione di recupero di eventuali perdite di informazione.
Rete di Hopfield applicata al problema del TSP Federica Bazzano
Whole-body dynamic behavior and control of human-like robots. Analisi di un articolo del dipartimento di scienze informatiche dell’università di Stanford.
Lezione 2: Simulink Ing. Raffaele Carli (
Lezione di Ecologia e didattica dell’Ecologia prof
1 Università degli Studi di Roma “Tor vergata” Dipartimento di Ingegneria Civile Corso di Gestione ed esercizio dei sistemi di trasporto Docente: Ing.
Nelle popolazioni naturali la variabilità genetica (ovvero ereditaria) può essere di tipo qualitativo o quantitativo La variabilità qualitativa si riscontra.
L’evoluzione dei viventi …
Caso studio Tipologia 1 Piano di lavoro. Materia : Matematica Tipo di scuola :Liceo Scientifico Classe :2° Periodo:2° Quadrimestre Modulo:Disequazioni.
Iterative Learning Control per un manipolatore robotico
Università degli Studi di Urbino “Carlo Bo” FACOLTA’ DI ECONOMIA
Gli algoritmi genetici (GA)1 Si ispirano al meccanismo dell’evoluzione Viene creata una popolazione di individui che si riproduce ed evolve, di generazione.
Sistemi basati su conoscenza (agenti intelligenti) Prof. M.T. PAZIENZA a.a
Per un nuovo orientamento nella progettazione dei linguaggi di programmazione Tesi di Laurea di: RICCARDO SOLMI Università degli Studi di Bologna Facoltà.
Ricerca locale M. Simi, Algoritmi di ricerca locale  Efficienti in occupazione di memoria  tengono traccia solo dello stato corrente (non.
Computazione Naturale AA
BIOLOGIA EVOLUZIONISTICA (3)
Centro Studi Sistemi Idrici Corso sull’utilizzo dei modelli EPR (Evolutionary Polynomial Regression) 21 maggio 2010 Dipartimento di Ingegneria dell’Università.
Esercitazione 02/12/2008 Ing. Maria Teresa Borzacchiello Corso di Tecnica ed Economia dei Trasporti Prof. Vincenzo Torrieri 1 Il problema dell’ottimo di.
Università degli studi di Cagliari Facoltà di Ingegneria Dipartimento di Ingegneria Elettronica Gruppo di Elettromagnetismo Metodo di Progettazione Automatica.
Pensiero computazionale, tecnologie digitali e didattica della matematica Giampaolo Chiappini – Istituto per le Tecnologie Didattiche - Consiglio Nazionale.
Biologia Cellulare e Biotecnologie Genetica vegetale Sezioni Aree disciplinari Biochimica e Fisiologia Genetica e Biologia Molecolare Genetica Quantitativa.
Transcript della presentazione:

Alessandro Bollini Dipartimento di Informatica e Sistemistica Università di Pavia Via Ferrata, Pavia Algoritmi Evolutivi

Obiettivi +Introduzione al calcolo evolutivo. Motivazioni ed evoluzione storica. Rassegna dei principali modelli. +Approfondimento di algoritmi genetici e programmazione genetica. Modelli teorici di base. Esercitazioni su esempi didattici. -Problematiche operative. -Tecniche avanzate.

Algoritmi Evolutivi Organizzazione  Seminari Introduzione Algoritmi genetici Programmazione genetica Evoluzione grammaticale  Esercitazioni Algoritmi genetici Evoluzione grammaticale

Algoritmi Evolutivi Riferimenti  Articoli J. H. Holland. Genetic Algorithms. Scientific American, 267(1):66-72 (Intl. :44-50), July M. O’Neill e C. Ryan. Grammatical Evolution. IEEE Transactions On Evolutionary Computation, 5(4): , August  Siti GP Notebook EvoNet evonet.dcs.napier.ac.uk GA/GP Bibliography liinwww.ira.uka.de/bibliography/Ai/genetic.algorithms.html liinwww.ira.uka.de/bibliography/Ai/genetic.programming.html

Algoritmi Evolutivi Contesto  Un problema di esempio: massimizzazione della resa di un impianto chimico. Molte variabili di controllo. Variabili di controllo discrete. Fonti di rumore. Interazioni non-lineari. Tempi di reazione lunghi.

Algoritmi Evolutivi Come procedere?  Difficile da trattare per via analitica come problema di ottimizzazione. Modello diretto difficile da definire. Probabile mancanza di informazione sul gradiente della resa in funzione delle variabili di controllo.  Più abbordabile come problema di adattamento euristico. E’ relativamente facile valutare a posteriori la resa di un’impostazione. Lo spazio di ricerca è però molto vasto.

Algoritmi Evolutivi Tentativi ed errori  Fino all’identificazione di una soluzione accettabile (o all’esaurimento delle risorse disponibili…): Definizione di una soluzione casuale. Valutazione della soluzione. Adozione della soluzione migliore.

Algoritmi Evolutivi Massimo gradiente  Definizione di una soluzione iniziale casuale.  Fino all’identificazione di una soluzione accettabile: Generazione di una nuova soluzione come perturbazione della soluzione iniziale. Valutazione della nuova soluzione. Adozione della nuova soluzione come nuovo punto di partenza, a condizione che migliori la precedente.

Algoritmi Evolutivi Come allocare i tentativi?  Nel primo caso non sfrutto tutta l’informazione che ho già acquisito.  Nel secondo limito drasticamente l’esplorazione dello spazio di ricerca.  Esiste una strategia ottimale per risolvere questo conflitto?

Algoritmi Evolutivi L’ipotesi evolutiva  Gli organismi biologici affrontano problemi di adattamento al proprio ambiente con notevoli punti di contatto con la classe di problemi considerati.  Operano con discreto successo e non sembrano soffrire dei problemi di allocazione descritti.  Potrebbe essere possibile definire algoritmi di adattamento ispirati ad un modello dell’evoluzione biologica.

Algoritmi Evolutivi Linee di sviluppo  Modelli dell’adattamento ( ).  Strumenti di ottimizzazione ( ).  Strumenti euristici ( ).

Algoritmi Evolutivi Modelli dell’adattamento  Definizione di modelli matematici dei fenomeni di adattamento biologico.  Algoritmi genetici (Holland, ~1960).  Classificatori (Holland, ~1970).

Algoritmi Evolutivi Metafora biologica  Popolazione di individui.  Sviluppo di un fenotipo, tramite espressione di un genotipo.  Interazione con l’ambiente e valutazione dell’adattamento (fitness).  Riproduzione asessuata o sessuata, tramite operatori genetici.  Selezione degli individui maggiormente adattati.

Algoritmi Evolutivi Algoritmi genetici  Ricerca di un individuo adattato.  Modello evolutivo a livello di genotipo del singolo individuo.  Genotipo generalmente costituito da una stringa binaria di lunghezza fissa.  Operatori di ricombinazione e mutazione.  Espressione del genotipo e valutazione del fenotipo.

Algoritmi Evolutivi Classificatori  Ricerca di una popolazione di regole co-adattate, come modello di un sistema computazionale completo.  Modello evolutivo a livello di definizione delle singole regole, valutate però collettivamente in funzione della risposta globale del sistema.

Algoritmi Evolutivi Strumenti di ottimizzazione  Creazione di strumenti per la soluzione di problemi tecnologici.  Programmazione evolutiva (Fogel, 1960).  Strategie evolutive (Rechenberg, 1973; Schwefel, 1977).

Algoritmi Evolutivi Metafora funzionale  Insieme di punti in uno spazio di ricerca.  Definizione di una soluzione, sulla base di un insieme di parametri.  Valutazione di una funzione di costo.  Generazione di soluzioni perturbate.  Aggiornamento dell’insieme di ricerca corrente.

Algoritmi Evolutivi Programmazione evolutiva  Ricerca di una soluzione ottimale.  Modello evolutivo a livello di insieme di specie.  Descrizione del fenotipo medio della specie in termini di insieme di parametri.  Operatori di perturbazione della specie, con ampiezza inversamente proporzionale alla frequenza.  Coincidenza di genotipo e fenotipo.

Algoritmi Evolutivi Strategie evolutive  Ricerca di una soluzione ottimale.  Modello evolutivo a livello di fenotipo del singolo individuo.  Descrizione del fenotipo in termini di insieme di parametri.  Operatori di ricombinazione e perturbazione del fenotipo, con ampiezza inversamente proporzionale alla frequenza.  Coincidenza di genotipo e fenotipo.

Algoritmi Evolutivi Strumenti euristici  Creazione di strumenti per l’identificazione di strategie di risoluzione di un problema.  Programmazione genetica (Cramer, 1985; Koza, 1989).  Evoluzione grammaticale (O’Neill e Ryan, 1998).

Algoritmi Evolutivi Metafora computazionale  Insieme di punti in uno spazio di ricerca.  Definizione di una classe di soluzioni, in termini di un programma che definisce una strategia risolutiva.  Valutazione di una funzione di efficienza.  Generazione di soluzioni alterate ed ibridizzate.  Aggiornamento dell’insieme di ricerca corrente.

Algoritmi Evolutivi Programmazione genetica  Ricerca di un programma ottimale.  Modello evolutivo a livello di fenotipo del singolo individuo.  Fenotipo generalmente costituito da un albero sintattico eseguibile.  Operatori di ricombinazione e mutazione.  Coincidenza di genotipo e fenotipo.

Algoritmi Evolutivi Evoluzione grammaticale  Ricerca di un programma ottimale.  Modello evolutivo a livello di genotipo del singolo individuo.  Genotipo generalmente costituito una stringa binaria di lunghezza variabile; fenotipo costituito da un programma.  Operatori di ricombinazione e mutazione.  Espressione del genotipo e valutazione del fenotipo.

Algoritmi Evolutivi Sintesi adattamento ottimizzazione algoritmi genetici classificatori programmazione evolutiva strategie evolutive programmazione genetica evoluzione grammaticale programmazione

Algoritmi Evolutivi Struttura generalizzata  Configurazione dei parametri.  Inizializzazione della popolazione.  Fino all’identificazione di un individuo ottimo (o almeno accettabile…: Espressione dei genotipi; Valutazione dei fenotipi; Selezione degli individui ammessi alla riproduzione; Creazione della successiva popolazione.

Algoritmi Evolutivi Algoritmi evolutivi  Nome generico di una famiglia di algoritmi di ricerca, ottimizzazione e adattamento.  Basati su modelli computazionali dei meccanismi dell’evoluzione biologica.  Generalmente iterativi, paralleli e stocastici.

Algoritmi Evolutivi Motivazioni teoriche  Possibilità di studiare in un modello semplificato e facilmente manipolabile le dinamiche dei processi evolutivi biologici.  Possibilità di creare modelli di fenomeni complessi e non-lineari sulla base delle osservazioni empiriche.

Algoritmi Evolutivi Motivazioni pragmatiche  Possibilità di affrontare problemi di identificazione, ottimizzazione e ricerca di cui non sia nota la dinamica diretta.  Possibilità di affrontare problemi difficilmente affrontabili con mezzi analitici a causa di non-linearità, discretizzazioni, vincoli e discontinuità.  Parallelizzabilità.

Algoritmi Evolutivi Limiti  Stocasticità, non provabilità dell’ottimo.  Dinamica mal compresa e conseguenti difficoltà nella configurazione degli esperimenti.  Scarsa scalabilità.

Algoritmi Evolutivi Conclusioni  Esiste un ampio spettro di soluzioni algoritmiche accomunate dalla metafora evolutiva.  Sviluppate sulla base di motivazioni teoriche e pragmatiche.  In rapida evoluzione nonostante alcuni limiti, grazie alla flessibilità operativa ed a notevoli vantaggi in applicazioni di nicchia difficilmente affrontabili con mezzi analitici.