robotoc
robotoc - efficient ROBOT Optimal Control solvers
|
The following three solvers are available:
robotoc::OCPSolver
: Optimal control solver for robot systems with rigid contacts and/or a floating base. This solver can optimize the trajectory and switching times simultaneously.robotoc::UnconstrOCPSolver
: Optimal control solver for robot systems without rigid contacts or a floating base. More efficient than robotoc::OCPSolver
.robotoc::UnconstrParNMPCSolver
: Optimal control solver for robot systems without rigid contacts or a floating base. Possibly very efficient when the number of available CPU cores is very large.The common features in mathematical formulation, algorithms, and implementation among these three solvers are as follows:
robotoc::Robot
) via URDF files.robotoc::CostFunctionComponentBase
.robotoc::CostFunction
robotoc::ConstraintComponentBase
or robotoc::ImpactConstraintComponentBase
.robotoc::Constraints
robotoc::OCPSolver
is an optimal control solver for robot systems with rigid contacts and/or a floating base. This is the main solver of robotoc
. The unique features of robotoc::OCPSolver
are:
robotoc::ContactSequence
interface enables us to formulate the complicated optimal control problems involving changes of dynamics and state jumps due to rigid contacts.TODO
TODO
robotoc::UnconstrOCPSolver
is an optimal control solver for robot systems without rigid contacts or a floating base. This is recommended than robotoc::OCPSolver
for such systems. The unique features of robotoc::UnconstrOCPSolver
are:
robotoc::UnconstrOCPSolver
and robotoc::OCPSolver
.TODO
TODO
robotoc::UnconstrParNMPCSolver
is an optimal control solver for robot systems without rigid contacts or a floating base. This is recommended than robotoc::UnconstrOCPSolver
if the available number of CPU cores are very large. The unique features of robotoc::UnconstrParNMPCSolver
are:
TODO
TODO
[1] H. Bock and K. Plitt, "A multiple shooting algorithm for direct solution of optimal control problems," in 9th IFAC World Congress, pp.1603–1608, 1984.
[2] J. B. Rawlings, D. Q. Mayne, and M. Diehl, Model Predictive Control: Theory, Computation, and Design, 2nd edition, Nob Hill Publishing, 2017.
[3] J. Nocedal and S. J. Wright, Numerical Optimization, 2nd edition, Springer, 2006.
[4] C. Rao, S. J. Wright, and J. B. Rawlings, "Application of interior-point methods to model predictive control," Journal of Optimization Theory and Applications, vol. 99, no. 3, pp. 723–757, 1998.
[5] H. Deng and T. Ohtsuka, "A parallel Newton-type method for nonlinear model predictive control," Automatica, Vol. 109, pp. 108560, 2019.
[6] J. Carpentier and N. Mansard, "Analytical derivatives of rigid body dynamics algorithms," Robotics: Science and Systems, 2018.
[7] S. Katayama and T. Ohtsuka, "Lifted contact dynamics for efficient optimal control of rigid body systems with contacts," 2022 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (to appear), https://arxiv.org/abs/2108.01781, 2022
[8] S. Katayama and T. Ohtsuka, "Structure-exploiting Newton-type method for optimal control of switched systems," https://arxiv.org/abs/2112.07232, 2021.
[9] S. Katayama and T. Ohtsuka, "Efficient Riccati recursion for optimal control problems with pure-state equality constraints," 2022 American Control Conference (ACC), pp. 3579-3586, 2022
[10] S. Katayama and T. Ohtsuka, "Efficient solution method based on inverse dynamics for optimal control problems of rigid body systems," 2021 IEEE International Conference on Robotics and Automation (ICRA), pp.2070-2076, 2021.