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

Дискретная математика / 2 4 Оптимизация

.pps
Скачиваний:
72
Добавлен:
11.05.2015
Размер:
211.97 Кб
Скачать

x, y

Расстояние на графе

x, y

- длина кратчайшей цепи

1) x, y 0;

 

x, y 0 x y

2) x, y y, x

 

 

3) x, y y, z x, z

 

 

Диаметр графа

d G max max x, y

 

 

 

x X

y X

 

Радиус графа

r G min max x, y

 

 

 

x X

y X

 

 

 

 

 

 

 

 

 

 

 

Центр графа v

 

v X , max v, y r G

 

 

 

y X

 

 

 

 

 

1

 

Волновой алгоритм

 

1

2

 

b

a

3

4

 

0

 

 

 

3

 

2

3

4

Этап I. Разметка графа

x X МЕТКА x : ;

МЕТКА a : 0; t : 0; F : a ;

0

Цикл пока (МЕТКА b )

t :=t+1;

Ft : x METKA x и xсмежна Ft

x Ft МЕТКА x : t;

Конец цикла;

Этап II. Построение пути

1 ;

2

Оптимизационные задачи на графоидах

Определение Пусть дан граф G =(Х,U) и числовая функция весов W: U→R. Тройку GW = =(Х,U,W) будем называть графоидом.

Задачи:

11

15 18

12

19

17

13

1.Построить остов минимального веса (МОД)

16

2.

Построить путь минимального

 

 

 

веса от вершины a к вершине b

14 3.

Построить дерево путей

 

 

минимального веса из вершины

 

 

a

3

Остов минимального веса

Дан графоид G

=(Х,U,W). Найти остов

 

 

O n2

 

 

 

 

 

 

 

 

 

 

 

WT : ;

l : 1;

 

минимального веса.

 

 

 

 

 

 

 

 

 

 

 

Найти

ul

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Алгоритм

 

- ребро минимального веса;

 

 

 

U : U \ ul ;T : T ul ;

«ближайшего

 

 

соседа»

 

Цикл пока l n 1

 

11

 

 

 

 

 

 

 

l: l 1;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

15

 

18

 

 

 

 

 

 

16

Найти ul - ребро

 

 

 

 

 

 

 

 

 

 

 

 

 

 

12

 

 

 

 

 

 

 

минимального веса,

 

 

 

 

 

 

 

 

 

 

 

 

смежное Т,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

19

 

 

 

 

 

 

14

не образующее цикла

 

 

17

 

 

 

 

 

 

 

 

с ребрами Т;

 

 

 

 

 

 

 

 

 

 

 

 

U : U \ ul ;T : T ul ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

13

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Конец цикла;

4

 

Остов минимального веса

T : ; l : 1;

W ul

 

 

 

 

 

 

 

 

O n m

Задача Дан графоид G

=(Х,U,W).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Найтиостов минимального веса.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

- ребро минимального веса;

 

«Жадный»

 

 

U : U \ ul ;T : T ul

;

 

 

 

алгоритм

 

 

Цикл пока l n 1

 

 

 

 

11

 

 

 

 

 

 

 

l: l 1;

 

15

 

 

 

 

18

 

 

 

 

 

16

 

 

 

 

 

 

 

 

 

 

 

Найти ul - ребро

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

минимального веса,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

не образующее

 

 

 

19

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

цикла с ребрами Т;

17

 

 

 

 

 

 

14

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

U : U \ ul ;T: T ul ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

13

 

 

 

 

 

 

 

Конец цикла;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Задача о кратчайшем пути

Задача Дан графоид GW =(Х,U,W). Найти путь

минимального веса от вершины а к вершине b.

Алгоритм Дейкстры

 

3

 

a

 

 

1

 

 

 

x1

 

1

x2

 

 

 

6

2

 

5

x3

 

9

x4

 

 

 

7

 

 

 

4

 

 

 

 

 

 

b

 

I. Разметка вершин

1)

a

x1

x2

x3

x4

b

0

 

 

 

 

 

2)

0

3

1

 

 

 

3)

0

2

1

 

6

 

4)

0

2

1

8

4

 

5)

0

2

1

8

4

8

II. Построение пути

6