Minimizzazione dell’energia
(Ottimizzazione)
Abbiamo visto che un sistema molecolare di N atomi può essere
descritto da 3N coordinate cartesiane. Se invece usiamo le
coordinate interne ci sono sei coordinate (cinque per le molecole
lineari) indipendenti che corrispondono alla rotazione e alla
traslazione della molecola mentre le altre definiscono la
configurazione e la struttura interna (i movimenti degli atomi). Per
un sistema con N atomi, l’energia è quindi una funzione di 3N–6
coordinate interne o di 3N coordinate cartesiane.
Sia che si usino i metodi della meccanica quantistica o quelli
della meccanica molecolare viene calcolata l'energia potenziale
di una delle tante configurazioni della molecola (calcolo a singolo
punto o single point).
Nasce quindi la questione di determinare quale sia la geometria,
fra tutte le conformazioni possibili, corrispondente all’energia più
bassa, cioè la geometria più stabile. Gli arrangiamenti degli atomi
di energia minima corrispondono a stati stabili del sistema, ogni
spostamento da un minimo dà una configurazione con energia
più elevata.
Superfici di energia potenziale
Nel caso più semplice, cioè quello di una molecola biatomica, l’energia
potenziale varia al variare della distanza:
Questa è una minimizzazione uni-dimensionale: l’energia dipende solo
da una coordinata, la distanza di legame r
Superfici di energia potenziale
Per sistemi con un maggior numero di atomi l’energia potenziale è una
funzione multidimensionale delle coordinate. Per esempio l’energia di
una conformazione dell’etano è funzione di 18 coordinate interne (o di 24
coordinate cartesiane) che sono richieste per specificarne
completamente la struttura.
2
H5
H1
H4
1.5
C2
C1
1
H6
0.5
H3
H2
-150
-100
-50
50
100
150
La maniera in cui varia l’energia in funzione delle coordinate è
generalmente indicata come superficie di energia potenziale (o
ipersuperficie).
Superfici di energia potenziale
E’ impossibile visualizzare l’intera superficie di energia potenziale, tranne
che in casi molto semplici in cui l’energia è funzione di solo una o due
coordinate.
Lisozima T4, 1328 atomi circa
Superficie di energia molto
complicata.
Ipersuperficie 3984-dimensionale!!
Si parla di superficie di energia potenziale non solo in sistemi in cui i
legami rimangono inalterati (come negli esempi visti), ma anche quando
si ha la rottura o formazione di legami (reazioni chimiche).
Superfici di energia potenziale
Nel molecular modelling siamo interessati nei punti di minimo del’energia
potenziale. Tali punti corrispondono infatti a stati stabili del sistema.
Ci possono essere molti punti di minimo sulla superficie. Il minimo con
l’energia più bassa in assoluto è chiamato punto di minimo globale.
Superfici di energia potenziale
Punti di interesse in una superficie di energia potenziale
Superfici di energia potenziale
Punti di sella (saddle points)
Superfici di energia potenziale
Ricerca del minimo (minimizzazione o ottimizzazione)
Quello della ricerca di un algoritmo di minimizzazione efficace è un
problema molto noto in matematica. Nei casi complessi per determinare i
minimi sulla superficie di energia potenziale in genere si ricorre ad
algoritmi matematici basati su metodi numerici. C’è una vasta letteratura
su questi metodi, qui ci soffermeremo su quegli approcci più
comunemente usati in meccanica molecolare.
Collegate alla questione della ricerca del minimo sono le risposte alle
seguenti domande:
 Quale conformazione corrisponde al minimo globale?
 Quali conformazioni sono presenti nei punti di minimo locale?
 Quali variazioni nella struttura della molecola avvengono quando si
passa da un minimo all’altro?
 Quale è la conformazione dello stato di transizione che collega due
minimi?
Superfici di energia potenziale
Punti stazionari
Sia i punti di minimo che i punti di sella sono punti stazionari.
Un punto stazionario è definito come un punto sulla superficie di energia
potenziale in cui la derivata dell'energia rispetto a tutte le coordinate è
zero.
V ( r )
0
r
Superfici di energia potenziale
Punti di minimo
Un punto di minimo oltre ad avere le derivate prime rispetto a tutte le
coordinate uguali a zero deve avere tutte le derivate seconde positive.
V
 0;
ri
 2V
0
2
ri
Quest'ultima
condizione
corrisponde ad avere la
curvatura della superficie
tutta “all'insù”
Superfici di energia potenziale
Punti di sella
Un punto di sella oltre ad avere le derivate prime rispetto a tutte le
coordinate uguali a zero deve avere tutte le derivate seconde positive
tranne che in una direzione.
Definizione rigorosa: i punti di sella sono punti stazionari con uno ed un
unico autovalore negativo della matrice Hessiana (matrice delle derivate
seconde).
Quest'ultima
condizione corrisponde
ad avere la curvatura
della superficie tutta
“all'insù” tranne che in
una direzione.
Superfici di energia potenziale
Punti di sella
I punti di sella connettono due minimi attraverso il cammino di minima
energia.
Ricerca dei punti di minimo
In termini matematici il problema è dunque quello di minimizzare una
funzione -appunto l’energia- di più variabili -le coordinate interne degli
atomi.
Qualora l’energia di un sistema di particelle possa essere rappresentata da
una funzione analitica, il minimo può essere trovato con metodi di calcolo
standard. Questo non è però generalmente possibile per sistemi molecolari
complicati nei quali l’energia varia con le coordinate in maniera complessa.
In questi casi i minimi sono localizzati usando metodi numerici nei quali le
coordinate vengono variate gradualmente producendo configurazioni con
energie sempre più basse fino al raggiungimento del minimo.
Scelta dell'algoritmo.
Ci sono molti fattori che determinano la scelta dell'algoritmo più
appropriato per un dato problema:
- veloce
Poche iterazioni ?
Poche valutazioni di V(r)?
- robusto
- che richiede poca memoria
Algoritmi di minimizzazione
Algoritmi di minimizzazione
Si possono classificare gli algoritmi di minimizzazione in due gruppi:
1) quelli che non usano le derivate dell’energia rispetto alle coordinate
Esempio:
N.B.:
- Direzione
- Passo (step)



Punto di confronto
Algoritmi di minimizzazione
Algoritmi di minimizzazione
Si possono classificare gli algoritmi di minimizzazione in due gruppi:
1) quelli che non usano le derivate dell’energia rispetto alle coordinate
2) quelli che usano le derivate dell’energia rispetto alle coordinate.
Esempio:
E ( r )
r
N.B.:
- Direzione
- Passo (step)


Algoritmi di minimizzazione
Algoritmi di minimizzazione
Molti algoritmi di minimizzazione possono solo andare in discesa lungo
la superficie di energia e quindi riescono solo a localizzare il minimo più
vicino al punto d’inizio (quindi un minimo locale).
Per localizzare più di un minimo o per localizzare l’energia minima
globale sono richiesti metodi che permettano di partire da differenti
geometrie iniziali, ognuna delle quali viene poi minimizzato.
Si confronta poi l'energia corrispondente ai vari minimi locali.
start
start
minimo locale
minimo globale
Algoritmi di minimizzazione
Minimizzazione senza l'uso di derivate: metodo del simplesso (simplex)
Non è molto efficiente, ma le derivate non sono richieste ed è piuttosto
robusto.
Il simplesso è una figura geometrica
che, in N dimensioni, consiste in
N+1 punti (vertici) interconnessi e
nelle rispettive linee, o facce
poligonali che li interconnettono.
In due dimensioni abbiamo un
triangolo
In tre dimensioni abbiamo un
tetraedro
2 D
3 D
Algoritmi di minimizzazione
Minimizzazione senza l'uso di derivate: metodo del simplesso (simplex)
Si parte con N+1 posizioni (set di coordinate) che definiscono il simplesso
iniziale.
Consideriamo una minimizzazione bidimensionale. Partiamo in tutto da tre
posizioni iniziali in corrispondenza alle quali calcoliamo il valore dell'energia.
A questo punto si inizia a far
muovere il simplesso. Ci possono
essere vari tipi di mosse:
1.
riflessione del vertice con il
valore più alto rispetto al lato
opposto
2.
riflessione ed allontanamento
rispetto al vertice con il valore
più alto
3.
contrazione lungo la
dimensione del punto con il
valore più alto




alto

basso



alto

basso
Algoritmi di minimizzazione
Minimizzazione senza l'uso di derivate: metodo del simplesso (simplex)
Dopo queste mosse ci ritroviamo
vicino ad un minimo e quindi:

4. il simplesso si contrae in tutte le
dimensioni verso il punto più basso

alto
Un'appropriata sequenza di queste 4
mosse porta sempre a convergenza

basso
Algoritmi di minimizzazione
CONFORMAZIONE 2
Atomo
X
Y
1
x21
y21
2
x22
y22
3
x23
y23
.
.
.
.
.
.
n
x2n
y2n
CONFORMAZIONE 1
Atomo
X
Y
1
x11
y11
2
x12
y12
3
x13
y13
.
.
.
.
.
.
n
x1n
y1n
CONFORMAZIONE 3
Atomo
X
Y
1
x31
y31
2
x32
y32
3
x33
y33
.
.
.
.
.
.
n
x3n
y3n
Algoritmi di minimizzazione
Metodo del simplesso: considerazioni generali
-perchè N+1 vertici per N coordinate?
-come si generano i punti di partenza?
-quando è vantaggioso da usare?
Algoritmi di minimizzazione
Criteri di Convergenza
A differenza di quello che succede con le funzioni analitiche nelle
applicazioni “reali” di molecular modelling è possibile identificare l'esatta
posizione dei minimi solo raramente, possiamo solo sperare di
raggiungere una buona approssimazione. E' necessario quindi avere dei
criteri per decidere quando il calcolo di minimizzazione è
sufficientemente vicino ad un minimo in modo da poter essere terminato.
Ogni calcolo è ovviamente limitato dalla precisione con cui vengono
immagazzinati i numeri, ma nella maggior parte dei casi ci si ferma ben
prima di questo limite.
Ci sono vari criteri tra cui scegliere (o applicare quello che si verifica per
primo). Ci si ferma quando:
- si raggiunge un massimo numero di iterazioni
- quando la differenza di energia tra due passi successivi è minore di una
certa tolleranza
- quando il passo (cioè la differenza tra due configurazioni successive) è
piccola.
Algoritmi di minimizzazione
Scelta del punto di partenza
Dipende da quello che vogliamo ottenere:
Se vogliamo ottenere la struttura di minima energia (minimo globale)
conviene partire da una struttura che probabilmente è già vicina a quel
minimo:
- es. struttura a raggi X (dai database)
- se vogliamo utilizzare i metodi della meccanica quantistica (più
pesanti) ci conviene partire da una struttura già minimizzata con i
metodi della meccanica molecolare.
Se vogliamo la geometria di tutte le strutture a bassa energia (più
minimi locali) allora possiamo partire da diverse strutture casuali
(“random”). (E' del tutto vero?)
Algoritmi di minimizzazione
Minimizzazione con l'uso di derivate
Le derivate danno informazioni riguardo la forma della superficie di
energia potenziale e se ben usate possono aumentare in maniera
significativa l’efficienza nella localizzazione del minimo. Pertanto esse,
qualora siano disponibili, vengono impiegate dai più comuni metodi di
minimizzazione. La direzione della derivata prima dell’energia (il
gradiente) indica dove abbiamo un minimo visto che la grandezza del
gradiente è relazionata alla pendenza della curva. Poiché la forza cui è
sottoposto un atomo è uguale al gradiente cambiato di segno, l’energia
del sistema può essere abbassata dal movimento di ciascun atomo in
risposta all’azione della forza agente su di esso. La derivata seconda
indica la curvatura della funzione, e può essere usata per predire dove la
funzione cambierà direzione. Per usare questo tipo di metodi è
ovviamente necessario poter calcolare le derivate dell’energia rispetto
alle variabili.
Algoritmi di minimizzazione
Minimizzazione con l'uso di derivate
Le derivate possono essere ottenute analiticamente o
numericamente. L’uso di derivate analitiche è preferibile perché
sono esatte ed in più possono essere calcolate più velocemente.
In alcuni casi può essere più efficace un algoritmo di
minimizzazione non basato sulle derivate che fare ricorso a
derivate numeriche
I metodi di minimizzazione che utilizzano le derivate possono
essere classificati secondo il più alto ordine delle derivate
impiegate. Metodi del primo ordine usano le derivate prime (cioè i
gradienti) mentre metodi del secondo ordine sfruttano derivate sia
prime che seconde.
Algoritmi di minimizzazione
Minimizzazione con l'uso di derivate: metodo “steepest descent”
Nel metodo “steepest descent” ci si muove nella direzione parallela
alla forza netta, che equivale a muoversi in linea retta per la discesa.
Il punto d’inizio per ogni iterazione k è la configurazione molecolare
ottenuta dal passaggio precedente che è rappresentata da un
vettore multidimensionale xk-1 che contiene le coordinate di tutti gli
atomi del sistema.
Per la prima iterazione il punto di partenza è la configurazione
iniziale del sistema, il vettore x1 che è fornito dall’utente. La
direzione dello spostamento dal punto iniziale è dunque definita dal
gradiente gk ed è data da un vettore unitario 3N-dimensionale (in
coordinate cartesiane) sk:
 gk
sk 
gk
Algoritmi di minimizzazione
Minimizzazione con l'uso di derivate: metodo “steepest descent”
Dopo aver definito la direzione lungo la quale muoversi occorre
decidere quanto muoversi lungo il gradiente.
Ci sono due metodi:
- line search: nella direzione del gradiente si trova il punto di minimo
(in pratica si minimizza in una dimensione)
 V V V 

V  
,
,
 xi yi z i 
Algoritmi di minimizzazione
Minimizzazione con l'uso di derivate: metodo “steepest descent”
Secondo metodo:
- si possono considerare step arbitrari: si aumenta lo step finchè le
iterazioni provocano una diminuzione dell’energia. Quando uno step
produce un aumento di energia si assume che l’algoritmo abbia
saltato la valle che contiene il minimo. La lunghezza dello step è
allora ridotta in modo da poter identificare il minimo stesso.
Algoritmi di minimizzazione
Problemi nell’uso del metodo “steepest descent”
La ricerca del minimo avviene ad ogni passo lungo una direzione che
è perpendicolare alla precedente e quindi l'approccio al minimo
assume un carattere oscillatorio che diviene piuttosto inefficiente
soprattutto in “valli” di energia strette e in prossimità del minimo in
quanto l’iterazione successiva tende ad annullare il guadagno
ottenuto con la precedente.
La minimizzazione procede rapidamente quando la geometria della
molecola è lontana dal punto di arrivo ma procede lentamente (molte
iterazioni) alla fine.
Algoritmi di minimizzazione
Minimizzazione con l'uso di derivate: metodo “conjugate gradient”
Il metodo “conjugate gradient” produce un insieme di direzioni che
non mostra il comportamento oscillatorio del metodo “steepest
descent”. Il metodo conjugate gradient usa un algoritmo che
produce una serie di line search con direzioni mutuamente
coniugate così che ad ogni successivo step si ha un raffinamento
della direzione verso il minimo. Questo sistema comporta che il
gradiente successivo è ortogonale a tutti i precedenti gradienti e che
la nuova direzione è coniugata alle precedenti e non ortogonale
come nello steepest descent.
Algoritmi di minimizzazione
Minimizzazione con l'uso di derivate: metodo al secondo ordine
Sono i metodi che fanno uso di derivate seconde (matrice
Hessiana), oltre alle derivate prime. Le derivate seconde danno
informazioni sulla curvatura della superficie. Tra questi metodi
ricordiamo il Newton-Raphson e varianti su questo metodo, che
introducono semplificazioni nel calcolo della matrice Hessiana.
Sono metodi in genere molto veloci, a volte possono essere instabili
lontano dal punto di minimo.
Algoritmi di minimizzazione
Scelta della minimizzazione
E’ dettata da un numero di fattori, compresi il peso e il tempo
computazionale, le velocità relative con cui le varie parti del calcolo
devono essere effettuate, la disponibillità delle derivate analitiche e
la robustezza del metodo.
- Metodi per sistemi molto grandi, generalmente si applica la
meccanica molecolare (Conjugate gradient)
- Metodi per sistemi di media grandezza, in cui si può anche usare
la meccanica quantistica (Metodi con derivate seconde, NR, ecc)
Si possono anche usare metodi più lenti ma più robusti lontano dal
minimo e poi passare a metodi più veloci.
Algoritmi di minimizzazione
Applicazioni della minimizzazione
- per trovare il minimo globale
- per preparare il sistema per altre simulazioni:
• rilassare le conformazioni ad energia più alta
• avere una geometria di partenza buona
- ricerca conformazionale (conformational search)
- analisi dei modi normali della molecola
Scarica

Minimizzazione - Dipartimento di Farmacia