logxing 发表于 2009-2-17 10:17

如果自动处理无望,那么只有靠手动实现,基本就是梯度法。虽然麻烦点但迭代次数是有限的。

比如先选一个初值A1,B1,C1,得到一个目标函数,比如(Emax-Emin)
再计算A1+delta,B1,C1得到(Emax-Emin)1
再计算A1,B1+delta,C1得到(Emax-Emin)2
再计算A1,B1,C1+delta得到(Emax-Emin)3
这里delta是个很小的数,比如0.0000001

这样就得到了搜索方向,再确定搜索步长,按照梯度法的思路走就行了。

sun1993 发表于 2009-2-17 15:26

只是一直纠结于结果稳定和最小值当中
应该是用优化方法来找目标函数的最小值
而目标函数应当是两次算出结果的比较,即差值
问题就出在目标函数上

补充一下,所谓结果稳定,是希望(A1,B1,C1) 算出的E1与(A2,B2,C2),(A3,B3,C3),。。。算出的E1相差很小,
同理E2 与E2,E3与E3,。。。
而E1,E2,E3 等则没什么相差很小的要求

[ 本帖最后由 sun1993 于 2009-2-17 16:04 编辑 ]

logxing 发表于 2009-2-18 09:30

那应该简单多了,目标函数都不用写了,就是求E(A,B,C,i)的极值点。
页: 1 [2]
查看完整版本: 请教一个优化目标函数的算法