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

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

Đ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

[...]... = (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

Mục lục

  • Slide 1

  • Slide 2

  • Slide 3

  • Slide 4

  • Slide 5

  • Slide 6

  • Slide 7

  • Slide 8

  • Slide 9

  • Slide 10

  • Slide 11

  • Slide 12

  • Slide 13

  • Slide 14

  • Slide 15

  • Xác minh thời gian đa thức (Polynomial-time verfication)

  • Xác minh thời gian đa thức (t)

  • 2. Xác minh thời gian đa thức (t)

  • Slide 19

  • Slide 20

Tài liệu cùng người dùng

Tài liệu liên quan