- •Задание на курсовую работу
- •Аннотация
- •Введение
- •1. Общие сведения
- •2. Поиск параметров кусочно-постоянной функции времени
- •Определение параметров методом Эйлера
- •Определение параметров с использованием функции ode45
- •Определение параметров с использованием функции ode23
- •3. Поиск параметров полиномиальной функции времени
- •Определение параметров методом Эйлера
- •Определение параметров с использованием функции ode45
- •Определение параметров с использованием функции ode23
- •4. Поиск параметров экспоненциальной функции времени
- •Определение параметров методом Эйлера
- •Определение параметров с использованием функции ode45
- •Определение параметров с использованием функции ode23
- •Заключение
- •Список используемых источников
Определение параметров с использованием функции ode45
Файл main3.m
clear all
clc
P0=[1 1 1 1];
[P,F] = fminsearch('fmsfun3',P0);
Файл fmsfun3.m
function J=fmsfun3(Q)
global P;
P = Q;
OPTIONS = odeset('RelTol', 1e-6);
[t,x] = ode45('odefun3',[0 4],[1 0 0],OPTIONS);
n=length(t);
for k = 1:n u(k)=P(1)*exp(P(2)*t(k)).*(cos(P(3)*t(k)+P(4)));
end
J=x(n,3)+20*(x(n,1)^2);
figure(2)
plot(t,x(:,1),'--black',t,u,'black')
legend('x(t)','u(t)')
grid on;
end
Файл odefun3.m
function F=odefun3(t,x)
global P;
u=P(1)*exp(P(2)*t).*(cos(P(3)*t+P(4)));
F = [x(2); x(1)-2*x(2)+1*u; 2*(x(1)^2)+u^2];
end
Графики переходных процессов, соответствующие рассматриваемой функции времени показаны на рис. 14.
Рис. 14
В результате было определено управляющее воздействие как следующая полиномиальная функция времени:
Значение критерия качества J=7.3702.
Определение параметров с использованием функции ode23
Файл main3.m
clear all
clc
P0=[1 1 1 1];
[P,F] = fminsearch('fmsfun3',P0);
Файл fmsfun3.m
function J=fmsfun3(Q)
global P;
P = Q;
OPTIONS = odeset('RelTol', 1e-6);
[t,x] = ode23s('odefun3',[0 4],[1 0 0],OPTIONS);
n=length(t);
for k = 1:n
u(k)=P(1)*exp(P(2)*t(k)).*(cos(P(3)*t(k)+P(4)));
end
J=x(n,3)+20*(x(n,1)^2);
figure(2)
plot(t,x(:,1),'--black',t,u,'black')
legend('x(t)','u(t)')
grid on;
end
Файл odefun3.m
function F=odefun3(t,x)
global P;
u=P(1)*exp(P(2)*t).*(cos(P(3)*t+P(4)));
F = [x(2); x(1)-2*x(2)+1*u; 2*(x(1)^2)+u^2];
end
Графики переходных процессов, соответствующие рассматриваемой функции времени, показаны на рис. 15.
Рис. 15
В результате было определено управляющее воздействие как следующая экспоненциальная функция времени:
Значение критерия качества J=7.3701.
Заключение
В результате вычислений были определены параметры управляющего воздействия как функции времени. Задача определения параметров была решена для трех классов функций времени:
- кусочно-постоянные функции;
- полиномиальные функции времени;
- экспоненциальные функции времени.
При кусочно-постоянной форме управляющего воздействия минимальное значение показателя качества достигается при использовании функций ode45 или ode23s и равен 7.5131.
При полиномиальной форме управляющего воздействия минимальное значение показателя качества достигается при использовании метода Эйлера и равен 7.4262.
При экспоненциальной форме управляющего воздействия минимальное значение показателя качества достигается при использовании функции ode23s и равен 7.3701.
Список используемых источников
Зуев В.А., Ветчинкин А.С., Лукомский Ю.А. Теория оптимального управления. СПбГЭТУ ЛЭТИ, 2011
Л.Э.Эльсгольц. Дифференциальные уравнения и вариационное исчисление Наука, 2011