Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Семестровая 1 (Методы оптимальных решений) / Методы оптимальных решений учебное пособие

.pdf
Скачиваний:
1245
Добавлен:
19.04.2015
Размер:
6.01 Mб
Скачать

x1 = h1, x2 = h2 , , xn = hn ,

т. е. система линейных алгебраических уравнений (2.3.1) является совместной и определенной. Если же m < n , то возьмем для свободных неизвестных

какие-нибудь

значения

xm+1 = am+1 , xm+2 = am+2 , , xn = an , тогда базисные

неизвестные

примут вполне определенные значения

x1 = a1, x2 = a2 ,,

xm = am . Система чисел

a1, a2 , , am , am+1, am+2 , , an

будет служить ре-

шением системы 2.3.6) и, следовательно, системы (2.3.1). Так как значения свободных неизвестных можно выбирать произвольным образом, то таким путем можно найти много решений системы (2.3.1), называемых ее частными решениями, т. е. в этом случае система является совместной и неопределенной. Выражения базисных неизвестных через свободные:

x = h - g

x

-…- g x ,

 

1

1

1,m+1 m+1

 

1n n

x2 = h2 - g

2,m+1xm+1 -…- g2n xn ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

= h

- g

x

-…- g

x

 

m

m

 

m,m+1 m+1

 

mn n

естественно назвать общим решением системы линейных алгебраических уравнений (2.3.1). Среди частных решений системы выделяется базисное, отвечающее нулевым значениям свободных неизвестных:

x1 = h1, x2 = h2 , , xn = hn , xm+1 = 0, xm+2 = 0, , xn = 0 .

(2.3.7)

Руководствуясь правилами исключения, мы можем продолжить процесс преобразований системы (2.3.1) и найти другие ее предпочитаемые эквиваленты и соответствующие им базисные решения.

Предположим, что в системе уравнений (2.3.6) коэффициент при свободной неизвестной xs в r-м уравнении отличен от нуля. Примем этот

коэффициент за разрешающий и исключим неизвестную xs из всех урав-

нений системы (2.3.6), кроме r-го уравнения, после чего система уравнений (2.3.6) преобразуется к виду

xi

xs

+ g¢ x +

ir r

+g¢ x +

rrr

n( j¹s )

g¢ x

j

 

= h¢, i ¹ r,

ij

 

i

j=m+1

 

 

 

(2.3.8)

n( j¹s )

 

 

 

g¢ x

j

= h¢.

rj

 

r

j=m+1

Полученная система линейных алгебраических уравнений (2.3.7) эквивалентна системе (2.3.1). Будем говорить, что система (2.3.1) приведена к новому предпочитаемому виду (2.3.7). Неизвестная xs стала базисной, а xr

61

свободной, т. е. неизвестные xr и xs поменялись ролями. Выражая новые ба-

зисные неизвестные через новые свободные, можно получить новую запись общего решения системы (2.3.1). Приравнивая новые свободные неизвестные к нулю, получаем соответствующее системе (2.3.7) новое базисное решение:

xixr

x j

=hi′,

=0,

=0,

i =1, 2, , r −1, r +1, , m,

 

xs = hs′,

(2.3.9)

j = m +1, m + 2, , s −1, s +1, , n.

 

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

базисных решений, ибо не может быть двух различных предпочитаемых эквивалентов системы (2.3.1) с одним и тем же набором базисных неизвестных.

ПРИМЕР 2.3.2. Найти общее решение и два различных базисных решения системы линейных уравнений из примера 2.3.1.

Решение. Воспользуемся методом Жордана — Гаусса. Вычислительный процесс иллюстрируется табл. 2.3.1.

Т а б л и ц а 2.3.1

x1

x2

x3

x4

b

2

7

3

1

6

 

 

 

 

 

3

5

2

2

4

9

4

1

7

2

1

7/2

3/2

1/2

3

0

–11/2

–5/2

1/2

–5

 

 

 

 

 

0

–55/2

–25/2

–5.2

–25

1

0

–1/11

9/11

–2/11

0

1

5/11

–1/11

10/11

0

