当前位置:文档之家› 优化设计数学建模

优化设计数学建模

一、问题重述
1、利用优化设计相关理论计算法,对某设计问题做优化设计。

要求如下:
①列出优化数学模型;
②选择所用优化算法;
③画出程序框图;
④程序编写;
⑤程序调试运算结果。

现根据以上条件,结合生活实际,准备以铁板为材料设计一鱼缸,为了能使鱼儿有更大的生存空间,要求鱼缸容积最大。

现有边长为5米长的方形铁板,预备在四个角减去四个相等的方形面积,用以制成方形鱼缸,如何减能使鱼缸的容积最大。

二、问题分析
2.1、对于此问题,我采用的数学模型包括三部分,即设计变量、目标函数和约束条件。

模型如下:
其中,设裁去铁块的边长为:x(0<x<2.5)
则鱼缸的容积可表示成函数:y=-x*(5-2*x)^2上述问题则可以描述为:
求变量:x
使函数:min y=-x*(5-2*x)^2(前加有”负”号,,故所求最大容积为最小y值)...........................................................................(1*)
约束条件:0<x<2.5(保证能够做成鱼缸)
2.2、本模型采用无约束优化数学模型,运用一位搜索中的0.618法进行最优值求解,通过Visio软件制作流程图,结合MATLAB软件进行编程(因C语言编程多次调试没能成功),plot函数进行绘图分析,最终成功的调试得出运算结果。

三、程序框图
四、程序编写及函数图像
4.1求极值所用程序如下:
function q=line_s(a,b)
N=10000;r=0.01;
a=0;b=1.5;
for k=1:N;
v=a+0.382*(b-a);
u=a+0.618*(b-a);
fv=-25*v+20*v^2-4*v^3;
fu=-25*u+20*u^2-4*u^3;
if fv>fu
if b-v<=r
u
fu
break;
else
a=v;v=u;
u=a+0.618*(b-a);
end
else
if u-a<=r
v
-fv
break;
else
b=u;u=v;
v=a+0.382*(b-a);
end
k=k+1
end
end
4.2 函数曲线图程序如下:
如下曲线所得y值为负,前面(1*)已作解释。

x=0:0.1:2.5;
y=-25*x+20*x.^2-4*x.^3;
plot(x,y);
五、程序调试运行结果
5.1 如图所示:
当k执行5或7或10或12次时,均有x=0.8329时,有最大y=9.2593(函数中已做处理,变负为正,可以对照曲线图)。

如下曲线所得y值为负,前面(1*)已作解释。

相关主题