展会信息港展会大全

C#数值计算之模拟退火法简介(二)
来源:互联网   发布日期:2011-09-16 10:54:31   浏览:10122次  

导读:C#数值计算之模拟退火法简介(二)...

在上一篇文章中讲述了模拟退火的基本原理,以下以一个实际的例子来说明,其中所有的源码已贴出,可以从中了解到很多细节。使用模拟退火法求函数f(x,y) = 5sin(xy) + x2 + y2的最小值 解:根据题意,我们设计冷却表进度表为:即初始温度为100衰减参数为0.95马可夫链长度为10000Metropolis的步长为0.02结束条件为根据上一个最优解与最新的一个最优解的之差小于某个容差。 使用METROPOLIS接受准则进行模拟, 程序如下 /* * 模拟退火法求函数f(x,y) = 5sin(xy) + x^2 + y^2的最小值 * 日期:2004-4-16 * 作者:ARMYLAU* EMAIL:armylau2@163.com * 结束条件为两次最优解之差小于某小量 */using System;namespace SimulateAnnealing{ class Class1 { // 要求最优值的目标函数 static double ObjectFunction( double x, double y ) { double z = 0.0; z = 5.0 * Math.Sin(x*y) + x*x + y*y; return z; } [STA

赞助本站

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港