61
+ UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di Metodi Matematici per l’Ottimizzazione A.A. 2011-2012 Presentato da: Gabriele Consoli Leonardo La Rocca

+ UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

Embed Size (px)

Citation preview

Page 1: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+ UNIVERSITÀ DEGLI STUDI DI CATANIAFACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI

CORSO DI LAUREA IN INFORMATICA

Simulated AnnealingSeminario di Metodi Matematici per

l’OttimizzazioneA.A. 2011-2012

Presentato da: Gabriele ConsoliLeonardo La Rocca

Page 2: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Introduzione

Il Simulated Annealing (in italiano ricottura simulata) è un metodo di ricerca adatto a risolvere problemi legati all’ottimizzazione.

L’approccio degli algoritmi Simulated Annealing si basa sulla simulazione di un particolare fenomeno fisico.

L’obiettivo finale di questo tipo di algoritmi è quello di trovare un minimo globale in presenza di più minimi locali.

Page 3: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Problema dell’ottimizzazione

E’ rappresentato da una coppia (c,S) dove: S è un insieme chiamato regione ammissibile del

problema. c è la funzione obiettivo definita su S a valori reali ovvero:

c:S R

L’obiettivo è quello di trovare un elemento x S tale che:

c(x)≤c(y) ∀ y ∈ S: x elemento di MINIMO di Sc(x)≥c(y) ∀ y ∈ S: x elemento di MASSIMO di S

Page 4: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Risoluzione di problemi di

ottimizzazione

Problema

Semplice

Difficoltà di risoluzione

bassa: soluzioni varie

Complesso

Difficoltà di risoluzione

alta: soluzioni euristiche

Page 5: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Il problema del commesso

viaggiatore Un fattorino che deve

effettuare un certo numero di consegne in N città.

La soluzione a questo problema è la risposta alla seguente domanda: Quale sarà il cammino

minimo meno costoso per visitare tutte le città e tornare al punto di partenza?

Page 6: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Il problema del commesso

viaggiatore (I)

Bisogna trovare un ciclo hamiltoniano di costo minimo in un assegnato grafo orientato pesato:

G=(V,E,P)

Un ciclo hamiltoniano è un cammino, all’interno di un grafo G, che partendo da un nodo iniziale tocca tutti gli altri nodi del grafo una ed una sola volta, per poi alla fine tornare al nodo di partenza.

Page 7: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Il problema del commesso

viaggiatore (II)

L’insieme S delle soluzioni è dato da tutti i possibili cicli hamiltoniani.

Se il grafo è completo il numero delle possibili soluzioni sarà rappresentato da tutti i cicli hamiltoniani non simmetrici:

Page 8: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Il problema del commesso

viaggiatore (III)

Considerato un grafo con n=22 nodi lo spazio delle soluzioni sarà dato da:

S =

Potendo disporre di un calcolatore che genera e valuta 109 soluzioni al secondo, per la ricerca di un minimo sarebbero richiesti circa 200 anni cioè 1010 secondi.

Page 9: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Euristiche

Nonostante lo sviluppo tecnologico ci sono problemi che richiedono anni per fornire una soluzione ottimale.

Nell’ambito di un’applicazione pratica non è possibile aspettare cosi tanto bisogna trovare un compromesso in modo da determinare in tempi ragionevoli una buona (anche se non ottimale) soluzione.

A questo scopo vengono utilizzati degli algoritmi approssimati detti euristiche.

Page 10: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Algoritmi Meta – Euristici

Utilizzano tecniche in grado di evitare di fermarsi in un ottimo locale. A questo scopo l’idea di base di questi algoritmi sta nel poter effettuare anche mosse peggioranti.

Una volta effettuata una mossa peggiorante non bisogna tornare alla mossa di partenza altrimenti si crea un loop infinito.

L’algoritmo meta-euristico deve rispettare 2 condizioni: Tempi di esecuzione che non crescano troppo

all’aumentare della dimensione del problema.

Soluzioni ottime o vicine a quelle ottime.

Page 11: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Tempo vs Qualità

