📄 opti3.m
字号:
function [y]=Opti3(N,S)
P=[ 0.0900 0.3600 0.0900 0.3600 0.0100 0.0400 0.0100 0.0400;
0.3150 0.1350 0.3150 0.1350 0.0350 0.0150 0.0350 0.0150;
0.1080 0.4320 0.0720 0.2880 0.0120 0.0480 0.0080 0.0320;
0.3780 0.1620 0.2520 0.1080 0.0420 0.0180 0.0280 0.0120;
0.0500 0.2000 0.0500 0.2000 0.0500 0.2000 0.0500 0.2000;
0.1750 0.0750 0.1750 0.0750 0.1750 0.0750 0.1750 0.0750;
0.0600 0.2400 0.0400 0.1600 0.0600 0.2400 0.0400 0.1600;
0.2100 0.0900 0.1400 0.0600 0.2100 0.0900 0.1400 0.0600;
];
a=[0.9 0.1;0.5 0.5;0.2 0.8];
b=[0.5 0.5;0.6 0.4;0.7 0.3];
if N==1
h(1,1:3,1:8)=0;
h(2,1,1)=0.1;
h(2,1,2)=0.1;
h(2,1,3)=0.1;
h(2,1,4)=0.1;
h(2,1,5)=0.5;
h(2,1,6)=0.5;
h(2,1,7)=0.5;
h(2,1,8)=0.5;
h(2,2,1)=0.5;
h(2,2,2)=0.5;
h(2,2,3)=0.4;
h(2,2,4)=0.4;
h(2,2,5)=0.5;
h(2,2,6)=0.5;
h(2,2,7)=0.4;
h(2,2,8)=0.4;
h(2,3,1)=0.8;
h(2,3,2)=0.3;
h(2,3,3)=0.8;
h(2,3,4)=0.3;
h(2,3,5)=0.8;
h(2,3,6)=0.3;
h(2,3,7)=0.8;
h(2,3,8)=0.3;
for q=1:3
flag(q)=0;
for j=1:8
flag(q)=flag(q)+S(j)*h(2,q,j);
end
end
w=[0 0 0;0.9 1 0.8];
flagy(1)=flag(1)*w(2,1);
flagy(2)=flag(2)*w(2,2);
flagy(3)=flag(3)*w(2,3);
y=max(flagy);
else
Prf=[1 1 1 1 0 0 0 0 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 0,0,0,0,1,1,1,1,0,0,1,1,0,0,1,1,0,1,0,1,0,1,0,1];
%Pr的第1个参数是是否判断成功:1是不成功,2是成功;第2个参数是是动作:1是信道1,2是信道2,3是信道3;第3个参数是状态j
for n=1:2
for q=1:3
for j=1:8
Pr(n,q,j)=Prf(24*(n-1)+8*(q-1)+j);
end
end
end
for n=1:2%是否成功
for q=1:3%动作
for j=1:8
S1(n,q,j)=0;
for i=1:8
S1(n,q,j)=S1(n,q,j)+S(i)*P(i,j)*Pr(n,q,j);
end
end
end
end
for n=1:2
for q=1:3
b(n,q)=0;
for i=1:8
for j=1:8
b(n,q)=b(n,q)+S(i)*P(i,j)*Pr(n,q,j);
end
end
end
end
for n=1:2
for q=1:3
for j=1:8
S1(n,q,j)=S1(n,q,j)/b(n,q);
end
end
end
w=[0 0 0;0.9 1 0.8];
for q=1:3
flag(q)=0;
for i=1:8
for j=1:8
for n=1:2
flag(q)=flag(q)+S(i)*P(i,j)*Pr(n,q,j)*(w(n,q)+Opti3(N-1,S1(n,q,:)));
end
end
end
end
y=max(flag);
end
%稳态分布 S=[0.2121 0.2424 0.1768 0.2020 0.0424 0.0485 0.0354 0.0404];
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -