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.

Slides:



Advertisements
Presentazioni simili
I meccanismi dell’evoluzione
Advertisements

Cosa sono? Come si risolvono?
Prof. Salvatore Di Gregorio Dr. William Spataro Dr. Donato D’Ambrosio
Caratteristiche del controllo a catena aperta: un esempio
Rappresentazione dei dati e codifica delle informazioni
Procedure e funzioni A. Ferrari.
Intervalli di confidenza
Cenni sul campionamento
AGENTI CHE RISOLVONO PROBLEMI Ottimizzazione euristica
DISTANZE GENETICHE qK pK qL pL Prendiamo due popolazioni: K e L
Pubblicità e Marketing Il ciclo di vita del prodotto
Evolvere robot stigmergici in Evorobot*
Alberi binari di ricerca
Capitolo 10 Tecniche algoritmiche Algoritmi e Strutture Dati.
Selezione stabilizzatrice per alcune mutazioni cromosomiche
Intelligenza Artificiale 1 Gestione della conoscenza lezione 5 Prof. M.T. PAZIENZA a.a
L’evoluzione biologica
Capitolo 10 Tecniche algoritmiche Algoritmi e Strutture Dati.
Politecnico di Milano Algoritmi e Architetture per la Protezione dellInformazione Multichannel Adaptive Information Systems Paolo Maistri Dipartimento.
Modulazioni digitali: ricevitori
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Copyright © The McGraw - Hill Companies, srl Capitolo 4 Ordinamento:
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Copyright © The McGraw - Hill Companies, srl Usa la tecnica del.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Problemi e algoritmi Anno Accademico 2009/2010.
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à
Corso di Chimica Fisica II 2011 Prof. Marina Brustolon
Il Linguaggio Macchina
Intelligenza Artificiale Algoritmi Genetici
CALCOLO EVOLUZIONISTICO. In ogni popolazione si verificano delle mutazioni. Le mutazioni possono generare individui che meglio si adattano allambiente.
Apprendimento Automatico Calcolo Evoluzionistico Stefano Cagnoni.
Algoritmi Genetici Alessandro Bollini
Programmazione Genetica
Customer Satisfaction Maria De Luca
Propagazione degli errori
Elementi di Informatica di base
Esercizio 10.* Un cassiere vuole dare un resto di n centesimi di euro usando il minimo numero di monete. a) Descrivere un algoritmo goloso per fare ciò.
TRASDUTTORI E SENSORI.
Frattura Ogni processo di rottura avviene in due stadi : la formazione e propagazione della cricca Sono possibili due modi di rottura: duttile e fragile.
Servizio Nazionale di Valutazione: il mandato Art. 1, c. 5, Legge 25 ottobre 2007, n. 176: dallanno scolastico 2007/08 il Ministro della Pubblica Istruzione.
Accoppiamento non casuale Mutazione
INDICE I VALORI MEDI LA MEDIA GEOMETRICA LA MEDIA ARITMETICA
Cammini minimi da un sorgente
IL TRASFORMATORE.
Perceptron. è la somma effettuata sul nodo i-esimo dello strato j n è il numero di nodi dello strato j-1 è l'output proveniente dal nodo k-esimo dello.
Ugo de'Liguoro - Informatica 2 a.a. 03/04 Lez. 1 Cicli ed asserzioni Corso di Informatica 2 a.a. 2003/04 Lezione 1.
An annealing mutation operator in the genetic algorithms for RNA folding Bruce A.Shapiro and Jin Chu Wu.
La Genetica di popolazioni studia i fattori che influenzano la trasmissione dei caratteri ereditari a livello di popolazioni e i processi evolutivi che.
Sistemi e Tecnologie Informatiche Verifica di correttezza di un programma.
R. Soncini Sessa, MODSS, L 26 Stima degli effetti Calcolo degli obiettivi (Laplace) Rodolfo Soncini Sessa MODSS Copyright 2004 © Rodolfo Soncini.
Determinazione della fase
Le mutazioni Classe: IV Scuola: Liceo scientifico.
IL CAMPIONE.
Hashing. 2 argomenti Hashing Tabelle hash Funzioni hash e metodi per generarle Inserimento e risoluzione delle collisioni Eliminazione Funzioni hash per.
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.
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Copyright © The McGraw - Hill Companies, srl Capitolo 4 Ordinamento:
Codici prefissi Un codice prefisso è un codice in cui nessuna parola codice è prefisso (parte iniziale) di un’altra Ogni codice a lunghezza fissa è ovviamente.
Ricerca locale M. Simi, Algoritmi di ricerca locale  Efficienti in occupazione di memoria  tengono traccia solo dello stato corrente (non.
Informatica e Informatica di Base
Complessità Computazionale
Economia e Organizzazione Aziendale
Ricerca locale Maria Simi Assunzioni sui problemi  Gli algoritmi visti esplorano gli spazi di ricerca alla ricerca di un goal e restituiscono.
Obiettivi e strategie per la diversificazione degli investimenti e la de-correlazione dei rischi Firenze 25 Gennaio 2016.
Scegliendo, invece, una rappresentazione con variabili complesse si ottiene:
L’analisi di regressione e correlazione Prof. Luigi Piemontese.
Cause delle alterazioni dell’equilibrio di Hardy- Weinberg Accoppiamento assortativo Accoppiamento assortativo Mutazioni Mutazioni Migrazioni Migrazioni.
Concetti di base. Per biodiversità si intende l'insieme di tutte le forme viventi geneticamente diverse e degli ecosistemi ad esse correlati Il termine.
Prof.ssa Rossella Petreschi Lezione del 3 /10/2012 del Corso di Algoritmi e Strutture Dati Riferimenti: Capitolo 18 del testo Cormen, Leiserson, Rivest.
Prof.ssa Rossella Petreschi Lezione del 17 /10/2014 del Corso di Algoritmica Lezione n°5.
Transcript della presentazione:

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

SCHEMI Indichiamo uno schema con la lettera H Esempi: *111* 0*1** *indica un carattere indeterminato Il numero di schemi possibili, nel caso di alfabeto binario, è 3 l, dove l è la lunghezza della stringa Il numero di schemi possibili, nel caso di alfabeto di cardinalità K, è (K+1) l Ordine O(H) dello schema H è il numero di posizioni determinate dello schema. Lunghezza  (H) dello schema H è la distanza tra la prima e l’ultima posizione determinata dello schema.

Riproduzione A i stringa (individuo) n=numero totale di stringhe (popolazione) f i =fitness di A i t=tempo (ciclo dell’iterazione) Probabilità di riproduzione di A i : Probabilità di riprodurre un individuo appartenente allo schema H: è una sommatoria estesa ai soli individui appartenenti allo schema H

Indicando con m(H,t) il numero di individui appartenenti allo schema H, e con f(H,t) la loro fitness media, ovvero: da cui deriva: si potrà scrivere:

Poiché la popolazione rimane costante nel tempo, la scelta di un individuo per la riproduzione viene effettuato n volte. Indicando con m(H,t+1) il numero di individui appartenenti allo schema H al ciclo t+1, si avrà mediamente: Indicando con la fitness media della popolazione al tempo t: si ricava infine:

Esemplificazione per capire l’andamento nel tempo del numero degli individui appartenenti ai vari schemi. Si può scrivere: da cui: Nell’ipotesi (molto estrema) di fattore c costante nel tempo (nei vari cicli), si ottiene che la popolazione al tempo t è data, in funzione di quella iniziale (al tempo 0) dalla relazione: Il che significa che se c è negativo (fitness media dello schema minore della fitness media della popolazione), si ha un decremento esponenziale del numero di individui appartenenti a quello schema, mentre se c è positivo si ha un incremento esponenziale.

Crossing over Esempio di taglio in un individuo appartenente al seguente schema:  (H) = = 5 Probabilità (data per eccesso) di distruzione p d dello schema H: Se p c è la probabilità con cui viene effettuato il crossing over : Probabilità di sopravvivenza p s dello schema H : Tenuto conto anche del crossing over, la valutazione (per difetto) della popolazione diviene:

Mutazione Probabilità che una posizione venga mutata : p m Probabilità che una posizione rimanga immutata : 1 - p m Probabilità che un individuo, dopo le mutazioni, continui ad appartenere allo schema H : Se p m << 1, si può scrivere: Tenendo conto anche della mutazione, si ottiene infine il teorema degli schemi o teorema fondamentale degli algoritmi genetici: Notare che nel prodotto del fattore crossing over con quello della mutazione, è stato trascurato, poiché piccolo, il termine:

Sono detti schemi in competizione, quelli con le stesse caratteristiche “geometriche”, ovvero con fattore uguale; la variazione nel tempo delle rispettive popolazioni dipenderà dalla loro fitness media. Indicando 2 schemi in competizione con a e b, e una loro generica posizione con il pedice i, sono caratterizzati dalle due alternative: a i = b i = * a i ≠ *, b i ≠ * con a i ≠ b i in almeno una posizione i esempio : * 0 0 * * 0 1 * * 1 0 * * 1 1 * Il numero di schemi in competizione in un gruppo è dato da 2 o(H) Il numero di gruppi diversi di schemi in competizione con lo stesso ordine o(H) è dato da : dove l è la lunghezza della stringa Il numero totale di gruppi diversi di schemi è dato da : 2 l

Efficienza dell’algoritmo genetico Il numero degli schemi processati può essere valutato come proporzionale a n 3, per una popolazione di n individui rappresentati con alfabeto binario. Questa caratteristica, per cui con operazioni su n individui si esaminano e sottopongono a evoluzione un numero proporzionale a n 3 schemi, è detta parallelismo implicito. Dal teorema fondamentale degli algoritmi genetici: si desume l’altra caratteristica degli algoritmi genetici, ovvero che sono efficienti quando le soluzioni ottimali del problema sono ottenibili assemblando degli schemi corti, ovvero con  (H) piccolo. Questa caratteristica è detta building block hypothesis.

Linee guida nella codificazione del problema 1) Schemi corti e poco correlati con altri schemi che hanno bit definiti lontani nella stringa, devono essere rilevanti nella soluzione del problema. 2) L’alfabeto usato deve avere bassa cardinalità (possibilmente binario). Si dimostra che con alfabeto binario si ha un numero di schemi possibili maggiore che con qualsiasi altra cardinalità. Poiché il numero di punti dello spazio in cui rappresentiamo il problema è lo stesso: numero di schemi possibili: cardinalità 2cardinalità K facendo il lg 2 del numero degli schemi possibili: e dividendo per l, si ottiene: ma si ha che per K>2

Tests di De Jong

Criteri di valutazione dell’algoritmo genetico On-line performance: dove l è l’ambiente (il problema), s la strategia (il particolare algoritmo genetico adottato), t è il ciclo, T il numero totale di cicli effettuati, f(t) è il valore migliore della funzione di valutazione al ciclo t. Off-line performance: dove f*(t) è il valore migliore della funzione di valutazione al ciclo t, tra tutte le esecuzioni effettuate.

Valutazioni generali sui parametri dell’algoritmo genetico semplice Popolazione n n grande: migliore off-line performance n piccolo: migliore on-line performance Probabilità di crossing over p c : Probabilità di mutazione p m : p m elevato recupera i bit persi, ma diminuisce la performance (p m =.5 coincide con ricerca casuale) Sovrapposizione della popolazione G: G = 1 per ottimizzazioni statiche; G < 1 per macchina che apprende

Alcune varianti dell’algoritmo genetico semplice Scalatura della funzione di valutazione:dove f è la funzione originaria Fattore di affollamento CF: il nuovo individuo generato sostituisce il più simile scelto in un gruppo di CF individui della vecchia popolazione. a e b sono determinati in modo che soddisfino le condizioni: Risolvendo: denominatore:

numeratore per trovare a: numeratore per trovare b:

Possibile situazione iniziale