Le condizioni sono in conflitto tra di loro quindi l’euristica è un compromesso tra fattori contrastanti:

Conseguenze: si sacrifica la garanzia di ottenere sempre la soluzione ottimale a favore di una risposta in tempi ragionevoli. Un esempio concreto sarà descritto in maniera esaustiva dal Simulated Annealing.

Tempo QualitàRapidità con cui viene restituita una soluzione

Qualità della soluzione ottenuta che dovrebbe essere più vicina al valore ottimale

Page 12: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Simulated Annealing

E’ un processo con il quale un solido, all’interno di un bagno termico, raggiunge uno stato di energia minima. Il procedimento da seguire è il seguente:

1. Portare il metallo, all’interno del bagno termico, ad una temperatura tale per cui fonde.

2. Riportare il metallo ad uno stato solido o cristallino controllando e riducendo gradualmente la temperatura, di modo che gli atomi all’interno del metallo raggiungano lo stato di energia minima.

• E’ utile analizzare il comportamento degli atomi durante questo processo.

Page 13: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Simulated Annealing – Fase I

Inizialmente gli atomi presenti all’interno del solido mantengono una struttura reticolare ordinata determinata dalle forze di legame.

Per effetto dell’energia interna, gli atomi, hanno la possibilità di spostarsi dalla posizione di equilibrio imposta dalle forze di legame della struttura assumendo una configurazione differente da quella iniziale.

Ad alte temperature l’energia interna raggiunge valori tali da vincere le forze di legame e gli atomi sono in condizione di allontanarsi dalla posizione rigida imposta e di assumere una configurazione disordinata tipica dello stato liquido.

Page 14: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Simulated Annealig – Fase II

Abbassando la temperatura del sistema in maniera lenta e graduale si potrà tornare ad una configurazione cristallina altamente ordinata.

Gli atomi durante il processo di raffreddamento riescono in maniera autonoma a ricostruire l’ordine cristallino eliminando le impurità iniziali rilasciando lentamente energia.

Il rilascio di energia graduale porterà al raggiungimento dello stato di energia minima ovvero lo stato cristallino puro

Page 15: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Osservazioni

Per ogni valore della temperatura il sistema evolve naturalmente verso lo stato di minima energia, cioè raggiunge l’equilibrio termico, quindi se consideriamo variazioni infinitesime possiamo dire che il sistema resta in equilibrio termico.

Le riduzioni veloci della temperatura possono causare dei fenomeni non desiderabili: difettosità nel reticolo cristallino con conseguente metastabilità, con fessurazioni e fratture del reticolo stesso (stress termico).

Questo processo di raffreddamento rapido può essere visto come analogo all’ottimizzazione locale.

L’annealing evita questo fenomeno procedendo ad un graduale raffreddamento del sistema, portandolo ad una struttura globalmente ottima stabile.

Page 16: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Distribuzione di Boltzmann

La termodinamica statica afferma che è più probabile trovarsi nello stato di energia minima, ma esiste una probabilità diversa da zero di trovarsi in un uno stato di energia maggiore.

Tale probabilità è descritta dalla Distribuzione di Boltzmann:

Page 17: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Algoritmo di Metropolis

L’algoritmo di Metropolis (1954) riesce a simulare le fasi del Simulated Annealing ed in particolare: Si parte dallo stato corrente S, alla

temperatura T e con energia E, definito dalle posizioni delle molecole che lo costituiscono.

Viene applicata una perturbazione consistente nello spostamento di una molecola in una nuova posizione scelta casualmente.

In tal modo il sistema raggiunge un nuovo stato, S’, con un diverso valore di energia E’

Si decide se accettare o meno il nuovo stato.

Page 18: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Algoritmo di Metropolis (I)

Page 19: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Algoritmo di Metropolis (II)

Il nuovo stato viene accettato, come stato corrente, con una probabilità definita dalla seguente espressione:

dove ΔE=E’-E è la differenza di energia tra il nuovo e il vecchio stato.

Page 20: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Algoritmo di Metropolis (III)

