标量分析法

2024-08-07

标量分析法(通用7篇)

标量分析法 篇1

高中物理中矢量与标量教学中的关键是准确地掌握两者区别,认清矢量及标量前正负号的意义,正确地把握矢量与标量的运算方法,熟练地应用矢量及标量进行物理解题. 本文从矢量与标量的区别出发,讨论了矢量与标量的应用方法及应用难点,对提高学生物理解题能力,提升物理教学质量的途径进行了深入的思考.

任何知识应用的关键都是准确的把握知识的内涵,正确地理解知识的区别,熟练地掌握知识应用的方式、方法. 在物理矢量与标量教学中,第一,引导、启发学生掌握矢量、标量相关知识的内涵,使学生对相关的基础知识熟练掌握. 第二,把握好教学的深度,使学生熟练的掌握矢量、标量的应用,又不至于迷失在深奥的物理知识中. 结合学生自身条件,引导学生学习、分析、掌握、应用矢量与标量的知识. 第三,培养学生正确的解题思路,能够举一反三地应用矢量、标量解决物理难题. 总之,努力地将知识转化为学生的能力,使其能够在物理的学生中充分地发挥自身优势,不断地探索、进步,以达到更高的物理水平.

一、物理教学中矢量与标量的区别

在高中物理学习中,理解矢量与标量的区别可以从三个方面出发. 第一,准确把握矢量与标量的概念区别,标量只单纯的表示大小,没有方向之别. 例如,时间、质量、温度等,即使有正负号之分,也与其方向无关( 如 + 5℃和 - 5℃ ,只代表温度的高低、增减,不代表温度有方向) . 矢量即表示大小又表示方向. 例如,线速度、角速度、位移、力等.

例1 F1为2 N,F2为1 N,它们水平方向作用在同一物体上( 其他力忽略不计) ,求合力.

如F1、F2都为正数,表示他们方向相同,其合力的计算就是: F1+ F2= 2N + 1N = 3N,合力的方向与F1、F2同一方向; 如F1、F2两力相反,表示两力的方向相反,其合力为: F1+ F2= 2N+ ( - 1N) = 1 N,合力与F1同一方向. 力的方向在计算中起了很重要的作用,在矢量计算中必须考虑到矢量的大小和方向,才能保证解题的正确和全面. 第二,矢量和标量的运算不同,在标量计算中,按照数学运算法则即可,如质量为M1的物体和质量为M2的物体叠放,其产生的重力是多大? 在运算中,利用重力公式G = mg,m取M1、M2的和值即可( 即m = M1+ M2) ,其他问题不用考虑. 而矢量的计算,不但要考虑大小,还要考虑方向,该公式中G与g为矢量,计算要考虑G和g的方向和. 如例1,如F1、F2不再一水平方向,就需要通过平行四边形法则或三角形法则将其移动到同一水平方向,再进行数学运算. 第三,矢量和标量中都含有正负号,但正负号的意义却大相径庭. 在矢量中,正负号代表的是方向,如,F1= 2N,F2= - 1N,表示含义为:F1为选定方向,F1与F2力的方向相反. 在标量中,正负号的应用有三种意义: 1. 表示大小,如温度、重力势能等表示中的“ + 、- ”号; 2. 表示相反的物理过程,如功、热量、内能等表示中“ + 、- ”号; 3. 表示物体的特性,如电量、像距等表示中“ + 、- ”号( 如q﹥0,表示带正电; q﹤0,表示带负电) .

二、矢量与标量在解题中的应用

矢量与标量在物理解题中的应用比较广泛,在解题中,有关标量的计算直接将物理量带入公式就可求解. 有关矢量的计算则较为复杂,先要选定矢量的方向,才能进行计算,否则计算容易出错.

例2电梯以2 m/s的速度匀速上升,上升到某一高度时从电梯上掉下一物体,物体经2 s到达地面,求物体脱离电梯的高度( g = 10 m/s2) .

在解答此题时,第一,一定要正确分析物体脱离电梯时的状态. 物体随着电梯匀速上升,因此在物体脱离电梯时有一个初速度. 在这个初速度的作用下,物体应继续向上运动一段距离后才会在重力作用下做匀变速运动. 在解题中,学生往往容易忽略这个初速度,认为v0为“0”,导致解题失误. 此外也容易忽略初速度的方向,将矢量按照标量计算,导致解题错误. 第二,要分析算式中的矢量与标量,以确保矢量运算的正确性. 如例2可结合直线加速运动公式H = v0·t + 1 /2g·t2( 其中,初速度、重力加速度、速度、位移都为矢量; 高度,时间为标量) 进行运算. 确保各物理量带入的正确性、准确性,确保解题的正确无误. 第三,细心的进行运算. 在分析题目时,由于牵扯到矢量运算,首先需要规定矢量的选定方向. 在该题目中,以垂直向下的方向为选定方向. 第四,结合选定方向判断各矢量的方向. 在物体脱离电梯时,物体由于惯性向上运动,此时的初速度v0就为( - 2 m/s) ,其余矢量为正,带入公式,H = ( - 2) ×2 + 1 /2×10×22= 16( 米) ,H为“正数”表示物体发生位移的方向和选定的方向一致. 如此题中,如不重视矢量的方向,直接将各物理量带入公式,H = 2×2 + 1 /2×10×22= 24 ( 米) ,计算结果难以确保正确.

例3在一个斜角为α的粗糙斜面上,有一质量为m的物体,物体为静止状态,求物体所受到的摩擦力.

第一,对物体进行受力分析,静止的物体受到一个垂直平面向上的支持力( N) 、垂直向下的重力( G) 和一个平行向上的摩擦力( f) . 由于力为矢量,所以在计算中要注意力的方向 . 第二,在受力分析的基础上寻找力平衡( 既然物体静止,所受的力应相互平衡) ,结合求解分解重力. 垂直向下的重力依据平行四边形发展可以分解为垂直平面向下的力和平行向下的力,这两个力正好与支持力( N = Gcosα) 、摩擦力( f = Gsinα) 平衡. 第三,结合公式进行计算,注意矢量计算的细节,特别是正负号所表示的力的方向. f = Gsinα = mgsinα,力的方向沿平面水平向上.

总之,在矢量和标量的应用中,一方面,要注意方向,在分析题意的时候应有“选定方向”意识,明确“ + 、- ”号在矢量中的意义,并能正确的区别“+ 、- ”的意义. 另一方面,巧妙、正确地应用平行四边形法、三角形法制分解或合成矢量,准确分析题目,巧妙解题,提高应用矢量、标量解题的水平,促进物理综合能力的提高.

基于滑动窗的标量乘算法改进 篇2

点的标量乘法是椭圆曲线密码体制实施过程中最常见、最耗时间的运算。因此,实现高效、快速的点的标量乘法是椭圆曲线密码体制实现的一个关键。要提高点乘算法的速度有三个方法:提高有限域上算术运算的速度;(2)提高一次点加运算的速度;(3)减少点加次数。

目前,对点的标量乘法运算通常划分为底层运算和上层运算两个方面。针对底层运算主要是改进基域运算,减少底层域的运算量;针对上层运算主要是研究标量n的有效表示法,需要尽可能的减少点加运算的次数。本文结合NAF窗口算法,提出了改进的基于滑动窗的新标量乘算法,该算法能有效减少椭圆曲线上点加的次数,提高椭圆曲线加密的效率。

1 基于滑动窗的标量乘算法改进

椭圆曲线标量乘算法可以分为两种:(1)定点标量乘,椭圆曲线上的点P不变,标量K变化;(2)动点标量乘,椭圆曲线上的点P变化。本文主要针对第一种类型进行研究,提出一种改进的基于滑动窗口的标量乘算法。

1.1 基于滑动窗的标量乘算法介绍

基于滑动窗口的标量乘算法[3]划分为三个阶段:第一阶段是标量的预编码阶段,这一阶段主要负责计算出标量的形式,为窗口大小;第二阶段是存储预计算阶段,在这个过程中分别计算出的值并预存在一个表中,供第三阶段查询使用;第三阶段是赋值阶段,利用预计算表计算出。算法1给出了标量k的编码过程:

【算法1】计算一个窗口宽度为的正整数的NAF。

输入:窗口宽度,一个正整数。

由以上算法可知,当窗口中最高位等于1时,需要对窗口内的数值处理。将窗口内的值取补然后在取反后赋值给。在此过程中序列向前产生进位,从而达到减少序列中1的个数。最终减少标量乘的计算过程中点加的运算次数。

1.2 改进的滑动窗标量乘算法

分析滑动窗算法可知,在标量赋值阶段并没有完全使用所有的预存储表的内容,而且在进位的过程中也容易造成序列中增加1的情况。针对这些不足,本文改进了基于滑动窗的标量乘算法。新的滑动窗算法和传统算法步骤相似,将算法划分为三个阶段。与传统算法不同的是在的编码阶段,新的编码方式比传统算法提高1/8的效率,下面给出新算法的伪代码。

【算法2】计算一个窗口宽度为的正整数的NAF。

输入:窗口宽度,一个正整数。

算法2和传统的滑动窗算法都是利用向前进位1的原理来生成加法链,但新算法与传统的滑动窗算法利用不同的判断依据来决定是否向前进位1。设标量乘的二进制编码为,窗口大小取,利用传统方法生成的加法链第个节点的二进制编码为。由传统的滑动窗算法可知时,那么节点的值等于,此时小于零,最后取完成向前进位1。而新的滑动窗口算法通过判断位的值来决定是否向前聚类1。下面以具体实例来分析两种方法的执行效率。

取窗口大小,标量的二进制序列表示为图1:

