Ricottura simulata

Da Wikipedia, l'enciclopedia libera.
(Reindirizzamento da Simulated annealing)
Vai alla navigazione Vai alla ricerca

La ricottura simulata[1] (dall'inglese simulated annealing) è una strategia utilizzata per risolvere problemi di ottimizzazione, che mira a trovare un minimo globale quando si è in presenza di più minimi locali.

Il termine "ricottura" è un'analogia con l'omonimo concetto nella scienza dei metalli, dov'è usato per descrivere il processo di eliminazione di difetti reticolari dai cristalli tramite riscaldamento seguito da lento raffreddamento.[1] In questo caso un difetto reticolare corrisponde ad una combinazione errata di due oggetti (ad esempio una connessione errata di due neuroni all'interno di una rete neurale artificiale).

Procedimento di utilizzo[modifica | modifica wikitesto]

  1. È scelta una temperatura iniziale arbitraria:
    1. Si sonda il problema per individuarne le possibili soluzioni (da 50 a 100 soluzioni);
    2. Per ogni possibile soluzione se ne calcola il costo;
    3. Si prende il ;
    4. A questo punto si prende una temperatura iniziale maggiore della variazione di energia () ma dello stesso ordine di grandezza;
  2. Si abbassa la temperatura fino a raggiungere un valore prossimo allo 0;
  3. In prossimità del minimo valore di T si trova un minimo (di energia) abbastanza forte;
  4. Ripetendo questo ciclo, la possibilità di trovare la stessa soluzione tende a 0. Se si sono trovate due soluzioni uguali per due prove diverse dello stesso problema significa che molto probabilmente qualcosa non funziona.

La temperatura della rete è definita in modo che:

  1. Se T è elevata: ci si può permettere di fare salti alti, e quando si trova un minimo si prova a proseguire per scoprire se si tratti solo di un minimo locale;
  2. Se T è bassa: si possono ancora fare salti alti ma con minore probabilità, quindi si procede a passi più corti;
  3. Riduzione veloce di T: implica il congelamento di alcune fluttuazioni termiche;
  4. Riduzione molto lenta di T: può implicare il non raggiungimento della conclusione del calcolo e quindi il non trovare un minimo globale.

Note[modifica | modifica wikitesto]

  1. ^ a b David Sherrington, La grande scienza. Sistemi disordinati, in Storia della scienza, Roma, Istituto dell'Enciclopedia Italiana, 2003.

Altri progetti[modifica | modifica wikitesto]

Collegamenti esterni[modifica | modifica wikitesto]