Possibile situazione finale

NICCHIA e condivisione tra gli individui delle risorse della nicchia

Funzione di “sharing” Siano dati due individui x i e x j, si definisce una distanza d(x i, x j ), tale che: d(x i, x j ) d(x i, x i ) = 0 valore minimo quando i 2 individui sono = d(x i, x j ) = 1 valore massimo per i 2 individui più differenti in tutta la popolazione Si definisce una funzione di sharing s[d(x i, x j )], che segue la seguente legge: La funzione di valutazione f s, viene ottenuta dalla funzione originaria f modificata tramite la funzione di sharing: dove n è la popolazione

Capacità adattativa degli algoritmi genetici Si intende la capacità di adattarsi a trovare soluzioni ad un problema che cambia nel tempo Viene incrementata con i seguenti accorgimenti: 1) mantenimento di soluzioni di precedenti cicli: a) fattore di affollamento CF, che diversifica le soluzioni b) G < 1, che mantiene individui dei cicli precedenti 2) inserire la capacità di evoluzione nello stesso algoritmo, introducendo nella stringa dell’individuo i parametri di controllo p c, p m, G, che quindi possono essere modificati nel tempo

Applicazioni nell’ambito di strutture molecolari Interpretazione di cromatogrammi complessi Interpretazione di spettri NIR Docking di complessi supramolecolari Generazione di strutture che rispettino i dati NMR Ottimizzazione della conformazione di catene laterali di proteine globulari Previsione delle modificazioni strutturali a seguito di sostituzione di catene laterali (mutazione) in proteine (ingegneria genetica) Tentativi di previsione di struttura terziaria in proteine, a partire dalla conoscenza della sequenza primaria