负责工业工程设计课程的教授面临着将28名学生分配到8个项目的问题。每个学生必须被分配到一个项目,每个项目组必须有3或4个学生。已要求学生对项目进行排名,其中1为最佳排名,较高数字为较低排名。
a)为此问题制定OPL模型。
b)解决下表分配的分配问题:
A ED EZ G H1 H2 RB SC
Allen 1 3 4 7 7 5 2 6
Black 6 4 2 5 5 7 1 3
Chung 6 2 3 1 1 7 5 4
Clark 7 6 1 2 2 3 5 4
Conners 7 6 1 3 3 4 5 2
Cumming 6 7 4 2 2 3 5 1
Demming 2 5 4 6 6 1 3 7
Eng 4 7 2 1 1 6 3 5
Farmer 7 6 5 2 2 1 3 4
Forest 6 7 2 5 5 1 3 4
Goodman 7 6 2 4 4 5 1 3
Harris 4 7 5 3 3 1 2 6
Holmes 6 7 4 2 2 3 5 1
Johnson 2 2 4 6 6 5 3 1
Knorr 7 4 1 2 2 5 6 3
Manheim 4 7 2 1 1 3 6 5
Morris 7 5 4 6 6 3 1 2
Nathan 4 7 5 6 6 3 1 2
Neuman 7 5 4 6 6 3 1 2
Patrick 1 7 5 4 4 2 3 6
Rollins 6 2 3 1 1 7 5 4
Schuman 4 7 3 5 5 1 2 6
Silver 4 7 3 1 1 2 5 6
Stein 6 4 2 5 5 7 1 3
Stock 5 2 1 6 6 7 4 3
Truman 6 3 2 7 7 5 1 4
Wolman 6 7 4 2 2 3 5 1
Young 1 3 4 7 7 6 2 5
有多少学生被分配第二或第三选择?
c)有些项目比其他项目更难以在没有汽车的情况下到达。因此,希望分配给每个项目的至少一定数量的学生必须拥有一辆汽车;项目的数字因项目而异,如下:A ED EZ G H1 H2 RB SC
1 0 0 2 2 2 1 1
有车的学生是Chung,Demming,Eng,Holmes,Manheim,Morris,Nathan,Patrick,Rollins和Young。
修改模型以添加此汽车约束并再次解决问题。必须为多少学生分配第二或第三选择?
我将文件编码为a)& b)但我陷入了c)。 任何人都可以帮助逻辑吗?甚至放大就足够了
答案 0 :(得分:0)
让C_i
成为指标矩阵(输入):C_i = 1
如果学生i
有车,否则为0。我假设您有以下决策变量:
x_ij = 1 if student i is assigned to project j; 0 otherwise
然后c)约束我可以建模如下
sum_i C_i * x_ij >= b_j for all j
其中b_j
是
j A ED EZ G H1 H2 RB SC
b_j 1 0 0 2 2 2 1 1