La probabilità usata da Metropolis rappresenta il rapporto fra la probabilità che il sistema si trovi nello stato S’ rispetto alla probabilità che si trovi nello stato S, secondo la distribuzione di Boltzmann.

Si noti che ad alte temperature tutti gli stati di energia sono equiprobabili, mentre a basse temperature il sistema si trova sicuramente in stati di minima energia.

Page 21: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Corrispondenza tra l’algoritmo di

Metropolis e l’ottimizzazione

Page 22: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Osservazioni

Se lo stato E’ è accettato, sostituirà lo stato iniziale e si procederà alla generazione di una nuova transizione.

Per simulare il lento raffreddamento si generano un numero N di transizioni per una data temperatura T, prima di passare ad una temperatura più bassa di modo che per ogni stato sia rispettato l’equilibrio termico.

Inizialmente un valore molto alto di T permette all’algoritmo di superare facilmente i minimi locali e di continuare la ricerca per una configurazione migliore.

In seguito, il progressivo abbassamento della temperatura tende a circoscrivere la ricerca di un minimo, permettendo all’algoritmo di convergere definitivamente al minimo globale.

La probabilità di transizione è definita essere non nulla quando ΔE è positiva intendendo con ciò che il sistema può spostarsi nel nuovo stato anche quando questo è peggiore (ha un energia più alta) di quello attuale.

Page 23: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Perché punti peggiori??

La ragione per cui si accettano anche punti con valori della funzione obiettivo peggiori è che questo è il solo modo di sfuggire ad ottimi locali non globali.

Nelle ricerche locali una volta giunti nell’ottimo locale non siamo più in grado di procedere a siamo costretti ad arrestarci (siamo intrappolati nell’ottimo locale).

In un algoritmo di SA possiamo invece sfuggire da un ottimo locale accettando anche punti peggiori rispetto a quello corrente.

Page 24: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+I passi della procedura

1. InizializzazioneConsiste nell’individuazione di una soluzione iniziale S di innesco.

2. Definizione di una mossaDefinisce l’operazione che permette di individuare casualmente una soluzione S’ nell’intorno della soluzione corrente S.

3. Accettazione della mossaÈ l’operazione grazie alla quale si valuta se accettare o meno la soluzione individuata S’ come nuova soluzione corrente S (S’→S) applicando la probabilità di accettazione esposta in precedenza.

4. Definizione della cooling schedulesRappresenta la definizione di tutti i parametri di controllo dell’algoritmo.

Page 25: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Cooling Schedules

Per cooling schedules si intende l’insieme delle regole che simulano il processo di raffreddamento e governa il successo dell’algoritmo.

Per definire una cooling schedules, in pratica, bisogna individuare:

1. il valore iniziale Tmax del parametro di controllo.

2. il valore finale Tmin del parametro di controllo.

3. Schema di raffreddamento ΔT.

4. Criterio di interruzione.

Page 26: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Temperatura Iniziale

Scegliere un valore abbastanza alto cosi da ammettere più fluttuazioni di energia iniziali evitando di bloccarsi in minimi locali.

Un semplice criterio di scelta è porre T uguale a infinito in modo da accettare tutti i possibili valori.

Un metodo comunemente usato è quello di White.

Page 27: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Temperatura Finale

Alcuni possibili criteri per stabilire a quale temperatura fermarsi sono: Se l’energia non cambia negli ultimi N stati

allora fermo l’algoritmo. Scegliere a priori un valore minimo di stati

accettati a temperatura costante. Se la differenza tra energia minima ed

energia massima degli stati a temperatura costante è prossima a zero.

Scegliere a priori un valore di soglia per la temperatura.

Page 28: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Schema di raffreddamento

ΔT (I)

Il successo dell’algoritmo è determinato dalla riduzione della temperatura.

E’ necessario scegliere un appropriato schema di riduzione degli stadi di temperatura determinando quando e quanto ridurre.

Page 29: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Schema di raffreddamento ΔT

(II) QUANDO QUANTO

