动态规划---->可靠性设计
1、可靠性设计
可靠性设计:一个系统由n级设备串联而成,为了增强可靠性,每级都可能并联了不止一台同样的设备。所以每级用的设备越多系统的可靠性越高。但是设备都是有成本的,假定设备Di的成本是ci,设计该系统允许的投资不超过c,那么,该如何设计该系统(即各级采用多少设备)使得这个系统的可靠性最高。试设计一个动态规划算法求解可靠性设计。
如果第i级的设备Di的台数为mi,那么这mi台设备同时出现故障的概率为(1-ri)mi ,从而第i级的可靠性就变成1-(1-ri)mi 。例如,假定ri=0.99 ,mi=2,于是这一级的可靠性就是0.9999。不过在任何实际系统中, 每一级的可靠性要比1-(1-ri)mi 小一些, 这是由于这些开关线路本身并不是完全可靠的, 而且同一类设备的失误率也不可能是完全独立的(例如, 由于设计不当所造成的失误) 。基于以上分析, 不妨假设第i 级的可靠性由函数φ(mi)给定, 1≤i≤n 。由于系统中每种设备至少有一台,用ui表示最多的台数。
2、例子
设计一个由设备D1,D2 ,D3 组成的三级系统。每台设备的成本分别为30元,15元和20元, 可靠性分别是0.9 , 0.8 和0.5 , 计划建立该系统的投资不得超过105元。假定, 若i级有mi台设备Di并联, 则该级的可靠性φ(mi) = 1-(1-ri)mi 。上述条件可以表示为: c=105; c1=30 , c2=15 , c3=20 ; r1=0.9 , r2=0.8 , r3=0.5。由此立即可得: u1=2 , u2 =3 ,u3 =3。
求解过程
Sij 表示对第i个设备选择 j 个
Si 包含了第i个设备所有可能的情况。
S(i,j),Si的值都是前面代表可靠性,后面代表价格。
支配:花了更多的钱,可靠性反而低,可以删除。
S11 = { (0 .9 , 30) } S12 = {( 0 .99 , 60) } 得S1 = { (0 .9 , 30) , ( 0 .99 , 60) } 由S21 = { (0 .72 , 45 ) , (0 .792 , 75) } S22 = {( 0 .864 , 60 )} S23 = {( 0 .8928 , 75) } 得S2 = { (0 .72 , 45 ) , (0 .864 , 60) , ( 0 .8928 , 75) } 注意: S22中已删去了由(0 .99 , 60 )所得到的序偶( 0 .9504 , 90) 。因为这只剩下15 元, 不足以让m3 = 1。 说明: 归并时由于( 0 .792 , 75 )受( 0 .864 , 60 )支配, 故舍去。 由 S31= { (0 .36 , 65 ) , (0 .432 , 80) , ( 0 .4464 , 95) } S32= { (0 .54 , 85 ) , (0 .648 , 100 )} S33= { (0 .63 , 105) } 得S3 = { (0 .36 , 65 ) , (0 , 432 , 80) , ( 0 .54 , 85) , ( 0 .648 , 100) } 最优设计有0 .648 的可靠性, 需用资金100 元。通过对这些Si 的回溯, 求出m1 = 1 , m2= 2 , m3 = 2 。 |