Bài toán người bán hàng được phát biểu dưới dạng bài toán đồ thị là:
Cho đồ thị G cùng tham số k nguyên, mỗi cạnh e của G có một trọng số nguyên c(e). Câu hỏi đặt ra là có tồn tại một chu trình qua tất cả các đỉnh của G (mỗi đỉnh đúng một lần) mà tổng trọng số các cạnh đã đi qua không vượt quá k không? Bài toán được phát biểu dưới dạng bài toán quyết định như sau:
- Đầu vào: Cho tập n thành phố C = {c1,…,cm} với khoảng cách d(ci,cj) Z+ và một số nguyên dương B.
- Câu hỏi: Có tồn tại một hoán vị trên {1, 2, ..., m} sao cho: ) , ( ) , ( ( ) (1) 1 1 ) ! ( ) ( d c c d c m c m i i i B hay không?
Ta có sơ đồ để chứng minh một số bài toán là NPC như sau:
Hình 6. Sơ đồ chứng minh một số bài toán NPC. SAT 3SAT 3DM PARTITION HC VC CLIQUE TSP
KẾT LUẬN
Như vậy trong bản luận văn này, chúng tôi đã đi tìm hiểu một số khái niệm quan trọng của lý thuyết thuật toán, lý thuyết độ phức tạp và phân lớp độ phức tạp của các bài toán. Trong lý thuyết thuật toán còn những nội dung trọng tâm như các thuật toán thông dụng và độ phức tạp của các thuật toán này, ... Trong lý thuyết độ phức tạp còn những nội dung quan trọng như phương pháp giải các bài toán tối ưu tổ hợp và các thuật toán xấp xỉ, xác suất, heuristics và ứng dụng của nó ... Trong thời gian tới chúng tôi sẽ nghiên cứu tiếp những nội dung này.
TÀI LIỆU THAM KHẢO Tiếng Việt
1. Nguyễn Hữu Điển, Một số bài toán về thuật toán, NXB Giáo dục, Hà Nội, 2005. 2. Phan Huy Khánh, Giáo trình Lý thuyết tính toán, ĐH Đà Nẵng, Đà Nẵng, 1999.
Tiếng Anh
3. Agrawal, M., Kayal, N. and Saxena, N. (2002). PRIMES is in P. Tech. Report Dept. of Computer Science and Engineering. Indian Inst. of Technology Kanpur.
4. Ahuja, R.K., Magnanti, T.L. and Orlin, J.B. (1993). Network Flows. Theory, Algorithms and Applications. Prentice–Hall.
5. Dietzfelbinger, M. (2004). Primality Testing in Polynomial Time. LNCS 3000. Springer.
6. Garey, M.R. and Johnson, D.B. (1979). Computers and Intractability. A Guide to the Theory of NP-Completeness. W.H. Freeman.
7. Homer, S. (2001). Computability and Complexity Theory. Springer.
8. Hopcroft, J.E., Motwani, R. and Ullman, J.D. (2001). Introduction to Automata Theory, Languages and Computation. Addison-Wesley Longman.
9. Ingo Wegener (2005). Complexity Theory. Springer.
10. Martello, S. and Toth, P. (1990). Knapsack Problems. Wiley.
11. Motwani, R. and Raghavan, P. (1995). Randomized Algorithms. Cambridge University Press.
12. T. Cormen, C. Leiserson, R. Rivest (1990). Introduction to Algorithms, Mc Graw- Hill.