Научная статья на тему 'Учет ограничений равенств при решении оптимизационных задач с линейными ограничениями'

Учет ограничений равенств при решении оптимизационных задач с линейными ограничениями Текст научной статьи по специальности «Математика»

CC BY
447
52
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ВЫПУКЛОЕ ПРОГРАММИРОВАНИЕ / ЛИНЕЙНЫЕ ОГРАНИЧЕНИЯ / УЧЕТ ОГРАНИЧЕНИЙ-РАВЕНСТВ / РЕКУРРЕНТНОЕ ПСЕВДООБРАЩЕНИЕ

Аннотация научной статьи по математике, автор научной работы — Вылегжанин Олег Николаевич, Шкатова Галина Ивановна

Предложен алгоритм, позволяющий сократить размерность пространства искомого вектора неизвестных при решении оптимизационных задач с ограничениями-равенствами. Алгоритм основан на модифицированной процедуре рекуррентного псевдообращения. Получены выражения для преобразования целевой функции в случаях, когда она является линейной или квадратичной формой. Приведен числовой пример применения алгоритма для задачи линейного программирования.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ACCOUNT OF EQUALITY RESTRICTIONS AT SOLVING OF OPTIMISATION PROBLEMS WITH LINEAR RESTRICTIONS

The algorithm allowing reducing space dimension of the required vector of unknown at solution of optimization problems with restrictions-equalities is offered. The algorithm is based on the modified procedure of recurrent pseudo-reference. Expressions for transformation of the objective function in cases when it is the linear or the square-law form are obtained. The numerical example of the algorithm application for the problem of linear programming is cited.

Текст научной работы на тему «Учет ограничений равенств при решении оптимизационных задач с линейными ограничениями»

УДК 519.853

УЧЕТ ОГРАНИЧЕНИЙ РАВЕНСТВ ПРИ РЕШЕНИИ ОПТИМИЗАЦИОННЫХ ЗАДАЧ С ЛИНЕЙНЫМИ ОГРАНИЧЕНИЯМИ

О.Н. Вылегжанин, Г.И. Шкатова

Томский политехнический университет E-mail: [email protected]

Предложен алгоритм, позволяющий сократить размерность пространства искомого вектора неизвестных при решении оптимизационных задач с ограничениями-равенствами. Алгоритм основан на модифицированной процедуре рекуррентного псевдообращения. Получены выражения для преобразования целевой функции в случаях, когда она является линейной или квадратичной формой. Приведен числовой пример применения алгоритма для задачи линейного программирования.

При решении многих задач оптимизации с ограничениями ограничения являются линейными равенствами или неравенствами. Учет ограничений определяет метод решения задачи, ее «трудоемкость». Учет ограничений равенств приводит к сокращению размерности пространства. В литературе предложены различные процедуры учета ограничений-равенств [1, 2]. В данной работе обсуждается алгоритм учета ограничений-равенств, основанный на процедуре рекуррентного псевдообращения.

Постановка задачи оптимизации при наличии ограничений-равенств может быть сформулирована следующим образом:

/(х) =< с, х > ^ ех1т, (1)

А • х = Ь, х е Я", Ь е Ят, гкА = к. (2)

Будем полагать, что первые к столбцов А - линейно независимы. Тогда одним из подходов к решению является отыскание такого оператора Р, при умножении на который матрица Р-А имеет вид:

Р • А = \В • А'\,

где Б - диагональная матрица размером кхк, а А'-некоторая матрица размером кх(п-к).

Цель этого преобразования - выразить первые к неизвестных как линейные функции от остальных.

Введем следующие обозначения: х - вектор первых к элементов, — - вектор остальных элементов х; А - матрица, образованная первыми к столбцами из А, А - матрица, образованная остальными (п-к) столбцами. Тогда получить требуемое преобразование можно на основе следующего утверждения.

Утверждение 1. Если А - матрица ограничений-равенств, гк А=к и первые к столбцов матрицы А линейно независимы, то систему ограничений (2) можно записать в виде:

х = А (Ь - А х х), (3)

где А + матрица, псевдообратная к матрице А.

Доказательство 1.

С учетом введенных обозначений систему ограничений можно представить в виде: А-х+А-х =Ь.

Умнож-м обе части на А+— Получим: А+-А-х+А+-А-х=А+-Ь или Рх=А+-Ь-А+-А-х, где I -единичная матрица.

Что и требовалось получить.

Таким образом, задача (1, 2) сводится к выбору такой матрицы перестановки Т, чтобы первые к столбцов Т-А образовывали базисный набор.

В работе [3] авторами была предложена процедура выбора базисных столбцов, которая сводится к выполнению следующих шагов:

1. Выбирается столбец с наибольшей самокова-риацией, удовлетворяющий условию

аг=шах<«Тд>.

¡е11

2. Вычисляется первая строка псевдообратной матрицы: А1+=а1+=агТ<агТ-а>-1.

