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

Информационные системы менеджмента - Бажин И.И

..pdf
Скачиваний:
168
Добавлен:
24.05.2014
Размер:
12.28 Mб
Скачать

Глава 5. Анализ данных как этап принятия решений

281

или в векторно-алгебраической форме:

Ах = Ь,

где

'in

21

Я 2 2

•2n

аni

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

Совокупность всех возможных решений системы называется множеством ре­

шений.

Определение Две системы уравнений называются эквивалентными, если обе сис­

темы имеют одно и то же множество решений, или, другими словами, ес­ ли решение одной системы автоматически является решением другой и наоборот.

Метод решения систем уравнений основан на построении эквивалентной системы, решение которой легко найти непосредственно. Решение этой системы уравнений одновременно является решением исходной системы.

При построении эквивалентных систем можно использовать элементарные операции двух типов:

1)умножение любого уравнения системы на положительное или отрица­ тельное число;

2)сложение любого уравнения с любым другим уравнением системы, умно­ женным на константу (положительную, отрицательную или равную нулю).

Если определитель матрицы А не равен нулю, то система имеет единствен­

ное решение. Значения независимых переменных Х; (i = 1,2 п) могут быть получены по формулам Крамера:

detA: det A

Здесь det Aj и detA - соответственно, определители матриц А, и А. Матрица

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

машинного времени.

Применяемые на практике численные методы решения систем линейных уравнений делятся на два класса: прямые (точные) и итерационные (приближенные). В прямых методах вычисления ведутся без округлений, и точ-

282

Часть 1. Новые принципы работы

ное решение можно получить за конечное число арифметических операций. Итерационные методы дают приближенное решение систем с наперед заданной точностью.

Метод Жордана-Гаусса

Метод Жордана-Гаусса относится к прямым (точным) методам, основной алгоритм которых - это получение последовательности эквивалентных систем путем исключения неизвестных по определенным правилам. Результат получа­ ется за п шагов (п - число неизвестных Xj). На каждом шаге решения очеред­ ная эквивалентная система получается в результате выполнения обыкновенного жорданова исключения.

Обыкновенные жордановы исключения.

Пусть имеется система m уравнений с п неизвестными

у, = a i l x 1 + a i 2 x 2 + . . . + a . 1 x „

(i = Un)

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

Х 1

Х 2

" " "

 

X S

• " '

Х П

а„

*12

 

a i s

 

a i n

аг1

аг2

 

ars

 

a rn

a ml

а т 2

 

3

ms

 

amn

Выразим из r-го уравнения переменную

X s

через остальные переменные и

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

выше таблице этот элемент выделен прямоугольником).

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

У1 = 3 11Х 1 + a i 2 X 2 + - - - + a i s X s + - - - + a i „ X

Из уравнения

Глава 5. Анализ данных как этап принятия решений

283

Уг = a n X l + a r 2 X 2 + - - - + a r S X S + - - - + a r n X n

 

выразим

 

 

 

arsxs = У г - а г 1 х , - a r 2 x 2 - . . . - a r n x n ,

 

откуда умножением обеих частей уравнения на a l s

получим

 

a i s X s =

"а^Г\Уг ~ a r l X l ~" a r 2 X 2 _ - - - _ a r n X i i ) •

 

Подставив полученное выражение в первое уравнение, выразим yj в виде

У _ a r s a u ~ a r i a i s х + a rs a n ~a r2a is х +

+ araaln - a r „a l s x

 

а _,

а __

а _

 

Это преобразование удобно выполнять, пользуясь приведенной таблицей, которая преобразуется в новую таблицу (приведенную ниже) по следующему правилу:

1.Разрешающий элемент заменяется единицей; над разрешающим столб­ цом записывается уг , а у разрешающей строки - x s .

2.Остальные элементы разрешающего столбца (s-ro) остаются без изменений.

3.Остальные элементы разрешающей строки (r-той) меняют знаки. 4.Элементы, не принадлежащие разрешающим строке и столбцу, вычисля­

ются по формуле

bij = a i j a r S - a r j a i s

(i*r,j*s)

5. Все элементы новой таблицы делятся на разрешающий элемент ar s

 

X, -

X 2

'

Уг

 

xn

 

У1

btt

bl2

» l s • "

b l n

 

 

 

 

x s =

- a r l

" a r 2

1

 

" a rn

:ar

 

ьш1

b„,2

 

a m s

 

 

 

На основе описанного жорданова исключения строится алгоритм метода Жордана-Гаусса.

284

Часть 1. Новые принципы работы

Алгоритм метода Жордана-Гаусса

Пусть требуется решить систему

a l l X l + a i 2 X 2 + - " + a l i i X i i -

aiiXi+ai2x2+...+ainxn = h;

anlx l +a n2X 2+ "- + a nn X n = h„

