一个用遗传算法优化PID的小案例

最近在做优化小案例,学了一点点,一个遗传算法优化pid的小列子,上传给大家参考。这个有许多需要改进的地方,可自行修改。
下面为遗传算法优化代码,相关模型和代码已放在文件下载地址
欢迎下载讨论。
`% 测试函数图像
% 改进的自适应遗传算法:
% 参考文献:[7] M. Srinivas and L. M. Patnaik, “Adaptive probabilities of crossover and mutation in genetic algorithms,”
% in IEEE Transactions on Systems, Man, and Cybernetics, vol. 24, no. 4, pp. 656-667, April 1994.
% doi: 10.1109/21.286385
clc;
clear all;
mode = ‘PID’;
%%
%%
clc;
clearvars -except mode;

r = 0.2;
b = 3;
NP=30;
% Pc=0.65; % 将Pc,Pm参数改进为自适应参数
% Pm=0.20;
G=100; % 记得改
D=3; % 变量个数

k1 = 1;
k3 = 1;

k2 = 0.5;
k4 = 0.5;

KP_min=-500;
KP_max=500;
KI_min=-500;
KI_max=500;
KD_min=-500;
KD_max=500;
optimization_trace = []; % 三维数组, 行,列,叶
for count_1=1:NP % 产生初始解
temp1 = KP_min+rand()(KP_max-KP_min);
temp2 = KI_min+rand()
(KI_max-KI_min);
temp3 = KD_min+rand()*(KD_max-KD_min);
x(count_1,:) = [temp1,temp2,temp3];
end
% x=[3,8,6;4,5,7;2,1,4;5,2,1];
X_init=x;
save_pic_cnt = 1;
A = figure(3);
%%<

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

freesouls small geng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值