
Власов_Методы оптимизации и оптимального управления_2013
.pdfKˆ = ( XX Т )−1 Xσ2[ε]E((XX Т )−1 X )Т = σ2[ε](XX Т )−1 . |
(1.5.10) |
β
При получении формулы (1.5.10) учитывались:
•свойство симметрии обратной матрицы, если исходная матрица является симметричной;
• формула вычисления [2] ковариационной матрицы Kψ = AKξ AT случайного вектора ψ, полученного путем линейного преобразования ψ = Aξ другого случайного вектора ξ с ковариационной матрицей Kξ .
Если описание поверхности отклика имеет вид
y = ∑p |
βj f j (x1 , x2 ,..., xk ) , |
(1.5.11) |
j=1 |
|
|
где f j (x1 , x2 ,..., xk ) – известные функции (называемые координатными), βj – неизвестные коэффициенты, подлежащие определе-
нию по экспериментальным данным, и справедливо выражение
(1.5.3), то в формулах (1.5.8), (1.5.9), (1.5.10) следует вместо матри-
цы X Т использовать матрицу F Т , элементами которой являются значения координатных функций в экспериментах с номерами i (i = 1, 2,…,n) , т.е.
|
βˆ = (FF Т )−1 Fη . |
|
|
|
|
|
|
|
|
|
|
|
|
|
(1.5.12) |
||||||||
Например, |
пусть y =β x x3 x2 |
+β |
2 |
x x , |
т.е. f |
= x x3 x2 |
, |
f |
2 |
= x x , |
|||||||||||||
|
|
|
1 |
1 |
2 |
3 |
|
|
|
1 |
2 |
|
|
1 |
1 |
2 |
3 |
|
|
1 |
2 |
||
и в первом эксперименте |
x1 = 2, x2 =1, x3 = 4 , во втором экспери- |
||||||||||||||||||||||
менте x1 =1, x2 |
=1, x3 = 2 , в третьем эксперименте x1 =1, x2 |
=1, x3 =1. |
|||||||||||||||||||||
Тогда матрица F Т равна |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
2 *13 * 42 ;2*1 |
|
32;2 |
|
|
|
|
|
|
|
|
|||||||||
|
F |
Т |
|
|
3 |
|
|
2 |
|
|
|
|
|
|
4;1 |
|
|
|
|
|
|
|
|
|
|
= 1*1 * 2 |
|
;1*1 |
= |
. |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
3 |
|
2 |
;1*1 |
|
|
|
1;1 |
|
|
|
|
|
|
|
|
|||
|
|
|
1*1 *1 |
|
|
|
|
|
|
|
|
|
|
|
|
Следует заметить, что описание поверхности отклика в задаче линейного оценивания считается известным, но не выбирается при обработке экспериментальных данных.
21
Контрольные вопросы
1.Что такое статический объект?
2.Как формулируется общая задача математического программирования?
3.С какой целью применяется метод неопределенных множителей Лагранжа?
4.Как ставится задача поиска условного экстремума?
5.Как решается задача поиска наибольших и наименьших значений функций многих переменных, когда допустимые решения принадлежат замкнутой области?
ГЛАВА 2. ОСНОВЫ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ
2.1. Постановка задачи
Задача линейного программирования является одной из частных задач оптимизации, которая допускает строгое алгоритмическое решение.
В многомерном пространстве определяется область допустимых решений с помощью линейных ограничений типа равенств и неравенств
a11x1 + a12 x2 +... + a1n xn ≤b1 ,
……………………………,
……………………………,
……………………………,
ak1 x1 + ak 2 x2 +... + akn xn ≤bk ,
l11x1 +l12 x2 +... +l1n xn = g1 ,
……………………………,
……………………………,
……………………………, lm1 x1 +lm2 x2 +... +lmn xn = gm ,
22
где |
aij , |
liν , bj , gν |
– |
известные |
числа |
(i =1,2,..., n; j =1,2,..., k; ν =1,2,..., m) . |
|
|
|||
Допустимое |
решение |
– это вектор |
x с составляющими |
x1, x2 ,..., xn , удовлетворяющими заданным выше ограничениям. Предполагается, что все xi неотрицательны.
Требуется найти такое допустимое решение, при котором ли-
n
нейная форма L = ∑ci xi с известными численными коэффициен-
i=1
тами ci принимает наибольшее (или наименьшее) значение.
2.2. Основные геометрические фигуры в линейном программировании
Рассматривается ограниченное число фигур:
•точка (вектор с составляющими x1, x2 ,..., xn );
•прямая линия (или часть прямой линии);
•плоскость (или часть плоскости);
•полупространство;
•пересечение полупространств.
Важным понятием является выпуклое множество, которое строится с помощью перечисленных фигур. Множество M называется выпуклым, если две произвольные точки A,B, принадлежащие M, определяют отрезок прямой, целиком принадлежащий множеству
M.
Уравнение прямой линии, проходящей через две точки A, B , имеет вид x = A +t(B − A) , где t – параметр, x – точка, принадлежащая прямой. Символ B − A – это разность векторов A, B , координаты которой совпадают со значениями разностей соответствующих составляющих (координат) векторов A, B . Эти векторы определяют рассматриваемые точки.
Уравнение плоскости задается с помощью точки x0 , через которую проходит плоскость, и вектором P , перпендикулярным плос-
23
кости. Уравнение плоскости записывается в виде равенства нулю скалярного произведения векторов< P,(x − x0 ) >= 0 .
Полупространство – это часть пространства, лежащая с одной стороны плоскости, причем плоскость принадлежит полупростран-
ству. |
|
Описывается |
полупространство с помощью неравенства |
aТ x ≤ r , где aТ – |
транспонированный вектор a (вектор a имеет |
составляющие a1 , a2 ,..., an ), r – вещественное число.
Легко показывается [1], что являются выпуклыми следующие множества:
•прямая линия;
•плоскость;
•полупространство;
•пересечение полупространств (эту фигуру называют многогранником, она может быть ограниченной или неограниченной).
2.3.Экстремальные точки
Далее будем следовать концепциям, изложенным в [1]. Точка A, принадлежащая выпуклому множеству M, называется экстремаль-
ной, если соотношение |
A = λA1 +(1−λ) A2 (здесь |
A1, A2 – |
точки, |
принадлежащие M ), |
λ (0,1) , справедливо |
только |
при |
A1 = A2 = A .
Приведем примеры. Рассмотрим круг на плоскости. Экстремальными точками являются точки окружности, их бесконечное множество.
Другой пример. Имеется на плоскости выпуклый ограниченный многоугольник. Экстремальными точками здесь являются вершины многоугольника (угловые точки). В задачах линейного программирования экстремальные точки можно назвать угловыми.
Рассмотрим частный случай множества S допустимых решений: множество такое, которое определяется только ограничениями
24
типа равенств при условии, что все составляющие вектора x |
неот- |
|||||||||||
рицательны. |
|
Символически |
это |
записывается |
в |
виде |
||||||
S ={x : Ax =b, x ≥ 0}, где |
A – матрица с элементами aij |
, имеющая |
||||||||||
m строк и |
n столбцов, |
b – |
вектор с составляющими b1 ,b2 ,...,bm |
|||||||||
(далее считаем, что ранг матрицы A равен m и m < n ). |
|
|
||||||||||
Имеется |
теорема. |
Точка |
x |
является |
экстремальной тогда и |
|||||||
только тогда, когда перестановкой столбцов матрица |
A может |
|||||||||||
быть |
представлена |
в |
блочном виде |
A =[B, N] |
так, |
что |
||||||
xB |
B−1b |
B – невырожденная квадратная матрица по- |
||||||||||
x = |
|
= |
|
, где |
||||||||
xN |
0 |
|
|
|
|
|
|
|
|
|
рядка m , удовлетворяющая условию B−1b ≥0 (т.е. есть все составляющие вектора xB неотрицательны).
Эта теорема позволяет принципиально определить все экстремальные точки рассматриваемого множества S .
Приведем пример. Пусть множество S задано равенствами
|
|
|
|
|
|
x1 + x2 − x3 |
= 2, |
|
|
(2.3.1) |
||||||||
|
|
|
|
|
|
x1 − x2 + 2x3 = 4. |
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
Найдем |
все экстремальные |
|
точки |
этого множества. |
|
Здесь |
|||||||||||
|
1;1;−1 |
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
A = |
|
|
и b = |
. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1; |
−1; 2 |
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
; |
1 |
|
|
|
|
|
|
|
|
|
1;1 |
|
|
|
|
−1 |
|
|
|
|
|
||
|
Сначала положим |
B = |
|
|
2 |
2 |
|
|||||||||||
|
|
|
, N = |
|
|
. Найдем B−1 = |
|
1 |
и |
|||||||||
|
|
|
|
|
|
1;−1 |
|
|
|
2 |
|
1 |
;− |
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
||
B |
−1 |
|
3 |
Фактически |
B |
−1 |
|
|
3 |
|
есть решение системы ли- |
|||||||
b = |
|
. |
b = |
|
|
|
||||||||||||
|
|
|
−1 |
|
|
|
|
|
|
−1 |
|
|
|
|
|
|
|
нейных уравнений, получаемой из исходной системы (2.3.1) приравниванием нулю составляющей x3 .
25
Таким образом, значение составляющей x3 принимается равным
|
|
3 |
|
|
|
нулю. В итоге |
|
|
. Эта точка не является |
||
получаем точку x = |
−1 |
||||
|
|
|
|
|
|
|
|
0 |
|
|
|
экстремальной, |
поскольку составляющая |
x2 |
отрицательна. Эта |
||
точка вообще не принадлежит множеству S . |
|
A , что эк- |
|||
Имеется возможность переставить столбцы матрицы |
|||||
вивалентно смене порядка записи переменных |
x1 , x2 , x3 |
в системе |
уравнений (2.3.1). Перенесем первый столбец на третье место и положим x1 = 0 . Тогда получим систему уравнений для определе-
ния составляющих x1 , x2 . Система имеет вид
x2 − x3 = 2,−x2 + 2x 3 = 4.
После решения последней системы получим x2 =8, x3 = 6 и най-
0
дена экстремальная точка xЭ1 = 8 .
6
Все координаты у этой точки неотрицательны. Положим теперь
x2 |
x − x = 2, |
= 0 . Получим систему 1 3 |
|
|
−x2 + 2x3 = 4. |
После решения этой системы найдем еще одну экстремальную точ-
83 ку xЭ2 = 0 .23
26
2.4. Основные теоремы об экстремальных точках
Помимо теоремы, рассмотренной в разделе 2.3, имеются и другие важные теоремы.
1. |
Число |
экстремальных точек не превышает величины |
||
N = |
n! |
|
= Cnm (это возможное число перестановок столбцов |
|
m!(n −m)! |
||||
|
|
|||
матрицы A ). |
|
|||
2. |
У всякого не пустого множества S имеется хотя бы одна экс- |
|||
тремальная точка. |
||||
|
|
|
n |
|
3. |
Линейная форма L = ∑ci xi достигает наименьшего (или наи- |
i=1
большего) значения на множестве допустимых решений в какой-то экстремальной точке.
2.5. Симплексный метод решения задач линейного программирования
Можно перебрать все экстремальные точки и вычислить в них значение линейной формы, получив таким способом решение, но это громоздко, так как что число экстремальных точек может оказаться очень большим. Поэтому разработан специальный алгоритм направленного перебора экстремальных точек, с помощью которого получается каждая последующая экстремальная точка лучше предыдущей. Этот алгоритм называется симплексным методом.
Рассмотрим симплексный метод на примере решения конкрет-
ной задачи. |
Найти |
наименьшее |
|
значение линейной формы |
|
L = x1 + 2x2 |
−3x3 + 4x4 при ограничениях: |
|
|||
|
x + x − x + 2x = 2, |
(2.5.1) |
|||
|
1 |
2 3 |
4 |
= 4. |
|
|
x1 − x2 + 2x3 − x4 |
|
Считаем, что все переменные неотрицательны. С целью упрощения дальнейших пояснений найдем некоторые экстремальные точки множества S , заданного рассматриваемыми ограничениями (в дальнейшем станет ясно, что для реализации симплексного метода
27

достаточно найти всего одну, любую экстремальную точку). Будем последовательно приравнивать нулю различные пары переменных.
Например, если x3 = 0, x4 = 0 , то (см. раздел 2.4) x1 = 3, x2 = −1 . Следовательно, экстремальная точка не найдена.
|
Положим |
x |
= 0, x |
|
= 0 , тогда (см. |
раздел 2.4) |
x |
= |
8 |
, x = 0 и |
||||||
|
4 |
|
||||||||||||||
|
|
|
|
|
1 |
|
|
|
|
|
|
1 |
3 |
2 |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
найдена |
первая |
экстремальная |
точка |
xЭ1 , имеющая |
координаты |
|||||||||||
x = |
8 |
, x =0 , |
x |
= |
2 |
, x =0 . |
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|||||||||
1 |
3 |
2 |
3 |
3 |
|
|
4 |
|
|
|
|
|
|
|||
|
|
|
|
|
|
x1 = 0, x4 = 0 , будет найдена еще |
||||||||||
|
Аналогично, |
если положить |
||||||||||||||
одна |
экстремальная |
точка |
с |
координатами |
x1 = 0, x2 =8, x3 = 6, x4 = 0 .
Пусть первоначально выбрана экстремальная точка xЭ1 с коор-
динатами x1 = 83 , x2 =0, x3 = 23 , x4 = 0 . Значение линейной формы в этой точке равно L(xЭ1 ) = 23 . Можно ли найти экстремальную точ-
ку, в которой значение линейной формы будет меньше, чем 23 ?
Чтобы ответить на этот вопрос перепишем ограничения (2.5.1) в виде
x |
− x |
= 2 − x |
−2x , |
(2.5.2) |
1 |
3 |
2 |
4 |
|
x1 + 2x3 = 4 + x2 + x4 . |
|
Переменные x1, x3 называются базисными. Другие переменные x2 , x4 называются свободными. Свободные переменные – это такие,
значения которых в исходной экстремальной точке равны нулю. Любая точка с неотрицательными координатами x1 , x2 , x3 , x4 , кото-
рые удовлетворяют системе (2.5.1), что эквивалентно системе (2.5.2), является точкой множества S допустимых решений. Решая систему уравнений (2.5.2) относительно базисных переменных, получим
28
x |
= |
8 |
|
− |
1 |
x |
|
− x , |
|||
3 |
|
|
|
|
|||||||
1 |
|
|
|
3 |
|
2 |
4 |
||||
|
|
2 |
|
|
2 |
|
|
(2.5.3) |
|||
x |
= |
+ |
|
x |
+ x . |
||||||
3 |
3 |
||||||||||
3 |
|
|
|
2 |
4 |
Всевозможные значения свободных переменных определяют множество допустимых решений и значения линейной формы L , которую можно выразить как функцию свободных переменных
L = |
2 |
− |
1 |
x |
+0* x . |
(2.5.4) |
3 |
|
|||||
|
|
3 |
2 |
4 |
|
Заметим, что уравнения (2.5.3) эквивалентны исходным уравнениям (2.5.1), кроме того, свободные переменные должны быть неотрицательными. Попробуем уменьшить значение линейной формы L за счет изменения одной из свободных переменных. Для этого выберем такую свободную переменную, которая входит в выражение (2.5.4) с отрицательным коэффициентом. Это переменная x2
(если бы переменная x4 входила в выражение (2.5.4) с отрицатель-
ным коэффициентом, то можно было бы выбрать ее). Поскольку величина x2 неотрицательна, то ее увеличение возможно, и это
приведет к уменьшению значения L . Казалось бы, можно сколь угодно уменьшать L , однако это не так, поскольку одна из базисных переменных может стать отрицательной, что не допустимо. Тогда увеличиваем значение x2 до тех пор, пока одна из базисных
переменных не станет равной нулю (при этом x4 остается равной нулю). Такая ситуация происходит при обнулении переменной x1 , когда x2 = 8 . Теперь получено одно из допустимых решений, кото-
рое характеризуется следующими значениями координат: x1 = 0, x2 = 8, x3 = 6, x4 = 0 , что соответствует другой экстремальной
точке. Оказывается, осуществлен переход от исходной экстремальной точки к другой, более выгодной, экстремальной точке xЭ2 . Это
один вычислительный шаг симплексного метода.
Можно ли найти еще лучшую экстремальную точку? Чтобы ответить на этот вопрос, проделаем очередной шаг симплексного метода, считая теперь xЭ2 исходной экстремальной точкой. Теперь
29
базисными переменными являются x2 , x3 , а свободными переменными – x1 , x4 . Для выполнения очередного шага следовало бы решить систему уравнений (2.5.1) относительно переменных x2 , x3 .
Однако решать эту систему нет необходимости, поскольку существует более простой способ выразить новые базисные переменные x2 , x3 через новые свободные переменные x1 , x4 . Это делается с
помощью замены одной базисной переменной и одной свободной переменной. Для этого используется уравнение, согласно которому обнуляется одна из базисных переменных. В рассмотренном первом шаге это было первое уравнение системы (2.5.3), из которого следует, что x2 = 8 −3x1 −3x4 . После подстановки последнего соот-
ношения во второе уравнение системы (2.5.3) и в выражение (2.5.4) получим связи между новыми свободными и базисными переменными и зависимость величины L от новых свободных переменных:
x2 |
=8 −3x1 −3x4 , |
|
x3 |
= 6 −2x1 − x4 , |
(2.5.5) |
L = −2 + x1 + x4 . |
|
Значение линейной формы в новой экстремальной точке равно L(xЭ2 ) = −2 и не может быть уменьшено, поскольку все свободные
переменные (это в данном случае x1 , x4 ) входят в выражение (2.5.5)
с положительными коэффициентами. Напомним, что переменные не могут принимать отрицательных значений. Решение задачи закончено. Наименьшее значение линейной формы L равно -2 и достигается в точке с координатами x1 = 0, x2 = 8, x3 = 6, x4 = 0 (т.е. в
одной из экстремальных точек).
Можно сделать следующие замечания по анализу знаков коэффициентов:
•если бы на окончательном шаге коэффициент при одной из свободных переменных был равен нулю (такая ситуация возможна и наблюдалась на первом шаге решения рассмотренной задачи, что выражение (2.5.4) подтверждает), то существовало бы множество точек, в которых значение линейной формы имеет наименьшее значение, экстремальная точка входила бы в это множество;
30