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.