- 在线时间
- 0 小时
- 最后登录
- 2012-5-13
- 注册时间
- 2012-5-13
- 听众数
- 0
- 收听数
- 0
- 能力
- 0 分
- 体力
- 12 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 6
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 4
- 主题
- 2
- 精华
- 0
- 分享
- 0
- 好友
- 3
升级   1.05% 该用户从未签到 - 自我介绍
- .。。
 |
模型要求一个多技能呼叫中心的员工排班表,每个员工有多种技能,根据技能不同来回答各种电话。要求1天里工资最小
model:
sets:
shift/i1..i3/;!3 shifts; 1共有3种班次,每班8小时
skil/q1..q10/;!10 skills; 10种技能
period/p1..p48/; !48 periods; 48个时段,每个时段15分钟,每个班次覆盖32个时段
agent/j1..j20/; !20 agents; 20个客服
Y(agent,period,skill); 中间变量,为了体现某个时段某客服只使用某种技能
cost(agent,shift):C; 员工工资,假设所有技能,所有班次工资一样
schedule(shift,agent); 班次表,某班次需要多少个客服
Amatrix(period,shift):A; 限制矩阵 如果班次i覆盖时段p,则为1,否则0
Mmatrix(agent,skill):M; 限制矩阵 如果某客服有某技能,则为1.否则为0
Bmatrix(period,skill):B; 某时段p,技能q,需要的客服人数
endsets
data:
A=1 0 0
1 0 0
1 0 0
1 0 0
1 0 0
1 0 0
1 0 0
1 0 0
1 1 0
1 1 0
1 1 0
1 1 0
1 1 0
1 1 0
1 1 0
1 1 0
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
0 1 1
0 1 1
0 1 1
0 1 1
0 1 1
0 1 1
0 1 1
0 1 1
0 0 1
0 0 1
0 0 1
0 0 1
0 0 1
0 0 1
0 0 1
0 0 1;
C=1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1;
M=0 1 0 0 1 0 0 1 0 0
1 0 0 0 1 0 0 0 0 1
0 0 1 0 0 0 0 0 1 0
0 0 0 0 1 1 0 0 0 0
0 1 0 0 0 0 0 1 0 0
0 1 1 0 0 1 0 0 0 0
0 1 0 0 0 0 1 1 0 0
0 0 1 1 1 0 0 0 0 0
0 1 1 0 0 0 0 0 0 0
0 0 0 0 0 1 1 0 1 0
0 1 0 0 0 0 1 1 0 0
0 0 1 0 0 0 0 0 1 1
0 0 0 0 1 0 0 1 0 1
0 1 0 1 1 0 0 0 0 0
0 0 1 1 0 0 0 0 0 0
0 1 0 0 1 0 0 0 0 0
0 0 0 1 0 0 0 1 1 0
0 0 1 0 1 0 0 1 0 0
0 0 0 1 0 0 0 1 0 1
0 1 0 0 0 0 0 1 1 1;
B=1 7 3 3 3 3 2 3 3 2
1 6 5 4 3 3 1 3 4 2
1 7 5 3 2 3 2 3 4 3
1 6 3 3 2 3 2 4 4 3
1 7 4 3 4 1 3 3 3 3
1 7 4 3 6 4 2 3 3 3
1 3 4 4 5 3 2 5 4 2
1 6 5 3 3 2 2 4 3 3
1 5 4 3 3 3 1 5 4 2
1 4 4 2 4 4 2 4 3 4
1 4 5 2 4 3 3 5 4 2
1 5 3 3 5 1 1 5 3 2
1 4 5 3 3 2 1 3 3 2
1 6 4 3 4 3 1 3 3 3
1 3 5 3 4 1 1 4 3 4
1 5 4 4 3 4 2 3 3 3
1 5 4 3 4 3 2 4 4 2
1 4 5 3 4 3 2 4 3 2
1 4 3 4 4 3 2 3 3 2
1 6 4 3 5 2 1 3 4 3
1 5 3 3 4 2 3 7 3 2
1 4 3 3 4 4 2 4 3 2
1 5 4 3 2 4 2 5 3 3
1 6 6 2 2 2 3 5 3 3
1 5 3 3 4 2 2 4 3 3
1 4 5 4 4 2 1 3 3 2
1 6 3 3 4 3 2 3 3 2
1 4 4 5 3 2 2 6 3 3
1 5 4 3 3 3 2 4 3 3
1 5 4 4 3 3 2 5 4 3
1 5 3 3 3 3 1 4 3 2
1 5 4 3 4 2 1 2 3 3
1 4 5 3 3 3 3 3 3 3
1 5 4 4 2 2 2 4 2 4
1 7 3 3 3 2 3 5 4 3
1 4 6 2 5 2 1 4 3 3
1 3 4 3 4 4 2 5 4 3
1 5 3 4 3 4 2 4 4 2
1 7 4 3 3 3 2 5 3 3
1 5 5 4 3 3 1 5 3 4
1 4 4 3 4 3 2 2 2 2
1 4 5 3 4 4 2 4 2 3
1 6 3 5 3 2 2 4 3 2
1 5 4 4 3 3 1 3 4 2
1 5 4 2 5 2 2 4 3 2
1 5 3 4 4 3 2 4 3 3
1 4 5 2 3 2 2 4 3 5
1 5 5 2 2 3 1 4 3 2;
enddata
min=@sum(links: cost*schedule); 目标函数
@for(skill(q) for(period(p) sum(agent(j):Y(j,p,q))>=B(p,q)));
@for(agent(j) @for(period(p) A(p,i)*schedule(i,j)>=@sum(skill(q):Y(j,p,q))))));
@for(agent(j) for(period(p) @for(skill(q) A(p,i)*schedule(i,j))*M(j,q)>=Y(j,p,q)))));
end
运行总显示syntax error,新人求指点 |
zan
|