- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
最优控制设计.
最优控制设计
摘要
计算机已经成为现代社会发展的不可取代的有利助手,而计算机控制更是遍及各个领域。用尽可能少的指令去控制部件,用尽可能短的指令集合去控制部件将大大的简化控制过程,大大的方便控制。 因而对计算机指令控制部件并达到最优的研究具有深远的意义。
针对问题一我们建立了整数线性规划模型。得到了所有部件得到控制的最少指令的集合为13的结果
针对问题二我们建立了整数线性规划模型。得到了所有部件得到控制的总长度最小长度为360的结果。
针对问题三由于此题模型0—1线性规划问题,我们采用单纯形法对所建立的模型进行了求解。
针对问题四提出的算法复杂度,我们根据现代计算机软件相关理论,从时间复杂度和空间复杂度两个方面逐一论述了单纯形法在两个方面的复杂度。具体来说时间复杂度为1575,空间复杂度由于数据量大,导致其空间复杂度相对较复杂。
一·问题重述
在计算机控制过程中,一条计算机指令往往可以控制几个计算机部件,反过来,一个部件一般由几条指令控制。一个基本的问题是,在指令集合里寻找最少的指令,使得所有的部件得到控制;另一个问题是,当给定每条指令的长度时,在指令集合里,寻求总长度最小的若干指令,使得他们可以控制全部部件。
对于上面两个问题,建立如下两个数学模型:
1·建立使得所有部件得到控制的最少指令集合;
2·建立使得所有部件得到控制的总长度最小的指令集合。
再给出指令控制的部件和指令的长度后如表1所示,用所建立的数学模型对表1所列的数据求出结果。
3·设计模型的求解算法,用表1-1中所列的数据给出求解结果;
4·分析所设计算法的复杂性和计算所得到的结果。
二·问题分析
由于一条计算机指令往往可以控制几个计算机部件,反过来,一个部件一般有几条指令控制,这两都是线性规划问题且约束条件相同,只是两个题的目标函数不同。
针对问题一:建立使得所有的部件得到控制的指令集合里的最少的指令模型。我们利用整数线性规划模型,列出所求优化问题目标函数和约束条件,并确保一个部件至少有1条指令控制,同时求出所有部件得到控制的最少指令的集合。
针对问题二:仍然建立整数规划模型,依然要保证一个部件至少有1条指令控制,再求出所有部件得到控制的总长度的最小长度。
针对问题三:因为本题中两个问题均是线性规划问题且约束条件相同,只是目标函数略有不同,对此,我们选取单纯形法求解。单纯形法是线性规划问题的一般解法,其基本思想是寻找一个基的可行解(极点),便可以通过有限步的迭代找到问题的最优解。
针对问题四:从时间的复杂性和空间的复杂性两个方面进行分析。
三·模型假设
1·一条计算机指令往往可以控制几个计算机部件,反过来,一个部件一般有几条指令控制。
2·计算机部件都完好,不会出现因部件不佳而造成指令的无法控制。
3·不考虑计算机指令之间的相互冲突。
4·不考虑计算机发送指令所用的时间。
?
四·符号使用及说明
: 第条指令控制第各部件;
: 是否使用第条指令;
: 第条指令的长度;
: 指令的总条数;
: 部件的总个数;
: 所用指令的总条数;
: 所用指令的总长度;
五·模型的建立与求解
问题一的模型:
问题一的目的是为了在指令集合中寻找条数最少的指令,使得所有的部件得到控制,表示是否使用第条指令, ,所使用指令的总条数可以表示为,因此目标函数为:。约束条件:我们可以用表示第条指令和第个部件的关系, ,易知表示第个部件是否得到指令集合中一条或多条指令控制,当时,表示第个部件得到指令集合中至少一条指令的控制。
目标函数:
约束条件:
解得:最小指令集合为:
,,,,,,,,,,,, ;
总共为13条指令。
问题二的模型:
首先我们引入一组变量其中表示第条指令的长度。问题二的目的是为了在指令集合中寻求总长度最小的若干指令,使得所有的部件得到控制,根据对问题一的分析可知,问题二仍未整数线性规划问题,整数规划模型为:
目标函数:
约束条件:
解得:
表2所有部件得到控制的总长度最小的指令集合
指令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=36
文档评论(0)