《优化阵列信号处理》学习笔记(第四章)

简介: 注:目前因系统问题,故将本文中的公式全部删除,具体请见pdf版本或访问:http://www.yushuai.xyz/2019/10/16/4442.html第四章:波束稳健性分析在实际中,由于各种误差(如观察方向误差、阵型标定误差、通道幅度与相位误差等)的影响,造成导向向量存在误差;另外,由于接收数据协方差矩阵无法精确计算,只能通过接受数据进行估计,也不可避免的存在估计误差。

注:目前因系统问题,故将本文中的公式全部删除,具体请见pdf版本或访问:http://www.yushuai.xyz/2019/10/16/4442.html

第四章:波束稳健性分析

在实际中,由于各种误差(如观察方向误差、阵型标定误差、通道幅度与相位误差等)的影响,造成导向向量存在误差;另外,由于接收数据协方差矩阵无法精确计算,只能通过接受数据进行估计,也不可避免的存在估计误差。导向向量与接受数据互谱矩阵误差都势必影响最佳波束形成器的输出信噪比性能。

4.1 最佳波束形成器稳健性影响因素

无论是MVDR还是MMSE,亦或是MSNR波束形成器,其加权向量其实统一可以写为

beamformingch41

造成导向向量失配的原因有方向失配与阵元接收响应误差等。其中阵元接收响应误差包括通道幅相误差、阵元位置误差、阵元各向异性与不一致性引起的响应灵敏度误差等。

造成数据协方差矩阵误差的原因主要是:我们一般采用有限长度数据快拍估计得到数据协方差矩阵,估计值与实际值存在误差。

4.2 导向向量失配对波束性能的影响

我们知道MVDR的阵增益是

将上式进行处理可以得到

根据上式分析导向向量误差、输入信噪比对MVDR波束形成器的阵增益的影响:
beamformingch42

4.3 协方差矩阵失配对波束性能的影响

4.3.1 样本协方差矩阵求逆波束形成

接下来,我们对协方差矩阵统一用R来表示,于是MVDR波束形成器加权向量又可以表示为

式中

它不影响波束形成器的阵增益性能,只是为了满足无失真约束。

一个自适应波束形成器处于白噪声环境下的波束称为静态波束(quiescent pattern),对应的加权向量称为静态波束加权向量。对于式所示的MVDR对应的静态波束为常规时延求和波束。但是,其它自适应波束形成算法对应的静态波束不一定是常规波束

在实际中,也包括自己编写的程序中,协方差矩阵都是通过一段数据快拍样本(长度为N)的空间相关矩阵来估计(当然实际中只是第一帧是如此估计),也就是

为了保证R ^ 可逆,快拍数需要满足N≥M。当N无穷大的时候,R ^逼近于真实协方差矩阵R。权向量也就变成了

这种方法就是自适应波束形成。上面所示的直接对数据样本协方差矩阵求逆来实现MVDR波束形成器的方法称为样本协方差矩阵求逆(Sample Matrix Inversion, SMI)方法。在计算式的时候,主要计算量来源于对样本协方差矩阵进行特征分解,其计算复杂度为

4.3.2 样本协方差矩阵求逆法波束性能

在假设观察数据中不包含期望信号(β=0)的条件下分析SMI方法,归一化输出信干噪比定义如下

式中,分母表示在精确制导数据协方差矩阵与导向向量情况下的最优输出信干噪比。在采用N个快拍估计数据协方差矩阵时,归一化输出信干噪比的均值为

上式表明,为了保证SMI波束形成的平均输出SINR比最有情况下损失在3dB以内,要求

在快拍数有限的时候,SMI波束旁瓣升高,它除了高于静态波束【一个自适应波束形成器处于白噪声环境下的波束】之外,平均旁瓣与样本数目的关系大约为

在式中,SLL表示旁瓣级。

当数据样本中包含期望信号的时候(β=1),SMI波束形成的性能会收到更严重的影响。这就是信号“自消”现象。由于快拍数目有限,用样本协方差矩阵代替理想数值会产生误差,它不能和真实的信号响应向量匹配。因此,SMI波束形成器会误将期望信号视作干扰信号进行零陷,而不是增强。

如果信噪比较高,为保证SMI波束形成器的平均输出SINR损失在3dB以内,快拍数需要满足

从上式可以看出,在训练数据包括期望信号的时候,SMI方法收敛速度更慢,稳健性更差。

相关文章
|
4月前
|
SQL JSON 关系型数据库
selenuim实战优化
该文介绍了如何使用Selenium将数据直接存入MySQL数据库,以苏宁易购网站为例。首先,优化了JSON数据写入,通过pymysql连接数据库,创建`books`表并读取JSON文件插入数据。接着,整合代码实现直接从网页抓取价格和标题,使用Selenium自动化滚动加载页面,定位元素,清洗数据并使用参数化查询插入到`books`表。主程序循环遍历多页数据,最后关闭数据库连接。
31 1
|
10月前
|
安全 Java API
Java编程技巧:if-else优化实践总结归纳
说实话,其实我很讨厌在代码里大量使用if-else,一是因为该类代码执行方式属于面向过程的,二嘛,则是会显得代码过于冗余。这篇笔记,主要记录一些自己在工作实践当中针对if-else的优化心得,将会不定期地长期更新。
103 0
|
前端开发
前端学习案例2-记忆函数和性能优化1
前端学习案例2-记忆函数和性能优化1
54 0
前端学习案例2-记忆函数和性能优化1
|
算法 决策智能
运筹优化学习14:LocalBranching用法手册
运筹优化学习14:LocalBranching用法手册
运筹优化学习14:LocalBranching用法手册
|
机器学习/深度学习 自然语言处理 算法
课时3 :高级能力和算法效果优化(一)|学习笔记
快速学习课时3 :高级能力和算法效果优化
课时3 :高级能力和算法效果优化(一)|学习笔记
|
机器学习/深度学习 自然语言处理 算法
课时3 :高级能力和算法效果优化(三)|学习笔记
快速学习课时3 :高级能力和算法效果优化
144 0
课时3 :高级能力和算法效果优化(三)|学习笔记
|
自然语言处理 算法 机器人
课时3 :高级能力和算法效果优化(二)|学习笔记
快速学习课时3 :高级能力和算法效果优化
114 0
课时3 :高级能力和算法效果优化(二)|学习笔记
|
SQL 存储 分布式计算
MaxcomputerSQL 优化| 学习笔记
快速学习 MaxcomputerSQL 优化
728 0