Matlab 的优化工具箱

作者: , 共 585 字

最近做了些东西,用到了 Matlab 的优化工具箱, optimization toolbox。因为以前没用过这东西,今天把这个工具箱的帮助文档基本上翻了一遍。

这个工具箱的确非常之强大,如它所说,所有的优化问题都能解,包括自定义的目标函数,甚至自定义的限制条件。最后解出来是什么样子就不确定了。

以下是 Matlab 推荐的各种优化问题对应的 Solver。

**限制条件** **优化目标**
**线性** **二次(正定)** **自定义函数** **不光滑**
quadprog fminsearch fminunc fminsearch \*
线性 linprog quadprog fmincon fseminf \*
自定义函数 fmincon fmincon fmincon fseminf \*
整数 bintprog

Matlab 的帮助文档里用了很小一个片段说明了,以上所有的规划问题,都只是寻找局部解。不过如果优化函数是凸函数,那么局部最优(最小)解就是全局最优解。而线性、二次函数都是凸的,所以对线性和二次目标函数而言找的都是全局最优解。

Q. E. D.

类似文章:
投资 » 投行笔记
以下总结仅限于 2010 年 12 月 31 日以前的法规,如有更新,请自行勘误。
相似度: 0.279
BASEL 的框架要求所有使用内部模型法计量市场风险必须要进行回溯测试。回溯测试可以:
相似度: 0.255
投资 » 债券学院, 基点
我在前面债券的敏感性里简单介绍过债券的 DV01 ,即俗称的基点价值。那篇文章还不够完整,我这里再补充一下。
编程 » SQL
现在 Access 用的人应该不多了,本来我以为我也不可能用这玩意儿,但最近在用 VBA 通过 SQL 处理数据时,发现它的语法是 Access 的语法。平时对 SQL Server 语法相对熟悉一些。下文总结了 Access 和 SQL Server 语法的差异。
美式期权是指可以在期权到期之前任何一个时点行权的期权,欧式期权则只能在期权到期日行权。从这个角度上看,美式期权的价值不低于同样条款(指同样标的、到期日和行权价)的欧式期权。
该文为学习总结笔记。逐步完善中。
1970 年,年仅 22 岁的 Yasuo Hamanaka (滨中泰男)加盟日本 Sumitomo 公司(住友商社),后来成为有色金属的首席交易员。从 1986 年他开始征战 LME (伦敦金属交易所)的金属铜。因为长期占据全球铜交易量的 5%,江湖人称之 Mr. 5%和 Mr. Copper ,又因为他姓 Hamanaka 且投资风格极其坚强,欧美同行称其 Mr. Hammer ,「锤子先生」。
最近看了几个风险管理和组合管理系统,有几个系统里附带了组合优化模块,也了解到这一方面工业界的最新成果。最新的组合优化模块被称为第二代最优化模型,主要成果就是二阶锥优化算法的应用,其中一个重要的改进为对 alpha 估计的不准确性考虑在内。
最近做一些优化问题,找到了 YALMIP 工具包。在其帮助文件里看到如何使用该工具包求解 sudoku,整个思路是将问题转化为整数规划问题。这样的思路以前也想到过,但总觉得整数规划问题的求解会更复杂。但是下面的 Matlab 代码,显示它可以非常简洁,思路见程序的注释(程序运行需要安装 YALMIP 工具包):
最近做社会实践项目遇到的一个问题,需要动态修改一个表格。本来以为要想修改一行,直接设置新的 tr.innerHTML 即可。后来发现在 Firefox 下可行,但在 IE 下通不过,查看了一下帮助,才发现 innerHTML 还没有一个通用标准,而在 IE 下innerHTML对于标签为 COL, COLGROUP, FRAMESET, HTML, STYLE, TABLE, TBODY, TFOOT, THEAD, TITLE, TR 的元素是只读的。要想在 IE 下动态修改表格,只能使用 insertRow 和 insertCell;
本文结论:不要过度担心 Matlab 的传值调用的效率问题。
上次大规模使用 Matlab 还是本科的时候,当时还是 5.3 版,现在重新尝试它,已经是 7.8 ( R2009a ),而且 R2010b 版都已经发售。而这些版本引入的一个新玩意儿便是面向对象化编程( object-oriented programming , OOP )。