以下是使用Lingo编写的8个职工分配在4个办公室的配对模型代码:
!模型:将8个职工分配到4个办公室;
SETS:
WORKERS/1..8/: ASSIGN;
OFFICES/1..4/;
ENDSETS
DATA:
!每个办公室的容量;
CAPACITY = 2, 2, 2, 2;
ENDDATA
MODEL:
!定义目标函数,最小化空闲空间;
MIN = @SUM(OFFICES(I): CAPACITY(I) - @SUM(WORKERS(J): ASSIGN(J, I)));
!每个职工只能分配到一个办公室;
@FOR(WORKERS(J): @SUM(OFFICES(I): ASSIGN(J, I)) = 1);
!每个办公室的职工数量不能超过其容量;
@FOR(OFFICES(I): @SUM(WORKERS(J): ASSIGN(J, I)) <= CAPACITY(I));
END
此模型通过定义集合、数据和目标函数,实现了将8个职工合理分配到4个办公室的任务。