• ACCADE SE: il numero di transizioni ad ogni stadio di temperatura deve essere tale da assicurare che si passi da uno stadio termico al successivo solo quando si è raggiunto l’equilibrio termico, cioè quando ad una data temperatura le energie delle soluzioni accettate approssimano la distribuzione di Boltzmann per quello stadio di temperatura.

• RIDUZIONE RAPIDA: porterebbe alla possibilità che l’algoritmo rimanga confinato in un minimo locale.

• RIDUZIONE LENTA: si ha un aumento degli stadi di temperatura con un conseguente innalzamento del tempo di calcolo.

Page 30: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Schema di raffreddamento ΔT

(III)

Possiamo quindi dire che lo schema di raffreddamento deve essere scelto in base al problema specifico che si sta trattando.

Vi sono due schemi di raffreddamento della temperatura quello geometrico e quello logaritmico:

Geometrico: è molto semplice, e viene utilizzato dalla maggioranza dei ricercatori. La temperatura viene ridotta, ad ogni stadio, moltiplicandola per una costante chiamata cooling ratio (α), che ha un valore compreso fra 0 ed 1.

Logaritmico: questo metodo garantisce la convergenza al minimo globale in un numero di passi potenzialmente infinito.

Page 31: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Criterio di interruzione

Fattore critico: il processo di annealing converge ad un ottimo globale se la temperatura è sufficientemente ridotta in modo graduale.

Interrompere il processo quando il numero di soluzioni accettate ad un certo stadio è inferiore ad un valore fissato. In questo caso ci si può aspettare una soluzione prossima all’ottimo globale.

Tipicamente, quando non si voglia effettuare un criterio di interruzione, è possibile utilizzare un valore finale della temperatura. Tale valore corrisponde dal punto di vista fisico dell’annealing al valore della temperatura ambiente quando il bagno di fusione si è solidificato in una struttura cristallina stabile e di minima energia. Tecnicamente tale valore finale della temperatura viene stabilito in base al problema che si sta affrontando.

Page 32: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Schema del processo fisico

Page 33: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Processo fisico Vs Ottimizzazione

Per costruire l’algoritmo si devono identificare nel problema di ottimizzazione le analogie con i concetti fisici:

SIMULATED ANNEALING

PROBLEMA DI OTTIMIZZAZIONE

Stato del Solido Spazio delle Soluzioni

Energia Funzione Costo

Temperatura Parametro di Controllo

Stato con minima energia

Soluzione Ottima

Page 34: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Costruzione dell’algoritmo

Bisogna scegliere un opportuno schema di annealing. Esso si ottiene attraverso la regolazione dei parametri da cui dipende il processo di ottimizzazione matematica: 1. stabilire la legge di decadimento della

temperatura;2. la durata del tempo necessario per il

raggiungimento dell'equilibrio termico;3. un metodo di perturbazione del sistema per la

generazione dello spazio delle configurazioni.

Page 35: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+ Processo simulato (SA)

Page 36: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Funzionamento generale

INIZIALIZZAZIONE di T ed X

While Not (Condizione d’arresto)

Do

for i1 to L

Do

GENERAZIONE di Y da X

If f(Y) <= f(X) Then XY

Else If METROPOLIS_RULE() Then XY

End

DECREMENTO DI T

End

Page 37: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Criteri di scelta della

temperatura

TEMPERATURA INIZIALE

Dato lo stato iniziale il sistema viene perturbarto per N passi a T->∞.

TEMPERATURA FINALE

L’algoritmo si arresta se la migliore configurazione non è cambiata per K iterazioni

Page 38: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Cooling Schedule (I)

Schema di raffreddamento Scheduling geometrico:

Tk = T0 α(k/N)

Dove: T0 = temperatura iniziale 0 ≤ α ≤ 1 k = passo attuale dell’algoritmo N = numero di transizione a temperatura Tk

Page 39: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Cooling Schedule (II)

Page 40: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Applicazioni SA in Matlab

Traveling Salesman Problem (TSP)

Bipartizione di un grafo

Deconvoluzione sismica

