当前位置: 首页 > news >正文

基于PCRLB的CMIMO雷达资源调度方法(MATLAB实现)

集中式多输入多输出CMIMO雷达作为一种新体制雷达,能够实现对多个目标的同时多波束探测,在多目标跟踪领域得到了广泛运用。自从2006年学者Haykin提出认知雷达理论,雷达资源分配问题就成为一个有实际应用价值的热点研究内容。本文基于目标跟踪的后验克拉美罗下界PCRLB(posterior Cramer-Rao lower bound)实现了雷达多目标跟踪的功率资源分配。

1.目标运动模型

图1为CMIMO雷达对多个目标同时跟踪的场景示意图。

图1 CMIMO同时多波束跟踪

    假设Q个彼此分离的目标做匀速直线CV运动,第q个目标在第k时刻的运动模型定义:

\boldsymbol{x}_{k}^{q}=\boldsymbol{F}_{q} \boldsymbol{x}_{k-1}^{q}+\boldsymbol{u}_{k-1}^{q}

 其中\boldsymbol{x}_{k}^{q}=\left[x_{k}^{q}, \dot{x}_{k}^{q}, y_{k}^{q}, \dot{y}_{k}^{q}\right]^{\mathrm{T}}为状态向量。

状态转移矩阵为:

\boldsymbol{F}_{q}=\boldsymbol{I}_{2} \otimes\left[\begin{array}{ll} 1 & T \\ 0 & 1 \end{array}\right]

\boldsymbol{u}_{k-1}^{q}为一个零均值的高斯白噪声,其协方差表示为:

\boldsymbol{Q}_{k-1}^{q}=\boldsymbol{\kappa}_{q} \boldsymbol{I}_{2} \otimes\left[\begin{array}{ll} \frac{1}{3} T^{3} & \frac{1}{2} T^{2} \\ \frac{1}{2} T^{2} & T \end{array}\right]

\boldsymbol{\kappa}_{q}是用来控制过程噪声大小的系数。

2.雷达量测模型

       设CMIMO雷达坐标为(0, 0)。在k时刻对Q个目标进行跟踪,第q个目标对应量测和状态向量之间的转换关系表示为:

\boldsymbol{z}_{q, k}=\boldsymbol{h}_{q, k}\left(\boldsymbol{x}_{k}^{q}\right)+\boldsymbol{v}_{q, k}

其中\boldsymbol{v}_{q, k} \sim N\left(0, \boldsymbol{R}_{q, k}\right)为量测噪声,\boldsymbol{h}_{q, k}\left(\boldsymbol{.}\right)为量测和状态向量之间的映射过程,分别为距离、速度与角度:

\begin{array}{l} \boldsymbol{h}_{q, k}(\bullet)=\left[r_{q, k}(\bullet), f_{q, k}(\bullet), \varphi_{q, k}(\bullet)\right]^{\mathrm{T}} \\ \left\{\begin{array}{l} r_{q, k}\left(\boldsymbol{x}_{k}^{q}\right)=\sqrt{\left(x_{k}^{q}\right)^{2}+\left(y_{k}^{q}\right)^{2}} \\ f_{q, k}\left(\boldsymbol{x}_{k}^{q}\right)=-\frac{2}{\lambda} *\left(\dot{x}_{k}^{q}, \dot{y}_{k}^{q}\right)\binom{x_{k}^{q}}{y_{k}^{q}} / r_{q, k} \\ \varphi_{q, k}\left(\boldsymbol{x}_{k}^{q}\right)=\arctan 2\left(y_{k}^{q}\right) /\left(x_{k}^{q}\right) \end{array}\right. \end{array}

       量测噪声的协方差矩阵表示为:

\begin{array}{l} \boldsymbol{R}_{q, k}=\operatorname{diag}\left(\boldsymbol{R}_{r_{q, k}}^{2}, \boldsymbol{R}_{f_{q, k}}^{2}, \boldsymbol{R}_{\varphi_{q k}}^{2}\right) \\ \left\{\begin{array}{l} \boldsymbol{R}_{r_{q, k}}^{2} \propto\left(\alpha_{q, k} P_{q, k}\left|\sigma_{k}^{q}\right|^{2}\right)^{-1} \\ \boldsymbol{R}_{f_{q, k}}^{2} \propto\left(\alpha_{q, k} P_{q, k}\left|\sigma_{k}^{q}\right|^{2}\right)^{-1} \\ \boldsymbol{R}_{\varphi_{q, k}}^{2} \propto\left(\alpha_{q, k} P_{q, k}\left|\sigma_{k}^{q}\right|^{2}\right)^{-1} \end{array}\right. \end{array}

其中,\sigma_{k}^{q}为目标RCS,P_{k,q}为实际功率,\alpha_{k,q}为大小与距离4次方成反比的衰减系数。上式可以看出,在跟踪过程中,目标RCS和雷达发射参数均会影响量测协方差。

3.多目标跟踪PCRLB递推

       跟踪滤波的无偏估计量与目标状态向量之间满足:

\mathbb{E}_{x_{k}^{q}, \boldsymbol{x}_{g, k}}\left\{\left[\hat{x}_{k \mid k}^{q}\left(\boldsymbol{z}_{q, k}\right)-\boldsymbol{x}_{k}^{q}\right]\left[\hat{x}_{k \mid k}^{q}\left(z_{q, k}\right)-\boldsymbol{x}_{k}^{q}\right]^{\mathrm{T}}\right\} \geq \operatorname{FIM}^{-1}\left(\boldsymbol{x}_{k}^{q}\right)

其中为\hat{x}_{k \mid k}^{q}\left(\boldsymbol{z}_{q, k}\right)无偏估计量;\mathbb{E}_{x_{k}^{q}, \boldsymbol{x}_{g, k}}表示数学期望操作;{FIM}^{-1}\left(\boldsymbol{x}_{k}^{q}\right)表示PCRLB矩阵,对应逆矩阵为目标q所对应的Fisher Information Matrix。其递推公式为:

\begin{array}{l} \operatorname{FIM}\left(\boldsymbol{x}_{k}^{q}\right)=\operatorname{FIM}_{P}\left(\boldsymbol{x}_{k}^{q}\right)+\operatorname{FIM}_{z}\left(\boldsymbol{x}_{k}^{q}\right) \\ =\left[\boldsymbol{Q}_{k-1}^{q}+\boldsymbol{F}_{q} \operatorname{FIM}^{-1}\left(\boldsymbol{x}_{k-1}^{q}\right) \boldsymbol{F}_{q}^{\mathrm{T}}\right]^{-1}+\boldsymbol{H}_{q, k}^{\mathrm{T}}\left(\hat{\boldsymbol{R}}_{q, k}\right)^{-1} \boldsymbol{H}_{q, k} \end{array}

其中\operatorname{FIM}_{P}\left(\boldsymbol{x}_{k}^{q}\right)表示目标状态先验分布对应的FIM,\operatorname{FIM}_{Z}\left(\boldsymbol{x}_{k}^{q}\right)为量测信息FIM。\boldsymbol{H}_{q, k}表示雅克比矩阵:\boldsymbol{H}_{q, k}^{\mathrm{T}}=\left[\nabla_{\chi_{k}^{g}} r_{q, k}, \nabla_{x_{k}^{g}} f_{q, k}, \nabla_{x_{k}^{g}} \varphi_{q, k}\right]。对FIM求逆得到PCRLB矩阵:

F_{P C R L B}\left(P_{k}^{q}, \boldsymbol{x}_{k}^{q}\right)=\operatorname{FIM}^{-1}\left(P_{k}^{q}, \boldsymbol{x}_{k}^{q}\right)

其中P_{k}^{q}k时刻对第q个目标分配的功率资源,F_{P C R L B}\left(P_{k}^{q}, \boldsymbol{x}_{k}^{q}\right)对角线元素对应目标状态向量的无偏估计方差下界,可将其作为代价函数:\mathbb{F}\left(P_{k}, \boldsymbol{x}_{k}^{q}\right)=\max \left(\sqrt{\operatorname{tr}\left\{F_{P C R L B}\left(P_{k}^{q}, \boldsymbol{x}_{k}^{q}\right)\right\}}\right)。进一步地,可以跟踪实际物理约束构造资源调度模型,我们采用MinMax准则优化多目标跟踪精度。

        MinMax-PCRLB优化模型可以建模为:

\begin{array}{l} \min \left[\mathbb{F}\left(P_{k}, \boldsymbol{x}_{k}^{q}\right)\right] \\ \text { s.t. }\left\{\begin{array}{l} \left|P_{k}^{q}\right|_{1}=P_{\text {total }} \\ \bar{P}_{\min } \leq P_{k}^{q} \leq \bar{P}_{\max } \\ q=1,2, \ldots, Q \end{array}\right. \end{array}

其中,|.|_{1}表示1范数。P_{\text {total }}\\ \bar{P}_{\max}\\ \bar{P}_{\min }分别为总功率、最大分配功率与最小分配功率。已经证明上述问题是一个凸问题,可以通过典型的优化算法进行求解,得到下一帧的雷达资源调度方案。

4.仿真实验

       CMIMO雷达对三个目标进行跟踪,利用扩展卡尔曼滤波或者无迹卡尔曼滤波算法进行跟踪,蒙特卡洛试验次数设置为100次。通过MATLAB进行仿真,能够得到如下结果:

图2 多目标与雷达的距离变化曲线图

图3 位置估计结果

图4 速度估计结果

图5 雷达资源调度结果

       结合图2与图5可以看出,在跟踪前期,目标1距离雷达最远,系统为了保证最远目标的跟踪精度,分配绝大部分功率给目标1。随着目标1距离雷达越来越近,系统分配给目标1的功率逐渐减小。而目标2距离雷达越来越远,因此分配给目标2的功率越来越大。另外,目标3的距离一直较小,因此在跟踪全过程中,分配给目标3的雷达资源最少。

       另外,从图3与图4中可以看出,系统对多个目标的运动参数的估计是收敛的,且PCRLB能够表征目标跟踪的估计下界。PCRLB能够指导雷达完成雷达资源的有效分配。如有代码问题,加UltraNextYJ交流。

部分代码如下:

%% PCRLB的计算与比较(用上一时刻进行迭代)
CR_pos_PCRLB = zeros(N_tracking,TAR_NUM);
CR_vel_PCRLB = zeros(N_tracking,TAR_NUM);
for tar_num = 1:TAR_NUMJ = inv(P_0);    % pcrlb初始化for k = 1:N_tracking% N为跟踪时间D11 = sum(d11_pcrlb(:,:,k,:,tar_num),4)./MC;    D12 = sum(d12_pcrlb(:,:,k,:,tar_num),4)./MC;D22 = sum(d22_pcrlb(:,:,k,:,tar_num),4)./MC;% PCRLBBound_CRLB = inv(J);% 位置和速度的PCRLB的计算CR_pos_PCRLB(k,tar_num) = sqrt(Bound_CRLB(1,1) + Bound_CRLB(3,3));   CR_vel_PCRLB(k,tar_num) = sqrt(Bound_CRLB(2,2) + Bound_CRLB(4,4));end
end
%% 计算跟踪过程对应的RMSE,将误差存入矩阵
position = zeros(N_tracking,MC,TAR_NUM);
velocity = zeros(N_tracking,MC,TAR_NUM);
rmse_position = zeros(N_tracking,TAR_NUM);
rmse_velocity = zeros(N_tracking,TAR_NUM);
for tar_num = 1:TAR_NUMfor i = 1:MCfor k = 1:N_trackingerror(:) = sV(:,k,i,tar_num) - eV(:,k,i,tar_num);% RMSEerror2(:) = error(:).^2;               error2_dis = error2(1) + error2(3);    error2_vel = error2(2) + error2(4);position(k,i,tar_num) = error2_dis;   velocity(k,i,tar_num) = error2_vel;endend
end
for tar_num = 1:TAR_NUMrmse_position(:,tar_num) = sqrt(sum(position(:,:,tar_num),2)./MC);  rmse_velocity(:,tar_num) = sqrt(sum(velocity(:,:,tar_num),2)./MC);
end

 

相关文章:

基于PCRLB的CMIMO雷达资源调度方法(MATLAB实现)

集中式多输入多输出CMIMO雷达作为一种新体制雷达,能够实现对多个目标的同时多波束探测,在多目标跟踪领域得到了广泛运用。自从2006年学者Haykin提出认知雷达理论,雷达资源分配问题就成为一个有实际应用价值的热点研究内容。本文基于目标跟踪的…...

PAT--1035 插入与归并

题目描述 根据维基百科的定义: 插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列。每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置。如此迭代直到全部元素有序。 归并排序进行如…...

Ubuntu20.04.6编译OpenWRT23.05.5错误

在Ubuntu20.04.6编译OpenWRT23.05.5时,会出现如下提示: fatal error: asm/types.h: No such file or directory 如果我们执行如下命令: sudo ln -s /usr/include/asm-generic /usr/include/asm 此时再次编译,会有如下提示&…...

一文说清flink从编码到部署上线

引言:目前flink的文章比较多,但一般都关注某一特定方面,很少有一个文章,从一个简单的例子入手,说清楚从编码、构建、部署全流程是怎么样的。所以编写本文,自己做个记录备查同时跟大家分享一下。本文以简单的mysql cdc为例展开说明。 环境说明:MySQL:5.7;flink:1.14.0…...

【5G】5G Physical Layer物理层(一)

5G多址接入和物理层与长期演进(LTE)存在一些差异。在下行方向,5G与LTE相似,依旧采用正交频分多址(OFDMA)。而在上行方向,5G采用了OFDMA和单载波频分多址(SC-FDMA)&#x…...

GauHuman阅读笔记【3D Human Modelling】

笔记目录 1. 基本信息2. 理解(个人初步理解,随时更改)3. 精读SummaryResearch Objective(s)Background / Problem StatementMethod(s)EvaluationConclusionReferences1. 基本信息 题目:GauHuman: Articulated Gaussian Splatting from Monocular Human Videos时间:2023.12…...

qemu安装arm64架构银河麒麟

qemu虚拟化软件,可以在一个平台上模拟另一个硬件平台,可以支持多种处理器架构。 一、安装 安装教程:https://blog.csdn.net/qq_36035382/article/details/125308044 下载链接:https://qemu.weilnetz.de/w64/2024/ 我下载的是 …...

在Elasticsearch (ES) 中,integer 和 integer_range的区别

在Elasticsearch (ES) 中,integer 和 integer_range 是两种不同的字段类型,它们用于存储和查询不同类型的数据。 Integer: integer 类型是用于存储32位整数值的简单数据类型。这个类型的字段适合用来表示单一的整数数值,例如用户的年龄、商品的数量等。支持标准的数值操作,…...

Playwright中Page类的方法

导航和页面操作 goto(url: str, **kwargs: Any): 导航到一个URL。 reload(**kwargs: Any): 重新加载当前页面。 go_back(**kwargs: Any): 导航到会话历史记录中的前一个页面。 go_forward(**kwargs: Any): 导航到会话历史记录中的下一个页面。 set_default_navigation_tim…...

硬链接方式重建mysql大表

硬链接方式重建mysql大表 操作步骤 选择数据库 select datadir; 进入数据文件目录 cd /data/mysql/mydata/testdb 创建硬连接 ln test_trans_msg_xx.ibd test_service_trans_msg_xx.ibd.bak ll test_trans_msg_xx* 进库删除表 DROP TABLE test_trans_msg_xx; 重建表 CREATE T…...

GPIO在ZYNQ7000中的结构和相关寄存器解析

GPIO MASK DATA LSW和 MASK DATA MSW LSW和MSW分别是LSW (Least Significant Word)和MSW (Most Significant Word)。 因为DATA是u32,所以如果寄存器的基址是XGPIOPS_DATA_LSW_OFFSET,那么32位就能同时让高16位的MASK DATA MSW]31:16和 MASK DATA LSW的bit7同时为…...

Qt Xlsx安装教程

Qt Xlsx安装教程 安装perl 如果没有安装perl,请参考perl Window安装教程 下载QtXlsxWriter源码 下载地址 ming32-make编译32 lib库 C:\Qt\Qt5.12.12\5.12.12\mingw73_32>d: D:\>cd D:\Code\QtXlsxWriter-master\QtXlsxWriter-master D:\Code\QtXlsxWrit…...

Certimate自动化SSL证书部署至IIS服务器

前言:笔者上一篇内容已经部署好了Certimate开源系统,于是开始搭建部署至Linux和Windows服务器,Linux服务器十分的顺利,申请证书-部署证书很快的完成了,但是部署至Windows Server的IIS服务时,遇到一些阻碍&a…...

【中工开发者】鸿蒙商城实战项目(启动页和引导页)

创建一个空项目 先创建一个新的项目选择第一个,然后点击finish 接下来为项目写一个名字,然后点击finish。 把index页面的代码改成下面代码块的代码,就能产生下面的效果 Entry Component struct Index {build() {Column(){Blank()Column(){…...

跟李笑来学美式俚语(Most Common American Idioms): Part 63

Most Common American Idioms: Part 63 前言 本文是学习李笑来的Most Common American Idioms这本书的学习笔记,自用。 Github仓库链接:https://github.com/xiaolai/most-common-american-idioms 使用方法: 直接下载下来(或者clone到本地…...

scala中如何解决乘机排名相关的问题

任务目标: 1.计算每个同学的总分和平均分 2.按总分排名,取前三名 3.按单科排名,取前三名 好的,我们可以用Scala来完成这个任务。下面是一个简单的示例代码,它将演示如何实现这些功能: // 假设我们有一个…...

OpenCV相机标定与3D重建(10)眼标定函数calibrateHandEye()的使用

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 计算手眼标定: g T c _{}^{g}\textrm{T}_c g​Tc​ cv::calibrateHandEye 是 OpenCV 中用于手眼标定的函数。该函数通过已知的机器人…...

Hadoop生态圈框架部署(九-2)- Hive HA(高可用)部署

文章目录 前言一、Hive部署(手动部署)下载Hive1. 上传安装包2. 解压Hive安装包2.1 解压2.2 重命名2.3 解决冲突2.3.1 解决guava冲突2.3.2 解决SLF4J冲突 3. 配置Hive3.1 配置Hive环境变量3.2 修改 hive-site.xml 配置文件3.3 配置MySQL驱动包3.3.1 下在M…...

docker 相关操作

1. 以下是一些常见的 Docker 命令&#xff1a; docker --version显示安装的 Docker 版本。 docker pull <image_name>从 Docker Hub 或其他镜像仓库下载镜像。 docker build -t <image_name> <path>从指定路径的 Dockerfile 构建 Docker 镜像。 docker i…...

AI作图效率高,亲测ToDesk、顺网云、青椒云多款云电脑AIGC实践创作

一、引言 随着人工智能生成内容&#xff08;AIGC&#xff09;的兴起&#xff0c;越来越多的创作者开始探索高效的文字处理和AI绘图方式&#xff0c;而云电脑也正成为AIGC创作中的重要工具。相比于传统的本地硬件&#xff0c;云电脑在AIGC场景中展现出了显著的优势&#xff0c;…...

RestClient

什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端&#xff0c;它允许HTTP与Elasticsearch 集群通信&#xff0c;而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级&#xff…...

Xshell远程连接Kali(默认 | 私钥)Note版

前言:xshell远程连接&#xff0c;私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...

Spring Boot 实现流式响应(兼容 2.7.x)

在实际开发中&#xff0c;我们可能会遇到一些流式数据处理的场景&#xff0c;比如接收来自上游接口的 Server-Sent Events&#xff08;SSE&#xff09; 或 流式 JSON 内容&#xff0c;并将其原样中转给前端页面或客户端。这种情况下&#xff0c;传统的 RestTemplate 缓存机制会…...

Python:操作 Excel 折叠

💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 Python 操作 Excel 系列 读取单元格数据按行写入设置行高和列宽自动调整行高和列宽水平…...

中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试

作者&#xff1a;Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位&#xff1a;中南大学地球科学与信息物理学院论文标题&#xff1a;BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接&#xff1a;https://arxiv.…...

Qt Widget类解析与代码注释

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码&#xff0c;写上注释 当然可以&#xff01;这段代码是 Qt …...

使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装

以下是基于 vant-ui&#xff08;适配 Vue2 版本 &#xff09;实现截图中照片上传预览、删除功能&#xff0c;并封装成可复用组件的完整代码&#xff0c;包含样式和逻辑实现&#xff0c;可直接在 Vue2 项目中使用&#xff1a; 1. 封装的图片上传组件 ImageUploader.vue <te…...

Caliper 配置文件解析:config.yaml

Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...

Mobile ALOHA全身模仿学习

一、题目 Mobile ALOHA&#xff1a;通过低成本全身远程操作学习双手移动操作 传统模仿学习&#xff08;Imitation Learning&#xff09;缺点&#xff1a;聚焦与桌面操作&#xff0c;缺乏通用任务所需的移动性和灵活性 本论文优点&#xff1a;&#xff08;1&#xff09;在ALOHA…...

RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)

RabbitMQ 一、RabbitMQ概述 RabbitMQ RabbitMQ最初由LShift和CohesiveFT于2007年开发&#xff0c;后来由Pivotal Software Inc.&#xff08;现为VMware子公司&#xff09;接管。RabbitMQ 是一个开源的消息代理和队列服务器&#xff0c;用 Erlang 语言编写。广泛应用于各种分布…...