基于多特征提取与机器学习的LOS与NLOS识别算法系统
项目介绍
本项目是一款专为无线通信环境辨识设计的算法系统,旨在解决超宽带(UWB)及5G等高精度定位场景下,因信号经过障碍物遮挡(即非视距,NLOS)导致的传播时延偏差和精度下降问题。系统利用信号处理理论与机器学习技术,通过对信道冲激响应(CIR)数据的深度挖掘,实现视距(LOS)与非视距(NLOS)环境的精准自动分类。本系统不仅提供了完整的信号仿真框架,还集成了一套标准化的特征工程与多模型评价体系。
功能特性
- 高保真信号仿真:内置信道仿真模型,能够模拟LOS条件下强直达径特性以及NLOS条件下多径分量丰富、能量离散且直达径衰减的物理特征。
- 多维特征提取:涵盖了时间延迟分析、信号强度分析、统计矩分析以及功率分布特性等9类核心物理与统计特征。
- 双模型对比分类:系统同时构建了基于径向基核函数(RBF)的支持向量机(SVM)和基于集成学习思想的随机森林(Random Forest)分类器,通过对比提升分类稳健性。
- 全方位性能评估:自动生成包含混淆矩阵、ROC曲线、AUC指标、特征分布对比图及特征重要性评分在内的可视化评估报告。
系统流程与实现逻辑
主程序按照标准的机器学习工作流进行设计,具体逻辑如下:
- 参数初始化:定义UWB典型采样频率(4GHz)、信噪比、样本规模及仿真步长,构建纳秒级的时间向量。
- CIR数据集生成:
*
LOS样本:在较早的时间点生成强直达径,并添加随指数衰减的少量多径分量。
*
NLOS样本:模拟直达径被遮挡的情形,将起始径强度调弱且位置延后,同时增加大量且散乱的多径分量。
*
噪声模拟:为所有信号叠加指定信噪比的高斯白噪声。
- 多维特征工程:
*
时域统计:提取平均超额时延、RMS时延扩展以及信号上升时间。
*
能量特性:计算接收信号强度(RSSI)及其峰值幅度。
*
分布密度:分析三阶矩(偏度)、四阶矩(峭度)以及峰均比。
*
信道特性:估算莱斯K因子,衡量直达径与多径分量的功率对比关系。
- 数据标准化处理:采用Z-Score归一化方法消除不同特征量纲对分类器训练的影响。
- 模型训练与测试:按照70%训练、30%测试的比例划分数据集,训练SVM和随机森林模型,并对测试集进行分类预测及得分评估。
- 可视化展示:通过多子图模式展示典型波形差异、衡量模型分类精度。
关键函数与算法细节分析
- 信道仿真逻辑:通过设置不同的起始位置、径向强度分布和衰减常数来区分LOS和NLOS。LOS侧重于能量的瞬时爆发,而NLOS侧重于能量的时间弥散。
- 特征提取算法:
*
平均超额时延与RMS扩展:基于归一化功率分布密度函数计算,反映了多径在时间轴上的分布重心和弥散程度。
*
统计矩分析:通过三阶偏度和四阶峭度捕捉信号幅度的分布偏斜状态和尖削程度,这是区分LOS波形脉冲性与NLOS波形杂乱度的关键。
*
上升时间:计算从信号起始到峰值点的时延,LOS信号通常具有极短的上升沿。
*
SVM:采用RBF核函数进行非线性空间映射,适用于中等规模的高维特征分类。
*
随机森林:使用Bagging法集成50棵决策树,并限制最大分裂数,能有效防止过拟合,并提供了特征贡献度分析的基础数据。
使用方法
- 启动MATLAB软件。
- 确保已安装“Statistics and Machine Learning Toolbox”扩展插件。
- 将主程序文件所在文件夹添加至MATLAB路径。
- 在命令行窗口输入主程序名并回车运行。
- 运行完成后,系统将自动弹出两个图形窗口:
* 窗口1:展示LOS/NLOS波形对比、混淆矩阵、ROC曲线及关键特征(RMS时延扩展)的箱线图。
* 窗口2:展示9个特征项对环境辨识的贡献度排序。
系统要求
- 环境版本:MATLAB R2020b 或更高版本。
- 所需工具箱:Statistics and Machine Learning Toolbox(统计与机器学习工具箱)。
- 硬件建议:4GB及以上可用内存,以支持大规模样本仿真与矩阵运算。