1.Перепишем систему в виде

o=a1 1 x1 +a1 2 x2 +...+al n xn -h1

o=ai l x1 +ai 2 x2 +...+ai n xn - h;

°~ a n l X l + a n 2 X 2 + - - + a nn X

и представим в виде таблицы

 

х 1

Х 2

'

x n

1

0 =

а 1 1

* 1 2

aln

A

 

0 =

ац

a i 2

ain

A

 

0 =

а ni

а п 2

 

a пи

A

 

 

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

таблицу, в которой слева окажется некоторое Xj, а сверху над столбцом - 0. Вычеркиваем этот столбец (т.е. бывший разрешающий столбец).

3. Повторяем действие пункта 2 до тех пор, пока не будут "переброшены" все Xj в левую часть таблицы, то есть пока не придем к таблице (векторустолбцу).

Глава 5. Анализ данных как этап принятия решений

285

х 1

=

ь,

Х 2

=

ь2

Х П =

ь .

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

Рассмотрим пример. Требуется решить систему уравнений

2Х! + 2х2 - х3 + х4 = 4 4х! + Зх2 - х3 + 2х4 = 6 8Xi + 5х 2 - Зх3 + 4х4 = 12 Зх, + Зх2 - 2х3 + 2х4 = 6

1.Запишем систему в виде

0 =

Х1

х2

х3

х4

1

2

2

-1

1

- 4

0 =

4

3

-1

2

-6

0 =

8

5

-3

4

-12

0 =

3

3

-2

2

-6

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

 

Х1

х2

Хз

1

х4 =

-2

-2

1

4

0 =

0

-1

1

2

0 =

0

-3

1

4

0 =

-1

-1

0

2

3.Далее последовательно будем производить жордановы исключения относите­ льно выделенных элементов, производя попутно эквивалентные преобразо­ вания. На втором шаге получим

286 Часть 1. Новые принципы работы

 

Х1

х

1

 

 

Х1

х

1

 

2

 

 

2

х4 = -2 -1

2

 

х4 =

-2 -1

2

Хз =

0

1

-2

или

х3 =

0

1

-2

0 =

0 -2

2

 

0 =

0

-2

2

0 = -1 -1

2

 

0 =

1

1 -2

На третьем шаге получим

 

 

 

 

 

 

 

Х1

1

 

 

 

Х1

1

 

х4 = -1

0

 

 

х4 =

-1

0

 

Хз =

-1

0

 

ИЛИ

Хз =

-1

0

 

0 =

2

-2

 

 

0 =

1

-1

 

х2 = -1

2

 

 

Х2 =

-1

2

 

После выполнения последнего шага жорданова исключения получим решение системы

х4

=

-1

х3 =

-1

Х1 =

1

х2

=

1

Метод Зейделя

Метод Зейделя относится к приближенным (итерационным) методам реше­ ния систем линейных уравнений. В ряде ситуаций эти методы оказываются бо­ лее эффективными, чем точные методы. Рассмотрим вначале метод простой

итерации.

Метод простой итерации

Решается система уравнений

А.\ = Ь,

имеющая вид

а 1 1 Х 1 + а 1 2 Х 2 + - " + а 1 п Х п - h l

 

V1 +ai 2 x2 +...+ai n xn = hi

(5.1)

а n 1 Х 1 + a n2 X 2+ - •+ a niiX n - h„

Глава 5. Анализ данных как этап принятия решений

287

Будем рассматривать случай, когда определитель системы не равен нулю, т.е. det А Ф 0. В этом случае система имеет единственное решение.

Предположим, что диагональные элементы матрицы А не равны нулю -

ац ^ 0 (i = 1,2,...,п), - и разрешим первое уравнение системы относительно х1: второе - относительно Хг и т.д. Тогда получим

 

хх 1 1 2 х2 1 3 х3 +...+ а1пхп

 

х2 = р2 21хх

+ а23х3+...+ а2пхп

 

Х 3 = Рз + <*32Х1

+ а 3 2 Х 3 + - " + а З п Х п

 

Хп - Рп + а п 1 Х 1 + а п 2 Х 2 + . . . + а пп-1Х п-1

Здесь

В : = — ;

а н = - —

при i ^ j

 

a-

J

a-

 

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

х( 0 ) = р

Далее последовательно строим матрицы-столбцы

 

х

= Р + ах^

- первое приближение,

 

 

х^

