Fuzzy Logic in Protein Structure Prediction - PowerPoint PPT Presentation

About This Presentation
Title:

Fuzzy Logic in Protein Structure Prediction

Description:

Fuzzy Logic in Protein Structure Prediction Introduzione alla fuzzy logic FANS: un euristica fuzzy per la ricerca locale Applicare FANS alla predizione di strutture ... – PowerPoint PPT presentation

Number of Views:74
Avg rating:3.0/5.0
Slides: 49
Provided by: unib154
Category:

less

Transcript and Presenter's Notes

Title: Fuzzy Logic in Protein Structure Prediction


1
Fuzzy Logic in Protein Structure Prediction
  • Introduzione alla fuzzy logic
  • FANS uneuristica fuzzy per la ricerca locale
  • Applicare FANS alla predizione di strutture
    proteiche

2
Introduzione
  • La scienza tende ad essere precisa.
  • La realtà è invece pervasa da incertezza e
    imprecisione.
  • Necessità di una logica diversa dalla classica
    logica dicotomica per rappresentare le proprietà
    polivalenti degli oggetti.
  • Necessità di risolvere certi problemi reali,
    considerati difficili, in un tempo umanamente
    accettabile.

Fuzzy Logic Soft Computing
3
Soft Computing
  • Neurocomputing
  • Evolutionary computation
  • Fuzzy logic
  • Probability reasoning
  • Strumenti in grado di trattare con
    limprecisione e lincertezza dei problemi reali,
    in grado di individuare soluzioni robuste ed a
    basso costo.(fonte Soft Computing and Fuzzy
    Logic, Zadeh 1994)

4
Soft Computing
  • Uneuristica è una tecnica per risolvere problemi
    difficili, la cui bontà della soluzione è
    valutata secondo parametri basati sulle necessità
    dellutilizzatore.
  • Queste necessità non sono solo legate alla logica
    simbolica ma anche ad ambiti non formali come il
    linguaggio naturale.

5
Logica Fuzzy
  • La fuzzy logic o logica sfumata è una logica
    polivalente e pertanto un'estensione della logica
    booleana in cui si può attribuire a ciascuna
    proposizione un grado di verità compreso tra 0 e
    1. Quando parliamo di grado di appartenenza,
    per dirla con un'esemplificazione, intendiamo che
    una proprietà può essere oltre che vera ( a
    valore 1) o falsa ( a valore 0) come nella
    logica classica, anche di valori
    intermedi.(fonte Wikipedia)

6
Logica Fuzzy esempio
  • Logica dicotomica

1
Adolescente
Sopra media
Mezza età
Su detà
Anziano
Bambino
Giovane
0
10 20 30 40
50 60 70
80 90
anni
7
Logica Fuzzy esempio
  • Logica fuzzy

13 anni µ(bambino) 0.20 µ(adolescente)
0.55 µ(giovane) 0.0 µ(mezza età) 0.0 µ(su
detà) 0.0 µ(anziano) 0.0 µ(sopra media)
0.0
µ
1
Mezza età
Su detà
Anziano
Sopra media
Bambino
Adolescente
Giovane
0
10 20 30 40
50 60 70
80 90
anni
8
Logica Fuzzy esempio
  • Una variabile linguistica (nellesempio
    precedente, letà) rappresenta una variabile il
    cui dominio è stato quantizzato in maniera fuzzy
    (granulation process). E descritta da insiemi
    fuzzy (nellesempio precedente bambino, giovane,
    adolescente, etc.) definiti univocamente ed in
    parte sovrapposti.
  • Un insieme F è fuzzy se lappartenenza di un
    elemento x (che rappresenta una certa variabile)
    ad esso può essere espressa da un numero reale
    compreso tra 0 e 1.La funzione µ(x) che esprime
    tale grado di appartenenza è appunto detta
    funzione di appartenenza.(fonte Logica Fuzzy,
    Veronesi e Visioli, ed. FrancoAngeli)

9
Logica fuzzy
  • Quali problemi traggono beneficio da una
    implementazione fuzzy?
  • Problemi la cui descrizione matematica non è
    presente o è di difficile definizione.
  • Problemi la cui descrizione matematica è ben
    definita ma- necessità di una logica
    polivalente- il costo computazionale
    dellimplementazione del modello è molto
    elevato- si lavora con un consistente rumore di
    fondo o con strumenti scarsamente precisi.

10
Logica fuzzy
  • Vantaggi- maggiore aderenza del modello al
    comportamento reale- riduzione costi (tempo e
    risorse di computazione).
  • Svantaggi- necessità di persone che conoscano
    molto bene il sistema in concreto e che siano in
    grado di scriverne le regole sottostanti-
    difficoltà nella rappresentazione degli insiemi
    fuzzy che descrivono le variabili del sistema.

11
Sistemi fuzzy
problema iniziale
modellizzazione
definizione superficie di controllo
definizione delle regole
defuzzificazione
è un buon modello?
no

Applicazioni pratiche
12
Sistemi fuzzy
problema iniziale
  • Definizione iniziale delle caratteristiche
    funzionali del sistema e delle operazioni che
    possono essere compiute su di esso.

modellizzazione
definizione superficie di controllo
definizione delle regole
defuzzificazione
è un buon modello?
no

Applicazioni pratiche
13
Sistemi fuzzy
problema iniziale
  • Ogni variabile in input o in output al sistema
    deve essere decomposta in in una serie di insiemi
    fuzzy.

modellizzazione
definizione superficie di controllo
definizione delle regole
Input vars
defuzzificazione
è un buon modello?
no

Output vars
Applicazioni pratiche
14
Sistemi fuzzy
problema iniziale
  • Il comportamento della superficie di controllo
    deve essere definito da regole in grado di
    correlare linput con loutput del sistema.
  • IF ltfuzzy prepositiongt THEN ltfuzzy prepositiongt

modellizzazione
definizione superficie di controllo
definizione delle regole
defuzzificazione
è un buon modello?
no

Applicazioni pratiche
15
Sistemi fuzzy
IF temperature is Cool AND pression IS Low THEN
throttle action is PM
problema iniziale
modellizzazione
definizione superficie di controllo
definizione delle regole
defuzzificazione
IF temperature is Cool AND pression is OK THEN
throttle action is ZR
è un buon modello?
Come viene generato loutput?Le premesse (IF)
vengono combinate scegliendo il grado di
appertenenza più basso dei due valori
(intersezione, AND). Il valore di output è
ottenuto come unione (OR) degli a-cut delle
funzioni di appartenenza dopo il THEN.
no

Applicazioni pratiche
16
Sistemi fuzzy
problema iniziale
  • Il passo finale consiste nella scelta del metodo
    di defuzzificazione, attraverso il quale
    estrarre un valore deterministico dallinferenza
    fuzzy.
  • Esistono vari metodi- media dei massimi-
    media pesata dei centri- metodo del
    baricentro- centro delle somme.

modellizzazione
definizione superficie di controllo
definizione delle regole
defuzzificazione
è un buon modello?
no

Applicazioni pratiche
17
Sistemi fuzzy
problema iniziale
modellizzazione
definizione superficie di controllo
definizione delle regole
defuzzificazione
150
è un buon modello?
no

Applicazioni pratiche
18
FANS Fuzzy Adaptive Neighborhood Search
  • A Fuzzy Valuation-Based Local Search Framework
    for Combinatorial Problems
  • Applying a Fuzzy Sets-based Heuristic to the
    Protein Structure Prediction Problem (Armando
    Blanco, David A. Pelta, Jos e-L. Verdegay, 2002).

19
Ricerca locale
  • Metodo euristico stocastico iterativo
  • Semplice ma potente nel trattare problemi di tipo
    combinatoriale
  • Trova minimi locali

Begin s initial_solution() While (improve(s)
TRUE) Do s improve(s) Od return(s) End.
20
FANS introduzione
  • Perché Fuzzy le soluzioni vengono valutate in
    termini di appartenenza a un insieme fuzzy, oltre
    che con una classica funzione obiettivo.
  • Perché Adattativo il comportamento di FANS viene
    adattato nel corso delle iterazioni.
  • Meccanismo di escape da minimi locali che non
    richiede il riavvio dellintera procedura di
    ricerca.

21
FANS fuzzy valuation
  • A seconda di una diversa calibrazione delle
    funzioni di appartenenza che definiscono la
    valutazione fuzzy delle soluzioni, FANS può
    essere adattato per comportarsi in modi
    diversi- random search- random walk- hill
    climbing- simulated annealing- tabu search.

22
FANS componenti
  • Modification Operator (O) genera nuove soluzioni
    si a partire da s. E costituito da una
    componente fissa, una random ed una parametrica
  • Fuzzy Valuation (µ) ad ogni iterazione, in base
    al valore restituito dalla funzione obiettivo,
    valuta lappartenenza di ogni soluzione
    allinsieme fuzzy costituito dalle soluzioni si
    dellintorno di s (una sorta di Accettabilità
    della soluzione)
  • Operator Scheduler (OS) varia il comportamento
    di O
  • Neighborhood Scheduler (NS) dopo aver generato
    un intorno di soluzioni servendosi di O, ne
    seleziona una tra quelle che costituiscono
    lintorno della soluzione in input servendosi di
    µ.

23
FANS Modification Operator
O2a
O1a
s
s1a,ß
s2a
O1ß
O2ß
s2ß
24
FANS procedura
Begin InitVariables() While (not-end) Do
NS-gtRun(O, µ(), Scur, Snew, ok) If (ok) then
Scur Snew adaptFuzzyVal(µ(), Scur)
Else OS-gtRun() Fi If
(TrappedSituation()) then doEscape() Fi
Od return(Scur) End.
  • Creazione di una soluzione iniziale
  • inizializzazione delle condizioni di fine ciclio.

25
FANS procedura
Begin InitVariables() While (not-end) Do
NS-gtRun(O, µ(), Scur, Snew, ok) If (ok) then
Scur Snew adaptFuzzyVal(µ(), Scur)
Else OS-gtRun() Fi If
(TrappedSituation()) then doEscape() Fi
Od return(Scur) End.
  • Il ciclo esegue un numero di iterazioni variabile
    in base a- numero di iterazioni predefinito-
    la funzione obiettivo raggiunge un certo valore.

26
FANS procedura
Begin InitVariables() While (not-end) Do
NS-gtRun(O, µ(), Scur, Snew, ok) If (ok) then
Scur Snew adaptFuzzyVal(µ(), Scur)
Else OS-gtRun() Fi If
(TrappedSituation()) then doEscape() Fi
Od return(Scur) End.
  • Il Neighborhood Scheduler (NS) è costituito da
    due procedure- generatrice- selezionatrice.
  • Definizione operazionale di intorno (vicinato di
    s)
  • Definizione semantica di intorno (vicinato di
    s)

27
FANS procedura
Begin InitVariables() While (not-end) Do
NS-gtRun(O, µ(), Scur, Snew, ok) If (ok) then
Scur Snew adaptFuzzyVal(µ(), Scur)
Else OS-gtRun() Fi If
(TrappedSituation()) then doEscape() Fi
Od return(Scur) End.
  • Se è stata trovata una soluzione migliore di
    quella corrente- prende quella nuova come
    corrente- i parametri di µ() vengono adattati
    al nuovo contesto.

28
FANS procedura
Begin InitVariables() While (not-end) Do
NS-gtRun(O, µ(), Scur, Snew, ok) If (ok) then
Scur Snew adaptFuzzyVal(µ(), Scur)
Else OS-gtRun() Fi If
(TrappedSituation()) then doEscape() Fi
Od return(Scur) End.
  • Se NON è stata trovata una soluzione più adatta
    di quella corrente, viene lanciato lOperator
    Scheduler (OS), che ritorna una versione
    modificata di O.
  • Permette di uscire da un minimo locale.

29
FANS procedura
Begin InitVariables() While (not-end) Do
NS-gtRun(O, µ(), Scur, Snew, ok) If (ok) then
Scur Snew adaptFuzzyVal(µ(), Scur)
Else OS-gtRun() Fi If
(TrappedSituation()) then doEscape() Fi
Od return(Scur) End.
  • Qualora la ricerca con cambio di operatore
    fallisca ripetutamente (tante volte quante il
    numero di operatori disponibili), è molto
    probabile che ci si trovi intrappolati in un
    minimo locale da cui è impossibile uscire.
  • In questa situazione viene lanciata la procedura
    doEscape(), la cui implementazione classica è il
    riavvio dellintera procedura.

30
FANS knapsack problem
  • Il Problema dello zaino (Knapsack problem), è un
    problema di ottimizzazione combinatoria.
  • Si ha uno zaino che può supportare un determinato
    peso.Si ha a propria disposizione una serie di
    N oggetti. Ognuno degli oggetti ha un peso e
    fornisce un'utilità (ovvero un guadagno). Il
    problema si propone di trovare quali oggetti
    mettere all'interno dello zaino ottenendo la
    maggiore utilità, ma non eccedendo nel peso
    sostenibile dallo zaino stesso.

31
FANS knapsack problem
Media e deviazione standard dello scarto tra il
risultato ottenuto dalle euristiche e il
risultato esatto ottenuto con un algoritmo
pseudo-polinomiale. (SA, simulated annealing
GAop, genetic algorithm one point crossover
GAux, genetic algorithm uniform crossover).
  • Buona parte del successo delleuristica FANS può
    essere attribuito alluso di un sistema fuzzy di
    valutazione delle soluzioni.

32
FANS Protein Structure Prediction
  • Oltre che sui classici problemi di ottimizzazione
    combinatoriale, FANS è stato testato su problemi
    di tipo biologico.
  • Protein structure prediction (PSP) di prototipi
    proteici altamente semplificati (lattici) secondo
    il modello di interazioni idrofobiche-idrofiliche
    di Dill (HP model).

33
Lattici
  • La complessità delle proteine reali non permette
    di simulare più di pochi microsecondi del loro
    comportamento.
  • Necessità di modelli proteici computerizzati
    altamente semplificati, che possano foldare in un
    tempo sufficientemente piccolo da poter essere
    simulato.
  • Gli aminoacidi sono ridotti a sfere dal
    comportamento semplificato, con gradi di libertà
    molto ristretti.
  • Gli aminoacidi sono divisi in tipi, ogni tipo con
    un diverso comportamento (possibili interazioni).
  • Come nella realtà, la struttura nativa può essere
    individuata minimizzando lenergia delle
    interazioni tra gli aminoacidi.

34
HP model
  • La proteina è ridotta ad un pattern di
    idrofobicità ogni aminoacido viene visto come un
    oggetto caratterizzato da ununica proprietà
    (lidrofobicità) che può assumere valore H o P.
  • Con contatto idrofobico si intende una coppia di
    H adiacenti nella struttura impaccata che non
    siano adiacenti nella sequenza.
  • Ogni contatto idrofobico diminuisce di 1
    lenergia della proteina (0 per la struttura
    lineare).
  • PSP viene risolto massimizzando il numero di
    contatti idrofobici, ovvero minimizzando
    lenergia della proteina.

35
HP model esempio
min(Eprotein)max(n contatti H)
n contatti idrofobici 0Eproteina 0
n contatti idrofobici 1Eproteina -1
36
Lattici rappresentazione
  • Coordinate interne- assolute (s Up, Down,
    Left, Right) sLatticeQuadrato
    RURDRDLLDLU - relative (s Forward,
    TurnRight, TurnLeft) sLatticeQuadrato
    FLRRLRRFLRR.

37
FANS Protein Structure Prediction
Fans(NS, O, OS, µ(), Pars, (cond1, action1))
  • Loperatore di modifica si serve di un parametro
    k che rappresenta il numero di posizioni da
    cambiare ad ogni iterazione.
  • Due categorie di operazioni possibili-
    segment mode modifica k posizioni
    consecutive - shuffling FLRRLRRFLRR FLRRFLLR
    LRR - reflection FLRRLRRFLRR
    FLRRFRRLLRR - flip mode modifica k
    posizioni selezionate casualmente.

38
FANS Protein Structure Prediction
Fans(NS, O, OS, µ(), Pars, (cond1, action1))
  • La valutazione fuzzy

f funzione obiettivo s soluzione corrente q una
soluzione dallintorno operazionale di
s ß f(s)(1-?) ? 0..1, in questo caso 0.2
µ
1
0
ß
f(s)
0.0 if f(q) lt ß (f(q) ß)/(f(s) ß) if ß lt
f(q) lt f(s) 1.0 if f(q) gt f(s)
µ(q,s,ß)
39
FANS Protein Structure Prediction
Fans(NS, O, OS, µ(), Pars, (cond1, action1))
  • Loperator scheduler adatta loperatore di
    modifica attraverso cambiamenti del parametro k
  • k inizializzato a n/4
  • Ad ogni chiamata kt1 kt 1.

40
FANS Protein Structure Prediction
Fans(NS, O, OS, µ(), Pars, (cond1, action1))
  • E implementata una versione semplice del
    neighborhood scheduler.- Generatore chiama
    O secondo le modalità e i parametri passati da
    OS- Selezionatore ritorna la prima
    soluzione trovata con µ(q) gt ?.
  • In questa implementazione il numero massimo di
    soluzioni valutate in una chiamata di NS è
    fissato a 50.

41
FANS Protein Structure Prediction
Fans(NS, O, OS, µ(), Pars, (cond1, action1))
  • Parametri di O, (k, ).
  • Parametri di µ(), (?, ).
  • Informazioni condivise tra le componenti.

42
FANS Protein Structure Prediction
Fans(NS, O, OS, µ(), Pars, (cond1, action1))
  • (k 0, doEscape()).
  • (nessun miglioramento in N chiamate di NS,
    doEscape()).

43
FANS relative encoding vs absolute encoding
  • Per ogni lattice valutato, FANS è stato lanciato
    180 volte (30 corse 3 ? 2 encoding).
  • Le tabelle mostrano, per ogni coppia (lattice, ?)
    quale dei due metodi di codifica delle coordinate
    sia risultato significativamente migliore
    (t-test) rispetto allaltro.
  • Condizione di terminazione105 chiamate della
    funzione di valutazione fuzzy.

Risultati per lattici quadrati
Risultati per lattici triangolari
Risultati per lattici cubici
44
FANS vs GA
  • Parametri di FANS adattati e implementati in GA
  • lattici quadrati
  • relative encoding
  • ? 0.9
  • 30 corse per ogni istanza ed algoritmo
  • condizione di terminazione 105 chiamate della
    funzione di valutazione fuzzy.

45
FANS vs GA
46
FANS conclusioni riguardo PSP
  • I risultati di FANS si allineano o superano
    quelli ottenibili con algoritmi genetici.
  • Codifica relativa delle coordinate migliore nei
    lattici quadrati, codifica assoluta migliore nei
    lattici triangolari, comportamento intermedio per
    i lattici cubici.Questo risultato conferma i
    risultati precedentemente ottenuti utilizzando
    algoritmi genetici.

47
FANS conclusioni
  • Si può ottenere un diverso comportamento di FANS
    calibrando la componente fuzzy.(A Fuzzy
    Valuation-Based Local Search Framework for
    Combinatorial Problems, Armando Blanco, David A.
    Pelta, Jos e-L. Verdegay, 2002).
  • Sono stati ottenuti risultati soddisfacenti
    applicandolo a problemi generici quali
    lottimizzazione di funzioni.(A Fuzzy Adaptive
    Neighborhood Search for Function Optimization,
    Armando Blanco, David A. Pelta, Jos e-L.
    Verdegay, 2002).
  • FANS dà buoni risultati anche come euristica
    applicata a problemi pratici di ottimizzazione
    (PSP).(Applying a Fuzzy Sets-based Heuristic to
    the Protein Structure Prediction Problem, Armando
    Blanco, David A. Pelta, Jos e-L. Verdegay,
    2002).

48
Ulteriori risorse
  • Krasnogor N, HartW, Smith J, Pelta D. Protein
    structure prediction with evolutionary
    algorithms. In BanzhafW, Daida J, Jakaiela M,
    Smith R, editors. GECCO-99. Morgan Kauffman
    1999.
  • Dill KA. Theory for the folding and stability of
    globular proteins. Biochemistry, 1985.
  • David Pelta, Natalio Krasnogor, Carlos
    Bousono-Calzon, José L. Verdegay, J. Hirst,
    Edmund Burke. A fuzzy sets based generalization
    of contact maps for the overlap of protein
    structures, 2004.
Write a Comment
User Comments (0)
About PowerShow.com