【无线通信】基于统计信道的低复杂度旋转和位置优化为6D可移动天线无线通信附Matlab代码
✅作者简介热爱科研的Matlab仿真开发者擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 往期回顾关注个人主页Matlab科研工作室 关注我领取海量matlab电子书和数学建模资料个人信条格物致知,完整Matlab代码获取及仿真咨询内容私信。 内容介绍基于统计信道的低复杂度旋转和位置优化是针对 6D 可移动天线无线通信系统的关键技术旨在提升通信性能的同时降低计算开销其背景原理如下6D 可移动天线技术背景传统天线空间调整维度有限难以适配信道的动态空间变化。而 6D 可移动天线6DMA允许收发端天线在三维位置与三维旋转角度上自由调整能充分利用无线信道的空间差异性可在密集城区、室内场馆、工业场景等复杂环境中通过调整位置和旋转角度避开遮挡、优化波束指向为用户提供更好的通信服务。统计信道信息SCI作用6DMA 若对所有可能的 “位置 - 旋转组合” 进行信道测量与优化计算复杂度和测量开销极高。SCI 包含信道的均值、方差等统计特性相比瞬时信道信息CSI更具稳定性可大幅减少后续优化的更新频率。通过获取 SCI能够基于较少的测量数据来表征信道特征为天线的优化提供可靠依据。低复杂度优化原理传输协议设计为平衡性能与复杂度6DMA 使能系统设计了专用传输协议包含测量、SCI 获取、优化与传输三个阶段。测量阶段选取 “小子集位置 - 旋转组合” 进行信道测量SCI 获取阶段基于测量数据估计所有可能组合的 SCI优化与传输阶段基于 SCI 优化 6DMA 的位置与旋转参数确定最优配置后进行数据传输直至信道环境显著变化再触发下一轮优化。优化策略不同于以往采用交替优化设计 6DMA 位置和旋转的方法新型优化策略采用顺序优化先确定 6DMA 的旋转角度再根据实际天线放置约束找到可行的位置以实现优化后的旋转从而显著降低传统交替优化的计算复杂度同时保证通信性能。⛳️ 运行结果 部分代码function [c_est,f_est] OMP_Est(S,B,K,T,G,scatterer_info,region_size,beamwidth)if(nargin 7)beamwidth 65;endsqrt_g_max 2.5119; % corresponding to G_max 8dBi.M S * B; % we assume that M is divisible by B.f_c 2.4 * 10^(9); % Carrier frequencylambda 3*10^8/f_c;r_local [0,lambda/4,lambda/4;0,-lambda/4,lambda/4;0,-lambda/4,-lambda/4;0,lambda/4,-lambda/4] ;N size(r_local,2);%% Generate channel of candidate positions/rotations% Generate training pairs. Size of q_m u_m: 3-by-nB (3-by-M).[q_m, u_m] gene_candidate_position_Fibonacci(region_size,M);% Channel covariance matrix.R_K zeros(B * N, M * N, K);% Generate T realizations from channels distributionfor t 1:T% Generate channels in each substage in stage I.for s 1:S% Extract positions and rotations for the i-th substageq_i q_m(:,s:S:end);u_i u_m(:,s:S:end);% Generate channel. Size of H_i(:,:,i): BN-by-K.H_i gene_channel(q_i,u_i,K,r_local,lambda,scatterer_info,beamwidth);for k 1:KR_K(:,B*N*(s-1)1 : B*N*s,k) R_K(:,B*N*(s-1)1 : B*N*s,k) H_i(:,k) * H_i(:,k);endendendR_K R_K/T;%% Generate (discrete) candidate DoAs for grid searching[f_grid, ~] gene_candidate_position_Fibonacci(region_size,G);%% OMP AlgorithmAAA zeros(S * B*N*B*N,G);A_est zeros(B*N,G);sqrt_G_est zeros(B*N,G);for s 1:S% Extract positions and rotations for the i-th substageq_i q_m(:,s:S:end);u_i u_m(:,s:S:end);for p 1:Gfor b 1:BR_b get_rotation_matrix(u_i(:,b));r_b get_global_antenna_location(r_local,R_b,q_i(:,b));A_est(N*(b-1)1:b*N,p) exp(-1i*2*pi/lambda*(r_b. * f_grid(:,p)));f_k_p_tilt R_b * (-f_grid(:,p));theta_prime acos(f_k_p_tilt(3));phi_prime acos(f_k_p_tilt(1)/(sqrt(f_k_p_tilt(1)^2f_k_p_tilt(2)^2)));% Note that theta/phi are in radians, while beamwidth is expressed in degrees.a_H_E -12 * ((phi_prime * (180/beamwidth/pi) ) ^ 2 ((theta_prime - pi/2 ) * (180/beamwidth/pi)) ^ 2 );sqrt_G_est(N*(b-1)1:N * b,p) (sqrt_g_max * sqrt(10^((a_H_E)/10)));endendAA A_est.* (sqrt_G_est);for p 1:GAAA((s-1) * B*N*B*N 1 : s * B*N*B*N,p) reshape(AA(:,p) * AA(:,p),[],1);endend% Separate real and imaginary partsA_real real(AAA(1:S*B*N*B*N,:));A_imag imag(AAA(1:S*B*N*B*N,:));% Combine real and imaginary parts into a real-valued systemA_combined [A_real; A_imag];for k1:Kb_real real(reshape(R_K(:,1 : B*N*S,k),[],1));b_imag imag(reshape(R_K(:,1 : B*N*S,k),[],1));b_combined [b_real; b_imag];v_K_sparse OMP(b_combined,A_combined,6);idx find(v_K_sparse0);f_est{k} zeros(3,length(idx));c_est{k} zeros(length(idx),1);for p 1:length(idx)f_est{k}(:,p) f_grid(:,idx(p));c_est{k}(p) v_K_sparse(idx(p));endendend 参考文献往期回顾扫扫下方二维码- END -
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2456828.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!