Переход к дискретной системе: рассмотрим U,x в отдельных точках.
Будем искать приближенное значение U,x на интервалах
,
Рассм. – дифур. стало разностным уравнением
– дискретная задача
– ограничение
Метод динамического программирования – метод поиска наибольшего/наименьшего значения ф-ции многих переменных при наличии ограничения на переменные, ограничения в виде разностных уравнений.
Если ограничение общего вида, то этот метод не подходит.
Вместо сложной задачи решаем много простых задач поиска наиб./наим. значения ф-ции одного аргумента.Например необходимо найти методом градиента наиб./наим. значение.Задача общая, общего решения нет … Наш метод опред. решение.
Решение задачи начинается с конца траектории (с конечной точки )
Решение основано на принципе оптимальности
Шаг 1 для . Пусть
- известно. Тогда
-разностное уравнение. Для каждого
находим оптимальное значение
.
Уравнение становится относительно корней - необходимо выбрать оптимальное уравнение:
|
|
Итоги шагов: Шаг 1 для
Шаг 2 для . Пусть
.Тогда
.
Дискретный критерий начиная с
движемся оптимально
+
.Из 4-ёх аргументов получили 3.
Шаг 2 для . ИТОГ:
Далее доходим до шага, где -известно, потом пойдем в обратном направлении
ПРИМЕР: 10 x(0) =1, x(T) =10 T=3
Оптимальным способом перевести систему из нач. сост. в конечное за 3 секунды, чтобы критерий принял минимальное значение. Принять =1. Разностное уравнение:
Шаг 1. Для . Пусть
. Разн. уравнение:
,
. Найти оптимальное управляющее воздействие:
x(T) = =10
Итог:
Шаг 2. Для . Пусть
. Разн. уравнение:
,
начиная с
движение оптимально =
-приравниваем к 0
Итог:
Шаг 3. Для . Пусть
. Разн. уравнение:
,
начиная с
движение оптимально =
Ищем оптим.
для каждого
-приравниваем к 0
.Итог:
Движемся в обратную сторону:
Для непрерывных систем: -
Для диф-я 2-го порядка решение усложняется. Метод динамического программирования применим в комбинаторных задачах.