La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Un Algoritmo Immunologico per il Riconoscimento di Caratteri e per il Problema 3-SAT Giuseppe Nicosia Dipartimento di Matematica e Informatica Università

Presentazioni simili


Presentazione sul tema: "Un Algoritmo Immunologico per il Riconoscimento di Caratteri e per il Problema 3-SAT Giuseppe Nicosia Dipartimento di Matematica e Informatica Università"— Transcript della presentazione:

1 Un Algoritmo Immunologico per il Riconoscimento di Caratteri e per il Problema 3-SAT Giuseppe Nicosia Dipartimento di Matematica e Informatica Università di Catania In questa presentazione descriverò il lavoro di tesi dal titolo

2 Indice della presentazione Computazione Evolutiva: Metafora SI, Selezione Clonale ed Algoritmo immunologico Learning e riconoscimento di caratteri mediante un Algoritmo Immunologico (AI). Risoluzione di istanze difficili del problema 3-SAT con un AI. In particolare vedremo tre sezioni:nella prima descriverò brevemente: la metafora utilizzata, i meccanismi che da essa abbiamo estratto e lo sviluppo dellalgoritmo che abbiamo creato,nella seconda vedremo che questo mantiene le proprietà di apprendimento ereditate dal SI naturale, e nella terza osserveremo il comportamento dellalgoritmo nel risolvere istanze difficili di un problema NP- completo quale il 3SAT

3 Algoritmi Evolutivi Gli operatori principali: Selezione Ricombinazione Mutazione Nascono dal paradigma della evoluzione biologica della specie Questi algoritmi vengono utilizzati in applicazioni quali riconoscimento di patterns ed ottimizzazioni di funzioni.

4 Sistema Immunitario Naturale Il SI naturale è un sistema di riconoscimento e difesa dellorganismo da agenti patogeni esterni. Ci siamo posti la seguente domanda : E possibile utilizzare i meccanismi del SI per costruire un algoritmo evolutivo capace di risolvere problemi di riconoscimento ed ottimizzazione ? Il lavoro della tesi è una prima risposta a questa domanda.

5 Meccanismi Principali del SI Naturale Il SI naturale riconosce ed elimina gli agenti patogeni esterni (antigeni) con un sistema complesso, basato sul matching, anche non perfetto, tra le caratteristiche dei linfociti B (Cellule B) e gli antigeni. La cellula B che ha riconosciuto un antigene attiva un processo di clonazione e successiva ipermutazione dei cloni. Per alcune di queste cellule il tempo di vita media si allunga (cellule memoria). Le cellule che non riconoscono gli antigeni muoiono in pochi giorni; nuove cellule B vengono prodotte continuamente dal midollo spinale.

6 Il SI Naturale Il SI naturale riconosce ed elimina gli agenti patogeni esterni ( Antigeni ) con un sistema complesso, basato sul matching, anche non perfetto, tra i recettori dei linfociti B ( Cellule B ) e gli antigeni.

7 Meccanismo della Selezione Clonale, produzione di plasma cellule e cellule memoria Affinity loop: Le cellule prodotte da clonazione vengono a loro volta sottoposte a selezione La cellula che supera la soglia di attivazione viene clonata, i cloni vengono sottoposti a mutazione alcuni evolveranno in Plasma cellule altri in Cellule memoria caratterizzate da un tempo di vita media molto lungo. Allinterno di questo mecc. È presente anche un processo chiamato affinity loop

8 Algoritmo Immunologico Basandoci su questi modelli del SI abbiamo costruito un algoritmo evolutivo che utilizza i seguenti operatori:

9 Gli Operatori Immunologici Selezione Selezione mediata dallantigene: Lincontro tra recettore ed Antigene genera informazione che serve al processo evolutivo della Selezione Clonale. Clonazione Clonazione: La cellula viene duplicata un numero di volte prestabilito. Ipermutazione Ipermutazione: Inserisce diversità nella popolazione garantendo la copertura di spazi di ricerca molto ampi.

