农场计划 数学建模

   

本文是对农场生产计划进行最优化建模,首先要求制订未来五年的生产计划,计划应贷款的金额、应卖的小母牛、以及用来种植粮食的土地,使成本降到最低。种粮食和甜菜均有利可图,种粮食平均盈利比种甜菜平均盈利大,故可以先满足粮食产量再考虑甜菜的产量。根据题目可设第四年不饲养刚出生的小奶牛,第五年不饲养小奶牛,假设各年龄段的牛损失都是均匀的,使得答案更接近理想值,把贷款算为支出部分,使用穷举法求解,先不考虑贷款及还款做出最优解,然后通过每年运营所需费用以及农场主之前所欠的金额计算出贷款金额,这样使模型更简单化,并建立了最优线性规划模型,计算得出的最优结论。

关键词:穷举法最优线性规划农场计划均匀

问题重述

英国某农场主有200英亩土地的农场,用来饲养奶牛。现要为五年制定生产计划。现在他有120头母牛,其中20头为不到2岁的幼牛,100头为产奶牛,但他手上已无现金,且欠别人帐20000英镑须尽早用利润归还。每头幼牛需用2/3英亩土地供养,每头奶牛需用1英亩。产奶牛平均每头每年生1.1头牛,其中一半为公牛,出生后不久即卖掉,平均每头卖30英镑;另一半为母牛,可以在生出后不久卖掉,平均每头40英镑,也可以留下饲养,养至2岁成为产奶牛。幼牛年损失5%;产奶牛年损失2%。产奶牛养到满12岁就要卖掉,平均每头卖120英镑。现有的20头幼牛中,0岁和1岁各10头;100头奶牛中,从2岁至11岁各有10头。应该卖掉的小牛都已卖掉。所有20头要饲养成奶牛。
      一头牛所产的奶提供年收入370英镑。现在最多只能养160头牛,超过此数每多养一头,每年要多花费90英镑。每头产奶牛每年消耗0.6吨粮食和0.7吨甜菜。粮食和甜菜可以由农场种植出来。每英亩产甜菜1.5吨。只有80英亩的土地适合于种粮食,且产量不同。按产量可分作4组:第一组20英亩,亩产1.1吨;第二组30英亩,亩产0.9吨;第三组20英亩,亩产0.8吨;第四组10英亩,亩产0.65吨。从市场购粮食每吨90英镑,卖粮食每吨75英镑;买甜菜每吨70英镑,卖甜菜每吨50英镑。养牛和种植所需劳动量为:每头牛每年10小时;每头产奶牛每年42小时;种一英亩粮食每年须4小时;种一英亩甜菜每年须14小时。
      其他费用:每头幼牛每年50英镑;产奶牛每头每年100英镑;种粮食每亩每年15英镑;种甜菜每亩每年10英镑;劳动费用现在每年为6000英镑,提供5500小时的劳动量。超过此数的劳动量每小时费用为1.80英镑。
      贷款年率10%,每年货币的收支之差不能为负值。此外,农场主不希望产奶牛的数目在五年末较现在减少超过50%,也不希望增加超过75%。
     应如何安排5年的生产,使收益最大?

问题分析
  农场养牛问题是一个农场生产计划最优化问题,农场投资最少收益为最大,要合理生产计划,减少不必要的成本。
1. 第四年不饲养刚出生的小奶牛,第五年不饲养小奶牛,全部饲养产奶牛盈利最大。
2.种粮食和甜菜均有利可图,种粮食平均盈利比种甜菜平均盈利大,顾可以先满足粮食产量再考虑甜菜的产量。  

每年粮食的产量为(吨):


3.第i年0岁的幼母牛要两后才成为产奶牛,即第i+2年成为产奶牛,所以第四、五年不能盈利出生的幼母牛全部卖,所以第四、五年出生的幼母牛全部卖:
4.使用穷举法求解,先不考虑贷款及还款做出最优解,然后通过每年运营所需费用以及贷款所需费用计算出贷款金额

5. 贷款问题
任何投资都是从5年期的贷款得到。贷款的年利率为10%,每年偿还本息总共的1/5,五年还清。此外,农场主不希望产奶牛的数目在五年末与现在相比减少超过50%,也不希望增加超过75%。