图中将标量K中可能出现的窗口编码归类为四种情况,其中。由传统的加法链的生成方式可知,当出现B、C两类情况时,加法链中节点的值为,标量;当出现A、D两类情况时,加法链中节点的值为(0XX1),此时标量。滑动窗口算法也有其不足的地方:(1)当出现C类情况时,当前窗口的进位反而会增加序列中1的个数,从而最终增加了加法链中节点的个数;(2)当出现A类情况时,由于序列中第四位等于零,此时不能产生进位,从而不能化简第五位的1;(3)窗口第4比特等于1时需要向前进位,进位后第四比特永远为0,在查表赋值时只用到预存表的1/2,造成预存表的极大浪费。针对传统滑动窗算法的缺点,本文设计了新的判断标准,改进了滑动窗口的算法,克服传统滑动窗算法的不利因素。新的滑动窗口算法介绍如下:

新算法根据窗口的前一位的值来决定是否向前进位。以上述四类情况为例:当二进制序列中第五位等于1时(A、B两类情况)向前进位1,节点的值为,标量;当二进制序列中第五位等于零时(C、D两类情况),节点的值,标量。

设标量k经过传统的滑动窗算法编码后加法链中节点的个数为n,在对标量K编码的过程中A、B、C、D四种情况出现的概率是相同的,约为1/4。当出现A类情况时,新算法可以使序列中1的个数至少减少一次;当出现C类情况时,采用新算法可以序列中1的个数减少一次;出现B、D类情况时,新算法和传统情况相同。总结起来,新算法比传统算法至少减少n/2个1,也就是减少n/8个加法链的节点。表1是分别用传统方法和新方法做的三组实验结果,每组实验用两种方法分别对100条160bit序列编码,结果为编码后加法链中的总的节点个数:

2 总结

通过以上的理论和实践可以得出:在不增加存储量和倍点运算的同时,新的椭圆曲线标量乘算法比原有的标量乘算法提高了约17%的效率。利用新的标量乘算法能够更好、更快的实现标量乘算法。

摘要:点标量乘法是椭圆曲线密码体制中最耗时的运算,点标量乘法的效率决定了椭圆曲线加密效率。如何优化改进点标量乘算法成为椭圆曲线密码学的研究热点。如何构造最短加法链是点标量乘的一个研究方向。该文在传统的NAF窗口算法的基础上,给出了改进的基于滑动窗的新标量乘算法,新算法在不增加存储量的同时提高了效率。

关键词:椭圆曲线标量乘,NAF标量乘法,带符号的二进制表示

参考文献

[1]Koblitz N.Elliptic Curve Cryptosystems.Mathematics of Computation,1987.48:203-209.

[2]Miller V.Uses of Elliptic Curve in Cryptography//CRYPTO’85,LNCS218.New YORK:Springer verlag,1986:417-426.

标量分析法 篇3

给定椭圆曲线上点P和一个大整数k, 计算kP, 即用椭圆曲线上加法将P与自身连续相加k次, 称为椭圆曲线上标量乘法。它的逆运算, 即椭圆曲线离散对数问题 (Elliptic Curve Discrete Logarithm Problem, ECDLP) , 是构造椭圆曲线公钥密码算法中的重要问题。在椭圆曲线密码中, 标量乘法一直是一个瓶颈, 因此, 20多年来全世界研究学者在如何高效地实现标量乘上投入了大量精力, 得到大量的研究成果[3,4,5,6,7,8,9]。

边信道攻击, 有人也将其称为信息泄露攻击。核心思想是通过对加密软件或硬件运行时产生的各种泄露信息进行监测。这些泄露信息包括程序运行的时间, 能量的消耗, 机器发出的声音, 还有硬件发出的各种电磁辐射。然后对监测所得到的各种数据进行分析、推断, 从而得出算法内部运行的情况, 进而破解出各种秘密信息。通常根据泄露出的能量消耗以及时间消耗进行推测, 即能量分析攻击和时间分析攻击。根据监测内容和分析方法的不同, 边信道攻击可分为两类。一类是运用一种标准对其中的某一类泄露信息进行监测和分析, 叫作简单功率分析, 如简单能量分析 (Simple Power Analysis, SPA) ;另一类是运用多种标准对泄露的信息进行监测, 然后通过统计工具对所有信息进行统一的分析, 叫作差分边信道分析, 如差分能量分析 (Differential Power Analysis, DPA) 。在SPA攻击中, 攻击者通过直接检查单独的私钥操作中的能量轨迹就能推导出关于私钥的信息材料。椭圆曲线标量乘运算的实现易受这样的攻击。

考虑一个设备在椭圆曲线数字签名方案 (Elliptic Curve Digital Signature Algorithm, ECDSA) 生成过程中执行点乘kP, 其中, P是公开的椭圆曲线上的点;k是秘密整数, 即私钥。首先假设对于标量乘使用二进制算法。椭圆曲线密码之所以遭受边信道攻击是因为标量乘的实现与密钥k有关。标量乘算法中倍点运算和点加运算需要的计算量大大不同, 这样造成有不同的能量曲线。从标量乘运算的能量曲线, 推断出这次运算是在作加法还是作乘法运算, 进而得到ki的值, 然后对整个过程进行追踪, 就可以得到私钥k。这样, 运算的私钥就被破解出来。

1 边信道原子

针对SCA攻击, 2004年Mames, Ciet and Joye提出了一个几乎不增加计算量的方法:边信道原子块方法[10]。其主要思想是将每个椭圆曲线上的运算分解成为多个边信道不可区分的原子块系列。这样, 标量乘法就可以表示成为一系列不可区别的代码原子块, 于是攻击者便不能利用SPA攻击获取边信道信息。文中对原子结构思想进行推广, 最后给出M-N-A-N-A-A原子结构。

1.1 边信道原子块

可以把任何一个算法的执行过程看成一个指令序列, 如果通过边信道分析两个指令, 发现不了它们有什么不同, 则认为这两个指令是边信道等价的, 记作“~”。

定义1 假设{0, …, n}表示一系列算法执行过程, {0, …, n}的边信道原子块Γ是一个个指令的边信道等价类序列, 以便每个j, 0≤jn能被表示为原子块Γ的副本集, 即存在序列γj, iΓ, 满足j=γj, 1γj, 2γj, lj, 则称γj, i为边信道原子块。

对于不同的执行过程, 一般通过给其人为地添加伪代码使其通过边信道分析没有异同, 所以理论上边信道原子块理论是可行的。实现的最大困难是如何找到一个大小合适的边信道原子结构, 算法的重组可能会缩短边信道原子块Γ的大小。

1.2 实现思路介绍

首先来看一个简单平方和乘法交替的例子:令xG, d的二元表示式为 (dm-1, …, d0) , 计算y=xd。文献[11]中抵抗SPA攻击的方法便是边信道原子法, 它用S-M再加一个计数器作为原子结构, 这是一种传统的抵抗边信道攻击的方法。但此方法的原子块很大, 具体实现起来效果并不理想, 这可以通过后续比较得到结论。

如果平方运算可以看作乘法运算的一种特例, 而且R0←RR0和R0←RR1是等价边信道, 便可以通过重组算法得到一个更加精巧的边信道原子结构Γ

图1显示算法是不平衡的, 当di=1时, 有两个Γ需要执行, 而当di=0时只有一个Γ需要执行, 也就是0和1有区别。通过修改文献[11]算法, 可以看出边信道攻击并不能区分0和1哪个在运行。

算法1 边信道原子的平方—乘法算法

输入:x, d= (dm-1, …, d0) 2;输出:y=xd

step1R0←1;R1←x;im-1

step2k←0

step3 While (i≥0) do

R0←RRk;kkdi;ii-┐k

Endwhile

step4 返回R0

通过上述举例可以看出, 对于算法执行过程分块0, …, n, 首先要选择合适的边信道原子块Γ, 然后将j, 0≤jn写成原子块Γ的序列, 比如j=γcjγcj+1γcj+lj-1, 其中, lj构成j的原子块Γ的个数,

{c0=0cj=cj-1+lj-1, 1jn

γrΓ, c0≤kcn+ln-1。对于每个j, 0≤jn, 执行ljj的原子块Γ, 不同j有不同的执行次数, 这样则大大优化了文献[11]中的算法, 没有执行不必要的命令, 节省了大量的时间, 因此, 如果令t表示每个原子块Γ的执行时间, 执行j所需的时间是lj·t而不是文献[11]中算法所需时间 (max0≤jnlj) ·t

为将不同的执行过程统一, 引入s, 用它来控制原子块的执行, 若没有j所包含的原子块γkΓ要执行时, s=1, 若还没有执行完毕, 则s=0。当s=1时, 必须根据输入的数值选择执行下一个j′。故每次循环开始, 必须通过s和所输入的值更新kk← (┐s) (k+1) +s·f (input values) , 如果下一个须执行的是j′, 则f (input values) =cj′。当上述k的表达式也可以重新编码, 以便通过边信道分析不能得到任何信息。有时k也可以被看做一个计数器, 则k← (┐s) · (k+1) , 输入的数值用来决定下一个要执行的算法块j′。

2 边信道原子标量乘算法

首先将文献[10]的思想推广到Modified Jacobian坐标系下的椭圆曲线上, 给出适合于形如M-N-A-N-A-A边信道原子结构的快速倍点和点加公式[12], 以及快速安全的椭圆曲线密码的标量乘算法, 并且对算法的性能进行了分析, 得出了满意的标量乘计算方案。

2.1 边信道原子快速标量乘算法

在文献[10]的基础上, 文献[13,14]分别给出了形如S-N-A-M-N-A-AS-A-N-A-M-N-A的边信道原子结构。采用这种结构的最大优势是能够体现平方运算的效率, 进而提高点乘算法的速度。但是要采用这种新型的原子结构, 一般要求倍点和点加公式中乘法和平方的次数是平衡的。为达到这种平衡必然要调整SM的个数, 基本技巧是利用配方法或者因式分解法, 但是这样的调整一般只适合于特殊的椭圆曲线。所以在文献[13]中仅从理论上给出了素数域上a=-3的椭圆曲线的实施方法。文中采用原始边信道原子理论, 认为边信道分析中域上的平方和乘法运算是不可区分的, 推广了文献[10]的原子理论, 并给出了M-N-A-N-A-A原子结构。

利用文献[12]中的倍点和点加公式, 可将素数域上椭圆曲线y2=x3+ax+b的倍点和点加计算公式原子化, 如图2和图3所示。

输入:P= (X1∶Y1∶Z1∶aZ14)

:2Ρ= (X3Y3Ζ3aΖ34) Τ1X1, Τ2Y1, Τ3z1, Τ4aΖz41.{Τ5Τ1×Τ1*Τ5Τ5+Τ5*Τ5Τ5+Τ1Τ6Τ5+Τ44.{Τ8Τ6×Τ6*Τ1Τ5+Τ5Τ1-Τ1Τ1Τ1+Τ8*7.{Τ8Τ6×Τ8Τ7-Τ7Τ2Τ8+Τ7Τ1-Τ1**2.{Τ5Τ2×Τ2*Τ7Τ5+Τ5***5.{Τ3Τ2×Τ3*Τ3Τ3+Τ3***8.{Τ7Τ7×Τ4*Τ4Τ7+Τ7Τ4-Τ4**3.{Τ5Τ1×Τ7*Τ5Τ5+Τ5***6.{Τ7Τ7×Τ7*Τ7Τ7+Τ7Τ1-Τ1Τ8Τ5+Τ1**2

输入:P= (X1∶Y1∶Z1∶aZ14) , Q= (X2∶Y2∶Z2∶aZz4)

:Ρ+Q= (X3Y3Ζ3aΖ34) , Τ0a, Τ1X1, Τ2Y1, Τ3Ζ1, Τ4aΖ14, Τ5X2, Τ6Y2, Τ7Ζ2, Τ8aΖ241.{Τ9Τ7×Τ7*****6.{Τ10Τ5×Τ10Τ9=-Τ9Τ10Τ10+Τ9***11.{Τ13Τ10×Τ10*****16.{Τ15Τ12×Τ15Τ15-Τ15Τ2Τ10+Τ15***2.{Τ11Τ7×Τ9*****7.{Τ3Τ3×Τ7Τ9=-Τ9****12.{Τ10Τ10×Τ13*****17.{Τ4Τ3×Τ3*****3.{Τ9Τ1×Τ9*****8.{Τ3Τ3×Τ10*****13.{Τ14Τ12×Τ12*****18.{Τ4Τ4×Τ4*****4.{Τ10Τ3×Τ3*****9.{Τ11Τ2×Τ11*****14.{Τ15Τ9×Τ13Τ15-Τ15Τ16Τ16+Τ15Τ10-Τ10Τ16Τ10+Τ16Τ1Τ16+Τ1419.{Τ4Τ0×Τ4*****5.{Τ12Τ10×Τ3*****10.{Τ12Τ6×Τ12Τ11=-Τ11Τ12Τ12+Τ11Τ11=-Τ11**15.{Τ10Τ10×Τ11***Τ15Τ15+Τ1**

图3 点加公式的原子结构

倍点和点加运算被分解为一系列结构相同的原子块M-N-A-N-A-A运算。在点乘算法中使用这种原子块进行运算, 可以利用文献[10]中的方法实现。首先需要给出一个供查询的用于控制每个原子块正确赋值的矩阵。这个矩阵可由每个原子块变量的下标组成。在部分原子块有冗余计算, 这可以通过选择部分不影响计算结果的寄存器进行实现。每个原子块有14个变量, 倍点和点加运算共有27个原子块, 这就组成一个27×14的矩阵。

在矩阵 (um, n) 中, 前面8行对应倍点运算的8个原子块, 后19行对应点加运算的19个原子块。根据椭圆曲线二进制标量乘算法可知, 当ai=1时, 需一次倍点和一次点加运算, 即27次原子结构运算;当ai=0时, 仅需要一次倍点运算, 即8次原子结构运算。因此, 还需要一定的控制条件来保证不同比特位运行原子块的次数。这可根据文献[10]中的方法简单设计出。

k= (┐s) (k+1) 作为计数器, 其中s=ai· (k div26) + (┐ai) · (k div7) , 故Modified Jaeobian坐标系下的边信道原子标量乘算法如下。

算法2 Modified Jaeobian坐标系下的边信道原子标量乘算法。

输入:P= (X1∶Y1∶Z1∶aZ14) , m= (1, al-2, …, a0) 2, (um, n) 27×14

输出:mP

T0←a, T1←X1, T2←Y1, T3←Z1, T4←aZ14, T5←X1, T6←Y1, T7←Z1, T8←aZ14

step1il-2;s←1

step2 While (i≥0) do

k= (┐s) (k+1) ;

s=ai· (k div26) + (┐ai) · (k div7) ;

Tuk, 0←Tuk, 1×Tuk, 2;Tuk, 3←-Tuk, 3;Tuk, 4←Tuk, 5+Tuk, 6;Tuk, 7←-Tuk, 7;Tuk, 8←Tuk, 9+Tuk, 10;Tuk, 11←Tuk, 12+Tuk, 13;

Endwhile

step3 return (T1, T2, T3, T4)

2.2 算法效率分析

边信道原子标量乘算法主要是通过分解椭圆曲线上的运算, 成为多个边信道不可区分的原子块系列。由于从边信道分析角度看乘法和平方运算难以区分, 又加入了一些运算时间较少的加减法和取非运算, 使得这些原子块之间并不能被区分。这样, 标量乘法就可以表示成为一系列不可分的代码原子块, 攻击者通过边信道分析看到的是非常规律的能量时间变化图像, 于是攻击者便不能利用SPA攻击去获取有价值的边信道信息, 从而在一定程度上保证了私钥的安全性, 实现了通信的保密性。不仅如此, 边信道原子标量乘算法因为通过引进变量s, 用它来控制程序的执行过程。程序中原子块的执行次数是根据所进行的是倍点还是点加运算来给定, 并不是像文献那样是执行最大次数, 因而有利于算法速率的提高。

首先从算法的运行次数出发做定性分析。如果边信道原子思想和二进制计算标量乘算法相结合, 通过比较发现运算速率大大提高。当选用192 bit的私钥时, 采用Montgomery Ladder算法[26]平均需要192次倍点和192次点加运算, 而采用边信道原子标量乘算法平均需要192次倍点和96次点加运算;如果使用NAF编码方法, Montgomery Ladder算法平均需要193次倍点和193次点加运算, 而采用边信道原子标量乘算法平均需要193次倍点和64次点加运算;如果使用宽度为w的NAF编码方法, Montgomery Ladder算法平均需要193次倍点和193次点加运算, 而采用边信道原子标量乘算法平均需要193次倍点和193/ (w+1) 次点加运算。

其次从算法的运行时间进行试验分析, 用Montgomery Ladder算法和Side-channel Atomicity算法分别计算椭圆曲线标量乘, 并对它们的耗时进行比较。

硬件环境: (1) CPU:Pentium (R) Dual-Core T4200 2.00 GHz; (2) RAM:2.00 GB。

软件环境: (1) 操作系统Windows 7.0专业版; (2) 开发工具Visual C++ 6.0。

比较发现, Side-Channel Atomicity算法比Montgomery Ladder算法耗时减少了约37.6%。

3 结束语

文中提出了将椭圆曲线点的标量乘运算拆分成边信道分析无法区别的原子块的方案, 从理论上分析了方案的可行性和安全性, 并给出了一种新的边信道原子结构M-N-A-N-A-A, 其次从效率和安全方面对算法进行了评价, 最后通过调用函数库Crypto++中的运算函数, 并利用Montgomery Ladder算法计算标量乘, 并与边信道原子方法比较, 发现边信道原子方法不仅能够抵抗SPA攻击, 大大提高了标量乘算法的运算效率, 与Montgomery Ladder算法相比, 耗时减少了约37.6%。

摘要:提出了一种能够抵抗简单能量分析攻击的边信道原子结构, 减少了椭圆曲线密码体制中标量乘的倍点和点加运算次数, 从而节省了运算时间, 最后通过调用Crypto++库函数, 对于NIST提供的160 bit素域上椭圆曲线编程实现算法, 发现此算法的效率比Montgomery Ladder算法提高了37.6%。

标量分析法 篇4

关键词:多描述视频编码,标量量化,索引分配

0 引言

随着网络技术和多媒体技术的发展,人们对网络服务质量提出了越来越高的要求,主要包括视频的实时传送和接收视频的高质量。然而,网络环境的异构性、网络传输的不可靠性和网络带宽的限制等原因很容易造成传输视频的数据包丢失或者系统延时过长等问题,因此,如何稳定、可靠地传输视频信息是网络传输和视频编码技术的重要问题。

抗误码与错误控制技术通常采用前向纠错编码(FEC)、自动请求重传(ARQ)、联合信源信道编码、错误隐藏和容错编码等。FEC可以纠正一定数量的错误,但当错误数量超过其纠错范围时,FEC的性能会急剧下降;ARQ会增加网络延时,对于那些对实时性要求严格的系统,延时过长就相当于数据包丢失,而且,并不是所有系统和通道都支持ARQ的反馈通道。

为了实现实时、稳健的视频传输和编码,人们提出了一种针对不可靠信道传输的视频编码方法———多描述编码(Multiple Description Coding,MDC)。MDC用多种形式分别描述同一视频流,每一种形式生成一种描述,各描述间存在部分互补的冗余信息,且具有同等重要性和独立性,即每一路描述均可独立编码、解码和重构信息。同时,假设将不同的描述分别置于不同的独立的信道中进行传送,这些信道丢失同一部分图像数据包的可能性很小。因此,源视频的任何一个描述都可以恢复出质量可接受的重构视频,而多个描述联合解码则可以重构出高质量的视频。多描述编码可改善由于信道丢包导致的视觉质量下降,同时也可解决由于反馈重传导致的延时过长问题。

多描述编码具有不需重传、易于实时视频传输的特点,在分包网络、多分布的存储系统、低延时的系统、无优先保护机制或不可靠的Internet、分集通信系统(多天线的无线信道)、混合数字广播、语音编码、图像编码、视频编码等方面有着非常重要的应用价值。

1 多描述编码

多描述编码问题是在1979年9月的Shannon理论研究会上正式提出的。两描述编码的系统框图如图1所示。

图中,信源信号S由MDC编码器编码生成两路描述,即描述1和描述2。这两路描述分别通过两个相互独立的信道(信道1和信道2),在接收端,根据正确接收的码流,选择相应的解码方法。如果经过信道传输后只有描述1(或描述2)被正确接收,系统就选择边缘解码器1(或边缘解码器2)解码,由于各描述间存在独立性,因此可以恢复出质量可接受的视频信号。如果两路描述均有部分数据包丢失或出错,系统将选择中央解码器对码流进行解码,由于各描述间存在冗余,因此可以恢复出一定质量的视频,质量的高低则由信道情况决定,信道条件越差,恢复的视频质量越低。当两路描述均被正确接收时,中央解码器将解码出质量最高的重构视频。

从图1可以看出,为了保证在恶劣信道环境下各描述间仍可以重构出一定质量的视频,各描述都必须包含足够的视频信息,这意味着MDC方法的编码效率要比单描述低许多,但编码效率的损失换来的是对恶劣无线通信环境或网络环境下视频信号的稳健传输。多描述视频编码的难点就在于如何在尽量低的冗余度下使得其失真率也尽量低。

多描述视频编码方法主要有三种:通过对变换系数进行不同变换实现MDC,通过对码流进行不同程度的量化实现MDC以及通过对码流引入相关性实现MDC。

文献[1]提出了一种非平衡多描述视频编码和传输方案,该方法可以产生两个具有不同重要性和质量的描述———高分辨力(High-Resolution,HR)描述和低分辨力(Low-Resolution,LR)描述,并引入“同步帧”来加强HR和LR描述之间的相关性。所谓“同步帧”,即LR编码器重构的I帧,其作用主要是置于HR编码器的帧缓冲区并替代HR编码器当前重构的P帧。文献[2]提出了一种兼容H.264标准的多描述视频编码方法,该方法首先通过空域滤波把原始的视频序列分解为多个具有低空间分辨力的子序列,然后采用H.264编码器对每个子序列进行编码,得到与H.264标准兼容的压缩码流。文献[3]提出了基于CDN的多描述视频编码方法,该方法使用奇偶帧分解、奇偶列分解和奇偶行分解三种方法分别产生多描述码流。实验显示,由于视频序列的时间相关性优于空间相关性,奇偶帧分解多描述方案性能优于奇偶列、奇偶行分解多描述方案。文献[4]提出了提出一种基于方向提升小波变换的多描述可分级视频编码方法,该方法能增强视频编码的容错性和网络自适应性。文献[5]将多描述编码与运动补偿三维小波可扩展视频编码相结合,提出了一种基于运动补偿三维小波的多描述视频编码方法。

基于标量量化的多描述编码方法[6](Multiple Description Scalar Quantization,MDSQ)是最常见的多描述编码方法。其基本思想是对信源进行不同精度的量化,将不同精度的量化结果当作每一种对信源的描述。在接收端,若只得到一个描述,则可重构出粗糙的源信号;若得到多个描述,便可重构出精细的源信号。

1993年,Vaishampayan使用带有渐进特性的多描述标量量化器构造出了第一个实用的多描述编码器[6],如图2所示。它的设计分为索引分配选择以及针对给定的索引分配进行标量量化。实际上,这也相当于利用不同精度的标量量化器分别传输信息。

标量量化是由均匀标量量化器实现的,经标量量化后的原始信息(高斯无记忆信源)用于后面的索引分配。这里的量化是不可逆的压缩过程,因此会引入损失[7]。

MDSQ的索引分配遵循以下规则[8]:建立一个x×x的矩阵,将经量化后的信息从0到x-1方向、从左上到右下、从主对角线向外填入该矩阵。

上述MDSQ采用定长码进行索引分配。为了提高系统的性能,1994年,Vaishampayan在原有基础上进行改进,采用变长码来代替定长码,这种多描述编码器称为受熵约束的MDSQ(ECMDSQ)[9]。但MDSQ与ECMDSQ的编码复杂性较高。2002年,这种方法扩展到两个以上的描述情况[10],它对MDSQ使用需要训练码书的非统一的中央量化器,即通用多描述标量量化器(UMDSQ),可以获得中央和边缘失真之间连续的折中点,能以较低的复杂度实现与ECMDSQ相同的性能较低。2003年,Gavrilescu等提出嵌入式多描述标量量化器[11]。它使用多描述统一标量量化(MDUSQ)以实现在不可靠信道上稳健且渐进地传输,并采用嵌入式的索引分配策略以改善渐进传输信息的率失真性能。后来,Batllo和Vaishampayan还对平方误差失真度量下有记忆信源的多描述量化器的渐进性能进行了分析。

2 基于标量量化的多描述视频编码

本文将标量量化的概念应用于MPEG-2视频编码,在MPEG-2系统框架下,提出了一种基于MDSQ的多描述视频编码方法。

2.1 基于标量量化的多描述视频编码器

本文采用的编码器的简化结构框图如图3所示。

该编码器结构与MPEG-2的编码器结构大体相同,即原始帧org经过帧重排后,与该帧的预测帧pred相减,将得到的残差帧△作为待传送的信息进行DCT变换和量化。其中,I帧的预测帧的值必为128,其余帧的预测帧由参考帧ref与运动矢量(MV)通过运动补偿得到。参考帧ref由残差帧△经反量化和反DCT变换后,与该帧的预测帧pred相加得到。

该方案与MPEG-2编码器的不同在于,MPEG-2编码器将残差帧△经熵编码后直接输出,这相当于单描述编码;而笔者提出的多描述编码器的输出是由多个输出描述构成。这里的做法是:首先,找到残差帧△中的每一个系数对应“索引分配”表的两个索引分配号,每一路索引分配号代表一路描述;接着,分别对2个索引分配号进行熵编码,同时,为了保证两路描述均符合MPEG-2码流规定,即可单独解码,需要将这两路熵编码后的索引分配号分别封装成2路MPEG-2标准码流,即在码流的相应位置处加上MPEG-2规定的信息头和信息,并对这些信息按照MPEG-2标准中的规定进行熵编码,这些信息包括运动矢量、宏块信息等。

最后,将封装好的2路码流des1和des2当作编码器生成的两路描述传入信道。

值得注意的是,单描述系统变成多描述系统的过程必然会增加数据量,其数据量的增加与描述路数的多少成正比。为了尽量降低数据量,规定值为0的DCT系数值在“索引分配”表中的2个索引分配号也分别为0。这样,经游程编码后的数据就不会增加太多。图4为本系统所用的“索引分配”表。对于本文采用的“索引分配”表,可以将这张表看作是一个矩阵,其2路索引号分别为该矩阵的行号和列号,但这时的行号和列号可以为负数。

在实现具体方案时,是对经过量化和DCT变换的DCT系数进行多描述编码,将产生的2路数据分别进行熵编码,从而生成2路描述。因为MPEG-2系统中的量化和DCT变换都是有损的,所以两路描述必须在DCT变换后产生,否则会带来损失。而如果在熵编码后再进行多描述编码,则每路描述无法单独解码,若一路数据有错误,解码端就无法正确解码。因为,为了实现可行的多描述视频编码方案,本方案将多描述编码放在DCT变换之后。

2.2 基于标量量化的多描述视频解码器

本文采用的解码器的简化结构框图如图5所示。

首先,分别对接收到的两路描述des1和des2进行熵解码,找到解码后的两路索引分配号,即每一个DCT系数对应的索引分配表的行号和列号。

接着,根据接收情况,选择“索引合成”方式:若接收端只收到1路描述,则根据接收到的描述进行边路索引合成;若收到2路描述,则根据2路描述进行中央索引合成。例如,若只收到第一路描述des1,解码得出其行号为-2,那么,根据图4所示的“索引分配”表,估计出该DCT系数为-3.5,即第二行所有数据的平均;若只收到第二路描述des2,解码得出其列号为-1,那么,根据图2所示,估计得出该DCT系数为-2.5,即第一列所有数据的平均;若收到2路描述des1和des2,解码得出其行号、列号分别为-2和-1,那么,根据图4所示,估计得出该DCT系数为-3.0。

最后,对索引合成后得到的DCT系数值进行反量化、反DCT变换,将恢复出来的残差帧与该帧的预测帧pred相加,得出该帧的参考帧ref。I帧的预测帧pred中的每一个像素值都是128,而其余帧的预测帧pred是由参考帧ref和运动矢量MV决定的。其中,运动矢量MV是从接收码流中直接读出来的。最后,通过帧重排将所有帧的顺序还原为显示顺序。

3 实验结果与分析

为了验证多描述编码的抗误码性能,本文将MPEG-2标准编解码方法(即单描述编码方法)与基于MDSQ的多描述视频编码方法进行了比较。

本文在PC机上对帧率25帧/秒(f/s)、色度采样格式为4∶2∶0的CIF格式序列进行测试,分别选取akiyo,coastguard,foreman和stefan序列的前300帧作为测试序列。单描述编码的MPEG-2编码器采用I-B-B-P的GOP结构,一行宏块组成一个像条(slice),多描述编码器的设置与单描述编码相同,但采用MDSQ生成两路描述码流。为了保证相同的编码效率,对于这4个测试序列,MPEG-2编码码率和两路描述的总码率分别相同,总码率分别为6.83,6.81,6.79和6.81 Mbit/s。

实验中,将单描述码流和多描述码流分别传送到网络信道中传输,传送各个描述的信道是相互独立的。将一个像条封装成一个数据包,并分别设置信道丢包率为0.05,0.10,0.15,0.20,0.25,0.30和0.35,每个丢失的slice都用前向复制的方式对其进行错误隐藏。同时,保证所有序列的第一帧的所有像条不丢失。在各个丢包率下,分别计算MPEG-2标准编解码器重建序列、基于MDSQ的多描述视频编解码器单路描述重建序列以及两路描述重建序列与原始序列的峰值信噪比,其结果如图6所示。

由图6可见,在多描述解码器只接收到描述1或者描述2时,这两路描述经多描述解码器重建的序列的质量很相似。在无误码条件下,它们的质量与经MPEG-2编解码器重建的序列的质量相比,还是有一定差距的,不过这种差距随着丢包率的增加而急剧减小。这是因为在无误码情况下,对单路描述进行“索引合成”后的值是对原始DCT系数的估计,这里存在误差。但是随着丢包率的加大,前向复制方法也会产生误差。在视频内容大多为静止的序列中,如akiyo序列,前向复制产生的误差要比索引合成小;在视频内容大多为运动的序列中,如stefan序列,前向复制产生的误差与索引合成的相当。

由于MPEG-2编码器和多描述编码器的编码效率相同,所以,在多描述解码器同时接收到两路描述时,在无误码的情况下,MPEG-2解码器重建的视频质量必然高于多描述解码器,但是,随着丢包率的增大,后者的重建视频质量将明显优于前者。这是因为,在相互独立的信道中,同一帧相同位置处的像条在2个索引中同时丢失的概率很小。当接收端收到2个描述时,重建序列的质量与原始序列相同;当接收端只收到1个描述时,仍然可以恢复质量可接受的序列。即便如此,单路描述重建序列的质量也比前向复制后的质量高,因为前向复制仅仅只是将前一个参考帧的相同位置处的像条内容复制过来。

4 小结

本文在MPEG-2系统框架中实现了一种基于标量量化的多描述视频编码方案,并进行了大量仿真实验。实验结果表明,在高丢包率下,笔者提出的多描述视频编码方案在重建图像的PSNR方面明显优于传统视频编码方法。这种方法更适合于丢包率高的网络信道。

参考文献

[1]李彬,黄峰,孙立峰,等.一种鲁棒灵活的非平衡多描述视频编码和传输方案[J].计算机学报,2008,31(7):1155-1164.

[2]卓力,王仕宝.一种兼容H.264标准的多描述视频编码方法[J].北京工业大学学报,2008,34(10):1026-1031.

[3]肖方明,郁梅,蒋刚毅.基于CDN的多描述视频编码方法研究[EB/OL].[2010-03-20].http://www.arocmag.com/ch/reader/view_abstract.aspxflag=1&file_no=10969&journal_id=arocmag.

[4]陈锦春,蔡灿辉.基于方向提升小波变换的多描述视频编码[J].计算机工程,2009,35(22):162-164.

[5]卓力,王仕宝,王素玉,等.一种基于运动补偿三维小波的多描述视频编码方法[J].电子学报,2009,37(10):2154-2159.

[6]VAISHAMPAYAN V.Design of multiple description scalar quantizers[J].IEEE Trans.Information Theory,1993,39(3):821-834.

[7]蔡旻,宋建新.常用的多描述编码方法[J].电视技术,2005,29(S1):35-37.

[8]TANYA Y,WOLF,REINGOLD E M.Index assignment for multichannel communication under failure[EB/OL].[2010-03-20].http://citeseerx.ist.psu.edu/viewdoc/summarydoi=10.1.1.22.4001.

[9]VAISHAMPAYAN V,DOMASZEWICZ J.Design of entropy-constrained multiple-description scalar quantizers[J].IEEE Trans.InformationTheory,1994,40(1):245-250.

[10]GAVRILESCU A I,MUNTEANU A,SCHELKENS P.Embedded multiple description scalar quantizers[J].Electronics Letters,2003,39(13):979-980.

标量分析法 篇5

在数学中, 正负一般用来表示加减或数的正负即大小, 如正数表示大于零的数, 而负数表示小于零的数。在物理中, 我们会发现物理中正负号的含义远比数学中及日常生活中所代表的意义要丰富的多。为了准确的理解物理概念, 掌握物理规律, 我们必须要把物理量中出现的正负号在各种情形时的含义及使用时注意事项进行归纳总结。而正负号只要与物理问题联系起来, 其意义将变得非常丰富, 在不同的情况下具有不同的含义。不少同学由于没有正确理解正负号的物理意义, 在应用中就会出现这样那样的错误。

为帮助同学们正确认识并掌握高中物理矢量标量中正负号的含义, 使之清晰化、有序化, 现将其在矢量和标量中常见几种情况归纳如下:

1 矢量中的正负号含义

1.1 表示方向关系

高中物理中许多物理量是矢量, 如位移、速度、加速度、力、电场强度、磁感应强度、动量、冲量等等。矢量是既有大小又有方向, 在一维情况下, 为了区分矢量的方向, 我们一般规定其中某个物理量的方向为正方向, 与规定方向相同的物理量为正, 矢量数值前就出现“+”号;与规定方向相反的物理量为负, 矢量数值前就出现“-”号 (正号常常略去不写, 以下均同) 。在选定一个正方向的前提下, 矢量的正负号实质上表示矢量的方向, 并不表示物理量的大小。

如加速度, 加速度是一矢量, 它既有大小, 也有方向。在匀变速直线运动中, 一般规定初速度方向为正方向, 若加速度为正值, 表示加速度的方向与初速度的方向相同, 若加速度为负值, 表示加速度的方向与初速度的方向相反。可见这里的正负号表示方向, 而不表示大小。因此, 在比较大小时, 只需要看正负号后面数值的大小, 数值大者, 加速度就大, 数值小者, 加速度就小, 这种比较法与数学中负数大小的比较是截然不同的。

在高中物理中, 通常研究一维空间的矢量表达式, 如运动学公式、牛顿第二定律、动量守恒、动量定理等, 解题时要先规定正方向, 将矢量转化成带正、负号的代数量表示, 再代入公式计算物理量。在进行一条直线上的矢量运算时, 由于矢量方向只有与直线同向或反向两种可能, 所以, 若沿矢量所在直线选一正方向, 规定矢量与其同向取正值, 反向取负值, 则矢量值的正负即表示方向, 它们的运算也简化为代数运算。

如以初速度V0=20m/s竖直向上抛一物体, 一般取初速度方向为正, g=10m/s2, 则抛出后任意时刻t的速度:

t=3s时, Vt=-10m/s时, 表示物体向下运动。

(此过程不计空气阻力)

1.2 表示物理量的变化情况

对于矢量, 变化量为末矢量与初矢量的矢量差, 当其沿直线方向变化时, 规定正方向后变化量的正负表示矢量变化的方向。如物体受恒力作用时, 其速度改变量为△V=V末-V初, 取V初的方向为正方向, 则△V为正表示物体速度沿正方向增加, △V为负表示物体速度沿正方向减少。显然, 这里的正负是不表示物体初、末速度的方向的。正号表示与正方向相同, 负号表示与正方向相反。

1.3 表示物理规律中各量的关系

在某些物理过程中, 各物理量具有确定的关系式和方向关系, 如物体受到外力作用时其加速度方向与外力方向时刻相同, 物体相互作用时作用力和反作用力方向时刻相反。对应规律表达式中的正、负号即是为反映这种关系而引入的。如简谐运动中回复力的表达式F=-kx中, 负号表示回复力方向与物体离开平衡位置位移的方向时刻相反。显然, 这里的负号不表示位移方向与所选正方向相反。动量守恒定律两物体动量变化关系“Δp1=-Δp2”, 这里的“-”号表示“Δp1与Δp2”的方向是相反的。在牛顿第三定律的表示式+F12=-F21中, 这里的正负号仍然表示的是方向, 负号表示二者反向。在动量守恒定律P1+P2=P'1+P'2中, “+”号表示等式两端分别为两物体作用过程初、末状态的动量矢量和, 不表示P2和P'2的方向。

在一个题目中, 有时也可能同时存在几个相关的矢量, 一般情况是设定初速度方向为正, 然后确定各矢量的正负, 再根据相关的公式进行讨论。

2 标量中正负号的含义

2.1 标量是只有大小, 没有方向的物理量, 但有些标量是双向标量, 带有非矢量的“方向”的含义

如电流强度I的正负表示电流的流动方向, 正值表示电流方向与规定的流动方向相同, 负值表示电流方向与规定的流动方向相反;在交流电中存在着正半周期和负半周期。正半周期电流的流向与负半周期电流的流向相反, 大小的比较与数学中负数的比较不同, 在物理中必须取绝对值来比较大小。在电磁学中, 磁通量φ的正负表示磁感线穿过平面 (或曲面) 的方向关系, 所谓穿过某一面积的磁通量, 指的应是不同方向穿过的磁通量的代数和。人为规定磁感线沿平面一侧穿过面为正值, 那磁感线沿平面另一侧穿过面为负值。例如, 匀强磁场B垂直穿过矩形线圈abcd, 若线圈面积为S, 则将线圈反转180°后, φ1=BS, φ2=-BS, 在此过程中磁通量的变化量是△φ=φ2-φ1=-2BS。

2.2 表示物理量的相对大小

高中物理中所学习的如重力势能Ep、弹性势能Ep、电势能Ep、电势Φ、分子势能、摄氏温度t等这些物理量的大小与参考平面或参考点的选择有关 (但两值之差与所选参考点无关) , 其值的大小一般是相对参考位置而言的, 在选定了零参考位置后, 它们就会出现正负值, 正负号分别表示其值比参考面或参考点的值大或小即表示大小的意义。等同于数学代数课中的正数大于负数的意思。

例如:电势的正负不具有方向性, 只表示该处的电势比零电势高还是低。如正电荷周围的电势为正, 表明正电荷周围的电势处处比零电势高, 而负电荷周围的电势为负, 只表示负电荷周围的电势处处比零电势低。电场中的两点A、B的电势为UA=3V, UB=-4V, 表示A点电势比零电势点高3V, B点电势比零电势点低4V, 则UA>UB。

2.3 在研究物理问题时, 常常会遇到相反的物理现象、性质、过程

在研究物理问题时, 常常会遇到相反的物理现象、性质、过程, 为反映它们的不同, 就在这些量前面加正、负号予以区别, 这里的正负号不表示方向, 也不表示大小的含义。

表示相反的作用效果, 如功是标量, 力对物体做功有正有负, 这里的正负既不表示方向也不表示大小, 它表示力的作用效果。力对物体做正功, 表示力对物体运动起推动作用即表示该力对物体而言是动力;力对物体做负功, 表示力对物体运动起阻碍作用即表示该力对物体而言是阻力, 也表示能量是输入还是输出。

表示相反的物理过程, 如热力学第一定律W十Q=ΔE, 外界对物体做功, W取正值, 物体对外做功, W取负值;物体吸热, Q取正值, 物体放热, Q取负值;内能增加, ΔE取正值, 内能减少, ΔE取负值。

表示物体特性的正负号, 如电量、透镜焦距、像距等物理量的正负号, 表示物体的特性。如表示带电性质。如正电荷的电量用“+Q”表示, 负电荷的电量用“-Q”表示, 这里的正负号即表示两种性质相反的电荷。

表示成像虚实。如在透镜成像的有关计算中, 透镜成像公式:1/u+1/v=1/f, 实像v取正值, 虚像v取负值;凸透镜f取正值, 凹透镜f取负值。在学习透镜时, 我们知道焦距的正负表示是凸透镜还是凹透镜, 也表示透镜对光线的作用是会聚还是发散, 正焦距表示透镜对光有会聚作用, 是凸透镜;负焦距表示透镜对光有发散作用, 是凹透镜。像距的正负是表示像的性质, 即像距为正, 表示所成的像是实像, 像相对物体在镜子的异侧, 倒立的;像距为负, 表示所成的像是虚像, 像相对物体在镜子的同侧, 正立的。

2.4 表示物理量的变化情况即增加或减少

物理量的变化一般都是用其在变化过程的末态值减去初态值表示, 如动能增量ΔEk=Ek2-Ek1, 机械能增量ΔE=E2一E1, 势能增量ΔEp=Ep2-Ep1, 由此得出的变化量的正负表示其增减情况, 即能量增加 (或减小) 过程。若Δ>0, 说明该物理量增加, 若Δ<0, 说明该物理量减小, 若Δ=0, 说明该物理量不变。

2.5 表示物理规律中各量的关系

在一般情况下, 物理规律表达式如动能定理、机械能守恒、功能关系、透镜成像公式等中的正负号是反映各量运算关系的符号, 它们既不表示量的大小, 也不表示量的方向。如, 原子进行定态跃迁时对应光子的能量为hv=E初-E终, 这里的“-”号表示E初-E终为原子在两定态间的能量差, 不表示原子跃迁后能量为负值;计算时只需直接将物理量即大小及正负号代入公式计算即可。

2.6 表示条件

如:在分子间的距离跟分子势能的关系中, 当r-r0>0时, 分子势能随分子距离增大而增大;当r-r0<0时, 分子势能随分子距离减少而增大。

综上所述, 高中物理矢量和标量中的正负号的含义要比其日常生活中及数学中的含义要丰富得多。

标量分析法 篇6

随着“大运行”体系的不断推进, 电网规模日益扩大[1,2], 对电网安全运行以及供电可靠性的需求也越来越高[3,4], 而告警系统作为监视、保障电网安全运行的重要工具, 在电网调度监控中起着举足轻重的作用[5]。

近年来, 国内外针对电网安全告警开展了相关研究并取得了一定的进展[6]。文献[6]从故障分析的角度分层分类别阐述了智能告警的内涵并对智能告警发展趋势进行了深入分析。另外在智能告警或预警应用方向也有相关的研究:文献[7]总结了国内外预警系统的现状, 提出了一种大电网安全可靠运行的分级梯度预警预控方法;文献[8]围绕智能告警、故障诊断和故障恢复等方面研究实现了服务地区电网的智能调度辅助决策系统;文献[9]通过可视化提升、图形扩展以及多系统数据关联等手段开发了在线可视化预警调度系统;文献[10-11]阐述了电网动态监测专业下的预警与辅助决策系统的功能, 分析其应用效果并进行了功能展望;文献[12]则在电力系统静态安全分析的方向上, 采用基于电压稳定指标的模糊聚类数学方法实现以节点载荷能力为核心的电压稳定指标预警分析方法。

上述智能告警、预警的研究成果大多是在当前调度运行系统模式下, 提出的解决告警系统某个或某类问题的方法或思想, 是对电网智能化安全运行的重要探索和实现, 在当前主流的调度自动化系统中能够满足基本的告警分析需求, 为电力生产运行提供了较全面可靠的支撑。但是上述研究成果中电网调度系统大多基于关系数据库, 其存储精度为分钟级, 导致在告警判断分析时, 很难获取电网真实的秒级历史数据, 即告警判断缺乏全面的数据支撑, 难以完成瞬时告警的捕捉、历史时刻告警的回溯分析, 且不能有效利用电网全息的海量历史数据进行实时告警分析以及预警分析, 在电网规模日益扩大、电网运行可靠性要求日益提高的背景下, 在原有基础上发展新的技术方案迫在眉睫。

近年来, 时序数据库在电网中的集成应用使得高精度采样并全息记录电网运行过程中带有时标数据成为可能[13,14,15,16,17]。因此, 本文提出了一种基于时标量测的电网实时预警方案, 有效地解决了量测跳变难以捕捉、告警规则单一、电网运行异常时缺乏有效预警手段等问题;并将其成功应用到地区智能电网调度控制系统中, 将电网运行实时数据、全息历史数据以及电网模型数据三者融合, 实现实时运行状态快速预警。

1 基于时标量测的实时预警系统设计思想

完整、准确、及时、可靠的基础信息是电网监视、预警和辅助决策的基础[18]。为了实现准确可靠的实时预警, 本文立足于实时数据库存储的带有时标的电网量测数据, 确立了基于时标量测实时预警的总体技术架构如图1所示。该架构采用关系数据库以及实时数据库作为混合数据源, 包含新的实时数据入库处理、基于规则的告警、基于历史数据的预警以及前端可视化, 在完成基础数据分流存储以及调度基本的告警系统功能的同时, 综合加入了基于规则的联合告警以及基于历史数据的智能预警, 满足不同的告警业务应用需求, 形成一体化的电网实时预警体系架构, 新的预警模块可以插件的方式增加到该开放式的架构中。

在调度自动化系统中实现基于时标量测的实时预警有如下核心技术点。

a.系统数据的分流处理。实现电网运行过程中所有带有时标的量测数据均通过数据采集与监视控制 (SCADA) 系统进行数据处理后存入实时数据库中, 实现时标量测数据的全息记录, 为后续的智能告警、预警以及其他电网业务应用提供全面的历史数据支撑。

b.脚本驱动的告警规则定义与执行。实现从告警业务应用需求到规则脚本的平滑完整描述, 使得无论是单一量测的多时刻数据组合判断, 还是多个量测的数据组合判断, 都可以通过配置告警判断规则的脚本实现。

c.基于电网运行历史数据挖掘的运行状态预测告警。通过电网设备历史数据训练学习以及当前状态的运行数据, 预测最贴近长期历史运行的状态数据, 从而可以通过预测数据与实际数据的差距对比, 发现电网设备的不良状况, 最终实现预警。

d.探索告警结果精细化的展示以及多样化的辅助决策分析。研究实现按照电网模型的告警/预警信息显示、告警相关量测前后一定时间段的数据对比分析以及对重要告警进行接线图和数据曲线的历史反演等功能。

2 关键技术方案

智能告警可分为基于规则、基于数据、基于模型以及基于推理等方向, 如图2所示。

本文以综合的实时预警为目标, 弱化了各种分类之间的关系, 将规则、模型、数据融合, 达到按规则实时预警的目的, 如对于电网中的某个设备, 会有温度、功率因数、电压限值等多个限值规则, 在运行过程中会有一系列的指标, 需要计算后才可以进行判断, 利用计算后的数据以及原始的实时和历史数据, 本方案试图通过规则的完整脚本描述完成多个限值规则的结合, 实现按规则实时预警;另外, 本方案也将模型、数据、推理算法融合, 达到按推理结果进行实时预警的目的。

2.1 系统数据的分流处理

常规的调度自动化系统中, 前置机采集到的实时数据报文经SCADA系统处理后存入系统的内存数据库中, 供系统的各种应用使用, 而内存数据库中的数据按分钟级 (如5 min) 周期存储到历史数据库即关系数据库中。笔者在前期工作[13]中提出了集成实时数据库后的调度自动化系统的数据流, 即关系数据库仍作为电网运行数据周期存储的载体, 而实时数据库则并行地记录全息的带有时标的量测数据。为了实现全息存储并充分利用时标量测数据, 在以上集成思想的基础上, 提出如下技术创新点。

a.按照IEC61970系列标准对电力系统公共信息模型 (CIM) 及应用程序接口规范[19,20], 在调度自动化系统中提供模型代理服务以及标准的模型访问接口, 接口集成至统一的数据访问层中, 服务则集成至调度自动化系统的平台服务层。服务完成电网模型的组织以及模型的具体量测与实时数据库测点的映射构建。该技术创新点的前提是:在调度自动化系统的模型数据库中已定义了系统实时采样量测与实时数据库中数据信息的映射关系, 包括实时数据库中对应测点名称、压缩配置、数据有效时间等重要参数。

b.调度自动化系统的实时数据处理模块根据创新点a中列出的时标量测在实时数据库中的关键信息, 将来自前置机的带有时标的量测数据预处理后存入实时数据库中, 同时将数据存至内存数据库供系统原有应用在必要时访问。

c.应用通过具体时标量测对应的实时数据库测点名称或创新点a中提及的模型访问接口得到存放在实时数据库中的量测数据, 包括某个量测一段时间历史数据的获取、多个量测在某时刻的断面数据获取、某个模型某个时刻所有量测的数据获取等数据访问方式。图3是集成实时数据库的调度自动化系统数据流图。

图3中, 虚线框外的部分是调度自动化系统集成实时数据库之后的数据流向, 在处理实时数据之后, 数据可能分为带时标的量测变化数据和电网运行实时数据2种流向, 也可能是其中的一种流向;虚线框内则包含了实时数据库访问、模型访问、内存数据库访问等访问方式, 这些方式都封装在数据统一访问层中;1、m、n为设计时对要素如测点、量测、模型之间的映射关系的描述, 如测点与量测的关系为1∶1, 即1个量测对应1个测点;模型与量测间的关系为m∶n, 即1个模型可能涉及m个量测, 而1个量测可能为n个模型所用。

2.2 脚本驱动的告警规则定义与执行

调度自动化系统的告警业务需求是通过告警限值、开关变位等固有的告警定义方式实现的, 这种方式能够满足对电网实时运行状态诊断判定的基本需求, 但也存在诸多局限, 如无法结合1个量测的多个时间点数据进行联合判断、多个量测之间数据的联合判断以及告警规则定义的灵活度差等。而常见的利用告警专家库中的专家知识进行告警的智能判断则依赖调控人员经验以及理论分析, 且侧重于原因分析以及故障解决方法, 在实际的告警判断环节没有明显的改进。本文集成Lua脚本引擎, 将传统的告警业务需求通过简便高效的规则脚本描述并定义, 再通过后台服务执行脚本并对判断结果进行后台存储及前端展示通知的处理。图4是基于脚本驱动的告警判断流程示意图。

(1) 告警规则定义。

Lua脚本是精简的脚本语言, 运行速度快, 且能够方便地嵌入C/C++程序中[21,22], 其脚本引擎可以与主流的调度自动化系统无缝集成。本方案中的告警规则脚本使用Lua语法作为语法规则约束, 利用其逻辑判断、循环、数学函数、字符串函数、自定义变量以及自定义函数等强大的逻辑设计功能[23], 首先完成调度自动化系统中模型访问函数、历史数据访问函数、实时数据访问函数的脚本封装, 并扩展到Lua脚本引擎中, 以此作为告警规则定义的基础;其次, 在告警规则定义时, 将电网模型可视化为树结构, 遥测限值设置、遥信变位设置、告警结果类型设置等集成到规则菜单中, 告警规则定义时只需要将模型树中的量测项拖入配置框, 再选择弹出的规则菜单项即可对电网带时标量测的告警完成基本的规则脚本生成, 也可以基于告警规则脚本模板或人工编写脚本完成告警规则定义;最后, 利用脚本引擎对脚本进行语法检查以及告警定义规则合法性检查。

(2) 后台执行及结果处理。

根据告警规则的配置, 对于基本的告警, 首先需要解析所有规则脚本得到每个脚本中涉及的量测, 并向实时数据库订阅这些量测的实时数据, 然后根据实时数据库的数据通知来持续地维护量测的实时数据, 且当接收到量测的新数据通知时即对涉及到该量测实时数据的告警规则进行判断执行;而对于需要周期性判断的告警规则, 则通过告警判断的后台程序根据时间进行告警判断。

对于判断出的告警信息, 主要有3种处理方式。

a.告警信息入库。以告警时间以及告警配置别名作为关键词, 将告警信息存入关系数据库中, 作为告警信息历史回溯分析的基础。

b.预警系统统一客户端展示。将实时产生的告警信息推送至系统的客户端展示界面, 实现对电网运行告警全面而及时的跟踪。

c.其他应用的通知。告警判断处理后台提供根据告警类别进行告警订阅的功能, 在新的告警信息产生时, 即根据订阅情况向各应用进行信息分发推送。

2.3 运行状态预测告警

间隔是由若干相互关联的设备与设备之间的连线组成的设备集合, 而将厂站内的断路器和刀闸按照其组成、功能、接线方式进行分组就得到了电网的间隔, 间隔是调度监控人员进行电网业务管理、操作的重要组织形式。现有的告警系统中, 未见以电网间隔作为告警分类依据的功能, 本方案即以电网间隔中各量测的历史运行数据为基础, 挖掘得到间隔历史运行模型;然后基于间隔历史运行模型, 对间隔实时运行的状态进行判断, 计算其与历史运行模型的差别以确定当前运行是否存在异常, 同时定位间隔中各个分量对偏差的贡献程度, 最终实现面向电网间隔及其相关量测的预测告警。

步骤1:间隔历史运行模型构建。

间隔历史运行模型构建采用层次聚类的思想。首先读取反映间隔正常运行的历史数据集, 每组数据都由间隔的关键量测即有功P、无功Q、电流I及断路器状态B组成, 称为间隔历史数据向量 (P, Q, I, B) , 从历史数据向量集中得到间隔历史运行的最大向量 (Pmax, Qmax, Imax, 1) 以及最小向量 (Pmin, Qmin, Imin, 0) , 将历史数据向量集标准化, 标准化时断路器状态B不变, 另外3个量测P、Q、I的标准化方式为:

然后根据模型构建的参数, 包括对各历史向量聚类的初始范围向量、扩展范围向量, 依次处理标准化后的数据向量 (P′, Q′, I′) , 根据数据向量集的最大向量、最小向量将其标准化, 第一个向量自成一个类模型, 其后的向量根据其与各个类模型的距离差、类模型范围以及扩展范围确定是否需要与某个类模型结合, 然后确定其所在的类模型 (属于某个当前已有类模型或者自成一个新的类模型) , 直到所有间隔历史数据向量被处理一遍, 至此得到若干个类模型, 总称为间隔历史运行模型。图5是间隔历史运行模型构建的流程示意图。

步骤2:间隔当前状态预测告警。

间隔当前状态预测采用基于相似性的回归预测思想。在步骤1中产生的间隔历史运行模型已经覆盖了间隔几乎所有正常运行下的状态, 包含多个聚类模型即正常状态。在调度自动化系统实时运行中, 根据采集得到的实时量测数据向量, 得到与其距离最近的历史运行聚类模型即近似模型。在计算与每个历史模型的距离时, 有如下准则。

a.如果断路器状态为1, 那么只与断路器状态为1的历史模型计算距离;如果断路器状态为0, 则只与断路器状态为0的历史模型计算距离。

b.如果量测实时值大于该模型的对应量测的上限值, 那么该量测分量的距离为实时值减去模型对应分量的上限值。

c.如果量测实时值在该模型的对应量测的上限值和下限值之间, 那么该量测分量的距离为0。

d.如果量测实时值小于该模型的对应量测的下限值, 那么该量测分量的距离为模型对应分量的下限值减去实时值。

然后根据确定的近似模型, 计算得到该时刻间隔运行关键量测的预测值, 除了断路器状态的预测值与实时值相同外, 其他的量测预测值计算遵循如下准则:

a.如果量测实时值大于近似模型对应量测的上限值, 那么该量测当前状态预测值即为上限值;

b.如果量测实时值在近似模型对应量测的上限值和下限值之间, 那么该量测当前状态预测值即为其自身;

c.如果量测实时值小于近似模型对应量测的下限值, 那么该量测当前状态预测值即为下限值。

如果实时运行向量与预测向量的差大于设定的经验值, 即预测向量与其近似模型的距离较大, 那么说明此时该间隔出现了运行异常的情况, 则求出每个量测对该异常的贡献程度以供偏差定位, 同时进行告警;如果该实时运行向量与预测向量相差较小, 则认为此时该间隔运行状态正常。至此, 完成间隔运行状态的预测告警。

2.4 预警方法融合

在本系统中, 各预警方法如关联告警、运行状态预警等方法都分为后台服务与前端界面服务2个插件, 且均以松耦合的方式挂接在系统中。以运行状态预测告警算法为例, 其后台模块以服务的形式挂接在告警后台判断的框架上, 成为系统后台服务的一部分;前端界面则以智能电网调度控制系统中常见的信息监控画面、接线图以及关键潮流为中心, 联动地挂接到前端展示框架中。通过此种松耦合的方式, 本系统实现了多种调度业务预警方法的动态集成与融合。已集成的其他典型预警方法概述如下。

a.状态估计质量预警。通过计算参数辨识, 分析出状态估计可能受到的影响。该预警方法结合智能电网调度控制系统中状态估计结果、状态估计误差量序列以及计算参数结果改动记录, 挖掘分析得出计算参数对状态估计结果的关联关系。在人为修改状态估计的计算参数时, 可以预估出状态估计结果的质量, 从而对改动参数的行为进行告警, 最终实现对状态估计质量的预警。

b.线路限值预警。在电网实际运行中, 很可能出现新建线路通电, 系统中仍未录入遥测量限值的情况, 这可能会导致难以预估的事故。该预警方法结合电网模型与拓扑, 识别出未定义限值的线路并告警, 同时分析预测线路限值, 并提供合理化的建议。

系统中多种告警、预警方法的融合, 实现对电网关键运行状态的识别、预测乃至告警, 再结合3种丰富的可视化展现, 最终实现系统预警功能的贯通。

3 可视化

前端展示完成用户与基于时标量测的实时预警系统的交互。重点完成系统中告警配置、告警结果展示与查询、预警提醒等功能。具体内容包括:电网运行实时/历史数据以及电网模型查看;规则告警配置, 包括规则告警判断执行的机制、规则脚本以及规则告警结果处理方式配置等;预测告警参数配置, 包括历史运行聚类参数、预测告警参数配置以及预测告警结果处理方式配置等;结果展示包括实时/历史查询以及筛选、相关量测全息数据对比、对应电网接线图/量测曲线显示等, 展示的手段包括颜色闪烁、数据表格、预警结果列表、丰富的脚本控件、电网接线图、量测趋势曲线、量测偏差雷达图、量测对偏差贡献率柱状图等, 最终达到便捷配置系统参数、全面展示预警结果、丰富分析预警结果的目的。

4 工程实用

本文成果已在苏州智能电网调度控制系统中得到了工程实际应用, 在系统集成实时数据库作为实时数据存储载体的基础上, 完成电网模型与时标量测的映射并对上层应用提供统一的模型访问接口。通过集成苏州电网模型、实时/历史运行数据、电网业务规则以及历史运行经验, 以规则脚本描述、苏州电网历史数据学习与回归预测结合的手段实现了大型地区电网实时预警。图6为某间隔中有功分量在一段历史时间内实际值与预测值的对比示意图, 该画面由预测告警信息跳转而来, 图中ΔP为有功实际值Pr与预测值Pf的差值, 可以清晰地指明间隔内有功分量对告警的影响情况。

目前, 本方案实现的各项功能运行稳定, 并且经过工程应用中的不断优化, 实时预警的准确性和有效性都有大幅提升。目前, 系统已识别关联规则告警 (如开关与遥测不一致、对端不平衡以及主变各侧遥测越限等关联告警) 2836条、间隔运行状态异常预警729条、线路限值预警26条等告警信息, 有效地辅助支撑了电网安全稳定运行。

5 结语

通过在苏州地区智能电网调度控制系统集成实时数据库, 时标量测的应用价值得到了充分挖掘。本文探索并提出了基于时标量测的电网实时预警方案, 使得电网告警的判断更切合实际电网业务规则, 充分利用电网运行历史数据及实时数据的特点, 也使得电网运行预警能更可靠, 并充分辅助决策分析。

摘要:时序数据库使记录带时标量测数据成为可能, 因此提出了基于时标量测的电网实时预警方案。该方案包含4个核心技术点, 即系统数据的分流处理、脚本驱动的告警规则定义与执行、基于运行历史数据挖掘的运行状态预测告警、告警结果精细化的展示以及多样化的辅助决策分析, 实现了电网模型数据与时标量测的实时数据、历史数据融合应用, 解决了电网量测跳变难以捕捉、告警准则单一、电网运行异常时缺乏预警手段等问题。所提方案在实际工程中的应用结果表明, 其提高了预警系统的准确性和有效性。

标量分析法 篇7

现代化生产中设备的状态检测技术越来越受到重视 , 人们投人大量精力进行设备故障诊断的研究。传感器的应用 , 使得设备的故障检测得到了发展 , 但在实际应用中 , 单个传感器往往存在一些缺陷 , 如信号采集不全面、不准确甚至错误、信号采集丢失、延时等等 , 因此人们研究出多个传感器的共同应用 , 即多传感器信息采集。多传感器信息融合技术是上世纪80年代形成和发展的一种自动化信息综合处理技术。多传感器的应用 ,可以更加有效、全面的采集信息 , 加速发展了信号处理技术。20世纪80年代初 ,Bar-shalom[1]就研究了带独立噪声的两传感器子系统之间的相关性。多传感器充分利用了多源数据的互补性及电子计算机运算的高速性和智能性 , 大大提高了信息处理结果的质量。随着应用系统日益扩大 , 所需的功能也越来越复杂 , 使用传感器的种类也相应的增多。原来的单一传感器检测技术已不能满足要求,于是对多传感器融合技术的研究也越来越多,文献 [2,3] 在正态分布的假设下分别给出一种极大似然融合准则 , 但融合时计算加权矩阵需要求解一个较高维数的矩阵的逆 , 不便于实时应用。文献 [4] 给出了一种标量加权的信息融合算法 , 但其假设局部状态估计误差不相关 , 这不符合一般情形 , 所以只能获得次优信息融合滤波器。

文献 [5] 针对多模型多传感器系统 , 基于标量加权的最优信息融合算法 , 给出了一种分布式标量加权最优信息融合Kalman滤波器。采用分布式的结构 , 某些传感器出现故障 , 可由剩余的传感器继续融合估计 , 避免了集中式估计由于某个传感器出现故障而使整个系统不能工作的缺点 , 所以它具有可靠性。本文在文献 [5] 的基础上 , 将真实值与信息融合估计值进行比较 , 得到故障诊断系统的残差 , 通过仿真图形中的毛刺 , 进行故障诊断的判断。

2 标量加权线性最小方差最优信息融合准则

文献 [6] 给出了一种标量加权融合算法 , 与一般的矩阵加权相比它是一种次优融合准则 , 但由于它只需计算加权标量系数 , 避免了计算加权矩阵 , 从而减小了计算量。特别是当系统状态维数较高时 , 可明显减小计算负担。且它仍能在总体上改善每个局部估计 , 因而它具有工程应用价值。

引理设为对n维随机向量z的L个无偏估计 , 记估计误差为(i ≠ j) 相关 , 误差方差和互协方差阵分别, 则标量加权最优 ( 线性最小方差 ) 信息融合无偏估计为

其中最优融合标量系数如下计算

其中向量, 矩阵相应的最优信息融合估计的误差方差阵为

且有关系

3 多传感器标量加权最优信息融合Kalman 滤波器

考虑带L个传感器的离散随机系统 , 并在状态空间模型中加入故障干扰f(t), 得到如下 (4)~(6) 式含有扰动和故障的多传感器系统 :

其中 :x(k) ∈Rn是状态向量 ,y(k) ∈Rm是观测向量 ,w(t),vi(t) 分别为系统的系统噪声和第i个传感器的观测噪声 ,f(t) 为白噪声描述的故障信号 , 且A,B,Bf,Ci,Dfi是适当维数的矩阵。下标 (i) 表示第i个传感器 ,L表示传感器个数。

假设w(t) 和vi(t)(i=1,2,…L) 是带零均值的相关白噪声。

为了方便推理及计算 , 本文采用增广的方法 , 将系统扩维增广得到新系统方程如下 :

其中 :BW(t)=BwW(t)+Bff(t),V(t)=vi(t)+Dfifi(t), i=1,2,…L。其它定义假设条件同上给出。在扩维后的系统方程下 , 使用Kalman滤波方法 , 对增广后的系统进行滤波设计 , 从而得到带有故障信息的状态估计 , 并得到相应的滤波器和滤波误差,从而进行残差χ2检验。

定理1增广系统 (7)~(9) 在假设下有最优Kalman滤波器

其中 :为系统的滤波估计 ,kf(t) 为滤波增益 ,Px(t+1 │ t+1) 为滤波误差方差阵。

定理2增广系统 (7)~(9) 在假设下 , 系统有如下递推的Kalman滤波误差方差阵

其中 :Px(t│t) 为系统的滤波误差互协方差阵 , 初值为Px(0│0)=0。

证明 : 首先 , 根据真实值与估计值之差 , 得到滤波误差计算公式

由Kalman滤波器

有系统滤波误差为

其中 :为新息 , 将代入 (17) 得

又因为

将 (18) 式代入 (19) 式进行计算 . 因为

所以记号 ┴ 表示正交 , 则可引出 (16) 式成立。证毕。

定理3增广系统 (7)~(9) 在假设下 , 有最优标量加权信息融合Kalman滤波器

其中 : 标量加权系数由引理 (2) 式求 , 且最小融合方差由 (3) 式计算 , 基于第i个子系统的局部滤波器Z(t │ t) 和局部滤波误差互协方差阵由下式计算 :

PZ(t│t) 为滤波误差方差阵。

证 : 对 (9) 式两边同时取在线性流形 ((L(yi(t)yi(t-1),…,yi(L))) 上的射影运算引出式 (21)。再由 (9) 和 (21)引出 (22) 成立。证毕。

通过滤波得到的状态估计计算残差 , 残差公式表示如下 :

将 (8) 式两边分别取射影 , 并带入 (13) 式 , 可以得到如下的残差计算公式

在不存在故障时 , 系统应满足状态方程式 , 即为X(k) 的无偏估计 , 所以残差 ε(k) 是零均值高斯白噪声向量 ; 当传感器发生故障 , 那么系统就不再满足状态方程式 , 因此残差均值不再为零。故对系统测量信号的均值作假设检验 , 即可判决传感器是否有故障。

4 仿真研究

考虑如下两传感器系统

取系统噪声方差Qw值为1,yi(t),i=1,2是两个传感器的观测信号 ,vi(t),i=1,2是传感器的观测噪声 , 并分别取方差为Qv1=1, Qv2=9。初始值设为x(0)=[0 0]T, 故障诊断仿真结果如下 :

仿真中首先取故障信息为零 , 来验证滤波融合算法。图1中分别给出的是状态的误差方差 , 最下面一条曲线为信息融合后的误差曲线 , 可以看出融合后的误差明显低于单个传感器 , 图2这种 , 中间的红色曲线为融合后的滤波估计 , 从图中可以看出 , 融合后的曲线在两条估计曲线中间 , 综合了两条曲线的值 , 使得滤波估计更加准确 , 从而验证了标量加权算法的有效性。

当没有故障存在的情况下 , 残差几乎为零如图3,当出现异常情况时 , 残差则不为零 , 如图4所示 , 则可以判断出故障。

5 结束语

在实际故障诊断中 , 单传感器往往存在着不稳定性 , 而多传感器则可以克服这些不足。本文对多传感器故障信息模型给出了一种分布式标量加权的最优信息融合Kalman滤波器 , 给出了滤波误差方差阵的计算公式。通过实验仿真看出故障信息可以被成功检测。验证了融合算法的有效性。

参考文献

[1]BAR-SHALOM Y.On the track-to-track correlation problem[J].IEEE Trans on automatic Control,1981,26(2):571-572.

[2]KIM K H.Development of track to track fusion algorithm[C]//Proc of american Conference.Troy:Rensselaer Polytechnic Institute,1994:1037-1041.

[3]CHEN H,KIRUBARAJAN T,BAR-SHALOM Y.Performance limits of track-to-track fusion versus.centralized estimation:theory and application[J].IEEE trans on Aerospace and Electronic Systems,2003,39(2):386-398.

[4]邓自立,祁荣宾.多传感器信息融合次优稳态Kalman滤波器[J].中国学术期刊文摘(科技快报),2000,6(2):183-184.

[5]王金玉,何艳,朱国强等.多模型多传感器标量加权信息融合[J].黑龙江科学,2014,2(1):9-11.

[6]SUN S L.Multi-sensor optimal information fusion Kalman filter with application[J].Aerospace Science and Technology,2004,8(1):57-62.

上一篇:财务人员管理下一篇:企业融资农业科技