CVX示例库之比较随机(stochastic)和最坏情况(worst-case)鲁棒逼近
参考 6.4.2 节 Boyd 和 Vandenberghe 《凸优化》
CVX示例库
- 鲁棒逼近
- 随机鲁棒逼近
- 最坏情况鲁棒逼近
- 示例(比较随机和最坏情况鲁棒逼近)
鲁棒逼近
鲁棒逼近在逼近问题中同时考虑 A A A的不确定性。
随机鲁棒逼近
随机鲁棒逼近对 A A A的不确定性进行统计建模, A = A ˉ + U A=\bar{A}+U A=Aˉ+U,
minimize E ∥ A x − b ∥ \text{minimize}~E\|Ax-b\| minimize E∥Ax−b∥
对于随机鲁棒最小二乘逼近问题,
minimize E ∥ A x − b ∥ 2 2 \text{minimize}~E\|Ax-b\|_2^2 minimize E∥Ax−b∥22
我们有
E ∥ A x − b ∥ 2 2 = ∥ A ˉ x − b ∥ 2 2 + x T P x E\|Ax-b\|_2^2=\|\bar{A}x-b\|_2^2+x^TPx E∥Ax−b∥22=∥Aˉx−b∥22+xTPx
其中, P = E { U T U } P=E\{U^TU\} P=E{UTU}。这个问题存在解析解,
x = ( A ˉ T A ˉ + P ) − 1 A ˉ T b x=(\bar{A}^T\bar{A}+P)^{-1}\bar{A}^Tb x=(AˉTAˉ+P)−1AˉTb
最坏情况鲁棒逼近
最坏情况鲁棒逼近利用集合表示 A A A的不确定性, A ∈ A A\in \mathcal{A} A∈A,最小化最坏情况时的误差,
minimize sup { ∥ A x − b ∥ ∣ A ∈ A } \text{minimize}~\sup\{\|Ax-b\|~|~A\in \mathcal{A}\} minimize sup{∥Ax−b∥ ∣ A∈A}
示例(比较随机和最坏情况鲁棒逼近)
我们如下最小二乘问题:
minimize ∥ ( A + t B ) x − b ∥ 2 \text{minimize}~\|(A+tB)x-b\|_2 minimize ∥(A+tB)x−b∥2
t t t是一个均匀分布在区间 [ − 1 , 1 ] [-1,1] [−1,1]上的随机变量。我们找到三种解:
基准最优解, t = 0 t=0 t=0
随机鲁棒逼近,
minimize E ∣ ∣ ( A + t B ) x − b ∣ ∣ 2 \text{minimize}~ E||(A+tB)x - b||_2 minimize E∣∣(A+tB)x−b∣∣2
等价于
minimize ∥ A x − b ∥ 2 2 + x T P x \text{minimize}~ \|Ax-b\|_2^2+x^TPx minimize ∥Ax−b∥22+xTPx
其中, P = E { t 2 } B T B = 1 / 3 B T B P=E\{t^2\}B^TB=1/3B^TB P=E{t2}BTB=1/3BTB。以下给出证明:
E { t 2 } = ∫ − 1 1 1 2 t 2 d t = − 1 6 t 3 ∣ − 1 1 = 1 3 . E\{t^2\}=\int_{-1}^{1}\frac{1}{2}t^2dt=-\frac{1}{6}t^3|_{-1}^{1}=\frac{1}{3}. E{t2}=∫−1121t2dt=−61t3∣−11=31.最坏情况鲁棒逼近,
minimize sup − 1 ≤ t ≤ 1 ∥ ( A + t B ) x − b ∥ 2 \text{minimize}~ \sup_{-1\leq t\leq 1} \|(A+tB)x - b\|_2 minimize −1≤t≤1sup∥(A+tB)x−b∥2
等价于
minimize max { ∥ ( A − B ) x − b ∥ 2 , ∥ ( A + B ) x − b ∥ 2 } \text{minimize}~ \max\{\|(A-B)x - b\|_2,\|(A+B)x - b\|_2\} minimize max{∥(A−B)x−b∥2,∥(A+B)x−b∥2}
代码如下:
% 输入数据
randn('seed',0);
m=20; n=10;
A = randn(m,n);
[U,S,V] = svd(A);
S = diag(logspace(-1,1,n)); % 在0.1和10之间生成n个点,norm(A)=10
A = U(:,1:n)*S*V';B = randn(m,n);
B = B/norm(B); % norm(B)=1b = randn(m,1);% 情形1:基准最优解
fprintf(1,'Computing the optimal solution for: \n');
fprintf(1,'1) the nominal problem ... ');cvx_begin quietvariable x_nom(n)minimize ( norm(A*x_nom - b) )
cvx_end
fprintf(1,'Done! \n');% 情形2:随机鲁棒逼近
fprintf(1,'2) the stochastic robust approximation problem ... ');P = (1/3)*B'*B;
cvx_begin quietvariable x_stoch(n)minimize ( square_pos(norm(A*x_stoch - b)) + quad_form(x_stoch,P) )
cvx_endfprintf(1,'Done! \n');% 情形3:最坏情况鲁棒逼近
fprintf(1,'3) the worst-case robust approximation problem ... ');cvx_begin quietvariable x_wc(n)minimize ( max( norm((A-B)*x_wc - b), norm((A+B)*x_wc - b) ) )
cvx_endfprintf(1,'Done! \n');% 画出残差
novals = 100;
parvals = linspace(-2,2,novals);errvals_ls = [];
errvals_stoch = [];
errvals_wc = [];
for k=1:novalserrvals_ls = [errvals_ls, norm((A+parvals(k)*B)*x_nom - b)];errvals_stoch = [errvals_stoch, norm((A+parvals(k)*B)*x_stoch - b)];errvals_wc = [errvals_wc, norm((A+parvals(k)*B)*x_wc - b)];
end;plot(parvals, errvals_ls, '-', parvals, errvals_stoch, '-', ...parvals, errvals_wc, '-', [-1;-1], [0; 12], 'k--', ...[1;1], [0; 12], 'k--');
xlabel('u');
ylabel('r(u) = ||A(u)x-b||_2');
title('Residual r(u) vs a parameter u for three approximate solutions');
% print -deps robappr.eps
CVX示例库之比较随机(stochastic)和最坏情况(worst-case)鲁棒逼近相关推荐
- CVX示例库之l_1趋势滤波(Trend Filtering)
参考 S.-J. Kim, K. Koh, S. Boyd, and D. Gorinevsky "l_1 Trend Filtering" SIAM Review, proble ...
- CVX示例库之惩罚函数逼近
参考 6.1.2节 Boyd 和 Vandenberghe <凸优化> CVX示例库 逼近问题 惩罚函数逼近 逼近问题 逼近问题可以写成: minimize ϕ(r1)+⋯+ϕ(rm)su ...
- 鲁棒随机优化(Robust Stochastic Optimization)和RSOME
鲁棒随机优化(Robust Stochastic Optimization)和RSOME 前言 1. RSO 2. 简单示例 2.1 单产品的报童问题(one-product newsvendor p ...
- mysql中示例库安装_MySQL 官方示例数据库安装
虽然MySQL安装包中不像SQL Server和Oracle那样提供示例数据库,但官方也提供示例数据库以供学习使用. 官方示例数据库 下载地址 http://dev.mysql.com/doc/ind ...
- Manim文档及源码笔记-CE文档-示例库3使用Manim绘图
Manim文档及源码笔记-CE文档-示例库3使用Manim绘图 参考原文: Manim Community Edition Example Gallery 前言 笔记随想: 暂未发现官方中文版,自己实 ...
- 计算机考试随机出题,打乱题库_有什么软件可以自己导入题库然后可以随机抽题做有没有这种软件啊_淘题吧...
㈠ 全国计算机等级考试三级网络技术,系统在题库抽题时,是抽一整套试卷还是打乱抽的 随机抽选!一道概念性的题,它可能会用几种方式来提出问题,然后在几个问题中随机抽选一道题,以此类推.一个概念性的题不会重 ...
- 鲁棒最小二乘法的三种优化形式(CVX)
文章目录 数据初始部分 (a) robust least-squares problem (b)least-squares problem with variable weights (c)quadr ...
- 拜占庭鲁棒随机聚合的分布式学习方法
文章目录 拜占庭鲁棒随机聚合的分布式学习方法 介绍 分布式SGD 鲁棒分布式学习的RSA算法 l1l_1l1-范数 RSA p范数 RSA 结论 原文链接:https://arxiv.org/abs ...
- TeaseR++:快速鲁棒的C++点云配准库介绍+英文版视频教程
本文提出了一种快速鲁棒的点云配准算法,对存在离群噪声点的点云数据具有较好的配准效果.首先使用了截断最小二乘(Truncated Least Squares TLS)代价函数重新构造配准问题 ,该代价是 ...
最新文章
- python批量读取文件内容_Python 文本文件内容批量抽取实例
- linq调用mysql函数_mysql-在LINQ中执行FirstOrDefault的另一种方法
- 在SAP中进行黏贴时必须要把之前的数据删掉后才能黏贴,不能直接使用黏贴来覆盖之前的数据,这个怎麼解?
- grasshopper for rhino 6下载_从SU到Rhino——lumion批量种树
- 读写分离mysql数据库mariadb_MariaDB数据库读写分离实现(一):mysql-proxy的使用
- oracle 长事务 逻辑日志,goldengate中长事务引起的问题
- mysql already closed._java.sql.SQLException: Already closed.
- Sentinel(十九)之主流框架的适配
- mixin network_【译文】Mixin——以最高的安全性满足所有区块链资产的交易需求
- 最最基础的Android倒计时应用
- 北京证券交易所首批三大基本业务规则开始征求意见
- “6亿元入股锤子”项目涉嫌国资流失被调查?官方回应来了
- js 接收 json格式的字符串
- 微服务分布式基础项目(免费答疑):SpringBoot2.X+SpringCloud+SpringDataJPA+Consul+Feign+Swagger (还会持续更新,不懂的可以问博主)
- 【Badboy】脚本录制
- ENVI监督分类中SVM(支持向量机)工具
- 手机蓝牙绑定pc,离开电脑自动锁屏
- screentogif能录制声音吗_如何用Screen to Gif快速录制动图
- C# WinIo获取键盘记录
- React Tutorial (updating)