функан      
вариационное исчисление исследует вариации функционалов

вариационное исчисление

  • линейный функционал
  • вариационная задача
  • задачи, приводящие к вариационному исчислению
  • простейшая вариационная задача
  • отыскание геодезических
  • задача о брахистохроне
  • задача о катиноиде
  • задача Дидо
  • задача лодочника
  • задача оптимального управления
  • динамическое программирование Беллмана (дискретные процессы)
  • максимум Понтрягина (непрерывные процессы)
  • задача быстродействия
  • задача оптимизации расхода топлива
  • задача оптимизации преследования

  •  


    В.И.Опойцев

    линейный функционал

    отображение Ф векторного пространства Vn во множество скаляров, обладающее следующим свойством:
    
           Ф (k₁ * X  +  k₂ * Y)      =      k₁ * Ф (X)   +   k₂ * Ф (Y)
    
    
    для любых скаляров k₁, k₂ и любых векторов X, Y ∈ Vn называется линейным функционалом

    для гильбертова (полного, с нормой) пространства векторов линейный функционал можно трактовать как скалярное произведение векторов

    пространство линейных функционалов является дуальным пространством к пространству векторов, а конкретный представитель является ковектором к вектору из пространства векторов

     


    В.И.Опойцев

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

     


    В.И.Опойцев

    уравнение Эйлера-Лагранжа

    для функционала

                  t2
            Ф  =  ∫ L(x , x' , t)dt
                 t1
    
    уравнение
            d/dt (∂L/∂x')  -  ∂L/∂x  =  0
    
    называется уравнением Эйлера-Лагранжа

    вариационная задача

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

    содержанием вариационного исчисления является обобщение понятия дифференциала (производной) функции конечномерного векторного аргумента на случай функционала. при этом аналогом первого дифференциала является в вариационном исчислении первая вариация:

        ∂Ф = Ф (f + δf) - Ф (f)
    
    как и в случае дифференциала имеется в виду линейная часть этого приращения: δf выбирается бесконечно малой, и при вычислении разности отбрасываются бесконечно малые высших порядков. при этом δf называется вариацией f

    задачи, приводящие к вариационному исчислению

    простейшая вариационная задача

    есть:

    требуется выбрать такую g, чтобы

              x₂ 
        I  =  ∫  Ф(x, y, y') dx
             x₁
    
    был минимален

    уравнение Эйлера-Лагранжа для этой задачи будет иметь вид:

    
              ∂Ф/∂y - d/dx (∂Ф/∂y') = 0
    
    

    решение этого уравения (если оно однозначно) и будет минимизирующей функцией y = g(x)

    это уравнение - второго порядка и его решение зависит от двух начальных состояний: y(x₀) и y(x₁)

    минимальный I инвариантен относительно системы координат

    преобразование Лежандра

    преобразованием Лежандра функции f(x) называется функция g(p) такая, что

        F(p,x) = p*x - f(x)
    
        g(p) = F(p, x₀(p))
      
    где точка x₀(p) определяется из условия ∂F/∂x = 0 т.е. f'(x) = p

    если f(x) - выпуклая, то такая точка x₀ единственна (или не существует)

    преобразование Лежандра инволютивно, т.е. применненое дважды равно тождественному

    две функции f и g, являющиеся преобразованиями Лежандра друг друга, называются двойственными (conjugate functions) по Юнгу

    неравенство Юнга: x * y ≤ f(x) + g(y)

    после преобразования Лежандра лагранжева система второго порядка переходит в систему уравнений первого порядка - систему уравнений Гамильтона:

        p' = ∂L/∂q  , p = ∂L/∂q'  ,  L : ℝⁿ ✗ ℝⁿ ✗ ℝⁿ → ℝ
    
        p' = -∂H/∂q , q' = ∂H/∂p  ,  H(p, q, t) = p * q'  -  L(q, q', t)
      

    в частности, в механике Ньютона функция Гамильтона H есть полная энергия: H = K + U

    чтобы линеаризировать лагранжеву систему в окрестностях положения равновесия q=0 достаточно заменить кинетическую энергию K = 1/2 * Σ aij(q)ζiζj ее значением при q=0 K = 1/2 * Σ aij(0)ζiζj, а потенциальную энергию U ее квадратической частью U = 1/2 * Σ bij(0)qiqj , bij = ∂²U/∂qi∂qj при q=0

    движения в линеаризированной системе называются малыми колебаниями вблизи положения равновесия q = q₀

    лагранжева система, совершающая малые колебания, распадается в прямое произведение систем с одной степенью свободы


    классические вариационные задачи

    отыскание геодезических

    пусть фиксированы две точки некоторой гладкой поверхности P, заданной уравнением

            p (x, y, z) = 0
    
    что представляет собой кривая наименьшей длины, лежащая на данной поверхности P и соединяющая наперед заданные две точки этой поверхности (геодезическая) ?

    выразим квадрат длины малого отрезка такой кривой как:

            ds2 = dx2 + dy2 + dz2
    
    положим, что поверхнсть P может быть параметризирована т.е. любая ее точка может быть представлена двумя координатами: u и v. тогда

            dx = ∂x/∂u du + ∂x/∂v dv 
    
            dy = ∂y/∂u du + ∂y/∂v dv 
    
            dz = ∂z/∂u du + ∂z/∂v dv 
    

    и значит

      ds2  =  ∇u2 d2u  +  2 * (∂x/∂u ∂x/∂v) * (∂y/∂u ∂y/∂v) * (∂z/∂u ∂z/∂v)  +  ∇v2 d2v
    
    а длина всей дуги между двумя точками задается интегралом:
        v2  u2
        ∫   ∫  √ [∇u2 d2u  +  2 * (∂x/∂u ∂x/∂v) * (∂y/∂u ∂y/∂v) * (∂z/∂u ∂z/∂v)  +  ∇v2 d2v] du dv
       v1  u1
    

    пусть ∃ множество M функций двух переменных: ∀ f ∈ M => f(u, v) ∈ P

    тогда нахождение геодезической сводится к нахождению такой g ∈ M, которая минимизирует величину интеграла

    задача о брахистохроне (1696 г.)

    даны две точки А и В в вертикальной плоскости. для частицы М требуется найдти путь, опускаясь по которому из точки А в точку В под действием силы тяжести, частица затратит минимальное время

    задача о катиноиде

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


    вариационные задачи с неклассическими ограничениями

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

    рассмотрим управляемый объект, снабжённый "рулями". манипулируя "рулями" (в пределах имеющихся ресурсов), мы определяем движение объекта, управляем им. для того чтобы знать, как именно ведёт себя объект при том или ином управлении, необходимо иметь закон движения, описывающий динамические свойства объекта и устанавливающий для каждого манипулирования "рулями" эволюцию состояния объекта. возможности управлять объектом лимитируются не только ресурсами управления, но и тем, что в процессе движения объект не должен попадать в состояния, физически недоступные или недопустимые

    стремятся так манипулировать "рулями", чтобы из начального состояния достичь некоторого желаемого конечного состояния. (как правило) существует много способов управлять объектом так, чтобы реализовать цель управления и в связи с этим возникает задача найти такой способ управления, который позволяет достичь желаемого результата наилучшим, оптимальным образом в смысле определённого критерия (за наименьшее время или с минимальным расходом ресурсов)

    задача Дидо

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

    легенда гласит, что Дидо – царица одного из государств Древней Греции, бежала в Северную Африку и попросила у местного населения участок земли, который можно охватить шкурой вола. получив согласие на столь ничтожную просьбу, она на глазах у изумленных зрителей разрезала шкуру на тонкие ремешки и, связав их друг с другом, охватила полученной нитью изрядный по тем временам участок (и основала на этом участке Карфаген)

    задача лодочника

    есть река ширины b с прямыми и параллельными берегами. полагаем наш берег реки за ось Y. скорость течения реки - v(x). собственная скорость лодки (относительно потока) постоянна и равна с. лодка должна пересечь реку за кратчайшее время. какова стратегия выбора угла α между осью X и направлением движения лодки?

    задача оптимального управления

    пусть дана система обыкновенных дифур:

           x`  =  f (x, u)                                      (1)
    

    где
    x - фазовый вектор
    u - управляющий параметр
    f - функция нескольких переменных, непрерывная по совокупности переменных и непрерывно дифференцируемая по x
    производная берется по времени t

    в пространстве ℝn даны точки х0 и х1;

    в пространстве ℝp, p ≤ n задано множество u допустимых значений управляющего параметра;

    фиксирован начальный момент времени t0

    допустимым управлением является любая кусочно непрерывная функция u(t), t₀ ≤ t < t₁, со значениями во множестве u

    говорят, что допустимое управление u = u(t) переводит фазовую точку из положения х0 в положение x1, если соответствующее ему решение x(t) системы (1), удовлетворяющее условию x(t0) = x0, определено при всех t ∊ [t0, t1]

    теперь, среди всех допустимых управлений , переводящих фазовую точку из положения х0 в положение х1, требуется найти оптимальное управление - функцию u*(t), минимизирующую функционал

               t₁
        Ф  =   ∫ g (x(t), u(t)) dt                               (2)
              t₀
    

    здесь
    g - непрерывная и дифференцируемая на отрезке [t₀, t₁] функция
    x(t) - решение системы (1) с начальным условием x(t0)=x0, отвечающее управлению u(t);

    оптимальность (выгодность, эффективность) управления определяется функционалом Ф. управление считается наиболее выгодным, когда Ф минимален

    важным частным случаем является случай, когда g (x, u) ≡ 1

    в таком случае Ф = t₁ - t₀, т.е. наивыгодным управлением является управление за минимальне время. это - задача быстродействия

    под решением задачи понимают пару, состоящую из оптимального управления u*(t) и отвечающей ему оптимальной траектории x*(t) системы (1).

    динамическое программирование Беллмана (дискретные процессы)

    динамическое программирование - набор процедур, используемых при анализе многошаговых процессов управления. метод имеет в своей основе принцип оптимальности :
    1. управление зависит только от состояния системы в момент управления и от цели управления и не зависит от предыстории системы
    2. выбор траектории, переводящей систему из одного состояния в другое, не зависит от состояния системы в моменты, предшествующие управлению
    3. участок оптимальной траектории, начиная с любого момента времени и до конца процесса, сам по себе является оптимальной траекторией

    решается задача рекурентно: полагаем, что нам известны значения функционала на всех предшествующих шагах и нужно минимаксировать функционал на последнем шаге

    гипотеза 1: какова бы ни была отличная от X₁ точка X фазового пространства, существует оптимальный (в смысле быстродействия) процесс перехода из точки X в точку X₁

    время, в течение которого осуществляется оптимальный переход из точки X в точку X₁, обозначим через t(Х)

    гипотеза 2: функция t(X) непрерывна и всюду (кроме, может быть точки X₁) имеет непрерывные частные производные

    самый первый пример из Беллмана

    пусть у нас есть некоторое положительное количество x
    разделим это количество на две части: y и x - y

    пусть от первой части мы получаем доход g (y), а от второй части мы получаем доход h (x - y)
    общий доход на первом шаге r₁ таким образом составляет r₁ (x, y) = g (y) + h (x - y)

    предположим, что за счет издержек первоначальное количество y уменьшается до y₁ = a * y, 0 ≤ a < 1
    предположим, что за счет издержек первоначальное количество (x - y) уменьшается до b * (x - y), 0 ≤ b < 1

    на следующей итерации мы повторяем процесс, но уже с уменьшившимся количеством того и другого
    общий доход на втором шаге r₂ таким образом составляет r₂ (x, y, a, b) = g(y) + g (y₁) + h (x - y) + h (x₁ - y₁)

    на n-ом шаге общий доход будет rn (x, y, a, b, n) = g(y) + g (y₁) + ... + g (yn-1) + h (x - y) + h (x₁ - y₁) + ... + h (xn-1 - yn-1)

    естественно, нам хотелось бы получить точку (y, y₁, y₂, ..., yn-1) в которой достигается максимум rn

    %% calculation for 1 unit of the resourse for n steps
    %% input params:
    %%   - amortization1 (real),
    %%   - amortization2 (real),
    %%   - number of steps (int)
    %% output:
    %%   - plot (X - proportion, Y - total income)
    
    function lprg_1 (degrad1, degrad2, steps)
      for p = 1 : 99;                                         %pecents
        qty1 = p * .01;
        qty2 = 1 - qty1;
        s = 0.0;
        for i = 1 : steps;
          s += feval ("g", qty1) + feval ("h", qty2);
          qty1 = degrad1 * qty1;
          qty2 = degrad2 * qty2;
        end
        r (p) = s;
      end
      plot (r, 'r', 'linewidth', 2);
    end
    
    function c = g (x)
      c = x * x * -.9 + 2 * x + 1;
    end
    
    function c = h (x)
      c = x * x * -.8 + 2.2 * x + 1.2;
    end
    
    octave> lprg_1 (.15, .35, 20)
    

    вообще говоря, мы хотели бы знать ответ

  • не только для конкретного значения x, но и для ряда близлежащих значений;
  • не только для конкретных значений a и b, но и для некоторого множества таких наборов; и
  • не только для пары функций g и h, но и для целого класса функций

    метод динамического программирования имеет ряд неудобств

  • применение этого метода требует нахождения не только оптимальных управлений, но и функции t(x)
  • уравнение Беллмана представляет собой уравнение в частных производных относительно функции t(x)

    но главным недостатком этого метода является предположение о выполнении гипотез о неизвестной функции t(x), и проверить выполнение этих гипотез по уравнениям движения объекта невозможно

    максимум Понтрягина (непрерывные процессы)

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

    пусть дана система обыкновенных дифур:

           x`  =  f (x, u)                         
    

    где
    x - фазовый вектор
    u - управляющий параметр
    f - функция нескольких переменных, непрерывная по совокупности переменных и непрерывно дифференцируемая по x
    производная берется по времени t

    в пространстве ℝn даны точки х0 и х1;

    в пространстве ℝp, p ≤ n задано множество u допустимых значений управляющего параметра;

    фиксирован начальный момент времени t0

    пусть ℋ (ψ, f(x, u)) = ℋ (ψ, x, t)- гамильтониан, т.е.

         ∂x/∂t = ∂ℋ/dψ   ∂ψ/∂t = - ∂ℋ/∂t
    

    нетрудно заметить, что первое уравнение есть описание исходной системы

    принцип максимума Понтрягина:

    если u*(t), x*(t) - решение задачи оптимального управления

        x`  =  f (x, u) 
        
               t₁
        Ф  =   ∫ g (x(t), u(t)) dt
              t₀
    
    то

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

    в условии максимума гамильтониана ℋ(y,х,u) от фазовых переменных х, управлений u, сопряженных переменных y, переменная y играет роль, аналогичную множителям Лагранжа в классическом вариационном исчислении

    вариационные задачи с неклассическими ограничениями (в том числе - в виде нестрогих неравенств) или негладкими функционалами принято называть задачами понтрягинского типа

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

    принцип максимума определяет лишь необходимое условие оптимальности - из факта, что некоторая траектория удовлетворяет ему, не следует, что она оптимальна, т.е. принцип максимума дает траектории лишь "кандидаты на оптимальность". для определения из их числа оптимальной траектории необходима дополнительная проверка

    задача быстродействия

    задача быстродействия называется линейной, если управляемая система записывается в виде:
              x` = A * x + u
    
    а множество, к которому принадлежит вектор управления u - выпукло в ℝn

    тогда уравнение для гамильтониана переписывается в виде

            ψ` = -ψ * A
    
    где справа стоит произведение однострочной матрицы ψ на квадратную матрицу A

    гамильтониан записывается в виде

             ℋ (x, ψ, u) = ψ * A * x   +   ψ * u 
    
    максимум (а значит - оптимальность) достигается при максимуме второго слагаемого - скалярного произведения Ψ * u

    задача оптимизации расхода топлива

    если в процессе движения обьекта расходуется топливо, то можно поставить вопрос об оптимизации расхода топлива при переходе от состояния x₀ к состоянию x₁

    такую задачу могло бы решить вариационное исчисление, если бы не было ограничений на управляющий вектор U (т.н. классическая задача)

    задача оптимизации преследования

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

    в пространстве ℝⁿ точку x будем трактовать, как преследователя, а точку y - как убегающего. процесс преследования считается законченым, когда x совпадет с y

    движения этих двух точек описываются уравнениями

              x" + α * x` = u
    
              y" + β * y` = v
    
    управляющие векторы u и v ограниченны по модулю, а именно
              |u| ≤ ρ
    
              |v| ≤ σ
    
    числа α β ρ σ - положительны

    задача преследования всегда может быть решена, если ρ/α > σ/β и ρ > σ

    в таком случае всегда есть оптимальный способ поведения преследователя, т.е. имеется единственное оптимальное управление u*(t), при отклонении от которого время преследования неизбежно увеличивается

    задача убегания имеет решение, если σ > ρ и ρ/α < σ/β