码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 使用 RBF神经网络,结合参考模型,通过神经网络输出被控模型的控制器,实现其对参考模型的跟踪,Matlab 程序


    径向基
    1径向基RBF(radial basis function)函数、RBF神经网络、 反推(back-stepping)控制
    2基于 RBF 径向基神经网络的自适应控制,原理推导,效果实现,Matlab 程序
    3使用 RBF神经网络,结合参考模型,通过神经网络输出被控模型的控制器,实现其对参考模型的跟踪,Matlab 程序

    文章目录

    • 1. RBF神经网络在控制中的应用
    • 6. 严格反馈结构
    • 7. 反推控制 Backstepping

    1. RBF神经网络在控制中的应用

    这里再给出一个使用 RBF神经网络,结合参考模型,通过神经网络输出被控模型的控制器,实现其对参考模型的跟踪的程序。

    关于原理讲解请参考RBF神经网络参考模型自适应MATLAB实现(分析)。

    程序结果如下

    在这里插入图片描述

    在这里插入图片描述

    % 
    % Author: Z-JC
    % Data: 2022-10-16
    clear
    clc
    
    %%
    % reference model states
    y_d(:,1) = 0.5 * sin(0);
    y_m(:,1) = y_d(:,1);
    
    % model states
    u(:,1) = 0;
    y(:,1) = u(:,1);
    
    % output error
    e_c(:,1) = y_m(:,1) - y(:,1);
    
    % RBF
    InpLayNum = 3;
    HidLayNum = 7;
    OutLayNum = 1;
    
    x(:,1) = [y_d(:,1)  e_c(:,1)  y(:,1)]';
    c = [-3 -2 -1  0  1  2  3
         -3 -2 -1  0  1  2  3
         -3 -2 -1  0  1  2  3];
    b = 2;
    w = rands(7,1);
    h = zeros(7,1);
    
    % learning rate
    alpha = 0.5;
    
    %% Time state
    t(1,1) = 0;
    tBegin = 0;
    tFinal = 10;
    dT = 0.05;
    times = (tFinal-tBegin)/dT;
    
    % Iterations
    for i = 1:times
        % Record time
        t(:,i+1) = t(:,i) + dT;
        
        y_d(:,i+1) = 0.5 * sin(t(:,i+1));
        
        % reference model output
        y_m(:,i+1) = y_d(:,i+1);
        
        % model output
        y(:,i) = u(:,i);
        
        % output error
        e_c(:,i) = y_m(:,i) - y(:,i);
        
        % RBF
        x(:,i) = [y_d(:,i)  e_c(:,i)  y(:,i)]';
        
        % 这里有 7 个隐含层节点 HidLayNum
        for j = 1:HidLayNum
            h(j) = exp( -norm(x(:,i)-c(:,j))^2/(2*b^2) ); % 节点高斯核函数
        end
        
        % update weight % 梯度下降法更新权值
        d_w = e_c(:,i) * h;
        w(:,i+1) = w(:,i) + alpha * d_w;
        
        % RBF output
        u(:,i+1) = w(:,i+1)' * h;
        
        % update model output
        y(:,i+1) = u(:,i+1);
        
        % update output error
        e_c(:,i+1) = y_m(:,i+1) - y(:,i+1);
    end
    
    figure(1);
    plot(t,y_m,'r', t,y,'k:', 'linewidth',1.5);
    xlabel('t (s)');ylabel('ym,y');
    legend('Reference model output $y_m$','Model output $y$', 'interpreter','latex');
    
    figure(2);
    plot(t,u,'r', 'linewidth',1.5);
    legend('Model control input $u$', 'interpreter','latex');
    xlabel('t (s)');ylabel('Control input');
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83
    • 84
    • 85
    • 86
    • 87
    • 88

    6. 严格反馈结构

    控制理论中,什么是严格反馈结构?

    严格反馈系统和纯反馈系统的区别是?


    7. 反推控制 Backstepping

    反推控制

    学习笔记(1)——反步控制法

    反步(Back-Stepping)设计方法


  • 相关阅读:
    微信小程序如何关联视频号直播
    华为云云耀云服务器L实例评测 | MacOS系统-宝塔建站
    正确地进行错误处理
    当我们做后仿时我们究竟在仿些什么(二)
    集合java
    Shiro中的session和cookie
    注解&反射学习笔记
    week 6 贪心
    Android Studio 实现登录注册-源代码 (连接MySql数据库)
    安卓蓝牙耳机哪个牌子好?安卓手机蓝牙耳机推荐
  • 原文地址:https://blog.csdn.net/weixin_36815313/article/details/127333011
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号