Page 41: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+TSP nel Simulated Annealing

Spazio delle configurazioni

Insieme di punti del piano che corrispondono alle città da visitare.

Funzione Obiettivo Distanza minima tra le città.

Perturbazione Scelti due indici i<j, si inverte il cammino tra essi.

Configurazione Iniziale E’ ottenuta collegando nell'ordine dato in input i punti del percorso

Page 42: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Bipartizione di un Grafo

Dato un grafo G=(V,E) non orientato, dove V è un insieme di vertici, una bipartizione {V1, V2} è definita da:

V1∩V2= ∅ e V1 ∪ V2=V

tali che il numero di archi che connettono V1 e V2 sia minimo.

Se un arco(u,v) connette le due partizioni, con u ϵ V1 e v ϵ V2 , la funzione obiettivo è quindi:

{(u,v) ϵ E : u ϵV1 , v ϵV2}

Page 43: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Bipartizione di un Grafo in SA

Spazio delle configurazioni

Grafo G= (V,E) da bipartire.

Funzione Obiettivo Peso complessivo degli archi che connettono gli insiemi V1 e V2.

Perturbazione Scambio di un nodo da una partizione all’altra

Configurazione Iniziale La prima partizione è ottenuta separando i primi N/2 nodi dai successivi N/2. (N pari)

Page 44: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Deconvoluzione Sismica

La deconvoluzione è un passaggio fondamentale nell’elaborazione di un segnale sismico, permette di recuperare le alte frequenze, attenuare le multiple e ricostruire la forma d’onda generata da un impulso.

La deconvoluzione semplifica l’onda sismica della sorgente f(t) dalle tracce registrate per ricostruire idealmente la funzione della riflettività terrestre e(t).

I coefficienti di riflessione identificano e quantificano il disallineamento tra i diversi strati geologici

Page 45: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Deconvoluzione Sismica (II)

Page 46: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Deconvoluzione Sismica (III)

L’applicazione consiste nel far detonare una carica esplosiva sulla superficie terrestre.

Le onde sonore, provocate dall’esplosione, attraversa diversi strati delle crosta terrestre fino a raggiungere uno strumento che ne misura il valore.

Le onde saranno parzialmente riflesse nel passaggio tra uno strato ed un altro. Il segnale ricevuto sarà una sovrapposizione di più segnali attenuati e ritardati del segnale originale.

Page 47: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Deconvoluzione Sismica (IV)

Page 48: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Deconvoluzione Sismica (V)

Dato f(t) segnale originale, g(t) segnale misurato.

Il segnale ricostruito sarà dato da:

s(t)=Σi αi f(t-τ)

Dove α e τ sono rispettivamente attenuazione e ritardo dell’i-esima componente della sovrapposizione.

Funzione costo : Σi (g(t)-s(t))2

Page 49: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Deconvoluzione Sismica (VI)

Page 50: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Deconvoluzione Sismica in SA

Spazio delle configurazioni

f(t),g(t)

Funzione Obiettivo Σi (g(t)-s(t))2

Perturbazione Variamo uno dei valoridi α e τ

Configurazione iniziale Viene generata un onda con valori prestabiliti di α, τ e noise.

Page 51: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Scenari applicativi del SA

Image processing (Ricostruzione di immagini)

Elettronica (Progettazione di circuiti integrati complessi o “microchip”): per minimizzare le interferenze tra i collegamenti tra le componenti.

Robotica (Path generation): per la pianificazione diretta di percorsi robotici ottimali in modo da evitare ostacoli mantenendo un andamento continuo.

Meccanica (Planar Mechanism Synthesis): per la produzione di ingranaggi meccanici.

Medicina (tomografia): una metodologia diagnostica per immagini, che sfrutta i raggi x e consente di riprodurre sezioni corporee del paziente ed elaborazioni tridimensionali.

Geologia (prospezioni): tecniche di indagine non distruttiva del sottosuolo, che consiste nella misurazione tramite apparecchi di alcune proprietà fisiche del terreno.

Page 52: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Image Processing

