1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Tài liệu Một số bài toán tối ưu trên đồ thị pptx

20 992 25
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Một số bài toán tối ưu trên đồ thị
Tác giả Nguyễn Thị Diệu Hằng
Người hướng dẫn Nguyễn Mậu Hân, Giảng viên
Thể loại Bài tập
Định dạng
Số trang 20
Dung lượng 609 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

* Bài 3:Cho đồ thị có trọng số như hình dưới đây.Hãy tìm đường đi ngắn nhất từ đỉnh A đến đỉnh N... * Bài 6:Giải bài toán mạng vận tải sau bằng thuật toán Ford-Fulkerson với luồng vận tả

Trang 1

BÀI TẬP TOÁN RỜI RẠC

-&0& CHƯƠNG 4:

MỘT SỐ BÀI TOÁN TỐI ƯU

TRÊN ĐỒ THỊ

Giảng viên : Nguyễn Mậu Hân

Sinh viên thực hiện : Nguyễn Thị Diệu Hằng

Lớp : Tin K30D

Trang 2

* Bài 1:

Dùng thuật toán Dijkstra tìm đường đi ngắn nhất từ đỉnh a đến các đỉnh khác trong đồ thị sau:

Lời giải:

b

a

k

h

c

e

g

d

4

4

2 1

11

5

7

12

2

7

3

4

5

Trang 3

* Bài 2:

Dùng thuật toán Dijkstra tìm đường đi ngắn nhất từ đỉnh a đến các đỉnh trong đồ thị sau:

Lời giải:

a

c

b

g

d

i

f

h

e

k

1 10

6

3

2 4

10

4

1 4 1 3 6 8

5

3

2

8 5

Trang 4

* Bài 3:

Cho đồ thị có trọng số như hình dưới đây.Hãy tìm đường đi ngắn nhất

từ đỉnh A đến đỉnh N

Lời giải:

L(A) L(B) L(C) L(D) L(E) L(F) L(G) L(H) L(I) L(J) L(K) L(L) L(M) L(N)

* Bài 4:

A

F

J

K

B

L

C

M

D

N

E

Trang 5

Tìm đường đi ngắn nhất từ B đến các đỉnh khác của đồ thị có ma trận trọng số là:

Lời giải:

Từ ma trận trọng số trên, ta có thể vẽ ra đồ thị tương ứng như sau:

Ta có thể giải bài toán theo 2 cách:

• Cách 1: (Dùng thuật toán Dijkstra)

• Cách 2: (Dùng thuật toán Floyd)

Ta có ma trận trọng số của đồ thị:

B

A a

G

E C

6

4

1

4

2

2

1

4 4

Trang 6

A B C D E F G

Áp dụng thuật toán Floyd ta có:

W1

W2

W3

Trang 7

A 6 3 5 6 8 7 10

W4

W5=W6

W7=W*

* Bài 5:

Tìm W* bằng cách áp dụng thuật toán Floyd vào đồ thị sau:

Trang 8

Lời giải:

Ta có ma trận trọng số của đồ thị trên là: (những ô trống là ∞)

D

W

Áp dụng thuật toán Floyd ta có:

D

W0=W1=W

A

E

F

D 3

1

2 0

8

6 13 4

3

5

8 2

Trang 9

A B C D E F

D

W2

D

W3

D

W4=W5

D

W6=W*

Trang 10

* Bài 6:

Giải bài toán mạng vận tải sau bằng thuật toán Ford-Fulkerson với luồng vận tải khởi đầu bằng 0:

φ

( Khả năng thông qua của các cung là các số màu xanh)

Lời giải:

Luồng φ có đường đi (V0, V1), (V1, V5), (V5, V7) gồm các cung chưa bão hòa Nâng luồng φ lên 4 đơn vị để có luồng φ1:

φ1

Xét xích α=(V0, V1, V4, V2, V6, V7) Nâng luồng φ1 lên 2 đơn vị ta có được luồng φ2:

V

3

V

4

V

0

V

2

V

6

V

7

V

1

V

5

8

4

2

6

4

6

8

2

4

3 4

V

3

V

4

V

0

V

2

V

6

V

7

V

5

8

4

2

6

4

6

8

2

4

3 4

V

1

+5 4

4

4 0

Trang 11

Xét xích β=(V0, V1, V5, V3, V4, V7) Nâng luồng φ2 lên 2 đơn vị ta có luồng φ3:

φ3

V

3

V

4

V

0

V

2

V

6

V

7

V

5

8

4

2

6

4

6

8

2

4

3 4

V

1

+0

+1

+4

6

4

4

+2

0

2

2 2

2

V

1

V

4

V

2

V

6

V

0

V

7

Xích α

0

+0

+2

+6

0+2

0+2 4+2

V

3

V

4

V

0

V

2

V

6

V

7

V

5

8

4

2

6

4

6

8

2

4

3 4

V

1

+0

+1

+4

8

6

4

+2

0

2

2

2 2

2

2

2

Trang 12

Xét xích γ=(V0, V3, V6, V7) Nâng luồng φ3 lên 2 đơn vị ta có luồng

φ4:

φ4

Xét xích θ=(V0, V2, V6, V7) Nâng luồng φ4 lên 4 đơn vị ta có luồng φ5

V

1

V

5

V

4

V

0

V

7

0

+0

+3

+4 4 6+2

4+2

0+2

Xích β

V

3

V

4

V

0

V

2

V

6

V

7

V

5

8

4

2

6

4

6

8

2

4

3 4

V

1

+0

+1

+4

8

6

4

+2

0

2

2

2 2

2

2

4

2

2

V

0

V

3

V

6

V

7

Xích γ

Trang 13

Tiếp theo ta chỉ có thể đánh dấu được V0 nên quá trình nâng luồng kết thúc và ta được giá trị của luồng cực đại là:

φ5=8+4+2=14

* Bài 7:

Giải bài toán mạng vận tải sau bằng thuật toán Ford-Fulkerson với luồng vận tải khởi đầu được cho kèm theo:

(giá trị thông qua là các số màu đỏ)

V

3

V

4

V

0

V

2

V

6

V

7

V

5

8

4

2

6

4

6

8

2

4

3 4

V

1

+0

+1

+4

8

6

4

+2

0

2

2

2

2 2

6

8

2

2 4

V

1

V

9

V

8

V

7

V

6

V

4

V

3

V

5

V

0

V

2

10

4

6

10

5

8

28

15 20

10

30 6

15

15

12

3

1 4

20

2

6

7

8

8

6

6 8

2

0

16

2

16

8

2

0

0

2

0

3

25

7 2

0 0

2 0

Trang 14

Lời giải:

Luồng φ có đường đi (V0, V1), (V1, V3), (V3, V7), (V7, V10), (V10, V9), (V9, V11) bao gồm các cung chưa bão hòa Ta có thể nâng luồng φ lên 2 đơn

vị để có luồng φ1:

φ1

Xét xích α=(V0, V5, V8, V9, V11) Nâng luồng φ1 lên 2 đơn vị ta được luồng φ2:

V

1

V

11

V

9

V

8

V

7

V

6

V

4

V

3

V

5

V

0

V

2

10

4

6

10

5

8

28

15 20

10

30 6

15

15

12

3

1 4

20

2

6

7

8

10

6

6 8

16

2

16

8

2

0

0

2

2

3

25

7 2

2 0

0 2

0

+0

+1

+3

+7

-10

+9

V

0

V

5

V

8

V

9

V 11

0

+0

+5

+8

+9

Xích α

2+2

2+2

Trang 15

Xét xích β=(V0, V6, V7, V3, V4, V11).Nâng luồng φ2 lên 2 đơn vị ta được φ3:

V

1

11

V

9

V

8

V

7

V

6

V

4

V

3

V

5

V

0

V

2

10

4

6

10

5

8

28

15 20

10

30 6

15

15

12

3

1 4

20

2

6

7

8

10

6

6 8

16

4

16

8

4

0

0

4

2

3

25

7 2

2 0

0 4

0

+0

+8

+9 +5

V

0

V

6

V

3

V

4

V

11

0

+0

+6

-7

+3

+4

Xích β

16+2

16+2

25+2

Trang 16

Tiếp theo ta chỉ có thể đánh dấu V0 nên quá trình nâmg luồng kết thúc

và ta có giá trị luồng cực đại là:

* Bài 8:

Hãy giải bài toán người du lịch với 6 thành phố có số liệu cho trong

ma trận trọng số sau:

22 11 ∞ 33 7 0

23 14 27 ∞ 20 21

14 44 29 46 ∞ 3

25 3 4 7 8 ∞

V

1

11

V

9

V

8

V

7

V

6

V

4

V

3

V

5

V

0

V

2

10

4

6

10

5

8

28

15 20

10

30 6

15

15

12

3

1 4

20

2

6

7

8

10

6

6 8

18

4

18

8

4

0

0

4

0

3

27

7 2

2 0

0 4

+4 +6

+0

Trang 17

Lời giải:

Ma trận trọng số M:

* Ma trận rút gọn M’:

Tổng hằng số rút gọn s=49

Trong M’ có m’14=m’21=m’24=m’36=m’42=m’56=m’62=m’63=m’65=0

θ14=10 θ21=2 θ24=0 θ36=2 θ42=1 θ56=4

θ62=0 θ63=12 θ65=1

Ta thấy θ63=12là lớn nhất Vậy chọn ô (6,3) để phân nhánh Cận dưới của nhánh không chứa (6,3) là s+θ63=49+12=61.Xóa dòng 6 cột 3 rồi đặt m'36=∞

Tập các hành trình

Cận dưới =49

Cận dưới=49 Cận dưới=61

Trang 18

* Ma trận rút gọn M'':

Tổng hằng số rút gọn s''=2

m''14=m''21=m''24=m''35=m''42=m''56=0

Ta thấy θ56=11 là lớn nhất Vậy chọn ô (5,6) để phân nhánh.Cận dưới của nhánh chứa (5,6) là 49+2=51.Cận dưới của nhánh không chứa cạnh (5,6) là 51+11=62.Xóa dòng 5 cột 6, sau đó đặt m''35=∞

Hành trình chứa (6,3)

Cận dưới=49

Cận dưới=51 Cận dưới =62

* Ma trận rút gọn M''': Tổng hằng số rút gọn s'''=10

Trong ma trận trên có m'''14=m'''21=m'''24=m'''42=0

Trang 19

Ta thấy θ45=12 là lớn nhất Vậy chọn ô (4,5) để phân nhánh.Cận dưới của nhánh chứa (4,5) là 51+10=61.Cận dưới của nhánh không chứa cạnh (4,5) là 61+12=73 Xóa dòng 4 cột 5, sau đó đặt m'''34 = ∞

Hành trình chứa (5,6)

Cận dưới=51

Cận dưới=61 Cận dưới=73

* Ma trận rút gọn M'''':

Trong ma trận trên có:

Tổng hằng số rút gọn s''''=0

m''''21=m''''32 =m''''14 =m''''24 =0

Ta thấy θ32=15 là lớn nhất nên ta chọn ô (3,2) để tiếp tục phân nhánh.Cận dưới của nhánh chứa (3,2) là 61 Xóa dòng 3 cột 2 , sau đó đặt m''''24=∞ Cận dưới của nhánh không chứa (3,2) là 61+15=76

Hành trình chứa (1,4)

Cận dưới=51

Cận dưới=61 Cận dưới=76

* Ma trận rút gọn M''''': Tổng hằng số rút gọn s'''''=0

Trang 20

1 4

Hai cạnh còn lại của chu trình không phải chọn nữa mà được đưa vào chu trình

Ở đây ta có các cạnh (6,3), (5,6), (4,5), (3,2), (1,4), (2,1)

Vậy ta được chu trình: 6, 3, 2, 1, 4, 5, 6 với chi phí 61 là tối ưu

Ngày đăng: 12/12/2013, 14:15

HÌNH ẢNH LIÊN QUAN

Cho đồ thị có trọng số như hình dưới đây.Hãy tìm đường đi ngắn nhất từ đỉnh A đến đỉnh N. - Tài liệu Một số bài toán tối ưu trên đồ thị pptx
ho đồ thị có trọng số như hình dưới đây.Hãy tìm đường đi ngắn nhất từ đỉnh A đến đỉnh N (Trang 4)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w