<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/258711</link>
    <title>MATLAB Central Newsreader - Approaches to solve constrained mixed-norm optmization problema</title>
    <description>Feed for thread: Approaches to solve constrained mixed-norm optmization problema</description>
    <language>en-us</language>
    <copyright>&amp;copy;1994-2012 by MathWorks, Inc.</copyright>
    <webmaster>webmaster@mathworks.com</webmaster>
    <generator>MATLAB Central Newsreader</generator>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <ttl>60</ttl>
    <image>
      <title>MathWorks</title>
      <url>http://www.mathworks.com/images/membrane_icon.gif</url>
    </image>
    <item>
      <pubDate>Mon, 17 Aug 2009 14:30:58 -0400</pubDate>
      <title>Approaches to solve constrained mixed-norm optmization problema</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/258711#673759</link>
      <author>Prime Mover</author>
      <description>Dear friends,&lt;br&gt;
&lt;br&gt;
What are the approaches available in MATLAB to solve a problem to find&lt;br&gt;
a vector of parameters r such that the sum&lt;br&gt;
&lt;br&gt;
|| W*r - s ||^2 + lambda1*| r | + lambda2*|| H*r - p ||^2&lt;br&gt;
&lt;br&gt;
is minimized?&lt;br&gt;
&lt;br&gt;
W and H are matrices with known values; s and p are vector with known&lt;br&gt;
values; and lambda1 and lambda2 are a set of given weights.&lt;br&gt;
&lt;br&gt;
Thank you all for the cooperation.</description>
    </item>
    <item>
      <pubDate>Mon, 17 Aug 2009 14:49:15 -0400</pubDate>
      <title>Re: Approaches to solve constrained mixed-norm optmization problema</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/258711#673763</link>
      <author>Torsten Hennig</author>
      <description>&amp;gt; Dear friends,&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; What are the approaches available in MATLAB to solve&lt;br&gt;
&amp;gt; a problem to find&lt;br&gt;
&amp;gt; a vector of parameters r such that the sum&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; || W*r - s ||^2 + lambda1*| r | + lambda2*|| H*r - p&lt;br&gt;
&amp;gt; ||^2&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; is minimized?&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; W and H are matrices with known values; s and p are&lt;br&gt;
&amp;gt; vector with known&lt;br&gt;
&amp;gt; values; and lambda1 and lambda2 are a set of given&lt;br&gt;
&amp;gt; weights.&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Thank you all for the cooperation.&lt;br&gt;
&amp;gt; &lt;br&gt;
&lt;br&gt;
&lt;br&gt;
What norms do you mean in the expression to be &lt;br&gt;
minimized ?&lt;br&gt;
&lt;br&gt;
||.|| = 2-norm , |.| = oo-norm or 1-norm ?&lt;br&gt;
&lt;br&gt;
Best wishes&lt;br&gt;
Torsten.</description>
    </item>
    <item>
      <pubDate>Mon, 17 Aug 2009 16:35:17 -0400</pubDate>
      <title>Re: Approaches to solve constrained mixed-norm optmization problema</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/258711#673783</link>
      <author>Emilson</author>
      <description>On 17 ago, 11:49, Torsten Hennig &amp;lt;Torsten.Hen...@umsicht.fhg.de&amp;gt;&lt;br&gt;
wrote:&lt;br&gt;
&amp;gt; &amp;gt; Dear friends,&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; What are the approaches available in MATLAB to solve&lt;br&gt;
&amp;gt; &amp;gt; a problem to find&lt;br&gt;
&amp;gt; &amp;gt; a vector of parameters r such that the sum&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; || W*r - s ||^2 + lambda1*| r | + lambda2*|| H*r - p&lt;br&gt;
&amp;gt; &amp;gt; ||^2&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; is minimized?&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; W and H are matrices with known values; s and p are&lt;br&gt;
&amp;gt; &amp;gt; vector with known&lt;br&gt;
&amp;gt; &amp;gt; values; and lambda1 and lambda2 are a set of given&lt;br&gt;
&amp;gt; &amp;gt; weights.&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; Thank you all for the cooperation.&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; What norms do you mean in the expression to be&lt;br&gt;
&amp;gt; minimized ?&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; ||.|| = 2-norm , |.| = oo-norm or 1-norm ?&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; Best wishes&lt;br&gt;
&amp;gt; Torsten.- Ocultar texto das mensagens anteriores -&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; - Mostrar texto das mensagens anteriores -&lt;br&gt;
&lt;br&gt;
This is gonna be a mixed-norm problem:&lt;br&gt;
&lt;br&gt;
|| Wr - s ||  and || Hr - p || = L2-norm; | r | = L1-norm&lt;br&gt;
&lt;br&gt;
Thanks for asking.</description>
    </item>
    <item>
      <pubDate>Mon, 17 Aug 2009 19:21:01 -0400</pubDate>
      <title>Re: Approaches to solve constrained mixed-norm optmization problema</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/258711#673812</link>
      <author>Bruno Luong</author>
      <description>Emilson &amp;lt;emilsonpl@gmail.com&amp;gt; wrote in message &amp;lt;2a703ae3-f962-43d2-b3f0-6e226ca70490@k30g2000yqf.googlegroups.com&amp;gt;...&lt;br&gt;
&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; || Wr - s ||  and || Hr - p || = L2-norm; | r | = L1-norm&lt;br&gt;
&amp;gt; &lt;br&gt;
&lt;br&gt;
Here are few though. First without restrict the generality, let's assume there is only one L2 term (put them together):&lt;br&gt;
&lt;br&gt;
J2(r) := || A r - b ||^2 = alpha*|| Wr - s || ^2 + beta*|| Hr - p ||^2&lt;br&gt;
&lt;br&gt;
A, b are matrices derived from the known parameters.&lt;br&gt;
&lt;br&gt;
Our main objective function is&lt;br&gt;
&lt;br&gt;
J0(r) := J2(r) + |r|&lt;br&gt;
&lt;br&gt;
Let r2/r0 are respectively solutions minimizing J2/J0. I believe (!) we can show the *sign* of r0 and r2 (components) are identical.&lt;br&gt;
&lt;br&gt;
Thus we can replace the pb minimizing J0(r) + |r| by&lt;br&gt;
&lt;br&gt;
Minimizing:&lt;br&gt;
J0(r) + &amp;lt;s,r&amp;gt;&lt;br&gt;
&amp;lt;s,r&amp;gt;&amp;gt;=0&lt;br&gt;
&lt;br&gt;
where s := sign(r2)&lt;br&gt;
&lt;br&gt;
This problem is a box quadratic least-square minimization, thus it can be solved with an appropriate algorithm.&lt;br&gt;
&lt;br&gt;
I hope my intuition is good and I don't make any false reasoning.&lt;br&gt;
&lt;br&gt;
Bruno</description>
    </item>
    <item>
      <pubDate>Tue, 18 Aug 2009 11:12:01 -0400</pubDate>
      <title>Re: Approaches to solve constrained mixed-norm optmization problema</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/258711#673940</link>
      <author>Johan L?fberg</author>
      <description>The standard approach is to write it as a QP&lt;br&gt;
&lt;br&gt;
min ||[Wr-s;sqrt(lambda2)*(Hr-p)||^2 + lambda1*sum(t)&lt;br&gt;
&lt;br&gt;
s.t &lt;br&gt;
&lt;br&gt;
-t &amp;lt; r &amp;lt; t&lt;br&gt;
&lt;br&gt;
where t is a new set of variables of dimension length(r). &lt;br&gt;
&lt;br&gt;
You decision variables are thus x=[r;t]. Write the objective in standard form 0.5*x'Q*x+c'*x and constraints as Ax&amp;lt;b and use, e.g., quadprog.&lt;br&gt;
&lt;br&gt;
Or be lazy and use the modelling language YALMIP (free toolbox for MATLAB)&lt;br&gt;
&lt;br&gt;
r = sdpvar(n,1);&lt;br&gt;
objective =  (W*r - s)'*(W*r-s) + lambda1*norm(r,1)+(H*r - p)'*(H*r-p)&lt;br&gt;
solvesdp([],objective)&lt;br&gt;
double(r)&lt;br&gt;
&lt;br&gt;
Prime Mover &amp;lt;emilsonpl@gmail.com&amp;gt; wrote in message &amp;lt;26c8a015-8817-4b87-a0b3-1d22e6464c2d@z31g2000yqd.googlegroups.com&amp;gt;...&lt;br&gt;
&amp;gt; Dear friends,&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; What are the approaches available in MATLAB to solve a problem to find&lt;br&gt;
&amp;gt; a vector of parameters r such that the sum&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; || W*r - s ||^2 + lambda1*| r | + lambda2*|| H*r - p ||^2&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; is minimized?&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; W and H are matrices with known values; s and p are vector with known&lt;br&gt;
&amp;gt; values; and lambda1 and lambda2 are a set of given weights.&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Thank you all for the cooperation.&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; </description>
    </item>
    <item>
      <pubDate>Tue, 18 Aug 2009 11:17:47 -0400</pubDate>
      <title>Re: Approaches to solve constrained mixed-norm optmization problema</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/258711#673943</link>
      <author>Emilson</author>
      <description>On 18 ago, 08:12, &quot;Johan L?fberg&quot; &amp;lt;loefb...@control.ee.ethz.ch&amp;gt; wrote:&lt;br&gt;
&amp;gt; The standard approach is to write it as a QP&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; min ||[Wr-s;sqrt(lambda2)*(Hr-p)||^2 + lambda1*sum(t)&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; s.t&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; -t &amp;lt; r &amp;lt; t&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; where t is a new set of variables of dimension length(r).&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; You decision variables are thus x=[r;t]. Write the objective in standard form 0.5*x'Q*x+c'*x and constraints as Ax&amp;lt;b and use, e.g., quadprog.&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; Or be lazy and use the modelling language YALMIP (free toolbox for MATLAB)&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; r = sdpvar(n,1);&lt;br&gt;
&amp;gt; objective = &#160;(W*r - s)'*(W*r-s) + lambda1*norm(r,1)+(H*r - p)'*(H*r-p)&lt;br&gt;
&amp;gt; solvesdp([],objective)&lt;br&gt;
&amp;gt; double(r)&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; Prime Mover &amp;lt;emilso...@gmail.com&amp;gt; wrote in message &amp;lt;26c8a015-8817-4b87-a0b3-1d22e6464...@z31g2000yqd.googlegroups.com&amp;gt;...&lt;br&gt;
&amp;gt; &amp;gt; Dear friends,&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; What are the approaches available in MATLAB to solve a problem to find&lt;br&gt;
&amp;gt; &amp;gt; a vector of parameters r such that the sum&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; || W*r - s ||^2 + lambda1*| r | + lambda2*|| H*r - p ||^2&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; is minimized?&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; W and H are matrices with known values; s and p are vector with known&lt;br&gt;
&amp;gt; &amp;gt; values; and lambda1 and lambda2 are a set of given weights.&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; Thank you all for the cooperation.- Ocultar texto das mensagens anteriores -&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; - Mostrar texto das mensagens anteriores -&lt;br&gt;
&lt;br&gt;
Well, thank you tow for posting. I guess I will start with quadprog&lt;br&gt;
and see I why I'll get.&lt;br&gt;
&lt;br&gt;
Cheers.</description>
    </item>
    <item>
      <pubDate>Tue, 18 Aug 2009 14:58:06 -0400</pubDate>
      <title>Re: Approaches to solve constrained mixed-norm optmization problema</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/258711#673992</link>
      <author>Bruno Luong</author>
      <description>&quot;Johan L?fberg&quot; &amp;lt;loefberg@control.ee.ethz.ch&amp;gt; wrote in message &amp;lt;h6e2a1$h2k$1@fred.mathworks.com&amp;gt;...&lt;br&gt;
&amp;gt; The standard approach is to write it as a QP&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; min ||[Wr-s;sqrt(lambda2)*(Hr-p)||^2 + lambda1*sum(t)&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; s.t &lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; -t &amp;lt; r &amp;lt; t&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; where t is a new set of variables of dimension length(r). &lt;br&gt;
&lt;br&gt;
I'm glad to learn the &quot;standard&quot; approach. Thanks.&lt;br&gt;
&lt;br&gt;
Bruno</description>
    </item>
    <item>
      <pubDate>Tue, 18 Aug 2009 17:05:21 -0400</pubDate>
      <title>Re: Approaches to solve constrained mixed-norm optmization problema</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/258711#674027</link>
      <author>Matt </author>
      <description>Prime Mover &amp;lt;emilsonpl@gmail.com&amp;gt; wrote in message &amp;lt;26c8a015-8817-4b87-a0b3-1d22e6464c2d@z31g2000yqd.googlegroups.com&amp;gt;...&lt;br&gt;
&amp;gt; Dear friends,&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; What are the approaches available in MATLAB to solve a problem to find&lt;br&gt;
&amp;gt; a vector of parameters r such that the sum&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; || W*r - s ||^2 + lambda1*| r | + lambda2*|| H*r - p ||^2&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; is minimized?&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; W and H are matrices with known values; s and p are vector with known&lt;br&gt;
&amp;gt; values; and lambda1 and lambda2 are a set of given weights.&lt;br&gt;
==================&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
The title of your post says that this is a constrained problem, yet you haven't mentioned any constraints on r. If there are no constraints, then I would be interested to know how the following Majorize-Minimize approach performs. It can easily be modified for box constraints on r:&lt;br&gt;
&lt;br&gt;
1. First, reformulate the objective function as suggested by others to be in the form&lt;br&gt;
&lt;br&gt;
f(x) = 1/2 *x'*Q*x+b*x&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
2. Proceed according to the following algorithm&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
MajCurvs=sum(abs(Q)&amp;lt;2);&lt;br&gt;
ImportantQuantity=lambda1./MajCurvs;&lt;br&gt;
&lt;br&gt;
r=InitialValue;&lt;br&gt;
&lt;br&gt;
for ii=1:numIterations&lt;br&gt;
&lt;br&gt;
&amp;nbsp;QuadGradient=Q*x+b;&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;Center=r-QuadGradient./MajCurvs;&lt;br&gt;
&amp;nbsp;&amp;nbsp;Candidate1=Center-ImportantQuantity;&lt;br&gt;
&amp;nbsp;&amp;nbsp;Candidate2=Center+ImportantQuantity;&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;r=Candidate1.*(Candidate1&amp;gt;0)+ Candidate2.*(Candidate2&amp;lt;0);&lt;br&gt;
&lt;br&gt;
end</description>
    </item>
    <item>
      <pubDate>Tue, 18 Aug 2009 17:23:21 -0400</pubDate>
      <title>Re: Approaches to solve constrained mixed-norm optmization problema</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/258711#674031</link>
      <author>Matt </author>
      <description>&quot;Matt &quot; &amp;lt;xys@whatever.com&amp;gt; wrote in message &amp;lt;h6en0h$7i0$1@fred.mathworks.com&amp;gt;...&lt;br&gt;
&lt;br&gt;
&amp;gt; 1. First, reformulate the objective function as suggested by others to be in the form&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; f(x) = 1/2 *x'*Q*x+b*x&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Make that&lt;br&gt;
&lt;br&gt;
&amp;nbsp;f(r) = 1/2 *r'*Q*r+b*r +lambda1*|r|</description>
    </item>
  </channel>
</rss>

