利用mathcad进行规划求解

利用mathcad进行规划求解

ID:5364469

大小:156.94 KB

页数:7页

时间:2017-12-08

利用mathcad进行规划求解_第1页
利用mathcad进行规划求解_第2页
利用mathcad进行规划求解_第3页
利用mathcad进行规划求解_第4页
利用mathcad进行规划求解_第5页
资源描述:

《利用mathcad进行规划求解》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、利用Mathcad进行规划求解用Mathcad进行规划求解是非常方便的。首先进行如下预备工作。进入Mathcad的工作环境以后,沿着主菜单的“View→Toolbars→…”路径打开Matrix(矩阵)工具箱和Boolean(布尔代数工具箱),也许需要用到Calculator(计算器)工具箱。当然,也可以只打开Math(数学)工具箱,在必要时再从Math中点击相应的图标打开上述工具箱。例如,点击矩阵图标,可以打开矩阵工具箱;点击布尔图标,可以打开布尔符号工具箱(全部必要的工具箱参见图1)。图1规划求解需要用到的工具箱下面以几个例子

2、说明借助Mathcad进行规划求解的具体步骤。【例1】设有线性规划模型如下:Maxf(x)=600x+400x12⎧6x1+5x2≤50⎪⎪10x1+20x2≤140s.t.⎨x≤6⎪1⎪x≥0,x≥0⎩12显然,约束条件中的第三个式子x1≤6可以表作1*x1+0*x2≤6,从而有如下矩阵⎡65⎤⎡50⎤⎡600⎤⎡x1⎤⎢⎥⎢⎥c=⎢⎥,x=⎢⎥,A=⎢1020⎥,b=⎢140⎥⎣400⎦⎣x2⎦⎢⎣10⎥⎦⎢⎣6⎥⎦容易看到,上述模型表为矩阵形式便是:目标函数为T[]⎡x1⎤Maxf(x)=cx=600400⎢⎥x⎣2⎦约束条

3、件为1⎧⎡65⎤⎡50⎤⎪⎢⎥⎢⎥Ax=1020≤b=140⎪⎢⎥⎢⎥⎪s.t.⎨⎢⎣10⎥⎦⎢⎣6⎥⎦⎪⎪⎡x1⎤x=⎢⎥≥0⎪x⎩⎣2⎦只要明白上述表示方法,就可以利用Mathcad寻求最优解。第一步,定义目标函数对于本例,目标函数定义如下:fx():=600x+400x01注意:在默认的情况下,Mathcad的下标是从0起算的,因此变量的第一个序号应该表作0,然后依次为0,1,2,……。否则,将会显示出错信息(红色)而拒绝给出计算结果。第二步,定义约束条件的系数矩阵及其右边的向量系数矩阵A和约束向量b分别表作⎛65⎞⎛50⎞

4、⎜⎜A:=1020b:=140⎜⎜⎝10⎠,⎝6⎠具体操作方法是:输入A;输入分号“:”得到定义符号“:=”;接着点击Matrix工具箱中的矩阵符号,弹出InsertMatrix(插入矩阵)选项框,在Rows(行)后填3,Columns(列)后填2(图2),得到一个3行2列的矩阵(图2右边)。然后在图2右边所示的矩阵中注入相应的数字即可。其他的矩阵或向量都是这样插入的——不言而喻,在InsertMatrix中的Columns中输入1,便得到一个向量的表示。图2插入矩阵及其结果第三步,输入初始值,给定约束条件单纯形法求解的过程是迭代

5、,凡是涉及到迭代计算都要给出初始值。不妨设x0为0,x1为1,即有x:=0x:=10,1当然,预设x0=1,x1=2或者其他的数字也没有什么不妥。2给定约束条件需要用到命令given,定义如下:GivenAx⋅≤bx≥0given的第一个字母大、小写没有关系。第四步,求目标函数的最大时的未知数x1和x2的数值这要用到用到函数Maximize。输入Maximize(f,x),回车,立即得到结果:⎛6⎞Maximizefx(),=⎜⎝2.8⎠第五步,求最大目标值这时如果键入“f(x)=”,结果为400,而不是4720。原因是,系统将预

6、设的初始值代入目标函数了。解决的办法是:回过头来将初始值改为最优解,亦即将前面的x0=0,x1=1改为x:=6x:=2.801这时输入“f(x)=”之后,立即得到3fx()=4.72×10当然,也可以在第四步进行如下定义:z:=Maximizefx(),也就是说,用z表示x的最优解,输入“z=”后,立即得到⎛6⎞z=⎜⎝2.8⎠在第五步定义⎛600⎞Tc:=⎜gc:=z⎝400⎠TY矩阵转置的上标可以利用Math工具箱中的M添加,也可以借助Calculator中的x输入。完成以后,键入g=,立即得到g=(4.72×103)注意这里

7、的结果是以1元素矩阵的形式给出的。将约束向量b中的b1=50改为51,得到最优解⎛6⎞z=⎜⎝3⎠及相应的极值g=(4.8×103)不断增大b中的第一元素,当b1=56时,我们有⎛6⎞z=⎜⎝4⎠和g=(5.2×103)3此后再增加b1的数值,结果不变。下面将全部计算过程拷贝如下:1定义目标函数fx():=600x+400x012定义约束条件的系数矩阵及其右边向量⎛65⎞⎛50⎞⎜⎜A:=1020b:=140⎜⎜⎝10⎠⎝6⎠3输入初始值给定约束条件x:=0x:=101GivenAx⋅≤bx0≥4寻求极值解⎛6⎞z:=Maximi

8、zefx(),z=⎜⎝2.8⎠5计算最大值⎛600⎞T()3c:=⎜gc:=zg=4.72×10⎝400⎠当b1=60时的结果(与b1=56没有区别):1定义目标函数fx():=600x+400x012定义约束条件的系数矩阵及其右边向量⎛65⎞⎛6

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。