Date: Jan 28, 2013 2:23 AM
Author: Torsten
Subject: Re: Fminunc with logarithmic function
"Ravi" wrote in message <kdut20$ct7$1@newscl01ah.mathworks.com>...

> I am trying to solve the following optimization problem

>

> min_x w^Tx +log(1-||x||^2).

>

> I invoke fminunc to solve this optimization problem. I provide gradient information also, and start at the all 0's vector. However the solution that is being returned to me ,x*, has norm much larger than 1.

>

> The only way I know to resolve this issue is by using fmincon. In this case I provide the same objective, and also provide the non-linear constraint ||x||\leq 1. The solution returned by fmincon is inside the ball, but the time taken by fmincon is much much larger than fminunc. So is there a way that I can use fminunc and still derive valid solutions? Perhaps if there is a way to capture the iterates generated by fminunc, then I may use the last iterate generated by fminunc that is still within the ball. But, then I do not know how to capture the iterates generated by running fminunc.

>

> Any help will be appreciated.

Your problem does not have a solution since log(1-||x||^2) -> -oo as

||x||->1.

Best wishes

Torsten.