Difference of Convex Relaxation (DC)

news2024/10/2 6:45:01

问题背景

minimize ⁡ m ∥ m ∥ 2 s u b j e c t   t o ∥ m H h k e ∥ 2 ≥ 1 , ∀ k . \begin{aligned}&\underset{m}{\operatorname*{minimize}}\quad\|\boldsymbol{m}\|^2\\&\mathrm{subject~to}\quad\|\boldsymbol{m}^\mathsf{H}\boldsymbol{h}_k^e\|^2\geq1,\forall k.\end{aligned} mminimizem2subject tomHhke21,k.

P 1 : minimize ⁡ M T r ( M ) s u b j e c t   t o T r ( M H k ) ≥ 1 , ∀ k , M ⪰ 0 , r a n k ( M ) = 1 , \begin{aligned}\mathscr{P}_{1}:&\underset{M}{\operatorname*{minimize}}\quad\mathrm{Tr}(M)\\&\mathrm{subject~to}\quad\mathrm{Tr}(\boldsymbol{M}\boldsymbol{H}_{k})\geq1,\forall k,\\&\boldsymbol{M}\succeq0,\mathrm{rank}(\boldsymbol{M})=1,\end{aligned} P1:MminimizeTr(M)subject toTr(MHk)1,k,M0,rank(M)=1,

find v subject to v ~ H R k v ~ + ∣ c k ∣ 2 ≥ 1 , ∀ k , ∣ v n ∣ 2 = 1 , ∀ v = 1 , ⋯   , N , \begin{aligned}\text{find}&v\\\text{subject to}&\tilde{v}^\mathsf{H}\boldsymbol{R}_k\tilde{\boldsymbol{v}}+|c_k|^2\geq1,\forall k,\\&|v_n|^2=1,\forall v=1,\cdots,N,\end{aligned} findsubject tovv~HRkv~+ck21,k,vn2=1,v=1,,N,

P 2 : f i n d V s u b j e c t   t o T r ( R k V ) + ∣ c k ∣ 2 ≥ 1 , ∀ k , V n , n = 1 , ∀ n = 1 , ⋯   , N , V ⪰ 0 , r a n k ( V ) = 1. \begin{aligned}\mathscr{P}_{2}:\quad\mathrm{find}\quad\boldsymbol{V}\\\mathrm{subject~to}&\mathrm{Tr}(\boldsymbol{R}_{k}\boldsymbol{V})+|c_{k}|^{2}\geq1,\forall k,\\&\boldsymbol{V}_{n,n}=1,\forall n=1,\cdots,N,\\&\boldsymbol{V}\succeq0,\quad\mathrm{rank}(\boldsymbol{V})=1.\end{aligned} P2:findVsubject toTr(RkV)+ck21,k,Vn,n=1,n=1,,N,V0,rank(V)=1.

为了进一步解决问题P1和问题P2中的非凸性,一种流行的方法是通过SDR技术简单地丢弃非凸的秩一约束[17]。由此产生的SDP问题可以通过现有的凸优化解算器(例如CVX [19])来有效地求解。如果SDP问题的最优解是秩一的,则可以通过秩一分解来恢复原始问题的最优解。另一方面,如果SDP问题的最优解不是秩1,则需要应用高斯随机化[17]等附加步骤来提取原始问题的次优解。然而,观察到对于高维优化问题(例如,天线数量N增加),则对于SDR方法返回秩一解的概率变低,这产生显著的性能恶化[7]、[18]。为了克服SDR方法的局限性,我们在下面的章节中提出了一种新的DC框架来解决问题P1和问题P2。

所针对的一般问题

一阶约束问题的DC框架

为了便于介绍,我们首先考虑具有秩1约束的一般低秩矩阵优化问题的DC算法,如下所示,

minimize ⁡ X ∈ C T r ( A 0 X ) s u b j e c t   t o T r ( A k X ) ≥ d k , ∀ k , X ⪰ 0 , r a n k ( X ) = 1 , (18) \begin{aligned}&\underset{\boldsymbol{X}\in\mathcal{C}}{\operatorname*{minimize}}\quad\mathrm{Tr}(\boldsymbol{A}_{0}\boldsymbol{X})\\&\mathrm{subject~to}\quad\mathrm{Tr}(\boldsymbol{A}_{k}\boldsymbol{X})\geq d_{k},\forall k,\\&\boldsymbol{X}\succeq0,\mathrm{rank}(\boldsymbol{X})=1, \tag{18} \end{aligned} XCminimizeTr(A0X)subject toTr(AkX)dk,k,X0,rank(X)=1,(18)

其中约束集 C \mathcal{C} C是凸的。关于rank-one约束的一个关键观察是,它可以等效地写为DC函数约束,这在以下Proposition中正式陈述。

Proposition 1. For positive semidefinite (PSD) matrix X ∈ C N × N X \in \mathbb{C}^{N\times N} XCN×N and T r ( X ) ≥ 1 , we   have \mathrm{Tr}( \boldsymbol{X}) \geq 1, \textit{we have} Tr(X)1,we have
rank ⁡ ( X ) = 1 ⟺ Tr ⁡ ( X ) − ∥ X ∥ 2 = 0 , (19) \operatorname{rank}(\boldsymbol{X})=1\Longleftrightarrow\operatorname{Tr}(\boldsymbol{X})-\|\boldsymbol{X}\|_2=0, \tag{19} rank(X)=1Tr(X)X2=0,(19)

w h e r e   trace   norm   Tr ⁡ ( X ) = ∑ i = 1 N σ i ( X )   and   spectral   norm ∥ X ∥ 2 = σ 1 ( X )   with   σ i ( X )   denoting   the   i-th   largest   singular value of matrix X. \begin{aligned}&where\textit{ trace norm }\operatorname{Tr}(\boldsymbol{X})=\sum_{i=1}^N\sigma_i(\boldsymbol{X})\textit{ and spectral norm}\\&\|\boldsymbol{X}\|_2=\sigma_1(\boldsymbol{X})\textit{ with }\sigma_i(\boldsymbol{X})\textit{ denoting the i-th largest singular}\\&\text{value of matrix X.}\end{aligned} where trace norm Tr(X)=i=1Nσi(X) and spectral normX2=σ1(X) with σi(X) denoting the i-th largest singularvalue of matrix X.

为了增强问题(18)的低秩解,我们提出将(19)中的DC函数作为惩罚分量添加到目标函数中,而不是经由SDR方法移除非凸秩一约束,从而得到

minimize ⁡ X ∈ C T r ( A 0 X ) + ρ ⋅ ( T r ( X ) − ∥ X ∥ 2 ) s u b j e c t   t o T r ( A k X ) ≥ d k , ∀ k , X ⪰ 0 , (20) \begin{aligned}&\underset{X\in\mathcal{C}}{\operatorname*{minimize}}\quad\mathrm{Tr}(\boldsymbol{A}_0\boldsymbol{X})+\rho\cdot(\mathrm{Tr}(\boldsymbol{X})-\|\boldsymbol{X}\|_2)\\&\mathrm{subject~to}\quad\mathrm{Tr}(\boldsymbol{A}_k\boldsymbol{X})\geq d_k,\forall k,\\&\boldsymbol{X}\succeq0, \tag{20} \end{aligned} XCminimizeTr(A0X)+ρ(Tr(X)X2)subject toTr(AkX)dk,k,X0,(20)

where ρ > 0 \rho>0 ρ>0 is the penalty parameter. Note that we are able to obtain an exact rank-one solution X ∗ X^* X when the nonnegative component (Tr ( X ∗ ) − ∥ X ∗ ∥ 2 ) (\boldsymbol{X}^*)-\|\boldsymbol{X}^*\|_2) (X)X2) in the objective function is enforced to be zero.

DC算法

虽然问题(20)仍然是非凸的,但它可以通过利用优化最小化技术(MM方法,见我之前的博客)以迭代方式求解,从而产生DC算法[20]。主要思想是通过线性化凹项 − ρ ∥ X ∥ 2 -\rho\|X\|_{2} ρX2将问题(20)转化为一系列简单的子问题X2、目标函数。具体地说,我们需要在第 t t t次迭代时求解由下式给出的子问题:

