《运筹学作业(共5页).doc》由会员分享,可在线阅读,更多相关《运筹学作业(共5页).doc(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上一、 实验内容及步骤(包含简要的实验步骤流程)问题:大学生值班问题东方大学计算机实验室聘用4名大学生(代号1、2、3、4)和2名研究生(代号5、6)值班答疑。已知每人从周一至周五每天最多可安排的值班时间及每人每h值班报酬如下表所示:表学生代号报酬(元/h)每人最多可安排的值班时间周一周二周三周四周五110.060607210.00606039.94830549.855604510.830480611.306063该实验室开放时间为上午8:00至晚上10:00,开放时间内须有且仅须有一名学生值班。规定大学生每周值班不少于8h,研究生每周值班不少于7h,每名学生每周值班不
2、超过3次,每次值班不少于2h,每天安排值班的学生不超过3人,且其中必须有一名研究生。施为该实验室安排一张人员值班表,使总支付的报酬为最少。模型建立:解:设为学生i在周j的值班时间,用代表学生i在周j最对可安排的值班时间,为学生i的每h的报酬,则本题的数学模型为:四、实验结果(包括程序或图表、结论陈述、数据记录及分析等,可附页)运用LINGO软件求解:程序:model:!大学生值班问题;sets:students1/stu1.stu4/:;students2/stu5,stu6/:;students/stu1.stu6/:;weeks/w1.w5/:;sw(students,weeks):c,t
3、imes,yi,ai;endsets!目标函数;min=sum(sw: c*times);!约束条件;!不超过可安排时间;for(weeks(J):for(students(I):times(I,J)=2*yi(I,J);for(weeks(J):for(students(I):times(I,J)=8);!研究生每周值班不少于7h;sum(weeks(J):times(5,J)=7;sum(weeks(J):times(6,J)=7;!实验室每天开放14h;for(weeks(J):sum(students(I):times(I,J)=14);!每名学生一周值班不超过3次;for(stude
4、nts(I):sum(weeks(J):yi(I,J)=3);!每天值班不超过3人;for(weeks(J):sum(students(I):yi(I,J)=1);!非零约束;for(weeks(J):for(students(I):times(I,J)=0);!0-1变量;for(sw:bin(yi);data:c=10 10 10 10 10 10 10 10 10 10 9.9 9.9 9.9 9.9 9.9 9.8 9.8 9.8 9.8 9.8 10.8 10.8 10.8 10.8 10.8 11.3 11.3 11.3 11.3 11.3;ai=6 0 6 0 7 0 6 0 6
5、 0 4 8 3 0 5 5 5 6 0 4 3 0 4 8 0 0 6 0 6 3;enddataend运行结果:根据结果我们可以得到下面这张安排表:表2:最终安排表学生代号报酬(元/h)每人最多可安排的值班时间周一周二周三周四周五110.0667210.04639.98549.856510.8325611.30232根据这张安排表安排,最终需要支付的最低报酬 min=713.6五、实验总结(包括心得体会、问题回答及实验改进意见,可附页)1、实验所得的结果比原始结果更优化,原始结果中,周五的安排值班时间综合大于14h,不满足约束条件,不是最优解。2、经过这次试验之后,可以很轻松的发现用LINGO软件做优化问题可以大大减少人为的计算时间,并且LINGO软件输入的方法也是很简单易懂的,很容易就能够被我们所掌握。六、教师评语评语评语等级优良中及格不合格1.实验态度认真,实验目的明确2.实验方案、程序设计合理3.实验过程(实验步骤详细,记录完整,数据合理)4.实验结论正确,分析透彻5.实验报告独立完成,无抄袭现象,并按时提交,格式规范,文字叙述流畅,逻辑性强综合评定:专心-专注-专业
限制150内