v0.4.4
Highlights
- New
nlp_solver_type
:SQP_WITH_FEASIBLE_QP
, see #1444 - Solution of smoothed KKT systems, see option
tau_min
and #1439 - Improved solution sensitivity functionality, see function
setup_qp_matrices_and_factorize
#1434
What's Changed
- Fix detect constraint for python interface by @aghezz1 in #1393
- MATLAB: fix getter for QP values at terminal stage by @sandmaennchen in #1394
- MATLAB/Python: Add check whether
p_global
is defined, butglobal_data
is empty by @sandmaennchen in #1396 - Python: Cleanup code generation, sim solver by @sandmaennchen in #1397
- Python: update setup.py by @sandmaennchen in #1400
- Python: use context for temporarily changing directory by @sandmaennchen in #1399
- C interface/Python: Getter for numerical values by @sandmaennchen in #1395
- Simulink: Fix
nh_total
dimension in sfunction by @sandmaennchen in #1403 - Python:
build
andgenerate
flags for batch solvers by @sandmaennchen in #1404 - C/Python: Fix solver status in batch solve by @sandmaennchen in #1405
- MATLAB: Use flat getters and setters by @sandmaennchen in #1406
- MATLAB/Python: Cleanup examples by @sandmaennchen in #1409
- MATLAB: Migrate test to new interface by @sandmaennchen in #1411
- Simulink: More effiicient setters/getters using flat format by @sandmaennchen in #1410
- Evaluator by @RudolfReiter in #1402
- MATLAB: no
quit()
by @sandmaennchen in #1412 - Add ACADOS_WITH_SYSTEM_BLASFEO CMake option (by default OFF) to use an external blasfeo instead of building an internal copy of blasfeo by @traversaro in #1408
- C: More total dimension getters by @sandmaennchen in #1416
- MATLAB/C: more flat setters in interface by @sandmaennchen in #1417
- MATLAB: Fix dimension in setter for
W
by @sandmaennchen in #1418 - MATLAB: flat setter example by @sandmaennchen in #1420
- MATLAB/Python: New option to expand CasADi function to SX before code generating by @sandmaennchen in #1419
- CasADi codegen option to avoid unneeded sparsity patterns in MATLAB by @jgillis in #1421
- Follow-up on CasADi
force_canonical
#1421 by @FreyJo in #1424 - Update documentation & contributor list by @FreyJo in #1423
- Simulink: compute n_outputs correctly, taking ifs into account by @FreyJo in #1422
- Remove constraint dimensions from
ocp_nlp_cost_dims_get_from_attr
by @FreyJo in #1425 - Bump jinja2 from 3.1.4 to 3.1.5 in /docs by @dependabot in #1407
- Rename acados main branch: master -> main by @FreyJo in #1427
- QP warm-start in first NLP solver iteration by @FreyJo in #1428
- C: allow using differnt QP solvers in
ocp_nlp_solve_qp_and_correct_dual
by @FreyJo in #1429 - S-function hotfix: swap p_global and p_traj in template by @FreyJo in #1430
- Work on sensitivity solver: add
setup_qp_matrices_and_factorize
and more by @FreyJo in #1432 - Options getter for QP solvers, backup opts in
setup_qp_matrices_and_factorize
by @FreyJo in #1434 - Fix
qp_solver_mu0
in multi-phase template by @FreyJo in #1435 - Quadrotor example: use one-sided constraint and some cleanup by @FreyJo in #1437
- Github Actions: switch to ubuntu-22.04 by @FreyJo in #1438
- Fix
multiphase_nonlinear_constraints
example wrtACADOS_INFTY
, add checks by @FreyJo in #1436 - C templates/MATLAB/Python: OCPs with
p_global
and noglobal_data
by @sandmaennchen in #1401 - Update
print_iterations
by @david0oo in #1440 - Solve relaxed KKT conditions and compute corresponding sensitivities by @FreyJo in #1439
- MATLAB: check when updating
nlp_solver_max_iter
by @FreyJo in #1442 - Fix AS-RTI-C by @FreyJo in #1443
- Fix adjoint sensitivity timings by @FreyJo in #1445
- Python: fixes regarding x0 constraint and sanity checks by @FreyJo in #1446
- Ignore equalities when evaluating complementarity residual if
tau_min > 0
by @FreyJo in #1448 - Improve docstrings for warm start options by @Confectio in #1447
- Fix
acados_batch_setup_qp_matrices_and_factorize
by @FreyJo in #1449 - Solution sensitivity examples by @FreyJo in #1451
- Fix type hints in chain_mass solution sensitivity example by @dirkpr in #1452
- Remove: no global data warnings by @JasperHoffmann in #1459
- Condensing: call
d_cond_qp_expand_sol
with options asd_cond_qp_expand_primal_sol
was removed in HPIPM by @FreyJo in #1457 - Implement adaptive epsilon for regularizations:
MIRROR
andPROJECT
by @FreyJo in #1462 - Use dedicated routine to solve for adjoint solution sensitivities by @FreyJo in #1454
- Python:
detect_cost_type
by @josipkh in #1461 - New
nlp_solver_type
:SQP_WITH_FEASIBLE_QP
by @david0oo in #1444 - Compute size of globalization memory correctly by @FreyJo in #1464
- Logging and priniting of multipliers in
SQP_WITH_FEASIBLE_QP
by @david0oo in #1466
New Contributors
- @RudolfReiter made their first contribution in #1402
- @traversaro made their first contribution in #1408
- @dependabot made their first contribution in #1407
- @Confectio made their first contribution in #1447
- @JasperHoffmann made their first contribution in #1459
Full Changelog: v0.4.3...v0.4.4