minimize ⁡ X ∈ C T r ( A 0 X ) + ρ ⋅ ⟨ X , I − ∂ ∥ X t − 1 ∥ 2 ⟩ s u b j e c t   t o T r ( A k X ) ≥ d k , ∀ k , X ⪰ 0 , (21) \begin{aligned}&\operatorname*{minimize}_{\boldsymbol{X}\in\mathcal{C}}\quad\mathrm{Tr}(\boldsymbol{A}_{0}\boldsymbol{X})+\rho\cdot\langle\boldsymbol{X},\boldsymbol{I}-\partial\|\boldsymbol{X}^{t-1}\|_{2}\rangle\\&\mathrm{subject~to}\quad\mathrm{Tr}(\boldsymbol{A}_{k}\boldsymbol{X})\geq d_{k},\forall k,\\&\boldsymbol{X}\succeq0, \tag{21} \end{aligned} XCminimizeTr(A0X)+ρX,IXt12subject toTr(AkX)dk,k,X0,(21)

where X t − 1 X^{t-1} Xt1 is the optimal solution of the subproblem at iteration t − 1. t-1. t1. It is clear that the subproblem (21) is convex and can be solved efficiently by existing solvers such as CVX [19]. In addition, the subgradient ∂ ∥ X ~ ∥ 2 \partial\|\tilde{X}\|_2 X~2 can be computed efficiently by the following proposition [3].

Proposition 2.   For   given   PSD   matrix   X ∈ C N × N , t h e s u b 2. \textit{ For given PSD matrix }\boldsymbol{X}\in \mathbb{C} ^{N\times N}, thesub 2. For given PSD matrix XCN×N,thesub- gradient ∂ ∥ X ∥ 2 can   be   computed   as   v 1 v 1 H , w h e r e v 1 ∈ C N \partial \| \boldsymbol{X}\| _2\textit{can be computed as }v_1\boldsymbol{v}_1^\mathrm{H} , where\boldsymbol{v}_1\in \mathbb{C} ^N X2can be computed as v1v1H,wherev1CN is the leading eigenvector of matrix X.

所提出的DC算法从任意初始点收敛到问题(20)的临界点[20]。因此,我们在算法1中总结了所提出的DC算法。

在这里插入图片描述

Proposed Alternating DC Approach

In this subsection, we apply the proposed DC framework to problem P 1 \mathscr{P}_1 P1 and problem P 2 . \mathscr{P}_2. P2. Specifically, to find a rank-one solution to problem P 1 \mathscr{P}_1 P1, we propose to solve the following DC programming problem

minimize ⁡ M T r ( M ) + ρ ( T r ( M ) − ∥ M ∥ 2 ) s u b j e c t   t o T r ( M H k ) ≥ 1 , ∀ k , M ⪰ 0 , (22) \begin{aligned}&\underset{M}{\operatorname*{minimize}}\quad\mathrm{Tr}(\boldsymbol{M})+\rho(\mathrm{Tr}(\boldsymbol{M})-\|\boldsymbol{M}\|_{2})\\&\mathrm{subject~to}\quad\mathrm{Tr}(\boldsymbol{MH}_{k})\geq1,\forall k,\\&\boldsymbol{M}\succeq0, \tag{22}\end{aligned} MminimizeTr(M)+ρ(Tr(M)M2)subject toTr(MHk)1,k,M0,(22)

where ρ > 0 \rho>0 ρ>0 is the penalty parameter. When the penalty component is enforced to be zero, problem (22) shall induce a rank-one solution M ⋆ M^\star M, we can thus recover the solution m m m to problem (12) through Cholesky decomposition M ⋆ = m m H . M^\star=\boldsymbol{m}m^\mathrm{H}. M=mmH.

To detect feasibility for problem P 2 \mathscr{P}_2 P2, we propose to minimize the difference between trace norm and spectral norm as follows,

