Apprendimento Automatico Calcolo Evoluzionistico Stefano Cagnoni.

Slides:



Advertisements
Presentazioni simili
I meccanismi dell’evoluzione
Advertisements

Prof. Salvatore Di Gregorio Dr. William Spataro Dr. Donato D’Ambrosio
2. Introduzione alla probabilità
Proprietà degli stimatori
Laboratorio Processi Stocastici
AGENTI CHE RISOLVONO PROBLEMI Ottimizzazione euristica
Applications of Evolutionary Algorithms Giuseppe Nicosia Dep. of Mathematics and Computer Science University of Catania.
La formazione di nuove specie
Campione e campionamento
Definizioni Chiamiamo esperimento aleatorio ogni fenomeno del mondo reale alle cui manifestazioni può essere associata una situazione di incertezza. Esempi:
CAMPIONE E CAMPIONAMENTO
Inferenza statistica per un singolo campione
Effetto dell’interazione tra
L’evoluzione biologica
Apprendimento Non Supervisionato
Processi Aleatori : Introduzione – Parte I
Appunti di inferenza per farmacisti
Apprendimento: Regola “Delta”
Alberi di Ricorrenza Gli alberi di ricorrenza rappresentano un modo conveniente per visualizzare i passi di sostitu- zione necessari per risolvere una.
STATISTICA a.a PARAMETRO t DI STUDENT
Algoritmi Genetici Prof. Salvatore Di Gregorio Dr. William Spataro Dr. Donato DAmbrosio Modelli Computazionali per Sistemi Complessi A.A. 2003/2004 Università
Modelli simulativi per le Scienze Cognitive Paolo Bouquet (Università di Trento) Marco Casarotti (Università di Padova)
Modelli simulativi per le Scienze Cognitive Paolo Bouquet (Università di Trento) Marco Casarotti (Università di Padova)
Modelli simulativi per le Scienze Cognitive
Studente Claudia Puzzo
Il Linguaggio Macchina
Lezione 8 Numerosità del campione
Num / 36 Lezione 9 Numerosità del campione.
Intelligenza Artificiale Algoritmi Genetici
Intelligenza Artificiale
Apprendimento Automatico Apprendimento non supervisionato:
CALCOLO EVOLUZIONISTICO. In ogni popolazione si verificano delle mutazioni. Le mutazioni possono generare individui che meglio si adattano allambiente.
Algoritmi Genetici Alessandro Bollini
UNIVERSITA’ DEGLI STUDI DI CASSINO FACOLTA’ DI SCIENZE MOTORIE
Elementi di Informatica di base
TRASDUTTORI E SENSORI.
Radix-Sort(A,d) // A[i] = cd...c2c1
Tipo di prensione ed effetti di compatibilità: una simulazione connessionista Giorgio Tsiotas Anna M. Borghi
e programmazione genetica
Unità 2 Distribuzioni di probabilità Misure di localizzazione Misure di variabilità Asimmetria e curtosi.
Biologia.blu B - Le basi molecolari della vita e dell’evoluzione
La teoria dei campioni può essere usata per ottenere informazioni riguardanti campioni estratti casualmente da una popolazione. Da un punto di vista applicativo.
ALGORITMI a.
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.
La Genetica di popolazioni studia i fattori che influenzano la trasmissione dei caratteri ereditari a livello di popolazioni e i processi evolutivi che.
Implementazione di dizionari Problema del dizionario dinamico Scegliere una struttura dati in cui memorizzare dei record con un campo key e alcuni altri.
Laurea Ing EO/IN/BIO;TLC D.U. Ing EO 6 PULSE CODE MODULATION (PCM)
PROGETTO E REALIZZAZIONE DI UN COMPONENTE SOFTWARE PROGRAMMABILE PER LA PIANIFICAZIONE DI COMMISSIONI DI LAUREA FACOLTA’ DI INGEGNERIA Corso di Laurea.
Didattica e Fondamenti degli Algoritmi e della Calcolabilità Terza giornata: principali classi di complessità computazionale dei problemi Guido Proietti.
Presentazione sull 'Evoluzionismo.
L’equilibrio di HW riguarda il modo in cui i gameti si assortiscono due a due a formare gli zigoti, possiamo definirlo quindi un equilibrio diploide L’altro.
Il Principio di Hardy-Weinberg
La statistica F Permette di confrontare due varianze, per stabilire se sono o no uguali. Simile al valore t di Student o al chi quadrato, l’F di Fisher.
Alessandro Bollini Dipartimento di Informatica e Sistemistica Università di Pavia Via Ferrata, Pavia Algoritmi Evolutivi.
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 Metodi di ricerca informata Prof. M.T. PAZIENZA a.a
La variabile casuale (v.c.) è un modello matematico in grado di interpretare gli esperimenti casuali. Infatti gli eventi elementari  che compongono lo.
Conversione binario-ottale/esadecimale
Ricerca locale M. Simi, Algoritmi di ricerca locale  Efficienti in occupazione di memoria  tengono traccia solo dello stato corrente (non.
Ricerca locale Maria Simi Assunzioni sui problemi  Gli algoritmi visti esplorano gli spazi di ricerca alla ricerca di un goal e restituiscono.
Centro Studi Sistemi Idrici Corso sull’utilizzo dei modelli EPR (Evolutionary Polynomial Regression) 21 maggio 2010 Dipartimento di Ingegneria dell’Università.
Psicometria modulo 1 Scienze tecniche e psicologiche Prof. Carlo Fantoni Dipartimento di Scienze della Vita Università di Trieste Campionamento.
Laboratorio evoluzione Marcello Sala CAVALLI E GIAGUARI.
I LIMITI.
La funzione CASUALE. Gli istogrammi.
L’equilibrio di HW riguarda il modo in cui i gameti si assortiscono due a due a formare gli zigoti, possiamo definirlo quindi un equilibrio diploide L’altro.
ESERCITAZIONE DUE Parte III – Dimensionamento rete di distribuzione Si dimensioni la rete di distribuzione idrica schematizzata in figura al fine di minimizzare.
Il DEFF Il DEFF (Design EFFect) è l’Effetto del Piano di
Teoria dei Sistemi di Trasporto Tematica 4: Elementi minimi di teoria della probabilità.
Transcript della presentazione:

Apprendimento Automatico Calcolo Evoluzionistico Stefano Cagnoni

In ogni popolazione si verificano delle mutazioni. Le mutazioni possono generare individui che meglio si adattano allambiente. Questi sopravviveranno più a lungo (selezione naturale) generando più figli (riproduzione). I figli preservano in parte i caratteri genetici dei genitori (cromosomi, composti da geni) e, in parte, mescolandoli (crossover), creano nuovi tipi. Evoluzione

Si ha una maggiore probabilità che le generazioni successive presentino i caratteri degli individui più adatti (cioè con fitness più elevata) allambiente in cui vivono (evoluzione). Il codice genetico di un individuo è detto genotipo. La manifestazione dei caratteri codificati in tale codice è detta fenotipo. Evoluzione

Nelle scienze: Verifica tramite simulazioni di ipotesi in biologia, sociologia, religione ecc. Per l'ingegneria: Ottimizzazione di funzioni Ottimizzazione combinatoria Apprendimento automatico Soluzione di problemi Calcolo Evoluzionistico

Corrispondenze natura-calcolo IndividuoSoluzione di un problema PopolazioneInsieme di soluzioni FitnessQualità di una soluzione Cromosoma*Rappresentazione di una soluzione Gene *Componente di una rappresentazione Crossover MutazioneOperatori per la ricerca di soluzioni Selezione NaturaleRiutilizzo di buone soluzioni Evoluzione Ricerca di buone soluzioni * solo per gli algoritmi genetici

Componenti di un algoritmo evoluzionistico 1.Rappresentazione (codifica) 2.Funzione di valutazione (fitness function) 3.Popolazione 4.Meccanismo di selezione (dei genitori) 5.Operatori di modifica/ricombinazione 6.Meccanismo di selezione dei sopravviventi (sostituzione) 7.Strategia di inizializzazione 8.Condizione di arresto

Generico algoritmo evoluzionistico 1. Inizializza una popolazione 2. Valuta la fitness della popolazione 3. Ripeti: a. seleziona un sottoinsieme della popolazione in base alla fitness b. a partire dagli individui selezionati, genera una nuova popolazione mediante gli operatori di modifica/ricombinazione c. Valuta la fitness della nuova popolazione fino al soddisfacimento di un criterio di arresto

Algoritmi genetici Negli algoritmi genetici si ottengono nuove soluzioni operando su una loro codifica: in termini genetici, si opera (come del resto accade anche in natura) sul solo genotipo. E quindi necessaria una decodifica da genotipo a fenotipo. I cromosomi sono stringhe di simboli (es. 0 o 1). Gli individui possono essere qualunque cosa possa essere rappresentata con una stringa di simboli. I fenotipi possono essere, ad esempio, vettori di parametri, liste di possibili scelte, connessioni fra neuroni in una rete neurale ecc.

Semplice algoritmo genetico 1.Genera una popolazione casuale di cromosomi. 2.Decodifica ogni cromosoma per ottenere un individuo. 3.Valuta la fitness di ciascun individuo. 4.Genera una nuova popolazione, in parte clonando (copiando), in parte ricombinando e in parte mutando i cromosomi degli individui con fitness più elevata. 5.Ripeti 2,3,4 fino ad una condizione di stop.

Rappresentazione Numeri Interi (da 0 a 2 n -1, da K a K+2 n -1, da 0 a M con M 2 n -1) Reali Elementi appartenenti ad insiemi limitati Vettori di parametri o numeri

Rappresentazione Rappresentazioni simili devono rappresentare cose simili Codifica di Gray Rappresentazioni di interi consecutivi differiscono per un bit Gray Bin Gray Bin Linversione di un bit produce piccoli cambiamenti Se però il cambiamento è grande è maggiore che con una normale codifica binaria

Fitness Function Ipotesi fondamentale 1.Esiste una misura Q della bontà di una soluzione. 2.Q è sempre positiva 3.Deve essere massimizzata 4.La Q di un individuo è la sua fitness

Popolazione Una popolazione è un multiset (insieme in cui è accettabile la presenza di più copie di uno stesso elemento) di soluzioni E caratterizzata o dalla sola dimensione (numero di individui) o, eventualmente, anche da una struttura di tipo spaziale in cui ogni individuo ha un insieme di vicini in un suo intorno. Quasi sempre la dimensione della popolazione resta costante nelle diverse generazioni. Si definisce diversità di una popolazione il numero di individui diversi presente al suo interno.

Selezione E la strategia che determina come gli individui (in realtà il loro genotipo, rappresentato dai cromosomi) devono essere selezionati per la riproduzione. Per simulare la selezione naturale, agli individui con fitness più elevata viene attribuita una più alta probabilità di essere selezionati. Vi sono diverse strategie per la selezione (alcune non plausibili biologicamente). Di solito in un algoritmo genetico: a.Un gruppo di soluzioni è selezionato per laccoppiamento (mating pool) b. Coppie di individui sono estratti a caso dal mating pool e vengono accoppiati (riproduzione sessuata)

Selezione Selezione proporzionale alla fitness (fitness-proportionate selection) E il metodo di selezione più comune. Ad ogni individuo è assegnata una probabilità di essere selezionato proporzionale alla propria fitness p i = f i / k f k NB E propriamente una probabilità poiché i p i = 1

Selezione Implementazione (selezione proporzionale alla fitness) Supponiamo di avere 4 individui con fitness f 1 =f 2 =10 f 3 =15 f 4 =25 Allora si avrà (probabilità di selezione): p 1 =p 2 =1/6 p 3 =1/4 p 4 =5/12

Selezione Implementazione (selezione proporzionale alla fitness) 1. Metodo della roulette Ogni posizione della freccia corrisponde ad un certo numero. Si estrae un numero casuale e si seleziona l'individuo puntato dalla freccia.

Selezione Implementazione (selezione proporzionale alla fitness) 2. Vettore di dimensione N (N = minimo comune denominatore) N-1 Si estrae un numero a caso (da 0 a N-1) e si seleziona lindividuo corrispondente al valore nella posizione estratta. 3. Numero reale compreso fra 0 e j f j Si accodano le fitness e si estrae un numero a caso r compreso in tale intervallo e si seleziona lindividuo i tale che j=1,i-1 f j r < j=1,i f j

Selezione Problemi Convergenza prematura Se un individuo i ha fitness molto maggiore della media della popolazione ma molto minore della massima fitness possibile, tenderà a essere sempre selezionato e quindi a generare una popolazione mediocre. Stagnazione Dopo un certo numero di generazioni, tutti gli individui hanno una buona fitness e quindi tendono ad avere la stessa probabilità di essere selezionati.

Selezione Selezione per rango (rank selection) Si ordinano gli individui per fitness (in modo decrescente). Si fissa una distribuzione di probabilità decrescente con la posizione occupata, indipendente dai valori di fitness. Vantaggi Non si ha convergenza prematura: nessun individuo ha probabilità molto maggiore degli altri di essere selezionato Non cè stagnazione: la distribuzione probabilità non varia. Svantaggi Computazionalmente pesante. Nota: non è biologicamente plausibile.

Selezione Selezione tramite torneo (tournament selection) Per ogni individuo da selezionare, si seleziona a caso un gruppo di individui e si inserisce il migliore nella generazione successiva (torneo). Vantaggi Come selezione per rango, ma non cè necessità di ordinamento.

Selezione Selezione elitista Almeno una copia dellindividuo migliore viene mantenuta nella generazione successiva. Vantaggi Non si perdono soluzioni buone nei processi casuali di selezione. Svantaggi Si possono raggiungere massimi locali se i caratteri di tale individuo diventano dominanti.

Selezione dei sopravviventi (sostituzione) Se è la dimensione della popolazione e il numero di figli che abbiamo generato, da genitori e figli bisogna selezionare gli individui che costituiranno la popolazione nella generazione successiva. Se si parla di algoritmo generazionale, se si parla di algoritmo steady state. Si possono utilizzare strategie di selezione basate sulla fitness o indipendenti da essa. Strategie basate sulletà Indipendentemente dalla fitness, ogni individuo sopravvive per un numero prefissato di generazioni. Di implementazione banale se (la generazione t+1 è integralmente composta dai figli della generazione t). Se è bene tenere conto della fitness (con una sostituzione casuale la probabilità di perdere lindividuo migliore è molto elevata).

Selezione dei sopravviventi (sostituzione) Strategie basate sulla fitness Si possono utilizzare le stesse strategie viste per la definizione del mating pool (proporzionale alla fitness, basata sullordine, basata su torneo). E possibile anche introdurre il fattore età, imponendo ad esempio (se ) che tutti i figli passino alla generazione successiva, per poi usare la fitness per selezionare i restanti – genitori. La strategia replace worst sostituisce i peggiori individui. Le strategie elitiste impongono di mantenere lindividuo con la fitness più elevata nella popolazione.