找回密码
 注册
Simdroid-非首页
查看: 483|回复: 10

[原创]matlab r2006b中的optimtool的用法初探

[复制链接]
发表于 2006-10-14 22:41:45 | 显示全部楼层 |阅读模式 来自 新加坡
(响应bainhome版主的号召,试用了一下optimtool,下面是个简单介绍,希望能起到抛砖引玉的作用)

matlab r2006b中优化工具箱提供了一个新的GUI工具,叫做optimtool,它提供了优化工具箱中几种常用算法的图形界面前端,通过使用这个工具,用户可以以交互的方式定义优化目标函数、约束条件、求解初值、以及算法相关的一些参数,然后进行优化求解。下面以一个简单的例子,示范说明其用法。

首先运行optimtool,在matlab的命令行执行命令“optimtool”即可启动该工具。界面如图所示:

[ 本帖最后由 taohe 于 2006-10-14 22:44 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

1

查看全部评分

 楼主| 发表于 2006-10-14 22:52:54 | 显示全部楼层 来自 新加坡
Simdroid开发平台
下面以函数fmincon所带的简单优化问题为例来说明如何试用optimtool。为方便讨论,先重复一下问题本身。

优化目标函数:

  1. function f = myfun01(x,a1)
  2. f = x(1)^2 + a1*x(2)^2;
复制代码

其中a1为参数。

非线性约束条件为

  1. function [c,ceq] = mycon01(x,a2)
  2. c = a2/x(1) - x(2);
  3. ceq = [];
复制代码

其中a2同样为可变参数。

初值为[1;2]。在下面的求解示例中,假设a1=2, a2 = 1.5。

大家可能注意到了,上面的两个函数名和matlab在线文档中给出的不相同。主要原因是为了在多次练习中区分不同的函数。

好了,现在把上面两个函数分别保存为myfun01.m和mycon01.m文件。

[ 本帖最后由 taohe 于 2006-10-14 23:08 编辑 ]

评分

1

查看全部评分

 楼主| 发表于 2006-10-14 22:54:25 | 显示全部楼层 来自 新加坡
试用optimtool的第一步就是选择合适的求解器。在这个例子里,我们就选用缺省的fmincon,如图所示:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

1

查看全部评分

 楼主| 发表于 2006-10-14 22:57:25 | 显示全部楼层 来自 新加坡
接下来,就是针对问题本身,选择求解器所提供的适用算法。在这个例子里,我们选择medium-scale算法:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

1

查看全部评分

 楼主| 发表于 2006-10-14 23:00:20 | 显示全部楼层 来自 新加坡
接下来告诉optimtool,我们将要求解的问题,请注意这里关于目标函数的输入方式,我们使用了匿名函数,主要原因是因为我们的目标函数myfun01其定义中包含可变参数a1:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 发表于 2006-10-14 23:02:35 | 显示全部楼层 来自 新加坡
接下来则是各种约束条件,在这个例子里,我们只用非线性约束条件,同样请注意其输入形式:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 发表于 2006-10-14 23:04:33 | 显示全部楼层 来自 新加坡
至此,对于这个简单的例子,我们已经提供了足够的信息,接下来,我们就可以开始求解了。也就是说可以点击那个“Start”按钮了:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 发表于 2006-10-14 23:06:09 | 显示全部楼层 来自 新加坡
计算结果如下图。先贴到这里。欢迎大家讨论!谢谢!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2006-10-14 23:46:27 | 显示全部楼层 来自 新疆乌鲁木齐
谢谢taohe兄的捧场,帖子图文并茂,非常适合于新手进行学习,已经加精。
在版本7.3中出现了多个新的特征,越来越GUI了,有这么多的新特征,十分希望大家都来探讨,写自己的一些心得!
发表于 2006-10-15 10:59:23 | 显示全部楼层 来自 江苏无锡
学习中,感觉优化流程 和 iSIGHT 差不多。

但是界面和操作比 iSIGHT 容易 。
发表于 2006-11-3 14:28:06 | 显示全部楼层 来自 江苏无锡
原帖由 bainhome 于 2006/10/14 23:46 发表
谢谢taohe兄的捧场,帖子图文并茂,非常适合于新手进行学习,已经加精。
在版本7.3中出现了多个新的特征,越来越GUI了,有这么多的新特征,十分希望大家都来探讨,写自己的一些心得!


本主题由 bainhome 于 2006/11/2 20:18 提升  

哎..... bainhome 提升 咋的玩 ? 出个教程 !
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-4-20 07:33 , Processed in 0.064804 second(s), 20 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表