- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数学与计算科学学院 学院信息与计算科学专业 怛班
课程名称 算法分析与设计
题 目 电路布线
任务起止H期: 2010年12月20 H?2010年1月3 H
学 生姓名 ** 学 号 200*******
教研室主任指导教
教研室主任
年 月 日审查
目录
TOC \o 1-5 \h \z \o Current Document \h 第一章.问题描述 2
\o Current Document \h 第二章.问题分析 3
\o Current Document \h 2」用动态规划分析 3
\o Current Document \h 2.2用分支定界法分析 4
\o Current Document \h 第三章.问题的解决 5
\o Current Document \h 3」方案一:动态规划 5
\o Current Document \h 3.2方案二:分支定界法 6
\o Current Document \h 第四章.总结 11
第一章?问题描述
在一块电路板的上、下两端分别有n个接线柱。根据电路设计,要求用导线(ij(i))将 上端接线柱i与下端接线柱兀⑴相连,如下图。英中,兀(i),lW ivWn,是{1,2,…,n}的一个 排列。导线(I,兀⑴)称为该电路板上的第i条连线。对于任何1 W i W j Wn,第i条连线和 第j条连线相交的充要条件是兀(i)>兀①.
123456789 10
123456789 10
图1-1
在制作电路板时,要求将这n条线分布到若干个绝缘层上,在同一层上的连线不能相交。 电路布线问题要确定将哪些连线安排在第-层上,使得该层上有尽可能多的连线。换句话说, 该问题要求确定导线集Nets二{i,兀(i), 1 W i W n}的最大不想交子集。
第二章.问题分析
2.1用动态规划分析
为确定导线集Nets二{i,兀⑴,1 W i W n}的最大不想交子集,将待求解问题分解 成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解。现分析最优子结 构性质。
记 N(i,j) = n(i)) e Nets,t W i,兀⑴ W j }. N(i,j)的最大不相交子集为 MNS
(i,j)o Size(i,j)=|MNS(i,j)|o
当i二1时
(空,丿5(1)
叫皿沪I爲)U)
当il时,
j G(i)。此时,(i(i))不属于N(i,j)。故在这种情况下,N(i,j) = N(i-l,j),从而 Size(i,j)=Size(i-1 ,j)。
j ? (i)0 此时,若(i, n (i))eMNS(i,j),则对任意(t, n (i)) WMNS(i,j)有 t v i 且兀(t) n(i);否则,(t,兀(t))与(i,兀(i))相交。在这种情况下 MNS(i,j)?{(i, ))}是 N(i-1, n (i)-l) 的最大不相交子集。否则,子集 MNS(i?l,兀(i)?l)U{(i, n(i))}cN(i,j)是比MNS(i,j)更大 的N(i,j)的不相交子集。这与MNS(i,j)的定义相矛盾。
若(i, 口⑴)不属于MNS(i,j),则对任意(t,兀⑴疋MNS(i,j),有tvi。从而MNS(i,j)包含 于 N(i?l,j),因此,Size(i,j)WSize(i?l,j)。
另一方面,MNS(i-l,j)包含于 N(i,j),故又有 Size(i,j) $Size(i?l,j),从而 Size (i,j)=
Size(i-1 j)o
2.2用分支定界法分析
在布线区域叠上一个网格,该网格把布线区域划分成n Xm个方格,如图6?11a所示。 从一个方格a的中心点连接到另一个方格b的中心点时,转弯处必须采用直角,如图2-1 (b)所示。如果已经有某条线路经过一个方格,则封锁该方格。我们希望使用a和b之间 的最短路径来作为布线的路径,以便减少信号的延迟。
?1 -11
?
1 -
1
1
1
b
a)
I
!
b
a) 7 X7网格
图2?1电路布线示例
b)
b)a与b之间的电线
从起点位置a开始将它作为第一个扩展结点。与该扩展结点相邻并且可达的方格成为可 行结点被加入到活结点队列中,并且将这些方格标记为1,即从起始方格a到这些方格的距 离为1。接看,算法从活结点队列中取出对手结点作为下一个扩展结点,并将与当前扩展结 点相邻并且未标记过的方格标记为2,并存入活结点队列,这个过程一直持续到算法搜索到 目标方格b或活结点队列为空时为止。
第三章.问题的解决
3.1方案一:动态规划
经以上后分析,可电路布线问题的最优值为Size(n,n)0由该问题的最优子结构性质可知:
当i=l时,
[0,7 T(1)
Size(lJ)
文档评论(0)