发明名称 一种分层次的双向近似推理技术
摘要 本发明公开了一种分层次的双向近似推理技术,包括基于Scale/Move变换的正向模糊插值技术和Backward fuzzy rule interpolation(B‑FRI)逆向模糊插值技术,与现有技术相比,本发明从逆向追朔的角度出发,基于反向模糊插值的双向近似推理方法可以同时分析具有不完备和不一致特征的数据(规则)集。运用该方法可以通过对不完备不一致数据进行双向插值计算并得到决策结果。该方法预计将能大大减少推理过程中的计算复杂度,同时保证结论的准确性。为实际的应用系统提供一种灵活的,快速的近似计算推理方法支持。
申请公布号 CN106447043A 申请公布日期 2017.02.22
申请号 CN201610681812.6 申请日期 2016.08.17
申请人 重庆科技学院 发明人 金尚柱;彭军;江燕玲
分类号 G06N5/04(2006.01)I 主分类号 G06N5/04(2006.01)I
代理机构 北京科亿知识产权代理事务所(普通合伙) 11350 代理人 汤东凤
主权项 一种分层次的双向近似推理技术,其特征在于:包括基于Scale/Move变换的正向模糊插值技术和Backward fuzzy rule interpolation(B‑FRI)逆向模糊插值技术,所述基于Scale/Move变换的正向模糊插值技术:主要包括如何形成中间变量,中间变量的缩放,中间变量到观测值的位移,以及不同模糊集的不同变换方法;为了不失一般性,正向模糊插值公式表示如下:<maths num="0001"><math><![CDATA[<mrow><msubsup><mi>B</mi><mi>l</mi><mo>*</mo></msubsup><mo>=</mo><msub><mi>f</mi><mrow><mi>F</mi><mi>R</mi><mi>I</mi></mrow></msub><mrow><mo>(</mo><mo>(</mo><mrow><msubsup><mi>A</mi><mn>1</mn><mo>*</mo></msubsup><mo>,</mo><mo>...</mo><mo>,</mo><msubsup><mi>A</mi><mi>l</mi><mo>*</mo></msubsup><mo>,</mo><mo>...</mo><mo>,</mo><msubsup><mi>A</mi><mi>M</mi><mo>*</mo></msubsup></mrow><mo>)</mo><mo>,</mo><mo>(</mo><mrow><msub><mi>R</mi><mi>i</mi></msub><mo>,</mo><mo>...</mo><mo>,</mo><msub><mi>R</mi><mi>t</mi></msub></mrow><mo>)</mo><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001081465970000011.GIF" wi="1269" he="86" /></maths>这里f<sub>FRI</sub>表示从M个前件<img file="FDA0001081465970000012.GIF" wi="403" he="71" />使用一组选定的“最近的”规则(R<sub>i</sub>,…,R<sub>t</sub>),采用内部插值或外部插值的方法,推导出结论<img file="FDA0001081465970000013.GIF" wi="59" he="64" />的过程;由于梯形和和三角形是实际应用中最常使用的模糊隶属度函数,三角形函数又是梯形函数的特殊形式,因此,梯形隶属度函数被选用来描述该算法,对于一个给定的梯形函数A,Rep(A)称作代表值,Rep(A)被定义为(a<sub>0</sub>,a<sub>1</sub>,a<sub>2</sub>,a<sub>3</sub>)四个点的重心:<maths num="0002"><math><![CDATA[<mrow><mi>Re</mi><mi>p</mi><mrow><mo>(</mo><mi>A</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><msub><mi>a</mi><mn>0</mn></msub><mo>+</mo><mfrac><mrow><msub><mi>a</mi><mn>1</mn></msub><mo>+</mo><msub><mi>a</mi><mn>2</mn></msub></mrow><mn>2</mn></mfrac><mo>+</mo><msub><mi>a</mi><mn>3</mn></msub></mrow><mn>3</mn></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001081465970000014.GIF" wi="1013" he="183" /></maths>这里a<sub>0</sub>,a<sub>3</sub>分别代表最左端和最右端隶属度为0的点,a<sub>1</sub>,a<sub>2</sub>表示normal点(即隶属度为1)。其推理过程如下:第一步:确定距离最近的N条规则:对于一个给定规则库,一条模糊规则R包含M个前件A<sub>k</sub>,k=1,2,…,M,观测值O可以用如下形式表示:R:IF x<sub>1</sub> is A<sub>1</sub>,…,and x<sub>k</sub> is A<sub>k</sub>,…,and x<sub>M</sub> is A<sub>M</sub>,THEN y is BO:<img file="FDA0001081465970000019.GIF" wi="541" he="86" />任意一条规则R和观测值O之间的距离d通过聚合所有它们前件值距离的计算结果来确定:<maths num="0003"><math><![CDATA[<mrow><mi>d</mi><mo>=</mo><msqrt><mrow><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><mi>d</mi><msup><mrow><mo>(</mo><msub><mi>A</mi><mi>k</mi></msub><mo>,</mo><msubsup><mi>A</mi><mi>k</mi><mo>*</mo></msubsup><mo>)</mo></mrow><mn>2</mn></msup></mrow></msqrt><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001081465970000018.GIF" wi="1012" he="159" /></maths>这里<maths num="0004"><math><![CDATA[<mrow><mi>d</mi><mrow><mo>(</mo><msub><mi>A</mi><mi>k</mi></msub><mo>,</mo><msubsup><mi>A</mi><mi>k</mi><mo>*</mo></msubsup><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><mi>d</mi><mrow><mo>(</mo><mi>Re</mi><mi>p</mi><mo>(</mo><msub><mi>A</mi><mi>k</mi></msub><mo>)</mo><mo>,</mo><mi>Re</mi><mi>p</mi><mo>(</mo><msub><mi>A</mi><mi>k</mi></msub><mo>)</mo><mo>)</mo></mrow></mrow><mrow><msub><mi>range</mi><mi>k</mi></msub></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001081465970000021.GIF" wi="1214" he="151" /></maths>range<sub>k</sub>=sup<sub>k</sub>‑inf<sub>k</sub>表示变量x<sub>k</sub>的值域空间,<img file="FDA0001081465970000022.GIF" wi="333" he="67" />是原始绝对距离值的归一化计算结果,这样就能保证不同物理意义的值域在表示上能过一致;最后,根据观测值<img file="FDA0001081465970000023.GIF" wi="57" he="73" />和结论B<sup>*</sup>,计算并选择出N(N≥2)条最小距离的规则。第二步:构造中间规则:设归一化因子<img file="FDA0001081465970000024.GIF" wi="90" he="68" />是第R<sub>i</sub>条规则的第k<sup>th</sup>个前件对应的权重;<maths num="0005"><math><![CDATA[<mrow><msub><mi>&omega;</mi><msubsup><mi>A</mi><mi>k</mi><mi>i</mi></msubsup></msub><mo>=</mo><mfrac><msubsup><mi>&omega;</mi><msubsup><mi>A</mi><mi>k</mi><mi>i</mi></msubsup><mo>&prime;</mo></msubsup><mrow><msubsup><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></msubsup><msubsup><mi>&omega;</mi><msubsup><mi>A</mi><mi>k</mi><mi>i</mi></msubsup><mo>&prime;</mo></msubsup></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001081465970000025.GIF" wi="974" he="161" /></maths>这里<img file="FDA0001081465970000026.GIF" wi="1163" he="87" />于是N条相近规则的权重将被用于计算中间变量<img file="FDA0001081465970000027.GIF" wi="63" he="64" /><maths num="0006"><math><![CDATA[<mrow><msubsup><mi>A</mi><mi>k</mi><mo>+</mo></msubsup><mo>=</mo><msubsup><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></msubsup><msubsup><mi>&omega;</mi><msubsup><mi>A</mi><mi>k</mi><mi>i</mi></msubsup><mo>&prime;</mo></msubsup><msubsup><mi>A</mi><mi>k</mi><mi>i</mi></msubsup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001081465970000028.GIF" wi="928" he="89" /></maths>然后,它们将被移动到和<img file="FDA0001081465970000029.GIF" wi="63" he="58" />具有相同代表值的坐标上<maths num="0007"><math><![CDATA[<mrow><msubsup><mi>A</mi><mi>k</mi><mo>&prime;</mo></msubsup><mo>=</mo><msubsup><mi>A</mi><mi>k</mi><mo>+</mo></msubsup><mo>+</mo><msub><mi>&delta;</mi><msub><mi>A</mi><mi>k</mi></msub></msub><msub><mi>range</mi><msub><mi>A</mi><mi>k</mi></msub></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>8</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA00010814659700000210.GIF" wi="974" he="79" /></maths>其中,<img file="FDA00010814659700000211.GIF" wi="79" he="68" />是第k<sup>th</sup>变量值域上<img file="FDA00010814659700000212.GIF" wi="61" he="57" />和<img file="FDA00010814659700000213.GIF" wi="63" he="66" />之间的偏差<maths num="0008"><math><![CDATA[<mrow><msub><mi>&delta;</mi><msub><mi>A</mi><mi>k</mi></msub></msub><mo>=</mo><mi>d</mi><mrow><mo>(</mo><msubsup><mi>A</mi><mi>k</mi><mo>*</mo></msubsup><mo>,</mo><msubsup><mi>A</mi><mi>k</mi><mo>+</mo></msubsup><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA00010814659700000214.GIF" wi="887" he="75" /></maths>类似于公式(8),位移后的中间结论值B′可以通过聚合相应的前件值A′<sub>k</sub>得到的参数<img file="FDA00010814659700000215.GIF" wi="81" he="50" />和δ<sub>B</sub>得到<maths num="0009"><math><![CDATA[<mrow><msub><mi>&omega;</mi><msup><mi>B</mi><mi>i</mi></msup></msub><mo>=</mo><mfrac><mn>1</mn><mi>M</mi></mfrac><msubsup><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></msubsup><msub><mi>&omega;</mi><msubsup><mi>A</mi><mi>k</mi><mi>i</mi></msubsup></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>10</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA00010814659700000216.GIF" wi="1046" he="95" /></maths><maths num="0010"><math><![CDATA[<mrow><msub><mi>&delta;</mi><mi>B</mi></msub><mo>=</mo><mfrac><mn>1</mn><mi>M</mi></mfrac><msubsup><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></msubsup><msub><mi>&delta;</mi><msub><mi>A</mi><mi>k</mi></msub></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>11</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA00010814659700000217.GIF" wi="1072" he="88" /></maths><maths num="0011"><math><![CDATA[<mrow><msup><mi>B</mi><mo>&prime;</mo></msup><mo>=</mo><msubsup><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></msubsup><msub><mi>&omega;</mi><msup><mi>B</mi><mi>i</mi></msup></msub><msup><mi>B</mi><mi>i</mi></msup><mo>+</mo><msub><mi>&delta;</mi><mi>B</mi></msub><msub><mi>range</mi><mi>B</mi></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>12</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001081465970000031.GIF" wi="1126" he="75" /></maths>第三步:比例变换:对于N条被选的最近规则,首先A'被变换到A″<sub>k</sub>=(a<sub>0</sub>″,a<sub>1</sub>″,a<sub>2</sub>″,a<sub>3</sub>″),相应的计算<img file="FDA0001081465970000032.GIF" wi="66" he="77" />和<img file="FDA0001081465970000033.GIF" wi="63" he="63" />按如下公式:<maths num="0012"><math><![CDATA[<mrow><msub><munder><mi>s</mi><mo>&OverBar;</mo></munder><msub><mi>A</mi><mi>k</mi></msub></msub><mo>=</mo><mfrac><mrow><msubsup><mi>a</mi><mn>3</mn><mrow><mo>&prime;</mo><mo>&prime;</mo></mrow></msubsup><mo>-</mo><msubsup><mi>a</mi><mn>0</mn><mrow><mo>&prime;</mo><mo>&prime;</mo></mrow></msubsup></mrow><mrow><msubsup><mi>a</mi><mn>3</mn><mo>&prime;</mo></msubsup><mo>-</mo><msubsup><mi>a</mi><mn>0</mn><mo>&prime;</mo></msubsup></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>13</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001081465970000034.GIF" wi="772" he="113" /></maths><maths num="0013"><math><![CDATA[<mrow><msub><mover><mi>s</mi><mo>&OverBar;</mo></mover><msub><mi>A</mi><mi>k</mi></msub></msub><mo>=</mo><mfrac><mrow><msubsup><mi>a</mi><mn>2</mn><mrow><mo>&prime;</mo><mo>&prime;</mo></mrow></msubsup><mo>-</mo><msubsup><mi>a</mi><mn>1</mn><mrow><mo>&prime;</mo><mo>&prime;</mo></mrow></msubsup></mrow><mrow><msubsup><mi>a</mi><mn>2</mn><mo>&prime;</mo></msubsup><mo>-</mo><msubsup><mi>a</mi><mn>1</mn><mo>&prime;</mo></msubsup></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>14</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001081465970000035.GIF" wi="774" he="112" /></maths>对于结论B<sup>*</sup>,相应的参数<u>s</u><sub>B</sub>和<img file="FDA0001081465970000036.GIF" wi="51" he="61" />计算如下:<maths num="0014"><math><![CDATA[<mrow><mtable><mtr><mtd><mrow><msub><munder><mi>s</mi><mo>&OverBar;</mo></munder><mi>B</mi></msub><mo>=</mo><mfrac><mn>1</mn><mi>M</mi></mfrac><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><msub><munder><mi>s</mi><mo>&OverBar;</mo></munder><msub><mi>A</mi><mi>k</mi></msub></msub></mrow></mtd><mtd><mrow><msub><mover><mi>s</mi><mo>&OverBar;</mo></mover><mi>B</mi></msub><mo>=</mo><mfrac><mn>1</mn><mi>M</mi></mfrac><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><msub><mover><mi>s</mi><mo>&OverBar;</mo></mover><msub><mi>A</mi><mi>k</mi></msub></msub></mrow></mtd></mtr></mtable><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>15</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001081465970000037.GIF" wi="895" he="133" /></maths>第四步:移动变换:对于多前件多规则系统,每一k<sup>th</sup>维度变量都有其自己的位移吕<img file="FDA0001081465970000038.GIF" wi="103" he="62" />为了使比例尺变换后的模糊集A″<sub>k</sub>恰好移位到<img file="FDA0001081465970000039.GIF" wi="81" he="71" />两者具有相同的表示值;为了不失一般性,对于A″<sub>k</sub>=(a<sub>0</sub>″,a<sub>1</sub>″,a<sub>2</sub>″,a<sub>3</sub>″),它的下界值(a<sub>0</sub>″,a<sub>3</sub>″)和上界值(a<sub>1</sub>″,a<sub>2</sub>″)在<img file="FDA00010814659700000310.GIF" wi="74" he="62" />的作用下被移动到(a<sub>0</sub>,a<sub>3</sub>)和(a<sub>1</sub>,a<sub>2</sub>):<maths num="0015"><math><![CDATA[<mrow><mfenced open = '{' close = ''><mtable><mtr><mtd><mrow><msub><mi>m</mi><msub><mi>A</mi><mi>k</mi></msub></msub><mo>=</mo><mfrac><mrow><mn>3</mn><mrow><mo>(</mo><msub><mi>a</mi><mn>0</mn></msub><mo>-</mo><msup><msub><mi>a</mi><mn>0</mn></msub><mrow><mo>&prime;</mo><mo>&prime;</mo></mrow></msup><mo>)</mo></mrow></mrow><mrow><msup><msub><mi>a</mi><mn>1</mn></msub><mrow><mo>&prime;</mo><mo>&prime;</mo></mrow></msup><mo>-</mo><msup><msub><mi>a</mi><mn>0</mn></msub><mrow><mo>&prime;</mo><mo>&prime;</mo></mrow></msup></mrow></mfrac><mo>,</mo><msub><mi>a</mi><mn>0</mn></msub><mo>&gt;</mo><msup><msub><mi>a</mi><mn>0</mn></msub><mrow><mo>&prime;</mo><mo>&prime;</mo></mrow></msup></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>m</mi><msub><mi>A</mi><mi>k</mi></msub></msub><mo>=</mo><mfrac><mrow><mn>3</mn><mrow><mo>(</mo><msub><mi>a</mi><mn>0</mn></msub><mo>-</mo><msup><msub><mi>a</mi><mn>0</mn></msub><mrow><mo>&prime;</mo><mo>&prime;</mo></mrow></msup><mo>)</mo></mrow></mrow><mrow><msup><msub><mi>a</mi><mn>3</mn></msub><mrow><mo>&prime;</mo><mo>&prime;</mo></mrow></msup><mo>-</mo><msup><msub><mi>a</mi><mn>2</mn></msub><mrow><mo>&prime;</mo><mo>&prime;</mo></mrow></msup></mrow></mfrac><mo>,</mo><mi>o</mi><mi>t</mi><mi>h</mi><mi>e</mi><mi>r</mi><mi>w</mi><mi>i</mi><mi>s</mi><mi>e</mi></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>16</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA00010814659700000311.GIF" wi="1270" he="293" /></maths>和比例尺变换类似,结论维度的位移率m<sub>B</sub>可以通过计算相应前件参数的算术平均值得到<maths num="0016"><math><![CDATA[<mrow><msub><mi>m</mi><mi>B</mi></msub><mo>=</mo><mfrac><mn>1</mn><mi>M</mi></mfrac><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><msub><mi>m</mi><msub><mi>A</mi><mi>k</mi></msub></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>17</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA00010814659700000312.GIF" wi="894" he="127" /></maths>这样,最终的插值结果B<sup>*</sup>可以通过以下的映射关系,由中间值B',以及参数<u>s</u><sub>B</sub>,<img file="FDA00010814659700000313.GIF" wi="77" he="62" />和m<sub>B</sub>计算得到T(B′,B<sup>*</sup>)=T(A′,A<sup>*</sup>)  (18)
地址 401331 重庆市沙坪坝区虎溪大学城东路20号