Matlab 版 (精华区)
发信人: seesea (马虎学究), 信区: Matlab
标 题: [合集]请教一个优化函数的问题
发信站: 哈工大紫丁香 (2002年10月29日01:04:30 星期二), 站内信件
────────────────────────────────────────
hjf (leaf) 于 2001年04月19日20:13:18 星期四 说道:
据我所知,比如[x,fval,exitflag,output]=fmincon(@myfun,x0,[],[],[],[],[],[],@
confun,options)
那么,目标函数名必须存为myfun.m,限定函数文件必须存为confun.m,而且在目标函数
文件开头应写为function f=myfun(x),同样,在限制函数文件开头应写为function f=
confun(x),这样应该不出问题了。
【 在 also (十三不靠胡对倒) 的大作中提到: 】
: 【 在 terminete (农村土豹子就是我) 的大作中提到: 】
: : 标 题: 请教一个优化函数的问题
: : 发信站: 哈工大紫丁香 (2001年04月18日19:25:19 星期三), 站内信件
: : 请教大虾,我在课题中遇到点问题,用到优化工具箱中的函数:fmincon
: : 运行后出现以下错误:Attempt to execute SCRIPT fmincon as a function.
: : 程序很简单,可是找不到为什么出错
: : 程序清单如下,请指教:
: : the M-file_one is :err
: : function e=err(f)
────────────────────────────────────────
terminete (农村土豹子就是我) 于 2001年04月19日20:23:48 星期四 说道:
你说的没错,我是将e作为性能指标。
但是在我的M-flie中,e是所要优化的函数,可以是向量
【 在 also (十三不靠胡对倒) 的大作中提到: 】
: 【 在 terminete (农村土豹子就是我) 的大作中提到: 】
: : 标 题: 请教一个优化函数的问题
: : 发信站: 哈工大紫丁香 (2001年04月18日19:25:19 星期三), 站内信件
: : 请教大虾,我在课题中遇到点问题,用到优化工具箱中的函数:fmincon
: : 运行后出现以下错误:Attempt to execute SCRIPT fmincon as a function.
: : 程序很简单,可是找不到为什么出错
: : 程序清单如下,请指教:
: : the M-file_one is :err
: : function e=err(f)
────────────────────────────────────────
terminete (农村土豹子就是我) 于 2001年04月19日20:29:52 星期四 说道:
【 在 hjf (leaf) 的大作中提到: 】
: 据我所知,比如[x,fval,exitflag,output]=fmincon(@myfun,x0,[],[],[],[],[],[],@
: confun,options)
: 那么,目标函数名必须存为myfun.m,限定函数文件必须存为confun.m,而且在目标函数
: ~~~~~~~~~~~a我认为你理解的不全面,不是必须寸成这个文件名
只是那个位置代表目标函数
文件开头应写为function f=myfun(x),同样,在限制函数文件开头应写为function f=
: confun(x),这样应该不出问题了。
: 【 在 also (十三不靠胡对倒) 的大作中提到: 】
────────────────────────────────────────
also (十三不靠胡对倒) 于 2001年04月19日20:35:17 星期四 说道:
感觉好像向量做不行,我把err sum了一下,倒是能运行,但是
Maximum number of function evaluations exceeded;
increase OPTIONS.MaxIter
f =
-10 -10 -10 -10
增大迭代次数和tol也不行.
:(
【 在 terminete (农村土豹子就是我) 的大作中提到: 】
: 你说的没错,我是将e作为性能指标。
: 但是在我的M-flie中,e是所要优化的函数,可以是向量
: 【 在 also (十三不靠胡对倒) 的大作中提到: 】
────────────────────────────────────────
terminete (农村土豹子就是我) 于 2001年04月19日20:47:01 星期四 说道:
你是说这个函数不能求向量类型的函数极值吗?
可是我用优化工具箱中的其他函数:lsqnonlin可以得到结果。
不过这个函数不能有限定条件
【 在 also (十三不靠胡对倒) 的大作中提到: 】
: 感觉好像向量做不行,我把err sum了一下,倒是能运行,但是
: Maximum number of function evaluations exceeded;
: increase OPTIONS.MaxIter
: f =
: -10 -10 -10 -10
: 增大迭代次数和tol也不行.
: :(
────────────────────────────────────────
also (十三不靠胡对倒) 于 2001年04月19日20:54:40 星期四 说道:
那是多目标规划用的.
这个好像是不行的.
【 在 terminete (农村土豹子就是我) 的大作中提到: 】
: 你是说这个函数不能求向量类型的函数极值吗?
: 可是我用优化工具箱中的其他函数:lsqnonlin可以得到结果。
: 不过这个函数不能有限定条件
: 【 在 also (十三不靠胡对倒) 的大作中提到: 】
: : 感觉好像向量做不行,我把err sum了一下,倒是能运行,但是
: : Maximum number of function evaluations exceeded;
: : increase OPTIONS.MaxIter
: : f =
: : -10 -10 -10 -10
: : 增大迭代次数和tol也不行.
────────────────────────────────────────
xuedy (dingyu) 于 2001年04月29日06:05:31 星期天 说道:
我理解你的原问题可能是:FMINCON被改写成了M文件,而不是M函数了。你用which fmi
ncon查一下是否别人在其他路径下定义了一个fmincon文件,或用edit fmincon打开看看
到底是不是该文件的事
定宇
【 在 terminete (农村土豹子就是我) 的大作中提到: 】
: f0就是向量,它是要求的未知量的初值.
: 【 在 also (十三不靠胡对倒) 的大作中提到: 】
────────────────────────────────────────
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:6.309毫秒