[Ipopt] What if the sparsity structure of Hessian depends on x

Xin Zhao sean.null at gmail.com
Thu Feb 14 17:44:14 EST 2013


Thanks, Stefan.

I've tried to set such a number of nonzero elements that every potential
nonzero entry can be included, but the performance became unacceptable.

Is there any option to change the sparsity structure at each iteration to
work this out?
Or maybe, it is even slower than setting a large number of nonzero entries
to change the sparsity structure at each iteration?


Best,
Xin


On Fri, Feb 15, 2013 at 1:17 AM, Stefan Vigerske
<stefan at math.hu-berlin.de>wrote:

> Hi,
>
>
> On 02/14/2013 10:48 PM, Xin Zhao wrote:
>
>> So basically I wanna to know:
>>
>> At each iteration,
>>
>> 1. Can we change the sparsity structure of Hessian?
>>
>
> No. During initialization, you should specify a sparsity structure that is
> valid during the whole solution process. You may then have to put 0 values
> into the hessian from time to time.
>
>
>  2. eval_h are called with const Ipopt::Number* x = NULL first or
>> Ipopt::Index iRow = NULL first.
>>
>
> At the beginning, Ipopt calls eval_h with x = NULL to get the sparsity
> structure. Later, it calls with x != NULL to get the values w.r.t. the
> initially specified sparsity structure.
>
> Same for the jacobian.
>
> Stefan
>
>
>>
>> Thanks.
>>
>>
>> Best,
>> Xin
>>
>>
>> On Thu, Feb 14, 2013 at 11:20 PM, Xin Zhao <sean.null at gmail.com> wrote:
>>
>>  Dear all,
>>>
>>> Would anyone like to explain me some details on the sequence how eval_h
>>> and eval_jac_g are called?
>>>
>>> At each iteration, are eval_h and eval_jac_g called first with values =
>>> NULL or not?
>>>
>>> For my case, the sparsity structure of eval_h and eval_jac_g depends on
>>> the variables x. So it matters
>>> how eval_h and eval_jac_g are called first. Or maybe there is another
>>> workout?
>>>
>>> Thanks.
>>>
>>>
>>> Best,
>>> Xin
>>>
>>>
>>
>>
>> ______________________________**_________________
>> Ipopt mailing list
>> Ipopt at list.coin-or.org
>> http://list.coin-or.org/**mailman/listinfo/ipopt<http://list.coin-or.org/mailman/listinfo/ipopt>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20130215/4fafccc9/attachment.html>


More information about the Ipopt mailing list