发明名称 基于多属性熵权合成的软件可信等级评估方法
摘要 本发明公开了一种基于多属性熵权合成的软件可信等级评估方法,首先定义待评软件的可信属性集合并获取支持这些可信属性的证据项,根据证据类型不同,对每一个可信证据进行度量,获取度量结果,然后获取软件可信证据对软件可信属性的基本信任分配函数,对软件可信证据进行分类及合成,利用不确定熵计算不同证据类合成结果的权重并得到可信属性的支持度,最终确定基于规则评估软件可信等级。本发明解决了不同应用领域、不同类别的软件可信度量及可信分级问题,提高了可信评估的可靠性和真实性,解决了证据本身不确定性问题。
申请公布号 CN102222040A 申请公布日期 2011.10.19
申请号 CN201110154978.X 申请日期 2011.06.09
申请人 西北工业大学 发明人 杨刚;杨亚磊;周兴社;王涛;田青
分类号 G06F11/36(2006.01)I 主分类号 G06F11/36(2006.01)I
代理机构 西北工业大学专利中心 61204 代理人 顾潮琪
主权项 1.一种基于多属性熵权合成的软件可信等级评估方法,其特征在于包括下述步骤:步骤一:参照TRUSTIE-STC规范所定义的软件可信属性模型定义待评软件的可信属性集合H={H<sub>s</sub>|1≤s≤n,1≤n≤6,s,n∈Z},其中,H<sub>s</sub>表示软件的可信属性,n表示待评软件的可信属性的个数;步骤二:参照TRUSTIE-STC规范所定义的软件可信证据框架,获取支持这些可信属性的证据项E<sub>i</sub>,i∈N<sup>+</sup>;步骤三:根据证据类型不同,利用以下方法对每一个可信证据进行度量,获取度量结果x,0<x<1;对于定量证据,按照TRUSTIE-STC规范中软件可信属性原始度量的确切定义直接度量;对于定性证据,将其分为六个等级:level<sub>1</sub>≤60、level<sub>2</sub>=65、level<sub>3</sub>=75、level<sub>4</sub>=85、level<sub>5</sub>=90、level<sub>6</sub>≥95;<maths num="0001"><![CDATA[<math><mrow><mi>x</mi><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><mn>0</mn></mtd><mtd><mi>v</mi><mo>&lt;</mo><mo>=</mo><mn>60</mn></mtd></mtr><mtr><mtd><mn>1</mn><mo>/</mo><mn>2</mn><mo>+</mo><mn>1</mn><mo>/</mo><mn>2</mn><mi>sin</mi><mrow><mo>(</mo><mfrac><mi>&pi;</mi><mrow><mn>95</mn><mo>-</mo><mn>60</mn></mrow></mfrac><mrow><mo>(</mo><mi>v</mi><mo>-</mo><mfrac><mrow><mn>95</mn><mo>+</mo><mn>60</mn></mrow><mn>2</mn></mfrac><mo>)</mo></mrow><mo>)</mo></mrow></mtd><mtd><mn>60</mn><mo>&lt;</mo><mi>v</mi><mo>&lt;</mo><mn>95</mn></mtd></mtr><mtr><mtd><mn>1</mn></mtd><mtd><mi>v</mi><mo>></mo><mo>=</mo><mn>95</mn></mtd></mtr></mtable></mfenced></mrow></math>]]></maths>其中v是定性证据的等级;步骤四:获取D-S证据理论中软件可信证据对软件可信属性的基本信任分配函数,具体包括以下步骤:定义可信属性H<sub>s</sub>的支持度定义为可信证据对可信属性真实性相信的程度,记为W<sub>s</sub>,s=1,2,…6,将其分为6个等级,参照D-S证据理论把可信属性的六个支持度作为识别框架Θ{0,1,2,3,4,5},m<sub>i</sub>(A<sub>l</sub>)为第i个证据E<sub>i</sub>所对应的基本可信分配函数,A<sub>l</sub>是m<sub>i</sub>所对应的焦元,J(A<sub>l</sub>)是焦元A<sub>l</sub>所包含的基元个数。识别框架中的元素称为该框架下的基元,记为B<sub>j</sub>,j=0,1,2,…,5;本方案依据软件的可信性具有连续性的特点,定义焦元的集合为:R={{0},{0,1},{1},{1,2},{2},{2,3},{3},{3,4},{4},{4,5},{5},{1,2,3},{2,3,4},{3,4,5}}则A<sub>l</sub>∈R,l=1,2,…,14;步骤4.1:根据x的值和基元分配准则确定可信证据E<sub>i</sub>的基本信任分配函数对应的基元集合R<sub>i</sub>(B)={B<sub>j</sub>|j=0,1,2,…,5};确定可信证据E<sub>i</sub>的基本信任分配函数对应的焦元集<img file="FSA00000514255900012.GIF" wi="647" he="70" />所述的基元分配准则为:当x≤0.2时,可信证据的基本信任分配函数对应的基元集合为{0,1};当0.2<x≤0.4时,可信证据的基本信任分配函数对应的基元集合为{1,2,3};当0.4<x≤0.6时,可信证据的基本信任分配函数对应的基元集合为{2,3,4};当0.6<x≤0.8时,可信证据的基本信任分配函数对应的基元集合为{3,4,5};当0.8<x≤1.0时,可信证据的基本信任分配函数对应的基元集合为{4,5};步骤4.2:通过下面的可信隶属函数f(x)获取可信证据E<sub>i</sub>对应焦元A<sub>l</sub>的信任值S<sub>i</sub>(A<sub>l</sub>);<img file="FSA00000514255900021.GIF" wi="1161" he="365" />通过x代入到焦元A<sub>l</sub>的可信隶属函数中得到的信任值为S<sub>i</sub>(A<sub>l</sub>)=f(x);步骤4.3:设定门限G=0.1,获取可信证据支持的焦元集Z<sub>i</sub>={A<sub>l</sub>|S<sub>i</sub>(A<sub>l</sub>)≥G};步骤4.4:计算可信证据E<sub>i</sub>对Z<sub>i</sub>中A<sub>l</sub>的基本可信分配函数<maths num="0002"><![CDATA[<math><mrow><msub><mi>m</mi><mi>i</mi></msub><mrow><mo>(</mo><msub><mi>A</mi><mi>l</mi></msub><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><msub><mi>S</mi><mi>i</mi></msub><mrow><mo>(</mo><msub><mi>A</mi><mi>l</mi></msub><mo>)</mo></mrow></mrow><mrow><msub><mi>&Sigma;</mi><mi>l</mi></msub><msub><mi>S</mi><mi>i</mi></msub><mrow><mo>(</mo><msub><mi>A</mi><mi>l</mi></msub><mo>)</mo></mrow></mrow></mfrac><mo>,</mo><msub><mi>A</mi><mi>l</mi></msub><mo>&Element;</mo><msub><mi>Z</mi><mi>i</mi></msub><mo>;</mo></mrow></math>]]></maths>步骤五:对软件可信证据进行分类及利用D-S合成公式对分类结果进行合成:步骤5.1:获得m<sub>i</sub>(A<sub>l</sub>)对基元B<sub>j</sub>的平均支持度<img file="FSA00000514255900023.GIF" wi="479" he="127" />步骤5.2:获得m<sub>i</sub>(A<sub>l</sub>)支持的最大基元属性B<sub>i,max</sub>=max{D<sub>i</sub>(B<sub>j</sub>)};步骤5.3:获取m<sub>i</sub>(A<sub>l</sub>)所支持的基元属性集为<img file="FSA00000514255900024.GIF" wi="566" he="154" />步骤5.4:迭代前三步计算出所有m<sub>i</sub>(A<sub>l</sub>)所支持的基元属性集合Ω<sub>i</sub>;步骤5.5:获得支持基元属性的证据集合<img file="FSA00000514255900025.GIF" wi="511" he="78" />步骤5.6:通过下面公式获取支持基元属性的集类令:<maths num="0003"><![CDATA[<math><mrow><msub><mi>T</mi><mn>0</mn></msub><mo>=</mo><mo>{</mo><msub><mi>T</mi><msub><mi>B</mi><mi>j</mi></msub></msub><mo>,</mo><mi>j</mi><mo>=</mo><mn>0,1,2</mn><mo>,</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>,</mo><mn>5</mn><mo>}</mo></mrow></math>]]></maths><maths num="0004"><![CDATA[<math><mrow><msub><mi>T</mi><mn>1</mn></msub><mo>=</mo><mo>{</mo><msub><mi>T</mi><msub><mi>B</mi><mi>j</mi></msub></msub><mo>|</mo><msub><mi>T</mi><msub><mi>B</mi><mi>j</mi></msub></msub><mo>&Subset;</mo><msub><mi>T</mi><msub><mi>B</mi><mi>L</mi></msub></msub><mo>,</mo><mi>L</mi><mo>&NotEqual;</mo><mi>j</mi><mo>;</mo><mi>L</mi><mo>,</mo><mi>j</mi><mo>=</mo><mn>0,1,2</mn><mo>,</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>,</mo><mn>5</mn><mo>}</mo></mrow></math>]]></maths>从T<sub>0</sub>中删除T<sub>1</sub>得到集类T=T<sub>0</sub>/T<sub>1</sub>;则集类T中的每一个元素均表示一种证据分类的结果;令T中分类的个数定义为b,对每一分类结果利用D-S合成公式进行合成,可以得到一组合成证据M<sub>i</sub>,1≤t≤b;步骤六:利用不确定熵计算不同证据类合成结果的权重,利用该权重合成不同的证据类得到可信属性的支持度W<sub>s</sub>;步骤6.1:计算m<sub>i</sub>的不确定熵<img file="FSA00000514255900031.GIF" wi="598" he="103" />步骤6.2:计算证据的确定度<img file="FSA00000514255900032.GIF" wi="307" he="59" />步骤6.3:计算合成的证据M<sub>t</sub>的加权系数<img file="FSA00000514255900033.GIF" wi="731" he="259" />步骤6.4:对所有分类合成证据进行加权平均即为最终可信属性H<sub>s</sub>的支持度W<sub>s</sub>:<maths num="0005"><![CDATA[<math><mrow><msub><mi>W</mi><mi>s</mi></msub><mo>=</mo><munder><mi>&Sigma;</mi><mi>t</mi></munder><msub><mi>d</mi><mi>t</mi></msub><msub><mi>M</mi><mi>t</mi></msub><mo>,</mo><mi>t</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mi>b</mi></mrow></math>]]></maths>步骤七:确定基于规则评估软件可信等级<img file="FSA00000514255900035.GIF" wi="284" he="117" />
地址 710072 陕西省西安市友谊西路127号