Просмотр полной версии : Адаптивные САУ и ИИС ЛА
Здравствуйте, товарищи
Выношу на обсуждение тему создания адаптивных систем управления движением ЛА, в частности информационно-измерительных систем (ИИС) (как часть адаптивных САУ), функции которых - параметрическая идентификация неизвестных параметров матмодели ЛА,
адаптивная фильтрация вектора состояния - при отсутствии или минимуме информации о параметрах матмодели ЛА (известна лишь структура), статистических хар-ках внешних (турбулентных, например) воздействиий и шумов измерителей.
У меня диссерт этому посвящен. Есть ряд интересных разработок.
Вот только алгоритмы адаптации/обучения на базе метода Ньютона капризные. Для матмодели 2 порядка (короткопериодическое продольное движения ЛА) сходимость процессов идентификации хорошая, при более высоких порядках - намного хуже.
Кто так же маялся с алгоритмами обучения/оптимизации? Спрашиваю на всякий случай - а вдруг
Занимается ли созданием таких систем (в т.ч. адаптивных САУ) в наших конторах? Спрашиваю, поскольку что за бугром делается знаю хорошо (ибо инфы в той же сети и людей в достатке), а что и как это делается у нас - большая загадка.
Создание этих систем - актуально, ибо в процессе полета для принятой матмодели изменяются аэродинамические производные,
моментные хар-ки, масса, ЦД и ЦМ. Традиционный алгоритм управления, заточенный на конкретную номинальную модель,
уже не обеспечивает оптимальное управление. Поэтому необходимо в режиме реального времени для выбранной матмодели оценивать
неизвестные изменяющиеся параметры и получать оценку вектора состояния. На основе данных параметрического идентификатора
и адаптивного фильтра алгоритм управления подстраивается с целью оптимизации управления (в соответсвии с заданным критерием)
Спрашиваю, поскольку что за бугром делается знаю хорошо (ибо инфы в той же сети и людей в достатке), а что и как это делается у нас - большая загадка.
а чем тебе западная информация не устраивает ?
собственно , привел бы ссылки на бумаги или книги типа Льюнг Идентификация систем ну или вот допустим
http://ettc.usc.edu/commquest/modeling/jorgensen.pdf
, которые тебя интересуют - ну народ бы и поглядел и от себя что изложил ;)
тк разных подходов МНОГО.
и пока ты не укажешь где ты копаешься ( по ссылке - да вот я взял отсюда и поробовал вот это) ничего из пальца не насосешь из того, что ты сказал.
а так - ты изложил кучу всего ( далеко не на диссер - а на целый институт ) и спрашиваешь .
Создание этих систем - актуально, ибо в процессе полета для принятой матмодели изменяются аэродинамические производные,
моментные хар-ки, масса, ЦД и ЦМ. Традиционный алгоритм управления, заточенный на конкретную номинальную модель,
уже не обеспечивает оптимальное управление. Поэтому необходимо в режиме реального времени для выбранной матмодели оценивать
неизвестные изменяющиеся параметры и получать оценку вектора состояния. На основе данных параметрического идентификатора
и адаптивного фильтра алгоритм управления подстраивается с целью оптимизации управления (в соответсвии с заданным критерием)
вот если ты поглядишь - то это нечто иное чем
параметрическая идентификация неизвестных параметров матмодели ЛА
те если тебе нужны статистические алгоритмы фильтрации значений указываемых параметров ->
аэродинамические производные,
моментные хар-ки, масса, ЦД и ЦМ
------------
- это одно - довольно развитая тема ( и книжки есть и оптимальность можно подумать) и даже в другую сторону пойти - оптимизация наблюдения - те за чем глядим - ну я из космической тематике , допустим могу подумать над книжкой
Малышев Красильщиков Карлов - Оптимизация наблюдения и управления.
из общего
Острем Ввведение в теорию стохастического управления
те как бы тебе сказать в той задаче. что ты обозначил ЕСТЬ куча разных нюансов - на которые нельзя ответить в той постановке, что ты дал.
Потому что задачу сходимости параметрической модели можно решить - решит ли задачу управления ЛА - как ты ее потом описываешь - не знаю :) скорее всего нет. Потому что ты решишь то, что тебе увиделось как текущая проблема, а не то, что решает проблему.
Вот ( ну это так , я прикидываю ;) )
те если расписать постановку задачи - и возможные подходы - можно увидеть откуда и куда ноги растут и за что то уцепиться.
( для того в аспирантуре, я так понимаю и учаться...)
а потом вот быстренько пишут диссер на понятой основе ;)
а вообще иногда народ сюда заглядывает с диссерами - пообщаешься :) а народ раз и ноги от сюда. Причем вот самое забавное - что постановки делают явно докторских - а вот когда добираешься до сути уже мылом - там иногда не тянут понимать что то даже как студенты ( я не про тебя а вообще про тенденцию) так что вот.
Ежели хочешь что то накопать - придеться потрудиться :) и даже есть вероятность что в пустую пробежишься - однако ответ на тебя тут не свалится только по тому, что это общий авиационный форум - тут есть специалисты но вовсе не академики и даже не доктора наук :) так что процесс получения информации будет довольно извилист... ежели ты его будешь вести - отлично - нет - Кажется, что ответа , который ты ожидаешь - ты не получишь.
Для полезных знакомств подобного рода похоже есть всякого рода научные конференции где люди знакомяться и прочее....
иногда спецов в какой то сфере пара человек на всю страну. Так вот они персонально знакомятся и начинают общаться....
те извини, я больше в методологию ударился - но вот чем могу тем и ответил :D
Здравствуйте!
Большое спасибо за ответ! Извините, что сразу не ответил - на работе слишком много дел было.
>а чем тебе западная информация не устраивает ?
Устраивает иногда, но хотелось бы узнать как делают у нас. Да и западники помешались на нейросетях слишком,
хотя для идентификации их применение очень ограниченно, ибо нейросеть может описывать объект (как настраиваемоая модель),
но не дает информации о структуре и параметрах объекта
Спасибо за ссылку, интересная. И книгой Льюнга я пользуюсь, да и самому посчастливилось как-то раз с ним познакомиться на конференции.
вот если ты поглядишь - то это нечто иное чем
Я несколько сумбурно писал. Одно - идентификация параметров, другое - адаптивное управление, но идентификатор может быть частью
адаптивной САУ.
А что понимается под "оптимизацией наблюдения"? Тут воздействие на сам объект наблюдения имеется в целях оптимизации наблюдения?
Планирование эксперимента?
Вообще я на форуме avia.ru обычно, но сюда обратился я, поскольку заметил, что тут подобные темы обсуждаются, что для меня интересно
Теперь я постараюсь подробнее пояснить применяемый в работе подход. Может глупо столько математики в форуме писать, ну да ладно.
Зато будет понятно, ибо критика мне нужна. В конференциях я участвую, но критики недостаточно бывает.
Для стохастической системы разаработана структура и метод построения информационно-измерительной системы,
которая основана на принципе инвариантности и тяготеет к обобщенному настраиваемогу объекту измерения (ОНОИ).
Принимается гипотеза о линейной матмодели движения ЛА, что вполне нормально для горизонтального пряимолинейного полета.
Система ДУ приводится к система разностных уравнений в матричной форме в форме Коши:
X(k)=A*X(k-1)+B*u(k-1)+D*ksi(k-1) (1)
Y(k)=C*X(k)+v(k), (2)
где ksi и v - соответсвенно внешнее воздействие (турбулентность, например) и шумы измерителей,
которые считаем нормальными белыми шумами с нулевым средним и соответсвующими матрицами ковариации.
Получим матожидание для (1):
Xs(k)=A*Xs(k-1)+B*u(k-1) (3)
Предполагается, что на объект (ЛА) действует параметрическое возмущение - изменяются элементы матриц A и B в (1).
При этом предполагается, что скорость изменения элементов этих матриц мала и даже можем предположить, что на рассматриваемом
промежутке времени элементы матриц A и B постоянны, но неизвестны. Это положение справделиво для многих типов ЛА, в части маломаневренных
Второй вариант - просто оцениваются неизвестные элементы матриц A и B.
Предположим, что
A=A0+deltaA, B=B0+deltaB, (4)
где deltaA и deltaB - параметрические возмущения (неизвестные),
A0 и B0 - матрицы системы, соответсвуюшие некой номинальной модели движения в отсутсвие возимущений.
Отмечу, что A0 и B0 нам изначально известны (или выбираются)
Уравнение для этой номинальной модели:
Z(k)=A0*Z(k-1)+B0*u(k-1) (5)
Введем в рассмотрение некую переменную T, такую, что
T(k)=X(k)-Z(k), (6)
или что тоже самое
X(k)-T(k)=Z(k) (7)
То есть, как видно, чисто виртуально (в БЦВМ) вектор T осуществляет координатно-параметрическую компенсацию
параметрически возмущенного объекта (1) и приводит его к модели (5).
Несложно показать, что
T(k)=(A0+deltaA)*T(k-1)+deltaA*Z(k-1)+deltaB*u(k-1) (8)
Это уравнение характеризует ту добавку, которая получается вследствие параметрических возмущений.
Его мы и вычитаем из (1) - смотрите (7)
Поскольку deltaA и deltaB нам неизвестны, то требуется производить их идентификацию.
Цель идентификации - определние таких deltaM и deltaN, что:
deltaA=deltaM (9)
deltaB=deltaN. (10)
Значит настраиваемый канал координатно-параметрического рассогласования будет иметь вид:
Ta(k)=(A0+deltaM)*Ta(k-1)+deltaM*Z(k-1)+deltaN*u(k-1) (11)
Таким образом, на каждом шаге (итерации) с помощью алгоритма идентификации находим оценки матриц deltaA и deltaB
и подставляем их в (11).
Несложно показать, что в результате такой компенсации (S(k)=X(k)-Ta(k)) мы получаем в идеале объект:
S(k)=A0*S(k-1)+B0*u(k-1)+W, (12)
где W - новый случайный процесс, представляющий собой взвешенную сумму двух нормальных б.ш.,
где одна из весовых матриц - deltaA. То есть на выходе такого "компенсированного" объекта тоже нормальный случайный процесс
с неизвестной ковариационной матрицей и нулевым матожиданием.
И еще можно показать, что
Y0(k)=C*S(k)+v(k), (13)
где
Y0(k)=Y(k)-C*Ta (14)
Таким образом, (13)-(14) - новый "компенсированный" объект
Поскольку ковариационная матрица "нового" шумового воздействия неизвестна и неизвестна
ков. матр. шумов измерителей v, то надо применять адаптивнй фильтр для оценки вектора состояния.
Поскольку шумы "просачиваются" в систему.
Определим критерий, по которому будем производить настройку матриц канала (11)
Пусть ошибка имеет вид:
e(k)=Y(k)-(C*Ta(k)+Z(k)) (15)
Функция потерь:
Q=0.5*e(k)*E*e(k)' (16)
(E - единичная матрица)
Пусть вектор неизвестных параметров:
p=[daltaa11, daltaa12...,deltann]', элементы этого вектора - элементы матриц deltaA и deltaB.
(Тут поскольку мы рассматриваем расширенный об'ект (модель), который содержит кроме уравнений динамики
уранение/я рулевого тракта, то deltaB=0, поскольку вектор B содержит только априори известные параметры рулевого тракта)
Тогда метод Ньютона:
L(k)=L(k-1)+(dTa(k)/dp)'*C'*E*C*(dTa(k)/dp) (17)
p(k)=p(k-1)+(L(k))^(-1)*(dTa/dp)'*E*e(k) (18)
(И вот он для моделей второго прорядка (матрица A 2x2) - сходится хорошо (но в моденли только
уравнения движения) .
А для моделей большего порядка, когда добаляем, например, рулевой тракт (модель - апериод. звено
1-го порядка), сходимость плохая. И вроде обусловленность матрицы L не очень влияет на результат)
Окончательно оценка реального вектора состояния равна:
Xest=Ta+Sest,
где Sest - оценка (13)-(14), которую дает адаптивный фильтр
Один из адаптивных фильтров, применяемых в работе - разработанный мной вариант адаптивного фильтра Калмана,
в котором на основе невязки мы идентифицируем неизвестные матрицы ковариаций, подставляем их в алгоритм фильтра Калмана.
Правда я пока этот метод фильтрации не моделировал
Конечно, принято много допущений. Пока что я упрощаю модели внешних турбулентных возмущений, чиста применяю нормальный б.ш., хотя на самом деле модель турбулентного ветра сложнее - минимум формирующий фильтр (апериод. звено 1-го порядка) для бш с нулевым матож. и единичной дисперсии, или даже модель Драйдена.
Но это усложнит систему - добавит порядок при зашивании ее в расширенный об'ект
Линейная аппроксимация - тоже допущение
Вот вопрос еще нерешен до конца - построение адаптивной системы управления на базе описанной выше системы
А вообще, поиск коллег в сети - дело полезное :p
А что понимается под "оптимизацией наблюдения"? Тут воздействие на сам объект наблюдения имеется в целях оптимизации наблюдения?
Планирование эксперимента?
Вообще я на форуме avia.ru обычно, но сюда обратился я, поскольку заметил, что тут подобные темы обсуждаются, что для меня интересно
аа пока я отвечал вы уже написали так что сорри за возможную кривизну ответа, счас буду читать и думать - итак ответ до прочтения ваших последних постов.
ну во первых я скажу, что не спец :) вот но под
оптимизацией наблюдения понимаеться ( в упомянутой книжке) следующее - выбираеться такой алгоритм наблюдения , который оптимизирует получение достоверной оценки.
Этот алгоритм наблюдения сводиться к минимаксным задачам и рассматриваються примеры ( ну книжечку наверное вы сами можете пролистать)
ну да это можно назвать оптимальной фильтрацией с планированием процесса наблюдения
можно - оптимизация активных экспериментов - например в книге есть примерчик с активным воздействием - выбор стратегии вращения акселерометра для получения уходов гироплатформы ( ну видимо нечто подобное можно организовывать для оценок ухода цм в полете ?)
те решаеться такая задача -
для наблюдателя
y=gamma*H(mu) *x + nu
где y вектор измерений,
H матрица наблядения
nu белый шум
gamma программа измерений
mu вектор параметров влияния который зависит от управлений на эксперимент
те u это план активного эксперимента, а совокупность gamma u комбинированный план.
Те что делаеться -а по сути управляя измерителями улучшают оценку ( того же положения цм)
те в кратце для меня - вместо того, чтобы идентифицировать наблюдатель ( его структуру) наблюдатель считается известным ( и вместо четкой структуры ( ее идентификации) даеться некая возможность вероятностного описания) - а оптимизируеться измерение того что уходит с тем чтобы вместо вероятностных зависимостей был y который дальше подставлялся в традиционные формулы динамики самолета.
Те структура уравнений - не идентифицируеться путем идентификации системы - а создаеться наблюдатель, который оценивает параметры для существующей модели.
Вот но тк я все равно из вашего первого ( теперь появились еще ответы - почитаю) ответа не понял, чем же вы занимаетесь :) то вот такой ответ ( он может быть) совсем вам ни к чему. Ну раз такой разговор - то вот такой и ответ ;)
по крайней мере - то, что я в курсе - что есть работы по теме оценке плывущих параметры в какой либо модели с помощью оптимального наблюдения.
О я прочитал - да действительно вот разница пока на первый взгляд в том, что элементы вы определяете, а то, что упоминаю я - это более менее идентифицированная система но элементы наблюдателя подвержены неким случайным возмущениям.
В общем ладно - попробую напрячся ;)
может что то выдам.
Вообще я уже лет десять как программист :D и не занимался случайными процессами и идентификацией. ( Да и занимался я оперативным планированием работы спутников - те в основном дискретные оптимизационные алгоритмы ;) ) просто любопытна тема....
и говорю - иногда приходят сюда люди - а не поймешь чего они хотят - так что поболтать интересно .
Но спец я по теме ни какой - лишь методологические замечания :D
кстати вот в той же бумаге по нейронным сетям я увидел некий иной алгоритм тренировки ( не важно, что сети) ну просто как идея - быть может какой то другой алгоритм сможет сходиться лучше. Но по моему лучше таки про систему уравнений не считать - что
мы мало знаем о структуре уравнений :)
Спасибо за пояснения, уяснил.
Насчет оптимизации измерений - интересны подходы с использованием обобщенного настраиваемого объекта измерения (ОНОИ).
Только данный подход не всегда применишь к ЛА.
Хотя приведенный мной метод тяготеет к ОНОИ (но на объект мы не воздействуем и компенсируем его виртуально).
Еще интересны подходы с обобщенным настраиваемым объектом управления (ОНОУ), продвигаемые Земляковым и Рутковским.
Там реально мы вводим контур управления (помимо основного), который параметрически делает объект инвариантным
Та статейка, адрес которой Вы дали в начале обсуждения действительно интересна. Единственно, этот метод (Левенберга-Марквардта) не гарантирует сходимости к глобальному минимуму.
Этим очень грешит, ессесно, и метод Гаусса-Ньютона, приведенный мной выше и активно используемый мной в работе.
То есть нет гарантии сходимости. Во многих случаях алгоритм сходится к какому-то локальному решению.
Некую версию алгоритма Левенберга-Марквардта (вместо лямбды использую слагаемое d*E, где d - малое чило, E- единичная матрица) я использую в методе Гаусса-Ньютона, но в качестве процедуры
регуляризации, чтобы предотвратить недоразумения в случае вырожденности гессиана. От развала спасает.
Хотя конечно, обусловленность гессиана мало влияет на точность сходимости. При больших числах обусловленности гессиана алгоритм может развалиться, при малых не развалится, но сходимости лучше не станет
Насчет метода (пояснения):
Известна некая номинальная модель {A0, B0}, но неизвестны статистические харакетристики случайных внешних возмущений
и шумов измерителя - D и ковариация v(k).
В процессе полета появляются параметрические возмущения deltaA и deltaB, которые нам неизвестны и которые мы идентифицируем с помощью алгоритма Гаусса-Ньютона например.
Ta - это та координатная добавка, которая получается в результате появления параметрических возмущений deltaA и deltaB.
То есть Z+Ta=Xsr, где Z - модель {A0, B0}, Xsr - матожидание параметрически возмущенного обекта.
Далее мы оцениваем Ta, подставляя в него оценки deltaA и deltaB.
А вот вычитая из наблюдения Y оценку С*Ta (где С- матрица наблюдения), получаем некий новый виртуальный объект
вида
S(k)=A0*S(k-1)+B0*u(k-1)+W,
Y0(k)=C*S(k)+v(k),
где W - новый случайный процесс, представляющий собой взвешенную сумму двух нормальных б.ш., где одна из весовых матриц - deltaA.
Y0(k)=Y(k)-C*Ta
Таким образом мы провели виртуальную (чиста в БЦВМ) параметрическую компенсацию объекта, и относительно параметрических возмущений объект (виртуально) инвариантен.
Но дело в том, что в нем неизвестна ковариационная матрица процесса W и по прежнему неизвестна ковариационная матрица
для v. И тут нужен адаптивный фильтр вида:
So(k)=A0*So(k-1)+B0*u(k-1)+K(k)*(Y0(k)-C*(A0*So(k-1)+B0*u(k-1))),
который, как видно, заточен на модель {A0, B0} в отсутсвие параметрических возмущений (мы их компенсируем).
So - оценка S
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot