Danh mục

Bài giảng Lý thuyết độ phức tạp: Lý thuyết NP - Đầy đủ - PGS. TSKH Vũ Đình Hòa (tt)

Số trang: 41      Loại file: pdf      Dung lượng: 669.58 KB      Lượt xem: 9      Lượt tải: 0    
Jamona

Hỗ trợ phí lưu trữ khi tải xuống: 5,000 VND Tải xuống file đầy đủ (41 trang) 0

Báo xấu

Xem trước 5 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng "Lý thuyết độ phức tạp: Lý thuyết NP - Đầy đủ" trình bày các nội dung: Bài toán quyết định, ngôn ngữ và lược đồ mã hóa, máy Turing tất định và lớp P, tính toán không tất định và lớp NP, mối quan hệ giữa lớp P và lớp NP,... Mời các bạn cùng tham khảo nội dung chi tiết.
Nội dung trích xuất từ tài liệu:
Bài giảng Lý thuyết độ phức tạp: Lý thuyết NP - Đầy đủ - PGS. TSKH Vũ Đình Hòa (tt) LÝ THUYẾT ĐỘ PHỨC TẠP LÝ THUYẾT NP - ĐẦY ĐỦ (THE THEORY OF NP - COMPLETENESS) Giáo viên : PGS TSKH Vũ Đình Hoà The theory of NP-Completeness 1 NỘI DUNG 1. Bài toán quyết định 2. Ngôn ngữ và lược đồ mã hóa 3. Máy Turing tất định và lớp P 4. Tính toán không tất định và lớp NP 5. Mối quan hệ giữa lớp P và lớp NP 6. Phép dẫn thời gian đa thức và lớp NPC 7. Thuyết Cook The theory of NP-Completeness 2 1. BÀI TOÁN QUYẾT ĐỊNH  Bài toán quyết định (Decision Problem - DP) là bài toán chỉ có câu trả lời là có hoặc không (hay còn gọi là trả lời nhị phân).  Mỗi thể hiện của bài toán nghĩa là mỗi trường hợp cá biệt của bài toán có một trả lời.  Một bài toán quyết định ∏ đơn giản bao gồm một tập hợp D∏ các thể hiện và tập con Y∏  D∏ là các thể hiện đúng The theory of NP-Completeness 3 1. BÀI TOÁN QUYẾT ĐỊNH  Một bài toán quyết định phát biểu dưới dạng:  Instance: …  Question:…  Ví dụ 1: bài toán sự đẳng cấu của đồ thị con  Instance: Cho 2 đồ thị G1 = (V1, E1) và G2 = (V2, E2)  Question: đồ thị G1 có chứa một đồ thị con G1’ mà G1’ đẳng cấu với đồ thị G2 hay không? The theory of NP-Completeness 4 1. BÀI TOÁN QUYẾT ĐỊNH  Giải thích về đồ thị đẳng cấu: G1’ đẳng cấu với G2 nếu như có |V1’| = |V2|, |E1’| = |E2| và ở đó tồn tại một song ánh f : V2  V1’ sao cho {u,v}  E2 khi và chỉ khi {f(u), f(v)}  E1’). The theory of NP-Completeness 5 1. BÀI TOÁN QUYẾT ĐỊNH  Ví dụ 2: Traveling Salesman  Instance: Tập hữu hạn các thành phố: C = {c1, c2,…cm}, khoảng cách giữa hai thành phố ci, cj là d(ci, cj)  Z+, một số B  Z+.  Question: tồn tại hay không một đường đi nào qua tất cả các thành phố trong C mà có tổng độ dài không lớn hơn B? (Tồn tại một sắp thứCtự  (1) , C ( 2 ) ,..., C ( m ) sao m 1 cho ( d (C (i ) , C (i 1) ))  d (C ( m ) , C (1) )  B i 1 ) The theory of NP-Completeness 6 1. BÀI TOÁN QUYẾT ĐỊNH  Một bài toán quyết định có thể được chuyển hoá từ một bài toán tối ưu.  Ví dụ: Bài toán tối ưu là “tìm một đường đi có độ dài nhỏ nhất trong số tất cả các đường đi nối 2 đỉnh đồ thị” ↔ BTQĐ : thêm vào một tham số B và hỏi xem có đường đi nào có độ dài L mà L ≤ B hay không?  Với điều kiện là hàm chi phí phải tương đối dễ đánh giá, bài toán quyết định có thể không khó khăn hơn bài toán tối ưu tương ứng The theory of NP-Completeness 7 1. BÀI TOÁN QUYẾT ĐỊNH  Nếu tìm thấy một đường đi có độ dài nhỏ nhất cho bài toán TST theo thời gian đa thức, cũng có thể giải quyết bài toán quyết định được kết hợp theo thời gian đa thức.  Lý thuyết NP đầy đủ giới hạn là chỉ chú ý tới các bài toán quyết định nhưng cũng có thể mở rộng sự liên quan của thuyết NP đầy đủ tới các bài toán tối ưu.  Nguyên nhân của sự giới hạn này là các DPs có một bản sao rất tự nhiên và nó được gọi là ngôn ngữ. The theory of NP-Completeness 8 2. NGÔN NGỮ VÀ LƯỢC ĐỒ MÃ HÓA  Định nghĩa ngôn ngữ:  Với bất kì một tập hữu hạn các kí hiệu, chúng ta có thể biểu diễn * là tập hợp tất cả các xâu hữu hạn các kí hiệu lấy từ tập .  Nếu L là một tập con của *, chúng ta nói rằng L là một ngôn ngữ trên tập các chữ cái của . The theory of NP-Completeness 9 2. NGÔN NGỮ VÀ LƯỢC ĐỒ MÃ HÓA  Ví dụ: Nếu  = {0, 1}, khi đó I* = {ε, 0, 1, 01, 10, 11, 000, 001,… } Khi đó {01,001,111,1101010} là một ngôn ngữ trên tập {0,1}  Sự tương ứng giữa bài toán quyết định và ngôn ngữ được dẫn đến bởi các lược đồ mã hoá.  Một lược đồ mã hoá e cho bài toán ∏ cung cấp một cách thức miêu tả mỗi sự kiện của ∏ bằng một xâu thích hợp các ký hiệu trên tập chữ cái cố định ∑. The theory of NP-Completeness 10 2. NGÔN NGỮ VÀ LƯỢC ĐỒ MÃ HÓA  Bài toán ∏ và lược đồ mã hoá e cho ∏ chia ∑* thành 3 lớp: 1. Những xâu không mã hoá các biểu hiện của ∏. 2. Những xâu mã hoá các biểu hiện của ∏ mà trên đó câu trả lời là No. 3. Những xâu mã hoá các biểu hiện của ∏ mà trên đó câu trả lời là Yes. Ngôn ngữ: L[∏, e] = {x  * với  được sử dụng bởi e, và x mã hóa một thể hiện I  Y bằng e} The theory of NP-Completeness 11 2. NGÔN NGỮ VÀ LƯỢC ĐỒ MÃ HÓA  Một lược đồ mã hoá hợp lý phải đảm bảo 2 tính năng là : “tính ngắn gọn” và có “khả năng giải mã”.  “Tính ngắn gọn” là các trường hợp của bài toán nên được mô tả với sự khúc chiết một cách tự nhiên.  “Khả năng giải mã” là đưa ra bất kì một thành phần cụ thể nào của một trường hợp chung, thì lược đồ có khả năng chỉ rõ một thuật toán có thời gian đa thức. The theory of NP-Completeness 12 2. NGÔN NGỮ VÀ LƯỢC ĐỒ MÃ HÓA  Định nghĩa một lược đồ mã hoá chuẩn: Lược đồ mã hoá chuẩn sẽ ánh xạ các thể hiện sang các xâu có cấu trúc trên tâp chữ cái ψ = {0, 1, -, [,], (, ), …}.  Định nghĩa xâu cấu trúc một cách đệ quy như sau: The theory of NP-Completeness 13 2. NGÔN NGỮ VÀ LƯỢC ĐỒ MÃ HÓA  Biểu diễn nhị phân của một số nguyên k (gồm các chữ số 0 và 1), (đằng trước là dấu - nếu k là số âm) là một xâu có cấu trúc biểu diễn số nguyên k.  Nếu x là một xâu có cấu trúc biểu diễn số nguyên k, khi đó [x] là một xâu có cấu trúc có thể được sử dụng như một “tên” (name) .  Nếu x1, x2, ..., xm là các xâu có cấu trúc biểu diễn các đối tượng X1,X2, …, Xm, khi đó (x1, …, xm) là một xâu có cấu trú ...

Tài liệu được xem nhiều: