Matrices and Vectors

博客提及了矩阵和向量,这两者是信息技术领域中重要的数学概念,在数据处理、算法设计等方面有广泛应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

矩阵和向量
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

clc clear all % Parameters %N = 6;%玩家个数 l = 0.01;%步长 TT=25; Ts = 0:l:TT; % 时间向量 % Initialize matrices and vectors m = TT / l + 1; % 时间向量的长度 X0 = zeros(m, 114); % x:6*2=12维(1:12) σ6维(13:18) d 12维(19:30) hat_d 12维(31:42) %估计向量Y 72维(43:114) 共计114维 记录 XX=zeros(114,1);%XX=[x;sig;d;hat_d;Y]; % 代价函数参数部分 XX(1:12)=[-1;3;1;2;-5;4;0;-3;-4;6;-1;-2];%x\in R^2 XX(43:44) = XX(1:2); XX(57:58) = XX(3:4); XX(71:72) = XX(5:6); XX(85:86) = XX(7:8); XX(99:100) = XX(9:10); XX(113:114) = XX(11:12); %对自身估计为初始值 XX(19:30)=[0.5;1;0.5;0.5;2;1;1;2;1;1;4;2];%干扰d 12维 alpha = zeros(6, 1);%代价函数的alpha参数 beta = zeros(6, 1);%代价函数的beta参数 mij = zeros(6, 6); % 代价函数中的mij % 代价函数参数赋值 % for i = 1:5 % mij(i, i+1) = 1; % Define the mij matrix % end % mij(6,1)=1; for i = 1:6 alpha(i) = 1/2 * i; % Define alpha beta(i) = 2 * (-1)^i * i^2; % Define beta end gg=[2;3;2;3;-3;4;2;3;2;3;1;-2]; ggg=[3;4;2;3;5;2];%私有不等式约束的参数 epsilon=0.1;%奇异摄动参数 %六个通信图(环形图) L1=[1 -1 0 0 0 0 0 1 -1 0 0 0 0 0 1 -1 0 0 0 0 0 1 -1 0 0 0 0 0 1 -1 -1 0 0 0 0 1];%Laplace矩阵 L2=L1';%逆向 L3=[1 -1 0 0 0 0 0 1 0 -1 0 0 -1 0 1 0 0 0 0 0 0 1 -1 0 0 0 0 0 1 -1 0 0 -1 0 0 1]; L4=L3';%逆向 L5=[1 0 -1 0 0 0 -1 1 0 0 0 0 0 0 1 -1 0 0 0 0 0 1 -1 0 0 0 0 0 1 -1 0 -1 0 0 0 1]; L6=L5';%逆向 L=[L1 L2 L3 L4 L5 L6]; %为选择切换拓扑设立 %干扰部分 S=[0 2 -2 0]; M=[4 2 -2 4]; sig=ones(6,1);%自适应参数 dsig=zeros(6,1);%自适应参数的导数 dg=zeros(12,1);%不等式约束的导数 df=zeros(12,1);%f的导数 swith=1;%初始图 suiji=rand(1,1)*3;%初始随机:维持第一个图的时间0-3s % suiji=randi([1 5]);%初始随机:维持第一个图的时间 tp=suiji;%切换时刻 suijijilv=tp;%切换序列 swithjilv=1;%初始图变化记录 qi=1; for PP=0:l:TT PP X0(qi,:)=XX';%记录上一时刻的信息 %判断通信图是否切换,并在suijijilv变量中记录切换时刻,在swithjilv变量中记录切换的图是哪一个?用LL确定当前所使用通信图 if PP > tp swith=randi([1 6]);%切换图 suiji=1+rand(1,1)*(5-2);%每个图保持1-4秒 % suiji=randi([3 5]); tp=tp+suiji; suijijilv=[suijijilv;tp]; swithjilv=[swithjilv;swith]; end LL=L(:,6*swith-5:6*swith); % LL=L(:,1:6); %通信拓扑 AA=eye(6)-LL;%邻接矩阵 Az=AA'; AA_vec=Az(:);%用于计算B0 B0=diag(AA_vec);%%!!!!!!!!检查B0中无负数 %参考:X0 = zeros(m, 114); % 真实值x:6*2=12维(1:12) σ6维(13:18) d 12维(19:30) hat_d 12维(31:42) %估计向量X(y) 72维(43:114) 12+6+12+12+72 共计114维 记录 %计算代价函数的导数df 12维 for i=1:5 df(2*i-1)=2*alpha(i)*XX(2*i-1)+beta(i)+(XX(14*i+29)-XX(14*i+31));%!!!!!xi真实值,交互部分仍是估计 df(2*i)=2*alpha(i)*XX(2*i)+beta(i)+(XX(14*i+30)-XX(14*i+32));%!!!!! end df(11)=2*alpha(6)*XX(11)+beta(6)+(XX(113)-XX(103));%m61=0 df(12)=2*alpha(6)*XX(12)+beta(6)+(XX(114)-XX(104)); %处理私有不等式约束 % gg=[2;3;2;3;-3;4;2;3;2;3;1;-2]; % ggg=[3;4;2;3;5;2]; %计算σ导数 σ▽G √ 6维 dg 12维 for i=1:6 sqr=(XX(2*i-1)-gg(2*i-1))^2+(XX(2*i)-gg(2*i))^2; dsig(i)=max(0,sqrt(sqr)-ggg(i)); dg(2*i-1)=sig(i)*(XX(2*i-1)-gg(2*i-1))/sqrt(sqr); dg(2*i)=sig(i)*(XX(2*i)-gg(2*i))/sqrt(sqr); end %干扰和干扰观测器的导数dd dhat_d 12维 dd=kron(eye(6),S)*XX(19:30);%干扰d的导数 dhat_d=kron(eye(6),S)*XX(31:42)+kron(eye(6),M)*(XX(19:30)-XX(31:42));%干扰观测器的导数 dx=-df-dg+XX(19:30)-XX(31:42);%真实值x的导数 %估计Y的导数 dX 注意矩阵的维数 I2=eye(2); H=kron(LL,eye(6))+B0; B=kron(B0,eye(2)); dX=-1/epsilon*(kron(H,I2)*XX(43:114)-B*kron(ones(6,1),XX(1:12))); XX=XX+l*[dx;dsig;dd;dhat_d;dX]; qi=qi+1; end 该代码用了什么数值积分方法
07-21
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值