minimize ⁡ V T r ( V ) − ∥ V ∥ 2 s u b j e c t   t o T r ( R k V ) + ∣ c k ∣ 2 ≥ 1 , ∀ k , V n , n = 1 , ∀ n = 1 , ⋯   , N , V ⪰ 0. (23) \begin{aligned}&\underset{V}{\operatorname*{minimize}}\quad\mathrm{Tr}(\boldsymbol{V})-\|\boldsymbol{V}\|_{2}\\&\mathrm{subject~to}\quad\mathrm{Tr}(\boldsymbol{R}_{k}\boldsymbol{V})+|c_{k}|^{2}\geq1,\forall k,\\&\boldsymbol{V}_{n,n}=1,\forall n=1,\cdots,N,\\&\boldsymbol{V}\succeq0. \tag{23}\end{aligned} VminimizeTr(V)V2subject toTr(RkV)+ck21,k,Vn,n=1,n=1,,N,V0.(23)

When the objective value of problem (23) becomes zero, we shall find an exact rank-one optimal solution V ⋆ V^{\star} V. By Cholesky decomposition V ⋆ = v ~ v ~ v ~ H V^\star=\tilde{v}\tilde{v}\tilde{v}^\mathrm{H} V=v~v~v~H, we can obtain a feasible solution v ~ \tilde{v} v~ to problem (14). If the objective value fails to be zero, we claim that problem P 2 \mathscr{P}_2 P2 (i.e., problem (14)) is infeasible.

In summary, the proposed alternating DC algorithm for
solving problem P \mathscr{P} P can be presented in Algorithm 2.

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2183957.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java | Leetcode Java题解之第450题删除二叉搜索树中的节点