0

0

0

0

 

 

 

 

 

В результате исходная система линейных уравнений

 

2

7

3

1

 

6

 

 

 

3

5

2

2

 

4

 

 

 

 

 

 

4

1

7

 

 

 

9

 

2

 

 

 

 

приведена с помощью элементарных преобразований к эквивалентной системе

1

0

−1 / 11

9 / 11

 

−2 / 11

 

 

1

5 / 11

−1 / 11

 

 

0

 

10 / 11

 

 

 

или

62

x

 

1

x +

9

x = −

2

,

 

 

 

 

 

 

1

 

 

11

3

11

4

11

 

 

 

 

 

5

 

 

1

 

10

 

 

 

 

x2

+

x3

x4 =

,

 

 

 

 

 

 

 

 

 

 

 

11

11

 

 

 

 

 

 

 

 

11

 

т. е. к системе линейных уравнений в предпочитаемой форме. Выбрав переменные x1 и x2 в качестве базисных, а x3 и x4 — в качестве свободных, выразим базисные переменные через свободные:

x = −

2

+

1

 

x

9

 

x ,

 

 

 

 

 

 

1

11

11

3

11

4

 

 

 

10

 

 

5

 

 

 

1

 

x =

 

x +

 

 

x .

 

 

 

 

 

2

11

11

3

11

4

 

 

 

 

Общее решение данной системы линейных уравнений получим, придавая свободным переменным x3 и x4 произвольные вещественные значения α и β соответственно:

x1

 

−2 / 11

1 / 11

−9 / 11

 

x

 

 

10 / 11

 

 

−5 / 11

 

1 / 11

 

, α , β .

2

 

=

0

 

+ α

1

 

 

+ β

0

 

x

 

 

 

 

 

 

 

 

 

3

 

 

0

 

 

0

 

 

 

1

 

 

x4

 

 

 

 

 

 

 

 

Базисное решение получим при α = β = 0 :

 

 

 

 

 

 

x1

 

 

 

−2 / 11

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x2

=

 

10 / 11 .

 

 

 

 

 

 

 

 

x

 

 

 

0

 

 

 

 

 

 

 

 

 

3

 

 

 

0

 

 

 

 

 

 

 

 

 

x4

 

 

 

 

 

 

Если в качестве базисных переменных выбрать x1 и x4, то вычислительный процесс метода Жордана — Гаусса будет таким, как показано в табл. 2.3.2.

Соответствующее общее решение таково:

x1

 

 

8

 

 

−9

 

−4

 

 

 

 

0

 

 

1

 

 

0

 

 

x2

=

 

+ γ

 

+ δ

 

, γ , δ .

x

 

 

0

 

 

0

 

 

1

 

 

3

 

 

 

 

 

 

 

 

 

 

 

x4

 

−10

 

11

 

5

 

Базисное решение получим при γ = δ = 0 :

63

x1

 

 

8

 

 

 

 

0

 

x2

 

=

.

x

 

 

0

 

3

 

 

−10

 

x4

 

 

 

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

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

Т а б л и ц а 2.3.2

x1

x2

x3

x4

b

2

7

3

1

6

 

 

 

 

 

3

5

2

2

4

9

4

1

7

2

 

 

 

 

 

1

7/2

3/2

1/2

3

 

 

 

 

 

0

–11/2

–5/2

1/2

–5

0

–55/2

–25/2

5/2

–25

 

 

 

 

 

1

9

4

0

8

0

–11

–5

1

–10

0

0

0

0

0

Т а б л и ц а 2.3.3

x1

x2

x3

x4

b

2

7

3

1

6

 

 

 

 

 

3

5

2

2

4

9

4

1

7

2

 

 

 

 

 

1

7/2

3/2

1/2

3

0

–11/2

–5/2

1/2

–5

 

 

 

 

 

0

–55/2

–25/2

–5.2

–25

1

0

–1/11

9/11

–2/11

0

1

5/11

–1/11

10/11

 

 

 

 

 

0

0

0

0

0

 

 

 

 

 

1

9

4

0

8

0

–11

–5

1

–10

