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

Учебное пособие 764

.pdf
Скачиваний:
1
Добавлен:
30.04.2022
Размер:
573.61 Кб
Скачать

C64 = min(C64 , C62 + C24 ) = min( ¥,2 + ¥) = ¥;

C65 = min(C65 ,C62 + C25 ) = min(3,2 + 6) = 3;

C66 = 0.

Матрица, полученная после второй итерации, имеет вид

 

1

2

3

 

4

5

6

1

0

1

4

 

¥

7

3

2

1

0

3

¥

6

2

3

4

3

0

5

1

3

4

¥

¥

5

0

1

¥

5

7

6

1

1

0

3

6

3

2

3

¥

3

0

Рассмотрим случай, когда k = 3

C12 = min( C12 ,C13 + C32 ) = min(1,4 + 3) = 1;

C13 = min( C13 ,C13 + C33 ) = 4;

C14 = min( C14 ,C13 + C34 ) = min( ¥,4 + 5) = 9; C15 = min( C15 , C13 + C35 ) = min( 7,4 +1) = 5; C16 = min( C16 ,C13 + C36 ) = min(3,4 + 3) = 3.

Для второй строки получим

C23 = min(C23 ,C23 + C33 ) = 3;

C24

= min(C24 ,C23

+ C34 ) = min( ¥,3 + 5) = 8;

C25

= min(C25 , C23

+ C34 ) = min( 6,3 +1) = 4.

Приведем теперь расчет элементов, которые меняют свои

значения

 

C34

= min(C34 ,C33

+ C34 ) = min(5,5) = 5;

C41

= min( C41 , C13

+ C31 ) = min( ¥,5 + 4) = 9;

C42

= min(C42 ,C43

+ C32 ) = min( ¥,5 + 3) = 8;

C43

= min(C43 ,C43

+ C33 ) = 5;

C46

= min(C46 ,C43

+ C36 ) = min( ¥,5 + 3) = 8;

C51

= min( C51 , C53 + C31 ) = min( 7,1 + 4) = 5;

C52

= min(C52 ,C53

+ C32 ) = min( 6,1 + 3) = 4;

19

 

C64 = min(C64 , C63

+ C34 ) = min(¥,3 + 5) = 8.

 

 

Матрица, полученная после третьей итерации, будет

 

 

 

1

2

3

 

4

5

6

1

 

0

1

4

 

9

5

3

2

 

1

0

3

8

4

2

3

 

4

3

0

5

1

3

4

 

9

8

5

0

1

8

5

 

5

4

1

1

0

3

6

 

3

2

3

4

3

0

Приведем расчет для k= 5 только тех элементов, которые

меняются

 

 

 

 

 

C14

= min( C14 , C15

+ C54 ) = min( 9,5 +1) = 6;

 

 

C24

= min( C24 ,C15

+ C54 ) = min(8,4 +1) = 5;

 

 

C34 = min(C34 , C35

+ C54 ) = min( 5,1 +1) = 2;

 

 

C41 = min( C41 ,C45

+ C51 ) = min(9,1 + 5) = 6;

 

 

C42

= min( C42 ,C45

+ C52 ) = min(8,1 + 4) = 5;

 

 

C46

= min( C46 ,C45

+ C56 ) = min(8,1 + 3) = 4.

 

 

Таким образом, кратчайшие пути между всеми узлами

 

 

 

 

 

 

 

 

 

 

 

1

 

2

3

4

5

6

1

 

0

 

1

4

6

5

3

2

 

1

 

0

3

5

4

2

3

 

4

 

3

0

2

1

3

4

 

6

 

5

2

0

1

4

5

 

5

 

4

1

1

0

3

6

 

3

 

2

3

4

3

0

4.2. Для сети, представленной на рис. 3, найти кратчайшие пути от вершины а1 до остальных.

Решение. Результаты расчетов приведены в таблице.

20

k

p

l1

l2

l 3

l 4

l 5

 

l 6

 

 

 

 

 

 

 

 

1

1

0

¥

¥

¥

¥

¥

2

2

0

1

¥

¥

¥

5

3

6

0

1

4

¥

7

 

3

4

3

0

1

4

¥

6

3

5

4

0

1

4

9

5

3

6

5

0

1

4

6

5

3

В первом столбце дается номер итерации, во втором — номер вершины, получающей на данной итерации постоянную пометку, а в остальных — величины пометок для каждой вершины. Столбец выделяется жирными линиями, начиная с той итерации, на которой пометка соответствующей вершины стала постоянной. Рассмотрим порядок расчета.

1.

На

первой

итерации

пометка

первой

