arXiv reader

Analytic Optimal Control for a Class of Driftless x-Flat Systems

Raphael Buchinger, Georg Hartl, Lukas Ecker and Markus Schöberl

arXiv
2604.02249v2 · PDF · 5 April 2026
Categories
math.OC, math.DS
Licence
CC BY 4.0 The site shows the text.

Abstract

This paper studies optimal trajectory-tracking for driftless, x-flat nonlinear systems with three states and two inputs. The tracking problem is formulated in Bolza form with a quadratic cost of the tracking error and its derivative. Applying Pontryagin’s maximum principle yields a mixed regular-singular optimal control problem. By exploiting geometric properties and a specific relation between the weighting matrices, a closed-form expression for the costate and an explicit feedback law for both inputs is derived. Thereby, the numerical solution of a two-point boundary-value problem is avoided. The singular input leads to a bang-singular-bang optimal control structure, while on the singular arc, the tracking error dynamics reduces to a linear dynamics of order two. The approach is illustrated for the kinematic model of a steerable axle, demonstrating accurate trajectory-tracking.

Items 2

Theorem

Theorem IV.1

80VD

Consider the system eq:system together with the OCP eq:opt_problem, with the cost functional eq:cost_functional and the associated terminal and running costs eq:terminal_cost and eq:running_cost. The components of the costate \lambda \in \mathcal{T}^*(\mathcal{M}) on the singular arc are given by

\begin{aligned} \lambda_k = -e^i\bar{Q}_{ij}\partial_{x^k}\varphi^j = \dot{e}^iM_{ij}\partial_{x^k}\varphi^j \, \end{aligned}

with Q_{ij} = \bar{Q}_{il}M^{lm}\bar{Q}_{mj}.

Theorem

Theorem IV.2

37SD

Consider a system of the form

\begin{aligned} \dot{x} = g_1(x)u^1 + g_2(x)u^2 \,, \end{aligned}

with \dim(x)=3 and the OCP eq:opt_problem, with the cost functional eq:cost_functional and the associated terminal and running costs eq:terminal_cost and eq:running_cost. An optimal solution candidate is given by

\begin{aligned} u^1 = \begin{cases} \operatorname{sgn}(u^1_{\text{sing}})\,u^1_{\max}, & |u^1_{\text{sing}}| \geq u^1_{\max},\\ u^1_{\text{sing}}, & \text{otherwise} \end{cases} \end{aligned}
\begin{aligned} u^2 = \begin{cases} \operatorname{sgn}(\dot{\xi}_2)\,u^2_{\max}, & \dot{\xi}_2 \neq 0\,,\\ \operatorname{sgn}(u^2_{\text{sing}})\,u^2_{\max} &|u^2_{\text{sing}}| \geq u^2_{\max}\,\text{and}\, \dot{\xi}_2 = 0\\ u^2_{\text{sing}}, & \text{otherwise,} \end{cases} \end{aligned}

with

\scalebox{0.92}{\mbox{\ensuremath{\displaystyle \begin{aligned} u^1_{\text{sing}} &= \frac{\Big[\dot{y}_d^iM_{ij} + e^i\bar{Q}_{ij}\Big]\mathrm{L}_{g_1}\varphi^j}{A_{11}} \quad u^2_{\text{sing}} = \frac{A_{11}b_2-A_{21}b_1}{(A_{12}A_{21}-A_{11}A_{22})u^1} \end{aligned}}}}

where

\scalebox{0.92}{\mbox{\ensuremath{\displaystyle \begin{aligned} A_{11} &= \mathrm{L}_{g_1}\varphi^iM_{ij}\mathrm{L}_{g_1}\varphi^j \qquad \qquad A_{12} = \mathrm{L}_{[g_1,g_2]}\varphi^iM_{ij}\mathrm{L}_{g_1}\varphi^j \\ A_{21} &= \mathrm{L}_{g_1}\varphi^iM_{ij}\mathrm{L}_{[g_1,g_2]}\varphi^j \qquad \,\, A_{22} = \mathrm{L}_{[g_1,g_2]}\varphi^iM_{ij}\mathrm{L}_{[g_1,g_2]}\varphi^j \\ b_1 &= ((\ddot{y}_d^i - \mathrm{L}_{g_1}^2\varphi^i(u^1)^2)M_{ij} - e^iQ_{ij})\mathrm{L}_{g_1}\varphi^j\\ b_2 &= ((\ddot{y}_d^i - \mathrm{L}_{g_1}^2\varphi^i(u^1)^2)M_{ij} - e^iQ_{ij})\mathrm{L}_{[g_1,g_2]}\varphi^j\, \end{aligned}}}}

and Q_{ij} = \bar{Q}_{il}M^{lm}\bar{Q}_{mj} providing u^1 \neq 0, and eq:system_th is x-flat.

Source and licence

The text on this page is from arXiv:2604.02249v2 by Raphael Buchinger, Georg Hartl, Lukas Ecker and Markus Schöberl, under the licence CC BY 4.0. The corpus made these changes: it read the items out of the LaTeX source, it expanded the macros of the paper, it put each proof after its statement, and it converted the text to HTML. The formulas are the TeX of the paper, and KaTeX renders them. A formula or a reference can look different from the PDF. The page is published under CC BY 4.0.

The record of each item is in analysis/objects/2604/2604.02249.jsonl.