0

0

0

0

0

 

 

 

 

 

64

§ 2.4. НЕОТРИЦАТЕЛЬНЫЕ РЕШЕНИЯ СИСТЕМЛИНЕЙНЫХ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ

Изучим вопрос поиска неотрицательных решений системы линейных алгебраических уравнений (2.3.1). Не теряя общности, можно считать, что правые части всех уравнений системы (2.3.1) неотрицательны. Последовательно исключая неизвестные, мы можем привести эту систему к предпочитаемому виду (2.3.6), затем — (2.3.8). Если правые части всех уравнений полученных систем окажутся неотрицательными, то соответствующие базисные решения (2.3.7) и (2.3.9) будут неотрицательными. Следовательно, чтобы получить неотрицательные базисные решения системы линейных уравнений, надо научиться вести процесс исключения неизвестных так, чтобы свободные члены всех уравнений на всех этапах процесса оставались неотрицательными. Покажем, что для этого достаточно выбирать разрешающие коэффициенты по определенным правилам.

Рассмотрим, для определенности, переход от системы (2.3.6) к (2.3.8). Свободные члены системы (2.3.8) связаны с коэффициентами при неизвестных и свободными членами системы (2.3.6) формулами исключения:

h¢ = h -

gis

h , i ¹ r .

 

i i

 

r

 

grs

Мы предполагаем, что правые части всех уравнений системы (2.3.6) неотрицательны, и требуем, чтобы правые части уравнений системы (2.3.8) также были неотрицательными. Оставив в стороне случай hr = 0 , когда

правые части уравнений не изменяются, сразу же замечаем, что разрешающий элемент должен быть положительным:

grs > 0 ,

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

 

h¢ = h -

gis

 

h

> 0 ,

(2.4.1)

 

 

 

i

i

grs

 

r

 

 

 

 

 

 

 

 

 

 

 

 

откуда следует, что

 

 

 

 

 

 

 

 

 

h

=

 

 

 

h

 

 

r

min

 

 

i

 

.

 

grs

 

gis

> 0

 

 

 

i=1,2, , m

 

 

 

Особо подчеркнем, что минимум берется по всем тем индексам i , где gis > 0 , так как справедливость неравенств вида (2.4.1) при gis 0 не

вызывает сомнений.

65

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

Может случиться, что указанное минимальное отношение достигается при нескольких значениях индекса i. Тогда любое из соответствующих им уравнений можно принять за разрешающее. Принято говорить в этом случае, что рассматриваемая система линейных алгебраических уравнений является вырожденной. Характерная особенность вырожденной системы в том, что после выполнения очередного преобразования, как нетрудно видеть, один или несколько свободных членов обращаются в нуль.

На этом основании вырожденной системой линейных алгебраических уравнений называют такую систему, у которой в какой-либо предпочитаемой форме хотя бы один свободный член ранен нулю.

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

Будем теперь искать н е б а з и с н ы е неотрицательные решения системы уравнений (2.3.1), по-прежнему считая, что правые части уравнений во всех системах неотрицательны. В общем решении будем придавать различные неотрицательные значения только одной свободной неизвестной, например xs , сохранив значения остальных свободных неизвестных

равными нулю, так, чтобы базисные неизвестные принимали неотрицательные значения. Если g1s < 0, g2 s < 0, , gms < 0 , то неизвестной xs можно

дать любое положительное значение

0 xs < +∞ ;

если же при неизвестной xs хотя бы в одном уравнении системы (2.3.1) имеется положительный коэффициент, то xs может изменяться лишь в ограниченной области:

66

0 xs <

min

 

hi

 

;

(2.4.2)

 

 

 

 

 

i=1,2, , m gis > 0

 

 

 

При любом значении xs , взятом из этой области, соответствующее

частное решение будет неотрицательным. Границами замкнутой области (2.4.2) отвечают крайние решения, которые, как нетрудно видеть, совпадают с базисными неотрицательными решениями. Поэтому в линейном программировании вместо крайнего решения, отвечающего верхней границе, мы будем искать соответствующее базисное неотрицательное решение.

ПРИМЕР 2.4.1. Найти базисное неотрицательное решение системы линейных уравнений из примера 2.3.1, выбрав в качестве базисных неиз-

вестных x2 и x3.

Решение. Вычислительный процесс иллюстрируется табл. 2.4.1.

Т а б л и ц а 2.4.1

x1

x2

x3

x4

b

 

 

 

 

 

 

Примечания

 

 

 

 

 

 

 

 

2

7

3

1

6

 

 

 

h

 

 

 

 

 

6 4 2 2

 

 

 

 

 

 

 

 

 

min

 

 

 

i

 

= min

 

 

 

 

,

 

,

 

 

 

 

=

 

 

 

 

3

5

2

2

4

 

 

 

 

{

 

 

 

 

 

 

}

 

 

 

 

 

i =1, 2, 3

 

 

> 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

gi1

 

 

 

 

 

7 5 4

 

 

 

4

 

 

 

9

4

1

7

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

–55/4

0

5/4

–45/4

10/4

 

hi

 

 

 

= min

10 / 4

 

 

6 / 4

 

 

2 / 4

 

= 2

 

 

 

 

 

 

 

 

 

 

 

 

–33/4

0

3/4

–27/4

6/4

min

 

 

 

 

 

 

 

 

 

,

 

 

 

 

 

,

 

 

 

 

 

9/4

1

1/4

7/4

2/4

i=1, 2, 3

gi2 > 0

 

 

 

 

5 / 4

 

 

 

 

3 / 4 1 / 4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

–11

0

1

–9

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

1

0

4

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Дадим к этой таблице некоторые комментарии. На первом шаге метода Жордана — Гаусса мы выбрали в качестве разрешающей неизвестную x2. Чтобы определить разрешающее уравнение, разделим правые части уравнений на соответствующие коэффициенты при выбранной неизвестной, и среди полученных отношений найдем наименьшее:

 

 

 

 

{

 

 

 

 

 

}

 

 

 

 

h

 

 

 

6

 

4

 

2

 

 

2

 

min

i

 

= min

 

,

,

 

=

.

 

 

 

 

 

 

 

i=1, 2, 3 gi1 > 0

 

 

7 5

4

 

4

 

Оно соответствует третьему уравнению системы. Поэтому за разрешающее принимаем третье уравнение и исключаем x2 из первого и второго уравнений.

На втором шаге метода Жордана — Гаусса в качестве разрешающей мы выбираем неизвестную x3. Разделим правые части уравнений на соответствующие коэффициенты при выбранной неизвестной:

 

 

 

 

{

 

 

 

 

 

}

 

h

 

 

 

10 / 4

 

6 / 4

 

2 / 4

 

min

i

 

= min

 

,

,

= 2 .

 

 

 

 

i=1, 2, 3 gi 2 > 0

 

 

5 / 4 3 / 4

1 / 4

 

67

Все три отношения оказались одинаковые (равные двум), поэтому любой элемент данного столбца можно выбрать в качестве разрешающего. В качестве разрешающего уравнения можно выбрать любое, кроме третьего, поскольку при выборе третьего уравнения в качестве разрешающего неизвестная x3 перестанет быть базисной.

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

Таким образом, исходная система линейных уравнений

 

2

7

3

1

 

6

 

 

 

3

5

2

2

 

4

 

 

 

 

 

 

4

1

7

 

 

 

9

 

2

 

 

 

 

приведена с помощью элементарных преобразований к эквивалентной системе

−11

0

1

 

 

−9

 

 

2

 

 

 

 

5

1

0

 

 

4

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

или

 

 

 

 

 

 

 

 

 

−11x1 +

 

 

x3 −9x4 = 2,

 

5x1 + x2

+ 4x4 = 0,

 

Соответствующее базисное решение

 

 

x1

 

 

0

 

 

 

 

 

 

x

 

 

0

 

.

 

 

2

 

=

2

 

 

 

x

 

 

 

 

 

 

 

 

3

 

 

0

 

 

 

 

 

 

x4

 

 

 

 

 

 

 

