# [Ipopt] Convergence issues

Miguel Angel Salazar de Troya salazardetroya at gmail.com
Fri Mar 13 16:45:15 EDT 2015

```I fixed it partially. The derivative of the p-norm doesn't exist at zero so
I had to be careful with that. I also introduced a scale factor for the
objective function before the penalty term. This way the convergence is
faster and inf_du is more reasonable. The problem is that I'm not able to
reach the same minima I was achieving before, which is better than the one
I have now. If I change that scale factor to a number between 5 and 10, the
inf_du goes nuts again.

On Fri, Mar 13, 2015 at 10:03 AM, Miguel Angel Salazar de Troya <
salazardetroya at gmail.com> wrote:

> Thanks for your response. My objective function is a double p-norm. I have
> a solid mechanics problem in time and space and I want to get the maximum
> value of a quantity over time and space, hence the double p-norm with a
> high p coefficient (14). My variables are the material properties.
> Something like topology optimization, but just at specific locations. The
> variables change from 0.001 to 1. It's 0.001 to avoid singularities in the
> simulation.
>
> I get such a high dual infeasibility when my initial values are 0.5 and
> the problem is unconstrained (although I have the penalty function to drive
> the solution to a 0.001-1 layout) Imposing a volume constraint (making the
> sum of the variables equal to a certain value) doesn't result in such a
> high dual infeasibility, although still high (~1e9). For the unconstrained
> case, starting with an initial value different than 0.5 results in an
> inf_du value around 1e6. Also important, if a variable's initial value is
> less than 0.5, the optimal value will be always 0, if it is greater than
> 0.5, the optimal value will be always 1. The gradient of the objective
> function without the penalty term is of the order of 1e-2 for all the
> variables. Is the penalty term dominating the convergence because of this?
> If I scale the objective function before applying the penalty term I will
> get better results?
>
> Miguel
>
> On Thu, Mar 12, 2015 at 2:52 PM, Greg Horn <gregmainland at gmail.com> wrote:
>
>> Your dual infeasibility is off the charts. Something is really off. It
>> would help if you describe your problem more, or give a similar problem.
>>
>> On Tue, Mar 10, 2015 at 8:05 PM Miguel Angel Salazar de Troya <
>> salazardetroya at gmail.com> wrote:
>>
>>> Hi
>>>
>>> I'm trying to optimize an unconstrained problem with a penalty function.
>>> My goal is to obtain either 0 or 1 for the variables and the penalty term
>>> takes care of this.
>>>
>>> The optimization eventually converges, but at the beginning, for each
>>> iteration, the objective function is evaluated many times, over 50 times.
>>> For each iteration, I obtain an output like this:
>>>
>>> iter objective             inf_pr        inf_du     lg(mu)   ||d||
>>>   lg(rg)  alpha_du   alpha_pr ls
>>>    5  1.4656145e+04 0.00e+00 1.29e+53  -0.1   8.80e+92  -5.4    8.88e-95
>>>    2.08e-148f172 FqsWSWs
>>>
>>> Any idea of what's going on and how I could make it converge faster?
>>>
>>> Miguel
>>>
>>> --
>>> *Miguel Angel Salazar de Troya*
>>> Department of Mechanical Science and Engineering
>>> University of Illinois at Urbana-Champaign
>>> (217) 550-2360
>>> salaza11 at illinois.edu
>>>
>>>  _______________________________________________
>>> Ipopt mailing list
>>> Ipopt at list.coin-or.org
>>> http://list.coin-or.org/mailman/listinfo/ipopt
>>>
>>
>
>
> --
> *Miguel Angel Salazar de Troya*
> Department of Mechanical Science and Engineering
> University of Illinois at Urbana-Champaign
> (217) 550-2360
> salaza11 at illinois.edu
>
>

--
*Miguel Angel Salazar de Troya*