整数规划最优选课问题文档格式.docx
《整数规划最优选课问题文档格式.docx》由会员分享,可在线阅读,更多相关《整数规划最优选课问题文档格式.docx(33页珍藏版)》请在冰豆网上搜索。
建立数学规划模型:
上述问题中的决策变量只取0或1,称为0-1规划,是一种特殊的整数规划,下面求解该问题。
程序1如下:
Minx1+x2+x3+x4+x5+x6+x7+x8+x9+x10+x11+x12+x13+x14+x15+x16+x17+x18
Subjectto
5x1+5x2+4x3+4x4+3x5+3x6+3x7+2x8-y1=0
3x9+3x10+3x11+2x12+2x13+2x14+x15+x16+x17+x18-y2=0
y1+y2-y=-2
y>
=20
6y2-y>
=0
3y2-y<
x1-x5>
x2-x7>
x8-x9>
x6-x10>
x4-x11>
x5-x12>
x7-x13>
x6-x14>
x5+x6+x7+x8>
=1
end
int18
运行结果为:
,其他
即至少要选课程编号为1,4,6,10,11。
该整数规划的最优解不唯一。
一般的,得到一个整数规划的全部最优解是很困难度的。
下面笔者通过对变量的约束进行了隐式枚举的方法给出具体解,方法如下:
在以上的程序中每次添加
这样经过36次运算,得到的解如下表所示:
表⑴:
约束变量
选课方案
限选课学分数
任选课学分数
所得总学分
x1=0
2,4,6,10,11
12
6
20
x1=1
1,2,6,10,14
13
5
x2=0
1,4,6,10,11
x2=1
x3=0
x3=1
1,3,4,11,15,16
x4=0
x4=1
x5=0
x5=1
1,4,5,11,12,18
x6=0
1,2,4,11,15
14
4
x6=1
x7=0
x7=1
2,4,7,11,13,18
x8=0
x8=1
1,2,4,8,9,11
16
24
x9=0
x9=1
1,4,6,8,9,10
22
x10=0
x10=1
x11=0
x11=1
x12=0
x12=1
x13=0
x13=1
x14=0
x14=1
x15=0
x15=1
x16=0
x16=1
1,2,4,11,16
x17=0
x17=1
1,2,4,11,17
x18=0
x18=1
1,2,4,11,18
注:
其中数字1,4,6,10,11表示该方案中所选课程的代号,以下表格中相同。
通过对比筛选得最优选课方案如下表所示:
表⑵:
序列号
1
2
3
问题分析:
通过运行程序得到的最优选课方案共有3种,这3种方案所得学分恰好是20。
为了得到20学分选5门课程即可,即表二中的3种选课方案。
这些结果反映了课程1、2、4、6、10、11、14应比较优先考虑。
问题2
建立数学规划模型
程序2如下:
Maxx1+x2+x3+x4+x5+x6+x7+x8+x9+x10+x11+x12+x13+x14+x15+x16+x17+x18
y=20
运行结果为
即至多可选课程的代号为1,3,5,8,15,16,17,18。
下面笔者如问题一样通过对变量的约束惊醒隐式枚举的方法给出具体解,结果如下:
表⑶:
2,4,7,8,15,16,17,18
1,5,6,8,12,15,16,17
1,3,6,8,15,16,17,18
2,3,7,8,15,16,17,18
1,4,6,8,15,16,17,18
2,3,6,8,15,16,17,18
2,4,6,8,15,16,17,18
1,5,6,8,14,15,16,17
1,3,5,8,15,16,17,18
2,6,7,8,14,15,16,17
2,3,7,13,15,16,17,18
3,4,6,8,9,16,18
3,4,6,8,10,16,18
3,4,6,8,11,16,18
1,4,5,12,15,16,17,18
2,4,7,13,15,16,17,18
1,4,6,14,15,16,17,18
2,6,7,8,14,16,17,18
2,6,7,8,14,15,17,18
2,6,7,8,14,15,16,18
通过筛选得得出18个最优解:
表⑷:
2,6,7,8,13,15,16,17
1,4,5,8,15,16,17,18
7
8
9
10
11
2,3,6,14,15,16,17,18
15
1,3,5,12,15,16,17,18
17
18
注:
其中数字1,3,5,8,15,16,17,18表示该方案中所选课程的代号,以下表格中相同。
程序得到的最优选课方案共18种,这18种方案所得总学分是20,为了得到20学分最多可选8门课程,即表二中的18种选课方案。
这些结果还反映了课程在满足学校要求的前提下,学生能多学知识,课程15,16,17,18较容易被考虑。
问题3
我们作如下假设:
a)1、2、3、4四门课限选人数最多为第一层次;
5,6,7,8为第二层次;
9、10、11、12、14、15、16为第三层次;
13、17、18限选人数最少为第四层次,且各层次所占权重依次为
(实际问题时:
计算每个层次各科限选人数总和与18门课程限选人数总和之比,并以此作为该层次所占的权重)。
b)每种方案中属于第
层的科目数为
,方案的课程总数为
(我们只考虑满足学校要求时
这四种情况)。
以
作为选课的衡量参数,其中
越大说明此方案越优,
越小此方案就越差。
c)第
层次先选人数要比第
层次限选人数少的多(
);
d)同层次之间各科限选人数相差几乎不大;
e)学生所修学分总数达到学校要求即可;
f)课程先选者先入,人数满时不能再选此课程。
由第二问可以知道,在学生所修学分总数达到学校要求即可的前提下选修课程最多为8门课,故只需讨论7门课和6门课两种情况,再依据前面问题1、问题2可得出此问题的解答。
学分为20分,选7门课程满足条件如下要求:
借助LINDO软件,程序3运用隐式枚举方法,通过筛选后得到如下最优解:
表⑸:
2,4,7,11,16,17,18
3,4,6,8,11,17,18
1,4,6,11,15,16,18
1,5,6,8,12,14,16
2,3,6,8,14,16,17
1,2,7,13,16,17,18
1,4,5,11,16,17,18
2,4,6,11,16,17,18
1,4,6,11,16,17,18
1,4,6,11,15,17,18
3,4,6,8,9,17,18
2,4,6,10,16,17,18
3,4,6,8,9,16,17
1,2,5,12,16,17,18
2,6,7,8,13,14,15
1,2,7,13,15,17,18
2,4,7,11,15,17,18
19
2,4,7,11,15,16,18
同理选6门课情形的最优解,运用程序4筛选后得到如下最优解如下:
表⑹:
1,4,7,8,9,18
2,4,7,8,11,18
1,4,6,11,14,15
1,4,5,11,12,17
2,3,7,8,9,18
2,4,7,8,9,18
1,4,6,11,14,18
1,4,5,8,11,18
2,4,6,8,10,18
2,4,6,11,14,18
2,4,7,11,13,17
1,2,6,10,17,18
1,3,6,10,14,18
2,6,7,8,9,13
2,4,6,10,14,18
1,2,6,10,15,17
1,2,6,10,16,17
2,4,7,8,9,17
21
1,2,6,10,16,18
下面通过公式:
计算各种方案下的
值:
表⑺:
层次数
科目数
方案
第一层次(1、2、3、4)
第二层次(5、6、7、8)
第三层次(9、10、11、12、14、15、16)
第四层次(13、17、18)
权重
0.4
0.3
0.2
0.1
五门课
六门课
0.333333333
0.283333333
0.266666667
0.25
七门课
0.271428571
0.257142857
0.242857143
0.228571429
八门课
0.2375
0.225
通过观察分析表格我们可以看到:
1选修五门课时,方案1、2、3的
值在同组中相同,即各方案没有优劣之分;
2选修六门课时,方案6、1、2、3、7、9、10、20的
值相同且在同组中较大,优先考虑;
3选修七门课时,方案4、5、10、14的
4选修八门课时,3、9、18、1、2、4、47、8、13的
值相同且在同组中较大,优先考虑。
又注意到课程15、16、17、18的学分都为1,除人数限制外,没有其他约束条件,在涉及到这四门课程的方案中,如有其中的一门或几门已选满可以考虑这四门课程中剩余的课程来补充,以满足学校对学分的要求。
四、模型分析
本文中我们利用了0-1整数规划建立了学生选课策略模型,根据学校规定建立目标函数和约束条件,对模型进行求解并分类讨论了多种选课方案的可行性,进而而选出最优选课方案,以提高模型的而实用型。
此模型的缺点是我们不能一一列举出所有的解以供学生做出最优的选课方案,只能是在满足学校对学分要求的前提下得出一些较优的选课方案,为此还需要我们进行进一步探讨。
五、模型推广
若考虑学生的学习兴趣,课程的难易程度,则根据实际情况可以按照上述的方法分别赋予它们相应的参数:
学生对第
门课的喜欢程度表示为
(
越大表示学生对该门课越喜欢);
第
门课的难易程度表示为
越大表示该课程对学生来说越难)。
接下来我们考虑学生对将要选取的方案中课程的的期望。
一般情况下,学生总是希望所选的课程既是自