应该很简单的问题,可新手我不会
[table=98%][tr][td][size=14px]maximum f(x1,x2,x3)s.t. g(x1,x2)=0
现在需得出x1―fmax(注:fmax是与每一个x1对应的上述函数的最大值)曲线。
[/size]
[size=14px]在我这个问题中,估出初始值有一定的难度。我想用1stOpt软件解决这个问题,不知哪位师兄可以给我一些指点,最好是能给出一个示例程序。写程序时,上面的函数随便编两个就行了。
谢谢谢谢了!急等。或者发到我的信箱里也行,我的信箱是[email=wjh027@gmail.com]wjh027@gmail.com[/email]。
[/size]
[size=14px]问题的关键是:[/size]
[size=14px]一、每一次的优化结果如果需要在后面的程序中使用,应该如何引用?[/size]
[size=14px]二、我始终不懂1stOpt中参数(Parameter)和变量(Variable)之间有什么区别。[/size]
[size=14px]三、我编的甚至是拷的别人的程序,在我的1stOpt怎么都运行不出来结果?我用的版本是1.5Pro版,网上下载的,显示是“注册版”。
[/size][/td][/tr][/table]
[[i] 本帖最后由 20wangz 于 2008-5-16 01:49 编辑 [/i]] 1:每一次的优化结果如果需要在后面的程序中使用,应该如何引用?
用一个关键字:LoopConstant,例:
LoopConstant b=[1,x];
Parameter x[0,pi];
MinFunction x*sin(x)+x;
两次循环计算,第一次b取1,第二次取第一次求得的x值,即0
2:我始终不懂1stOpt中参数(Parameter)和变量(Variable)之间有什么区别。
Variable指变量,数据已知,主要用于拟和等;Parameter是待求的参数。
3:我编的甚至是拷的别人的程序,在我的1stOpt怎么都运行不出来结果?我用的版本是1.5Pro版,网上下载的,显示是“注册版”。
那个版本已经丢失了很多功能,也老了点。
回复 2# 的帖子
经单位领导批准,我已经联系了七维高科公司,马上就要购置一套单机企业版1stOpt2.5软件。非常感谢shamohu(沙漠虎?我就是来自沙漠里的一个单位哦,呵呵……)及时、细致的回答。
但我脑袋有点不够用,还不能完全理解shamohu对第一个问题的回答,能再详细些好吗?最好是通过一个例子。
比如:
max y=a*sin(x1)+(a-1)cos(x2)+3
s.t. x1^2-2*x1*x2-3*x1*x2=0
现在a取一个序列,比如2:0.1:5。每当a取一个值时,就会得到一个ymax,最终ymax也是一个相应的序列。我想得到这两个序列(或者说是一维矢量)在平面坐标系中的对应曲线。
您提抽点时间写出一个例程吗?感激之至!当然,这个程序很可能得不出什么结果,因为几个函数我都是随便一写的,可能不存在什么极值。但我相信如果您如果能提供例程,我差不多应该是能看懂的。
再次感谢! LoopConstant a=[2:0.1:5];
PlotLoopData a, ObjFunction;
MaxFunction a*sin(x1)+(a-1)*cos(x2)+3;
x1^2-2*x1*x2-3*x1*x2=0;
回复 4# 的帖子
再次感谢shamohu的回答!等软件一到,我一定试一试。有什么结果,到时候再给师兄通报。
谢谢!
回复 4# 的帖子
师兄:我已经买到了2.5企业版。
试着运行了一下师兄的代码,怎么画出来的是循环次数分别与a和最佳值关系的两条曲线啊?我要的是平面坐标上以a为横坐标,以每次得到的相应的最佳值为纵坐标的a-ymax曲线啊。
请师兄再次指点。请给出代码。 再有,在以前我用的1.5绿色版中还有输出关键字前面几个字母然后按ctrl+K来加速输入关键字的功能,怎么在2.5企业版中反而没有了,取而代之的是列出所有的关键字,然后让你从头到尾去自己找,好麻烦啊。是不是现在换快捷键了?
另外,1stOpt怎么没有语法提示也没有个象样的手册啊?本来可能很简单的问题自己都很难解决。唉! 两种方法:
1:
LoopConstant a=[2:0.1:5];
PlotLoopData a[x], ObjFunction;
MaxFunction a*sin(x1)+(a-1)*cos(x2)+3;
x1^2-2*x1*x2-3*x1*x2=0;
上面的a[x],意即令a为横坐标。另外类似的命令:a[y1]:a为左边纵轴;a[y2]:a为右边纵轴;
2:计算完成后,在结果文本点击右键,从弹出菜单中选“获得数据”,可以在电子表格中得到整理好的数据,然后可根据自己的需要画图。
快捷健很好用啊!比如要选MinFunction关键字,在代码本中按“Ctrl + k”,再按字母“m”,再按字母“i”,即可选中MinFunction(不用从头到尾去找)。 :L
[quote]原帖由 [i]20wangz[/i] 于 2008-5-23 00:26 发表 [url=http://www.simwe.com/forum/redirect.php?goto=findpost&pid=1339945&ptid=832346][img]http://www.simwe.com/forum/images/common/back.gif[/img][/url]
另外,1stOpt怎么没有语法提示也没有个象样的手册啊?本来可能很简单的问题自己都很难解决。唉![/quote] 谢谢谢谢!终于解决了。
再请教一下,版主是怎么知道这些命令的?让我们也学习一下?
[[i] 本帖最后由 20wangz 于 2008-5-23 13:45 编辑 [/i]]
页:
[1]