ФЭА / АИТ / Комиссарчик В. Многомерные дискретные АСР с прогнозом регулируемых переменных
(автор - student, добавлено - 14-04-2013, 13:38)
Перспективным способом решения дискретной задачи оптимального управления, рассмотренной в предыдущем разделе, является сведение её к последовательности задач математического программирования. Этот подход, в частности, позволяет: - упростить вычислительную процедуру (вместо моделей объекта управления в пространстве состояния можно использовать более простые модели «вход - выход»; не требуется решать уравнение Риккати); - учитывать в явном виде ограничения на управления; - варьировать длительность произвольного шага управления. 9.1. Структурная схема системы с прогнозом регулируемых переменных и его минимизацией [15] Структурная схема описываемой системы приведена на рис. 82. Математическая модель многомерного объекта управления представлена в ней (т х п) - матрицей переходных функций Н(/), связывающей п - вектор регулируемых переменных У( с т - вектором кусочно-постоянных управлений иг.
Регулируемые переменные измеряются дискретно с интервалом дискретности ТИ . Управления представляют собой кусочно-постоянные функции времени с периодом постоянства управления ТУ. Предполагается, что ТУ >> ТИ . Управляющее устройство системы включает два алгоритмических блока. В начале каждого шага управления первый блок осуществляет прогноз вектора рассогласования Лу{ между заданными и текущими значениями регулируемых переменных на величину текущего шага управления ТУ . Второй блок осуществляет расчет изменения вектора управлений на данном шаге Ли(, минимизирующего прогноз вектора л€- рассогласования ^уг+Ту . На изменение вектора управлений на каждом шаге могут быть наложены ограничения: Ли~ < Аиг < Аи+ (302) Итак, допустимое изменение вектора управлений на каждом шаге определяется в результате решения двух задач: прогноза рассогласования регулируемых переменных на текущий шаг управления и минимизации прогноза рассогласования в общем случае при наличии ограничений (302). Для получения результирующего управления на текущем шаге, найденное изменение вектора управлений складывается со значением вектора управлений на предыдущем шаге: = и-Ту + Лиг. Найденное управление поддерживается неизменным до начала следующего шага управления фиксирующим элементом Ф .
9.2. Прогнозирование рассогласования [15,16] Прогноз рассогласования ДУ,+Ту может быть представлен суммой прогноза свободного (неуправляемого) рассогласования ДУ+Ту, вызванного действием на объект управления неконтролируемых возмущений, а также предыдущих управлений, и прогноза управляемого рассогласования ДУуТУ, обусловленного ступенчатым изменением управления в начале текущего шага управления: лУ,+Ту = лУ+т, + лУд, (303) Для прогноза свободного рассогласования регулируемых переменных применяются методы прогнозирования временных рядов. В частности, для получения краткосрочного прогноза в качестве прогнозируемой функции могут использоваться модели тренда временных рядов, для описания которого используют линейные или линеаризуемые относительно параметров функции. Например, в случае линейной прогнозирующей функции расчетные соотношения для прогноза, определяемые методом наименьших квадратов имеют вид:
лУСТ = ад) + ь1(( )Ту
КО) = 2
п(п +1) 6 п-1 п-1 Еду,- —1Ё1 ^- I =0 п 1 1 = 0 п(п +1) где п - «память» прогнозатора - число членов временного ряда прогнозируемой переменной, используемых для прогнозирования. Для повышения точности прогноза предыдущие наблюдения временного ряда разбиваются на обучающий и экзаменующий временные ряды. Обучающий ряд используется для определения параметров прогнозирующей функции. Оптимизация прогноза достигается поиском оптимальной длины обучающего ряда (основания прогноза), минимизирующей ошибку прогноза на экзаменующем ряду при заданном времени (горизонте) прогнозирования. В более совершенных алгоритмах для повышения точности прогноза используют ансамбль прогнозирующих функций, сформированный по результатам предварительных исследований. При этом результирующий (комбинированный) прогноз находят как линейную комбинацию частных прогнозов по отдельным прогнозирующим функциям. Прогноз управляемого рассогласования определяется по выражению
(304) 9.3. Минимизация прогноза рассогласования [15] В частном случае при отсутствии ограничений на управления (302) задача минимизации прогноза рассогласования может быть решена в явном виде. Максимальная точность регулирования достигается, если управления изменяются на каждом шаге так, чтобы обеспечить нулевое значение прогноза рассогласования:
(305) Подставляя в (305) выражения (303), (304) и разрешая полученное матричное уравнение, получаем выражения для оптимального управления при отсутствии ограничений:
' -[н(Ту )тН(Ту )] Н(Ту )т Д^, при т < п Аи, = • - Н (ту )-1 Д при т = г, - Н (Ту )т [н Ну ) Н (Ту )т ] А] при т > п
Решения при т Ф п (число управлений не равно числу регулируемых переменных) получены с использованием понятия обобщенной обратной матрицы и обладают минимальной нормой. При наличии ограничений (302) решения уравнения (305) в общем случае не существует (физически это означает, что при наложенных ограничениях нельзя добиться точной компенсации прогноза рассогласования). Поэтому от задачи компенсации прогноза рассогласования в общем случае следует перейти к задаче его минимизации: Лу, +тУ (306) К сожалению, задача (306) с ограничениями (302) допускает только алгоритмическое решение. Одной из возможных постановок является решение задачи (306) как задачи с квадратичным критерием качества: дУТ+тУ бД1,+ту + ДиТЕДи1 ^ тт, (307) где 0 и К - соответственно (п х п) - и (т х т) - диагональные весовые матрицы. Первое слагаемое вводится в критерий задачи (307) для минимизации прогноза рассогласования, а второе - для минимизации изменения вектора управления. Подставляя в (307) выражения (303), (304) и вводя обозначения: V = Дм, - Ли]; Ъ = Ди+ - Ди~; О = Н (Ту )’ОН (Ту) + К с = 2[н (Т„ Н едУг+ТУ + ЭДи, ] можно преобразовать задачу (307) с ограничениями (302) к виду: сТV + Vх Бу ^ тт V
Задача (308) есть частный случай задачи квадратичного программирования, в которой требуется отыскать экстремум квадратичной целевой функции многих переменных при линейных ограничениях- неравенствах и условиях неотрицательности переменных: (309) где х - п-вектор переменных задачи; с - п-вектор коэффициентов линейных членов целевой функции 2; В - (п*п) - симметрическая матрица коэффициентов квадратичных членов целевой функции; А - (т*п) - матрица коэффициентов ограничений-неравенств; Ъ - т-вектор свободных членов ограничений. 9.4. Сведение задачи квадратичного программирования к задаче о линейной дополнительности [17,14] Одним из широко распространённых в настоящее время способов решения задачи квадратичного программирования является сведение этой задачи к задаче о линейной дополнительности. Задачей о линейной дополнительности называется задача об отыскании векторов # и 2 таких, что выполняются условия: (310.а) (310.б) (310.в) Условия (310.а) есть ограничения-равенства. Входящие в них р- векторы #, 2, д называются соответственно векторами базисных, свободных переменных и свободных членов ограничений. М - (рхр) - квадратная матрица коэффициентов ограничений. Свободные переменные всегда равны нулю. Базисные переменные положительны. Значения базисных переменных при равенстве нулю свободных называют базисным решением системы (310.а). Условие (310.б) называют условием дополняющей нежёсткости. Согласно этому условию произведение любой пары переменных ж. и 2. должно быть равно нулю, для чего одна из этих переменных всегда должна быть равна нулю, а вторая больше нуля. Поэтому, если не равная нулю переменная ж. входит в число базисных, то равная нулю переменная 2{ должна быть свободной и наоборот. Переменные ж. , 2. называются парой взаимодополняющих (дополнительных) переменных. Условия (310.в) называются условиями неотрицательности переменных. Для того чтобы свести задачу квадратичного программирования (309) к задаче о линейной дополнительности (310), запишем необходимые условия экстремума (условия Куна-Таккера) для задачи (309):
Х2 — 2 Ох + А 2 + с, 8 — - АХ + Ъ, Хт2 х — 0, ГАг — 0, Х, 2, Х2, 8 > 0 где 2, 22 - соответственно т- и п- векторы неопределённых множителей Лагранжа для ограничений-неравенств и условий неотрицательности переменных в задаче квадратичного программирования, 8 - т-вектор дополнительных неотрицательных переменных, вводимых в ограничения-неравенства для преобразования их в равенства. Вводя обозначения
можем записать (311) в форме (310) и тем самым свести задачу квадратичного программирования к задаче о линейной дополнительности. 9.5. Решение задачи о линейной дополнительности методом Лемке При д > 0 задача (310) имеет тривиальное базисное решение: Ж = д. Если же вектор д содержит хотя бы один отрицательный элемент, начальное базисное решение оказывается недопустимым, т.к. нарушается условие (310.в). Для получения допустимого решения введём во все уравнения системы (310.а) искусственную положительную переменную 20, равную максимальному абсолютному значению среди всех отрицательных элементов вектора д. Пусть для определённости тт дг = д^, I тогда 20 = -Ч, . При этом задача (310) принимает вид:
Ж - М -2 - е • 20 = д, ж.- г. = 0; I = 1, р, гг ’ ? ± ? Ж, 2., 20 > 0 г? г? 0 где е - единичный вектор. Для решения задачи (312) к системе ограничений-неравенств (312.а) применяют последовательность симплексных преобразований. Каждое симплексное преобразование позволяет поменять местами базисную и свободную переменные, т.е. базисную переменную вывести из базиса и превратить её в свободную, а свободную переменную ввести на её место в базис. Симплексное преобразование легко формализовать при использовании симплексных таблиц. Начальная симплексная таблица для задачи (312) имеет вид (таблица 9) Таблица 9.
В первом столбце таблицы записаны базисные переменные. Остальные столбцы соответствуют базисным, свободным переменным и искусственной переменной. Последний столбец содержит свободные члены ограничений-неравенств. На пересечении строк и столбцов, соответствующих базисным переменным, ставятся единицы, остальные элементы этих столбцов равны нулю. В столбцы, соответствующие свободным переменным, вписываются коэффициенты ограничений. Элементы столбца, соответствующего искусственной переменной, полагаются равными минус единице. Для того, чтобы свободную переменную 2Г ввести в базис, а базисную переменную ж^ вывести из базиса, необходимо осуществить симплексное преобразование относительно элемента тг , находящегося на пересечении строки ж^ и столбца т,г . Этот элемент и порождающие его строка и столбец называются разрешающими. В результате симплексного преобразования получаем новые значения коэффициентов и свободных членов ограничений (312.а), определяемые по выражениям. П т П т т.. = т —т.; а. = а —а у у 1г 1г 1 е т т ег ег (индексом «П» снабжены значения коэффициентов и свободных членов ограничений после симплексного преобразования). На первом шаге в базис вводится искусственная переменная 20 вместо базисной переменной ^ (разрешающий элемент обозначен в таблице 9 кружком). После первого симплексного преобразования симплексная таблица принимает вид (таблица 10). Таблица 10.
В результате начального симплексного преобразования базисная переменная ^ превратилась в свободную, имеющую нулевое значение. В соответствии с условием дополняющей нежёсткости (312. б) дополнительная для переменной ^ переменная должна иметь ненулевое значение, поэтому на втором шаге эту переменную следует ввести в базис. Таким образом, получаем простое правило выбора переменной, вводимой
в базис (правило выбора разрешающего столбца): на каждом шаге в базис вводится переменная, дополнительная к базисной переменной, выведенной из базиса на предыдущем шаге. В качестве переменной, выводимой из базиса, выбирается переменная жк , для которой отношение свободного члена ограничения дк к коэффициенту ограничения в разрешающем столбце ткз минимально для всех положительных коэффициентов (правило выбора разрешающей строки): = шт(-^-, Vт8 > 0). т, г т “ кз гз На третьем шаге согласно правилу выбора разрешающего столбца в базис вводится переменная гк и т.д. Решение достигается тогда, когда при очередном симплексном преобразовании оказывается, что к=з, т.е. номер разрешающей строки становится равным номеру строки с максимальным по модулю отрицательным свободным членом ограничений (условие последнего перед остановом симплексного преобразования). При этом переменная 20 выводится из базиса, принимает нулевое значение, что и свидетельствует о нахождении допустимого решения задачи о линейной дополнительности. Похожие статьи:
|
|