楼主 gouweicao78 |
【答题期限】2009-12-20 0:00截稿 【题目】红字为补充说明 某一项工作需要安排劳力(这是一项长期工作,不只是1周),不过(从第2周开始)周一至周日的值班人数需求不同,分别为:14、17、13、13、17、11、10人,均实行连续5天工作制,请问 : 1、从第2周开始,每周最少需要投入多少劳力? 2、每天的劳力数如何安排?比如周一开始上班的多少人、周二开始上班的多少人…… 说明:从第2周开始,周一劳力的组**数有可能:是周一开始上班的,或者是上周四、五、六、日开始上班的。 【要求】 1、用Excel完成计算(除了VBA以为其他功能均可) 2、写明具体操作步骤。 3、请自己做一个附件并压缩后跟帖上传。 【评分】 1、算出最少劳力人数,答案正确得2技能分 2、写出每天劳力安排,答案正确得3技能分 3、写明具体操作步骤得2技能分 4、精彩答案可以再获得1~4技能分 |
2楼 knifefox |
试试,不知道是不是这个意思 最佳劳力安排方案_knifefox.rar |
3楼 NeverQuest |
规划求解 第一周星期五开始上班6人,星期天2人,一共要8人,第一周上班的人休息两天后继续上班 第二周星期一开始上班6人,星期二3人,星期三2人,加上第一周上班后休息的8人,一共要19人。 规划求解劳工人数.rar |
4楼 biaotiger1 |
【答题步骤】 1、 设置迭代次数为5000 2、 单元格C4输入公式=$A1*IF(C4>=0,IF(SUM(F4:$I4,$C4:C4)=C2,C4,INT(RAND()*(C2-SUM(F4:$I4)+1))),INT(RAND()*(C2-SUM(F4:$I4)+1))) 单元格D4输入公式=$A1*IF(D4>=0,IF(SUM(G4:$I4,$C4:D4)=D2,D4,INT(RAND()*(D2-SUM(G4:$I4,$C4:C4)+1))),INT(RAND()*(D2-SUM(G4:$I4,$C4:C4)+1))) 单元格E4输入公式=$A1*IF(E4>=0,IF(SUM(H4:$I4,$C4:E4)=E2,E4,INT(RAND()*(E2-SUM(H4:$I4,$C4:D4)+1))),INT(RAND()*(E2-SUM(H4:$I4,$C4:D4)+1))) 单元格F4输入公式=$A1*IF(F4>=0,IF(SUM(I4:$I4,$C4:F4)=F2,F4,INT(RAND()*(F2-SUM(I4:$I4,$C4:E4)+1))),INT(RAND()*(F2-SUM(I4:$I4,$C4:E4)+1))) 单元格G4输入公式=$A1*IF(G4>=0,IF(SUM(C4:G4)=G2,G4,INT(RAND()*(G2-SUM(C4:F4)+1))),INT(RAND()*(G2-SUM(C4:F4)+1))) 单元格H4输入公式=$A1*IF(H4>=0,IF(SUM(D4:H4)=H2,H4,INT(RAND()*(H2-SUM(D4:G4)+1))),INT(RAND()*(H2-SUM(D4:G4)+1))) 单元格I4输入公式=$A1*IF(I4>=0,IF(SUM(E4:I4)=I2,I4,INT(RAND()*(I2-SUM(E4:H4)+1))),INT(RAND()*(I2-SUM(E4:H4)+1))) 上述七个公式结构相似,作用相同 外层IF(C4>=0,……,INT(RAND()*(C2-SUM(F4:$I4)+1)))→-如果对应单元格>0,则进入下一个if判断,否则继续随机取数 内层IF(SUM(F4:$I4,$C4:C4)=C2,C4,INT(RAND()*(C2-SUM(F4:$I4)+1)))→-如果从今天开始(包括今天)向前五天之内的劳力和等于对应日期需要的劳力数,则保持该劳力数不变,否则继续随机取数 3、 单元格J4输入公式=IF(A1,SUM(C4:I4),"") 如果选中启动复选框,则显示单元格区域C4:I4的和 最佳劳力安排方案-biaotiger1.rar |
5楼 rongjun |
【循环引用】最佳劳力安排方案-rongjun.rar |
6楼 棉花糖 |
用2010beta英文版做的,想想应该不会出错吧。详解在附件 棉花糖最佳劳力安排.rar |
7楼 gouweicao78 |
【规划求解】 如图:整理一个规划求解的模型,D:J列单元格分别等于C19:C25,D26:J26再分别求和,C19:C25作为可变单元格(只有7个变量)。 如图,设置规划求解参数: 其中,C26=SUM(C19:C25),并作为目标单元格,求最小值。 约束条件:C19:C25为整数,D26:J26=D27:J27(这是手工输入的目标人数) 求解后答案如上面第一个图,即6、3、2、0、6、0、2分别表示,6个人从周一工作到周五;3个从周二开始工作,2个从周三开始工作,6个从周五开始工作,2个从周日开始工作,这样在第2周就可以满足题目要求。 【解多元一次联立方程】 因为本题的解比较凑巧是整数解,可以用矩阵函数求解多元一次方程组的方法解决(真没想到rongjun兄用联立方程组+循环引用完美解决),如图: 在D33:J39单元格分别手工输入1和0,用以表示周一开始到周五、周二开始到周六……连续5天工作模型 D40:J40手工输入每天的最低人数要求 选择C33:C39,输入=TRANSPOSE(MMULT(D40:J40,MINVERSE(D33:J39)))并按下CTRL+SHIFT+ENTER键形成多单元格数组公式,得到方程的解。 图片下方是拆解区,大家可以参考【e问e答】中的 如何用函数与公式求解多元一次方程? 【竞赛题】最佳劳力安排方案答案.rar |