- •Моделирование систем управления
- •Два аспекта понятия моделирования. Понятие об идентификации.
- •Причины необходимости создания новых моделей
- •Характеристики объектов и процессов, которые надо учитывать при создании моделей
- •Приемы упрощения моделей
- •Этапы построения моделей
- •Определение цели получения модели
- •Определение ограничений и условий, учитываемых при построении моделей
- •Выбор подхода к решению задачи получения модели
- •Определение класса модели. Выбор метода решения задачи и ее решение
- •Общие принципы построения аналитических моделей
- •Модель поплавкового уровнемера
- •Модель процесса теплопередачи
- •Модель смесителя.
- •Модель реактора
- •Модель емкости с изменяющимся уровнем
- •Метод наименьших квадратов в одномерном случае
- •Метод наименьших квадратов в многомерном случае
- •Рекуррентный метод наименьших квадратов
- •Взвешенный мнк и другие разновидности мнк
- •Получение модели по частотным характеристикам
- •Идентификация систем по переходной характеристике
- •Идентификация звена 1-го порядка по переходной функции
- •Идентификация звена 1-го порядка с запаздыванием по переходной функции
- •Идентификация параметров колебательного звена 2-го порядка
- •Определение параметров апериодического звена 2-го порядка
- •Идентификация по апериодической переходной функции с точкой перегиба звена первого порядка с запаздыванием
- •Метод кратных корней
- •Метод площадей
- •Основное уравнение идентификации
- •Решение основного уравнения идентификации
Метод наименьших квадратов в многомерном случае
Будем рассматривать здесь многомерную модель как модель со многими входами и одним выходом:
Рис. 18. Многомерная система
Сигналы на входах и выходах считаем центрированными, т.е.
M[xj(t)] = 0, j = 1, 2, ..., k; M[y(t)] = 0.
Модель ищем в виде линейной комбинации входных сигналов
Помеху считаем аддитивной
Выбираем N >> k моментов времени ti, i = 1, 2, ..., N и в каждый из этих моментов наблюдаем все входы и выход.
Интервал между ti не играет роли. Важно только, что в момент взятия отсчетов система должна быть в установившемся состоянии, т.е. интервал должен быть достаточным для практического окончания переходных процессов при изменении очередного состояния системы.
Введем обозначения:
xj(ti) = xij; y(ti) = yi; (ti) = i.
тогда
В матричной форме
Y = XB + E,
где
Критерий приближения
Так как E = Y - X B, то
J = (Y - XB)T(Y - XB) = (YT – BTXT)(Y – XB) =
= YTY – BTXTY – YTXB + BTXTXB
Поскольку все слагаемые в последнем уравнении скаляры, то
BTXTY = (BTXTY)T = YTXB
Тогда
J = YTY – 2BTXTY + BTXTXB
Вектор коэффициентов B можно вычислить из условия: dJ/dB = 0:
Здесь использовано правило для двух векторов y и z:
Далее воспользуемся правилом: если Q – квадратная матрица, а z – вектор соответствующего размера, то
Для квадратной матрицы XTX и вектора B получаем:
Тогда
dJ/dB = -2XTY + 2XTXB = 0
Откуда получаем т.н. нормальные уравнения МНК:
XTXB = XTY.
Решение нормальных уравнений
B = (XTX)-1 XTY
Обычно приведенное решение используется в теоретическом анализе, а вычисление вектора коэффициентов B выполняется решением системы нормальных уравнений (например, методом Гаусса).
Запишем матрицы системы
В одномерном случае (k = 1) положим xi1 = xi, тогда
yi = b1 xi + i
что совпадает с ранее полученным ранее выражением.
Рекуррентный метод наименьших квадратов
Пусть по N наблюдениям вычислен вектор коэффициентов
BN = (XTX)-1 XTY = PN XTY
где PN = (XTX)-1, и пусть в момент tN+1 получена еще одна серия отсчетов
yN+1, xN+1,1, xN+1,2, ..., xN+1,k.
Необходимо найти способ откорректировать вектор BN по информации, полученной на (N+1)-ом шаге, т.е. найти способ вычисления по формуле
BN+1 = BN + f(yN+1, xN+1,j), j = 1, 2, ..., k.
В этом состоит рекуррентный МНК. Для коррекции вектора BN не требуется ни обращения матриц, ни повторного формирования и решения нормальных уравнений. Метод может использоваться как при оперативной, так и при ретроспективной идентификации.
Пусть
Сформируем клеточные (или блочные) матрицы
Тогда
Воспользуемся далее формулой из леммы об обращении матриц (см. Современные методы идентификации систем. Под ред. П. Эйкхоффа. М.: Мир, 1983, стр. 391).
Лемма. Если необходимые обратные матрицы существуют, тогда
(A + BCD)1 = A1 A1B(C1 + DA1B) 1DA1
Доказательство.
Если лемма справедлива, то по определению обратных матриц произведение исходной матрицы A + BCD на ее обратную должно дать единичную матрицу I:
(A + BCD)[ A1 A1B(C1 + DA1B) 1DA1] = AA1 + BCDA1
AA1B(C1 + DA1B) 1DA1 BCDA1B(C1 + DA1B) 1DA1 = I +
+ BCDA1 B(C1 + DA1B) 1DA1 BCDA1B(C1 + DA1B) 1DA1 =
= I+ BCDA1 BC[C1(C1 + DA1B) 1 + DA1B(C1 + DA1B) 1]DA1 =
= I + BCDA1 BC[(C1 + DA1B)(C1 + DA1B) 1]DA1 =
= I + BCDA1 BCDA1 = I, ч.т.д.
Пусть теперь C = 1, B = b – матрица-столбец, D = bT, тогда можно записать
Применяя последнее выражение, когда A = XTX; b = x, получим:
Отсюда:
Т.о. для вычисления BN+1 необходимо знать BN; PN и новую информацию yN+1; x. Вычисления состоят только в умножении и сложении матриц, т.е. отсутствуют операции обращения или решения системы уравнений.
Обратим внимание на то, что произведение
равно значению выходного сигнала, предсказываемое моделью (построенной за N шагов) по вектору новых значений x. Если это предсказываемое значение равно измеренному значению выхода, т.е. если
xT BN = yN+1,
то BN+1 = BN и никакого пересчета вектора BN не требуется.
Для применения формулы пересчета вектора BN+1 на следующем (N+2)-ом шаге потребуется, очевидно, матрица PN+1. Эту матрицу можно получить коррекцией матрицы PN.
Так как BN = PN XTY, то выражение
BN+1 = (XTX + xxT)-1 (XTY + xyN+1)
можно записать как
BN+1 = PN+1 (XTY + xyN+1),
где
Последнее выражение, полученное с помощью леммы об обращении матриц, позволяет получить откорректированную матрицу PN.