Базовые понятия вариационного исчисления
дата публикации: 2016-07-20

Знание основ вариационного исчисления необходимо для понимания оптимального управления сложными динамическими системами, поэтому, прежде чем начинать строить какой-либо управляющий алгоритм, настоятельно рекомендую ознакомиться с этим материалом.

Функционалом (базовое понятие вариационного исчисления) называется некая сущность, которая позволяет функции x_i(t) \in \Omega, i \in (0..n) ставить в соответствие число. Это число определяет насколько функция обладает определенными свойствами. Как правило требуется найти такую функцию, соответствующее число для которой минимально(максимально). Функция задается на каком либо интервале [a,b] в пространстве с заданной метрикой. В вариационном исчислении пространство C_k принято задавать следующей метрикой:

\rho(x_1, x_2) = \sum_{i=0}^k \max_{a \le t \le b } \left | \frac{d^i x_1(t)}{dt^i} - \frac{d^i x_2(t)}{dt^i} \right |,

которая говорит о близости самих функций и производных соответствующего порядка. На практике наиболее применимые метрики C_0=C и C_1.

Все знают что такое приращение аргумента и приращение функции, которое при устремлении шага к нулю переходит в так называемый дифференциал. Для функционала дифференциал аргумента определяется соотношением \delta x(t) = \alpha \cdot \eta(t), где \eta(t) принадлежит к тому же классу функций что и x(t) , \alpha - параметр. Тогда справедлива следующая формула:

x(t) = \widehat x(t) + \delta x(t) = \widehat x(t) + \alpha \cdot \eta(t),

где \widehat x(t) - некая функция, окрестность которой исследуется, x(t) - множество функций окрестности.

Вариация k порядка для функционала в таком случае определяется соотношением:

\delta^k J = \frac{d^k}{d \alpha^k} J \left [ \widehat x(t) + \alpha \cdot \eta(t) \right],

при \alpha = 0.

Далее рассмотрим вариационную задачу на условный минимум (общая задача Лагранжа), формулируемую следующим образом:

\begin{cases} & J \left( \bf X(t) \right) = \int_{t_0}^{t_k} F \left( t,\bf X(t),\bf \dot X(t) \right) dt, \\ & \phi_i \left( t, \bf X(t), \bf \dot X(t) \right) = 0, i \in (1..m), m < n, \\ & \bf X(t_0) = \bf X_0, \\ & \bf X(t_k) = \bf X_k, \\ & \bf X(t) = [x_1(t), x_2(t)..x_n(t)]. \end{cases}

Введем уравнения phi_i \left( t, \bf X(t), \bf \dot X(t) \right) = 0 под интеграл для чего воспользуемся так называемыми множителями Лагранжа \lambda_i(t) , результирующий функционал будет иметь следующий вид:

G \left( \bf X(t), \bf \Lambda(t) \right) = \int_{t_0}^{t_k} \left[ F \left( t,\bf X(t),\bf \dot X(t) \right) + \sum_{i = 1}^{m} \lambda_i(t) \cdot \phi_i \left( t, \bf X(t), \bf \dot X(t) \right) \right] dt,

где \bf \Lambda(t) = [\lambda_1(t), \lambda_2(t)..\lambda_m(t)].

Для решения задачи, воспользуемся выведенным ранее соотношением для множества функций окрестности решения, которая будет определяться в виде: x_j(t) = \widehat x_j(t) + \alpha_j \cdot \eta_j(t). Теперь вычислим производные функционала по \alpha_j и \lambda_i(t) в итоге должно получиться n+m уравнений, из которых определяются n функциональных зависимостей, элементов вектора \bf X(t) и m функциональных зависимостей, элементов вектора \bf \Lambda(t). Сначала вычислим производные по \alpha_j для следующего выражения \int_{t_0}^{t_k} F \left( t,\bf X(t),\bf \dot X(t) \right) dt.

\frac{d}{d \alpha_j} \int_{t_0}^{t_k} F \left( t,\bf X(t),\bf \dot X(t) \right) dt = \int_{t_0}^{t_k} \frac{d}{d \alpha_j} F \left( t,\bf X(t),\bf \dot X(t) \right) dt = \int_{t_0}^{t_k} \left[ \frac{dF}{d x_j} \cdot \eta(t) + \frac{dF}{d \dot x_j} \cdot \dot \eta(t) \right] dt.

Для выражения \int_{t_0}^{t_k} \sum_{i = 1}^{m} \lambda_i(t) \cdot \phi_i \left( t, \bf X(t), \bf \dot X(t) \right) dt производная примет вид:

\begin{aligned} & \frac{d}{d \alpha_j} \int_{t_0}^{t_k} \sum_{i = 1}^{m} \lambda_i(t) \cdot \phi_i \left( t, \bf X(t), \bf \dot X(t) \right) dt = \int_{t_0}^{t_k} \sum_{i = 1}^{m} \lambda_i(t) \cdot \frac{d}{d \alpha_j} \phi_i \left( t, \bf X(t), \bf \dot X(t) \right) dt = \\ & = \int_{t_0}^{t_k} \sum_{i = 1}^{m} \lambda_i(t) \cdot \left[ \frac{d \phi_i}{d x_j} \cdot \eta(t) + \frac{d \phi_i}{d \dot x_j} \cdot \dot \eta(t) \right] dt. \end{aligned}

В соответствии с формулами интегрирования по частям и граничными условиями \eta(t_0)=\eta(t_k)=0, справедливы следующие соотношения:

\int_{t_0}^{t_k} \frac{dF}{d \dot x_j} \cdot \dot \eta(t) dt = \left. \frac{dF}{d \dot x_j} \cdot \eta(t) \right|_{t_0}^{t_k} - \int_{t_0}^{t_k} \frac{d}{dt} \frac{dF}{d \dot x_j} \cdot \eta(t) dt = - \int_{t_0}^{t_k} \frac{d}{dt} \frac{dF}{d \dot x_j} \cdot \eta(t) dt, \begin{aligned} & \int_{t_0}^{t_k} \lambda_i(t) \cdot \frac{d \phi}{d \dot x_j} \cdot \dot \eta(t) dt = \left. \lambda_i(t) \cdot \frac{d \phi}{d \dot x_j} \cdot \eta(t) \right|_{t_0}^{t_k} - \int_{t_0}^{t_k} \frac{d}{dt} \left( \lambda_i(t) \cdot \frac{d \phi}{d \dot x_j} \right) \cdot \eta(t) dt = \\ & = - \int_{t_0}^{t_k} \frac{d}{dt} \left( \lambda_i(t) \cdot \frac{d \phi}{d \dot x_j} \right) \cdot \eta(t) dt. \end{aligned}

Таким образом, обобщенным решением задачи Лагранжа, минимизирующим функционал будут следующие соотношения:

\begin{cases} & \frac{dF}{d x_j} - \frac{d}{dt} \frac{dF}{d \dot x_j} + \sum_{i = 1}^{m} \left[ \lambda_i(t) \cdot \frac{d \phi_i}{d x_j} - \frac{d}{dt} \left( \lambda_i(t) \cdot \frac{d \phi}{d \dot x_j} \right) \right] = 0, j \in (1..n), \\ & \phi_i \left( t, \bf X(t), \bf \dot X(t) \right) = 0, i \in (1..m), \\ & \bf X(t_0) = \bf X_0, \\ & \bf X(t_k) = \bf X_k. \end{cases}