实验内容:整数规划问题的建模和求解。
案例4.3“建业银行职员的上班安排”。
南平市青山区建业银行分理处每周七天营业,从周一到周日每天值班人员数见下表:
周一 | 周二 | 周三 | 周四 | 周五 | 周六 | 周日 | |
值班人员数 | 15 | 17 | 14 | 14 | 15 | 16 | 18 |
试回答:a)银行职员每周上班5天,休息两天,但具体哪几天上班由银行排定。领导保证每周六或周日两个公休日内至少安排一天休息,该分理处至少配备多少名职员才能满足值班需要;
b)因排定的值班表有的职员每周六、日均得到休息,有的只能安排一个公休日休息,显得不公。于是研究一个值班的倒班计划,做到在一个周期内,每名职工公休日休息的天数一致,问如何才能做到这一点。
从该银行每天需要值班人数表可看出:七天所需职员人数分别为15.17.14.14.15.16.18。每个职员每周值五个班。为了满足值班需要,并且公平合理。现制定以下两种方案,通过建立整数规划模型并求解,分析各种方案的最佳安排方式。
方案一:每个银行职员每周上班5天,休息2天,且每周末至少休息1天。
方案二:每个银行职员每周上班5天,休息2天,每周末至少休息1天,且每名职工周末休息天数一致。
i | 周几 |
ai | 周几不上班人数 |
t | 银行职员数 |
方案一:
每名职员在周六、周日两天内至少休息一天,每周共上班5天。由每名职员在周六、周日两天内至少休息一天可知,周六周日休息人数a6+a7>=t。而通过每周共上班5天,
可推出
方案二:
每名职员在周六、周日两天内至少休息一天且休息天数一致。每名职员每周共上班5天。由每名职员在周六、周日两天内至少休息一天且休息天数一致可知,任何一名职员只能在周末休息一天,否则就无人上班了。因此,遇上一体的唯一区别在于,将a6+a7>=t改为a6+a7=t。
方案一:
决策变量 | 银行职员数,表示为t. |
目标函数 | min=t; |
约束条件 | t-a1>=15; t-a2>=17; t-a3>=14; t-a4>=14; t-a5>=15; t-a6>=16; t-a7>=18; a6+a7>=t; a1+a2+a3+a4+a5+a6+a7=2*t; |
输入 | |
计算结果 | |
方案二:
决策变量 | 银行职员数,表示为t. |
目标函数 | min=t; |
约束条件 | t-a1>=15; t-a2>=17; t-a3>=14; t-a4>=14; t-a5>=15; t-a6>=16; t-a7>=18; a6+a7=t; a1+a2+a3+a4+a5+a6+a7=2*t; |
输入 | |
计算结果 | |
本文来源:https://www.2haoxitong.net/k/doc/249d8ed866ec102de2bd960590c69ec3d4bbdbfe.html
文档为doc格式