ПРИМЕР РЕАЛИЗАЦИИ АЛГОРИТМА ОПРЕДЕЛЕНИЯ МИНИМУМА ЭНЕРГИИ НА УПРАВЛЕНИЕ ДВИЖУЩИМСЯ ОБЪЕКТОМ
Я. Трояновский, к.т.н. (Морская академия Польши, г. Щецин, [email protected])
Ключевые слова: значения переменных состояния, задача идентификации, инверсная задача, расход энергии на управление.
Для получения различных количественных оценок и вариантов решения динамической задачи при различных сигналах управления движущимся объектом целесообразно в процессе моделирования изменять требования к переменным состояния. При этом следует определять управления, обеспечивающие достижение наилучших интегральных показателей. В этой связи для перевода управляемой системы из заданного начального состояния в конечное x(N) можно предложить алгоритм, обеспечивающий минимум энергии на управление. В процессе решения задачи допускается вариация граничных условий и времени в диапазоне n<k<N.
Алгоритм, обеспечивающий минимум энергии на управление, позволяет оптимизировать дискретный динамический процесс при введении ограничений на переменные состояния и управления, а для моделей с одним входом обеспечить управление с помощью регулятора состояния, имеющего жесткую структуру [1].
Из работ Калмана и Тоу известно, что для такого перевода с помощью дискретных управлений из начального состояния в конечное (например нулевое) требуется синтезировать не менее n сигналов управления, где n - порядок системы [2].
Для подтверждения работоспособности рекурсивного алгоритма параметрической оптимизации рассмотрим следующую задачу идентификации.
Предположим, что дискретная система управления описывается следующим матричным уравнением вида (1): x1(k+1)1 Г 0,852 -0,158 0,156] I"x1(k)' x2(k+1) = -0,328 -0,499 0,403 ■ x2(k) x3(k+1)J 0,527 0,356 0,557j |_x3(k) -0,1251 0,425 u(k) 0,301
с векторами начальных и конечных условий
(2)
(1)
х1(0)" 460.1' "x1(N)' Г499.98811
x2(0) = 113.1 , x2(N) = 117.0000
x3(0) 718.4 x3(N) 771.1648
В результате оптимального управления системой по критерию минимума расхода энергии на управление получены расчетные данные, отображенные в таблице.
В первом столбце таблицы содержатся значения шага k , изменяющиеся от 0 до 30. Во втором, третьем и четвертом столбцах приводятся значения переменных состояний X1(k), X2(k), X3(k)
соответственно. В последнем столбце приведены значения элементов вектора управления Uopt(k), переводящего систему из заданного начального состояния в конечное при минимальных затратах энергии за 30 шагов. В корректности вычислений можно убедиться по значениям переменных состояния при k=0 и k=30.
k X1(k) X2(k) X3(k) Uopt(k)
0 460.1000 113.1000 718.4000 412.6864
1.0000 434.6200 257.5572 805.8596 403.1237
2.0000 404.9258 225.0126 888.1060 393.7834
3.0000 398.7664 280.1677 904.2291 384.6583
4.0000 388.4600 257.2850 926.2455 375.7464
5.0000 387.8429 277.1691 922.5002 367.0384
6.0000 384.6796 262.2391 924.3277 358.5359
7.0000 385.6914 267.8496 915.9685 350.2248
8.0000 385.4018 257.8171 911.2796 342.1142
9.0000 387.0226 257.5817 902.6128 334.1794
10.0000 388.0805 250.3025 896.1699 326.4453
11.0000 390.0936 247.7043 888.2994 318.8639
12.0000 391.9392 241.9467 881.7982 311.4942
13.0000 394.3284 238.4622 874.9449 304.2372
14.0000 396.7525 233.5712 869.0002 297.2245
15.0000 399.5399 229.8406 863.1683 290.2460
16.0000 402.4666 225.4719 858.0013 283.5892
17.0000 405.6766 221.7804 853.1548 276.8010
18.0000 409.0872 217.7314 848.8301 270.5008
19.0000 412.7456 214.2128 844.9254 263.7026
20.0000 416.6592 210.3058 841.4183 257.7305
21.0000 420.8102 207.0202 838.3818 250.4225
22.0000 425.3059 202.9686 835.5448 244.5842
23.0000 430.0635 199.8912 833.1786 235.4374
24.0000 435.3775 195.0253 830.5531 228.8619
25.0000 441.0862 191.8578 828.2332 214.1947
26.0000 447.9219 184.3974 824.4418 203.5588
27.0000 455.6628 179.8298 820.1573 172.8558
28.0000 466.1491 164.7946 811.0328 146.4506
29.0000 479.3363 153.9583 798.3416 68.9784
30.0000 499.9881 117.0000 771.1646 0
С помощью изложенного алгоритма решим инверсную задачу: по приведенным расчетным данным оценим коэффициенты матриц A и B , которые будем считать неизвестными.
Согласно алгоритму, произведение матриц D*DT будет равно
"0.4939 0.2661 1.0255 0.3524" 0.2661 0.1501 0.5648 0.1974 1.0255 0.5648 2.1542 0.7452 0.3524 0.1974 0.7452 0.2697
DD'=
и, следовательно, ее инверсия
Z1 =
0.0518 0.0729 -0.0430 -0.0022 0.0729 0.1614 -0.0725 -0.0132 -0.0430 -0.0725 0.0392 0.0010 -0.0022 -0.0132 0.0010 0.0102
Составляющая оценочной формулы 0.4947 0.2664 1.0274 0.3516" Х(1^)^'= 0.2683 0.1493 0.5667 0.2008 107 , 1.0294 0.5660 2.1595 0.7501
и идентификация элементов матриц системы [АМВ]=-1 =
10-
0.8520 -0.3280 0.5270
-0.1580 0.1560 -0.4990 0.4030 0.3450 0.5570
-0.1250 0.4250 0.3010
Результаты свидетельствуют о корректности вычислений. На рисунке показан процесс перехода динамической системы из заданного начального в конечное состояние, соответствующий приведенным ранее расчетным табличным данным.
Расчеты позволяют убедиться, что процесс, приведенный в качестве примера, соответствует минимуму эвклидовой нормы вектора управления. Иначе говоря, из всех возможных управлений, переводящих систему из заданного начального состояния в заданное конечное состояние за 30 шагов, только изображенное на рисунке управление
1000 900
500 400 300 200 100
Х3(к)
к=0,1 !......30.
___________их1(к)
и(к)
V.
-Г2Щ — __________* 0)=[460.1 1 13.1 718.4Г
Х(30)=[499.9В81 117.0000 I 771.1646]'. \
Оптимальное управление дискретной динамической системой
и(к) обеспечивает минимальный расход энергии на управление рассматриваемой дискретной динамической системой.
Литература
1. Арефьев И.Б., Трояновский Я. Автоматизация судо-пропуска на ВВП. - СПб: Система, 2007. - 247 с.
2. Трояновский Я. Задача нахождения оптимального радиуса действия береговой радиостанции АИС. // Морская радиоэлектроника (корабли и вооружение как единая система). -№ 2. - 2008. - С. 28-30.
МОДЕЛИРОВАНИЕ СОСТОЯНИЯ И ПОВЕДЕНИЯ СУДНА НА БАЗЕ ФИЛЬТРА КАЛМАНА
И.Б. Арефьев, д.т.н. (Северо-Западный технический университет, г. Санкт-Петербург); Я. Трояновский, к.т.н. (Морская академия Польши, г. Щецин, [email protected])
Ключевые слова: модель поведения судовых динамических систем, фильтр Калмана, алгоритм фильтрации, белый шум, дискретный наблюдатель.
Моделирование судовых систем управления в реальном масштабе времени условно подразделено на шесть ступеней: сбор данных, сетевые топологические вычисления, анализ наблюдаемости, оценка состояния, обработка «плохих» данных, идентификация параметров сигналов и управляемых объектов по экспериментальным данным. Одним из реальных решений указанной проблемы является применение фильтра Калмана и его развитие в формировании дискретного наблюдателя, структура которого предполагает снижение объема вычислений для реального построения модели поведения судовых динамических систем.
Для класса моделей в форме разностных уравнений
п т _
у(г) = 2 5,(к) • у(г -1) + 2 Ь(к)и(г - ,0 (1)
(где г - целые числа на множестве [1,к]) разработан рекурсивный метод оценивания и рассмотре-
ны его приложения для идентификации параметров судовых динамических систем, где а, (к) и
Ь,(к) - оцениваемые коэффициенты.
Фильтр Калмана конструируется в виде динамической системы с переменным матричным коэффициентом усиления, величина которого зависит от точности текущих значений и уровня шумов измерений. Дискретный вариант фильтра основан на рекуррентных соотношениях, выполняемых согласно алгоритму, что создает удобства для его реализации на ЭВМ. Поскольку параметры Калмана изменяются во времени, критерий качества (минимум среднеквадратической ошибки оценивания) минимизируется как в установившихся, так и в переходных режимах. Оптимальная оценка относительно наблюдений является линейной [1]. Вследствие линейности фильтра корреляционная матрица ошибок фильтрации не зависит от наблюдений. Она может быть вычислена зара-