Parallelisable computation of the gradient in nonlinear stochastic optimal control problems

Abstract

Nonlinear (deterministic and stochastic) optimal control problems are often solved on embedded devices using first-order numerical optimisation methods. The gradient computation accounts for a significant part of the computation cost per iteration; this is often performed with reverse-mode automatic differentiation and software libraries such as CasADi can be used to generate C code for this computation. In this paper, we propose a simple ad hoc and highly parallelisable algorithm for the computation of the gradient of the total cost for deterministic and stochastic scenario-based optimal control problems. We also present gradgen: an open-source Python package that generates Rust code for the gradient computation. The proposed method leads to a faster performance compared to CasADi and a significant reduction in generated code.

0

Turn this paper into a lesson

ArcXiv compiles a structured reading guide from this paper's metadata: plain-English importance, contributions, prerequisite concepts, which sections to read first, flashcards, and a quiz. Grounded in the abstract, never invented.

Discussion (0)

Sign in to join the discussion.

Loading comments…