模型假设
1.除了幼牛年损失5%,产奶牛年损失2%,牛不会发生任何其他的损失。
2.出生不久卖掉的小牛不考虑其所消耗的一切费用。
3.出生不久卖掉的小牛不考虑在年损失内,(这样设是合理的,因时间太短,而幼牛年损失5%)
4.小牛均在年初出生
5.损失的牛均在年底损失。
6.幼牛损失各年龄和奶牛损失的各年龄是均匀的

符号说明
1.Xi(k)——第i年第k个年龄的母牛头数  

2. a————第i年拥有的0岁幼牛头数
3. M——————第i年的总支出
4. P——————第i年的总收入
5. S——————第i年用于种植粮食的土地面积
6. F——————第i年粮食的产量
7. H——————第i年用于生产甜菜的土地

8. N  ———1——5年的净利润

模型的建立与求解

第一年总收入:

产奶收入:

卖公幼崽收入:

卖母幼崽收入:

卖粮食收入:

卖甜菜收入:

卖老牛收入:

总收入:

第一年总支出:

买甜菜的:

买粮食的:

超过160头牛的花费:

幼崽每年的消耗:

产奶牛每年的消耗:

种粮食的的花费:

种甜菜的花费:

劳动费用:

还贷费用:

总支出: =

约束条件:

留下的幼牛崽头数:

面积:

消耗粮食:

消耗甜菜:

耗时:

牛的总头数限制:

产量的限制:

利用计算机得出第一年的最大净利润值为P1=53460英磅(计算程序看附录)

第二年总收入:

产奶收入:

卖公幼崽收入:

卖母幼崽收入:

卖粮食收入:

卖甜菜收入:

卖老牛收入:

总收入:

第二年总支出:

买甜菜的:

买粮食的:

超过160头牛的花费:

幼崽每年的消耗: 

产奶牛每年的消耗: 

种粮食的的花费:

种甜菜的花费:

劳动费用:

还贷费用:

总支出:

约束条件:

留下的幼牛崽头数: 

面积: 

消耗粮食: 

消耗甜菜: 

耗时: 

牛的总头数限制:

产量的限制:

 

第三年总收入:

产奶收入:

卖公幼崽收入:

卖母幼崽收入:

卖粮食收入:

卖甜菜收入:

卖老牛收入:

总收入:

第三年总支出:

买甜菜的:

买粮食的:

超过160头牛的花费:

幼崽每年的消耗:

产奶牛每年的消耗:

种粮食的的花费:

种甜菜的花费:

劳动费用:

还贷费:

总支出:

约束条件:

留下的幼牛崽头数:

面积: 

消耗粮食: 

消耗甜菜: 

耗时: 

牛的总头数限制:

产量的限制:

 

第四年的收入:

产奶收入:

卖公幼崽收入:

卖母幼崽收入:

卖粮食收入:

卖甜菜收入:

卖老牛收入:

总收入费用:

第四年总支出:

买甜菜的:

买粮食的:

超过160头牛的花费:

幼崽每年的消耗:

产奶牛每年的消耗:

种粮食的的花费:

种甜菜的花费:

劳动费用:

还贷费用:

总支出费用:

约束条件:

面积:

消耗粮食:

消耗甜菜:

耗时:

牛的总头数限制: 

产量的限制:

第五年收入:

产奶收入: 

卖公幼崽收入:

卖母幼崽收入:

卖粮食收入:

卖甜菜收入:

卖老牛收入:

总收入费用:

第五年总支出

买甜菜的: 

买粮食的:

超过160头牛的花费:

产奶牛每年的消耗:

种粮食的的花费:

种甜菜的花费:

劳动费用:

还贷费用:

总支出费用:

约束条件:

面积:

消耗粮食:

消耗甜菜:

耗时:

牛的总头数限制:

产量的限制:

1——5年的净利润:

模型的评价和推广

1.      本模型适用范围广,对其它一些生物资源的开发有着同等的可靠性

2.      模型未未进行市场调查,没有把市场对生产计划的影响考虑在内。

3.      以本模型理论为基础,适当改变模型中的一些参数,就能够更多的推广应用到多种经济问题中、工作计划其他养饲场等,从上面可知,计划工作和生产应从长远着想,这样才能使计划更优.

参考资料:

姜启源,谢金星,叶俊,数学模型(第三版),高等教育出版社,

赵可培,运筹学,上海财经大学出版社

吴祈宗,运筹学与最优化方法,机械工业出版社

附件:

  因为F1为S1的分段函数,所以,考虑S1分别为四个阶段的产量,用LINGO求解。

  当S1<=20英亩时:

  max=-90*x1+75*x2+50*x3+15*s1+10*h1+51050;

x1<=55;

0.7*x1+s1+h1<=86;

x2<=1.1*s1-60;

x3<=1.5*h1-70;

s1<=20;

   No feasible solution found.

   Total solver iterations:                             3

                       Variable           Value        Reduced Cost

                             X1        0.000000            149.5000

                             X2        0.000000           0.9000000E+11

                             X3        29.00000            0.000000

                             S1        20.00000            0.000000

                             H1        66.00000            0.000000

                            Row    Slack or Surplus      Dual Price

                              1        38.00000            1.000000

                              2        55.00000            0.000000

                              3        0.000000            85.00000

                              4       -38.00000           0.9000000E+11

                              5        0.000000            50.00000

当20<=S1<=30时:

 

max=-90*x1+75*x2+50*x3+15*s1+10*h1+51050;

x1<=55;

0.7*x1+s1+h1<=86;

x2-0.9*s1+56<=0;

x3<=1.5*h1-70;

s1<=50;

s1>=20;

No feasible solution found.

   Total solver iterations:                             3

                       Variable           Value        Reduced Cost

                             X1        0.000000           0.1134000E+12

                             X2        0.000000           0.1800000E+12

                             X3        0.000000           0.1080000E+12

                             S1        39.33333            0.000000

                             H1        46.66667            0.000000

                            Row    Slack or Surplus      Dual Price

                              1        41.20000            1.000000

                              2        55.00000            0.000000

                              3        0.000000           0.1620000E+12

                              4       -20.60000           0.1800000E+12

                              5        0.000000           0.1080000E+12

                              6        10.66667            0.000000

                              7        19.33333            0.000000

当50<=S1<=70时:

max=-90*x1+75*x2+50*x3+15*s1+10*h1+51050;

x1<=55;

0.7*x1+s1+h1<=86;

x2-0.8*s1+51<=0;

x3<=1.5*h1-70;

s1<=70;

s1>=50;

、   No feasible solution found.

   Total solver iterations:                             3

                       Variable           Value        Reduced Cost

                             X1        0.000000           0.9450000E+11

                             X2        0.000000           0.1687500E+12

                             X3        0.000000           0.9000000E+11

                             S1        63.75000            0.000000

                             H1        22.25000            0.000000

                            Row    Slack or Surplus      Dual Price

                              1        36.62500            1.000000

                              2        55.00000            0.000000

                              3        0.000000           0.1350000E+12

                              4        0.000000           0.1687500E+12

                              5       -36.62500           0.9000000E+11

                              6        6.250000            0.000000

                              7        13.75000            0.000000

当S1>=70时:

max=-90*x1+75*x2+50*x3+15*s1+10*h1+51050;

x1<=55;

0.7*x1+s1+h1<=86;

x2-0.65*s1+40.5<=0;

x3<=1.5*h1-70;

s1<=80;

s1>=70;

   No feasible solution found.

   Total solver iterations:                             2

                       Variable           Value        Reduced Cost

                             X1        0.000000           0.9450000E+11

                             X2        0.000000           0.6923077E+11

                             X3        0.000000           0.9000000E+11

                             S1        62.30769            0.000000

                             H1        23.69231            0.000000

                            Row    Slack or Surplus      Dual Price

                              1        42.15385            1.000000

                              2        55.00000            0.000000

                              3        0.000000           0.1350000E+12

                              4        0.000000           0.6923077E+11

                              5       -34.46154           0.9000000E+11

                              6        17.69231            0.000000

                              7       -7.692308          -0.9000000E+11

然后,通过matlab编程,分别带入各情况下的参数值:

function y=profit(x)%定义利润函数

a=[-90,75,50,15,10]';%系数矩阵

y=x*a+51050;%求利润

y

其系数矩阵分别为

[0.000000,0.000000,29.00000,20.00000,66.00000]

[0.000000,0.000000,0.000000,39.33333,46.66667]

[0.000000,0.000000,0.000000,39.33333,46.66667]

将其分别带入profit(x)利润函数,得出三种情况下的最佳利润分别为:

y =

       53460

y =

  5.2107e+004

y =

  5.2107e+004

相关推荐