http://nl.mathworks.com/matlabcentral/newsreader/view_thread/283347
MATLAB Central Newsreader  Interesting optimization problem
Feed for thread: Interesting optimization problem
enus
©19942017 by MathWorks, Inc.
webmaster@mathworks.com
MATLAB Central Newsreader
http://blogs.law.harvard.edu/tech/rss
60
MathWorks
http://nl.mathworks.com/images/membrane_icon.gif

Fri, 28 May 2010 21:04:12 +0000
Interesting optimization problem
http://nl.mathworks.com/matlabcentral/newsreader/view_thread/283347#749873
Luis Felipe
Hi,<br>
<br>
Have you ever seen this optimization problem ?<br>
n<br>
max prod (p_i)^a_i<br>
i=1<br>
<br>
n<br>
subject to sum p_i = 1<br>
i=1<br>
<br>
where a_i is a positive constant for i=1,...,n<br>
<br>
I would like to know if that optimization problem has any application<br>
(or has been used to solve anything). Thank you for your comments.

Fri, 28 May 2010 21:08:08 +0000
Re: Interesting optimization problem
http://nl.mathworks.com/matlabcentral/newsreader/view_thread/283347#749874
us
Luis Felipe <luispipe16@gmail.com> wrote in message <8445cd34c7324010aa1c5a20d6b4b5cf@f14g2000vbn.googlegroups.com>...<br>
> Hi,<br>
> <br>
> Have you ever seen this optimization problem ?<br>
> n<br>
> max prod (p_i)^a_i<br>
> i=1<br>
> <br>
> n<br>
> subject to sum p_i = 1<br>
> i=1<br>
> <br>
> where a_i is a positive constant for i=1,...,n<br>
> <br>
> I would like to know if that optimization problem has any application<br>
> (or has been used to solve anything). Thank you for your comments.<br>
<br>
very nice, indeed... but: where's your problem with respect to CSSM (ML) (?)...<br>
<br>
us

Fri, 28 May 2010 21:18:12 +0000
Re: Interesting optimization problem
http://nl.mathworks.com/matlabcentral/newsreader/view_thread/283347#749881
Walter Roberson
Luis Felipe wrote:<br>
<br>
> Have you ever seen this optimization problem ?<br>
> n<br>
> max prod (p_i)^a_i<br>
> i=1<br>
> <br>
> n<br>
> subject to sum p_i = 1<br>
> i=1<br>
> <br>
> where a_i is a positive constant for i=1,...,n<br>
<br>
Your problem statement does not constrain p_i to be nonnegative, leaving open <br>
the possibility of using large negative and positive numbers.

Fri, 28 May 2010 21:21:05 +0000
Re: Interesting optimization problem
http://nl.mathworks.com/matlabcentral/newsreader/view_thread/283347#749882
Bruno Luong
Luis Felipe <luispipe16@gmail.com> wrote in message <8445cd34c7324010aa1c5a20d6b4b5cf@f14g2000vbn.googlegroups.com>...<br>
> Hi,<br>
> <br>
> Have you ever seen this optimization problem ?<br>
> n<br>
> max prod (p_i)^a_i<br>
> i=1<br>
> <br>
> n<br>
> subject to sum p_i = 1<br>
> i=1<br>
> <br>
> where a_i is a positive constant for i=1,...,n<br>
> <br>
> I would like to know if that optimization problem has any application<br>
> (or has been used to solve anything). Thank you for your comments.<br>
<br>
Not sure, but this is trivial to solve<br>
<br>
Maximizing prod(p.*a) is equivalent to maximizing f(p) := sum(a*log(p))<br>
<br>
The gradient of f is a./p.<br>
<br>
The KTT condition tells us that<br>
<br>
a./p = lambda*(1,1, ..).<br>
<br>
Because sum(p) = 1, thus p = a/sum(a). We are done.<br>
<br>
Bruno

Fri, 28 May 2010 21:22:21 +0000
Re: Interesting optimization problem
http://nl.mathworks.com/matlabcentral/newsreader/view_thread/283347#749883
us
Walter Roberson <roberson@hushmail.com> wrote in message <htpc0k$9o1$1@canopus.cc.umanitoba.ca>...<br>
> Luis Felipe wrote:<br>
> <br>
> > Have you ever seen this optimization problem ?<br>
> > n<br>
> > max prod (p_i)^a_i<br>
> > i=1<br>
> > <br>
> > n<br>
> > subject to sum p_i = 1<br>
> > i=1<br>
> > <br>
> > where a_i is a positive constant for i=1,...,n<br>
> <br>
> Your problem statement does not constrain p_i to be nonnegative, leaving open <br>
> the possibility of using large negative and positive numbers.<br>
<br>
again,<br>
very nice, indeed... but: where's your problem with respect to CSSM (ML) (?)...<br>
<br>
us

Fri, 28 May 2010 22:09:13 +0000
Re: Interesting optimization problem
http://nl.mathworks.com/matlabcentral/newsreader/view_thread/283347#749908
Walter Roberson
Bruno Luong wrote:<br>
> Luis Felipe <luispipe16@gmail.com> wrote in message <br>
> <8445cd34c7324010aa1c5a20d6b4b5cf@f14g2000vbn.googlegroups.com>...<br>
<br>
>> Have you ever seen this optimization problem ?<br>
>> n<br>
>> max prod (p_i)^a_i<br>
>> i=1<br>
>><br>
>> n<br>
>> subject to sum p_i = 1<br>
>> i=1<br>
>><br>
>> where a_i is a positive constant for i=1,...,n<br>
<br>
> Not sure, but this is trivial to solve <br>
> Maximizing prod(p.*a) is equivalent to maximizing f(p) := sum(a*log(p))<br>
> The gradient of f is a./p.<br>
<br>
I'm not certain, Bruno, whether your solution is intended to work when the a_i <br>
are potentially different from each other?

Fri, 28 May 2010 22:25:10 +0000
Re: Interesting optimization problem
http://nl.mathworks.com/matlabcentral/newsreader/view_thread/283347#749913
Bruno Luong
> <br>
> I'm not certain, Bruno, whether your solution is intended to work when the a_i <br>
> are potentially different from each other?<br>
<br>
I believe as long as a a >= 0, it works, otherwise the solution does not exist. But I let those detail for OP to play with.<br>
<br>
Bruno

Fri, 28 May 2010 22:29:22 +0000
Re: Interesting optimization problem
http://nl.mathworks.com/matlabcentral/newsreader/view_thread/283347#749915
Matt J
Walter Roberson <roberson@hushmail.com> wrote in message <htpf09$ec7$1@canopus.cc.umanitoba.ca>...<br>
<br>
> I'm not certain, Bruno, whether your solution is intended to work when the a_i <br>
> are potentially different from each other?<br>
<br>
Seems fine to me, provided that we also have the constraint p>=0, which the OP never verified. What doesn't look right to you?

Fri, 28 May 2010 23:23:37 +0000
Re: Interesting optimization problem
http://nl.mathworks.com/matlabcentral/newsreader/view_thread/283347#749921
Walter Roberson
Matt J wrote:<br>
> Walter Roberson <roberson@hushmail.com> wrote in message <br>
> <htpf09$ec7$1@canopus.cc.umanitoba.ca>...<br>
> <br>
>> I'm not certain, Bruno, whether your solution is intended to work when <br>
>> the a_i are potentially different from each other?<br>
> <br>
> Seems fine to me, provided that we also have the constraint p>=0, which <br>
> the OP never verified. What doesn't look right to you?<br>
<br>
The statement that the gradient was a./p  I'm not sure that is right when <br>
the a(:) are different. Gradient is slope, which would be length(a)1 values <br>
in between the other values, and the slope between positions K and K+1 would <br>
seem to more naturally depend upon a(K) and a(K+1)

Fri, 28 May 2010 23:55:24 +0000
Re: Interesting optimization problem
http://nl.mathworks.com/matlabcentral/newsreader/view_thread/283347#749923
Roger Stafford
Walter Roberson <roberson@hushmail.com> wrote in message <htpjbp$ko0$1@canopus.cc.umanitoba.ca>...<br>
> The statement that the gradient was a./p  I'm not sure that is right when <br>
> the a(:) are different. Gradient is slope, which would be length(a)1 values <br>
> in between the other values, and the slope between positions K and K+1 would <br>
> seem to more naturally depend upon a(K) and a(K+1)<br>
<br>
Bruno's solution is correct, Walter. It is a standard problem in Lagrange undetermined multiplier. At the maximum you have to satisfy two simultaneous differential conditions:<br>
<br>
a1/p1*dp1 + a2/p2*dp2 + .... + an/pn*dpn = 0<br>
dp1 + dp2 + dp3 + .... + dpn = 0<br>
<br>
which forces a1/p1, a2/p2, etc to all be equal. The solution then falls out easily.<br>
<br>
Roger Stafford

Sat, 29 May 2010 06:59:11 +0000
Re: Interesting optimization problem
http://nl.mathworks.com/matlabcentral/newsreader/view_thread/283347#749937
Bruno Luong
Walter Roberson <roberson@hushmail.com> wrote in message <br>
<br>
> The statement that the gradient was a./p  I'm not sure that is right when <br>
> the a(:) are different. Gradient is slope, which would be length(a)1 values <br>
> in between the other values, and the slope between positions K and K+1 would <br>
> seem to more naturally depend upon a(K) and a(K+1)<br>
<br>
You seem to missinterpret the word GRADIENT Walter. In calculus, gradient of function f(p) (from R^n to R) is the vector (df/dp1, df/dp2, ..., df/dpn). Each element is a partial derivative wrt a variable. There is nothing to do with *in between* two variables as you seem to express it.<br>
<br>
Bruno