我们的最优设计论文改过.docx
- 文档编号:9224414
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:16
- 大小:35.90KB
我们的最优设计论文改过.docx
《我们的最优设计论文改过.docx》由会员分享,可在线阅读,更多相关《我们的最优设计论文改过.docx(16页珍藏版)》请在冰豆网上搜索。
我们的最优设计论文改过
2011高教社杯全国大学生数学建模竞赛
承诺书
我们仔细阅读了中国大学生数学建模竞赛的竞赛规则.
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。
我们知道,抄袭别人的成果是违反竞赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。
如有违反竞赛规则的行为,我们将受到严肃处理。
我们参赛选择的题号是(从A/B/C/D中选择一项填写):
我们的参赛报名号为(如果赛区设置报名号的话):
所属学校(请填写完整的全名):
西安理工大学
参赛队员(打印并签名):
1.张晓艳
2.冉康
3.王玉
指导教师或指导教师组负责人(打印并签名):
胡钢
日期:
2011年7月26日
赛区评阅编号(由赛区组委会评阅前进行编号):
2011高教社杯全国大学生数学建模竞赛
编号专用页
赛区评阅编号(由赛区组委会评阅前进行编号):
赛区评阅记录(可供赛区评阅时使用):
评
阅
人
评
分
备
注
全国统一编号(由赛区组委会送交全国前编号):
全国评阅编号(由全国组委会评阅前进行编号):
最优控制设计
摘要
本文主要关于在计算机控制,对计算机指令控制计算机部件的问题作了具体的分析,对于使得所有部件得到控制的最少指令集合和所有部件得到控制的总长度最小的指令集合,我们建立了如下的模型。
模型一主要利用整数线性规划模型,列出所求优化问题式子,并列出约束条件,确保一个部件至少有1条指令控制,同时利用Lingo算出所有部件得到控制的最少指令的集合为13和所有部件得到控制的总长度最小长度为360。
模型二主要利用图论的思想,采用二分覆盖,指令为一个顶点集(n),部件为一个顶点集(m),如某个指令可以控制某个部件就用边连接起来.所以第一问转化为:
在n选取最少的顶点使m通过边的关系全部被选中,第二问则转化为:
当将n的点全部赋权后,在n中找出权数总和最小的顶点集,使m全部被选中。
利用这种思想,采用c编程可以很容易的求出结果,所求结果与模型一相同。
关键词:
计算机控制;整数线性规划;二分图;最小覆盖
一、问题重述
在计算机控制的过称中,一条计算机指令往往可以控制几个计算机部件,反过来,一个计算机部件一般由几条计算机指令控制。
指令有一定的长度,即在计算机的存储器中占用一定的空间。
因此,在对计算机部件的控制中需要考虑两个问题:
一是在指令集合中寻找条数最少的指令,使所有的计算机部件得到控制;二是在指令集合中寻求总长度最小的若干指令,且能使所有的计算机部件得到控制。
1、建立解决上述两个问题的数学模型;
2、设计模型的求解算法,用表1.1所列数据给出求解结果;
3、分析设计算法的复杂性和计算所得到的结果。
表1.1指令控制的部件和指令的长度
指令
指令所控制的部件
指令长度
指令
指令所控制的部件
指令长度
1
4,8,20,31,26
15
19
13,23,26,39
26
2
8,19,22,29,37
80
20
7,12,40,41
22
3
2,16,34,33,32
30
21
12,16,19,28,35
26
4
7,11,35,30
12
22
6,23,27,45
19
5
5,13,18,21
7
23
33,37,40,41
17
6
1,7,9,23,25
19
24
3,17,19,36
22
7
3,5,6,14,24
32
25
16,33,44,45
10
8
7,20,21,32,35
12
26
13,19,24,25
30
9
9,15,20,12
45
27
2,3,5,8
82
10
6,10,39,28,27
36
28
4,7,9,12,43
73
11
1,11,21,34,38
57
29
16,17,20,32
66
12
2,4,18,22,37
78
30
28,33,34,36
55
13
6,17,25,36
65
31
10,23,25,27
24
14
22,33,34,38
53
32
1,5,44,45
46
15
2,10,20,37
34
33
11,15,18,43
37
16
9,24,29,39
48
34
7,14,22,36
77
17
15,18,29,31
46
35
3,15,25,39
9
18
4,28,26,12
32
2、问题分析
计算机已经成为现代社会发展的不可取代的有利助手,而计算机控制更是遍及各个领域。
因而对计算机指令控制部件并达到最优的研究具有深远的意义。
由于一条计算机指令往往可以控制几个计算机部件,反过来,一个部件一般有几条指令控制,这两都是线性规划问题且约束条件相同,只是两个题的目标函数不同。
针对问题一:
模型一建立使得所有的部件得到控制的指令集合里的最少的指令模型。
我们利用整数线性规划模型,列出所求优化问题目标函数和约束条件,并确保一个部件至少有1条指令控制,同时利用Lingo软件算出所有部件得到控制的最少指令的集合。
模型二将第一问转化为:
在n指令集合选取最少的顶点使m通过边的关系全部被选中。
针对问题二:
仍然建立整数规划模型,依然要保证一个部件至少有1条指令控制,再用Lingo算出所有部件得到控制的总长度的最小长度。
模型二将第二问则转化为:
当将n的点全部赋权后,在n中找出权数总和最小的顶点集,使m全部被选中。
针对复杂度,我们分为时间复杂度和空间复杂度。
然后通过各自的影响因素进行分析,由此确定此模型是否正确,并且是否最合适。
三、模型假设
根据题目要求,并为了达到简化的目的,我们首先做如下假设:
1.假设每个部件都能被指令集合中一条或多条指令控制;
2.假设每条指令在运行过程中不发生逻辑错误,且每个部件均工作正常;
3.在指令控制部件的过程中我们只考虑指令和部件的对应性,而不考虑计算机指令控制过程中的延迟性等问题;
4.不考虑计算机发送指令所用的时间。
四、符号说明
符号
表示含义
第i个部件是否被第j条指令控制(0或1)
是否使用第j条指令(0或1)
第j条指令的长度
m
部件的总个数
n
部件的总条数
所用指令的总条数
所用指令的总长度
d
最小指令覆盖集合的元素个数
cov[m]
部件是否覆盖的标记数组
New[n]
各个指令控制的部件数
五、模型的建立与求解
模型一
5.1问题一的模型建立及求解
5.1.1问题一的模型建立
1)目标函数
问题一的目的是为了在指令集合中寻找条数最少的指令,使所有的计算机部件得到控制,变量xi为0-1变量,xj表示是否使用第j条指令,如果使用则xj=1,如果不使用则xj=0,所使用指令的总条数可以表示为j,则目标函数为:
(5-1)
2)约束条件
在计算机控制过程中,一条计算机指令往往可以控制几个计算机部件,反过来,一个部件一般有几条指令控制,则可以设
ij表示第i个部件接受第j条指令,若第i个部件受第j条指令控制,则
ij=1,若第i个部件不受第j条指令控制,
ij=0。
ijxj表示第i个部件总共接收到的指令条数,一个部件至少有1条指令控制。
所以约束条件为:
(5-2)
5.1.2问题一的模型求解
在考虑了目标函数及约束条件了以后,我们先做出各个部件所需要的控制表(表5.1),然后通过Lingo编程(附录1)可以得出结果(表5.2).
表5.1各部件的控制指令表
部件
控制指令
部件
控制指令
1
6,11,32
2
3,12,15,27
3
7,24,27,35
4
1,12,18,28
5
5,7,27,32
6
7,10,13,22
7
4,6,8,20,28,34
8
1,2,27
9
6,9,16,28
10
10,15,31
11
4,11,33
12
20,21,28
13
5,19,26
14
7,34
15
9,17,33,35
16
3,21,25,29,
17
13,24,29
18
5,12,17,33
19
2,21,24,26
20
1,8,9,15,29
21
5,8,11
22
2,12,14,34
23
6,19,22,31
24
7,16,26
25
6,13,26,31,35
26
19
27
22,31
28
21,30
29
2,16,17
30
4
31
1,17
32
3,8,29
33
3,14,23,25,30
34
3,11,14,30
35
4,8,21
36
13,24,30,34
37
2,12,15,23
38
11,14
39
10,16,19,35
40
20,23
41
20,23
42
10,18
43
10,28,33
44
1,18,25,32
45
9,18,22,25,32
表5.2所有部件得到控制的小指令集合
指令Xj
X2
X4
X7
X11
X12
X17
X18
所控部件
3,12,15,27
1,12,18,28
4,6,8,20,28,34
4,11,33
20,21,28
13,24,29
5,12,17,33
指令Xj
X19
X20
X28
X29
X30
X31
所控部件
2,21,24,26
1,8,9,15,29
21,30
2,16,17
4
1,17
最小指令集合为:
X2X4X7X11X12X17X18X19X20X28X29X30X31,总共为13条指令。
5.2问题二的模型建立及求解
5.2.1问题二的模型建立
首先我们引入一组变量l1,l2,l3,,,lm,其中lj表示第j条指令的长度问题二的目的是为了在指令集合中寻求总长度最小的若干指令,使所有的计算机部件得到控制.根据对问题一的分析可知,问题二同属整数线性规划问题,并得出相似模型为:
(5-3)
相应的相应的约束条件为:
(5-4)
5.2.2问题二的模型求解
同问题一,该模型属于整数规划问题,利用Lingo编程(附录2)可以得出结果:
表5.3所有部件得到控制的总长度最小的指令集合
指令Xj
X1
X3
X4
X5
X6
X7
X10
长度
15
30
12
7
19
32
36
所控部件
6,11,32
7,24,27,35
1,12,18,28
5,7,27,32
7,10,13,22
4,6,8,20,28,34
10,15,31
指令Xj
X14
X17
X19
X21
X22
X23
X24
长度
53
46
26
26
19
17
22
所控部件
7,34
13,24,29
2,21,24,26
5,8,11
2,12,14,34
6,19,22,31
7,16,26
所以最小长度为:
L=15+30+12+7+19+32+36+53+46+26+26+19+17+22=360
模型二
模型二采用集合的思想,建立两个集合,然后运用最小集合的知识,c编程计算所求结果。
5.3问题一的模型建立与求解
我们采用二分图的理论,指令为一个顶点集(n),部件为一个顶点集(m),如某个指令可以控制某个部件就用边连接起来。
所以第一问转化为:
在n选取最少的顶点使m通过边的关系全部被选中,第二问则转化为:
当将n的点全部赋权后,在n中找出权数总和最小的顶点集,使m全部被选中。
六、算法的复杂性与结果分析
1.对于时间复杂度,题目要求是使每个部件都受一条或多条指令的控制,所以对于每一个部件都要从1……35遍历每一个的指令,若结果遍历过程中发现某一条指令控制此部件,则对其加一,表示第i个部件总共接收到的指令条数。
则时间复杂度为45*35=1575,而第二问同第一问时间复杂度为45*35=1575。
2.对于空间复杂度,求解约束方程较少、数据量较小时,运行较为容易,且数据存储所占内存空间较多,运行循环过程过于复杂。
总体来说,空间复杂度所占较大。
7、模型的评价
优点:
模型采用整数线性规划模型,本身较为严密,思路清晰,分步骤逐个击破,对题目一条计算机指令往往可以控制几个计算机部件,反过来,一个部件一般有几条指令控制考虑周全,并且可以运用于实践问题,达到数学建模的根本目的,采用先进的lingo软件解决复杂程序,将问题简单化。
缺点:
当然我们对缺点也不避讳,因为知识面的局限及时间有限我们没有采用大量的文献资料来证明,且模型还有一些漏洞,以后我们会改进。
8、参考文献
[1]沈继红,施久玉,张晓威.数学建模[M].哈尔滨:
哈尔滨工程大学出社,2000.
[2]何建坤.实用线性规划及计算机程序[M].北京:
清华大学出版社,1985
(2)
[3]胡运权.运筹学基础及应用[M].哈尔滨:
哈尔滨工业大学出版社,1998(5).
[4]西北工业大学应用数学系.线性代数[M].西安:
西北工业大学出社,1998(3).
1、将参考文献用[1][2]…上标在文档中标出(在比赛评卷时非常重要)
2、公式用5-1,5-2…标出,表格和图也是
3、参考文献另起一页
4、标题用黑体,不是宋体加黑
5、文章中涉及的字母和数字用新罗马字体(TimesNewRoman)
6、图表很重要,就是曲线图之类的,尽量加一些有用的上去,但也不能过多
7、摘要太少了,500字左右,到关键词结束差不多占了一页的3/4
附录
附录1:
model:
sets:
zhiling/1..35/:
X;
bujian/1..45/:
B;
shuju(bujian,zhiling):
a;
endsets
data:
a=
00000100001000000000000000000001000
00100000000100100000000000100000000
00000010000000000000000100100000001
10000000000100000100000000010000000
00001010000000000000000000100001000
00000010010010000000010000000000000
00010101000000000001000000010000010
11000000000000000000000000100000000
00000100100000010000000000010000000
00000000010000100000000000000010000
00010000001000000000000000000000100
00000000000000000001100000010000000
00001000000000000010000001000000000
00000010000000000000000000000000010
00000000100000001000000000000000101
00100000000000000000100010001000000
00000000000010000000000100001000000
00001000000100001000000000000000100
01000000000000000000100101000000000
10000001100000100000000000001000000
00001001001000000000000000000000000
01000000000101000000000000000000010
00000100000000000010010000000010000
00000010000000010000000001000000000
00000100000010000000000001000010001
00000000000000000010000000000000000
00000000000000000000010000000010000
00000000000000000000100000000100000
01000000000000011000000000000000000
00010000000000000000000000000000000
10000000000000001000000000000000000
00100001000000000000000000001000000
00100000000001000000001010000100000
00100000001001000000000000000100000
00010001000000000000100000000000000
00000000000010000000000100000100010
01000000000100100000001000000000000
00000000001001000000000000000000000
00000000010000010010000000000000001
00000000000000000001001000000000000
00000000000000000001001000000000000
00000000010000000100000000000000000
00000000010000000000000000010000100
10000000000000000100000010000001000
00000000100000000100010010000001000;
enddata
min=@sum(zhiling:
X);
@for(bujian(j):
@sum(zhiling(i):
X(i)*a(j,i))>=1);
@for(zhiling:
@bin(X));
end
附录2:
sets:
zhiling/1..35/:
X,l;
bujian/1..45/:
B;
shuju(bujian,zhiling):
a;
endsets
data:
a=00000100001000000000000000000001000
00100000000100100000000000100000000
00000010000000000000000100100000001
10000000000
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 我们 最优设计 论文 改过
![提示](https://static.bdocx.com/images/bang_tan.gif)