降落伞的优化选择模型
摘要
本文对降落伞的选购问
建立了一个优化模型,对所给数据采用计算机描点作图进行数据拟合,得出载重为300kg,半径为3米的降落伞从500米高空下降时的运动曲线,发现降落伞趋于做匀速直线运动.当降落伞作匀速直线运动时,由mg=f=kvs求出空气阻力系数
,落地速度为.再通过隔离载重物体并进行受力分析,求出降落伞绳索长度
,进而算出每种半径的降落伞的绳索费.最后根据每种降落伞的总成本.
关系把问题转化为整数线性规划问题,用LINGO解n1=n2=n4=n5=n6=0,n3=6 ,即要购买半径 r=3的降落伞数量为6把时总费用最少, 其他半径的降落伞都不需购买,总费用为C=4932元
一
半径
2m
2.5m
3m
3.5m
4m
购买数量
0
0
6
0
0
总额
4932
关键词: 数据拟合;运动曲线;阻力系数;整数线性规划
1. 问题的提出:
为向灾区空投救灾物资共2000kg,需选购一些降落伞。已知空投高度为500m,要求降落伞落地时的速度不能超过20m/s。降落伞面为半径r的半球面,用每根长l共16根绳索连接着载重m,示意图如图1。
图1
每个降落伞的价格由3部分组成。伞面价格由半径r决定(见表1);绳索每米为4元,其他费用200元。
降落伞在降落过程中受到空气的阻力,可以认为与降落伞速度和伞面积的乘积成正比.为了确定阻力的大小,用半径3m、载重300kg的降落伞从500m高度作降落试验,测得各时刻的高度(表2)。
试确定降落伞的选购方案,即共需多少个,每个伞的半径多大(在表1中选择),在满足空投要求的条件下,使费用最低。
表二
半径r/m
2
2.5
3
3.5
4
费用/元
65
170
350
660
1000
表三
t/s
0
3
6
9
12
15
18
21
24
27
30
x/m
500
470
425
372
317
264
215
160
108
55
1
2. 模型的基本假设
1 降落伞下降过程中只受重力及空气阻力的作用,其他因素以阻力系数K代替
2 降落伞的质量和绳索质量忽略;
3 每个降落伞载的物重都不会超过降落过程中的最大载重;
4 阻力系数
是常数
5 降落伞的落地速度不会超过20m/s;
6 救灾物资2000kg可以任意分配;
7 假设空投物资的瞬时伞已打开.
3. 符号的约定
阻力系数
伞半径
空气阻力
半径为
的降落伞的最大载重
半径为
的降落伞的伞面面积
时刻降落伞的下降高度
时刻降落伞的下降速度
购买半径为
的降落伞数目
伞面费
绳索费
固定费用
降落伞每根绳索的长度
重力加速度,
表示第i种伞的个数,i=1,2,3,4,5
4. 模型的建立与求解
4.1 阻力系数
的确定
降落伞下降时对降落伞进行受力分析有
,由于开始时不同时刻的加速度是不同的,即
,设初始时
,所以由上式有
即
解上述微分方程,过程见附录一, 解得
则从开始时刻到
时刻降落伞下降的高度
又当
降落伞从
高空下降时其运动轨迹可由计算机模拟出来,采用MATLAB的数据拟合函数并画图如下:
该程序见附录二
可得到其运动曲线如图所示
图(1)
可以发现降落伞在后期的运动曲线几乎是线性的,所以可以把降落伞后期的运动看成是匀速直线运动.对降落伞进行受力分析,有
EMBED Equation.3 ,而
其中
为降落伞的伞面面积.
取
,估算出
由
把
代入上式,
可以用MATLAB作出速度与时间的图象,
如下图:
图(2)
可以发现降落伞
以后速度几乎不变,这说明降落伞后期是作匀速直线运动的,所以降落伞后期匀速运动的速度可以这样确定:
9秒以后的数据用最小二乘法进行线性拟合,设
,其中
符合正态分布,采用Matlab的polyfit函数
程序见附录三,
因为降落伞为半球面,所以
由此解得
4.2 降落伞载重的确定
因为在高度一定时,物体在下落过程所用时间是不变的,因此可以把
关系式中的
看作一个定值,所以:
由
式可得
的函数
因为降落伞落地时,
, 即
降落伞的最大载重当且仅当
达到最大,即
时取得,由此我们可以证明如下命题:
是关于
的增函数.
证明: 见附录四;
反之
关于
的函数
也是增函数.
令
EMBED Equation.3 则
式变为
把
,
,
EMBED Equation.3 ,
EMBED Equation.3 ,
代入上式可以解得满足空投条件下的各种半径的降落伞的最大载重:
运算程序见附录五;
4.3 半径为
EMBED Equation.3 时降落伞的绳索费
因为载重
位于球心正下方球面处,所以载重到球心的距离等于降落伞球面的半径,由几何关系得到
EMBED Equation.3 ,其示意图如右图
解得半径为
的长度分别为
求得绳索费如下表:
2
2.5
3
3.5
4
2.83
3.53
4.24
4.95
5.66
180.12
225.92
271.36
316.80
362.24
则购买每把不同半径的降落伞的各需总费用C如下:
2
2.5
3
3.5
4
65
170
350
660
1000
180.12
225.92
271.36
316.80
362.24
200
200
200
200
200
446.1
595.9
821.4
1176.8
1562.2
447
596
822
1177
1563
4.4 确定降落伞的选购方案
要使总费用最小,则要取每种半径的总成本最小,则用LINGO可计算得:
5. 模型结果的说明
由上用LINGO解得
即要购买降落伞的方案为:
半径
2m
2.5m
3m
3.5m
4m
购买数量
0
0
6
0
0
总额
4932
6. 模型的检验与推广
1. 本模型在求阻力时,按题意简化其模型,即f=ksv^2简化为f=kvs在实际中运用中可能会有误差。但其模型简洁,合理,易于计算
2. 本模型对降落伞的运动作简化,即在后期,把降落伞的运动看作为匀速直线运动,则其运动方程为一次线形函数,对其求导,即可求得运动速度.从而可知运动速度与空投高度,运动时间无关.所以只要满足空投条件就可以降低空投高度,以减少空投难度.
3. 当降落伞的半径仍为2m,2.5m,3m,3.5m,4m 五种时,其它条件不变,现在救灾物资很多,超过
,要求确定选购方案,则只需将(6)式的第二个不等式右端改为其它数据,如7000,8000等,就可求出相应的选购方案及总费用.
7. 参考文献
[1]
模型.姜启源.北京:高等教育出版社,2008
[2] MATLAB7.0
数学应用.求是 北京:人民邮电出版社,2007
[3] 数值分析与实验.薛翼.北京:北京工业大学出版社,2007
附 录
附录一
>> clear
>> v=dsolve('m*Dv+k*s*v-m*g=0','v(0)=0','t')
v =
g/k/s*m-exp(-k*s/m*t)*g/k/s*m
>> pretty(v)
k s t
exp(- ------------) g m
g m m
--- - -----------------------------
k s k s
>>
附录二
表一程序:
>> x=[0 3 6 9 12 15 18 21 24 27 30];
>> y=[500 470 425 372 317 264 215 160 108 55 1];
>> plot(x,y)
表二程序:
>> m=300;
>> g=9.8;
>> k=2.9;
>> v=17;
>> s=2*9*pi;
>> x=[0 3 6 9 12 15 18 21 24 27 30];
>> V=m*g/(k*s)-m*g/(k*s)*exp(-k*s*x/m);
>> plot(x,V)
附录三
>> clear
>> X=(9:3:30);
>> H=[128 183 236 285 340 392 445 499];
>> P=polyfit(X,H,1)
P =
17.5794 -29.2976
附录四
命题:
是关于
的增函数.
证明: 因为
为严格单调减函数
又因为
EMBED Equation.3
由单调性的判别法,
为
的严格增函数
所以命题成立
附录五
在matlab中建立一个名位myfun的m文件,如下:
function F=myfun(x)
r=2.5;
g=9.8;k=2.9458;
s=2*pi*r^2;
F=[x(1)^2*g/(k^2*s^2)*exp(-k*s*x(2)/x(1))+x(1)*g*x(2)/(k*s)-x(1)^2*g/(k^2*s^2)-500;
g*x(1)/(k*s)-g*x(1)/(k*s)*exp(-k*s*x(2)/x(1))-20];
在matlab的commend window中输入以下命令:
>> clear
>> x0=[1;1];
>> options=optimset('Display','iter');
>> x=fsolve(@myfun,x0,options)
附录六
min =447*n1+596*n2+822*n3+1177*n4+1563*n5;
151*n1+237*n2+341*n3+464*n4+607*n5>2000;
n1>=0;
n2>=0;
n3>=0;
n4>=0;
n5>=0;
@gin(n1);
@gin(n2);
@gin(n3);
@gin(n4);
@gin(n5);
运行结果:
Global optimal solution found at iteration: 43
Objective value: 4932.000
Variable Value Reduced Cost
N1 0.000000 447.0000
N2 0.000000 596.0000
N3 6.000000 822.0000
N4 0.000000 1177.000
N5 0.000000 1563.000
Row Slack or Surplus Dual Price
1 4932.000 -1.000000
2 46.00000 0.000000
3 0.000000 0.000000
4 0.000000 0.000000
5 6.000000 0.000000
6 0.000000 0.000000
7 0.000000 0.000000
M�
�
� EMBED Equation.3 ���� EMBED Equation.3 ���
_1123415390.unknown
_1124373078.unknown
_1344431023.unknown
_1344443941.unknown
_1344446647.unknown
_1344491682.unknown
_1344491716.unknown
_1344491734.unknown
_1344491657.unknown
_1344445017.unknown
_1344432988.unknown
_1344433098.unknown
_1344431605.unknown
_1344431651.unknown
_1344431674.unknown
_1344431638.unknown
_1344431057.unknown
_1124459542.unknown
_1124459642.unknown
_1124459736.unknown
_1124459913.unknown
_1344424193.unknown
_1344430944.unknown
_1124459951.unknown
_1124459698.unknown
_1124459566.unknown
_1124459355.unknown
_1124459423.unknown
_1124459394.unknown
_1124459240.unknown
_1124459305.unknown
_1124373112.unknown
_1124453946.unknown
_1124369716.unknown
_1124370993.unknown
_1124371038.unknown
_1124371489.unknown
_1124372084.unknown
_1124372091.unknown
_1124372023.unknown
_1124372075.unknown
_1124371527.unknown
_1124371328.unknown
_1124371012.unknown
_1124371029.unknown
_1124371005.unknown
_1124370951.unknown
_1124370982.unknown
_1124369977.unknown
_1124370290.unknown
_1124368931.unknown
_1124369203.unknown
_1124369680.unknown
_1124369188.unknown
_1123847561.unknown
_1123847834.unknown
_1123848164.unknown
_1123847732.unknown
_1123515927.unknown
_1123781888.unknown
_1123515526.unknown
_1123420542.unknown
_1123333960.unknown
_1123401575.unknown
_1123407724.unknown
_1123410641.unknown
_1123410680.unknown
_1123410728.unknown
_1123410743.unknown
_1123413679.unknown
_1123410706.unknown
_1123410653.unknown
_1123410270.unknown
_1123410313.unknown
_1123409101.unknown
_1123410214.unknown
_1123401827.unknown
_1123402434.unknown
_1123402448.unknown
_1123402353.unknown
_1123401807.unknown
_1123401815.unknown
_1123401715.unknown
_1123335068.unknown
_1123399510.unknown
_1123400875.unknown
_1123401544.unknown
_1123400705.unknown
_1123335639.unknown
_1123399422.unknown
_1123335612.unknown
_1123334174.unknown
_1123334219.unknown
_1123334299.unknown
_1123334187.unknown
_1123334047.unknown
_1123334104.unknown
_1123334009.unknown
_1123333657.unknown
_1123333774.unknown
_1123333809.unknown
_1123333844.unknown
_1123333794.unknown
_1123333733.unknown
_1123333758.unknown
_1123333712.unknown
_1123333555.unknown
_1123333602.unknown
_1123333622.unknown
_1123333585.unknown
_1123333466.unknown
_1123333540.unknown
_1123333442.unknown