查看单个帖子
旧 2008-11-18, 12:34 AM   #1
huangyhg
超级版主
 
huangyhg的头像
 
注册日期: 04-03
帖子: 18592
精华: 36
现金: 249466 标准币
资产: 1080358888 标准币
huangyhg 向着好的方向发展
默认 【转帖】模拟退火算法在连续极小化问题中的应用之matlab程序

本程序实际上是把模拟退火过程引入单纯形法来求多元函数的极值,和用模拟退火算法求旅行熵问题有许多不同。获得本程序后,需要自行编制程序调低温度temper,重置iter,以满足个人的不同应用需要。~..~
amebsa为主程序;ran1为随机数产生程序。
程序简介如下:
用模拟退火与Nelder和Mead的下降单纯形法相结合的方法求多元函数funk(x)的极小值,其中x(1...ndim)为一个ndim维向量。作为输入参数矩阵p(1...ndim+1,1...ndim)共有ndim+1行,每行均为一个ndim维向量,分别代表初始单纯形的各个顶点。amebsa的输入项还包括矢量y(1...ndim+1)、浮点数ftol和temptr,其中y的各个元素应当被初始化为函数funk在p的ndim+1个顶点的值;ftol为函数值所要达到的相对收敛容许限,一旦满足要求,程序将尽早返回;iter和temptr的意义分别是函数值的计算次数和温度。程序在某退火温度temptr处进行iter次函数值计算后返回。接下来的工作是根据退火进程调低温度temptr,重置iter并再次调用该程序(每次调用时其他参数保持不变)。如果iter以正值返回,则说明程序正常收敛。如果第一次调用时yb被初始化为一个很大的数,则yb和pb(1...dim)将依次返回已遇到的最佳函数值和最佳点。
http://www.5iai.com/cms/view.php?tid=1291&cid=15
__________________
借用达朗贝尔的名言:前进吧,你会得到信心!
[url="http://www.dimcax.com"]几何尺寸与公差标准[/url]
huangyhg离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)