```
建模初级:
合理安排值班员问题的解答
一、问题分析
二、模型假设与符号说明
将4名学生和2名老师分别编号为1,2,3,4,5,6;设 为编号i在周j的值班时间,
,
用 代表编号 在周 最多可值班的值班时间, 为编号 的每小时的报酬,则问题有下面的0-1规划模型
三、模型建立
模型编程:
MODEL:
sets:
num_i/1..6/:c;
num_j/1..7/;
link(num_i, num_j):a,x,y;
num_k/1..4/;
endsets
data:
c=@file(d:\练习数据.txt);
a=@file(d:\练习数据.txt);
@text(‘d:\练习结果.txt’)=x,y;
enddata
[OBJ] min=@sum(link(i,j):c(i)x(i,j));
@for(link(i,j):2y(i,j)<=x(i,j);x(I,j)<=a(i,j)*y(i,j););
@for(num_k(k):@sum(num_j (j):x(k,j))>=10;);
@sum(num_j (j):x(5,j))>=8;
@sum(num_j (j):x(6,j))>=8;
@for(num_j (j):@sum(num_i (i):x(i,j))=14;);
@for(num_i (i):@sum(num_j (j):y(i,j))<=4;);
@for(num_j (j):@sum(num_i (i):y(i,j))<=3;);
@for(num_j (j):y(5,j)+y(6,j)>=1;);
@for(link(i,j):@GIN(x(i,j));x(i,j)>=0;);
@for(link(i,j):@BIN(y(i,j));y(i,j)>=0;);
END
五、模型结果分析:
运行该程序可以得到结果如下:
最优值 .
由结果可得聘用兼职值班员的值班表如下表所示.每周所需要的总费用为1423元,是最低的安排方案.
值班员
代 号 值班时间
(小时) 每天安排的值班员及时间
周一 周二 周三 周四 周五 周六 周日
1
2
3
4
5
6 19
10
37
11
13
8 6 6 7
4 6
8 5 12 12
5 6
3 2 6 2
2 2 2 2
```