SCvxPyGen: Autocoding SCvx Algorithm

In this paper, we address the embedded code generation for an optimal control algorithm, SCvx, which is particularly suitable for solving trajectory planning problems with collision avoidance constraints. Producing code compatible with embedded systems constraints will support the use of the SCvx al...

Full description

Saved in:
Bibliographic Details
Published inProceedings of the IEEE Conference on Decision & Control pp. 5086 - 5093
Main Authors Berrah, Danil, Chapoutot, Alexandre, Garoche, Pierre-Loic
Format Conference Proceeding
LanguageEnglish
Published IEEE 16.12.2024
Subjects
Online AccessGet full text
ISSN2576-2370
DOI10.1109/CDC56724.2024.10886875

Cover

More Information
Summary:In this paper, we address the embedded code generation for an optimal control algorithm, SCvx, which is particularly suitable for solving trajectory planning problems with collision avoidance constraints. Producing code compatible with embedded systems constraints will support the use of the SCvx algorithm in a real-time configuration. Existing uses of SCvx on drones or embedded platforms are currently handcrafted code. On the other hand, recent toolboxes such as SCPToolbox provide a simpler access to these trajectory planning algorithms, based on the resolution of a sequence of convex sub-problems. We define here a framework, in Python, enabling the automatic code generation for SCvx, in C, based on cVxpygen and the ecos solver. The framework is able to address problems involving non-convex constraints such as obstacle avoidance. This is a first step towards a more streamlined process to auto-code trajectory planning algorithms and convex optimization solvers.
ISSN:2576-2370
DOI:10.1109/CDC56724.2024.10886875