УДК 517.977.5
В. А. Охорзин
ЧИСЛЕННО-АНАЛИТИЧЕСКОЕ РЕШЕНИЕ ЗАДАЧИ ОПТИМАЛЬНОГО УПРАВЛЕНИЯ
Рассмотрен численно-аналитический метод решения задач оптимального управления нелинейными системами, описываемыми обыкновенными дифференциальными уравнениями, в вычислительной среде MathCAD.
Современные вычислительные среды позволяют использовать как символьные, так и численные вычисления. При нахождении решения задач оптимального управления часто приходится проводить громоздкие символьные вычисления при сведении задачи оптимального управления к двухточечной краевой задачи. В данной статье рассмотрена автоматизация решения задачи оптимального управления с помощью вычислительной среды MathCAD, исходными данными для которой служит только постановка задачи.
Постановка задачи. Пусть задана система дифференциальных уравнений dx
dx = f (x,u, t), x e Rm, dt (1)
ue Rn, te[tn,tk],
где x - состояние системы; u - управление; t - время; tn, tk - начальное и конечное время. Необходимо перевести систему из начального состояния x(tn ) = xn в конечное состояние x(tk) = xk с минимальным значением критерия оптимальности t
I = j F (x, u)dt ^ min.
(2)
= f (x, u, t),
(4)
du
= 0 ^ u (x, p)
(5)
f(t, x):=
1+ x1
5
t • x02 + u
"1" "2"
n: = 0 tk: = x : xk:
0 3
(б)
Подынтегральная функция в критерии оптимальности (2)
Б(х,и):=(2 ■ х0)2+ х^ + и2 (7)
Эти операторы являются исходными данными в задаче оптимального управления. Следующий оператор символьно вычисляет гамильтониан (3) (результат символьных вычислений здесь и далее справа от стрелки):
Н(х, и, р):=
-|Т 5
■ f(t, х) ^ (и + г■ х2)■ Рі+
= _ F(x, u)+
Для решения этой задачи составляют гамильтониан [ 1 ] Н = -Г(х,и) + (р • /(х,и,/)), (3)
где р - вектор сопряженных к вектору х переменных, и удвоенную систему двухточечной краевой задачи оптимального управления йх Ж
йр дН
й дх
Для этой системы дифференциальных уравнений заданы п постоянных интегрирования х(1п) = хп на левом конце и п постоянных интегрирования х($к ) = хк на правом конце траектории х(/). Для замыкания системы (4) применяют условие стационарности гамильтониана дН
и, используя (5), исключают из уравнений (4) функцию управления и(/).
Символьно-численная реализация алгоритма. Приведем реализацию алгоритма на примере нелинейной нестационарной системы второго порядка. Правые части дифференциальных уравнений (1), временной интервал, начальное и конечное состояние имеют следующую запись в системе MathCAD [2] (здесь и далее для записи операторов MathCAD используется прямой шрифт):
+ (Xi+1)• Ро - (2• x0)2 -u2 - Xj2 Следующие три оператора определяют структуру оптимального управления исходя из условия стационарности гамильтониана (5):
dHu:= —H(x, u, p) du
uopt:= dHu solve, u ^ ^ uopt ^
В программах MathCAD невозможно выполнить символьное дифференцирование по индексной переменной
dH
xk, поэтому для вычисления частных производных------------
dxk
в записи гамильтониана приходится сделать подстановку с помощью оператора substitute вместо индексных переменных x0, x1 простых переменных x0, x1 (по умолчанию нумерация в MathCAD начинается с нуля):
H:= H(x, u, p) substitute,
x0 = x0, x1 = xl ^ u • p1 + xl • p0 -
5
-(2 • x0)2 - u2 - x12+1 • x02 • p1 + p0
rr dH
Далее вычислим частные производные ----------- по про-
dxk
стым переменным, используя обратную подстановку:
dHx0:= H dHx0:= dHx0 substitute, dx0
3
5 • t • p • x2
x0 = x0, x1 = x1 ^--------1—— - 8 • x0
dHx1:=--------H dHx1:= dHx1 substitute,
dx1
x0 = x0,x1 = x1 ^ p0 _2• x1
б
Вестник Сибирского государственного аэрокосмического университета имени академика М. Ф. Решетнева
Теперь есть возможность вычислить правые части краевой задачи (4):
f(t, x)0 f(t, x)1 -dHx0 -dHx1_
Fp(x):= Fp(x) substitute,
Fp(x):=
x1+1
t • x02 +
p1
,- 5 •t • p1 • x
t • x02+ — 02
f1(tn,v):= stack(xn, v) f2(tk,x):=
x0 - xk0 x1 - xk1
a:= sbval(v,tn,tk,Fp,f1,f2) a =
f(t, x):=
1" " 2"
tn:= 0 tk:= 1 xn: xk:
2 5
2 • x1 - p0
Для численного решения краевой задачи выразим правые части только через вектор x:
Fp(t, x):= Fp(x) substitute,
x1+1
ния пройдут автоматически. Например, для задачи с начальными данными
“ln^+cos^)" t*sin(x0)+u
(8)
F(x, u):=u2 (9)
правые части системы получились следующими:
Fp(t, x):= Fp(x) substitute,
p0=x2,p1 =
cos(x0) + ln(x1)
x
t • sin(x0)+y sin(x0) • x2 -1 • cos(x0) • x3
- x2 x1
а оптимальный процесс представлен ниже (рис. 2).
оптимальное управление
0 2 2 • Х1 — х2
Итак, все готово для численного решения краевой задачи методом пристрелки. Для этого используем подпрограмму sbval, которая определяет недостающие начальные условия а для двух последних уравнений в (4), начиная с начального приближения V, после чего задача сведется к задаче Коши вместо двухточечной краевой задачи:
"о!
х:= stack(xn, у)
(D
1=Г
о
время
Рис. 1. Процесс в динамической системе (6) с оптимальным управлением
оптимальное управление
-32.113 -10.732
Интегрируем численно задачу Коши с известными начальными условиями у на левом конце:
У :=
7;= rkfixed(y, tn, tk, 50, Бр) г=0..50 Получаем оптимальный процесс (рис. 1). Обсуждение полученных результатов. Имея соответствующую программу, предложенную выше, пользователю для решения конкретной задачи с системой второго порядка необходимо набрать только условия задачи: правые части дифференциальных уравнений, интервал времени, начальные и конечные условия, а также критерий оптимальности (операторы (6),
(7)). Далее как символьные, так и численные вычисле-
время
Рис. 2. Процесс в динамической системе (8), (9) с оптимальным управлением
Система более высокого порядка потребует больших размерностей векторов и введения дополнительных операторов для вычисления производных, аналогичных приведенным выше.
Следует иметь в виду, что далеко не каждая задача может быть решена предложенным выше способом. Первая
сложность может быть связана с тем, что программа символьного решения solve может не найти точного решения, особенно тогда, когда его нет. В этом случае придется
искать решение уравнения dH = 0 ^ u 0(x, p) числен-
du
но. Вторая сложность заключается в трудности решения краевой задачи программой sbval методом пристрелки. В этой программе происходит минимизация ошибки между требуемым и текущим положением системы в конечный момент времени за счет подбора начальных условий для сопряженных переменных p . Решение такой задачи часто зависит от выбора начальных значений v. Наконец, для нелинейных систем, в отличие от линейных, область решения не всегда принадлежит всему пространству Rn . Так, в системе (8) присутствует натуральный логарифм ln(x), что исключает значения x < 0 .
Современные вычислительные среды позволяют автоматизировать решение многих задач, требующих как численных, так и аналитических вычислений. Среда MathCAD является одной из наиболее приспособленных сред для решения таких задач.
Библиографический список
1. Охорзин, В. А. Прикладная математика в системе MathCAD : учеб. пособие / В. А. Охорзин ; Сиб. гос. аэро-космич. ун-т. Красноярск, 2004.
2. Дьяконов, В. П. MathCAD 8 PRO в математике, физике и Internet / В. П. Дьяконов, И. В. Абраменкова. М. : Нолидж, 1999.
V. A. Okhorzin
NUMERICALLY-ANALYTICAL DECISION OF OPTIMAL CONTROL PROBLEM
The numerically-analytical method of the decision of optimal control problems by the nonlinear systems described by the ordinary differential equations, in computing MathCAD environment is considered.
УДК 681.513
А. В. Лапко, В. А. Лапко
НЕПАРАМЕТРИЧЕСКИЕ СИСТЕМЫ РАСПОЗНАВАНИЯ ОБРАЗОВ ДЛЯ МНОГОАЛЬТЕРНАТИВНОЙ ЗАДАЧИ КЛАССИФИКАЦИИ, ОСНОВАННЫЕ НА ДЕКОМПОЗИЦИИ ОБУЧАЮЩЕЙ ВЫБОРКИ ПО ЕЕ РАЗМЕРНОСТИ1
Предложена методика синтеза многоуровневых непараметрических систем распознавания образов для многоальтернативной задачи классификации с позиций принципов декомпозиции обучающей выборки и коллективного оценивания. Их применение обеспечивает высокую вычислительную эффективность обработки информации большой размерности.
Введение. Методика синтеза непараметрических систем распознавания образов для двуальтернативной задачи классификации с использованием принципов декомпозиции обучающей выборки по ее размерности впервые была предложена в [ 1; 2].
Этот подход состоит в построении семейства частных решающих функций, соответствующих различным наборам признаков классифицируемых объектов, с их последующей интеграцией в нелинейном решающем правиле с помощью методов непараметрической статистики [3; 4]. При этом формирование обобщенного решения о принадлежности ситуации к тому или иному классу осуществляется в пространстве значений частных решающих функций. Полученные многоуровневые непараметрические алгоритмы обеспечивают эффективное решение двуальтернативных задач распознавания образов в условиях обучающих выборок значительной размерности на
основе использования принципов коллективного оценивания и технологии параллельных вычислений.
В многоальтернативной задаче классификации переход в пространство вторичных признаков (значения частных решающих функций) сопряжен с увеличением размерности задачи распознавания образов, что затрудняет ее решение при ограниченных объемах обучающих выборок. Применение последовательных процедур классификации методом дихотомии в этом случае приводит к снижению вычислительной эффективности непараметрических алгоритмов распознавания образов.
Авторами была разработана методика построения непараметрических классификаторов для многоальтернативной задачи распознавания образов, основанная на декомпозиции обучающей выборки по ее размерности.
Синтез двухуровневой непараметрической системы классификации. Пусть V = (х', о( х'), I = 1, п- -обуча-
1 Работа выполнена при поддержке Российского фонда фундаментальных исследований (код проекта 07-01-00006).