§ 2.5. ОБРАТНАЯ МАТРИЦА

Пусть A — квадратная матрица. Если существует матрица B, такая что произведение AB совпадает с единичной матрицей (AB = E), то говорят, что матрица A обратима, при этом матрицу B называют обратной к

матрице A и обозначают A −1 . Таким образом, по определению,

 

AA−1 = E .

(2.5.1)

Обратная матрица перестановочна с исходной, а матрица, обратная обратной, совпадает с исходной:

AA−1 = A−1A = E, (A−1 )−1 = A .

Если для данной матрицы обратная матрица существует, то она определяется единственным образом.

Как узнать, является ли данная матрица

68

A = (aij ) n×n

обратимой? Искомая матрица

A−1 = (xij ) n×n

должна служить решением матричного уравнения (2.5.1):

a11

a12

a1n x11

x12

x1n

1

0

 

a22

 

 

x22

 

 

 

0

1

 

a21

 

a2n x21

 

x2n

=

 

 

 

 

 

 

 

 

 

an2

 

 

xn2

 

 

 

 

0

 

an1

ann xn1

xnn

0

0

0 , (2.5.2)

1

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

Для этого умножим первую, вторую и т. д. строки матрицы A на первый столбец обратной матрицы A −1 и, приравняв к соответствующим элементам первого столбца стоящей справа единичной матрицы, получим n линейных уравнений. Затем все строки данной матрицы последовательно умножим на второй столбец обратной матрицы и, приравняв к соответствующим элементам второго столбца единичной матрицы, получим еще n уравнений и т. д., т. е. получим систему линейных уравнений

n

 

 

 

 

aij xkj = δij ,

i = 1, 2, , n,

j = 1, 2, , n ,

(2.5.3)

k =1

 

 

 

 

где

 

 

 

 

dij

1,

если i = j,

 

 

=

если i ¹ j

 

 

 

0,

 

 

символ Кронекера.

Вопрос о том, является ли данная матрица A обратимой и если да, то как найти обратную матрицу, сводится к исследованию и решению системы линейных алгебраических уравнений специального вида (2.5.3).

Для решения системы (2.5.3) целесообразно воспользоваться методом Жордана. Как известно, этот метод не требует предварительного исследования системы уравнений на совместность — процессы исследования и решения происходят одновременно. Особенно важно то, что этим методом можно решать все n подсистем системы (2.5.3) одновременно, так как они имеют общую матрицу коэффициентов при неизвестных, совпадающую с данной матрицей A. Выпишем матрицу A и припишем к ней столбцы свободных членов всех n подсистем:

69

(A | E)

a11

a12

a1n

1

0

0

 

 

 

 

0

1

 

0

 

 

a21

a22

a2n

 

.

(2.5.4)

 

 

 

 

 

 

 

 

 

 

an 2

ann

0

0

 

 

 

 

an1

1

 

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

(A | E) (E | A−1 ) .

(2.5.5)

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

Вычисление обратной матрицы в Microsoft Excel производится с помощью функции

A −1 = МОБР(матрица A),

где «матрица A» — ссылка на ячейки рабочего листа, содержащие данную матрицу. Данная формула должна быть введена в рабочий лист как ф о р -

м у л а м а с с и в а Microsoft Excel.

ПРИМЕР 2.5.1. Требуется найти (если это возможно) матрицу, обратную к матрице

 

 

0

1

2

 

A =

 

 

 

 

 

 

4

0

1

.

 

 

3

−1

1

 

 

 

 

Решение. Припишем справа к матрице A единичную матрицу, и с помощью элементарных преобразований строк приведем матрицу к такому виду, чтобы на месте матрицы А оказалась единичная матрица, тогда на месте единичной матрицы будет искомая матрица A −1 . Процесс элементарных преобразований иллюстрируется табл. 2.5.1.

В результате элементарных преобразований матрица

 

 

0

1

2

 

1

0

0

 

 

 

(A | E) =

 

4

0

1

 

0

1

0

 

 

 

 

 

 

 

−1

1

 

0

0

 

 

 

3

 

1

 

 

 

 

 

 

70