全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
15955 8
2011-09-20

在用fmincon函数做金融方面的优化的时候(通过最小化跟踪误差,求解最优权重),先采用默认的算法,也就是 'trust-region-reflective' 算法,但出现warning:说该算法不能解决该问题(但是有解),建议用 active-set  ,也可以尝试使用 interior-point 等等。但是我改用active-set算法后明显出现了很多边界解,效果还不如interior-point算法和默认算法。不知道这几种算法究竟怎么用呢?


因为对这几种算法的内在理论基础完全不懂。希望有大牛不吝赐教!越详细越好。

感激不尽!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2011-9-20 13:17:57
抱歉。自己找出问题所在了。默认算法确实不行。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-9-20 13:44:57
可以分享地详细点。算个人原创,加分!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-9-24 13:33:07
     抱歉今天才上来慢慢写点。发现论坛的版块下载资源的帖子更多一些了,原创的则不多见了。
      言归正传,matlab的优化器有很多参数可以设置。包括算法、显示情况、精度大小等等。(详见doc optimset或者doc fmincon 等)我遇到的多是求解二次规划问题。有时候算法选的不合适,就会出现warning(以fmincon函数为例。对非专业人士,有些警告其实看不大懂)。判断算法是否正确的一个简单方法是,看警告中fmincon is completed because......还是fmincon stopped because......(前者的解是可行的,后者则不行)。出现这种情况,最笨的办法,就是把matlab包含的四种算法都试一下,总会找到合适的算法的。
     其他参数的设置本人暂时没遇到大的问题。
     另外,因为自己懒的化简,才采用了fmincon函数来解二次规划问题。发现这个优化起来比quadprog慢很多。所以,建议尽量用quadprog解决问题,这个的参数设置也详细见help吧!
    初学者愚见。还请版主指教。呵呵。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-9-24 19:16:57
优化问题还是用1stOpt方便快捷。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-9-26 10:58:54
Grace-wang 发表于 2011-9-24 13:33
抱歉今天才上来慢慢写点。发现论坛的版块下载资源的帖子更多一些了,原创的则不多见了。
      言归正 ...
这个确实没办法
matlab的优化方法都是通用性的 对二次规划问题用fimincon确实会有这方面的问题 用二次规划专门的算法quadprog会好一些
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群