Итерационный метод решения дискретной задачи

Автор работы: Пользователь скрыл имя, 28 Марта 2012 в 17:49, лабораторная работа

Описание

Решить задачу с помощью итерационного метода:

Работа состоит из  1 файл

3 л.р..doc

— 192.50 Кб (Скачать документ)


 

Итерационный метод решения дискретной задачи

 

Решить задачу с помощью итерационного метода:

1. Дана модель объекта управления:                             , 

,  ,

,

и функционал: .

Требуется найти оптимальную пару , на которой достигается минимум функционала.

 

Постановка задачи:

,

(1)

,

(2)

,

(3)

,

(4)

,  .

(5)

 

Оптимальное управление определяется следующим образом:

,  ,

(6)

 

 

 

где − множитель Лагранжа (в регулярном случае и можно положить равным единице или любой другой положительной константе).

Разобьем отрезок точками ,  на q частей. Обозначим значения фазовой функции и функции управления в точках разбиения ,  , . Для вычисления производной фазовой функции используем конечную разность

.

Для вычисления интеграла в целевом функционале (1) используем формулу левых прямоугольников. Тогда дискретная задача оптимального управления, аппроксимирующая непрерывную (1)-(4) с точностью  , запишется в виде

,

(7)

 

 

 

,  ,

(8)

или

 

,  ,

(8')

 

 

,

(9)

 

 

,  .

(10)

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

 

Алгоритм итерационного метода.

Шаг

Действие

0

Выбрать шаг разбиения

1

Задать начальное приближение управления – допустимый набор:

где ;

2

Построить начальную траекторию:

где

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

3

Вычислить начальное приближение целевой функции J(0) по формуле:

;

4

Найти сопряженные переменные по формулам:       

,  ,

;

5

Определить управление по формулам, полученным из условия максимума:

,  ;

6

Вычислить соответствующую этому управлению траекторию по формулам:                                                   

;

;

7

Найти очередное приближение целевой функции J(1) по формуле

;

 

8

Если то переход к шагу 9, иначе и  переход к шагу 12;

9

Проверить достигнута ли заданная точность вычислений. Если и то переход к шагу 12, иначе  –  переход к шагу 10;

 

10

Произвести переприсваивание ;

11

Переход к шагу 4 – следующему шагу итерационного метода;

 

12

Положить, что решение, полученное с шагом разбиения ;

13

Если шаг не делился, то переход к шагу 14, иначе – переход к шагу 15;

 

14

Поделить шаг разбиения отрезка переход к шагу 1 при ;

 

15

Проверить заданную точность: если и то переход к шагу 17, иначе – переход к шагу 16;

 

16

Произвести переприсваивание:   – затем перейти к шагу 14 – следующему шагу двойного пересчета;

 

17

решение задачи. Конец алгоритма.


 



Информация о работе Итерационный метод решения дискретной задачи