Sparse Vector Coding稀疏矢量码介绍

news2024/11/28 2:31:21

需要MATLAB代码的小伙伴请通过微信公众号私信我~

更多精彩内容请关注微信公众号 ‘优化与算法

前言

5G和6G无线通信期望带来更高的频谱效率和能量效率,为了达到这些目标,近年来已经提出了各种新技术。其中,索引调制IM(Index Modulation)技术引起了人们的极大兴趣。IM不是通过直接改变信号波形来传递信息,而是通过选择不同的索引序号来传递信息。索引资源可以是物理的(例如,天线,子载波,时隙,频率载波和扩频码),也可以是虚拟的(例如,虚拟并行信道,信号星座,空时矩阵和天线激活顺序)。由于索引资源可以额外承载信息比特而无需更多的功率消耗,从而能有效提高数据传输速率和能量效率。通过不同域的组合,又发展出空频索引调制、空码索引调制、空时频索引调制等技术。

近年来,自动驾驶、机器人、传感器以及人工智能驱动的自动化服务和应用呈现爆炸式增长。在这些以机器为中心的应用场景中,一个非常明显的特点 是它们传输的信息量通常很少。例如,在自动驾驶汽车、智能工厂中的机器人 和家用电器等应用场景,一些关键的命令和控制信息,如启动/停止、打开/关 闭、向左/向右移动、加速/减速、换档和旋转等需要进行频繁的交互。通常,这些交互所传的信息量在10-100比特之间。一些从传感器获取的信息(例如,温度、压力、速度和气体密度)约为10比特。此外,在5G NR 中,与物理层数据共享信道(Physical Data Shared Channel,PDSCH)不一样,物理层下行控制信 道(Physical Downlink Control Channel, PDCCH)用于承载调度、传输格式、资源分配、功率控制、译码辅助指令等信息。PDCCH 中采用解调参考信号(Demodulation Reference Signal, DMRS)来进行信道估计和辅助数据译码,而携带的控制信息量很少,通常以迷你时隙形式传输,它们对时延和可靠性的要求非常高,需要满足URLLC需求。

在上述背景下,2018年,一种称为稀疏矢量码(Sparse Vector Coding,SVC)的短包传输技术被提出[1]。与传统传输方式不同的是,SVC将发送的信息比特映射到一个稀疏向量的少量非零索引上,并通过一个非正交码本将该稀疏向量随机扩展到一个低维的序列,最后将该序列映射到时频资源进行传输。在接收端,接收机只需检测接收信号的非零索引位置即可实现信息比特的译码。近年来,SVC技术已经得到了广泛的研究,大量研究已经证明SVC在某些场景下比传统的信道编码技术具有更高的可靠性。

稀疏矢量码的基本原理

不同于PDCCH将调制符号映射到所有子载波上的传输模式,SVC将传输的信息比特映射到一个稀疏向量的非零索引上,然后对该稀疏向量进行伪随机扩展,接着将扩展后的信号映射到子载波上进行传输。图1给出了SVC编译码过程的框图。SVC将信息比特映射到稀疏向量的过程如图2所示。给定一个长度为 N = 9 N=9 N=9的稀疏向量 s \bf s s,其中非零元素的数量为 K = 2 K=2 K=2,则这2个非零元素共有 ( 9 2 ) = 36 {\tbinom{9}{2}}=36 (29)=36种排列方式,这意味着这36种排列方式可以承载的信息比特数为 b ≤ ⌊ log ⁡ 2 ( 9 2 ) ⌋ = 5 {b} \le \left\lfloor {{{\log }_2}{\tbinom{9}{2}}} \right\rfloor =5 blog2(29)=5比特。而5比特信息所需要的索引组合数为 2 5 = 32 2^5=32 25=32,只需在36种非零索引排列中选择32种与之对应即可完成信息比特的映射。图1给出了SVC的稀疏映射过程。稀疏映射后,SVC的伪随机扩展过程可以描述为:
x = C s {\bf{x}} = {\bf{Cs}} x=Cs
式中 C ∈ R M × N {\bf{C}} \in {\mathbb{R}^{M \times N}} CRM×N是一个码本矩阵。为了确保SVC的译码准确性,码本 C \bf C C通常是随机产生的,其元素服从随机伯努利分布或高斯分布。此外,截断DFT矩阵或哈达玛矩阵等也可用于构造码本矩阵\cite{Donoho2006}。经过码本扩展后的向量被映射到资源块上发送。经过信道后,在接收端接收到的信号为:
y = H x + w = H C s + w {\bf{y}} = {\bf{Hx}} + {\bf{w}} = {\bf{HCs}} + {\bf{w}} y=Hx+w=HCs+w
式中 H \bf H H表示信道矩阵。在窄带信道或近似静态环境下,信道近似为常数,SVC中的测量矩阵不依赖于信道系数,从而SVC的译码问题实质上转化为了非零支撑检测问题,可以采用常用的压缩感知算法来求解。

图1. SVC的编译码过程示意图
图2. SVC的稀疏映射过程

SVC方案相较于传统传输方案有以下几个优势:

  • SVC可以灵活的将信息量较少的上行感知信息或下行控制信息映射到稀疏向量。在接收端无需分开对控制信息和数据进行译码,从而减少了译码时延.
  • SVC稀疏向量中仅包含 K K K个非零元素,相较于传统方式所有子载波均承载星座符号相比,SVC对噪声的鲁棒性更好
  • 在静态或低移动场景下,SVC的译码不依赖于信道信息,可以实现精确的非相干译码。

值得注意的是,尽管SVC和传统的码域索引调制均采用索引资源来承载信息,但是SVC和传统的码域索引调制在编译码过程中存在明显的不同。传统的码域索引调制技术在固定的子载波上选择部分子载波的索引来映射信息比特,这是一种“被动”选择的结果。而SVC是根据所需传输比特数量来设计稀疏矢量的长度和非零元素的数量,这是“主动”选择的结果。此外,传统的码域索引调制在比特映射后直接进行发送,而SVC在比特映射后需要经过码本扩展后再发送,码本扩展相当于对稀疏矢量进行了压缩,因而其实际发送所需的资源数量远小于稀疏矢量的长度。

增强型稀疏矢量码

SVC方案仅将信息比特承载在非零索引上,未考虑到非零值上也可以承载信息,因此其频谱效率相对较低。为了提高SVC方案的频谱效率,一种增强的SVC(Enhanced SVC,ESVC)方案被提出[2]。ESVC将发送的信息比特分成两部分,一部分被映射到稀疏向量的非零索引,另一部分以星座符号的形式承载到非零值上。在接收端,ESVC需要首先识别非零元素的索引,然后再解调非零值对应的QAM符号。图3给出了ESVC方案的编译码示意图。

图3. ESVC的编译码过程

稀疏矢量码的其他变种

近年来学者们在SVC的基础上进行改进,提出了一系列新的SVC变种。文献[3]中提出一种星座旋转的SVC叠加传输(SVC-based Superimposed Transmission,SVC-ST)方案,它通过对每个非零值处的QAM符号进行唯一星座旋转来增强译码性能,在ESVC的基础上进一步提高了数据传输的可靠性。在[4]中,通过利用不同星座字母表的索引来携带额外的信息比特,进一步提高了SVC方案的误块率(Block Error Rate, BLER)性能。通过优化码本矩阵的相关性,文献[5]中提出的方案增强了SVC解码性能。文献[6]研究了一种基于码本选择的SVC方案,将大尺寸码本划分为几个小码本,从而增加了可用于码本选择的信息比特。此外,文献[7]通过在ESVC中引入交织技术提出了一种超维调制 (Hyper-Dimensional Modulation, HDM)方法。针对HDM,提出了 K K K-best和基于深度学习的译码算法。值得注意的是,由于在编码过程中采用了交织技术,稀疏恢复算法通常不适用于HDM。SVC 的概念已经扩展到各种通信系统,包括MIMO系统、正交时频空间系统、非正交多址(NOMA)系统、集成感知和通信(ISAC)系统、多址接入系统等。此外,本人和几位合作者研究了SVC在高移动场景中的应用,并提出了一种基于叠加导频的SVC方案[8],解决了SVC受时变多径信道影响导致译码性能下降的问题。

仿真比较

对比了SVC、ESVC、SVC-ST三种方案分别在高斯信道和瑞利信道下的BLER性能。图4和图5分别显示了不同方案的BLER性能与SNR的关系。所有比较方案的频谱效率固定为 0.375 bps/Hz。假设所有方案在解码过程中CSI不可用。可以观察到,SVC-ST方案的BLER性能在AWGN和瑞利衰落信道上均优于SVC和ESVC方案。例如,在目标BLER= 1 0 − 3 10^{-3} 103时,SVC-ST方案与SVC方案在AWGN信道上的BLER曲线之间有接近2 dB的SNR差距。

图4. AWGN信道下不同方案的BLER性能比较
图5. Rayleigh信道下不同方案的BLER性能比较

参考文献

