1. Trang chủ
  2. » Công Nghệ Thông Tin

Cấu trúc dữ liệu - Phần 5 (tt) ppsx

19 154 0

Đ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

Định dạng
Số trang 19
Dung lượng 228,59 KB

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

Nội dung

Trang 1

GVGD: Tr ng Ph c H i

(brand and bound)

Trang 2

Ph ng pháp nhánh và c n

K thu t quay lui duy t t t c kh n ng theo mô hình cây phân c p đ tìm ra c u hình

Trang 3

Ph ng pháp nhánh và c n

S d ng quay lui đ tìm c u hình t i u

 ánh giá t t c c u hình đ tìm ra c u hình t i u: đi u này d n đ n s bùng n t h p

 N u vi c ch n thành ph n xi không d n đ n c u hình t i u

s gây lãng phí tài nguyên đ tìm các thành ph n ti p theo

xi+1, xi+2,

 C n t n d ng thông tin đã bi t đ s m lo i b c u hình

ch c ch n không th t i u

Trang 4

Ph ng pháp nhánh và c n

K thu t nhánh và c n (g i t t nhánh c n) là m t

d ng c i ti n c a k thu t quay lui áp d ng cho bài toán t i u

 ánh giá l i giá tr t i u c c b (c n) c a các nhánh sau

m i l n quay lui

 S d ng c n đ lo i b nh ng nhánh d th a c a cây tìm

ki m nh m gi m chi phí: t a nhánh

 ánh giá c n là v n đ khó kh n nh t trong vi c áp d ng

ph ng pháp nhánh c n

Trang 5

Ph ng pháp nhánh và c n

 Ý t ng

 Kh i t o m t c u hình BEST cho bài toán: kh i t o c n

 Tính chi phí c a các c u hình ngay trong quá trình xây

d ng

 N u t t h n BEST: c p nh t c u hình t i u và ti p t c

 Ng c l i quay lui đ tìm ph ng án khác

Trang 6

Ph ng pháp nhánh và c n

 Mô hình t ng quát c a k thu t nhánh c n đ c c i

ti n t mô hình đ quy nh sau

Try (i)

For (j t p kh n ng c a X[i])

If (ch p nh n j) Then

Ch n kh n ng j cho X[i]

If (X[i] là cu i c u hình) Then

<đánh giá l i c n t i u BEST>

<ghi nh n vi c th kh n ng j>

<b ghi nh n th kh n ng j>

Cu i Try

Trang 7

Ph ng pháp nhánh và c n

 Khi đó gi i thu t nhánh c n đ c th c hi n theo các b c sau

NhanhVaCan ()

<Kh i t o c u hình BEST>

BEST = + ;

Try(0);

If (BEST < + ) Then

<BEST là giá tr t i u>

<X’ là ph ng án t i u>

<Bài toán không có nghi m>

Cu i NhanhVaCan

Trang 8

Ph ng pháp nhánh và c n

 Bài toán ng i du l ch (TSP - Travelling Salesman Problem)

 M t b n đ g m N thành ph đ c đánh s t 0 đ n N-1

 M t du khách xu t phát t i thành ph 1 và mu n tham quan t t c thành ph , m i n i đ n đúng 1 l n r i tr v thành ph xu t phát

 Bi t r ng gi a 2 thành ph có th l u thông tr c ti p s t n

m t chi phí nh t đ nh

 Yêu c u xác đ nh hành trình du l ch v i chi phí nh nh t

Trang 9

Ph ng pháp nhánh và c n

T ch c d li u

 S d ng m ng 2 chi u g m N dòng, N c t đ bi u di n chi phí đi l i gi a các thành ph : ma tr n chi phí

 C[i][j] = v: cho bi t vi c đi t thành ph i đ n tr c ti p thành ph j t n chi phí v

 C[i][j] = +: cho bi t không có đ ng đi tr c ti p t thành ph i đ n thành ph j

 S d ng m ng 1 chi u X[0], X[1], …, X[N] đ l u tr m t nghi m bài toán (th t thành ph th m trong hành trình)

Trang 10

Ph ng pháp nhánh và c n

 Ví d đ th bi u di n và ma tr n chi phí t ng ng

nh sau

1

3

2

1

3

1

Trang 11

Ph ng pháp nhánh và c n

Nh n xét

 x0 = 0 là thành ph xu t phát

 Hành trình c n tìm có d ng (x0 = 0, x1, x2, , xN-1, xN = 0)

 M t hành trình (x1, x2, , xN-1) là m t hoán v c a các thành ph {1, 2, …, N-1}

Trang 12

Ph ng pháp nhánh và c n

 Cây tìm ki m TSP theo k thu t quay lui

0

3

0

2

3

1

4

1

2

4

2

2

1

1

2

1

3

Trang 13

Ph ng pháp nhánh và c n

Duy t quay lui

 Ch n x1 là m t trong các TP có th đ n tr c ti p t x0

 Ch n x2 là m t trong các TP ch a tham quan và có th đ n

tr c ti p t x3

 …

 Ch n xi là m t trong các TP ch a tham quan và có th đ n

tr c ti p t xi-1 (1 ≤ i ≤ N-1)

Trang 14

Ph ng pháp nhánh và c n

 Nhánh c n

 Kh i t o c u hình BEST v i chi phí MAX = +∞

 Ki m tra chi phí tính cho t i khi đ n xi < chi phí c a BEST

 N u đúng thì ch n xi là thành ph th m ti p theo

 Ng c l i thì th đi thành ph khác (c t nhánh)

 Khi đ n xN, ki m tra n u có đ ng đi tr c ti p v x1 mà

t ng chi phí < chi phí c a BEST thì c p nh t l i BEST

 Sau khi quay lui mà chi phí c a BEST v n là MAX thì bài toán không có l i gi i, ng c l i BEST là hành trình t t nh t

Trang 15

Ph ng pháp nhánh và c n

 Cây tìm ki m TSP theo k thu t nhánh c n

0

3

0

2

3

1

4

1

2

4

2

2

1

1

2

1

3

Trang 16

Ph ng pháp nhánh và c n

B c 1: kh i t o cho hành trình

{

}

Trang 17

Ph ng pháp nhánh và c n

B c 2: th t c Try tìm thành ph th m ti p theo

Try (i)

For (thành ph j  {2, , n})

If (ch a tham quan thành ph j) Then

Tham quan thành ph j, tính chi phí

ánh đ u đã th m thành ph j

If (i = n) Then C p nh t hành trình

Else If (chi phí hi n t i < BEST) Then Try (i + 1);

B đánh đ u đã th m thành ph j

C u i Try

Trang 18

Ph ng pháp nhánh và c n

B c 2: tìm đ ng đi ti p theo cho hành trình

{

Trang 19

Ph ng pháp nhánh và c n

C p nh t hành trình t i u

{

//n u chi phí tr v < chi phí t i u

}

Ngày đăng: 08/08/2014, 04:21

w