Il SA viene utilizzato per il PET (Tomografia ad Emissione di Positroni), una tecnica di diagnostica medica che produce immagini tridimensionali o mappe dell’attività metabolica del paziente.

Produce delle immagine ad alta definizione.

Ricostruisce dati a partire da dati di proiezione rumorosi.

Per il problema del rumore introdotto dallo scanner, vengono utilizzate tecniche di ricostruzione statistica.

In particolar modo utilizziamo l'algoritmo del Simulated Annealing per la sua capacità di evitare di rimanere intrappolati in minimi locali.

Page 53: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Image Processing (I)

Il PET è un metodo di scansione analogo alla più conosciute tac e risonanze magnetiche con la differenza che le scansioni PET sono in grado di rilevare alterazioni a livello biologico molecolare che spesso precedono l'alterazione anatomica.

Page 54: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Image Processing (II)

Dato PM misurato Si costruisce in maniera iterativa l’immagine che si

adatta a PM calcolando ad ogni passo lo pseudo dato PP che corrisponde allo stato attuale dell’immagine.

PM e PP vengono confrontati Se la loro differenza viene ridotta al minimo, l’immagine

ricostruita converge all’immagine originale.

Page 55: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Image Processing (III)

La funzione costo sarà quindi:

dove i e j sono le coordinate di riferimento per i singoli pixel.

Ad ogni passo iterativo viene alterata l’immagine cambiando in modo random il valore di un pixel

La funzione obiettivo assume un valore differente quindi si deve decidere se accettare o meno la modifica del dato.

L’immagine ricostruita converge alla fine a quella originale.

Page 56: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Image Processing (IV)

Questo processo ha dimostrato di ottenere buoni risultati per un’immagine di area 64x64 pixel. (A) è l‘immagine originale e (B) è l’immagine ricostruita utilizzando simulated annealing. L‘immagine sfocata (C) è stata ottenuta utilizzando il metodo di massima verosimiglianza, che non ottimizza l’immagine globalmente.

Page 57: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Circuiti VLSI -Very Large Scale

Integration Per VLSI si intende un circuito integrato ad alta

densità cioè un dispositivo elettronico miniaturizzato realizzato su un substrato di materiale semiconduttore che integra fino a centinaia di milioni di componenti elettronici elementari (transistor, diodi, condensatori e resistori) al suo interno.

Nella figura è rappresentata la piastrina un circuito VLSI

Page 58: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Progettazione di circuiti IC

(microchip)Processo di progettazione di circuiti

integrati:1. Partizionamento del circuito in blocchi

logico-comportamentali elementari interconnessi.

2. Realizzazione del modello fisico dei circuiti posizionando in maniera opportuna gli elementi circuitali.

3. Instradamento dei cavi tra le posizioni terminali.

Page 59: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Progettazione di circuiti IC

(microchip)(II) Il primo passo descritto rappresenta un esempio di utilizzo

del SA.

Esso può essere espresso come un problema di partizionamento di un Ipergrafo H pesato in cui il peso di ciascuna componente non può superare una certa soglia “c” (capacità dei blocchi) e in cui si vuole minimizzare la connessione tra le componenti.

Nell’ipergrafo H(V,E) i vertici sono in corrispondenza biunivoca con le componenti.

Ad ogni vertice si assegna un peso ωi ≥ 0 pari alla dimensione del componente rappresentato dal vertice stesso.

Archi del grafo = collegamenti tra i componenti

Page 60: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+Progettazione di circuiti VLSI

Il modo in cui una cella è posizionata rispetto alle altre è guidato dalla necessità di minimizzare la lunghezza dei collegamenti fra le celle e le sovrapposizioni fra gli strati metallici che realizzano le connessioni.

La nostra funzione obiettivo è fare in modo che due celle che si trovano vicine logicamente siano il più possibile vicine fisicamente rispettando i vincoli di spazio imposti.

Page 61: + UNIVERSITÀ DEGLI STUDI DI CATANIA FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA Simulated Annealing Seminario di

+

GRAZIE