24小时热门版块排行榜    

CyRhmU.jpeg
南方科技大学公共卫生及应急管理学院2025级博士研究生招生报考通知
查看: 1908  |  回复: 4

qihailong

金虫 (小有名气)

[求助] 非线性神经网络模型的模型预测控制 程序问题

算法描述:
1、线性化神经网络模型,计算得到动态矩阵G(k);(采用的方法是在x(k)点泰勒展开,一阶导数作为线性化模型的系数a、b,系统是二阶的,利用到了神经网络模型y(k)=w0+权值求和...);
2、利用神经网络模型计算非线性自由轨迹y0,(方法是将y0表示成y0=w0+权值求和zi0+d(k)即偏差);
3、解决二次规划问题,求的du;
4、u(k)=du+u(k-1);
5、循环

问题:1、线性化的时候用到的神经网络函数为tanh,直接将一次偏导近似为1-tanh2(zi(x(k))),但是zi((x(k)))是没法计算的,只能计算zi(k),也就是各个node的输入和,可以直接用zi(k)代替zi(x(k))吗?
2、第三步用到的二次规划是标准形式,即 min{0.5x'*H*x+f'x},  A*x<=b,我可以直接在matlab用quadprog函数吗?
opts=optimset('Algorithm','active-set','Display','off');
   [x,fval,exitflag,output,lambda]=quadprog(H,f,A,b,[],[],[],[],[],opts);

这么设置对吗?

3、
我写的程序的步骤:
1、检测实际输出,计算误差dk              ----------计算偏差,设初始预测值为y(1)   (实际输出其实还没得到,因为没实际模型..  这也是个问题,没法求偏差?)
2、计算G(k)(用于预测模型y=y0+G*du)   ----------用到神经网络
3、求预测初值y0                          ----------用到神经网络
4、求控制增量du                          ----------解二次规划问题
5、计算控制量                            ----------取控制序列第一个元素
6、计算输出预测                          ----------使用预测模型G
   返回循环

请教各位!不胜感激!(遇到瓶颈了,出不来正确的图,又不知道错在哪,资料差了很多没相关内容,步骤倒是和DMC差不多...)
回复此楼
自己思索,自己做主。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lsj051

铁杆木虫 (文坛精英)

【答案】应助回帖

感谢参与,应助指数 +1
由于你用的是矩阵计算,注矩阵乘法和数乘,还有你如果永用matlab上面的问题一定得注意,还有加%号分步检查……

[ 发自手机版 http://muchong.com/3g ]
2016好运到
2楼2013-02-07 19:22:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jm_zhao

新虫 (小有名气)

【答案】应助回帖

你问的问题和我遇到的差不多 我现在也在非线性神经网络预测控制方面的文章 程序也不会
无可奈何花落去,似曾相识燕归来。
3楼2013-02-22 19:07:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qihailong

金虫 (小有名气)

引用回帖:
3楼: Originally posted by jm_zhao at 2013-02-22 19:07:33
你问的问题和我遇到的差不多 我现在也在非线性神经网络预测控制方面的文章 程序也不会

我正和一篇文章的教授请教,不知能不能解决啊。 多交流~
自己思索,自己做主。
4楼2013-02-23 15:56:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zwei1563

木虫 (正式写手)

解二次规划问题,求控制增量du  
成功实现了吗?
请教 二次规划程序实现问题                        ----------
相信自己能行
5楼2014-04-19 09:22:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 qihailong 的主题更新
信息提示
请填处理意见