硕士论文 最佳化演算法介绍--模拟退火法.docVIP

硕士论文 最佳化演算法介绍--模拟退火法.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
硕士论文 最佳化演算法介绍--模拟退火法.doc

最佳化演算法介紹--模擬退火法 摘要 求解離散組合數學問題(Discrete Combination Mathematical Problem),有很多最佳化組合演算(Optimization Combination Algorithm)被提出,如支界法(Branch and Bound Method)、模擬退火法(Simulation Annealing)、基因遺傳演算法(Genetic Algorithm)、差分進化法(Differential Evolution)及模糊技術法(Fuzzy Technique)等陸續被應用,近年來更有提出類神經網路法(Neural Network Method)、人工智慧法及將兩種不同方法混合成一種新的解法,例如:有人將專家系統與退火法結合成複合法(Hybrid Method)……等等,解法技術的精進,使以往可能只是求局部解的,現在則可能成為求全域解。 關鍵詞:離散組合數學問題、最佳化組合演算、支界法、模擬退火法、基因遺傳演算法、差分進化法、模糊技術法、類神經網路法、人工智慧法。 前言 最佳化演算法無論就早期數學最佳化,或最近所應用的組合數學最佳化法,其主要目標,不外乎希望在最短時間內,求出最精確的最佳解。本文將簡介模擬退火法[1-6]以便進一步探索最佳化演算法。 材料與方法 模擬退火法,源自於物理學上的退火法則:金屬被加熱至熔點以上會產生熔解,之後慢慢的降溫到晶体粒子排列非常緊密,達到冷凍狀態,金屬在高溫時,原子會激烈地隨機動作,有朝能量最低狀態的趨勢,當降溫速度非常慢時,粒子間活動達一熱平衡(Thermal equlilbrium),直到冷凍狀態,此時系統能量最低。 模擬退火法最早由N.Metropolis 等人在1953年提出,直到1983年由S.Kirpatrick 等人用來解組合最佳化問題,主要是尋求問題的最佳解。它是一種機率登山搜尋(Probabilistic Hill Climbing Search )演算法,在搜尋過程中,通常以最陡降的方式,使解答往能量函數值較低處移動,透過隨機過程,偶爾往能量函數值較高處移動,此種方法,提供具有跳脫局部解的能力,如圖一所示 圖1:模擬退火法最佳解之搜尋 模擬退火演算法,可進一步說明如下 (1) 其中為退火代數,為退火程序溫度,為初始溫度、為最終溫度。當時,程式執行終止。 ,為降溫係數,, 則為求值函數,是一探索串列,如下所示 = {} , (2) 分別表前後程序,表程序執行代數,串列中的每一 表前後程序的兩個可行解(為人口數或染色体),及的遷移機率如下所示 =, (3) 在現時退火程序溫度,由前可行能移動到後解之機率的演算程序中所產生的一系列可行解 ,形成一Markov鏈。在大部份演算中,以人口數, 其演算步驟如下所示: 步驟一:輸入系統資料並設定初始溫度,最終溫度,擾動次數 及降溫係數,退火程序代數等。 步驟二:隨機擾動產生第的退火程序,其可行解為。 步驟三:退火程序代數加一,即,現時程序溫度為。 步驟四:由前一可行解,連續產生個差分擾動的可行解,即,,評估所有可行解的適合值,並找出其中最佳者為。 步驟五:依據機率登山搜尋法則,比較前次可行解與後次可行解,決定到目前為止的程序可行解。 步驟六:比較現時程序溫度是否小於等於最終溫度,如果:是,則輸出可行的解,此即最後所求的最佳解,並終止程序執行。否,則跳至步驟三,繼續下一退火程序的執行。 前解(父系解)經差分擾動產生後解(子系解)的機率,如式(3),它表示系統所有可能狀況的分佈為Boltzman分佈,的解出自於問題獨特啟發式(heuristic)的論據,假如解的能量為,而的解為,後解的能量與前解的能量差為, 以現行溫度為基礎,則可行解的搜尋,其遷移機率分佈,在古典為Boltzman分佈,如下所示 = (4) 其中:為波茲曼常數 機率登山搜尋法則演算法如下所示: 步驟一:將前後解作能量評估,以後解評估值為,而前解評估值為,評估之後,兩者能量值相減如下所示 =- (5) 步驟二:能量差,則後解取代前解為現時的可行解,同時結束執行演算法。,則跳至步驟三。 步驟三:產生一介於0與1間的隨機數,假如,則後解取代前解為現時的可行解,同時結束執行演算法。如果,則保留前解為現時的可行解,結束演算法。 上述機率登山搜尋法則演算法,說明在溫度 退火程序時,當後解的能量比前解低時,即 ,則往能量較低的地方搜尋;相反的,有一機率往能量高的地方移動,產生一個介於與 之間的隨機數,假如隨機數小於,則往能量高的地方搜尋;反之,則維持在能量低處,因此可避免陷入局部解。 結論 最佳化演算法,對許多學生而言是一門陌生的課程,建議先修習數值方法及研讀最佳化相關教科書後再行研究

文档评论(0)

changlipo2019 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档