根据2023年全国大学生数学建模D题,规模化的湖羊养殖场一般建有标准羊栏,每个标准羊栏允许存放的羊只数量由羊的性别、生长周期、大小决定。本文根据自然交配期、孕期、哺乳期、羔羊育肥期、母羊空怀休整期、公羊非交配期可以存放的羊栏类型和数量限制,设计动态规划算法,将公羊和母羊按比例分批次间隔交配,计算得出每天所有批次的湖羊使用的羊栏类型和数量,以最大化年化出栏羊只的数量。进一步考虑自然交配成功率、分娩羔羊的数量、死亡率、哺乳时间波动等不确定因素,利用蒙特卡洛方法模拟验证概率分布,调整原动态规划算法,给出期望损失最小的生产计划。
湖羊是国家级保护品种,湖羊养殖场一般会根据羊的大小、生长阶段以及性别来决定标准羊栏所能容纳的湖羊数量。在实际的圈养中,需要尽量减少空间闲置所引起的资源浪费,空间利用率也是影响湖羊养殖场经济效益的重要因素。
对于养殖场的管理者来说,需要通过制定合适的生产计划合理优化养殖场的空间利用率来达到获取最高效益的目的,而生产计划则是指规划什么时候种公羊和多少可接受配种的基础母羊来进行配种,通过控制母羊的繁育期从而确定对羊栏的需求量,要确保有足够的羊栏,同时尽量缩小羊栏的闲置。
一、问题1模型的建立与求解
(一)问题1模型的建立
已知自然交配期为20天,此时期每栏可以放1只公羊和最多14只母羊;孕期149天,每胎可产2只羔羊,此时期每栏最多可以放8只待产母羊;哺乳期40天,此时期每栏最多可以放6只母羊和它们的羔羊;羔羊的育肥期需要210天,此时期每栏最多可以放14只羔羊;母羊的空怀休整期需要20天,此时期每栏最多可以放14只母羊。
根据问题1,在算法中母羊的数量m从1叠加到1000,根据种公羊与基础母羊的比例配置不低于1:50,求出种公羊的数目g。根据种公羊和母羊的数量及羊栏放置的要求,在每一个周期中,将种公羊和基础母羊分批次间隔20天进行交配。因母羊每间隔229天可以进行一次交配,根据天数i的取值,判断出母羊、种公羊、羔羊处于自然交配期、孕期、哺乳期、育肥期、空怀休整期以及非交配期,并计算出对应时期所需的羊栏数量,求和得出每天所需的总的羊栏数Li,羊栏数的最大值Lmax,若Lmax不超过112,得出此时的种公羊和基础母羊的数量,从而算出年化出栏羊只数量的范围。根据计算出的年化出栏数量,判断年化出栏羊只数量不少于1500只时,需要多少标准羊栏,从而计算出现有标准羊栏数量的缺口。具体动态规划的算法思路如下:
步骤一:给定基础母羊的数量m,算出相应的种公羊数目和应分配的批次。将m从1叠加到1000,因种公羊与基础母羊的比例配置不低于1:50,取种公羊的数目g=。自然交配期每栏最多可放1只公羊和14只母羊,首先将1只公羊配够14只母羊,首先将1只公羊配够14只母羊进行分批,共分为p=批,还剩mp+1=m-14gp只母羊在第(p+1)批次,按照全部使用公羊的原则分组进行自然交配。
步骤二:判断母羊、种公羊、羔羊每天所处的时期,计算出每天所需总的羊栏数Li。以母羊的繁育周期Tjp=tj+ty+tb+tk=229天为一个基础周期,对天数i=1:365n(n为正整数),令a=,对于第1个批次,当i20+229a,说明该批次所有母羊都处在自然交配期,因此使用的羊栏数为母羊数除以14,即为。若20+229a<i169+229a,说明此时该批次所有母羊都处在孕期,因此使用的羊栏数为。