вершин

постоянная

и

равнаl1 = 0 ,

пометки

остальных

вершин

временные и равны li = ¥.

 

 

 

 

 

 

2.

Соседями

вершины а1 является

а2

и а6 .

Временные

пометки этих вершин равны

 

 

 

 

 

 

l2¢ = min( ¥,0 +1) = 1;

l6¢ = min( ¥,0 + 5) = 5.

 

 

 

Выбираем минимальную из них l2¢ = 1; p = 2; l p

= 1.

 

3.

На

третьей итерации соседями

вершиныа2 являются

вершины a3 , a5 , a6 . Временные пометки этих вершин

 

 

l2¢ = min( ¥,1 + 3) = 4;

l5¢ = min( ¥,1 + 6) = 7;

 

 

 

l6¢ = min(5,1 + 2) = 3.

 

 

 

 

 

 

 

Минимальная

из

нихl6¢

становится

постояннойl6

= 3,

p = 6.

 

 

 

 

 

 

 

 

 

 

4.

Соседями

вершины а6 являются

a3 , a5 . Временные

пометки этих вершин l3¢ = min( 4,3 + 3) = 4;

l5¢ = min( 7,3 + 3) = 6.

Минимальная из них l3¢

становится постоянной l3 = 4,

p = 3.

21

5. На пятой итерации соседями

вершиныa3

являются

вершины a4 , a5 . Найдем временные пометки этих вершин

l4¢ = min( ¥,4 + 5) = 9; l5¢ = min( 6,4 +1)

= 5.

 

Минимальная из

них l5¢ = 5 становится постоянной l5 = 5,

p = 5.

 

 

 

 

6. Вершина a5

соседствует с

вершинойa4 ,

временная

пометка которой l4¢ = min(9,5 +1) = 6,

p5

= 4.

 

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

5. АЛГОРИТМЫ ОПРЕДЕЛЕНИЯ МАКСИМАЛЬНОГО ПОТОКА

1°. Пусть

в

сети

имеется

единственный

источникa

 

 

 

 

 

 

 

0

единственный сток an . Обозначим положительным числом bij

пропускную

способность дуги

от ai к a j ,

а

за b ji -

пропускную способность дуги от a j

к ai ,причем выполнение

равенства

bij = b ji

не

обязательно. Потоком

в

сетииз

источника

a0

в

сток an

называется

множество

неотрицательных чисел xij

, поставленных в соответствие дугам

 

 

 

 

ì-u, j = 0,

 

 

сети, таких, что å xij - å x jk =

ï

j ¹ 0, n,

 

 

í0,

 

 

 

 

i

k

ï

j = n,

 

 

 

 

 

 

îu,

 

 

где 0 £ xij £ bij ; число u ³ 0 называется величиной потока.

2°. Пусть начальные пропускные способности дуг заданы. Выберем некоторый начальный поток, например, нулевой.

Алгоритм работает следующим образом.

22

1. Выберем путь из a0 в an положительной пропускной способности q , гдеq - минимальная величина из пропускных способностей .дуг Источник a0 считается вначале

помеченным, но не просмотренным, а все остальные узлы не помеченными.

2. Выбрать любой помеченный, но не просмотренный узел

ai .

3. Всем узлам a j , для которых bij ³ 0 , приписать пометки

( i, j ) и

считать

их

помеченными. Считать

узел a0

просмотренным. Если при этом сток an оказался помеченным, то по пометкам легко восстановить искомый путь изa0 в an .

В противном случае следует перейти к шагу 2. Если это невозможно, то искомого пути не существует.

4. Пусть (a0 , ai1 ), (ai1 , ai2 ), …, (aim -1 , aim ) найденный путь. Тогда для каждой дуги (aik , aik +1 ) ^), входящей в этот

путь, следует выполнить операторы:

xi i

k +1

:= xi i

+q; bi i

:= bi i

-q;

k

k k +1

k k +1

k k +1

bi i

:= bi i

+q; u := u +q.

 

k +1 k

k +1 k

 

 

 

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

5.1. В областиимеется семь городов, соединенных дорогами. Граф задачи показан на рис.4.

Рис. 4

23

На каждой

дуге(ai , a j )

около узлаai

указано

максимальное (за

один

день) число

мешков

с

корреспонденцией,

которые можно перевезти от ai к a j

,

а около узла a j — максимальное число мешков, которые можно перевезти из a j в ai . Найти максимальное число мешков, которые можно перевезти из a0 в an .

Решение. Пусть начальный поток задан числами

u = x02 = x25 = x56 = 5 (потоки по остальным дугам равны нулю). После изменения пропускных способностей дугbik ik +1 получается сеть.

Далее выбираем путьa0 ® a1 ® a4 ® a6 , где q = 3

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

24

На следующем шаге выбираем путь

a0 ® a1 ® a2 ® a4 ® a6 ,q = 1,

тогда граф примет вид

Далее a0 ® a2 ® a4 ® a6 , q = 2 и граф будет

Следующий шаг a0 ® a3 ® a5 ® a4 ® a6 , q = 1

Далее a0 ® a3 ® a2 ® a4 ® a6 , q = 1

25

Наконец, a0 ® a3 ® a5 ® a2 ® a4 ® a6 , q = 1

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

6. ЗАДАЧА ЗАМЕНЫ ОБОРУДОВАНИЯ

Покупная цена нового оборудования известна и равна S . Известны затраты на эксплуатацию (уход, ремонт и т. д.) в

соответствующие периоды (1, 2,..., t,..., п). Пусть периоды равны, а затраты в периодt будут Ct . В результате старения балансовая цена оборудования непрерывно падает. Обозначим ее за St . Считаем, что Ct и St экспоненциально зависят от t

Ct a0 (elt -1); St = b0 e-mt .

Средние затраты равны

26

t

Y (t) = (S + åCt - St ) / t,

 

 

 

 

 

 

t =1

 

 

 

 

 

Y (t) = (S + a

0

(elt

-1) - b e-mt ) / t = (a

0

(elt -1) + S (1 - e-mt )) / t.

Отсюда

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

dY

=

(a0 le lt

+ Sme-mt )t - a0 (elt -1) - S (1 - e-mt )

= 0.

 

dt

 

 

 

t 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Преобразуя, будем иметь

 

 

 

 

 

a0 (ltelt - elt +1) = S (1 - e-mt - mte-mt ).

 

 

 

Если

 

 

 

 

обозначить Y

= a

0

(ltelt +1)

и

 

 

 

 

 

 

1

 

 

 

 

Y2 = S (1 - e-mt - mte-mt ), то точка пересечения этих

кривых и

даст искомое времяt, когда следует произвести замену оборудования.

7. МЕТОД НАИМЕНЬШИХ КВАДРАТОВ

1°. Метод наименьших квадратов заключается в том, что из данного множества функцийy = f (x) выбирается та, для

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

Подбор параметров функцииy = f (x) делается после

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

переменных xi

и соответствующих им значений yi .

 

 

 

 

 

 

 

 

xi

 

x1

x2

 

xn

yi

 

y1

y2

 

yn

Рассмотрим некоторые простейшие виды функций.

2°. Линейная функция y = ax + b . Нормальная система для определения коэффициентов a и b имеет вид

27

 

 

 

n

 

 

 

 

 

n

 

n

 

 

 

 

 

 

 

aåxi 2 + båxi = åxi yi ;

 

 

 

 

 

 

 

i =1

 

 

 

 

i=1

 

i =1

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

aåxi

+ bn = å yi .

 

(1)

 

 

 

 

 

 

 

 

 

i =1

 

 

 

 

 

 

 

i=1

 

 

 

 

3°.

Квадратичная

 

 

 

функцияy = ax 2 + bx + c .

Нормальная

система для определения коэффициентов a , b и с имеет вид

 

aåxi 4 + båxi 3 + cåxi 2 = åxi 2 yi ;

 

 

 

 

aåxi 4 + båxi 3 + cåxi 2 = åxi 2 yi ;

 

 

 

 

 

 

aåxi

2 + båxi

+ cn = å yi .

 

(2)

 

4°.

Гипербола

вида y = a +

b

.

 

Нормальная

система для

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

определения параметров a и b имеет вид

 

 

 

 

 

 

 

aå

1

+ bå

 

1

 

 

= å

yi

;

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

xi

 

 

 

 

 

xi

 

 

xi

 

 

 

 

 

 

 

na + bå

 

1

= å yi .

 

(3)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xi

 

 

 

 

 

 

 

 

 

7.1.

Результаты

 

 

 

экспериментальных

 

 

исследований

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xi

1

 

2

 

 

 

 

3

 

 

 

 

 

4

 

 

5

 

6

 

yi

13

 

8

 

 

 

 

4

 

 

 

 

 

1

 

 

-2

 

-9

 

Полагая, что

зависимость

 

линейная, найти

значения

параметров функции y = ax + b .

 

 

 

 

 

 

 

 

 

Решение. Воспользуемся методом наименьших квадратов.

При

составлении

системы

 

нормальных

 

уравнений(1)

суммирование удобнее выполнять в табличной форме

28