Bài toán người bán hàng du lịch (The traveling-salesman problem):

Một phần của tài liệu Tiểu luận môn học THIẾT KẾ VÀ PHÂN TÍCH THUẬT TOÁN NP-Completeness (Trang 40)

5. CÁC BÀI TOÁN NP-ĐẦY ĐỦ (NP-COMLETE PROBLEMS ): 1 Bài toán clique ((The clique problem) :

5.4.Bài toán người bán hàng du lịch (The traveling-salesman problem):

Trong bài toán người bán hàng du lịch, mà liên quan mật thiết đến bài toán

vòng Hamilton, một người bán hàng phải thăm n thàng phố. Mô hình hóa bài

toán như một đồ thị đầy đủ với n đỉnh, chúng ta có thể nói rằng người bán hàng đó mong ước làm một chuyến du lịch hoặc vòng Hamilton thăm mỗi thành phố chính xác một lần và kết thúc tại thành phố mà anh ta bắt đầu đi. Có một chi phí

số nguyên c(i,j) để du lịch từ thành phố i đến thành phố j và người bán hàng mong ước làm một chuyến du lịch mà tổng chi phí là nhỏ nhất. Ví dụ, ở hình 18, một chuyến du lịch có chi phí nhỏ nhất là < u,w,x,u> với chi phí 7. Ngôn ngữ hình thức để tương ứng bài toán quyết định là :

TSP = { <G,c,k> : G=(V,E) là một đồ thị đầy đủ, c là hàm từ V*V Z,

kZG có một chuyến du lịch của người bán hàng với chi phí tại hầu hết k }.

Theo lý thuyết cho rằng một thuật toán quen thuộc cho bài toán người bán hàng du lịch như không thể xảy ra.

Định lý 14: Bài toán người bán hàng du lịch (traveling salesman) là NP-đầy đủ.

Chứng minh:

Hình 18. Một trường hợp của bài toán người bán hàng du lịch. Các cạnh đã mờ đại diện một chuyến du lịch chi phí nhỏ nhất, với chi phí là 7

Đầu tiên chúng ta chỉ rằng TSP ∈ NP. Cho một trường hợp của bài toán,

chúng ta sử dụng như một chứng nhận chuỗi n các đỉnh trong chuyến du lịch.

Thuật toán xác minh này kiểm tra rằng chuỗi này chứa chỉ mỗi đỉnh chính xác một, tổng các chi phí cạnh và kiểm tra khi tổng tại hầu hết k. Quá trình này có thể hoàn thành một cách chắc chắn trong thời gian đa thức.

Để chứng tỏ rằng TSP là NP-khó, chúng ta chỉ ra rằng HAM-CYCLE ≤ p

TSP. Lấy G = <V,E> một trường hợp của HAM-CYCLE. Chúng ta xây dựng

một trường hợp TSP như sau. Chúng ta thành lập đồ thị đầy đủ G’ = (V,E’), mà

E’ = {(i,j) : i,jVi j } định nghĩa chi phí hàm c bởi:

Trường hợpû của TSP là <G’,c,0 >, dễ dàng thành lập trong thời gian đa thức. Bây giờ chúng ta chỉ ra rằng đồì thị G có một vòng Hamilton khi và chỉ khi

G’ có một vòng chi phí chỉ hầu hết 0.

Cho rằng, đồ thị G có một vòng Hamilton h. Mỗi cạnh trong hE và vì thế có chi phí 0 trong G’. Vì thế, h là một vòng trong G’ với chi phí 0. Ngược lại, cho rằng đồ thị G’ có một vòng h’ chi phí tại hầu hết 0. Khi các chi phí của các cạnh

trong E’ là 0 và 1, chi phí của vòng h’ chính xác là 0 và mỗi cạnh trên vòng phải có chi phí 0. Bởi vậy, h’ chứa chỉ các cạnh trong E. Chúng ta kết luận rằng h’ là một vòng Hamilton trong đồ thị G.

Một phần của tài liệu Tiểu luận môn học THIẾT KẾ VÀ PHÂN TÍCH THUẬT TOÁN NP-Completeness (Trang 40)