Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Алгоритм метода проекции градиента
ОТЧЕТ
По лабораторной работе №4
по курсу Теория оптимального управления
Метод проекции градиента решения задач оптимального управления
ОГУ 010200.6006.04 О
Руководитель _____________ Болодурина И.П. “___ ”______________2011 г. Исполнитель студент гр. 08 ПриМ _______________Кияева Е. А. “___ ” _____________2011 г.
Оренбург 2011 Содержание
Постановка задачи………………………………………………………….1 Алгоритм метода проекции градиента…...……………………………….3 Практическая часть………………………………………………...………6 Приложение А - Листинг программы…………………………..…………9
Постановка задачи
Оптимальное управление определяется следующим образом:
где − множитель Лагранжа (в регулярном случае и можно положить и можно положить равным единице или любой другой положительной константе). Разобьем отрезок точками , на q частей. Обозначим значения фазовой функции и функции управления в точках разбиения , , . Для вычисления производной фазовой функции используем конечную разность . Для вычисления интеграла в целевом функционале (1) используем формулу левых прямоугольников. Тогда дискретная задача оптимального управления, аппроксимирующая непрерывную (1)-(4) с точностью , запишется в виде
Так как решение дискретной задачи переходит в решение непрерывной задачи в пределе при , для получения нужной точности, необходимо использовать двойной пересчет по шагу интегрирования.
Алгоритм метода проекции градиента
Практическая часть Рассмотрим следующий пример: Найти , при которой достигается минимум функционала Проведем дискретную аппроксимацию поставленной задачи. Для этого разобъем отрезок [0; 2π ] точками на q частей. Обозначим значения в точках разбиения следующим образом: Для аппроксимации дифференциального уравнения воспользуемся схемой Эйлера, то есть Для приближенного вычисления минимизируемого функционала воспользуемся формулой левых прямоугольников Составим функцию Лагранжа Условие стационарности по x Условие стационарности по u Условие стационарности по x используем для вычисления сопряженных переменных. С помощью метода проекции градиента получим решение дискретной задачи (рисунок 1).
Рисунок 1 – Результаты работы программы Приложение A (обязательное) Листинг программы //-------------------------- -------------------------------------------------
#include < vcl.h> #pragma hdrstop #include < math.h> #include " Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource " *.dfm" TForm1 *Form1;
int q, n=2;
double T=6.28, t0=0;
typedef double **mass;
typedef double *mas;
Double f(mass x, double u, int j, int l) { switch (j) { case 0: return x[1][l]; case 1: return -x[0][l]+u; } }
Double F0(double x, double u) { return 0; }
Double FI(mass x) { return x[1][q]; }
Double df0(double x, double u, double dt) { double Func, F;
F=F0(x+dt, u);
Func=(F-F0(x, u))/dt;
return Func;
} Double Funkcional(mas u, mass x, double Fi, double dt) { double s=0;
for (int i=0; i< =q-1; i++)
s+=F0(x[0][i], u[i]);
return s*dt+Fi; }
ОТЧЕТ
По лабораторной работе №4
по курсу Теория оптимального управления
Метод проекции градиента решения задач оптимального управления
ОГУ 010200.6006.04 О
Руководитель _____________ Болодурина И.П. “___ ”______________2011 г. Исполнитель студент гр. 08 ПриМ _______________Кияева Е. А. “___ ” _____________2011 г.
Оренбург 2011 Содержание
Постановка задачи………………………………………………………….1 Алгоритм метода проекции градиента…...……………………………….3 Практическая часть………………………………………………...………6 Приложение А - Листинг программы…………………………..…………9
Постановка задачи
Оптимальное управление определяется следующим образом:
где − множитель Лагранжа (в регулярном случае и можно положить и можно положить равным единице или любой другой положительной константе). Разобьем отрезок точками , на q частей. Обозначим значения фазовой функции и функции управления в точках разбиения , , . Для вычисления производной фазовой функции используем конечную разность . Для вычисления интеграла в целевом функционале (1) используем формулу левых прямоугольников. Тогда дискретная задача оптимального управления, аппроксимирующая непрерывную (1)-(4) с точностью , запишется в виде
Так как решение дискретной задачи переходит в решение непрерывной задачи в пределе при , для получения нужной точности, необходимо использовать двойной пересчет по шагу интегрирования.
Алгоритм метода проекции градиента
Практическая часть Рассмотрим следующий пример: Найти , при которой достигается минимум функционала Проведем дискретную аппроксимацию поставленной задачи. Для этого разобъем отрезок [0; 2π ] точками на q частей. Обозначим значения в точках разбиения следующим образом: Для аппроксимации дифференциального уравнения воспользуемся схемой Эйлера, то есть Для приближенного вычисления минимизируемого функционала воспользуемся формулой левых прямоугольников Составим функцию Лагранжа Условие стационарности по x Условие стационарности по u Условие стационарности по x используем для вычисления сопряженных переменных. С помощью метода проекции градиента получим решение дискретной задачи (рисунок 1).
Рисунок 1 – Результаты работы программы Приложение A (обязательное) Листинг программы //-------------------------- -------------------------------------------------
#include < vcl.h> #pragma hdrstop #include < math.h> #include " Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource " *.dfm" TForm1 *Form1;
int q, n=2;
double T=6.28, t0=0;
typedef double **mass;
typedef double *mas;
Популярное:
|
Последнее изменение этой страницы: 2016-08-31; Просмотров: 1039; Нарушение авторского права страницы