- Р + а х (

- второе приближение и т.д.

 

В развернутом виде запишем

 

 

 

 

„(о)

Pi

 

 

 

 

 

 

 

х1

=Р1+2.«нх(k)

 

где a u = 0;

i = 1,2, ... n;

k = 0,1,2

- номер итерации.

 

Условие сходимости метода простой итерации состоит в следующем

 

 

 

п

 

 

 

i u | >Z а:

(i = 1, 2,... n)

(5.2)

288

Часть 1. Новые принципы работы

то есть в каждой строке исходной матрицы коэффициентов А модуль диа­

гонального элемента должен быть больше суммы модулей остальных элементов строки.

Метод Зейделя представляет собой модификацию метода простой итера­ ции. Здесь при вычислении (к+1)-го приближения Xj учитываются уже вычислен­

ные ранее (к+1)-е приближения всех х до Xj (то есть Хч, хг, . . . , Хм). Таким образом, для приведенной линейной системы

п

 

 

x i = P i + 2 > , j x i

(' = 1,2, ... n)

(5.3)

j=i

(k+1)-e приближения строятся по зависимостям

v ( k + l ) _ n

v ( k + 1 ^ V f v

v ( k )

X 2

- P 2 + a 2 1 X l

+ Z - r a 2 j X j

 

 

 

j=2

 

x<k+1> = p3 +aMxJk+1) +a32xf+1> + t a „ x { k )

(5.4)

j=3

 

x i k + l ) = P „ + Z a n j x S k + l ) + a l i n x ! :

Напомним, что в приведенных зависимостях a u = 0.

Условия сходимости для метода Зейделя такие же, как и для метода простой итерации.

Алгоритм метода Зейделя

Пусть задана система в виде (5.1) и число s > 0 (не больше допустимой по­ грешности приближенного решения).

1.Анализируем систему. Если для всех уравнений выполнено условие схо­ димости (5.2), то переходим к пункту 3 алгоритма. В противном случае перехо­ дим к пункту 2.

Глава 5. Анализ данных как этап принятия решений

289

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

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

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

3.Делим каждое из уравнений системы на соответствующий диагональный коэффициент и выражаем последовательно х1( х2 , Хз и т.д., то есть получаем приведенную систему в виде (5.3). Выбираем начальное приближение

x < e > = ( x ? > = P i : x ? > = P j

До) Эп)

ипереходим к пункту 4 алгоритма.

4.На каждой итерации по формулам (5.4) определяем (к+1)-е приближение решения системы.

5.Определяем разности

 

 

 

,(k-i) „(к)

(1 =

1,2,3

п)

 

 

 

 

и

en = max

,(k-i)

„(ь)

 

 

 

 

x i

 

 

 

Если

БП < s , то процесс поиска решения закончен. Если же

s n > б , то воз­

вращаемся к пункту 4 алгоритма и т.д.

 

 

 

Пример. Решить систему уравнений с точностью s = 0,001.

2x^3x2 - 4x3 = 4 X! - 2 - 3 = 2 5xi - Зх2 + х3 = 1

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

5xi - Зх2 + х3 = 1 Xi +5x2 + х3 = 2 Xi - 2х2 - 5х3 = 2

290

Часть 1. Новые принципы работы

Заметим, что для преобразованной системы условие (5.2) выполняется, так как в каждом уравнении модуль диагонального коэффициента больше суммы моду­ лей остальных коэффициентов уравнения (в первом: 5 > 4, во втором: 5 > 2, в третьем: 5 > 3).

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

Хп = 0,2 + 0,6х2 -0,2х3

х2 = 0,4 - 0.2Х, - 0,2х3

х3 =- 0,4+ 0,2х! - 0,4х2

Вкачестве нулевого приближения выберем Xi = 0,2; х2 = 0,4; хз =- 0,4.

Далее производим итерации, выполняя соответствующие вычисления по формулам (5.4). Эти вычисления удобно производить, используя программный комплекс Microsoft Excel. Результаты выполненных таким образом вычислений для десяти итераций представлены ниже в виде таблицы Microsoft Excel.

k

х1

х2

хЗ

Б

0

0,2

0,4

-0,4

0,32

1

0,52

0,376

-0,4464

20,51488 0,386304 -0,45155 0,010304

30,522092 0,385891 -0,44994 0,007212

40,521522 0,385683 -0,44997 0,000569

5

0,521404

0,385713

-0,45 0,000118

6

0,521429

0,385715

-0,45

2.5Е-05

7

0,521429

0,385714

-0,45

9.2Е-07

8

0,521429

0,385714

-0,45 6.43Е-07

9

0,521429

0,385714

-0,45

5.12Е-08

10

0,521429

0,385714

-0,45

1.05Е-08

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

5.1.2. РЕШЕНИЕ НЕЛИНЕЙНЫХ УРАВНЕНИЙ

При решении вычислительных задач часто возникает необходимость в ре­ шении уравнений вида f(x) = 0, где функция f(x) определена и непрерывна на интервале а < х < Ь. Если функция f(x) представляет собой многочлен, то урав­ нение называется алгебраическим. Если х находится под знаком трансцен-

Соседние файлы в предмете Экономика