< >设每天分m个课时,l表示第l个教室,p(i)(j)(k)(l)表示第i个教师第k个课时是否在第l个教室给第j个班级上课. 取值为0,1.</P>
< >约束条件 </P>
< >1) 对j求和P(i)(j)(k)(l)<=1 表示同一个教师在同一个课时同一个教室只能给一个班级上课</P>
<P>2)对i求和P(i)(j)(k)(l)<=1 表示一个班级一个课时同一教室只能有一个教师上课</P>
<P>3)对l求和(从1到m)P(i)(j)(k)(l)<=1 表示一个班级一个课时同一个教师只能在一间教室上课</P>
<P>4)对k,l求和(k从1到5*8,l从1到m)P(i)(j)(k)(l) = Pij 课时总数与所给的矩阵对应</P>
<P>从m=1开始在上面的约束条件中搜索可行解,直到找到可行解,便可得到m,也就是最少教室数</P>
<P>这个方法也许有点笨,但是编程计算是可以实现的</P>
[此贴子已经被作者于2005-11-2 13:46:31编辑过]
|