Title: Minimizzazione dell
1Minimizzazione dellenergia (Ottimizzazione)
2Abbiamo 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, lenergia è quindi
una funzione di 3N6 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
allenergia 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.
3Superfici di energia potenziale
Nel caso più semplice, cioè quello di una
molecola biatomica, lenergia potenziale varia al
variare della distanza
Questa è una minimizzazione uni-dimensionale
lenergia dipende solo da una coordinata, la
distanza di legame r
4Superfici di energia potenziale
Per sistemi con un maggior numero di atomi
lenergia potenziale è una funzione
multidimensionale delle coordinate. Per esempio
lenergia di una conformazione delletano è
funzione di 18 coordinate interne (o di 24
coordinate cartesiane) che sono richieste per
specificarne completamente la struttura.
La maniera in cui varia lenergia in funzione
delle coordinate è generalmente indicata come
superficie di energia potenziale (o
ipersuperficie).
5Superfici di energia potenziale
E impossibile visualizzare lintera superficie
di energia potenziale, tranne che in casi molto
semplici in cui lenergia è 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).
6Superfici di energia potenziale
Nel molecular modelling siamo interessati nei
punti di minimo delenergia potenziale. Tali
punti corrispondono infatti a stati stabili del
sistema.
Ci possono essere molti punti di minimo sulla
superficie. Il minimo con lenergia più bassa in
assoluto è chiamato punto di minimo globale.
7Superfici di energia potenziale
Punti di interesse in una superficie di energia
potenziale
8 Superfici di energia potenziale
Punti di sella (saddle points)
9Superfici 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 allaltro? - Quale è la conformazione dello stato di
transizione che collega due minimi? -
10Superfici 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.
11Superfici 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.
Quest'ultima condizione corrisponde ad avere la
curvatura della superficie tutta all'insù
12Superfici 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.
13Superfici di energia potenziale
Punti di sella
I punti di sella connettono due minimi attraverso
il cammino di minima energia.
14Ricerca dei punti di minimo
In termini matematici il problema è dunque quello
di minimizzare una funzione -appunto lenergia-
di più variabili -le coordinate interne degli
atomi. Qualora lenergia 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 lenergia 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 - robusto - che richiede
poca memoria
15Algoritmi di minimizzazione
Algoritmi di minimizzazione
Si possono classificare gli algoritmi di
minimizzazione in due gruppi 1) quelli che non
usano le derivate dellenergia rispetto alle
coordinate
Esempio
N.B. - Direzione - Passo (step)
16Algoritmi di minimizzazione
Algoritmi di minimizzazione
Si possono classificare gli algoritmi di
minimizzazione in due gruppi 1) quelli che non
usano le derivate dellenergia rispetto alle
coordinate 2) quelli che usano le derivate
dellenergia rispetto alle coordinate.
Esempio
N.B. - Direzione - Passo (step)
17Algoritmi 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 dinizio (quindi un minimo
locale). Per localizzare più di un minimo o per
localizzare lenergia 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.
18Algoritmi 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 N1 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
19Algoritmi di minimizzazione
Minimizzazione senza l'uso di derivate metodo
del simplesso (simplex)
Si parte con N1 posizioni (set di coordinate)
che definiscono il simplesso iniziale. Consideriam
o 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
20Algoritmi 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 Un'appropriata sequenza di queste 4
mosse porta sempre a convergenza
alto
basso
21Algoritmi di minimizzazione
22Algoritmi di minimizzazione
Metodo del simplesso considerazioni generali
- perchè N1 vertici per N coordinate?
- come si generano i punti di partenza?
- quando è vantaggioso da usare?
23Algoritmi 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.
24Algoritmi 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?)
25Algoritmi 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
lefficienza nella localizzazione del minimo.
Pertanto esse, qualora siano disponibili, vengono
impiegate dai più comuni metodi di
minimizzazione. La direzione della derivata prima
dellenergia (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, lenergia del
sistema può essere abbassata dal movimento di
ciascun atomo in risposta allazione 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
dellenergia rispetto alle variabili.
26Algoritmi di minimizzazione
Minimizzazione con l'uso di derivate
Le derivate possono essere ottenute
analiticamente o numericamente. Luso 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.
27Algoritmi 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 dinizio 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 dallutente. La direzione dello
spostamento dal punto iniziale è dunque definita
dal gradiente gk ed è data da un vettore unitario
3N-dimensionale (in coordinate cartesiane) sk
28Algoritmi 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)
29Algoritmi 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
dellenergia. Quando uno step produce un aumento
di energia si assume che lalgoritmo abbia
saltato la valle che contiene il minimo. La
lunghezza dello step è allora ridotta in modo da
poter identificare il minimo stesso.
30Algoritmi di minimizzazione
Problemi nelluso 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
literazione 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.
31Algoritmi 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.
32Algoritmi 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.
33Algoritmi 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.
34Algoritmi 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