1、最近有大量小伙伴在问关于通信领域里面CVX的代码编写问题因此计划新开系列文章讲解无线通信优化问题中关于MATLAB CVX工具的使用。2、计划前期先写经典的简单通信问题的CVX求解以打实基础后期再针对目前热门的通信方向如RISNOMAUAVISAC等方向的复杂非凸问题的近似迭代后的CVX求解。3、本文为第【四】期讲解MU-MISO下行功率分配问题的SDR高斯随机化/秩一近似。博主往期所写热门文章文章目录1 引言2. 系统模型与问题表述2.1 信号模型2.2 最大最小公平性优化问题2.2 半定松弛SDR2.3 秩一近似2.4 高斯随机化3 CVX代码4 总结1 引言在多天线通信系统中物理层多播multicast是一类重要的传输模式其中基站向多个用户同时发送相同的公共数据流如视频会议、软件更新或系统信息广播。与多用户独立数据流不同多播传输不需要区分用户数据因此不存在多用户干扰设计目标转变为如何设计单个波束成形向量使得所有用户都能获得足够高的接收信号质量。最大最小公平性max-min fairness准则在此场景下自然适用在总发射功率受限的条件下最大化所有用户中最小的接收功率从而保证所有用户的基本服务质量。该问题在数学上可表述为以波束成形向量为变量的非凸二次优化问题其难点在于秩一约束的存在。半定松弛SDR是求解此类非凸二次问题的经典方法通过将秩一约束松弛为半正定约束将问题转化为凸半定规划SDP从而可高效求得全局最优上界。然而松弛解通常不满足秩一条件无法直接实现。为此需要采用后处理技术如秩一近似或高斯随机化从松弛解中构造可行的波束成形向量。本文针对多播场景下的最大最小公平性问题基于半定松弛框架结合秩一近似和高斯随机化两种构造方法通过蒙特卡洛仿真评估它们的性能差异并验证SDR松弛的紧性。2. 系统模型与问题表述2.1 信号模型2.2 最大最小公平性优化问题2.2 半定松弛SDR2.3 秩一近似2.4 高斯随机化3 CVX代码代码完全按照上述理论流程进行构建。clear;clc;close all;%系统参数K4;%用户数 M4;%基站天线数 num_realizations50;%每个功率值下的信道样本数可调 L200;%高斯随机化采样次数 P_total_vec0.5:0.5:3.5;%扫描的总发射功率范围%预分配存储 avg_sdpzeros(size(P_total_vec));avg_rank1zeros(size(P_total_vec));avg_randomzeros(size(P_total_vec));fprintf(开始扫描不同发射功率下的最大最小公平性...\n);forp_idx1:length(P_total_vec)P_totalP_total_vec(p_idx);sum_sdp0;sum_rank10;sum_random0;valid_count0;forz1:num_realizations%-----生成信道K个用户每个用户信道向量 M×1-----Hi_srandn(M,M);Hzeros(M,M,K);fori1:K h_iHi_s(:,i);H(:,:,i)h_i*h_i;end%1.SDP 松弛上界cvx_begin quiet variableX(M,M)complex variable tmaximize(t)subject tofori1:Kreal(trace(X*H(:,:,i)))t endtrace(X)P_total Xhermitian_semidefinite(M)cvx_endif~strcmp(cvx_status,Solved)continue;%若不可行则跳过该信道 end sdp_valt;%2.秩一近似可行解归一化功率[V,D]eigs(X,1);w_rank1V;%单位范数%缩放以满足总功率 P_total若需要这里保持功率为 P_total%因为 V 是单位向量所以功率为1而我们需要总功率为 P_total但 SDP 解 X 的总功率为 P_total%其最大特征值对应的向量范数平方为最大特征值 lambda可能小于 P_total我们直接采用 wsqrt(P_total)*V 使功率为 P_total%但这样做可能不满足原始约束更合理的做法是从 X 中提取主成分并缩放。%这里我们直接采用 wsqrt(P_total)*V即总功率恰好为 P_total。 w_rank1sqrt(P_total)*V;t_rank1inf;fori1:K p_ireal(w_rank1*H(:,:,i)*w_rank1);t_rank1min(t_rank1,p_i);end%3.高斯随机化可行解归一化功率[Vx,Dx]eig(0.5*(XX));Dxmax(real(Dx),0);X_sqrtVx*sqrt(Dx)*Vx;best_t-inf;forl1:L z(randn(M,1)1i*randn(M,1))/sqrt(2);wX_sqrt*z;%归一化到功率 P_total ww/norm(w)*sqrt(P_total);t_mininf;fori1:K p_ireal(w*H(:,:,i)*w);t_minmin(t_min,p_i);endift_minbest_tbest_tt_min;end end%累加 sum_sdpsum_sdpsdp_val;sum_rank1sum_rank1t_rank1;sum_randomsum_randombest_t;valid_countvalid_count1;endifvalid_count0avg_sdp(p_idx)sum_sdp/valid_count;avg_rank1(p_idx)sum_rank1/valid_count;avg_random(p_idx)sum_random/valid_count;fprintf(P_total%.2f:有效信道数%d,SDP%.4f,秩一%.4f,随机%.4f\n,...P_total,valid_count,avg_sdp(p_idx),avg_rank1(p_idx),avg_random(p_idx));elseavg_sdp(p_idx)NaN;avg_rank1(p_idx)NaN;avg_random(p_idx)NaN;fprintf(P_total %.2f: 无可行信道\n,P_total);end end%绘图figure;plot(P_total_vec,avg_sdp,b-o,LineWidth,2,DisplayName,SDP 上界);hold on;plot(P_total_vec,avg_rank1,r--s,LineWidth,2,DisplayName,秩一近似);plot(P_total_vec,avg_random,g-.d,LineWidth,2,DisplayName,高斯随机化);hold off;xlabel(总发射功率 P_{total});ylabel(平均最小接收功率 (t));title(sprintf(最大最小公平性M%d, K%d, 随机化次数 L%d,M,K,L));legend(Location,northwest);grid on;可以看到在所有功率点上SDP上界始终高于随机化下界后者又高于秩一近似下界满足前面的理论推导说明了算法的正确性高斯随机化下界与SDP上界的相对间隙极小表明在当前信道模型下SDP松弛几乎是紧的即存在近似秩一的最优解。因此SDP上界可作为系统性能的有效参考。秩一近似的性能损失秩一近似性能明显低于随机化尤其在中等至高功率区域。这是因为主特征向量仅捕获了最大方差方向但多用户公平性要求波束方向需要在各用户信道间折中单一主方向难以平衡所有用户。高斯随机化通过多次采样能够探索到更优的方向组合。算法复杂度秩一近似计算最简仅需一次特征分解高斯随机化需 L次采样与评估复杂度较高但性能提升明显SDP求解为最重但作为离线基准可接受。在实际系统中可根据实时性需求选择。4 总结本文针对多天线多播场景下的最大最小公平性波束成形问题系统介绍了基于半定松弛SDR的求解框架。通过将原非凸问题松弛为凸半定规划可获得性能上界。针对松弛解不满足秩一约束的问题本文对比了秩一近似与高斯随机化两种后处理构造方法。仿真结果表明高斯随机化能有效逼近SDP上界性能显著优于简单的秩一近似验证了SDR在该问题上的紧性以及高斯随机化方法的有效性。这为实际系统中平衡性能与复杂度提供了参考。上述两种恢复原始问题的秩一解在通信论文里面均有使用本文详述其设计原理感兴趣的话后续可关注下论文。关注博客vx公众号获取往期通信问题仿真代码
第【57期】-- 通信问题的cvx教程之基础篇【四】-- MU-MISO下行功率分配问题SDR求解+高斯随机化/秩一近似
1、最近有大量小伙伴在问关于通信领域里面CVX的代码编写问题因此计划新开系列文章讲解无线通信优化问题中关于MATLAB CVX工具的使用。2、计划前期先写经典的简单通信问题的CVX求解以打实基础后期再针对目前热门的通信方向如RISNOMAUAVISAC等方向的复杂非凸问题的近似迭代后的CVX求解。3、本文为第【四】期讲解MU-MISO下行功率分配问题的SDR高斯随机化/秩一近似。博主往期所写热门文章文章目录1 引言2. 系统模型与问题表述2.1 信号模型2.2 最大最小公平性优化问题2.2 半定松弛SDR2.3 秩一近似2.4 高斯随机化3 CVX代码4 总结1 引言在多天线通信系统中物理层多播multicast是一类重要的传输模式其中基站向多个用户同时发送相同的公共数据流如视频会议、软件更新或系统信息广播。与多用户独立数据流不同多播传输不需要区分用户数据因此不存在多用户干扰设计目标转变为如何设计单个波束成形向量使得所有用户都能获得足够高的接收信号质量。最大最小公平性max-min fairness准则在此场景下自然适用在总发射功率受限的条件下最大化所有用户中最小的接收功率从而保证所有用户的基本服务质量。该问题在数学上可表述为以波束成形向量为变量的非凸二次优化问题其难点在于秩一约束的存在。半定松弛SDR是求解此类非凸二次问题的经典方法通过将秩一约束松弛为半正定约束将问题转化为凸半定规划SDP从而可高效求得全局最优上界。然而松弛解通常不满足秩一条件无法直接实现。为此需要采用后处理技术如秩一近似或高斯随机化从松弛解中构造可行的波束成形向量。本文针对多播场景下的最大最小公平性问题基于半定松弛框架结合秩一近似和高斯随机化两种构造方法通过蒙特卡洛仿真评估它们的性能差异并验证SDR松弛的紧性。2. 系统模型与问题表述2.1 信号模型2.2 最大最小公平性优化问题2.2 半定松弛SDR2.3 秩一近似2.4 高斯随机化3 CVX代码代码完全按照上述理论流程进行构建。clear;clc;close all;%系统参数K4;%用户数 M4;%基站天线数 num_realizations50;%每个功率值下的信道样本数可调 L200;%高斯随机化采样次数 P_total_vec0.5:0.5:3.5;%扫描的总发射功率范围%预分配存储 avg_sdpzeros(size(P_total_vec));avg_rank1zeros(size(P_total_vec));avg_randomzeros(size(P_total_vec));fprintf(开始扫描不同发射功率下的最大最小公平性...\n);forp_idx1:length(P_total_vec)P_totalP_total_vec(p_idx);sum_sdp0;sum_rank10;sum_random0;valid_count0;forz1:num_realizations%-----生成信道K个用户每个用户信道向量 M×1-----Hi_srandn(M,M);Hzeros(M,M,K);fori1:K h_iHi_s(:,i);H(:,:,i)h_i*h_i;end%1.SDP 松弛上界cvx_begin quiet variableX(M,M)complex variable tmaximize(t)subject tofori1:Kreal(trace(X*H(:,:,i)))t endtrace(X)P_total Xhermitian_semidefinite(M)cvx_endif~strcmp(cvx_status,Solved)continue;%若不可行则跳过该信道 end sdp_valt;%2.秩一近似可行解归一化功率[V,D]eigs(X,1);w_rank1V;%单位范数%缩放以满足总功率 P_total若需要这里保持功率为 P_total%因为 V 是单位向量所以功率为1而我们需要总功率为 P_total但 SDP 解 X 的总功率为 P_total%其最大特征值对应的向量范数平方为最大特征值 lambda可能小于 P_total我们直接采用 wsqrt(P_total)*V 使功率为 P_total%但这样做可能不满足原始约束更合理的做法是从 X 中提取主成分并缩放。%这里我们直接采用 wsqrt(P_total)*V即总功率恰好为 P_total。 w_rank1sqrt(P_total)*V;t_rank1inf;fori1:K p_ireal(w_rank1*H(:,:,i)*w_rank1);t_rank1min(t_rank1,p_i);end%3.高斯随机化可行解归一化功率[Vx,Dx]eig(0.5*(XX));Dxmax(real(Dx),0);X_sqrtVx*sqrt(Dx)*Vx;best_t-inf;forl1:L z(randn(M,1)1i*randn(M,1))/sqrt(2);wX_sqrt*z;%归一化到功率 P_total ww/norm(w)*sqrt(P_total);t_mininf;fori1:K p_ireal(w*H(:,:,i)*w);t_minmin(t_min,p_i);endift_minbest_tbest_tt_min;end end%累加 sum_sdpsum_sdpsdp_val;sum_rank1sum_rank1t_rank1;sum_randomsum_randombest_t;valid_countvalid_count1;endifvalid_count0avg_sdp(p_idx)sum_sdp/valid_count;avg_rank1(p_idx)sum_rank1/valid_count;avg_random(p_idx)sum_random/valid_count;fprintf(P_total%.2f:有效信道数%d,SDP%.4f,秩一%.4f,随机%.4f\n,...P_total,valid_count,avg_sdp(p_idx),avg_rank1(p_idx),avg_random(p_idx));elseavg_sdp(p_idx)NaN;avg_rank1(p_idx)NaN;avg_random(p_idx)NaN;fprintf(P_total %.2f: 无可行信道\n,P_total);end end%绘图figure;plot(P_total_vec,avg_sdp,b-o,LineWidth,2,DisplayName,SDP 上界);hold on;plot(P_total_vec,avg_rank1,r--s,LineWidth,2,DisplayName,秩一近似);plot(P_total_vec,avg_random,g-.d,LineWidth,2,DisplayName,高斯随机化);hold off;xlabel(总发射功率 P_{total});ylabel(平均最小接收功率 (t));title(sprintf(最大最小公平性M%d, K%d, 随机化次数 L%d,M,K,L));legend(Location,northwest);grid on;可以看到在所有功率点上SDP上界始终高于随机化下界后者又高于秩一近似下界满足前面的理论推导说明了算法的正确性高斯随机化下界与SDP上界的相对间隙极小表明在当前信道模型下SDP松弛几乎是紧的即存在近似秩一的最优解。因此SDP上界可作为系统性能的有效参考。秩一近似的性能损失秩一近似性能明显低于随机化尤其在中等至高功率区域。这是因为主特征向量仅捕获了最大方差方向但多用户公平性要求波束方向需要在各用户信道间折中单一主方向难以平衡所有用户。高斯随机化通过多次采样能够探索到更优的方向组合。算法复杂度秩一近似计算最简仅需一次特征分解高斯随机化需 L次采样与评估复杂度较高但性能提升明显SDP求解为最重但作为离线基准可接受。在实际系统中可根据实时性需求选择。4 总结本文针对多天线多播场景下的最大最小公平性波束成形问题系统介绍了基于半定松弛SDR的求解框架。通过将原非凸问题松弛为凸半定规划可获得性能上界。针对松弛解不满足秩一约束的问题本文对比了秩一近似与高斯随机化两种后处理构造方法。仿真结果表明高斯随机化能有效逼近SDP上界性能显著优于简单的秩一近似验证了SDR在该问题上的紧性以及高斯随机化方法的有效性。这为实际系统中平衡性能与复杂度提供了参考。上述两种恢复原始问题的秩一解在通信论文里面均有使用本文详述其设计原理感兴趣的话后续可关注下论文。关注博客vx公众号获取往期通信问题仿真代码