Моделирование динамических систем (метод Лагранжа и Bond graph approach). Условная оптимизация. Метод множителей Лагранжа

Рассмотрим линейное неоднородное дифференциальное уравнение первого порядка:
(1) .
Существует три способа решения этого уравнения:

  • метод вариации постоянной (Лагранжа).

Рассмотрим решение линейного дифференциального уравнения первого порядка методом Лагранжа.

Метод вариации постоянной (Лагранжа)

В методе вариации постоянной мы решаем уравнение в два этапа. На первом этапе мы упрощаем исходное уравнение и решаем однородное уравнение. На втором этапе мы заменим постоянную интегрирования, полученную на первой стадии решения, на функцию. После чего ищем общее решение исходного уравнения.

Рассмотрим уравнение:
(1)

Шаг 1 Решение однородного уравнения

Ищем решение однородного уравнения:

Это уравнение с разделяющимися переменными

Разделяем переменные - умножаем на dx , делим на y :

Интегрируем:

Интеграл по y - табличный :

Тогда

Потенцируем:

Заменим постоянную e C на C и уберем знак модуля, что сводится к умножению на постоянную ±1 , которую включим в C :

Шаг 2 Заменим постоянную C на функцию

Теперь заменим постоянную C на функцию от x :
C → u(x)
То есть, будем искать решение исходного уравнения (1) в виде:
(2)
Находим производную.

По правилу дифференцирования сложной функции:
.
По правилу дифференцирования произведения:

.
Подставляем в исходное уравнение (1) :
(1) ;

.
Два члена сокращаются:
;
.
Интегрируем:
.
Подставляем в (2) :
.
В результате получаем общее решение линейного дифференциального уравнения первого порядка:
.

Пример решения линейного дифференциального уравнения первого порядка методом Лагранжа

Решить уравнение

Решение

Решаем однородное уравнение:

Разделяем переменные:

Умножим на :

Интегрируем:

Интегралы табличные :

Потенцируем:

Заменим постоянную e C на C и убираем знаки модуля:

Отсюда:

Заменим постоянную C на функцию от x :
C → u(x)

Находим производную:
.
Подставляем в исходное уравнение:
;
;
Или:
;
.
Интегрируем:
;
Решение уравнения:
.

ЛАГРАНЖА МЕТОД

Метод приведения квадратичной формы к сумме квадратов, указанный в 1759 Ж. Лагранжем (J. Lagrange). Пусть дана

от ппеременных х 0 , x 1 ,..., х п . с коэффициентами из поля k характеристики Требуется привести эту форму к канонич. виду

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

1) При некотором g, диагональный Тогда

где форма f 1 (х).не содержит переменную x g . 2) Если же все но то


где форма f 2 (х).не содержит двух переменных x g и x h . Формы, стоящие под знаками квадратов в (4), линейно независимы. Применением преобразований вида (3) и (4) форма (1) после конечного числа шагов приводится к сумме квадратов линейно независимых линейных форм. С помощью частных производных формулы (3) и (4) можно записать в виде


Лит. : Г а н т м а х е р Ф. Р., Теория матриц, 2 изд., М., 1966; К у р о ш А. Г., Курс высшей алгебры, 11 изд., М., 1975; Александров П. С., Лекции по аналитической геометрии..., М., 1968. И. В. Проскуряков.


Математическая энциклопедия. - М.: Советская энциклопедия . И. М. Виноградов . 1977-1985 .

