模拟喷泉码(入门三):Adaptive Analog Fountain for Wireless Channels
2013《Adaptive Analog Fountain for Wireless Channels》学习笔记
一种模拟喷泉码编码方案+2-Sum verification decoder,实现高频谱效率的自适应传输,并在AWGN信道中提高系统吞吐量。
目录
- 1. 实现时变信道高吞吐量的思路
- 2. 模拟喷泉码的解码
- 2.1 2-Sum Verification Decoder
- 2.2 Sum-Or Tree Analysis technique及其对解码器性能分析结果
- 3. 最佳度和权重分布的获取
1. 实现时变信道高吞吐量的思路
思路 | 案例 | 缺点 |
---|---|---|
使用大量物理层配置,从固定的码率、调制和编码方案中选择 | 802.11n的高通量模式使用基于LDPC码的自适应调制和编码(AMC)方案,包含4种码率*4种调制和编码方案的组合 | 依赖CSI,系统复杂性高,不适用信道变化迅速和难以预测的情况 |
在发送方和接收方之间使用无速率码 | a seamless rate adaptation strategy | 编码过程并未实现最佳度分布 |
论文编码方式同入门一,创新点:
- 解码方式用了2-Sum verification decoder,并用Sum-Or tree analysis技术分析解码器的error recovery performance。
- 对所提出的码的度分布进行优化,以最大化2-Sum verification decoder的error recovery performance。
- 为了实现容量逼近性能,还对权重分布进行了优化,使信号分布尽可能接近高斯分布。
2. 模拟喷泉码的解码
S=Gb\mathbf{S}=\mathbf{G b}S=Gb,对于SiS_iSi,其连接几个bib_ibi由度分布决定,连接的权重由权重分布决定。
2.1 2-Sum Verification Decoder
类似于Luby[2]针对LT码提出的简单解码器
- 如果CN cnc_{n}cn 度为1并以权重值 wn,jw_{n, j}wn,j 连接VN vjv_{j}vj,那么用cnc_{n}cn的值除以权重值 wn,jw_{n, j}wn,j 即VN的值
- 两个VN连接到一个CN的情况:
(vi,vj)={(0,0),if cn=0,wn,i+wn,j≠0(1,0),if cn=wn,i,wn,i≠wn,j(0,1),if cn=wn,j,wn,i≠wn,j(1,1),if cn=wn,i+wn,j≠0\left(v_{i}, v_{j}\right)= \begin{cases}(0,0), & \text { if } c_{n}=0, w_{n, i}+w_{n, j} \neq 0 \\ (1,0), & \text { if } c_{n}=w_{n, i}, w_{n, i} \neq w_{n, j} \\ (0,1), & \text { if } c_{n}=w_{n, j}, w_{n, i} \neq w_{n, j} \\ (1,1), & \text { if } c_{n}=w_{n, i}+w_{n, j} \neq 0\end{cases}(vi,vj)=⎩⎪⎪⎪⎨⎪⎪⎪⎧(0,0),(1,0),(0,1),(1,1), if cn=0,wn,i+wn,j=0 if cn=wn,i,wn,i=wn,j if cn=wn,j,wn,i=wn,j if cn=wn,i+wn,j=0- 通过从检查节点中减去已验证的变量节点值,删除所有已验证的变量节点及其所有连接的边
- 重复步骤1-3,直到VN都被解码,或者再也找不到度1or2的检查节点。
2.2 Sum-Or Tree Analysis technique及其对解码器性能分析结果
将解码器的迭代算法映射到Sum-Or Tree。
定义T1T_1T1表示深度为2l2l2l的树,根系节点深度0。0,2,...,2l0, 2, ..., 2l0,2,...,2l 深度的节点作为或节点,1,3,...,2l−11, 3, ..., 2l-11,3,...,2l−1 作为与节点。
假设每个或节点以概率λi\lambda_iλi独立抽选i个子节点,每个与节点以概率wiw_iwi独立抽选j个子节点,∑iλi=∑iωi=1\sum_{i} \lambda_{i}=\sum_{i} \omega_{i}=1∑iλi=∑iωi=1。树的每一条边上的权重是依概率分布qs\mathbf{q}_{s}qs从集合WsW_{s}Ws中选择。
对于或节点,其值以概率p0p_{0}p0 and 1−p01-p_{0}1−p0分别取值0 or 1,没有子节点的或节点值为0,没有子节点的与节点值为1。与节点在所有子节点为1和仅有一个子节点为0且w1+w2≠0w_{1}+w_{2} \neq 0w1+w2=0的情况下为1,其余情况为0。或节点在所有子节点为0的时候取值0,其余情况取值1.
plp_lpl表示根节点确定为零的概率,那么得到一个迭代式:
pl=λ(1−ω(1−pl−1)−C∑i=2ωipl−1(1−pl−1)i−2)p_{l}=\lambda\left(1-\omega\left(1-p_{l-1}\right)-C \sum_{i=2} \omega_{i} p_{l-1}\left(1-p_{l-1}\right)^{i-2}\right) pl=λ(1−ω(1−pl−1)−Ci=2∑ωipl−1(1−pl−1)i−2)其中λ(x)=∑iλixi,ω(x)=∑iωixi\lambda(x)=\sum_{i} \lambda_{i} x^{i}, \omega(x)=\sum_{i} \omega_{i} x^{i}λ(x)=∑iλixi,ω(x)=∑iωixi,C=1−prob{w1+w2=0}C=1-\operatorname{prob}\left\{w_{1}+w_{2}=0\right\}C=1−prob{w1+w2=0}
解码器的映射:
解码器算法的本质是CNs和VNs之间的信息传递:与VN相邻的CNs中,只要有一个CN确定了某一VN的值,该VN就可以将这一VN的值传递给与其相邻的其余CNs;CNs在接收到所有VN的消息‘1’或者从某一VN收到一个‘0’(有一个VN没有被解析)且其权重wjw_{j}wj有wi+wj≠0w_{i}+w_{j} \neq 0wi+wj=0时(但根据其余的VNs和CN值可以推导出未被解析的VN)向其他相邻的VNs告知该CN已被解析。——“或”运算在VNs上执行,而CN对其子节点的值执行与运算。
当VN和CN的数量足够大时,码的二部图可视为渐近和或树。将每个检查节点映射到与节点,将每个变量节点映射到OR节点。变量节点在l次迭代后未被验证的概率是与或树的根等于零的概率。
性能分析:
给定分布函数ω(x)\omega(x)ω(x) and λ(x)\lambda(x)λ(x),ωiω_iωi是随机抽选VN节点连接到度为i的CN的概率。
此处论文中描述的太乱了,后续如果需要错误概率推导参考Analysis of random processes via and-or tree evaluation
结论:解码算法第l次迭代的错误概率:
pl+1=e−γμ(ω(1−pl)+C∑i=2ωipl(1−pl)i−2)p_{l+1}=e^{-\gamma \mu\left(\omega\left(1-p_{l}\right)+C \sum_{i=2} \omega_{i} p_{l}\left(1-p_{l}\right)^{i-2}\right)}pl+1=e−γμ(ω(1−pl)+C∑i=2ωipl(1−pl)i−2),其中γ=N/k\gamma=N / kγ=N/k表示开销,p0=1p_{0}=1p0=1
3. 最佳度和权重分布的获取
问题:对于给定的消息长度和权重集,如何找到了最佳度和权重分布,以最小化2-Sum Verification Decoder的错误概率,并使信号分布尽可能接近高斯分布?
ToDo2:为什么要使信号分布接近高斯分布
当消息满足一致性条件时,使用高斯近似的密度进化算法可以只计算消息的均值。因此,对于满足一致性条件/高斯近似的信噪比进化,也是仅仅传播信息的均值。能简化计算复杂度
不使用该文章方法设计权重和度分布,初期复现以入门一为主。
模拟喷泉码(入门三):Adaptive Analog Fountain for Wireless Channels相关推荐
- 模拟喷泉码(入门四):Regularized Variable-Node LT Codes with Improved Erasure Floor Performance
2013<Regularized Variable-Node LT Codes with Improved Erasure Floor Performance>学习笔记 基于外部信息传递图 ...
- 模拟喷泉码(入门二):Seamless Rate Adaptation for Wireless Networking
2011<Seamless Rate Adaptation for Wireless Networking>论文学习笔记 设计了能在动态信道条件下实现平滑的速率调整的Seamless Ra ...
- rateless code 与喷泉码(Fountain code)
数字喷泉码概念由Luby等人于1998年首次提出,但当时并未给出实用数字喷泉码设计方案.2002年,Luby提出了第一种实用数字喷泉码--LT码.之后,Shokrollahi又提出了性能更佳的Rapt ...
- [转载]Python爬虫入门三之Urllib库的基本使用
python爬虫系列教程http://cuiqingcai.com/1052.html 1.分分钟扒一个网页下来 怎样扒网页呢?其实就是根据URL来获取它的网页信息,虽然我们在浏览器中看到的是一幅幅优 ...
- 模拟电路学习入门的建议(综合整理)
转载自:http://bbs.eetop.cn/viewthread.php?tid=170164 "模拟电路学习入门" "如何才算学好模电,数电"一帖引来大家 ...
- 传智播客 React 入门 三天课程
传智播客 React 入门 三天课程 第一天 理论和配置 虚拟DOM和DIFF算法 React 的核心是虚拟DOM和DIFF算法.DIFF 算法确保虚拟DOM高效运行(从上到下分别是 tree-dif ...
- 脑残式网络编程入门(三):HTTP协议必知必会的一些知识
为什么80%的码农都做不了架构师?>>> 本文原作者:"竹千代",原文由"玉刚说"写作平台提供写作赞助,原文版权归"玉刚说&q ...
- .Net 3.5 Remoting编程入门三
VS2008 .Net 3.5 Remoting编程入门三 信道 什么是信道?信道有哪些类型呢? 信道顾名思意就是通信的通道.就想那些宣传标语说的,"要想富,先修路!".同理,要学 ...
- 【Vue-Router】模拟源码,解析 Vue-Router 的实现原理
前言 笔记来源:拉勾教育 大前端高薪训练营 阅读建议:建议通过左侧导航栏进行阅读 Vue-Router 基础知识 编程式导航 this.$router.replace() this.$router.p ...
最新文章
- Java中的Cookie(1)——基本操作
- Domino+Qucikplace+Sametime构建企业办公平台图文攻略(三)
- serv-u 数据备份_如何使用用户数据脚本在EC2实例上安装Apache Web Server
- html动态计算高度,透明半透明背景
- 十六、PHP框架Laravel学习笔记——构造器的增删改
- 改变网页标签图片(favicon)
- 使用apache POI把list集合里面的实体写入Excel(java)
- db2设置数据库增量备份_DB2在线增量备份 还原增量备份及前滚恢复
- mysql添加字段自动记录加入时间、更新时间
- 扇贝有道180911每日一句
- 软件测试常见面试题合集(内附详细答案)
- 暴力电脑锁机生成器(加机械硬盘锁)
- Matplotlib颜色对照表
- F. Equalize the Array【学习进度条2】
- 批一批淘宝首页的源代码
- 单片机要直接烧录程序,要如何做?
- Android输入法方法,android输入法–InputMethodManager
- android 苹果 换机,苹果12怎么一键换机安卓?iPhone12一键换机功能操作步骤
- 【Qt】Use multi-arg instead
- 如何根据TCODE(事务码)查找SAP后台配置菜单路径(IMG路径)