简介
配对问题就是说,A和B在一起好呢还是A和C在一起好,我个人jio得可以用在相亲上面,如果你能把自己数据化将全国另一个性别的人数据化,你就有可能找到最最最合适你自己的人生伴侣。
question
某公司准备将8个职员安排到4个办公室,每室两人。根据以往观察,已知有些职员在一起合作好,有些则不然,下表列出了两两之间的不相容程度,数字越小代表越好。问如何组合可以使总相容程度最好?
c = 9 3 4 2 1 5 6
1 7 3 5 2 1
4 4 2 9 2
1 5 5 2
8 7 6
2 3
4;
表示不相容度是上三角形的数据
code
model:
sets:
ren/1..8/;
pairs(ren, ren) | &1 #lt# &2: c,x;
endsets
data:
c = 9 3 4 2 1 5 6
1 7 3 5 2 1
4 4 2 9 2
1 5 5 2
8 7 6
2 3
4;
@text()=@table(x);!以表格形式把x的计算结果输出到屏幕;
enddata
min=@sum(pairs(i,j):c(i,j) * x(i,j));
@for(ren(i):@sum(pairs(j,i):x(j, i)) + @sum(pairs(i,k):x(i,k))=1);
@for(pairs(i,j):@bin(x(i,j)));
end
answer
1 2 3 4 5 6 7 8
1 0 0 0 0 1 0 0
2 0 0 0 0 1 0
3 0 0 0 0 1
4 1 0 0 0
5 0 0 0
6 0 0
7 0
8