Смотреть что такое "ЛАГРАНЖА МЕТОД" в других словарях:

    Лагранжа метод - Лагранжа метод — метод решения ряда классов задач математического программирования с помощью нахождения седловой точки (x*, λ*) функции Лагранжа., что достигается приравниванием нулю частных производных этой функции по… … Экономико-математический словарь

    Лагранжа метод - Метод решения ряда классов задач математического программирования с помощью нахождения седловой точки (x*, ?*) функции Лагранжа., что достигается приравниванием нулю частных производных этой функции по xi и?i . См. Лагранжиан. (x , y ) = C и f 2 (х, у) = С 2 на плоскости ХО Y .

    Из этого следует метод нахождения корней системы. нелинейных уравнений:

      Определить (хотя бы приближенно) интервал существования решения системы уравнений (10) или уравнения (11). Здесь не­обходимо учитывать вид уравнений, входящих в систему, область определения каждого их уравнений и т. п. Иногда применяется подбор начального приближения решения;

      Протабулировать решение уравнения (11) по переменным x и y на выбранном интервале, либо построить графики функций f 1 (x , y ) = С, и f 2 (х,у) = С 2 (система(10)).

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

    4. Найти корни для системы уравнений (10) с помощью надстройки Поиск решения.

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

    ПРОГРАММИРОВАНИЯ

    МЕТОДЫ РЕШЕНИЯ ЗАДАЧ НЕЛИНЕЙНОГО

    Контрольные вопросы к разделу 4

    Схема решения транспортной задачи

    Перечислим основные этапы решения транспортной задачи.

    1. Проверяют условие замкнутости. Если задача открытая, транспортную таблицу дополняют или столбцом фиктивного пункта потребления, или строкой фиктивного поставщика.

    2. Строят опорный план.

    3. Проверяют опорный план на невырожденность. Если для выполнения условия невырожденности не хватает занятой клетки, одну из клеток транспортной таблицы заполняют поставкой, равной нулю. При необходимости допустимо записывать нулевые поставки в несколько клеток.

    4. План проверяют на оптимальность.

    5. Если условия оптимальности не выполняются, переходят к следующему плану путем перераспределения поставок. Вычислительный процесс повторяется до получения оптимального плана.

    1. Каков смысл целевой функции в математической модели транспортной задачи?

    2.Каков смысл ограничений в математической модели транспортной задачи?

    3. Можно ли применить метод потенциалов для решения открытой (незамкнутой) транспортной задачи?

    4.Какие изменения необходимо внести в исходную транспортную таблицу, чтобы задачу можно было решить методом потенциалов?

    5.В чем суть метода минимального элемента? Какой этап решения транспортной задачи будет выполнен в результате применения этого метода?

    6. Как узнать является ли план перевозок оптимальным?

    7. В каком случае и каким образом необходимо выполнить перераспределение поставок в плане перевозок?

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

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

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



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

    С уть метода Лагранжа заключается в сведении задачи на условный экстремум к решению задачи безусловного экстремума. Рассмотрим модель нелинейного программирования:

    (5.2)

    где – известные функции,

    а – заданные коэффициенты.

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

    Преобразуем условия (5.2) таким образом, чтобы в левых или правых частях равенств стоял ноль :

    (5.3)

    Составим функцию Лагранжа. В нее входит целевая функция (5.1) и правые части ограничений (5.3), взятые соответственно с коэффициентами . Коэффициентов Лагранжа будет столько, сколько ограничений в задаче.

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

    Действительно, пусть найдено решение задачи (5.1)-(5.2), тогда выполняются условия (5.3). Подставим план в функцию (5.4) и убедимся в справедливости равенства (5.5).

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

    Определим частные производные функции (5.4)

    ,

    .

    После приравнивания нулю производных получим систему m+n уравнений с m+n неизвестными

    , (5.6)

    В общем случае система (5.6)-(5.7) будем иметь несколько решений, куда войдут все максимумы и минимумы функции Лагранжа. Для того чтобы выделить глобальный максимум или минимум, во всех найденных точках вычисляют значения целевой функции. Наибольшее из этих значений будет глобальным максимумом, а наименьшее – глобальным минимумом. В некоторых случаях оказывается возможным использование достаточных условий строгого экстремума непрерывных функций (см. ниже задачу 5.2):

    пусть функция непрерывна и дважды дифференцируема в некоторой окрестности своей стационарной точки (т.е. )). Тогда:

    а ) если , (5.8)

    то – точка строгого максимума функции ;

    б) если , (5.9)

    то – точка строгого минимума функции ;

    г ) если ,

    то вопрос о наличии экстремума остается открытым.

    Кроме того, некоторые решения системы (5.6)-(5.7) могут быть отрицательными. Что не согласуется с экономическим смыслом переменных. В этом случае следует проанализировать возможность замены отрицательных значений нулевыми.

    Экономический смысл множителей Лагранжа. Оптимальное значение множителя показывает на сколько изменится значение критерия Z при увеличении или уменьшении ресурса j на одну единицу, так как

    Метод Лагранжа можно применять и в том случае, когда ограничения представляют собой неравенства. Так, нахождение экстремума функции при условиях

    ,

    выполняют в несколько этапов:

    1. Определяют стационарные точки целевой функции, для чего решают систему уравнений

    .

    2. Из стационарных точек отбирают те, координаты которых удовлетворяют условиям

    3. Методом Лагранжа решают задачу с ограничениями-равенствами (5.1)-(5.2).

    4. Исследуют на глобальный максимум точки, найденные на втором и третьем этапах: сравнивают значения целевой функции в этих точках – наибольшее значение соответствует оптимальному плану.

    Задача 5.1 Решим методом Лагранжа задачу 1.3, рассмотренную в первом разделе. Оптимальное распределение водных ресурсов описывается математической моделью

    .

    Составим функцию Лагранжа

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

    ,

    Таким образом, получили систему линейных уравнений вида

    Решение системы уравнений представляет собой оптимальный план распределения водных ресурсов по орошаемым участкам

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

    Максимальный дополнительный чистый доход от орошения составит

    160·12,26 2 +7600·12,26-130·8,55 2 +5900·8,55-10·16,19 2 +4000·16,19=

    172391,02 (ден. ед.)

    Задача 5.2 Решить задачу нелинейного программирования

    Ограничение представим в виде:

    .

    Составим функцию Лагранжа и определим ее частные производные

    .

    Чтобы определить стационарные точки функции Лагранжа, следует приравнять нулю ее частные производные. В результате получим систему уравнений

    • Tutorial

    Всем доброго дня. В данной статье хочу показать один из графических методов построения математических моделей для динамических систем, который называется Bond graph («bond» - связи, «graph» - граф). В русской литературе, описания данного метода, я нашел только в Учебном пособии Томского политехнического университета, А.В. Воронин «МОДЕЛИРОВАНИЕ МЕХАТРОННЫХ СИСТЕМ» 2008 г. Также показать классический метод через уравнение Лагранжа 2 рода.

    Метод Лагранжа

    Я не буду расписывать теорию, покажу этапы расчётов и с небольшими комментариями. Лично мне легче учиться на примерах, чем 10 раз читать теорию. Как мне показалось, в русской литературе, объяснение данного метода, да и вообще математики или физики, очень насыщено сложными формулами, что соответственно требует серьезного математического бэкграунда. Во время изучения метода Лагранжа (учусь в Туринском политехническом университет, Италия), я изучал русскую литературу, чтобы сопоставить методики расчётов, и мне было тяжело следить за ходом решения данного метода. Даже вспоминая курсы по моделированию в «Харьковском авиационном институте», вывод подобных методов был очень громоздким, и никто не затруднял себя в попытке разобраться в этом вопросе. Вот этому я решил написать, методичку для построения мат моделей по Лагранжу, как так оказалось это совсем не сложно, достаточно знать как считать производные по времени и частные производные. Для моделей по сложнее еще добавляются матрицы поворота, но в них тоже нет ничего сложного.

    Особенности методов моделирования:

    • Ньютона-Эйлера : векторные уравнения, основанные на динамическом равновесии сил (force) и моментов (moments)
    • Лагранжа : скалярные уравнения, основанные на функциях состояния связанных с кинетической и потенциальной энергией (energies)
    • Бонд-граф : метод основанный на течении мощности (power) между элементами системы

    Начнем с простого примера. Масса с пружиной и демпфером. Пренебрегаем силой тяжести.


    Рис 1 . Масса с пружиной и демпфером

    Первым делом обозначаем:

    • начальную системы координат (НСК) или неподвижную ск R0(i0,j0,k0) . Где? Можно тыкнуть пальцем в небо, но подёргав кончиками нейронов в мозгу, проходит идея поставить НСК на линии движения тела М1.
    • системы координат для каждого тела с массой (у нас М1 R1(i1,j1,k1) ), ориентация может быть произвольной, но зачем усложнять себе жизнь, ставим с минимальным отличием от НСК
    • обобщеные координаты q_i (минимальное количество переменные которыми можно описать движение), в данном примере одна обобщенная координата, движение только вдоль оси j


    Рис 2 . Проставляем системы координат и обобщенные координаты


    Рис 3 . Позиция и скорость тела М1

    После найдем кинетическую (С) и потенциальную (Р) энергии и диссипативную функцию (D) для демпфера по формулам:


    Рис 4 . Полная формула кинетической энергии

    В нашем примере вращения нет, вторая составляющая равна 0.




    Рис 5 . Расчет кинетической, потенциальной энергии и диссипативной функции

    Уравнение Лагранжа имеет следующий вид:


    Рис 6 . Уравнение Лагранжа и Лагранжиан

    Дельта W_i это виртуальная работа совершенная приложенными силами и моментами. Найдем ее:


    Рис 7 . Расчет виртуальной работы

    Где дельта q_1 виртуальное перемещение.

    Подставляем всё в уравнение Лагранжа:


    Рис 8 . Полученная модель массы с пружинной и демпфером

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

    Метод Bond graph

    Сразу покажу так выглядит модель в bond-graph для примера с массой пружиной и демпфером:


    Рис 9 . Bond-graph массы с пружинной и демпфером

    Здесь придётся рассказать немного теории, которой хватит для построения простых моделей. Если кто нибудь заинтересован можете почитать книгу ( Bond Graph Methodology ) или (Воронин А.В. Моделирование мехатронных систем: учебное пособие. – Томск: Изд-во Томского политехнического университета, 2008 ).

    Определим для начала, что сложные системы состоят из нескольких доменов. Например электродвигатель состоит из электрической и механической частей или доменов.

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

    Как видно из таблицы выражение мощности везде практически одинаковое. В обобщении, Мощность - это произведение «потока - f » на «усилия - e ».

    Усилие (англ. effort ) в электрическом домене это напряжение (e), в механическом - сила (F) или момент (T), в гидравлике – давление (p).

    Поток (англ. flow ) в электрическом домене это ток (i), в механическом - скорость (v) или угловая скорость (omega), в гидравлике – поток или расход жидкости (Q).

    Принимая данные обозначения, получаем выражение для мощности:


    Рис 10 . Формула мощности через мощностные переменные

    В языке bond-graph соединение между двумя подсистемами которые обмениваются мощностью представлена связью (англ. bond ). По этому и называется данный метод bond-graph или граф-связей, связной граф . Рассмотрим блок-диаграмму связей в модели с электродвигателем (это еще не bond-graph):


    Рис 11 . Блок-диарамма потока мощности между доменами

    Если у нас источник напряжения, то соответственно он генерирует напряжение и отдает его двигателю на отмотки (по этому стрелка направлена в сторону двигателя), в зависимости от сопротивления обмотки появляется ток по закону Ома (направлен от двигателя к источнику). Соответственно одна переменная является входом в подсистему, а вторая необходима должна быть выходом из подсистемы. Здесь напряжение (effort ) – вход, ток (flow ) – выход.

    Если использовать источник тока, как поменяется диаграмма? Правильно. Ток будет направлен к двигателю, а напряжение к источнику. Тогда ток (flow ) – вход, напряжение (effort ) – выход.

    Рассмотрим пример в механике. Сила, действующая на массу.


    Рис 12 . Сила приложенная к массе

    Блок-Диаграмма будет следующей:


    Рис 13 . Блок-диаграмма

    В этом примере, Сила (effort ) – входная переменная для массы. (Сила приложена к массе)
    По второму закону Ньютона:

    Масса отвечает скоростью:

    В этом примере если одна переменная (сила - effort ) является входом в механический домен, то другая мощностная переменная (скорость - flow ) – автоматически становится выходом .

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


    Рис 14 . Обозначение причинной связи

    Эта вертикальная линия показывает какая подсистема получает усилие (effort ) и как следствие производить поток (flow ). В примере с массой будет так:


    Рис 14 . Причинна связь для силы действующей на массу

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

    Следующий важный момент. Обобщённый импульс (количество движения) и перемещение (энергетические переменные ).

    Таблица мощностных и энергетический переменных в разных доменах



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


    Рис 15 . Связь между мощностными и энергетическими переменными

    В электрическом домене :

    Исходя из закона Фарадея, напряжение на концах проводника равняется производной от магнитного потока через этот проводник.


    А Сила тока - физическая величина, равная отношению количества заряда Q, прошедшего за некоторое время t через поперечное сечение проводника, к величине этого промежутка времени.

    Механический домен:

    Из 2 закона Ньютона, Сила – производная по времени от импульса


    И соответственно, скорость - производная по времени от перемещения:

    Обобщим :

    Базовые элементы

    Все элементы в динамических системах, можно разделить на двухполюсные и четырехполюсные компоненты.
    Рассмотрим двухполюсные компоненты :

    Источники
    Источники бывают как усилия, так и потока. Аналогия в электрическом домене: источник усилия источник напряжения , источник потока источник тока . Причинные знаки для источников должны быть только такие.


    Рис 16 . Причинные связи и обозначение источников

    Компонент R – диссипативный элемент

    Компонент I – инерциальный элемент

    Компонент C – емкостной элемент

    Как видно из рисунков, разные элементы одного типа R,C,I описываться одинаковыми уравнениями. ТОЛЬКО есть отличие для электрической емкости, это нужно просто запомнить!

    Четырёхполюснике компоненты :

    Рассмотрим два компонента трансформатор и гиратор.

    Последними важными компонентами в методе bond-graph выступают соединения. Существует два типа узлов:




    На этом с компонентами закончили.

    Основные этапы для проставления причинных связей после построения bond-graph:

    1. Проставить причинные связи всем источникам
    2. Пройтись по всем узлам и проставить причинные связи после пункта 1
    3. Для компонентов I присвоить входную причинную связь (усилие входит в этот компонент), для компонентов С присваиваем выходную причинную связь (усилие выходит из этого компонента)
    4. Повторить пункт 2
    5. Проставить причинные связи для компонентов R
    На этом мини-курс по теории закончим. Теперь у нас есть все необходимое для построения моделей.
    Давайте решим пару примеров. Начнем с электрической цепь, лучше понять аналогию построения bond-graph.

    Пример 1


    Начнем построение bond-graph с источника напряжения. Просто пишем Se и ставим стрелку.


    Видите все просто! Смотрим далее, R и L соединены последовательно, значить в них течет одинаковый ток, если говорить в мощностных переменных – одинаковый поток. Какой узел имеет одинаковый поток? Правильный ответ 1-узел. Присоединяем к 1-узлу источник, сопротивление (компонент - R) и индуктивность (компонент - I).


    Далее у нас емкость и сопротивление в параллели, значить они имеют одинаковое напряжение или усилие. 0-узел подойдет как никто другой. Соединяем емкость (компонент С) и сопротивление (компонент R) к 0-узлу.


    Узлы 1 и 0 тоже соединяем между собой. Направление стрелок выбирается произвольное, направление связи влияет только на знак в уравнениях.

    Получиться следующий граф связей:

    Теперь нужно проставить причинные связи. Следуя указаниям по последовательности их проставления, начнем с источника.

    1. Мы имеем источник напряжения (усилия), такой источник имеет только один вариант причинности – выходную. Ставим.
    2. Далее есть компонент I, смотрим что рекомендуют. Ставим
    3. Проставляем для 1-узла. Есть
    4. 0-узел должен иметь один вход и все выходные причинные связи. У нас есть пока одна выходная. Ищем компоненты С или I. Нашли. Ставим
    5. Проставляем что осталось


    Вот и все. Bond-graph построен. Ура, Товарищи!

    Осталось дело за малым, написать уравнения, описывающие нашу систему. Для этого составим таблицу с 3 столбцами. В первом будут все компоненты системы, во втором входная переменная для каждого элемента, а в третьем – выходная переменная, для такого же компонента. Вход и выход мы уже определили причинностнными связями. Так что проблем возникнуть не должно.

    Пронумеруем каждую связь для удобства записи уровнений. Уравнения для каждого элемента берем из перечня компонентов C,R,I.



    Составив таблицу определим переменные состояния, их в данном примере 2, p3 и q5. Далее нужно записать уравнения состояния:


    Вот и все модель готова.

    Пример 2. Сразу хочу извениться за качество фото, главное что можно прочитать

    Решим еще один пример для механической системы, тот же что мы решали методом Лагранжа. Я показу решение без комментариев. Проверим какой из данных методов проще, легче.

    В матбале были составлены обе мат модели с одинаковыми параметрами, полученые методом Лагранжа и bond-graph. Результат ниже: Добавить метки



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: