请教一个关于fmincon最优化的问题
我最近做了一个最优化的程序,使用fmincon运行完成之后给出如下信息:
Optimization terminated: Magnitude of directional derivative in search
direction less than 2*options.TolFun and maximum constraint violation
is less than options.TolCon.
options=optimset('largescale','off');
=fmincon(@myfunmidu,x0,[],[],[],[],lb,ub,[],options)
exitflag =
5
我想请问下大家,是不是我的程序没有把问题解决,按我理解的exitflag =1,问题才有可能对
请大家帮忙,上述问题该如何去解决 谢谢大家了
特别是Optimization terminated: Magnitude of directional derivative in search
direction less than 2*options.TolFun and maximum constraint violation
is less than options.TolCon.
这个提示 我不知道怎么样去改善程序:handshake :@Q 我对函数内部深层次的东西也不懂。
但肯定是不是1最好,应该是越大效果越“好”一点,或者说没有绝对的好坏之分,只是由于满足了不同的条件,而优化终止。
比如
1 First order optimality conditions were satisfied to the specified tolerance
是说优化约束条件满足精度要求。
5 Magnitude of directional derivative was less than the specified tolerance and constraint violation was less than options.TolCon.
是说梯度大小满足要求,并且约束条件也满足要求。
有些术语不太清楚,不知道我认为的对不。
[ 本帖最后由 star198311 于 2007-12-13 19:54 编辑 ] directional derivative 记得这个一般译作 方差 应该是方向导数(梯度)吧?
方差应该是variance. 谢谢你们哈 呵呵
学习 学习再学习 我给你楼上的大哥发了一个消息
帮我看看那个问题 应该是方向导数才对
呵呵
明天我再到书店的新书上查查 (看看不买)
有了结果再发上来哈 原帖由 caizi2008 于 2007-12-13 21:58 发表 http://www.chinavib.com/forum/images/common/back.gif
谢谢你们哈 呵呵
学习 学习再学习 我给你楼上的大哥发了一个消息
帮我看看那个问题
“No active inequalities.”
意思是不等式式约束没有起到作用,也就是有没有它对优化结果没什么影响。
(个人理解,不一定对)
你可以把不等式去掉看看结果有没有变化。
[ 本帖最后由 star198311 于 2007-12-13 23:19 编辑 ] exitflag值对应的含义
1 一阶最优性条件满足容许范围
2 x的变化范围小于容许范围
3 目标函数的变化小于容许范围
4 重要搜索方向小于规定的容许范围容许范围并且约束违背小于options.TolCon
5 重要方向导数小于规定的容许范围容许范围并且约束违背小于options.TolCon
0 达到最大迭代次数或达到函数评价
-1 算法由输出函数终止
-2 无可行点
给大家提供一个邮箱里面有好东西在网络易盘里
wangmin770520@126.com
密码:770621
邮箱提供者MATLAB7.2优化设计实例指导教程 编者
页:
[1]