1、 护士工作时间的安排 摘 要: 本文是在满足各个时间段护士满足人员需要的情况下求最值问题,是护士排班的规划优化问题,因此我们针对题中两小问建立两种数学模型。在尽量减少约束条件的情况下,运用线性规划建立模型,再利用LINGO求解,分别算出所需护士人员总数及加班人员人数总和,接着根据实际情况进行人性化排班,调整工作模式,制定优化方案。 在问题一中,我们研究的是,在满足护士每日工作时间,工作强度和各个时间段人员需求的条件下,求每天最少需要多少护士的最终目的。根据每位护士每天工作8小时,且在工作4小时后需要休息1小时这一条件,以及各个时间段的人员需求量不同的约束条件,假设第i时间段
2、有名护士开始上班,以各时间段护士最少需求量为约束条件,利用LINGO求解得每天该科所需的最少护士数,继而进行方案优化。 在问题二中,考虑到限定医院护士总人数为80,加班人员每天加班的时间为2小时,且紧随在后一个4小时工作时段之后,中间没有休息,满足各时间段的人员需求且每天安排最少护士加班。分别假设出正常上班人员安排在各时间段开始上班的人数,加班人员安排在各时间段开始上班的人数,再以各时间段护士最少需求量及排班要求为约束条件建立最优化模型,并采用LINGO编程求解。 关键词: 护士排班 线性规划 最优方案 一、 问题的重述 某医院心脑血管科护士的一个工作日分为12个时间段
3、每个时间段需要护士人数如下表: 每个时段的人员需求 编号 时段 需要护士人数 1 0:00——2:00 15 2 2:00——5:00 15 3 4:00——6:00 15 4 6:00——8:00 35 5 8:00——10:00 40 6 10:00——12:00 40 7 12:00——14:00 40 8 14:00——16:00 30 9 16:00——18:00 31 10 18:00——20:00 35 11 20:00——22:00 30 12 22:00——24:00 20 护士排班需满足的条
4、件: (1)每位护士每天工作8小时,且在工作4小时后需要休息1小时。 (2)总护士人数为80人,如果加班,每天加班的时间为2小时,且紧随在后一个4小时工作时段之后,中间没有休息。 求解问题: (1)每位护士每天工作8小时,且在工作4小时后需要休息1小时,为满足需求最少需要多少名护士?如果满足需求的排班方案不止一种,给出合理的排班方案。 (2)只能考虑让部分护士加班,求解出护士工作时间安排的方案方案,使需要加班的护士数目最少,并给出最合理的排班和加班方案。 二、 问题的分析 因为医院护士职业的特殊性以及相关医院制度的规定,还需考虑护士在上班时的精力合理化安排,所以护士工
5、作时间安排问题是客观因素较多,较为复杂的优化问题。相对该问题的处理首先应考虑各个时间段的护士需求量,并依据其他条件制定工作时间安排的约束条件,其次,在同时考虑使排班更加人性化的情况下,算出加班护士人数的最优解。具体分析如下: 问题一的分析 首先由于每个护士每天工作8小时,且在工作4个小时后需要休息1个小时,故划分24个时段。以下列出了每个时段的人员需求量: 编号 时段 需要护士人数 1 0:00——1:00 15 2 1:00——2:00 15 3 2:00——3:00 15 4 3:00——4:00 15 5 4:00——5:00 15 6
6、 5:00——6:00 15 7 6:00——7:00 35 8 7:00——8:00 35 9 8:00——9:00 40 10 9:00——10:00 40 11 10:00——11:00 40 12 11:00——12:00 40 13 12:00——13:00 40 14 13:00——14:00 40 15 14:00——15:00 30 16 15:00——16:00 30 17 16:00——17:00 31 18 17:00——18:00 31 19 18:00——19:00 35 20 19:
7、00——20:00 35 21 20:00——21:00 30 22 21:00——22:00 30 23 22:00——23:00 20 24 23:00——24:00 20 每位护士每天工作8小时,且在工作4小时后需要休息1小时,例如:在第1时段内工作的护士人数等于第1时段开始工作的护士人数、第24时段开始工作的人数、第23时段开始工作的人数、第22时段开始工作的人数、以及第20个、第19个、第18个和第17个时段开始工作的护士人数之和。即:在第1时段,正在工作的护士分别是在时段17、18、19、20、22、23、24、1开始工作。例如:有个护士在时段2开始
8、工作,则她在时段2、时段3、时段4和时段5中将进行工作,在第6时段休息,然后在时段7、时段8、时段9和时段10继续工作。 为保证在各个时段工作的护士人数满足该时段的最少人员需求,所以以符合上述条件的最少护士工作人数为目标函数,以护士每天工作8小时,且在连续工作4小时后休息1小时为约束条件,建立整数规划模型I,求解满足条件是需要护士工作的最少人数。 针对于白天和凌晨的医院对护士需求不同的情况,及就诊病人的人数不同致使护士工作量的不同,故将护士的工作模式分为白班和夜班两种(白班:若护士由第7个时段至第15个时段开始上班,则工作4小时后休息2小时,再工作4小时;夜班:若护士由第16个时段至第6个
9、时段开始上班,则工作4小时后休息1小时,再工作4小时),使工作时间安排更加人性化,仍以已知各时间段人员需求为约束条件,建立整数规划模型II求解该条件下所需护士工作的最少人数。 在凌晨时段(时段1到时段5)开始上班和下班的护士在生活上会有很多的不便,比如乘车问题、安全问题等等。为最大限度方便护士上下夜班,现对模型Ⅱ进行改进。以满足上述条件并需在凌晨时段开始上下班的总护士人数最少为目标函数,建立模型Ⅲ,得出更加合理,更为人性化的工作时间安排表。 问题二的分析 目前该科室仅有80名护士,在此种情况下不能满足各时间段对护士的最少人员需求,故需要安排部分护士加班。如果护士加班,则每天加班的时间
10、为2小时,且紧随在后一个4小时工作时段之后,中间没有休息,同问题一类似分析。所以以满足条件时加班人数最少为目标函数,确定第i时段以加班状态下的工作模式为约束条件,建立模型Ⅳ,求解满足需求时需要加班的护士最少人数。最后,设计更人性化的加班制度,规定只让加白班的护士加班,优化加班安排。 三、 模型的假设 1. 假设护士对工作时间安排没有异议; 2. 假设不考虑法定假期对工作时间安排的影响; 3. 假设不存在护士在上班时迟到和早退; 4. 假设不考虑护士因请假或其他特殊情况而导致换班; 5. 假设所给数据符合真实情况且每个约束条件医院排班均必须考虑; 6. 假设计算所得人数为小数时
11、可忽略小数点向上进一; 7. 假设每天的工作量是固定的,无特殊情况增加人员; 四、 符号说明 1. :第i个时间段所需人员数。 2. :安排在第i个时间段开始上班的人数。 3. MIN:满足需求最少需要的护士人员总数。 4. : 第i个时段开始工作的护士人数中不需要加班的人数。 5. :第i个时段开始工作的护士人数中需要加班的人数。 (注:i=1,2·····24) 五、 模型的建立与求解 从所需解决的问题及对问题所做的分析假设出发,我们对本题问题一所涉及的问题建立了模型Ⅰ,以求出满足该医院心脑血管科需求,最少需要安排多少名护士。因护士上班时间内工作量不同,为使工作
12、时间安排更人性化,故建立模型Ⅱ。考虑到凌晨时段上下班,会对护士的生活、人身安全等造成不便,故对模型Ⅱ进行优化,得到模型Ⅲ。 对问题二,建立模型Ⅳ,以求取在只有80名护士时,工作时间的安排方案,使得所需加班的护士数目最少。之后,按照更人性化的要求,再次对模型进行优化。 5.1 问题一的求解 5.1.1.1 模型Ⅰ的建立: 已知在该医院里,一个工作日内的12个两小时长的时段的人员要求,选取一个小时为时间间隔,将每天划分24个时段。为满足每个时间段都有足够的护士在工作,且每名护士每天工作8小时,且连续工作4小时后需休息一小时。由此可以列出约束条件,在满足需求的前提下,以所需的最少护士人数为
13、目标函数的整数规划模型。 模型Ⅰ如下: 5.1.1.2模型I的求解 利用LINGO软件编程可对该模型求解,得到结果如下(代码详见附录-代码1)。 图1 . 代码1运行结果 结论:在将一天划分24个时段的情况及护士每天工作8小时,且每连续工作4小时需获得1小时休息时间的条件下,医院该科室为满足每日每时段工作量的需求,至少需要91名护士。 表1 . 模型Ⅰ的工作时间排班表 时段号 时间段 开始工作的人数 总工作人数 1 00-01 0 15 2 01-02 4 15 3 02-03 2 15 4 03-04 8 15
14、5 04-05 7 15 6 05-06 8 15 7 06-07 8 35 8 07-08 6 35 9 08-09 4 40 10 09-10 1 40 11 10-11 5 40 12 11-12 0 40 13 12-13 6 40 14 13-14 4 40 15 14-15 7 30 16 15-16 2 30 17 16-17 8 31 18 17-18 2 31 19 18-19 8 35 20 19-20 1 35 21 20-21 0 30
15、 22 21-22 0 30 23 22-23 0 20 24 23-24 0 20 5.1.2.1模型II的建立 针对医院在白天和凌晨对护士需求、就诊病人的人数不同,致使护士的工作量不同,为了护士能得到充分休息,故将护士的工作模式分为白班和夜班两种。在白班工作的护士,将得到2小时休息时间而夜班仍为休息1小时。(注:白班是从时间段7至时间段15开始上班的班次,其他为夜班班次)根据上述条件,建立整数规划模型Ⅱ以求解该条件下所需护士的最少人数。 模型II如下: 5.1.2.2模型II的求解 利用LINGO软件编程可对该模型求解,得到结果如下(代码详
16、见附录-代码2)。 图2 . 代码2运行结果 结论:将一天划分24个时段,护士每天工作8小时,在工作时间分为白班和夜班的情况下,医院该科室为满足每日每时段工作量的需求,至少需要90名护士。 表2 . 模型Ⅱ的工作时间排班表 时段号 时间段 开始工作的人数 总工作人数 1 00-01 0 15 2 01-02 3 15 3 02-03 0 15 4 03-04 7 15 5 04-05 8 15 6 05-06 8 15 7 06-07 9 35 8 07-08 7 35 9 08-09 6 40
17、 10 09-10 0 40 11 10-11 5 40 12 11-12 7 40 13 12-13 3 40 14 13-14 2 40 15 14-15 0 30 16 15-16 6 30 17 16-17 7 31 18 17-18 0 31 19 18-19 7 35 20 19-20 5 35 21 20-21 0 30 22 21-22 0 30 23 22-23 0 20 24 23-24 0 20 5.1.3.1模型Ⅲ的建立 在对模型Ⅱ的求解过程
18、中发现,在凌晨12点至5点上下班的护士,人数过多。为最大限度方便护士上下夜班,现对模型Ⅱ进行优化。以满足上述条件并需在凌晨时段开始上下班的总护士人数最少为目标函数,建立模型Ⅲ,得出更加合理,更为人性化的工作时间安排表。 模型Ⅲ如下: 5.1.3.2模型Ⅲ的求解 利用LINGO软件编程可对该模型求解,得到结果如下(代码详见附录-代码3)。 图3 . 代码3运行结果 结论:由表3可以看出,对模型Ⅱ进行改进后,护士在凌晨时段(时段1到时段5) 开始上下班的护士人数,从18人下降至14人,总人数减少了4人。比较改进后的模型Ⅲ,能在很大程度上降低护士对时间安排的不满意度,使护士
19、在生活上享受更大便利,人身安全得到更大保障。 表3 . 模型Ⅲ的工作时间排班表 时段号 时间段 开始工作的人数 总工作人数 1 00-01 0 15 2 01-02 1 15 3 02-03 0 15 4 03-04 6 15 5 04-05 7 15 6 05-06 8 15 7 06-07 13 35 8 07-08 6 35 9 08-09 6 40 10 09-10 1 40 11 10-11 6 40 12 11-12 6 40 13 12-13 1 40 14
20、13-14 0 40 15 14-15 0 30 16 15-16 6 30 17 16-17 6 31 18 17-18 0 31 19 18-19 9 35 20 19-20 7 35 21 20-21 1 30 22 21-22 0 30 23 22-23 0 20 24 23-24 0 20 5 . 2 问题二的求解 5.2.1.1模型Ⅳ的建立 在该科室仅有80名护士的情况下,由于上述方案所需人数多于80人,故需在正常排班的基础上,在连续工作4小时休息1小时再工作4小时之后,无休息地安排2小时
21、的加班时间。在总人数80人的约束下,为求解满足需求时需要加班的护士最少人数。最后,在此基础上,设计更人性化的加班制度,以对该模型进行更深一步优化。 模型Ⅳ详见附录-代码4。 5.2.1.2模型Ⅳ的求解利用LINGO软件编程可对该模型求解,得到结果如下。(代码详见附录-代码4)。 结论:在仅有80名护士,按照上述条件,对正常排班时间外所需加班的护士,最少需要30人。 表4 . 模型Ⅳ的工作时间排班表 时段号 时间段 需要加班的人数 不加班的人数 开始工作的人数 总工作人数 1 00-01 0 0 0 15 2 01-02 9 0 9 1
22、5 3 02-03 0 3 3 15 4 03-04 0 6 6 15 5 04-05 0 1 1 15 6 05-06 0 1 1 15 7 06-07 0 13 13 35 8 07-08 0 3 3 35 9 08-09 0 0 0 40 10 09-10 0 0 0 40 11 10-11 8 0 8 40 12 11-12 2 0 2 40 13 12-13 5 0 5 40 14 13-14 1 7 8 40 15 14-15 0
23、2 2 30 16 15-16 0 4 4 30 17 16-17 0 9 9 31 18 17-18 0 1 1 31 19 18-19 0 0 0 35 20 19-20 0 0 0 35 21 20-21 0 0 0 30 22 21-22 0 0 0 30 23 22-23 0 0 0 20 24 23-24 5 0 5 20 5.2.2.1模型Ⅴ的建立 对排班方案进行优化,上班时间分为白班和夜班。白班上4小时,休息2小时,再接着上班4小时,加班2小时;夜班上4小
24、时,休息1小时,再接着上班4小时,加班2小时。 模型Ⅴ详见附录-代码5。 5.2.2.2模型Ⅴ的求解 利用LINGO软件编程可对该模型求解,得到结果如下。(代码详见附录-代码4)。 结论:在仅有80名护士,对正常排班时间外所需加班的护士,最少为27人。 表5 . 模型Ⅴ的工作时间排班表 时段号 时间段 需要加班的人数 不加班的人数 开始工作的人数 总工作人数 1 00-01 1 0 1 15 2 01-02 8 0 8 15 3 02-03 0 0 0 15 4 03-04 1 5 6 1
25、5 5 04-05 0 1 1 15 6 05-06 0 7 7 15 7 06-07 0 12 12 35 8 07-08 0 6 6 35 9 08-09 0 0 0 40 10 09-10 6 0 6 40 11 10-11 5 0 5 40 12 11-12 5 2 7 40 13 12-13 1 0 1 40 14 13-14 0 1 1 40 15 14-15 0 3 3 30 16 15-16 0 1 1 30 17 16-17 0
26、 9 9 31 18 17-18 0 0 0 31 19 18-19 0 6 6 35 20 19-20 0 0 0 35 21 20-21 0 0 0 30 22 21-22 0 0 0 30 23 22-23 0 0 0 20 24 23-24 0 0 0 20 5.2.2.3对模型Ⅴ的优化 在模型Ⅴ的基础上,出于更人性化考虑,仅让白天工作的护士加班,建立模型(代码详见附录-代码6)以进行求解。 求解结果: 表6 . 模型Ⅴ的
27、优化工作时间排班表 时段号 时间段 需要加班的人数 不加班的人数 开始工作的人数 总工作人数 1 00-01 0 0 0 15 2 01-02 0 5 5 15 3 02-03 0 0 0 15 4 03-04 0 5 5 15 5 04-05 0 5 5 15 6 05-06 0 10 10 15 7 06-07 1 9 10 35 8 07-08 5 0 5 35 9 08-09 5 0 5 40 10 09-10 5 0 5 40 11 10-11
28、 5 0 5 40 12 11-12 5 0 5 40 13 12-13 0 0 0 40 14 13-14 5 0 5 40 15 14-15 0 0 0 30 16 15-16 0 0 0 30 17 16-17 0 5 5 31 18 17-18 0 0 0 31 19 18-19 0 5 5 35 20 19-20 0 0 0 35 21 20-21 0 5 5 30 22 21-22 0 0 0 30 23 22-23 0 0 0 20
29、 24 23-24 0 0 0 20 六、模型的评价与推广 6.1模型的优点 文中将所需数据及最后结果均以表格的形式给出,使其更为清晰直观;在各个问题下所建立的整数规划模型通俗易懂,紧扣题目要求,结合实际情况进行分析求解,使模型具有较强的通用性和可执行性;在对模型进行优化时,我们最大程度上从护士方便工作角度考虑,建立了新的工作模式,并使工作时间安排更加人性化,具有较强的实用性;在求解模型时使用软件,算法简明易懂,易于推广且有较高可信度。 6.2模型的缺点 在该问题中我们的各个模型,均是在假设一些理想情况的基础上建立的,未全面考虑各种客观因素的影响,难以避免地会存在
30、一些不当之处。例如,在对模型进行优化时,我们为减轻白天护士工作负担,定义了新的工作模式,其中白班为护士连续工作4小时后休息2小时,然后继续工作4小时,夜班为休息1小时,但在实际情况中,护士连续工作4小时后可休息不止1或2小时。因此我们的模型在此显示了一定的局限性。 6.3模型的改进与推广 6.3.1模型的改进 在该问题下,我们所建立的模型对于护士休息时间的考虑较为局限。在实际情况下,工作时间内护士会出现因特殊情况而请假;护士上班不连续工作4小时;医院发生突发状况护士需求量增加;法定假期换休对工作时间安排的影响等。综合以上不确定因素,可建立工作时间不连续的整数规划模型,并利用枚举法求得工作
31、时间安排的最优解。 6.3.2模型的推广 在该问题下建立的整数规划模型不仅可解决护士的工作时间安排,在改变限定条件后,也可在其他领域有所应用,例如解决公司保安执勤问题、酒店服务人员的值班问题等等。 附录 附录-代码1: model: MIN=X1+X2+X3+X4+X5+X6+X7+X8+X9+X10+X11+X12+X13+X14+X15+X16+X17+X18+X19+X20+X21+X22+X23+X24; X1+X24+X23+X22+X20+X19+X18+X17>=15; X2+X1+X24+X23+X21+X20+X19+X18>=15; X3+X2+
32、X1+X24+X22+X21+X20+X19>=15; X4+X3+X2+X1+X23+X22+X21+X20>=15; X5+X4+X3+X2+X24+X23+X22+X21>=15; X6+X5+X4+X3+X1+X24+X23+X22>=15; X7+X6+X5+X4+X2+X1+X24+X23>=35; X8+X7+X6+X5+X3+X2+X1+X24>=35; X9+X8+X7+X6+X4+X3+X2+X1>=40; X10+X9+X8+X7+X5+X4+X3+X2>=40; X11+X10+X9+X8+X6+X5+X4+X3>=40; X12+X11+X10+X9
33、X7+X6+X5+X4>=40; X13+X12+X11+X10+X8+X7+X6+X5>=40; X14+X13+X12+X11+X9+X8+X7+X6>=40; X15+X14+X13+X12+X10+X9+X8+X7>=30; X16+X15+X14+X13+X11+X10+X9+X8>=30; X17+X16+X15+X14+X12+X11+X10+X9>=31; X18+X17+X16+X15+X13+X12+X11+X10>=31; X19+X18+X17+X16+X14+X13+X12+X11>=35; X20+X19+X18+X17+X15+X14+X13+x
34、12>=35; X21+X20+X19+X18+X16+X15+X14+X13>=30; X22+X21+X20+X19+X17+X16+X15+X14>=30; X23+X22+X21+X20+X18+X17+X16+X15>=20; X24+X23+X22+X21+X19+X18+X17+X16>=20; @gin(X1);@gin(X2);@gin(X4);@gin(X5);@gin(X6);@gin(X7);@gin(X8);@gin(X9);@gin(X10);@gin(X11);@gin(X12);@gin(X13);@gin(X14);@gin(15);@gin(16)
35、@gin(X17);@gin(X18);@gin(X19);@gin(X20);@gin(X21);@gin(X22);@gin(X23);@gin(X24); End 运行结果如下: 附录-代码2: MIN=X1+X2+X3+X4+X5+X6+X7+X8+X9+X10+X11+X12+X13+X14+X15+X16+X17+X18+X19+X20+X21+X22+X23+X24; X17+X18+X19+X20+X22+X23+X24+X1>=15; X18+X19+X20+X21+X23+X24+
36、X1+X2>=15; X19+X20+X21+X22+X24+X1+X2+X3>=15; X20+X21+X22+X23+X1+X2+X3+X4>=15; X21+X22+X23+X24+X2+X3+X4+X5>=15; X22+X23+X24+X1+X3+X4+X5+X6>=15; X23+X24+X1+X2+X4+X5+X6+X7>=35; X24+X1+X2+X3+X5+X6+X7+X8>=35; X1+X2+X3+X4+X6+X7+X8+X9>=40; X2+X3+X4+X5+X7+X8+X9+X10>=40; X3+X4+X5+X6+X8+X9+X10+X11>=4
37、0; X4+X5+X6+ X9+X10+X11+X12>=40; X5+X6+X7+X10+X11+X12+X13>=40; X6+X7+X8+X11+X12+X13+X14>=40; X7+X8+X9+X12+X13+X14+X15>=30; X7+X8+X9+X10+X13+X14+X15+X16>=30; X8+X9+X10+X11+X14+X15+X16+X17>=31; X9+X10+X11+X12+X15+X16+X17+X18>=31; X10+X11+X12+X13+X16+X17+X18+X19>=35; X11+X12+X13+X14+X17+X18+X1
38、9+X20>=35; X12+X13+X14+X15+X16+X18+X19+X20+X21>=30; X13+X14+X15+X16+X17+X19+X20+X21+X22>=30; X14+X15+X16+X17+X18+X20+X21+X22+X23>=20; X15+X16+X17+X18+X19+X21+X22+X23+X24>=20; @gin(X1);@gin(X2);@gin(X4);@gin(X5);@gin(X6);@gin(X7);@gin(X8);@gin(X9);@gin(X10);@gin(X11);@gin(X12);@gin(X13);@gin(X14
39、);@gin(15);@gin(16);@gin(X17);@gin(X18);@gin(X19);@gin(X20);@gin(X21);@gin(X22);@gin(X23);@gin(X24); End 附录-代码3: MIN=X1+X2+X3+X4+X5; X1+X2+X3+X4+X5+X6+X7+X8+X9+X10+X11+X12+X13+X14+X15+X16+X17+X18+X19+X20+X21+X22+X23+X24=90; X17+X18+X19+X20+X22+X23+X24+X1>=15;
40、 X18+X19+X20+X21+X23+X24+X1+X2>=15; X19+X20+X21+X22+X24+X1+X2X+X3>=15; X20+X21+X22+X23+X1+X2+X3+X4>=15; X21+X22+X23+X24+X2+X3+X4+X5>=15; X22+X23+X24+X1+X3+X4+X5+X6>=15; X23+X24+X1+X2+X4+X5+X6+X7>=35; X24+X1+X2+X3+X5+X6+X7+X8>=35; X1+X2+X3+X4+X6+X7+X8+X9>=40; X2+X3+X4+X5+X7+X8+X9+X10>=40; X
41、3+X4+X5+X6+X8+X9+X10+X11>=40; X4+X5+X6+ X9+X10+X11+X12>=40; X5+X6+X7+X10+X11+X12+X13>=40; X6+X7+X8+X11+X12+X13+X14>=40; X7+X8+X9+X12+X13+X14+X15>=30; X7+X8+X9+X10+X13+X14+X15+X16>=30; X8+X9+X10+X11+X14+X15+X16+X17>=31; X9+X10+X11+X12+X15+X16+X17+X18>=31; X10+X11+X12+X13+X16+X17+X18+X19>=35;
42、 X11+X12+X13+X14+X17+X18+X19+X20>=35; X12+X13+X14+X15+X16+X18+X19+X20+X21>=30; X13+X14+X15+X16+X17+X19+X20+X21+X22>=30; X14+X15+X16+X17+X18+X20+X21+X22+X23>=20; X15+X16+X17+X18+X19+X21+X22+X23+X24>=20; @gin(X1);@gin(X2);@gin(X4);@gin(X5);@gin(X6);@gin(X7);@gin(X8);@gin(X9);@gin(X10);@gin(X11);@
43、gin(X12);@gin(X13);@gin(X14);@gin(15);@gin(16);@gin(X17);@gin(X18);@gin(X19);@gin(X20);@gin(X21);@gin(X22);@gin(X23);@gin(X24); End 附录-代码4: model: MIN=Y1+Y2+Y3+Y4+Y5+Y6+Y7+Y8+Y9+Y10+Y11+Y12+Y13+Y14+Y15+Y16+Y17+Y18+Y19+Y20+Y21+Y22+Y23+Y24; Y15+Y16+Z1+Y1+Z24+Y24+Z23+Y23+Z22+Y22+Z20+Y20+Z19+Y19+
44、Z18+Y18+Z17+Y17>=15; Y16++Y17+Z2+Y2+Z1+Y1+Z24+Y24+Z23+Y23+Z21+Y21+Z20+Y20+Z19+Y19+Z18+Y18>=15; Y17+Y18+Z3+Y3+Z2+Y2+Z1+Y1+Z24+Y24+Z22+Y22+Z21+Y21+Z20+Y20+Z19+Y19>=15; Y18+Y19+Z4+Y4+Z3+Y3+Z2+Y2+Z1+Y1+Z23+Y23+Z22+Y22+Z21+Y21+Z20+Y20>=15; Y19+Y20+Z5+Y5+Z4+Y4+Z3+Y3+Z2+Y2+Z24+Y24+Z23+Y23+Z22+Y22+Z21+Y
45、21>=15; Y20+Y21+Z5+Y5+Z4+Y4+Z3+Y3+Z1+Y1+Z24+Y24+Z23+Y23+Z22+Y22>=15; Y21+Y22+Z7+Y7+Z6+Y6+Z5+Y5+Z4+Y4+Z2+Y2+Z1+Y1+Z24+Y24+Z23+Y23>=35; Y22+Y23+Z8+Y8+Z7+Y7+Z6+Y6+Z5+Y5+Z3+Y3+Z2+Y2+Z1+Y1+Z24+Y24>=35; Y23+Y24+Z9+Y9+Z8+Y8+Z7+Y7+Z6+Y6+Z4+Y4+Z3+Y3+Z2+Y2+Z1+Y1>=40; Y24+Y1+Z10+Y10+Z9+Y9+Z8+Y8+Z7+Y7+Z5+Y
46、5+Z4+Y4+Z3+Y3+Z2+Y2>=40; Y1+Y2+Z11+Y11+Z10+Y10+Z9+Y9+Z8+Y8+Z6+Y6+Z5+Y5+Z4+Y4+Z3+Y3>=40; Y2+Y3+Z12+Y12+Z11+Y11+Z10+Y10+Z9+Y9+Z7+Y7+Z6+Y6+Z5+Y5+Z4+Y4>=40; Y3+Y2+Z4+Y4+Z13+Y13+Z12+Y12+Z11+Y11+Z10+Y10+Z8+Y8+Z7+Y7+Z6+Y6+Z5+Y5>=40; Y4+Y5+Z14+Y14+Z13+Y13+Z12+Y12+Z11+Y11+Z9+Y9+Z8+Y8+Z7+Y7+Z6+Y6>=40; Y5
47、Y6+Z15+Y15+Z14+Y14+Z13+Y13+Z12+Y12+Z10+Y10+Z9+Y9+Z8+Y8+Z7+Y7>=30; Y6+Y7+Z16+Y16+Z15+Y15+Z14+Y14+Z13+Y13+Z11+Y11+Z10+Y10+Z9+Y9+Z8+Y8>=30; Y7+Y8+Z17+Y17+Z16+Y16+Z15+Y15+Z14+Y14+Z12+Y12+Z11+Y11+Z10+Y10+Z9+Y9>=31; Y8+Y9+Z18+Y18+Z17+Y17+Z16+Y16+Z15+Y15+Z13+Y13+Z12+Y12+Z11+Y11+Z10+Y10>=31; Y9+Y10+Z19
48、Y19+Z18+Y18+Z17+Y17+Z16+Y16+Z14+Y14+Z13+Y13+Z12+Y12+Z11+Y11>=35; Y10+Y11+Z20+Y20+Z19+Y19+Z18+Y18+Z17+Y17+Z15+Y15+Z14+Y14+Z13+Y13+Z12+Y12>=35; Y11+Y12+Z21+Y21+Z20+Y20+Z19+Y19+Z18+Y18+Z16+Y16+Z15+Y15+Z14+Y14+Z13+Y13>=30; Y12+Y13+Z22+Y22+Z21+Y21+Z20+Y20+Z19+Y19+Z17+Y17+Z16+Y16+Z15+Y15+Z14+Y14>=30;
49、 Y13+Y14+Z23+Y23+Z22+Y22+Z21+Y21+Z20+Y20+Z18+Y18+Z17+Y17+Z16+Y16>=20; Y14+Y15+Z24+Y24+Z23+Y23+Z22+Y22+Z21+Y21+Z19+Y19+Z18+Y18+Z17+Y17+Z16+Y16>=20; Y1+Y2+Y3+Y4+Y5+Y6+Y7+Y8+Y9+Y10+Y11+Y12+Y13+Y14+Y15+Y16+Y17+Y18+Y19+Y20+Y21+Y22+Y23+Y24 +Z1+Z2+Z3+Z4+Z5+Z6+Z7+Z8+Z9+Z10+Z11+Z12+Z13+Z14+Z15+Z16+Z17+Z18
50、Z19+Z20+Z21+Z22+Z23+Z24=80; @gin(Z1);@gin(Z2);@gin(Z3);@gin(Z5);@gin(Z6);@gin(Z7);@gin(Z9);@gin(Z9); @gin(Z10);@gin(Z11);@gin(Z12);@gin(Z13);@gin(Z14);@gin(Z15);@gin(Z16);@gin(Z17);@gin(Z18);@gin(Z19);@gin(Z20);@gin(Z21);@gin(Z22);@gin(Z23);@gin(Z24);@gin(Y1);@gin(Y2);@gin(Y3);@gin(Y5);@gin(Y6);@