10 LAlgoritmo Immunologico Procedura AI;{ Initpop P(0); /* Generazione casuale di P */ Evaluate P(0); /* Valutazione livelli affinità */ until(done) { t=t+1; CloningSelection P(t); /* Selezione in base ad affinità */ Hypermutation(); /* Mutazione B cells */ Birth(); /* Nascita B cells */ Evaluate P(t); Survive P(t); /* Secondo passo di selezione */ } Qui è mostrata la pseudo codifica dellalgoritmo da noi presentato. Sono ben visibili gli operatori precedentemente menzionati

11 Applicazioni Lalgoritmo descritto è stato verificato su due classici problemi computazionali: Il riconoscimento di caratteri Testato su due implementazioni diverse: Riconoscimento sequenziale e parallelo. Il 3-SAT Mediante luso di un meccanismo chiamato SAW. Dario: Forse è meglio: Osservando i comportamenti di due diverse implementazioni Dario: Forse è meglio: Osservando i comportamenti di due diverse implementazioni

12 I Applicazione Riconoscimento di Caratteri

13 Riconoscimento di Caratteri Ag Recettore codificati mediante un vettore di interi di dim. L = x 10 Distanza di Hamming Funzione di Fitness Definizione del problema: I caratteri in input vengono presentati come una matrice di bit 12x10; Gli antigeni e i recettori delle cellule B vengono codificati mediante un vettore di interi di dim. 120, la metrica che abbiamo utilizzato per definire la distanza tra rec. ed antig. è la DH uguale alla somma di tutti i bit diversi, La funzione di fitness associata alle cellule è quindi un numero compreso tra 0 ed 1 1 perf. Match 0 entità opposte I caratteri in input vengono presentati come una matrice di bit 12x10; Gli antigeni e i recettori delle cellule B vengono codificati mediante un vettore di interi di dim. 120, la metrica che abbiamo utilizzato per definire la distanza tra rec. ed antig. è la DH uguale alla somma di tutti i bit diversi, La funzione di fitness associata alle cellule è quindi un numero compreso tra 0 ed 1 1 perf. Match 0 entità opposte

14 Evoluzione di una singola popolazione di cellule B Variazione sul numero di cellule B durante il riconoscimento di tutti i caratteri. Gli spike corrispondono ai riconoscimenti Spike Lanciata la versione sequenziale osservando levoluzione della popolazione di cellule, si possono notare gli spike che corrispondono ai vari riconoscimenti, Nel grafico piccolo è evidenziato un particolare relativo al primo step di riconoscimento per meglio apprezzare lespansione in prossimità del perfect match Lanciata la versione sequenziale osservando levoluzione della popolazione di cellule, si possono notare gli spike che corrispondono ai vari riconoscimenti, Nel grafico piccolo è evidenziato un particolare relativo al primo step di riconoscimento per meglio apprezzare lespansione in prossimità del perfect match

15 Andamento della Fitness Function Valori medio e massimo della misura di affinità delle cellule B durante il riconoscimento degli Antigeni in Input. Unaltra quantità da tenere in considerazione è la misura di affinità. Dalla quale otteniamo la certezza dei riconoscimenti, informazioni sulla sequenza di questi e sullandamento dei valori di fitness

16 Learning Cascade 1 popolazione Spostamento della distribuzione delle cellule relativamente al numero di Matching Bits

17 Riconoscimento Parallelo 1.Coevoluzione di n popolazioni che contemporaneamente tendono agli n caratteri in input 2.Seconda fase della selezione : Abbiamo utilizzato un meccanismo chiamato ranking selection (Selezione Ordinata) secondo il quale vengono selezionati per sopravvivere solo m individui per ogni popolazione. La popolazione i-esima sarà formata, quindi, dai primi m elementi della lista ordinati rispetto alli-esimo elemento dellarray F (fitness function). La seconda versione dellalgoritmo permette 1. Unaltra differenza consiste nella 2. La seconda versione dellalgoritmo permette 1. Unaltra differenza consiste nella 2.

18 Coevoluzione di più popolazioni di cellule B Numero cellule B Time Steps Totalità delle cellule B Specializzazione Riconoscimento dei Caratteri Grafico sulla dinamica del Numero di Cellule B durante il Riconoscimento Parallelo. Questa seconda implementazione ha evidenziato aspetti interessanti: nei primi steps del riconoscimento abbiamo osservato che le popolazioni contengono alcuni individui in comune che vengono via via rimpiazzati da cellule più specializzate, questo fenomeno, nel SIN è appunto chiamato specializzazione. Durante il riconoscimento la diminuzione del numero di cellule è dovuta al fatto che si devono isolare sempre meno popolazioni man mano che i caratteri vengono riconosciuti.

19 Andamento della Fitness Function Fitness Time Steps Valori di Fitness degli Individui Migliori patt 0 patt 1 patt 2 patt 3 patt 4 patt 5 patt 6 patt 7 patt 8 patt 9 Visualizzazione del valore di affinità migliore per ogni sotto po- polazione relativa a tutti i patterns in input. Landamento della fitness dei migliori elementi di ogni popolazione ci mostra la effettiva coevoluzione verso il riconoscimento completo di tutti i caratteri

20 Learning Cascade n popolazioni Spostamento della distribuzione delle cellule relativamente al numero di Matching Bits Una ulteriore verifica di questo riconoscimento è visibile dallo spostamento della distribuzione delle cellule da una aggregazione con molti bit di mismatch verso una aggregazione senza bit di mismatch. Losservazione di questi spostamenti ha permesso di capire meglio loperatore di ipermutazione.

21 Single vs Multiple velocemente Multiple converge più velocemente ed è insensibile insensibile al numero di caratteri in input Il confronto tra le due implementazioni ha evidenziato che il riconoscimento parallelo

22 II Applicazione Il Problema 3-SAT

23 Il problema 3-SAT Istanza: Una collezione di clausole Un insieme finito U di variabili tali che : Problema: Esiste un assegnamento di verità per U che soddisfa tutte le clausole in C CNF In questo problema si ha Noi abbiamo considerato formule proposizionali in CNF In questo problema si ha Noi abbiamo considerato formule proposizionali in CNF

24 Istanze difficili del problema 3-SAT (Mitchell 1992) Numero medio di chiamate ricorsive alla procedura DP in funzione del rapporto tra clausole e variabili. Le istanze con rapporto clausole/variabili 4,3 Di queste abbiamo considerato le istanze che presentano un rapporto clausole / variabili uguale a 4.3. Mitchell ha dimostrato che queste sono le istanze più difficili di tale problema, ovvero quelle per le quali sono necessarie il maggior numero di chiamate alla procedura ricorsiva DP

25 SAW Lo Stepwise adaptation weight è uno dei meccanismi più usati per incrementare le prestazioni degli AE riguardo i (CSP) Constraint Satisfaction Problem, cioè i problemi dove esistono vincoli da soddisfare. Esso consiste nellassegnare un peso ad ogni clausola ed incrementarlo se la clausola, dopo un certo numero di Time Steps, non è stata ancora verificata. Mediante tale metodo, quindi, abbiamo informazioni sulla semantica del problema.

26 Codifica per il problema 3SAT Ag = Formula proposizionale in cnf soddisfacibile, codificata mediante un vettore di interi di dimensione l · 3, dove l è il numero di clausole. Recettore della Cellula B = Assegnamento di verità codificato mediante un vettore di interi di dimensione n, numero di variabili. Funzione di Fitness (penalità) è una somma pesata delle clausole insoddisfatte: Dove W i è il peso della clausola i al tempo t, Sat i (A)=0 se essa non è soddisfatta dallassegnamento A proposto dalla Cellula B

27 Confronto con altri algoritmi evolutivi Il nostro algoritmo (AI) è stato confrontato con i migliori algoritmi - nellambito delle strategie evolutive e degli algoritmi genetici - per il problema del 3SAT : La strategia evolutiva (15,100)-SE lalgoritmo genetico WGSAT [vedi 7th Annual Conference on Evolutionary Programming, LNCS, n.1477, pp Springer Berlin, 1998] Il confronto è basato su due parametri: SR = success rate, percentuale degli esperimenti con successo AES = average number of evaluation to solution, numero di valutazioni necessarie per ottenere la soluzione.

28 EA vs. IA Numero Variabili (15,100)-SE(1+1)-Saw AIWGSat Opt. Fixed CasoSRAESSRAESSRAES 30 l= l= l= l= Numero medio di valutazioni Percentuale di esperimenti con successo I risultati ottenuti sono stati confrontati con quelli ottenuti da altri 2 AE una SE ed un AG entrambi selezionati come i migliori del loro gruppo nella risoluzione del problema in esame, lAG inoltre usa dei parametri ottimizzati per le diverse istanze.l AI di contro usa parametri minimali ottenendo risultati soddisfacenti.

29 Conclusioni Nuovo algoritmo evolutivo: lalgoritmo immunologico. Learning mediante algoritmo immunologico coevolutivo. Soluzioni di istanze difficili del problema 3-SAT. Abbiamo creato un nuovo... Abbiamo dimostrato che questo è capace di apprendere e di risolvere problemi difficili Abbiamo creato un nuovo... Abbiamo dimostrato che questo è capace di apprendere e di risolvere problemi difficili


Scaricare ppt "Un Algoritmo Immunologico per il Riconoscimento di Caratteri e per il Problema 3-SAT Giuseppe Nicosia Dipartimento di Matematica e Informatica Università"

Presentazioni simili


Annunci Google