您现在的位置:首页 >> 智能优化 >> 内容

基于免疫算法的认知无线电资源分配优化算法的matlab仿真

时间:2022/12/11 21:06:29 点击:

  核心提示:a108包含程序操作录像+15000字word版论文...

1.完整项目描述和程序获取

>面包多安全交易平台:https://mbd.pub/o/bread/Y5mXlplt

>如果链接失效,可以直接打开本站店铺搜索相关店铺:

点击店铺

>如果链接失效,程序调试报错或者项目合作可以加微信或者QQ联系。

2.部分仿真图预览





3.算法概述

        认知无线电(CR)的概念来自Joseph Mitolo博士1999年的开创性工作。它自适应地调整内部通信机制,通过学习,了解等实时变化特定的无线电操作参数(功率,载波调制和编码等),适应外部无线电环境,并独立空闲频谱它可以被搜索和使用。这有助于用户选择用于无线传输的最佳和最合适的服务,甚至允许基于现有或未来的无线电资源来延迟甚至主动地开始传输。

4.部分源码

for m=1:M

    pl_cu_pu(1,m)=((loc_cu(m,1)-loc_pu(1,1))^2+(loc_cu(m,2)-loc_pu(1,2))^2)^0.5;

end

pl_cu_pu=10^(0.1*randn*Sigma)./((pl_cu_pu/3).^Eta);  %产生主用户和认知用户的路径损耗

pl_cu_cbs=10^(0.1*randn*Sigma)./((pl_cu_cbs/3).^Eta);  %产生用户和认知基站的路径损耗

for m=1:M

    for i=1:M

        pl_cu_cu(m,i)=((loc_cu(m,1)-loc_cu(i,1))^2+(loc_cu(m,2)-loc_cu(i,2))^2)^0.5;

    end

end

pl_cu_cu=10^(0.1*randn*Sigma)./((pl_cu_cu/3).^Eta);   %产生认知用户和认知用户之间的路径损耗

%对主用户干扰

to_pu_g=raylrnd(1,[M,N]);   %对主用户的信道干扰增益(第m行是第m个小f中各个子载波的增益)

lamda=zeros(1,N);  %对主用户距离干扰增益

Distance=zeros(1,N);   %第n个子载波和主用户的频带距离

for n=1:N

    Distance(1,n)=((N-(2*n-1)/2)*Delta_f+W/2);

end

F=@(f)((sin(pi*Ts*f)./(pi*Ts*f)).^2);      %积分函数

for n=1:N      %Lamda计算

    lamda(1,n)=Ts*quad(F,(Distance(1,n)-W/2),(Distance(1,n)+W/2));

end

for m=1:M

    for n=1:N

        to_pu_g(m,n)=to_pu_g(m,n)*lamda(1,n);   %对主用户的总的干扰增益

    end

end

for m=1:M

    to_pu_g(m,:)=to_pu_g(m,:)*pl_cu_pu(1,m);

end

%同频相互干扰

co_ch_g=zeros(M,M,N);  %同频干扰矩阵,第n页是第n个子载波的同频干扰

for n=1:N

    for i=1:M

        for j=i:M              %若要不同的同频干扰,则这里改为1:M

            co_ch_g(i,j,n)=raylrnd(1);

            co_ch_g(j,i,n)=co_ch_g(i,j,n);

        end

    end

end

for n=1:N

    for m=1:M

        co_ch_g(m,m,n)=0;

    end

end

for n=1:N

    co_ch_g(:,:,n)=(co_ch_g(:,:,n).^2).*pl_cu_cu;

end

for n=1:N

    for i=1:M

        co_ch_g(i,i,n)=0;

    end

end

%—有关各个子载波的信道增益——

ch_g=raylrnd(1,[M,N]);   %每个子载波的信道增益

for m=1:M

    ch_g(m,:)=(ch_g(m,:).^2)*pl_cu_cbs(1,m);

end

%===—有关运算结果显示=====二=

rate_gen1=zeros(1,genMax);   %每代的最优速率

rate_gen2=zeros(1,genMax);      %每代的最优速率

%rate_gen3=zeros(1,generaMax);   %每代的最优小速率

ratio_gen1=zeros(1,genMax);     %每代的最优速率功率比

ratio_gen2=zeros(1,genMax);     %每代的最优速率功率比

%ratio_gen3=zeros(1,genMax);     %每代的最优速率功率比

Pth=10;

for Ith=[0.001 0.005 0.01]

    for qq=1:10

        %=========程序初始化========

        temp_antibody(:)=Pth/N;       %初始抗体功率是平均分配

        temp_memorycell(:)=Pth/N;      %初始记忆细胞功率也是平均分配

        antibody(:)=temp_antibody(:);      %抗体变量装入初始抗体

        memorycell(:)=temp_memorycell(:);      %记忆细胞变量装入记忆细胞

        %=========主函数=========

        for gen=1:genMax

            gen

            %记忆细胞添加            

            antibody(:,:,(K-L+1):K)=memorycell;

            %antibody_falg((K-L+1):K)=1;                       %记录成型抗体

            %——抗体合格检测

            exceed_Ith=0;   %超过干扰门限的量

            exceed_Pth=0;      %超过功率门限的量

            decr_var_I=zeros(M,N);      %有关干扰的归一化的减少量

            decr_val_P=zeros(M,N);     %有关功率的归一化的减少量

            ratio_P=zeros(1,3);      %计算当前功率与公平性的比值

            standerd_site=0;      %作为基准的用户

            for k=1:K

                decr_val_P=antibody(:,:,k)/sum(sum(antibody(:,:,k)));   %根据现有功率计算归一化功率减少量

                if(sum(sum(antibody(:,:,k)))-Pth>eps)

                    exceed_Pth=sum(sum(antibody(:,:,k)))-Pth;   %计算超出多少

                    antibody(:,:,k)=antibody(:,:,k)-exceed_Pth*decr_val_P(:,:);

                end

                itfere_pu(:,:,k)=to_pu_g.*antibody(:,:,k);

                decr_val_I=itfere_pu(:,:,k)/sum(sum(itfere_pu(:,:,k)));      %根据现有干扰计算归一化功率减少量

                if(sum(sum(itfere_pu(:,:,k)))-Ith>eps)

                    exceed_Ith=sum(sum(itfere_pu(:,:,k)))-Ith;         %计算超出多少

                    antibody(:,:,k)=antibody(:,:,k)-(exceed_Ith*decr_val_I)./(to_pu_g);

                end

                itfere_pu(:,:,k)=to_pu_g.*antibody(:,:,k);      %更新对主用户的干扰

            end

end

A108

作者:我爱C编程 来源:我爱C编程
本站最新成功开发工程项目案例
相关评论
发表我的评论
  • 大名:
  • 内容:
本类固顶
  • 没有
  • FPGA/MATLAB商业/科研类项目合作(www.store718.com) © 2025 版权所有 All Rights Reserved.
  • Email:1480526168@qq.com 站长QQ: 1480526168