【优化算法】符号LMS算法【含Matlab源码 697期】
一、获取代码方式
获取代码方式1:
完整代码已上传我的资源:【优化算法】符号LMS算法【含Matlab源码 697期】
获取代码方式2:
通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。
备注:
订阅紫极神光博客付费专栏,可免费获得1份代码(有效期为订阅日起,三天内有效);
二、LMS简介
最小均方(LMS, Least Mean Squares)是最基本的自适应滤波算法。
LMS算法是自适应滤波器中常用的一种算法与维纳算法不同的是其系统的系数随输入序列而改变。维纳算法中截取输入序列自相关函数的一段构造系统的最佳系数。而LMS算法则是对初始化的滤波器系数依据最小均方误差准则进行不断修正来实现的。因此理论上讲LMS算法的性能在同等条件下要优于维纳。但是LMS是在初始值下逐步调整的,因此在系统稳定前,会有一段调整时间,调整时间受步长因子的控制,一定范围内,步长因子越大,调整时间越小,步长因子的最大取值为R的迹。LMS采用平方误差最小的原则代替均方误差最小的原则,信号基本关系如下:
三、部分源代码
g=100; % 统计仿真次数为g去
N=1024; % 输入信号抽样点数N
k=128; % 时域抽头LMS算法滤波器阶数
pp=zeros(g,N-k); % 将每次独立循环的误差结果存于矩阵pp中,以便后面对其平均
u=0.0001;
for q=1:gt=1:N;a=1;s=a*sin(0.05*pi*t); % 输入单频信号sfigure(1);subplot(311)plot(t,real(s)); % 信号s时域波形title('信号s时域波形');xlabel('n');ylabel('s');axis([0,N,-a-1,a+1]);xn=awgn(s,5); % 加入均值为零的高斯白噪声,信噪比为3dB% 设置初值y=zeros(1,N); % 输出信号yy(1:k)=xn(1:k); % 将输入信号xn的前k个值作为输出y的前k个值w=zeros(1,k); % 设置抽头加权初值e=zeros(1,N); % 误差信号% 用LMS算法迭代滤波for i=(k+1):NXN=xn((i-k+1):(i));y(i)=w*XN';e(i)=s(i)-y(i);w=w+u*sign(real(e(i)))*XN; %更新抽头系数endpp(q,:)=(e(k+1:N)).^2;
end
subplot(312)
plot(t,real(xn)); % 信号s时域波形
title('信号s加噪声后的时域波形');
subplot(313)
plot(t,real(y)); % 信号s时域波形
title('自适应滤波后的输出时域波形');
for b=1:N-kbi(b)=sum(pp(:,b))/g; % 求误差的统计平均
end
四、运行结果
五、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1] 包子阳,余继周,杨杉.智能优化算法及其MATLAB实例(第2版)[M].电子工业出版社,2016.
[2]张岩,吴水根.MATLAB优化算法源代码[M].清华大学出版社,2017.
【优化算法】符号LMS算法【含Matlab源码 697期】相关推荐
- 【SVM分类】基于matlab哈里斯鹰算法优化支持向量机SVM分类【含Matlab源码 2243期】
⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[SVM分类]基于matlab哈里斯鹰算法优化支持向量机SVM分类[含Matlab源码 2243期] 获取代码方式2: 付费专栏Matla ...
- 【MVO TSP】基于matlab灰狼算法求解旅行商问题【含Matlab源码 1327期】
一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[TSP]基于matlab灰狼算法求解旅行商问题[含Matlab源码 1327期] 点击上面蓝色字体,直接付费下载,即可. 获取代码方式2: ...
- 【图像重建】基于matlab布雷格曼迭代算法集合ART算法CT图像重建【含Matlab源码 1905期】
一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[图像重建]基于matlab布雷格曼迭代算法集合ART算法CT图像重建[含Matlab源码 1905期] 获取代码方式2: 通过订阅紫极神光 ...
- 【AFSA TSP】基于matlab人工鱼群算法求解旅行商问题【含Matlab源码 422期】
一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[TSP]基于matlab人工鱼群算法求解旅行商问题[含Matlab源码 422期] 点击上面蓝色字体,直接付费下载,即可. 获取代码方式2 ...
- 【BA TSP】基于matlab蜜蜂算法求解旅行商问题【含matlab源码 1248期】
⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[TSP]基于matlab蜜蜂算法求解旅行商问题[含matlab源码 1248期] 获取代码方式2: 付费专栏Matlab路径规划(初级版 ...
- 【IA TSP】基于matlab免疫算法求解旅行商问题【含Matlab源码 195期】
一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[旅行商问题]基于matlab免疫算法求解旅行商问题[含Matlab源码 195期] 点击上面蓝色字体,直接付费下载,即可. 获取代码方式2 ...
- 【ELM分类】基于matlab遗传算法优化ELM神经网络数据分类【含Matlab源码 2138期】
⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[ELM分类]基于matlab遗传算法优化ELM神经网络数据分类[含Matlab源码 2138期] 点击上面蓝色字体,直接付费下载,即可. ...
- 【LSSVM分类】基于matlab遗传算法优化LSSVM烟叶识别【含Matlab源码 1944期】
⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[ELM分类]基于matlab鲸鱼算法优化核极限学习机数据分类[含Matlab源码 2012期] 获取代码方式2: 付费专栏Matlab智 ...
- 【LSTM时间序列预测】基于matlab鲸鱼算法优化LSTM时间序列预测【含Matlab源码 105期】
⛄一.鲸鱼算法及LSTM简介 1 鲸鱼优化算法(Whale Optimization Algorithm,WOA)简介 鲸鱼优化算法(WOA),该算法模拟了座头鲸的社会行为,并引入了气泡网狩猎策略. ...
- 【SVM分类】基于matlab鸽群算法优化支持向量机SVM分类【含Matlab源码 2242期】
⛄一.鸽群算法简介 基于鸽群在归巢过程中的特殊导航行为,Duan等提出了一种仿生群体智能优化算法---鸽群优化算法.在这个算法中,通过模仿鸽子在寻找目标的不同阶段使用不同导航工具这一机制,提出了2种不 ...
最新文章
- 省掉1/3的回归测试:Facebook用机器学习自动选择测试策略
- java获取系统电量_android操作系统怎么获得电量
- boost::hana::span用法的测试程序
- Effective Java之用接口模拟可伸缩的枚举(三十四)
- 进程中的信号赋值与变量赋值
- Array 复制到ArrayList中
- 计算机操作系统同步互斥
- hive分区用2个字段有何限制_[特性]Hive动态分区功能使用
- std::optional
- 关于swift中的懒加载
- 基于JAVA+SpringMVC+Mybatis+MYSQL的心理咨询预约系统
- 解决wordpress后台管理访问速度慢的问题
- Oracle database sqldeveloper study(1)
- PowerDesigner(CDM—PDM—SQL脚本的转换流程) 随笔
- java架构师之路:JAVA程序员必看的15本书
- 在pycharm中查看opencv版本
- 大学英语计算机统考怎么过,2011年9月大学英语B 统考 计算机网考样题
- CSS3 排版属性盒子模型 第二个模块
- 三维扫描系列 点云绪论
- mansory使用记录NSLayoutConstraint-代码实现自动布局
热门文章
- 设计模式(一):代理模式
- APICloud的BUG 组件UIActionSelector数据格式引起的安卓手机显示不出
- javascript 对象遍历
- AIDL 发生异常的原因 Android java.lang.SecurityException: Binder invocation to an incorrect interface...
- MOSS2010事件接收器开发以及自定义错误提示页
- 神经网络动态可视化工具
- 结构体的成员偏移地址和字节对齐
- Atitit oil painting article list sumup s55 C:\Users\Administrator\Desktop\油画技术资料包\Atitit Atitit 图像
- Atitit mybatisutil 模块测试功能列表 1.1. mybatis读取mapper配置的sql语句 使用xml类库	1 1.2. Mybatis替换参数工具类型	3 Itfs pn
- Atitit. Attilax软件研发and开发之道 1. 基本语言	3 2. 标准化库api	3 3. Ied与代码编写 调试	3 4. ui	3 5. 通讯	3 6. 第三方库	3 7. 数据