导航:首页 > 编程大全 > 网络pid

网络pid

发布时间:2023-03-01 23:22:54

⑴ 基于BP神经网络的PID,输入参数的归一化,问题求助

利用BP神经网络来整定PID,也许能实现。但是书本上的这个BP-PID理论书本是错误的。你仔细看看,它的输出激活函数的值域是【0,1】,PID的参数不可能是只在这个范围啊!可以说输出没有反归一化(值域扩展)。至于输入归一化,可用不做,但是输出在0和1之间,就是闹笑话了

⑵ s函数-神经网络PID

我毕设是这个研究好几天了
终于有点头绪.虽然你是3年前发的我忍不住跟你分享一下.
估计还会有人需要。我找了整整几天在网上找不到任何有用的资料
等过几天答辩完了有新的理解会回来补充,就当造福后人了。

switch flag,
case 0
[sys,x0,str,ts]=mdlInitializeSizes(nh);
case 3
sys=mdlOutputs(t,x,u,nh,xite,alfa,KF1,KF2,wi,wo);
case { 1,2, 4, 9 }
sys=[];
otherwise
error(['Unhandled flag = ',num2str(flag)]);
end

flag是标志位.不同的flag取值代表函数进行不同的运算,这里flag=0进行初始化运算,=3进行sys输出运算,其他的不运算。

function [sys,x0,str,ts] = mdlInitializeSizes(nh)
sizes = simsizes;
sizes.NumContStates = 0;
sizes.NumDiscStates = 0;
sizes.NumOutputs = 4+7*nh; % dynamically sized?
sizes.NumInputs = 14*nh+7; % dynamically sized?
sizes.DirFeedthrough = 1; % has direct feedthrough
sizes.NumSampleTimes = 1;
sys = simsizes(sizes);
str = [];
x0 = [];
ts = [-1 0];
这些是必要的参数设置,分别是连续参数为0,离散参数为0,输出个数4+7*nh,输入个数14*nh+7(不知道4和7是哪来的?分别是输入参数和返回参数的数量),直接馈入(我也不知道是什么)为1,取样次数为1.设置完赋给sys输出。
str是没用的东西,x0是初始状态为空矩阵,这里你打错字了是ts=[T0],ts是一个1X2的向量,ts(1)是采样周期,ts(2)是偏移量。

wi_2=wi+reshape(u(8:7+4*nh),nh,4);
wo_2=wo+reshape(u(8+4*nh:7+7*nh),3,nh);
wi_1=wi+reshape(u(8+7*nh:7+11*nh),nh,4);
wo_1=wo+reshape(u(8+11*nh:7+14*nh),3,nh);
这个是学习网络的建立过程,具体我也不懂。

xx=[u(1)-u(2);u(1);u(1)+u(3)-2*u(2)];
这句是增量式PID控制算法,应该是你说的PID部分,我也不太懂。
程序部分我就知道这些。

还有我好久才查到的,nh代表神经元个数,xite是学习速率,alfa惯性系数。

希望对再来看的人有帮助。

阅读全文

与网络pid相关的资料

热点内容
酷狗app如何在电脑同步播放 浏览:668
云浮微信群 浏览:344
公司文件打不开 浏览:267
LOL的设置文件在哪里 浏览:254
线上开庭是什么app 浏览:526
新中大软件怎么设置文件夹 浏览:807
git删除文件夹 浏览:353
皇室战争怎么升级竞技场 浏览:447
雅虎统计工具 浏览:741
edgepdf文件分类 浏览:901
cad为什么捕捉不到外部参照文件 浏览:935
重庆一共有多少个网站 浏览:34
k8s配置文件env创建失败 浏览:197
编程序在电脑上叫做什么 浏览:92
qq阅读可赚 浏览:21
怎样查找web储存文件图片 浏览:681
人口档案数据库包括什么信息 浏览:709
手机有什么好玩的星战网络游戏 浏览:15
ps怎么弄成转曲文件 浏览:281
用数据线给手机传文件 浏览:926

友情链接