Problem with regularization method project_reduc_hess

Hi,

setting the regularization method to ‘project_reduc_hess’ crashes Matlab. Maybe a bug?

The last entries of the stack trace are:

Stack Trace (from fault):
[  0] 0x00007fb79d8b8509     /home/martin/Programs/acados/lib/libblasfeo.so+00177417 blasfeo_dgead+00000009
[  1] 0x00007fb79df85d55      /home/martin/Programs/acados/lib/libacados.so+00183637 ocp_nlp_reg_project_reduc_hess_regularize_hessian+00001349
[  2] 0x00007fb79df87bdf      /home/martin/Programs/acados/lib/libacados.so+00191455 ocp_nlp_sqp+00002367
[  3] 0x00007fb79dfb16c5      /home/martin/Programs/acados/lib/libacados.so+00362181 ocp_nlp_solve+00000037

BR
Martin

1 Like

Hi Martin,

could you post a minimal example to reproduce this somewhere?
Just from the stack trace, it is not clear what the problem is.

Best,
Jonathan

Hi Jonathan,

unfortunately I could not find a minimal example where I can reproduce the error so far.

However, while experimenting with the Matlab/Octave example “masses_chain_model/example_closed_loop” I found a parameter combination which causes a Matlab crash during build-time instead of the crash during solver runtime which happens in my project. The stack trace is completely different, so I guess it has nothing to do with my original problem.

Uncommenting

ocp_nlp_solver = 'sqp';
regularize_method = 'project_reduc_hess';

in the above mentioned file leads to the crash on my machine.

BR
Martin

Hi Martin,

In what you reported, the example crashes due to:

	ocp.set('rti_phase', 1);
	ocp.solve();
	ocp.set('rti_phase', 2);

which does not make sense for SQP, only for SQP_RTI.
I added a check for this yesterday, so it should already be fixed on acados/master.

Best,
Jonathan

What are those “rti_phases”? Is this documented somewhere?

Best
Martin

Not on the webpage yet, but in the Code, e.g. here:

rti_phase = 0; % RTI phase: (1) preparation, (2) feedback, (0) both

The Matlab crash with regularization method ‘project_reduc_hess’ does not occur any more. It seems that it has been incidentally fixed by one of your last commits.

Greetings
Martin

1 Like