Python Programming for Biology: Bioinformatics and Beyond



Download 7,75 Mb.
Pdf ko'rish
bet421/514
Sana30.12.2021
Hajmi7,75 Mb.
#91066
1   ...   417   418   419   420   421   422   423   424   ...   514
Bog'liq
[Tim J. Stevens, Wayne Boucher] Python Programming

Simulated annealing

The  next  section  of  this  chapter  relates  to  an  adjustment  to  the  Monte  Carlo  method

termed  simulated  annealing,

6

,



7

 and  this  may  be  applied  to  both  the  combinatorial  and

function optimisations already described. Here the main principle is to have the same kind

of random selection and acceptance rules as before, but the degree of acceptance of non-

improving  states  diminishes.  As  the  data  sampling  proceeds  the  acceptance  criterion

becomes  stricter,  and  the  range  of  accepted  steps  effectively  becomes  narrower.  This

enables an initially wide search that will hopefully sample enough to explore close to the

globally best solution, but which will later settle on a refined optimum. Using simulated

annealing will counter some of the later moves which would otherwise cause the state to

jump  out  of  a  globally  optimum  solution.  For  some  problems  the  simulated  annealing

approach need not be used, as it does not sample as widely as plain Monte Carlo, in the

same  number  of  steps,  and  has  a  greater  tendency  to  get  stuck  in  sub-optimal  minima.

However, when used with care it makes a better refinement protocol, and at the end of the

search  the  last  state  will  tend  to  be  close  to  an  optimum  (local  or  otherwise),  which  can

remove  the  need  to  record  good  solutions  during  the  search.  Often  simulated  annealing

will be used in situations where it is not required to have the absolute best solution, just a

reasonably good one in a short time.

The term simulated annealing reflects a similar physical process that occurs in materials

science, when a solid is heated and slowly cooled to create a more ordered state, e.g. with

bigger  crystals.  The  term  that  we  introduce  into  a  Monte  Carlo  search  to  diminish  the

likelihood  of  accepting  less  optimal  states  is  analogous  to  temperature  in  physical

annealing.  Here  we  introduce  the  variable  cool,  which  represents  the  sampling

‘temperature’, or more generally the annealing schedule. The Python examples will only

use  a  simple  exponential  decay  to  provide  the  value  of  cool,  but  in  other  situations  it  is

commonplace  to  have  more  complex  annealing  schedules.  For  example,  the  solutions  to

some problems that have been caught in sub-optimal states may be rescued by restarting

the  annealing  from  a  recorded  earlier  state  and  temperature,  or  by  re-raising  the

temperature (‘shake and bake’). Another approach that is worth mentioning, but which we

do  not  have  room  to  describe  in  detail,  is  ensemble-based  methods,  where  multiple,

separate  copies  of  a  Monte  Carlo  search  are  done  in  parallel.  Each  of  the  replicas  in  an

ensemble  of  concurrent  Monte  Carlo  searches  will  find  different  solutions  and  may

operate  under  different  conditions.  A  method  called  parallel  tempering  or  replica



exchange  Monte  Carlo  will  perform  the  separate  searches  at  different  temperatures  and

occasionally swap solutions between the different temperatures, searching both widely and

precisely while maintaining detailed  balance.  Another  common  ensemble  approach  is  to

use  a  genetic  algorithm,  whereby  different  replicas  exchange  part  of  their  states:  the

genetics analogy is with the mutation and crossover of DNA strands when parents produce

offspring.





Download 7,75 Mb.

Do'stlaringiz bilan baham:
1   ...   417   418   419   420   421   422   423   424   ...   514




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish