Commit Graph

13 Commits

Author SHA1 Message Date
Jonathan Frey 059dbf57e7 longitudinal MPC: use reset() function instead of recreating the solver in (#24091)
* scons: add acados_template as dependency for lat and long mpc

* long MPC: use acados reset instead of recreating the solver

* long MPC: print timings and reset commented

* update acados x86_64

* update acados include folder

* update acados Python interface

* update acados reference commit to latest acados/master

* update x86 libs

* update comma two

* update acados again with commit 8ea8827fafb1b23b4c7da1c4cf650de1cbd73584

* update comma two

* update comma three

* update x86

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: a9bac5acf82bcd9d3e161f829c7d446fdbdb7d2f
2022-04-01 15:39:41 -07:00
Jonathan Frey 3bd71500bd Upstreamed and update acados (#23927)
* change acados version to finalized PR https://github.com/acados/acados/pull/791

* acados: update include and x86_64 build

* acados: update pyextra

* adapt mpc files to updated acados

* acados buid: clear acados_template and include dir before updating

* update acados again

* acados MPC: only generate solver, building is done via scons

* update acados to latest acados/master

* c3 libs

* c2 libs

* acados scons files: add acados build script as a dependency

* acados scons files: add libacados.so and ocp_nlp_interface.h, build script not in files_common

* update acados

* adapts long & lat MPC file

* update acados reference commit to acados/master

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: d653dd843adbd994fce6cf4088d9cf10fdbe0c52
2022-03-11 11:49:27 +01:00
Jonathan Frey baab5d7a7b Cython acados and minor (#23835)
* acados_ocp_solver_pyx.pyx: implement get_stats for timings and ints

* long_mpc: use acados timers

* acados_ocp_solver_pyx.pyx: fix dynamics_get

* acados_ocp_solver_pyx.pyx: get statistics

* use acados_ocp_solver_pyx.pyx from commaai/cython2 branch

* acados_ocp_solver_pyx.pyx: implement store_iterate

* acados_ocp_solver_pyx.pyx: implement get_residuals

* acados_ocp_solver_pyx.pyx: fix set() for empty fields

* acados_ocp_solver_pyx.pyx: load_iterate

* cython acados: add print_statistics

* test_following_distance: fix typo

* test_longitudinal: unique names for test maneuvers

* longitudinal MPC: comments for evaluation

* longitudinal MPC: add comments to eval acados residuals

* long_mpc: use qp_solver_cond_N = 1

* long MPC: comments, simplify set_cur_state

* update acados version in build script

* longitudinal mpc: weigh a_change in 1 place only

* update ref

* Update ref

Co-authored-by: Harald Schafer <harald.the.engineer@gmail.com>
old-commit-hash: d09dffb7cd99aefb7e3c251265f2cfd9ae9e72f8
2022-02-25 14:16:44 -08:00
Jonathan Frey 6f4c93238f work on acados lateral MPC (#23558)
* lat_mpc: make v_ego, rotation_radius parameters instead of states

* lat_mpc: remove rotation_radius argument, since it is part of the parameters

* lat_mpc: use qp_solver_cond_N = 1

slightly faster and in line with case study in Fig. 2/ 3 in Frison2016 - https://cdn.syscop.de/publications/Frison2016.pdf
An Efficient Implementation of Partial Condensing for Nonlinear Model Predictive Control

* adapt test_lateral_mpc to formulation with parameters

* lat_mpc: set parameters in reset() and copy values

* acados_ocp_solver_pyx: make options_set useable

* update ref

Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: 06814748409bd8538edca1b2bcef66f15e1c3ab6
2022-01-18 09:49:48 -08:00
Joost Wooning 9042f18afd cython wrapper for acados (#22784)
* cython wrapper for acados

* fix building

* sconscript cleanup

* no cython numpy

* cleanup

* upgrade build script

* try without slices

* new acados commit

* c3 update acados libs

* c2 libs

* make faster

* undo profiling

* fix build

* somewhat faster

* tryout cost_set_slice

* Revert "tryout cost_set_slice"

This reverts commit d358d93a133270e4edab9e7c07ffb6f577c52bd6.

* cleanup

* undo t_renderer change

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 89d0a52d16872c403c69426ab32e5788a41ee2ec
2021-11-12 17:09:08 +01:00
HaraldSchafer 2d4b64ed04 Acados long fast (#22233)
* acados long

* new ref

* SPPEEEEEDDD

* less iterations

* this shouldn't be so high

* reset only essentials

* minimal reset for long mpc

* more cpu usage plannerd

* Use lead mpc even when going to crash

* reset to current state

* Use open loop speed for lead mpc

* 1 iteration is too little for cruise mpc

* add whitespace

* update refs
old-commit-hash: 66c275b71128355d634d4daf0f5c18891d4fb047
2021-09-15 19:00:12 -07:00
Harald Schafer 335089db07 fix more acados leaks
old-commit-hash: 32db9184d4cea612a12a0ab8f1948336a390c46b
2021-09-13 17:51:15 -07:00
Harald Schafer 06c018f5bf acados compiled to pyextra
old-commit-hash: de478b75fb93fc37cb414bcfe2af5fd9c6ac7364
2021-09-13 16:32:06 -07:00
Harald Schafer ab2f65e485 fix more acados mem leaks
old-commit-hash: d774087408e46149b699dbade379507d49050fa5
2021-09-13 16:25:40 -07:00
Adeeb Shihadeh db3ad9b658 update acados (#22202)
* update acados

* cleanup
old-commit-hash: 63453c951e7d125a49d8c6dc839d8f2849599b25
2021-09-11 21:50:16 -07:00
HaraldSchafer b40942ff12 Libraries for acados (#22079)
* libs

* build specific commit
old-commit-hash: 22c8564413149349ec16c0ba548601fb126af6e5
2021-08-30 18:43:33 -07:00
Adeeb Shihadeh 0b401cd9e0 support acados on device (#21409)
* build tera

* larch64

* x86

* aarch64 libs

* aarch tera

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: f85226412d10b80194c121f514c58a907a954973
2021-06-28 00:38:07 -07:00
Adeeb Shihadeh 03405b81fd acados support (#21319)
* acados support

* add pyextra to python path

* x86 libs
old-commit-hash: 6e4c2aa4d286bb43f091ad13820f564f70e4c0d7
2021-06-17 16:40:00 -07:00