sub-gradients - reg

clear all
close all
clc
f1=zeros(1,100);
f2=zeros(1,100);
f3=zeros(1,200);
c1=randi([1,20],1,100);
c2=randi([1,20],1,100);
y(1,1:200)=rand(1,200);
f1(1,1:100)=[y(1,1:100).*c1];
f2(1,1:100)=[y(1,101:200).*c2];
f3(1,1:200)=horzcat(f1,f2);
g1=zeros(1,100);
g2=zeros(1,100);
g1=gradient(f1,y(1:100));
g2=gradient(f2,y(101:200));
g=horzcat(g1,g2);
my question is whether g1 and g2 are sub-gradients of f1 and f2 respectively in the above code

4 个评论

What is a "sub-gradient" for this purpose?
Note: what you have is not exactly equivalent of
g = graient(f3, y(1:200))
There would be a difference due to boundary conditions. Compare
gradient([1 3 6 10 15])
to
[gradient([1 3 6]), gradient([10 15])]
i required the sub gradients to apply decomposition. without using 'g=horzcat (g1,g2)'. can i write the primal decomposition by using 'g1' and 'g2'.
What is a "sub gradient" ?
sub gradient method as used in lagrangian decomposition and lagrangian relaxation algorithms

请先登录,再进行评论。

 采纳的回答

Walter Roberson
Walter Roberson 2018-12-25

0 个投票

my question is whether g1 and g2 are sub-gradients of f1 and f2 respectively in the above code
No. Lagrangian sub-gradient methods apply to functions, but you do not have functions.
gradient() applied to numeric matrices is numeric differences, and the second and following arguments give the step sizes.

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Mathematics and Optimization 的更多信息

产品

版本

R2015b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by