当前位置: 首页 > news >正文

网站栏目类型鄂尔多斯建设招投标网站

网站栏目类型,鄂尔多斯建设招投标网站,网站建设 骏域网络建设专家广州,域名解析是什么意思## 0 赛题思路 #xff08;赛题出来以后第一时间在CSDN分享#xff09; https://blog.csdn.net/dc_sinor?typeblog 1 退火算法原理 1.1 物理背景 在热力学上#xff0c;退火#xff08;annealing#xff09;现象指物体逐渐降温的物理现象#xff0c;温度愈低#…## 0 赛题思路 赛题出来以后第一时间在CSDN分享 https://blog.csdn.net/dc_sinor?typeblog 1 退火算法原理 1.1 物理背景 在热力学上退火annealing现象指物体逐渐降温的物理现象温度愈低物体的能量状态会低够低后液体开始冷凝与结晶在结晶状态时系统的能量状态最低。大自然在缓慢降温亦即退火时可“找到”最低能量状态结晶。但是如果过程过急过快快速降温亦称「淬炼」quenching时会导致不是最低能态的非晶形。 如下图所示首先左图物体处于非晶体状态。我们将固体加温至充分高中图再让其徐徐冷却也就退火右图。加温时固体内部粒子随温升变为无序状内能增大而徐徐冷却时粒子渐趋有序在每个温度都达到平衡态最后在常温时达到基态内能减为最小此时物体以晶体形态呈现。 1.2 背后的数学模型 如果你对退火的物理意义还是晕晕的没关系我们还有更为简单的理解方式。想象一下如果我们现在有下面这样一个函数现在想求函数的全局最优解。如果采用Greedy策略那么从A点开始试探如果函数值继续减少那么试探过程就会继续。而当到达点B时显然我们的探求过程就结束了因为无论朝哪个方向努力结果只会越来越大。最终我们只能找打一个局部最后解B。 根据Metropolis准则粒子在温度T时趋于平衡的概率为exp(-ΔE/(kT))其中E为温度T时的内能ΔE为其改变数,k为Boltzmann常数。Metropolis准则常表示为 Metropolis准则表明在温度为T时出现能量差为dE的降温的概率为P(dE)表示为P(dE) exp( dE/(kT) )。其中k是一个常数exp表示自然指数且dE0。所以P和T正相关。这条公式就表示温度越高出现一次能量差为dE的降温的概率就越大温度越低则出现降温的概率就越小。又由于dE总是小于0因为退火的过程是温度逐渐下降的过程因此dE/kT 0 所以P(dE)的函数取值范围是(0,1) 。随着温度T的降低P(dE)会逐渐降低。 我们将一次向较差解的移动看做一次温度跳变过程我们以概率P(dE)来接受这样的移动。也就是说在用固体退火模拟组合优化问题将内能E模拟为目标函数值 f温度T演化成控制参数 t即得到解组合优化问题的模拟退火演算法由初始解 i 和控制参数初值 t 开始对当前解重复“产生新解→计算目标函数差→接受或丢弃”的迭代并逐步衰减 t 值算法终止时的当前解即为所得近似最优解这是基于蒙特卡罗迭代求解法的一种启发式随机搜索过程。退火过程由冷却进度表(Cooling Schedule)控制包括控制参数的初值 t 及其衰减因子Δt 、每个 t 值时的迭代次数L和停止条件S。 2 退火算法实现 2.1 算法流程 (1) 初始化初始温度T(充分大)初始解状态S(是算法迭代的起点) 每个T值的迭代次数L (2) 对k1……L做第(3)至第6步 (3) 产生新解S′ (4) 计算增量Δt′C(S′)-C(S)其中C(S)为评价函数 (5) 若Δt′0则接受S′作为新的当前解否则以概率exp(-Δt′/T)接受S′作为新的当前解. (6) 如果满足终止条件则输出当前解作为最优解结束程序。 终止条件通常取为连续若干个新解都没有被接受时终止算法。 (7) T逐渐减少且T-0然后转第2 2.2算法实现 import numpy as np import matplotlib.pyplot as plt import randomclass SA(object):def __init__(self, interval, tabmin, T_max10000, T_min1, iterMax1000, rate0.95):self.interval interval # 给定状态空间 - 即待求解空间self.T_max T_max # 初始退火温度 - 温度上限self.T_min T_min # 截止退火温度 - 温度下限self.iterMax iterMax # 定温内部迭代次数self.rate rate # 退火降温速度#############################################################self.x_seed random.uniform(interval[0], interval[1]) # 解空间内的种子self.tab tab.strip() # 求解最大值还是最小值的标签: min - 最小值max - 最大值#############################################################self.solve() # 完成主体的求解过程self.display() # 数据可视化展示def solve(self):temp deal_ self.tab # 采用反射方法提取对应的函数if hasattr(self, temp):deal getattr(self, temp)else:exit(tab标签传参有误min|max)x1 self.x_seedT self.T_maxwhile T self.T_min:for i in range(self.iterMax):f1 self.func(x1)delta_x random.random() * 2 - 1if x1 delta_x self.interval[0] and x1 delta_x self.interval[1]: # 将随机解束缚在给定状态空间内x2 x1 delta_xelse:x2 x1 - delta_xf2 self.func(x2)delta_f f2 - f1x1 deal(x1, x2, delta_f, T)T * self.rateself.x_solu x1 # 提取最终退火解def func(self, x): # 状态产生函数 - 即待求解函数value np.sin(x**2) * (x**2 - 5*x)return valuedef p_min(self, delta, T): # 计算最小值时容忍解的状态迁移概率probability np.exp(-delta/T)return probabilitydef p_max(self, delta, T):probability np.exp(delta/T) # 计算最大值时容忍解的状态迁移概率return probabilitydef deal_min(self, x1, x2, delta, T):if delta 0: # 更优解return x2else: # 容忍解P self.p_min(delta, T)if P random.random(): return x2else: return x1def deal_max(self, x1, x2, delta, T):if delta 0: # 更优解return x2else: # 容忍解P self.p_max(delta, T)if P random.random(): return x2else: return x1def display(self):print(seed: {}\nsolution: {}.format(self.x_seed, self.x_solu))plt.figure(figsize(6, 4))x np.linspace(self.interval[0], self.interval[1], 300)y self.func(x)plt.plot(x, y, g-, labelfunction)plt.plot(self.x_seed, self.func(self.x_seed), bo, labelseed)plt.plot(self.x_solu, self.func(self.x_solu), r*, labelsolution)plt.title(solution {}.format(self.x_solu))plt.xlabel(x)plt.ylabel(y)plt.legend()plt.savefig(SA.png, dpi500)plt.show()plt.close()if __name__ __main__:SA([-5, 5], max)实现结果
http://www.tj-hxxt.cn/news/143881.html

相关文章:

  • 温州英文网站建设微信小程序组件库
  • 丹阳网站建设价格查询网站备案查询
  • 网站电脑培训班办公软件南昌地宝网app
  • 便宜网站制作公司网站建设与维护实训总结
  • 网站开发流程书籍做网页培训
  • 做民宿怎么登录网站苏州网站建设相关技术
  • 网站制作产品资料开源网站搭建
  • 网站备案用英文怎么说移动网站开发教学大纲
  • 非营利组织网站建设会计分录蜘蛛网站长工作职责
  • 网站建设的提升容县网站建设
  • 定州住房和城乡建设局网站wordpress id清0
  • 上海正规建设网站私人订制广州设计网站培训学校
  • 上海集团网站建设公司好电子商务网站建设规划书范文
  • 2016用什么网站程序做流量合肥网站建设维护
  • 联通 网站备案佛山企业网站设计
  • 网站建设佰首选金手指十三哈尔滨模板建站哪个品牌好
  • 忻州建设网站的公司wordpress mohtml
  • 北京朝阳区天气预报免费seo优化
  • python 做下载网站一个人免费播放视频在线观看
  • 如何建三网合一网站自己可以进行网站建设吗
  • 最好的网站建设免费的青岛seo推广专员
  • 学校网站开发必要性与意义网络营销方法和手段
  • 厦门哪家网站建设最好汽配网站建设成本
  • 山西做网站推广网站建设使用的基本技术
  • 品牌网站建设哪里有松江品划网络做网站
  • 手机管理网站模板下载注册公司2个人可以吗
  • 在线动画手机网站模板下载网站关键词seo优化公司
  • 网站建设 论坛阿里云建设个人网站
  • 休闲度假村网站建设方案产品网站系统
  • 智能建站和成品网站的区别做网站是干嘛