Вычисляется оператор - проектор на пространство, перпендикулярное пространству, задаваемому матрицей А: Я1=1-А1.А1+.

4. Далее рекуррентно дляу-го шага, гдеу'=2,...,п: 4.1. Выбирается столбец матрицы А, имеющий максимальную проекцию на пространство, перпендикулярное к уже отобранным столбцам. Номер этого столбца удовлетворяет условию:

А=ащ шахЦ^/«;), /=/,..., п.

Этот столбец ставится на место (/'+1)-го столбца.

Вычисляется новая матрица

3

4.2.

4.3.

А+ =

Aj+i

А+ • (I - a

j+i

• aj+i

Л

где а++1 - строка псевдообратной матрицы, получаемая из соотношения: а+++1=(Кщ+1)т/(а++1.Кщ+1).

4.4. Процесс заканчивается, когдаш1ах(«/Т.^-«/)<е, Ь=1,...,п, где е - заданный порог Эта процедура сводится к обычной процедуре рекуррентного псевдообращения с той разницей, что на каждом шаге рекурсии выбирается столбец, имеющий максимальную норму компоненты, перпендикулярной к уже отобранным столбцам.

При такой организации вычислений сразу обеспечивается как выбор столбцов А, образующих ба-

зис, так и вычисление матрицы, псевдообратной к матрице, образованной этими столбцами.

Если оптимизируемой функцией Дх) является линейная или квадратичная формы, то легко найти их преобразование с учетом (3).

Утверждение 2. Если /(х)=<с,х> - линейная форма, то при наличии ограничений-равенств вида (2), учитывая введенные выше обозначения, она преобразуется к форме:

т - т -~+ _т ~т -~+ — _

с • х = с • А • Ь + (с - с • А • А) • х,

где с и Г - компоненты вектора коэффициентов, соответствующие компонентам х и х-вектора х.

Доказательство 2.

Разлагая компоненты линейной формы на составляющие, имеем:

T , —T —

с • x = с • x + с • x.

(4)

Подставив (3) в уравнение (4), получим:

с • А (b - А • x)

*T aT -^+ _

—T —

с • x =

откуда, вынося в правой части за скобки общий множитель х , получим доказываемое.

Утверждение 3. Если /(х)=хТ-Б-х - квадратичная форма, то при наличии ограничений-равенств вида (2) она преобразуется к форме:

хтВх = хт (ГГВ0Г0 -Ш + №ТВ + В)х +

+Ьт В + В - (В0 + в0г )ж) х+Ьт в0Ь,

В

B ¡В

а Д, В, В? и В - матрицы размерами кхк, кх(и-к), (н-к)хк и (и-к)х(и-к), соответственно.

Доказательство 3.

Учитывая введенные обозначения, имеем:

xT Bx = ( ^ x T B0 B (^ x

vx) B B v x ,

>-Г _ ^

= х В0 х + xTBx + х Bx + xTBx.

Подставляя соотношение (3) и учитывая введенные в утверждении 3 обозначения, получим:

xTBx = (b - Wx)TB0(b - Wx) +

+xT B(b - Wx) + (b - Wx)T Bx + xTBx.

Откуда, раскрыв скобки и перегруппировав после перемножения в правой части слагаемые, получим доказываемое.

Продемонстрируем предложенный метод на следующем численном примере: найти минимум функции y=f(x)=x1-2.x2+x3-3,424.x4+0,5.x5-6,25 при ограничениях:

где:

А =

А • x = b и А x < b,

1,2 -3 1 0 -1 -0,5

1,4 -1,5 1 -1 -1 b = 0,5

-0,7 0,5 1 -1 1 4,5

0,26 -0,45 0,2 -0,1 -0,2 0

А =

0,4 -2 0,1 0,501 0,35 2,225

-1 0,1 -2 9,994 -3,575 11,037

-0,5 0,1 0,5 -7,481 5,425 6,537

4,5 -3 -10,1 -16,551 -30,05 b = 110,225

4,5 -3 0 -2,398 -5 -12

-1 2 0,5 -1,2 -0,35 -1,125

2,4 -1 -3,5 4 -5,2 0,2

-1 1 -3 4,687 -1,25 -2,625

Решение:

1. Выбираем столбцы из матрицы А, образующие базисный набор. В результате применения описанной выше процедуры получаем набор столбцов: 2, 4, 5. Ранг матрицы равен трем (а/.Д.а^ЫО-5. Матрица, псевдообратная к выделенным столбцам, имеет вид:

Г-0,497549 0,252451 -0,250000 -0,024510 ^

А+ =

0,253676 -0,621324 -0,375000 -0,036765

0,502451 -0,747549 0,750000 -0,024510

Умножив ее слева на ограничения-равенства имеем:

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

(1,00000 0,00000 0,00000 -0,07500 -0,50000

А* • А =

0,00000 1,00000 0,00000 -0,31250 -0,75000

ч0,00000 0,00000 1,00000 -0,97500 0,50000

А+ • Ь = (-0,7500 -2,1250 2,7500)т.

2. Минимизируемая форма преобразуется к виду: у = А +• / (х) =

= А+ • (х1 - 2 • х2 + х3 - 3,424 • х4 + 0,5 • х5 - 6,25) =

= -3 • х1 - х3,

а ограничения-неравенства примут вид Л'х<Ь, где:

А =

-0,998 -1 2

8 -3 16

-7 5 4,999

-26,998 -25 b = 135

2,998 -5 15

-0,162 0, 4 1

0,455 -3 9,5

2 0,5 7

Таким образом, предложенная процедура дает возможность для системы линейных ограничений-равенств найти преобразование, позволяющее вы-

разить часть неизвестных через линейные комбинации остальных неизвестных с учетом возможной вырожденности системы ограничений. Показано, как это преобразование может быть применено для

линейной и квадратичной форм. Приведенный демонстрационный пример подтверждает работоспособность метода. Применение описанной процедуры позволило снизить размерность задачи с 5 до 2.

СПИСОК ЛИТЕРАТУРЫ

1. Гилл Ф., Мюррей У., Райт М. Практическая оптимизация. -М.: Мир, 1985. - 509 с.

2. Цыганков А.А. Новые условия экстремума для гладких задач с ограничениями в форме равенств // Журнал вычислительной математики и математической физики. - 2001. - Т. 41. - № 10. - С. 1474-1481.

3. Вылегжанин О.Н., Шкатова Г.И. Сравнительная оценка двух методов выбора наилучших линейных регрессоров // Приме-

нение математических методов и ЭВМ в медико-биологических исследованиях: Межвузовский научно-технический сборник. - Томск: Изд-во ТПУ, 1988. - С. 18-22.

Поступила 14.04.2008 г.

Ключевые слова:

Выпуклое программирование, линейные ограничения, учет ограничений-равенств, рекуррентное псевдообращение.

УДК 681.3.06

О ПОСТРОЕНИИ АКТИВНЫХ МОДЕЛЕЙ РАСПРЕДЕЛЕННЫХ СИСТЕМ РЕАЛЬНОГО ВРЕМЕНИ

В.К. Погребной

Институт «Кибернетический центр» ТПУ E-mail: [email protected]

Предложен подход к решению проблемы снижения трудоемкости построения имитационной модели и ее трансформации. Введены понятия активной модели системы, виртуальной машины моделирования, модуля-имитатора и описателей состояний его входных и выходных позиций. Дано определение и предложена оригинальная структура модуля-имитатора, включающая блок адаптации, операционный блок и блок описателей состояний позиций. Разработан перечень настроек и выполняемых ими функций при проектировании блока адаптации. Дано определение описателей состояний позиций модуля, как потенциальных носителей информации о признаковом пространстве, в котором функционирует активная модель при выполнении ее на виртуальной машине. Предложена функциональная структура активной модели и сформулированы этапы ее построения.

Введение

Рассмотрению подлежат технические системы с территориально распределенным оборудованием. Функционирование такой системы осуществляется под управлением распределенной вычислительной системы, которая является неотъемлемой частью технической системы в целом. Управление технологическим оборудованием системы выполняется в реальном масштабе времени и должно соответствовать заданному регламенту ее функционирования. Современные вычислительные системы для управления такими объектами создаются как распределенные и относятся к классу жестких систем реального времени (СРВ). Распределенная СРВ является сложным для проектирования объектом. Поэтому широкое использование методов моделирования при создании такой системы становится непременным условием успешного выполнения проекта.

Известно, что имитационное моделирование является всеобъемлющим и универсальным методом анализа систем [1, 2]. Широкое применение получили также частные модели для анализа отдельных характеристик систем - такие как сети массового обслуживания для оценки производи-

тельности, марковские цепи для оценки надежности, сети Петри для анализа корректности функционирования параллельных взаимодействующих процессов, нейронные сети для принятия решений. В отличии от имитационных, применение частных моделей оправдано лишь в условиях, когда отдельные характеристики в ходе проектирования выдвигаются на уровень критериев.

Основным барьером на пути применения имитационного моделирования являются большие затраты на разработку программ, имитирующих функционирование системы. Эта проблема особенно ярко проявляется в отношении СРВ, в которых прикладное программное обеспечение по затратам на разработку составляет 70...80 %. Получается, что затраты на программирование моделирующих алгоритмов сопоставимы с разработкой программного обеспечения. Положение усугубляется тем, что при проектировании приходится использовать эволюционный подход, когда исходная модель при поиске приемлемого варианта СРВ многократно трансформируется. Необходимость многократного перепрограммирования модели практически исключает возможность применения имитационного моделирования. Поэтому разра-

i Надоели баннеры? Вы всегда можете отключить рекламу.