1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tiểu luận Phân tích và thiết kế thuật toán Tính đầy đủ NP( NP-Completeness )

79 620 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 79
Dung lượng 2,28 MB

Nội dung

[...]... = (1∨ ¬ (1∨ 1) ∧ 1 = (1∨ 0) ∧ 1 = 1, Vậy công thức ∅ này thuộc về SAT • Định lý: SAT Є NP -đầy đủ Người trình bày: Trần Văn Hòa|Nhóm 5 Menu2 … Menu1 Menu2 Rút gọn bài toán 1 1 1 1 1 0 1 0 1 0 1 1 Người trình bày: Trần Văn Hòa|Nhóm 5 1 1 1 1 ∅ = x10 ∧ (x4 ↔ ¬ x 3) ∧ (x5 ↔ (x1∨ x 2)) ∧ (x6 ↔ ¬ x 4) ∧ (x7 ↔ (x1 ∧ x2 ∧ x 4)) ∧ (x8 ↔ (x5∨ x 6)) ∧ (x9 ↔ (x6∨ x 7)) 1 ∧ (x10 ↔ (x7 ∧ x8 ∧ x 9)) Như vậy CIRCUIT-SAT ≤p... định L2 và lấy F là thuật toán rút gọn thời gian đa thức mà các phép tính rút gọn hàm f Chúng ta sẽ đặt một thuật toán thời gian đa thức A1 quyết định L1 Người trình bày: Đoàn Thanh Hòa |Nhóm 5 Lớp NP- đầy đủ (NP-completeness) • Ngôn ngữ L⊆ {0,1}* là NP -đầy đủ (Ký hiệu: NPC) nếu: 1 L Є NP 2 L’ ≤p L với mọi L’ Є NP • Ngôn ngữ L là NP-khó (NP-hard) nếu L thỏa mãn điều kiện 2 (nhưng không nhất thiết thoả... ↔ (khi và chỉ khi) – Các dấu ngoặc đơn • Một công thức Φ là satisfiable (thỏa mãn được) nếu có một phép gán giá trị để giá trị ra của Φ là 1 • SAT = {: Φ là một công thức Bool thỏa mãn được} Người trình bày: Trần Văn Hòa|Nhóm 5 … Menu1 Ví dụ Cho công thức ∅=((x1→x 2) ∨ ((¬ x1↔x 3) ∨ x 4)) ∧ ¬x2 Có phép gán thỏa được , khi ∅ = ((0→ 0) ∨ ¬ ((¬ 0↔ 1) ∨ 1)) ∧ ¬ 0 = (1∨ ¬ (1∨ 1) ∧ 1... minh thời gian đa thức (t) • Các thuật toán xác minh (Vertification algorithms) – Định nghĩa: Gọi A(x,y) trong đó: • x: chuỗi đầu vào thông thường (ordinate) • y: chuỗi nhị phân có tên là chứng chỉ [certificate] Ta nói A xác minh x nếu tồn tại một chứng chỉ y sao cho A(x,y)=1 – Ngôn ngữ xác minh bởi một thuật toán xác minh A là: L = {x ∈ {0,1}* : có tồn tại y ∈ {0,1}* sao cho A(x,y) = 1 } Người trình bày:... 5 … Menu1 Menu2 Bài toán thỏa mãn mạch (Circuit satisfiability) • 3 cổng logic cơ bản: cổng NOT, cổng AND và cổng OR (Cổng vào x và y, cổng ra z) Người trình bày: Trần Văn Hòa|Nhóm 5 … Menu1 Menu2 Bài toán thỏa mãn mạch (Circuit satisfiability) • Đầu vào (Circuit input): các dây không nối với một phần tử vào nào • Đầu ra (Circuit output): các dây không nối với một phần tử ra nào • Độ dài của mạch là... satisfiability) là NP-khó • Định lý: Thỏa mãn mạch (Circuit satisfiability) Є NPC Người trình bày: Trần Văn Hòa|Nhóm 5 … Menu1 Menu2 Bài toán thỏa mãn công thức (Formula satisfiability) • Một trạng thái của bài toán khả năng thỏa mãn công thức (SAT) là một công thức boolean Φ gồm: – Các biến boolean: x1, x2, … – Các toán tử logic: các hàm boolean một hoặc hai biến: ∧ (AND), ∨ (OR), ¬ (NOT), → (kéo theo), ↔... 5 2 Xác minh thời gian đa thức (t) • Lớp phức NP (The complexity class NP) • Là lớp các ngôn ngữ có thể được xác minh bởi một thuật toán thời gian đa thức • Hay: một ngôn ngữ L thuộc về NP nếu và chỉ nếu ở đó tồn tại một thuật toán thời gian đa thức A và hằng c sao cho: L = { x ∈ {0,1}*: ∃y với |y| = O(|x|c) sao cho A(x,y) =1 } • Lớp phức co-NP (complexity class co-NP) • Một ngôn ngữ L ∈ co-NP ⇔ L ∈... điều kiện 1) Người trình bày: Đoàn Thanh Hòa |Nhóm 5 P vs NP • Định lý: Nếu có một bài toán NP -đầy đủ nào giải được trong thời gian đa thức thì P = NP Nếu có một bài toán trong NP nào mà không giải được trong thời gian đa thức thì tất cả các bài toán NP -đầy đủ đều không giải được trong thời gian đa thức NP NPC P Người trình bày: Đoàn Thanh Hòa |Nhóm 5 Menu1 Menu2 Chứng minh tính NP -đầy đủ Bổ đề: Nếu... Thùy Duyên |Nhóm 5 … E = {0,1} Bài toán quyết đinh Q  Ngôn ngữ L = {x Є E*: Q(x) = 1} Thuật toán A chấp nhận một từ x Є E*: nếu với đầu vào x, A cho kết quả A(x) = 1 A loại bỏ x nếu A(x) = 0 Ngôn ngữ L được chấp nhận bởi A: L={x Є E*: A(x)=1} L được chấp nhận bởi A trong thời gian đa thức nếu có hằng k sao cho mọi từ x có độ dài n được A chấp nhận trong thời gian O(nk) Người trình bày: Trương Nữ Thùy... (Circuit satisfiability) • Phần tử bool (Boolean combinational element) là các phần tử có đầu vào và ra thuộc {0,1} (0: sai, 1: đúng) – Một phần tử bool dùng để tính 1 hàm boolean đơn, được gọi là một cổng logic (logic gate) • Mạch bool (Boolean combinational circuit) xây dựng từ các phần tử bool, được nối với nhau bằng các dây (wire) Người trình bày: Trần Văn Hòa|Nhóm 5 … Menu1 Menu2 Bài toán thỏa mãn mạch . class NP) • Là lớp các ngôn ngữ có thể được xác minh bởi một thuật toán thời gian đa thức. • Hay: một ngôn ngữ L thuộc về NP nếu và chỉ nếu ở đó tồn tại một thuật toán thời gian đa thức A và hằng. &'( Nội dung  ) *"+ ,) -. ) /01023  45*"+ ,67 ) 895.:3  . ;<= ,> ) 6?3  +5. ,) @A=6?3  .. D.E5F VJ45*đ+,3 • Các thuật toán xác minh (Vertification algorithms) – Định nghĩa: Gọi A(x,y) trong đó: • x: chuỗi đầu vào thông thường (ordinate) • y: chuỗi nhị phân có tên là chứng chỉ [certificate] Ta nói A

Ngày đăng: 11/04/2015, 22:07

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w