<textarea readonly="readonly" name="code" class="c++">
%% 基于bp神经网络pid控制程序
%% BP based PID Control
%% 清除环境变量和命令行的内容
clear all;
close all;
clc;
%% 参数的设置,正弦信号与阶跃信号对应的权值的初始设定
xite=0.25; % 学习速率
alfa=0.05; % 惯性系数
S=2; %Signal type
IN=4;H=5;Out=3; % 输入层、隐层和输出层神经元的个数
if S==1 %如果为阶跃信号,那么输入层到隐层权值如下所示,这里指定连接权值的初始值。
wi=[-0.6394 -0.2696 -0.3756 -0.7023;
-0.8603 -0.2013 -0.5024 -0.2596;
-1.0749 0.5543 -1.6820 -0.5437;
-0.3625 -0.0724 -0.6463 -0.2859;
0.1425 0.0279 -0.5406 -0.7660];
%wi=0.50*rands(H,IN); % 输入层到隐层权值随机取值矩阵(5χ4)
wi_1=wi;wi_2=wi;wi_3=wi;
% 隐层到输出层权值的取值矩阵(3χ5)
wo=[0.7576 0.2616 0.5820 -0.1416 -0.1325;
-0.1146 0.2949 0.8352 0.2205 0.4508;
0.7201 0.4566 0.7672 0.4962 0.3632];
%wo=0.50*rands(Out,H);
wo_1=wo;
BP神经网络优化PID控制器的参数的源代码
最新推荐文章于 2024-09-10 09:00:40 发布
本文通过MATLAB代码展示了如何使用BP神经网络优化PID控制器参数,以适应非线性系统的期望输出。仿真结果显示,控制效果良好,期望值与原始值接近重合,偏差和控制量U变化得当。
摘要由CSDN通过智能技术生成