基于DNN深度学习网络的OFDM+QPSK信号检测算法matlab仿真

简介: 基于DNN深度学习网络的OFDM+QPSK信号检测算法matlab仿真

1.算法运行效果图预览

3d3d49be7231fa1b13dfc3e5617d1fa6_82780907_202309172132310458746453_Expires=1694958151&Signature=u4DcCarR2LPURCGbsQBNaZL8wlA%3D&domain=8.png
450eaef3232221e79ce7cb519193175c_82780907_202309172132310410849141_Expires=1694958151&Signature=oPeOHQbZL0LBw0SrVbyb6nVvbRA%3D&domain=8.jpeg

2.算法运行软件版本
matlab2022a

3.算法理论概述
正交频分复用(OFDM)是一种多载波调制技术,已经广泛应用于数字通信领域。OFDM信号检测是接收端的关键问题之一,目的是将接收到的OFDM信号恢复为原始数据。由于OFDM信号具有高带宽效率、抗多径衰落等特点,可以在高速移动环境下实现高速数据传输。但是,OFDM信号的检测存在一些困难,例如频率偏移、信道估计误差、多路径干扰等。为了解决这些问题,近年来,深度学习技术被广泛应用于OFDM信号检测中。

c12be75893fa481cae50fbcd95bf6746_82780907_202309172132410019781605_Expires=1694958161&Signature=w1M3y%2Fe%2F7D7XDgnooFH3nq3JEEs%3D&domain=8.png

3.基于DNN的OFDM信号检测模型

基于DNN的OFDM信号检测模型可以表示为:

$$\hat{s}{n,k}=\arg\max{s_{n,k}}P(s_{n,k}|r_{n,k},\theta)$$

    其中,$\hat{s}{n,k}$是预测的数据符号,$r{n,k}$是接收到的OFDM信号,$\theta$是模型参数。该模型可以通过DNN深度学习网络来学习OFDM信号的映射关系,从而实现OFDM信号的检测。

   在实际应用中,需要实现实时OFDM信号检测。这可以通过将训练好的模型部署到实际系统中来实现。在实时检测过程中,需要对接收到的OFDM信号进行预处理,并将其输入到训练好的模型中进行检测。实时检测的实现需要考虑到时间延迟、资源限制等因素。

  基于DNN深度学习网络的OFDM信号检测已广泛应用于数字通信领域。它可以用于解决OFDM信号检测中的一些难题,例如频率偏移、信道估计误差、多路径干扰等。此外,它还可以用于无线电频谱感知、无线电干扰检测等领域。

4.部分核心程序

```Transmitted_signal = OFDM_Transmitter(data_in_IFFT, NFFT, NCP);

    %信道
    Ray_h_ofdm             = (1 / sqrt(2)) * randn(len_symbol, 1) + (1 / sqrt(2)) * 1j * randn(len_symbol, 1); % Rayleigh channel coff
    Rayleigh_h_channel     = repmat(Ray_h_ofdm, Frame_size, 1);
    Rayleigh_Fading_Signal = awgn(Rayleigh_h_channel .* Transmitted_signal,SNR,'measured');
    signal_ideal           = Rayleigh_Fading_Signal ./ Rayleigh_h_channel;

    Multitap_h = [(randn + 1j * randn);...
                  (randn + 1j * randn) / 24] ;

    %卷积通过信道
    Multipath_Signal        = conv(Transmitted_signal, Multitap_h);

    Multipath_Signal        = awgn(Multipath_Signal(1 : length(Transmitted_signal)),SNR,'measured');
    % OFDM 接收
    [Rsignals0, Rsignalsh0] = OFDM_Receiver(Multipath_Signal, NFFT, NCP, len_symbol, signal_ideal);

    % 进行深度学习部分,使用已训练好的神经网络进行解调
    [DNN_feature_signal, ~, ~] = Extract_Feature_OFDM(Rsignals0, dataSym(1:2), M, QPSK_signal(1:8));
    Received_data_DNN          = predict(DNN_Trained, DNN_feature_signal);
    Received_data_DNN          = transpose(Received_data_DNN);
    DNN_Received_data          = Received_data_DNN(1:2:end, :) + 1j * Received_data_DNN(2:2:end, :);

    DNN_dataSym_Rx             = QPSK_Demodulator(DNN_Received_data);

    DNN_dataSym_Received       = de2bi(DNN_dataSym_Rx, 2);
    DNN_Data_Received          = reshape(DNN_dataSym_Received, [], 1);

    DNN_sym_err(ij, 1)         = sum(sum(round(dataSym(1:8)) ~= round(DNN_dataSym_Rx)));
    DNN_bit_err(ij, 1)         = sum(sum(round(reshape(de2bi(dataSym(1:8), 2),[],1)) ~= round(DNN_Data_Received)));  
end
Bers(idx, 1) = sum(DNN_bit_err, 1) / N_bits_DNN; % 计算平均比特误码率
Sers(idx, 1) = sum(DNN_sym_err, 1) / N_QPSK_DNN; % 计算平均符号误码率

```

相关文章
|
10月前
|
监控 安全 算法
137_安全强化:输入过滤与水印 - 实现输出水印的检测算法与LLM安全防护最佳实践
随着大语言模型(LLM)在各行业的广泛应用,安全问题日益凸显。从提示注入攻击到恶意输出生成,从知识产权保护到内容溯源,LLM安全已成为部署和应用过程中不可忽视的关键环节。在2025年的LLM技术生态中,输入过滤和输出水印已成为两大核心安全技术,它们共同构建了LLM服务的安全防护体系。
877 148
|
11月前
|
传感器 机器学习/深度学习 算法
【UASNs、AUV】无人机自主水下传感网络中遗传算法的路径规划问题研究(Matlab代码实现)
【UASNs、AUV】无人机自主水下传感网络中遗传算法的路径规划问题研究(Matlab代码实现)
261 0
|
11月前
|
机器学习/深度学习 算法 调度
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
676 0
|
11月前
|
传感器 资源调度 算法
DDMA-MIMO雷达多子带相干累积目标检测算法——论文阅读
本文提出一种多子带相干累积(MSCA)算法,通过引入空带和子带相干处理,解决DDMA-MIMO雷达的多普勒模糊与能量分散问题。该方法在低信噪比下显著提升检测性能,实测验证可有效恢复目标速度,适用于车载雷达高精度感知。
1140 4
DDMA-MIMO雷达多子带相干累积目标检测算法——论文阅读
|
10月前
|
开发框架 算法 .NET
基于ADMM无穷范数检测算法的MIMO通信系统信号检测MATLAB仿真,对比ML,MMSE,ZF以及LAMA
简介:本文介绍基于ADMM的MIMO信号检测算法,结合无穷范数优化与交替方向乘子法,降低计算复杂度并提升检测性能。涵盖MATLAB 2024b实现效果图、核心代码及详细注释,并对比ML、MMSE、ZF、OCD_MMSE与LAMA等算法。重点分析LAMA基于消息传递的低复杂度优势,适用于大规模MIMO系统,为通信系统检测提供理论支持与实践方案。(238字)
|
11月前
|
机器学习/深度学习 并行计算 算法
【CPOBP-NSWOA】基于豪冠猪优化BP神经网络模型的多目标鲸鱼寻优算法研究(Matlab代码实现)
【CPOBP-NSWOA】基于豪冠猪优化BP神经网络模型的多目标鲸鱼寻优算法研究(Matlab代码实现)
259 8
|
11月前
|
算法 数据挖掘 区块链
基于遗传算法的多式联运车辆路径网络优优化研究(Matlab代码实现)
基于遗传算法的多式联运车辆路径网络优优化研究(Matlab代码实现)
307 2
|
11月前
|
机器学习/深度学习 传感器 算法
【表面粗糙度】基于粒子群PSO算法优化-BP神经网络的表面粗糙度研究(Matlab代码实现)
【表面粗糙度】基于粒子群PSO算法优化-BP神经网络的表面粗糙度研究(Matlab代码实现)
415 7
|
10月前
|
机器学习/深度学习 人工智能 算法
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)
361 0
|
11月前
|
机器学习/深度学习 数据采集 资源调度
基于长短期记忆网络定向改进预测的动态多目标进化算法(LSTM-DIP-DMOEA)求解CEC2018(DF1-DF14)研究(Matlab代码实现)
基于长短期记忆网络定向改进预测的动态多目标进化算法(LSTM-DIP-DMOEA)求解CEC2018(DF1-DF14)研究(Matlab代码实现)
442 0

热门文章

最新文章