[1] H. Ji, S. Park, and B. Shim, "Sparse vector coding for ultra reliable and low latency communications,” IEEE Trans. Wireless Commun., vol. 17, no. 10, pp. 6693–6706, 2018.
[2] W. Kim, S. Bandari, and B. Shim, "Enhanced sparse vector coding for ultra-reliable and low latency communications,” IEEE Trans. Veh. Technol., vol. 69, no. 5, pp. 5698–5702, 2020.
[3] X. Zhang, D. Zhang, B. Shim, G. Han, D. Zhang, and T. Sato, "Sparse superimposed coding for short-packet URLLC,” IEEE Internet Things J., vol. 9, no. 7, pp. 5275–5289, 2022.
[4] L. Yang and P. Fan, "Multiple-mode sparse superposed code with low block error rate for short packet URLLC,” IEEE Commun. Lett., vol. 28, no. 2, pp. 248–252, 2024.
[5] L. Yang and P. Fan, "Improved sparse vector code based on optimized spreading matrix for short-packet in URLLC,” IEEE Wireless Commun. Lett., pp. 1–1, 2023.
[6] E. Arslan, D. T. Ali, and E. Basar, "Sparse-encoded codebook index modulation,” IEEE Trans. Veh. Technol., vol. 69, no. 8, pp. 9126–9130, 2020.
[7] H. Kim, "HDM: Hyper-dimensional modulation for robust low-power communications,” in Proc. IEEE Int. Conf. Commun. (ICC), 2018, pp. 1–6.
[8] Y. Zhang, X. Zhu, Y. Liu, Y. Jiang, Y. Guan, D. Gonz´alez G., and V. K. N. Lau, "Sparse superimposed vector transmission for shortpacket high-mobility communication,” IEEE Wireless Commun. Lett., vol. 12, no. 11, pp. 1961–1965, 2023.

需要MATLAB代码的小伙伴请通过微信公众号私信我~

更多精彩内容请关注订阅号优化与算法和加入QQ讨论群1032493483获取更多资料

往期精选:

  • 经典正交多项式介绍及其应用

  • SISO/MIMO信道估计(channel estimation)原理详细图解

  • 毫米波大规模MIMO的AOA估计

  • 线性降维:主成分分析PCA原理分析与仿真验证

  • 5G+AI:有哪些新的研究方向和新范式?

  • 简述3D点云配准算法

  • 5G为人工智能与工业互联网赋能|79页高清PPT

  • 智能算法|以动物命名的算法

  • 一份超全面的机器学习公共数据集

  • 矩阵填充|奇异值阈值算法

  • 可重构/大规模智能反射表面reconfigurable/large intelligent surface综述

  • 迭代硬阈值类算法总结||IHT/NIHT/CGIHT/HTP

  • 软阈值迭代算法(ISTA)和快速软阈值迭代算法(FISTA)

  • 伍德伯里矩阵恒等式(Woodbury matrix identity)

  • 压缩感知:一种新型亚采样技术

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1961716.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

「树形结构」基于 Antd 实现一个动态增加子节点+可拖拽的树

效果 如图所示 实现 import { createRoot } from react-dom/client; import React, { useState } from react; import { Tree, Input, Button } from antd; import { PlusOutlined } from ant-design/icons;const { TreeNode } Tree; const { Search } Input;const ini…

优选算法之位运算

目录 一、常见位运算总结 1.基础位运算 2.给定一个数 n,确定它的二进制表示中的第 x 位是 0 还是 1 3.将一个数 n 的二进制表示的第 x 位修改成1 4.将一个数 n 的二进制表示的第 x 位修改成 0 5.提取一个数 n 二进制表示中最右侧的1 6.干掉一个数 n 二进制表示…

分布式存储系统架构及应用

分布式存储系统概述(详细、全面) 【摘要】深度剖析分布式存储系统的可靠性、可用性、IO性能、数据存储效率、安全性及管理性,为寻求了解此领域的读者提供实用参考。 一、 内容总括 分布式存储系统,依托网络互联的多节点软硬件协同…

人脸识别又进化:扫一下 我就知道你得了啥病

未来,扫下你的脸,可能就知道你得啥病了。没在瞎掰,最近的一项研究成果,还真让咱看到了一点眉目。北大的一个研究团队,搞出来一个 AI ,说是用热成像仪扫一下脸,就能检测出有没有高血压、糖尿病和…

工作纪实54-git使用ssh方式

很多居家的小伙伴要重新clone项目,但是忘记了密码,最恶心的是idea还会自动帮你记录密码,如果输错了,会很恶心,使用ssh则不会;还有一个好处就是,集团的密码一般都是几个月更新一次,ss…

基于Frp搭建Window-Linux内网穿透完整流程

什么是内网穿透? 内网穿透是我们在进行网络连接时的一种术语,也叫做NAT穿透,即在计算机是局域网内的时候,外网与内网的计算机的节点进行连接时所需要的连接通信,有时候就会出现内网穿透不支的情况。内网穿透的功能就是&#xff0…

只出现一次的数字-位运算

题目描述&#xff1a; 个人题解&#xff1a; 代码实现&#xff1a; class Solution { public:int singleNumber(vector<int>& nums) {int ret 0;for (auto e: nums) ret ^ e;return ret;} };复杂度分析&#xff1a; 时间复杂度&#xff1a;O(n)&#xff0c;其中 n…

19018 正则序列

这个问题可以通过排序和计数来解决。首先&#xff0c;我们将数组排序&#xff0c;然后我们遍历排序后的数组&#xff0c;对于每个元素&#xff0c;我们将它变为它应该在正则序列中的值&#xff0c;也就是它的索引加1。我们将这个变化的绝对值累加起来&#xff0c;这就是我们需要…

STM32智能农业灌溉系统教程

目录 引言环境准备智能农业灌溉系统基础代码实现&#xff1a;实现智能农业灌溉系统 4.1 数据采集模块 4.2 数据处理与分析模块 4.3 通信与网络系统实现 4.4 用户界面与数据可视化应用场景&#xff1a;农业监测与优化问题解决方案与优化收尾与总结 1. 引言 智能农业灌溉系统通…

Sklearn实例:水果多分类

机器学习五步&#xff1a; 加载数据集分割数据集建立模型训练模型预测模型 导入库文件 import numpy as np #科学计算库 import matplotlib.pyplot as plt #绘图库可视化函数 import pandas as pd #数据处理库&#xff0c;数据分析库 import seaborn as sns #高级数据可视化…

AI技术修复奥运珍贵历史影像,《永不失色的她》再现百年奥运女性光彩

Greatness of HER &#xff01; AI致敬 , 了不起的「她」。 7月25日&#xff0c;在国际奥委会和各方力量的支持下&#xff0c;阿里云以AI技术修复奥运珍贵历史影像&#xff0c;让百年奥运女性的伟大光彩被看见&#xff0c;并在巴黎推出《永不失色的她》全球首映礼。 国际奥委会…

【练习】使用DevEco Studio编写鸿蒙代码,实现卡片效果,主要是练习布局

效果展示 实现代码 build() {Column(){Column(){Image($r("app.media.avatar")).width("100%").borderRadius({topLeft:10,topRight:10})Text("今晚吃这个 | 每日艺术分享 No.43").fontSize(14).fontWeight(600).lineHeight(22).height(60)Row(…

Xlua原理分析 四

前面已经介绍了Xlua的通信原理&#xff0c;这篇主要记录Xlua如何做到Hotfix的。 我们项目就用到Xlua的Hotfix特性&#xff0c;周更用Lua去修改代码。版本内用C#开发。这点我觉得是Xlua比toLua强大的重要特性之一。 如何使用Hotfix本篇不介绍了&#xff0c;看Xlua教程懂得都懂…

网页上空格

&#xA0; no-break space(普通的英文半角空格但不换行) 中文全角空格 (一个中文宽度) &ensp; en空格(半个中文宽度) &emsp; em空格 (一个中文宽度) 四分之一em空格 (四分之一中文宽度) 相比平时的空格()&#xff0c;&nbsp拥有不间断(non-breaking)特性。即连续…

postgresql 您要的日期查询都在这

1、获取当前日期 select now();select current_timestamp;返回值均是当前年月日、时分秒&#xff0c;且秒保留6位小数&#xff0c;两种方式等价 select current_time;返回值&#xff1a;时分秒&#xff0c;秒最高精确到6位 select current_date;返回值&#xff1a;年月日 2…

HarmonyOS 鸿蒙DFX能力简介

DFX简介&#xff1a; Development and Feedback eXchange&#xff08;‌DFX&#xff09;‌&#xff0c;‌用于开发、‌测试和维护鸿蒙应用&#xff0c;提供一系列的工具和功能&#xff0c;‌帮助开发者在开发过程中进行性能分析、‌故障检测、‌异常处理。比如异常处理、性能分…

【qt小系统】传感器云平台3D散点图(附源码)

摘要&#xff1a;本文主要使用QT5&#xff0c;实现了一个传感器云平台的小示例&#xff0c;模拟的是各类传感器的添加&#xff0c;例如&#xff1a;热成像传感器、温度传感器、超声波传感器&#xff0c;模拟添加完成后&#xff0c;会自动将此传感器的三维坐标增加到3D散点图上&…

【每日一篇】UrbanGPT:时空大语言模型 【方便自己看】

摘要 时空预测旨在预测和洞察城市环境在时间和空间上不断变化的动态。它的目的是预测未来的模式&#xff0c;趋势和城市生活的各个方面的事件&#xff0c;包括交通&#xff0c;人口流动和犯罪率。虽然已经有许多努力致力于开发神经网络技术来准确预测时空数据&#xff0c;但重…

【C 语言】深入理解冒泡排序算法

0. 前言 冒泡排序是一种经典且基础的排序算法。它虽然在效率上并非最优&#xff0c;但对于初学者理解排序的基本概念和逻辑有着重要的意义。 1. 冒泡排序的基本思想 冒泡排序的基本思想是通过反复比较相邻的元素并交换它们&#xff08;如果顺序错误&#xff09;&#xff0c;…