Commit Graph

16 Commits

Author SHA1 Message Date
Jonathan Frey
a9bac5acf8 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>
2022-04-01 15:39:41 -07:00
Jonathan Frey
d653dd843a 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>
2022-03-11 11:49:27 +01:00
Jonathan Frey
d09dffb7cd 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>
2022-02-25 14:16:44 -08:00
Jonathan Frey
0681474840 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>
2022-01-18 09:49:48 -08:00
Joost Wooning
89d0a52d16 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>
2021-11-12 17:09:08 +01:00
HaraldSchafer
66c275b711 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
2021-09-15 19:00:12 -07:00
Harald Schafer
32db9184d4 fix more acados leaks 2021-09-13 17:51:15 -07:00
Harald Schafer
de478b75fb acados compiled to pyextra 2021-09-13 16:32:06 -07:00
Harald Schafer
d774087408 fix more acados mem leaks 2021-09-13 16:25:40 -07:00
Adeeb Shihadeh
63453c951e update acados (#22202)
* update acados

* cleanup
2021-09-11 21:50:16 -07:00
HaraldSchafer
22c8564413 Libraries for acados (#22079)
* libs

* build specific commit
2021-08-30 18:43:33 -07:00
Adeeb Shihadeh
f85226412d support acados on device (#21409)
* build tera

* larch64

* x86

* aarch64 libs

* aarch tera

Co-authored-by: Comma Device <device@comma.ai>
2021-06-28 00:38:07 -07:00
Adeeb Shihadeh
6e4c2aa4d2 acados support (#21319)
* acados support

* add pyextra to python path

* x86 libs
2021-06-17 16:40:00 -07:00
Adeeb Shihadeh
bbb6fa1172 Remove logentries from pyextra (#1721)
* remove logentries from pyextra

* update release files

* gitignore
2020-06-18 11:48:28 -07:00
Willem Melching
7b0977dcfd remove overpy from pyextra 2020-04-24 14:27:05 -07:00
George Hotz
3fe9bbe665 merge in pyextra 2020-01-17 10:08:05 -08:00