目录
关于生猪养殖场经营管理的研究 1
【摘 要】 1
1.1 问题背景 4
1.问题重述 4
1.2 问题提出 4
2 问题分析 5
3 问题假设 5
4 符号说明 6
5 问题求解 6
5.1 求解母猪年均产仔量以达到或超过盈亏平衡点(问题一) 6
5.1.1 数据准备 6
j 1 7
5.1.2 利用盈亏平衡分析法确定产仔量 7
1.求解养殖总成本 7
2.求解总收入 8
3.根据盈亏平衡点求解产仔量 8
i 1,2 9
5.1.3 结果分析 9
5.1.4 相关建议 10
5.2 求解小猪选为种猪的比例和母猪的存栏数(问题二) 11
5.2.1 数据准备 11
1.种猪淘汰率 11
2.公母种猪比例 11
5.2.2 求解比例和存栏数1.模型准备 11
(1)养殖场最大养殖规模约束 10
(2)小猪数量约束约束 10
(3)公猪母猪比例约束 10
10
24 10
224 10
5.3 确定最佳经营策略,计算年均利润(问题三) 11
5.3.1 拟合饲料价格与销售价格关系 12
1.建立函数关系 12
2.利用最小二乘法拟合 13
5.3.2 确定未来三年饲料价格 14
1.数据准备 15
2.模型准备 15
3.模型建立 17
4.模型求解 17
5.结果分析 18
5.3.4 求解母猪数量及肉猪存栏数 18
1.模型准备 18
2.模型建立 19
0.9823847913023 20
310 20
20
3.模型求解 20
4.绘制母猪及肉猪存栏数曲线 20
6 模型评价与推广 20
3.结合不同种实际情况,使所建立的模型更加科学、合理。 20
2.模型推广 20
7 参考文献 20
8 附录 21
8.1 Lingo 程序 21
8.1.1 问题二 21
8.1.2 问题三第一步: 21
8.2 附表 22
2问题分析
根据题目要求,该养殖场的最大养殖规模为 10000 头猪,并且用自己的种猪进行繁育配种。我们需要查阅相关资料,根据查阅到的数据对问题进行求解。
在第一问中,要求解该养殖场达到或超过盈亏平衡点时每头母猪的年均产仔量。通过分析题目,首先,我们对解题过程中可能会用到的相关数据进行了准备,包括根据题目要求确定养殖周期,搜集有关当前形势下种猪生猪的饲养费用,生猪的销售价格和公种猪、母种猪的配种比例等数据。其次对该养殖场的总支出和总收入分别进行计算并利用盈亏平衡分析法求解盈亏平衡点,再根据盈亏平衡点确定该养殖场每头母猪的年均产仔量。考虑到实际情况,由于我们搜集的是当前(2014 年)猪市行情下的数据,因此我们认为在解题过程中可能会存在没有盈亏平衡点的现象,即养殖厂一直处于亏损状态。因此我们分别对这两种情况进行分析,若存在平衡点,则根据平衡点求解母猪的年均产仔量;若不存在盈亏平衡点,再对前两年的市场行情进行调查,根据前两年的相关数据对盈亏平衡点进行计算,最终求解母猪的年均产仔量。最后,根据市场行情对生猪养殖行业提出一些合理性的建议。
在第二问中,题目规定每头母猪每年可以产两胎,每胎可以成活 9 只小猪,求使得该养殖场养殖规模达到饱和时,小猪选为种猪的比例和母猪的存栏数。首先我们通过查阅相关资料得知,种猪每年都有淘汰率,因此我们首先确定了种猪的淘汰率,并沿用了问题一中的两种配种方式下公母种猪的数量比例。其次我们以该养殖场猪的数量最大为目标,并根据题目要求建立约束条件,利用lingo 软件对问题进行求解便可得到两种配种方式下公母种猪数量和后备种猪数量以及小猪选为种猪的比例和母猪的存栏数等数据。
在第三问中,结合题目所给的三年内的生猪价格预测曲线,通过考虑肉猪的生长周期及母猪的配种、生产时间,为求得母猪及肉猪的存栏数量和最佳经营策略。通过查阅相关资料得到2002—2013年的猪肉价格和饲料价格,运用最小二乘法对猪肉价格与饲料价格的关系进行拟合,得到两者间的函数关系。结合第二问的结果进行分析,引入该时间是否生产和该时间是否卖出两个“0—1”变量,以总盈利最大为目标,并根据题目要求建立约束条件,建立优化模型,利用lingo 软件求得在母猪数量不发生变化情况下的生产时间和出栏时间。在上一步模型的基础上,将结果转换为条件,以母猪数量作为未知量,添加相关约束条件,建立优化模型,利用lingo 软件求得三年内的平均年利润、经营策略及母猪及肉猪存栏数曲线。
sets: bb/1..109/:a,b,c; aa/1..6/:; cc(aa,bb):f,p; endsets
data: a=@text('D:\roujia.txt');
b=@text('D:\biandongfeiyong.txt'); c=@text('D:\tianshujiange.txt'); enddata
max=n-q-e-w; n=@sum(cc(i,j):a(j)*f(i,j)*100*8543)+8543*a(2);
q=@sum(cc(i,j):(c(j)*f(i,j)-c(j)*p(i,j)))*8543*1.5*3+8543*130*1.5*3; e=@sum(bb(j):1452*(a(j)-7.3371)/2.3888*2.5*10);
w=@sum(cc(i,j):f(i,j)*8543*b(j))+1452*120;
@for(aa(i):@sum(bb(j):c(j)*f(i,j)-c(j)*p(i,j))>=150);
@for(aa(i)|(i#le#5):@sum(bb(j):f(i+1,j)*c(j)-f(i,j)*c(j))>=150);
@for(aa(i)|(i#le#5):@sum(bb(j):p(i+1,j)*c(j)-p(i,j)*c(j))>=180);
@for(aa(i):@sum(bb(j):f(i,j))<=1);
@for(aa(i):@sum(bb(j):p(i,j))<=1);
@for(cc(i,j):@bin(f(i,j)));
@for(cc(i,j):@bin(p(i,j)));
第二步:
sets: bb/1..109/:a,b,c,x,y,z; aa/1..6/:; cc(aa,bb):f,p;
endsets data:
a=@text('D:\roujia.txt'); b=@text('D:\biandongfeiyong.txt'); c=@text('D:\tianshujiange.txt'); f=@text('D:\f.txt');
p=@text('D:\p.txt'); enddata
max=n-q-e-w; n=@sum(cc(i,j):a(j)*f(i,j)*100*9*x(j)*0.98)+8479*a(2);
q=@sum(cc(i,j):(c(j)*f(i,j)-c(j)*p(i,j))*9*x(j)*0.98*1.5*3)+8479*130*1.5*3; e=@sum(bb(j):x(j)/0.96*(a(j)-7.3371)/2.3888*2.5*10);
w=@sum(cc(i,j):f(i,j)*9*x(j)*0.98*b(j))+@sum(bb(j):x(j)/0.96)/109*120;
@for(bb(j):x(j)<=1110);
@for(bb(j):x(j)>=24);
@for(bb(j)|(j#le#108):@abs(x(j)-x(j+1))<=x(j)*0.01); x(1)=1110;
@for(cc(i,j):@bin(f(i,j)));
@for(cc(i,j):@bin(p(i,j)));
@for(bb(j):x(j)*1.3=y(j));