题目: 题解: class Solution {public TreeNode deleteNode(TreeNode root, int key) {TreeNode cur root, curParent null;while (cur ! null && cur.val ! key) {curParent cur;if (cur.val > key) {cur cur.left;} else {cur cur.rig…

问题解决实录 | bash 中 tmux 颜色显示不全

点我进入博客 如下图,tmux 中颜色显示不全: echo $TERM输出的是 screen 但在 bash 里面输出的是 xterm-256 color 在 bash 里面输入: touch ~/.tmux.conf vim ~/.tmux.conf set -g default-terminal "xterm-256color"使之生效 source …

【学习笔记】手写 Tomcat 八

目录 一、NIO 1. 创建 Tomcat NIO 类 2. 启动 Tomcat 3. 测试 二、解析请求信息 三、响应数据 创建响应类 修改调用的响应类 四、完整代码 五、测试 六、总结 七、获取全部用户的功能 POJO 生成 POJO 1. 在 Dao 层定义接口 2. 获取用户数据 3. 在 Service 层定…

仪器数码管数字识别系统源码分享

仪器数码管数字识别检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Comput…

21.2 k8s中etcd的tls双向认证原理解析

本节重点介绍 : tls单向认证原理tls双向认证原理 在k8s中etcd监控的应用以ca.crt client.crt client.key创建的secret并挂载到prometheus中prometheus配置证书信息打到采集etcd的目的 tls单向认证 在单向SSL身份认证过程中,客户端需要验证服务端证书,…

文心一言 VS 讯飞星火 VS chatgpt (359)-- 算法导论24.3 1题

一、在图 24-2上运行Dijkstra算法,第一次使用结点 s s s作为源结点,第二次使用结点 z z z作为源结点。以类似于图 24-6 的风格,给出每次while循环后的 d d d值和 π π π值,以及集合 S S S中的所有结点。如果要写代码&#xff0c…

鸿蒙开发知识点速记全解

入门 1、API涵盖应用框架、系统、媒体、图形、应用服务、AI六大领域。 应用框架相关Kit开放能力:Ability Kit(程序框架服务)、ArkUI(方舟UI框架)等。系统相关Kit开放能力:Universal Keystore Kit&#xf…

C++入门基础 (超详解)

文章目录 前言1. C关键字2. C的第一个程序3. 命名空间3.1 namespace的定义3.2 命名空间的嵌套3.3 命名空间使用3.4 查找优先级总结 4. C输入和输出4.1 标准输入输出 (iostream库)4.2 文件输入输出 (fstream库)4.3 字符串流 (sstream库)4.4 C格式化输出4.5 std::endl和\n的区别 …

如何通过Dockfile更改docker中ubuntu的apt源

首先明确我们有一个宿主机和一个docker环境,接下来的步骤是基于他们两个完成的 1.在宿主机上创建Dockerfile 随便将后面创建的Dockerfile放在一个位置,我这里选择的是 /Desktop 使用vim前默认你已经安装好了vim 2.在输入命令“vim Dockerfile”之后,…

昇思MindSpore进阶教程--报错分析

大家好,我是刘明,明志科技创始人,华为昇思MindSpore布道师。 技术上主攻前端开发、鸿蒙开发和AI算法研究。 努力为大家带来持续的技术分享,如果你也喜欢我的文章,就点个关注吧 概述 本章节用于介绍MindSpore为神经网络…

CSS画出三角形的做法

引言: 在网页中,会有三角形的出现,我们脑海里会有很多想法,如何去实现他们,我来提供一种比较好玩的做法。 方法: 我们实现一个三角形,当然可以使用精灵图、或者iconfont的做法,这…

redis中的数据类型(Set与ZSet)

(一)set set在我们目前有两个意思,首先就是这里使用的集合,第二个是我们的set和get方法 因为set是一个集合,所以他具有集合的一些特点: 1.集合中的元素无序 2.集合中的元素是不可重复的 3.集合间是可…

关于按键状态机解决Delay给程序带来的问题

问题产生 我在学习中断的过程中,使用EXTI15外部中断,在其中加入HAL_Delay();就会发生报错 错误地方 其它地方配置 问题原因 在中断服务例程(ISR)中使用 HAL_Delay() 会导致问题的原因是: 阻塞性: HAL_D…

Codeforces Round 976 (Div. 2 ABCDE题)视频讲解

A. Find Minimum Operations Problem Statement You are given two integers n n n and k k k. In one operation, you can subtract any power of k k k from n n n. Formally, in one operation, you can replace n n n by ( n − k x ) (n-k^x) (n−kx) for any no…

计算机的错误计算(一百一十)

摘要 计算机的错误计算(四十五)探讨了(二)中一个循环迭代案例的错误计算原因。本节分析(二)中例1循环迭代错误计算的原因。 例1. 已知 计算 在 的错数,并用实例分析计算过程中的错误数…

【Python报错已解决】error: subprocess-exited-with-error

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 专栏介绍 在软件开发和日常使用中,BUG是不可避免的。本专栏致力于为广大开发者和技术爱好者提供一个关于BUG解决的经…

课设实验-数据结构-线性表-手机销售

题目&#xff1a; 代码&#xff1a; #include<stdio.h> #include<string.h> #define MaxSize 10 //定义顺序表最大长度 //定义手机结构体类型 typedef struct {char PMod[10];//手机型号int PPri;//价格int PNum;//库存量 }PhoType; //手机类型 //记录手机的顺序…

Ceph RocksDB 深度调优

介绍 调优 Ceph 可能是一项艰巨的挑战。在 Ceph、RocksDB 和 Linux 内核之间&#xff0c;实际上有数以千计的选项可以进行调整以提高存储性能和效率。由于涉及的复杂性&#xff0c;比较优的配置通常分散在博客文章或邮件列表中&#xff0c;但是往往都没有说明这些设置的实际作…

插槽slot在vue中的使用

介绍 在 Vue.js 中&#xff0c;插槽&#xff08;slot&#xff09;是一种用于实现组件内容分发的功能。通过插槽&#xff0c;可以让父组件在使用子组件时自定义子组件内部的内容。插槽提供了一种灵活的方式来组合和复用组件。 项目中有很多地方需要调用一个组件&#xff0c;比…

SemiDesgin中后台组件库,字节跳动出品,能否火,有待检验。

2021年字节跳动SemiDesgin中后台组件库发布。 SemiDesgin官方解释&#xff1a;SemiDesgin由是字节跳动抖音前端与UED团队设计、开发并维护&#xff0c;包含设计语言、React 组件、主题等开箱即用的中后台解决方案&#xff0c;帮助设计师与开发者打造高质量产品。 SemiDesgin&a…