กลับไปหน้าบทความ

อ่าน 16 นาที

ปัญหาความพึงพอใจแบบบูลีน

ใน ตรรกศาสตร์ และ วิทยาศาสตร์คอมพิวเตอร์ ปัญหา ความสามารถในการทำให้เป็นจริงของบูลีน (บางครั้งเรียกว่า ปัญหาความสามารถในการทำให้เป็นจริงของประพจน์ และ ย่อว่า SATISFIABILITY , SAT...

ปัญหาความพึงพอใจแบบบูลีน

ในตรรกศาสตร์และวิทยาศาสตร์คอมพิวเตอร์ปัญหาความสามารถในการทำให้เป็นจริงของบูลีน (บางครั้งเรียกว่าปัญหาความสามารถในการทำให้เป็นจริงของประพจน์และย่อว่าSATISFIABILITY , SATหรือB-SAT ) ถามว่ามีการตีความ ใด ที่ ทำให้ สูตรบูลีนที่กำหนดให้เป็นจริงหรือไม่ กล่าวอีกนัยหนึ่งคือ ถามว่าตัวแปรของสูตรสามารถแทนที่ด้วยค่า TRUE หรือ FALSE ได้อย่างสอดคล้องกันเพื่อให้สูตรมีค่าเป็น TRUE หรือไม่ ถ้าเป็นเช่นนั้น สูตรนั้นเรียกว่าสามารถทำให้เป็นจริงได้มิฉะนั้น เรียกว่า ไม่สามารถทำให้เป็นจริงได้ตัวอย่างเช่น สูตร " aและไม่ใช่b " สามารถทำให้เป็นจริงได้ เพราะสามารถหาค่าa = TRUE และb = FALSE ซึ่งทำให้ ( aและไม่ใช่b ) = TRUE ได้ ในทางตรงกันข้าม " aและไม่ใช่a " ไม่สามารถทำให้เป็นจริงได้

SAT เป็นปัญหาแรกที่ได้รับการพิสูจน์แล้วว่าเป็นNP-completeซึ่งก็คือทฤษฎีบท Cook–Levinหมายความว่าปัญหาทั้งหมดในกลุ่มความซับซ้อนNPซึ่งรวมถึงปัญหาการตัดสินใจและการเพิ่มประสิทธิภาพตามธรรมชาติที่หลากหลายนั้น มีความยากในการแก้ไขอย่างมากที่สุดเท่ากับ SAT ไม่มีอัลกอริทึมใดที่ทราบกันว่าสามารถแก้ปัญหา SAT แต่ละปัญหาได้อย่างมีประสิทธิภาพ (โดยที่ "มีประสิทธิภาพ" หมายถึง "กำหนดได้ในเวลาพหุนาม ") แม้ว่าโดยทั่วไปเชื่อกันว่าอัลกอริทึมดังกล่าวไม่มีอยู่จริง แต่ความเชื่อนี้ยังไม่ได้รับการพิสูจน์หรือหักล้างทางคณิตศาสตร์ การแก้ปัญหาว่า SAT มี อัลกอริทึม เวลาพหุนามหรือไม่ จะช่วยยุติปัญหา P เทียบกับ NPซึ่งเป็นหนึ่งในปัญหาเปิดที่สำคัญที่สุดในทฤษฎีการคำนวณ[ 1 ] [ 2 ]

อย่างไรก็ตาม อัลกอริทึม SAT แบบฮิวริสติกสามารถแก้ปัญหาตัวอย่างที่เกี่ยวข้องกับตัวแปรหลายหมื่นตัวและสูตรที่ประกอบด้วยสัญลักษณ์นับล้าน[ 3 ]ซึ่งเพียงพอสำหรับปัญหา SAT ในทางปฏิบัติหลายอย่างที่เกิดขึ้นในปัญญาประดิษฐ์การออกแบบวงจร [ 4 ]และการ พิสูจน์ทฤษฎีบทอัตโนมัติ

คำจำกัดความ

สูตรตรรกะเชิงประพจน์หรือที่เรียกว่านิพจน์บูลีนสร้างขึ้นจากตัวแปร ตัวดำเนินการ AND ( การเชื่อม หรือแสดงด้วย ∧) OR ( การแยก ∨) NOT ( การปฏิเสธ ¬) และวงเล็บ สูตรจะเรียกว่าสามารถทำให้เป็นจริงได้หากสามารถทำให้เป็นจริงได้โดยการกำหนดค่าตรรกะ ที่เหมาะสม (เช่น จริง เท็จ) ให้กับตัวแปรปัญหาความสามารถในการทำให้เป็นจริงของบูลีน (SAT) คือการตรวจสอบว่าสูตรที่กำหนดนั้นสามารถทำให้เป็นจริงได้หรือไม่ปัญหาการตัดสินใจ นี้ มีความสำคัญอย่างยิ่งในหลายสาขาของวิทยาศาสตร์คอมพิวเตอร์รวมถึงวิทยาศาสตร์คอมพิวเตอร์เชิงทฤษฎีทฤษฎีความซับซ้อน[ 5 ] [ 6 ]อัลกอริทึมศาสตร์การเข้ารหัส[ 7 ] [ 8 ]และปัญญาประดิษฐ์ [ 9 ]

รูปแบบปกติของการเชื่อมคำ

ตัวแปร(literal)คือตัวแปร (ในกรณีนี้เรียกว่าตัวแปรบวก ) หรือค่าปฏิเสธของตัวแปร (เรียกว่าตัวแปรลบ ) อนุประโยค (clause)คือการเชื่อมกันของตัวแปร (หรือตัวแปรเดียว) อนุประโยคเรียกว่าอนุ ประโยค ฮอร์น (Horn clause ) ถ้ามีตัวแปรบวกอย่างมากที่สุดหนึ่งตัว สูตรอยู่ในรูปแบบปกติแบบเชื่อมประโยค (Conjunctive Normal Form : CNF) ถ้าเป็นการเชื่อมกันของอนุประโยค (หรืออนุประโยคเดียว)

ตัวอย่างเช่นx 1เป็นตัวแปรเชิงบวก¬ x 2เป็นตัวแปรเชิงลบ และx 1 ∨ ¬ x 2เป็นอนุประโยค สูตร( x 1 ∨ ¬ x 2 ) ∧ (¬ x 1x 2x 3 ) ∧ ¬ x 1อยู่ในรูปประโยคปกติแบบเชื่อมโยง อนุประโยคแรกและอนุประโยคที่สามเป็นอนุประโยคฮอร์น แต่อนุประโยคที่สองไม่ใช่ สูตรนี้สามารถหาคำตอบได้ โดยการเลือกx 1  = FALSE, x 2  = FALSE และx 3ตามอำเภอใจ เนื่องจาก (FALSE ∨ ¬FALSE) ∧ (¬FALSE ∨ FALSE ∨ x 3 ) ∧ ¬FALSE จะมีค่าเป็น (FALSE ∨ TRUE) ∧ (TRUE ∨ FALSE ∨ x 3 ) ∧ TRUE และในทางกลับกันจะเป็น TRUE ∧ TRUE ∧ TRUE (กล่าวคือ TRUE) ในทางตรงกันข้าม สูตร CNF a ∧ ¬ aซึ่งประกอบด้วยข้อความสองข้อความที่มีตัวแปรเดียว ไม่สามารถหาคำตอบได้ เนื่องจากสำหรับa =TRUE หรือa =FALSE จะได้ผลลัพธ์เป็น TRUE ∧ ¬TRUE (นั่นคือ FALSE) หรือ FALSE ∧ ¬FALSE (นั่นคือ FALSE อีกครั้ง) ตามลำดับ

สำหรับปัญหา SAT บางเวอร์ชัน การกำหนดแนวคิดของ สูตร รูปแบบปกติแบบเชื่อมโยงทั่วไป (generalized conjunctive normal form formula) นั้นมีประโยชน์ กล่าวคือ เป็นการเชื่อมโยงของข้อความทั่วไป จำนวนมากโดยพลการ ซึ่งข้อความทั่วไปเหล่านี้มีรูปแบบR ( l 1 ,..., l n )สำหรับฟังก์ชันบูลีนRและตัวอักษร (ธรรมดา) l iชุดฟังก์ชันบูลีนที่อนุญาตต่างกันจะนำไปสู่เวอร์ชันของปัญหาที่แตกต่างกัน ตัวอย่างเช่นRx , a , b ) เป็นข้อความทั่วไป และRx , a , b ) ∧ R ( b , y , c ) ∧ R ( c , dz ) เป็นรูปแบบปกติแบบเชื่อมโยงทั่วไป สูตรนี้จะถูกใช้ด้านล่างโดยที่Rเป็นตัวดำเนินการไตรภาคที่เป็นจริงก็ต่อเมื่ออาร์กิวเมนต์ตัวใดตัวหนึ่งเป็นจริงเท่านั้น

โดยใช้กฎของพีชคณิตบูลีนสูตรตรรกะเชิงประพจน์ทุกสูตรสามารถแปลงเป็นรูปแบบปกติเชิงเชื่อมโยงที่เทียบเท่ากันได้ ซึ่งอาจมีความยาวเพิ่มขึ้นแบบเลขชี้กำลัง ตัวอย่างเช่น การแปลงสูตร ( x 1y 1 ) ∨ ( x 2y 2 ) ∨ ... ∨ ( x ny n ) ให้เป็นรูปแบบปกติเชิงเชื่อมโยงจะได้

( x 1  ∨  x 2  ∨ … ∨  x n ) ∧
( y 1  ∨  x 2  ∨ … ∨  x n ) ∧
( x 1  ∨  y 2  ∨ … ∨  x n ) ∧
( ปี1  ∨  ปี2  ∨ … ∨  x n ) ∧ ... ∧
( x 1  ∨  x 2  ∨ … ∨  y n ) ∧
( ปี1  ∨  x 2  ∨ … ∨  มีn ) ∧
( x 1  ∨  y 2  ∨ … ∨  y n ) ∧
( ปี1  ∨  ปี2  ∨ … ∨  ปีn ) ;

ในขณะที่แบบแรกเป็นการเชื่อมแบบ" หรือ" ของ การเชื่อมแบบ "หรือ" n ครั้งที่มีตัวแปร 2 ตัว แบบหลังประกอบด้วยประโยคย่อย 2n ประโยคที่มีตัวแปร n ตัว

อย่างไรก็ตาม ด้วยการใช้การแปลง Tseytinเราอาจพบสูตรรูปแบบปกติเชิงเชื่อมโยงที่สามารถทำให้พอใจได้เท่ากัน โดยมีความยาวเป็นเชิงเส้นตามขนาดของสูตรตรรกะเชิงประพจน์ดั้งเดิม

ความซับซ้อน

SAT เป็นปัญหาแรกที่ทราบว่าเป็นNP-completeดังที่พิสูจน์โดยStephen Cookที่มหาวิทยาลัยโทรอนโตในปี 1971 [ 10 ]และโดยLeonid Levinที่สถาบันวิทยาศาสตร์แห่งรัสเซียในปี 1973 [ 11 ]จนถึงเวลานั้น แนวคิดของปัญหา NP-complete ยังไม่มีอยู่จริง การพิสูจน์แสดงให้เห็นว่าปัญหาการตัดสินใจทุกปัญหาในระดับความซับซ้อนNPสามารถลดรูปเป็นปัญหา SAT สำหรับสูตร CNF [ a ] ​​ซึ่งบางครั้งเรียกว่า CNFSATคุณสมบัติที่มีประโยชน์ของการลดรูปของ Cook คือการรักษาจำนวนคำตอบที่ยอมรับได้ ตัวอย่างเช่น การตัดสินใจว่ากราฟ ที่กำหนด มี3 สีหรือไม่เป็นอีกปัญหาหนึ่งใน NP หากกราฟมี 3 สีที่ถูกต้อง 17 สี สูตร SAT ที่สร้างขึ้นโดยการลดรูปของ Cook–Levin จะมีการกำหนดค่าที่น่าพอใจ 17 รายการ

ความสมบูรณ์แบบของ NP นั้นหมายถึงเวลาในการทำงานของกรณีที่เลวร้ายที่สุดเท่านั้น กรณีต่างๆ ที่เกิดขึ้นในแอปพลิเคชันจริงส่วนใหญ่สามารถแก้ไขได้เร็วกว่านั้นมาก ดูหัวข้อ §อัลกอริธึมสำหรับการแก้ปัญหา SATด้านล่าง

3-ความพึงพอใจ

ปัญหา 3-SAT ( xxy ) ∧ (¬ x ∨ ¬ y ∨ ¬ y ) ∧ (¬ xyy )ลดรูปเป็นปัญหาคลิก (clique problem ) จุดยอดสีเขียวก่อตัวเป็นคลิก 3 จุด และสอดคล้องกับการกำหนดค่าที่ทำให้ตรงตามเงื่อนไขx =FALSE, y =TRUE

เช่นเดียวกับปัญหาความสามารถในการทำให้เป็นจริงสำหรับสูตรใดๆ การหาความสามารถในการทำให้เป็นจริงของสูตรในรูปแบบปกติแบบเชื่อมโยงซึ่งแต่ละประโยคย่อยจำกัดอยู่ที่ตัวอักษรไม่เกินสามตัวก็เป็นปัญหา NP-complete เช่นกัน ปัญหานี้เรียกว่า3-SAT , 3CNFSATหรือ3-satisfiabilityเพื่อลดปัญหา SAT ที่ไม่จำกัดให้เป็น 3-SAT ให้แปลงแต่ละประโยคย่อยl 1 ∨ ⋯ ∨ l nให้เป็นการเชื่อมโยงของ ประโยคย่อย n - 2ประโยค

( l 1l 2x 2 ) ∧
x 2l 3x 3 ) ∧
x 3l 4x 4 ) ∧ ⋯ ∧
x n −3l n −2x n −2 ) ∧
x n −2l n −1l n )

โดยที่x 2 , ⋯ , x n −2เป็นตัวแปรใหม่ที่ไม่ปรากฏที่อื่น แม้ว่าสูตรทั้งสองจะไม่สมมูลกันทางตรรกะแต่ก็สามารถทำให้เป็นจริงได้เท่ากันสูตรที่ได้จากการแปลงข้อความทั้งหมดมีความยาวไม่เกิน 3 เท่าของสูตรเดิม นั่นคือ การเติบโตของความยาวเป็นแบบพหุนาม[ 12 ]

3-SAT เป็นหนึ่งใน21 ปัญหา NP-complete ของ Karpและใช้เป็นจุดเริ่มต้นในการพิสูจน์ว่าปัญหาอื่นๆ ก็เป็นปัญหาNP-hardเช่น กัน [ b ]โดยใช้วิธีลดรูปพหุนามจาก 3-SAT ไปยังปัญหาอื่นๆ ตัวอย่างของปัญหาที่ใช้วิธีนี้คือปัญหาคลิก : กำหนดสูตร CNF ที่ประกอบด้วยc ข้อความ กราฟที่สอดคล้องกันจะมีจุดยอดสำหรับแต่ละตัวอักษร และขอบระหว่างตัวอักษรที่ไม่ขัดแย้งกันสองตัว[ c ]จากข้อความที่ต่างกัน ดูภาพประกอบ กราฟจะมีc-คลิกก็ต่อเมื่อสูตรนั้นสามารถทำให้เป็นจริงได้[ 13 ]

มีอัลกอริทึมแบบสุ่มอย่างง่ายจาก Schöning (1999) ที่ทำงานในเวลา (4/3) nโดยที่nคือจำนวนตัวแปรในข้อเสนอ 3-SAT และประสบความสำเร็จด้วยความน่าจะเป็นสูงที่จะตัดสิน 3-SAT ได้อย่างถูกต้อง[ 14 ]

สมมติฐานเวลาแบบเอกซ์โปเนนเชียลยืนยันว่าไม่มีอัลกอริทึมใดที่สามารถแก้ปัญหา 3-SAT (หรือk -SAT สำหรับk > 2 ใดๆ ) ได้ใน เวลา exp( o ( n )) (นั่นคือ เร็วกว่าแบบเอกซ์โปเนนเชียลในn อย่างมาก )

Selman, Mitchell และ Levesque (1996) ให้ข้อมูลเชิงประจักษ์เกี่ยวกับความยากของสูตร 3-SAT ที่สร้างขึ้นแบบสุ่ม โดยขึ้นอยู่กับพารามิเตอร์ขนาด ความยากวัดจากจำนวนการเรียกซ้ำที่ทำโดยอัลกอริทึม DPLLพวกเขาระบุพื้นที่การเปลี่ยนเฟสจากสูตรที่เกือบจะแน่นอนสามารถทำให้พอใจได้ไปสู่สูตรที่เกือบจะแน่นอนไม่สามารถทำให้พอใจได้ที่อัตราส่วนของข้อความต่อตัวแปรประมาณ 4.26 [ 15 ]

3-satisfiability สามารถขยายไปสู่​​k- satisfiability ( k -SATหรือk -CNF-SAT ) ได้ เมื่อพิจารณาสูตรใน CNF โดยแต่ละข้อความมีตัวอักษรได้ มากถึง k ตัว [ 16 ]อย่างไรก็ตาม เนื่องจากสำหรับk ≥ 3 ใดๆ ปัญหานี้จึงไม่สามารถง่ายกว่า 3-SAT หรือยากกว่า SAT ได้ และปัญหาทั้งสองหลังเป็น NP-complete ดังนั้นจึงต้องเป็นk -SAT

ผู้เขียนบางคนจำกัดk -SAT ไว้ที่สูตร CNF ที่มีตัวอักษรkตัวพอดีซึ่งไม่ได้นำไปสู่คลาสความซับซ้อนที่แตกต่างกันเช่นกัน เนื่องจากแต่ละข้อความที่มีตัวอักษรน้อยกว่าkตัวสามารถเติมด้วยสำเนาตัวอักษรเดียวกันซ้ำได้[ 17 ]

ความสามารถในการตอบสนองและเรขาคณิตของพื้นที่คำตอบของ ปัญหา k -SAT ที่มีข้อความที่สร้างขึ้นแบบสุ่มได้รับการตรวจสอบทางสถิติแล้ว แบบจำลองนี้แสดงให้เห็นถึงการเปลี่ยนแปลงเฟสต่างๆ เกี่ยวกับความสามารถในการตอบสนองและเรขาคณิตของพื้นที่คำตอบ โดยขึ้นอยู่กับอัตราส่วนของข้อความต่อตัวแปร (หรือที่เรียกว่าความหนาแน่น) สำหรับความสามารถในการตอบสนองนั้น มีเกณฑ์ที่ชัดเจนอยู่ค่าหนึ่ง ซึ่งด้วยความน่าจะเป็นสูง คำตอบจะมีอยู่ก็ต่อเมื่อความหนาแน่นยังคงต่ำกว่าเกณฑ์นี้[ 18 ]ต่ำกว่าเกณฑ์ความสามารถในการตอบสนองมาก พื้นที่คำตอบยังมีการเปลี่ยนแปลงเฟสทางเรขาคณิตอีกด้วย กล่าวคือ มันจะแตกออกเป็นกลุ่มที่แยกออกจากกันอย่างชัดเจนจำนวนมากแบบเลขชี้กำลัง การเริ่มต้นของการเปลี่ยนแปลงเฟสนี้ตรงกับเกณฑ์อัลกอริทึมที่ทราบ ซึ่งชี้ให้เห็นถึงความเชื่อมโยงระหว่างเรขาคณิตและความยากลำบากในการแก้ปัญหาด้วยอัลกอริทึม[ 19 ] [ 20 ]

กรณีพิเศษของ 3SAT

รูปแบบปกติของการเชื่อมคำ

รูปแบบปกติของการเชื่อมโยง (โดยเฉพาะอย่างยิ่งที่มีตัวแปร 3 ตัวต่อประโยค) มักถูกพิจารณาว่าเป็นรูปแบบมาตรฐานสำหรับการแสดงสูตร SAT ดังที่แสดงไว้ข้างต้น ปัญหา SAT ทั่วไปจะลดลงเหลือ 3-SAT ซึ่งเป็นปัญหาของการพิจารณาความสามารถในการทำให้เป็นจริงสำหรับสูตรในรูปแบบนี้

เชิงเส้น SAT

สูตร 3-SAT เรียกว่าLinear SAT ( LSAT ) หากแต่ละข้อความ (ซึ่งมองว่าเป็นเซตของตัวอักษร) ตัดกับข้อความอื่นได้ไม่เกินหนึ่งข้อความ และยิ่งไปกว่านั้น หากข้อความสองข้อความตัดกัน พวกมันจะมีตัวอักษรที่เหมือนกันเพียงหนึ่งตัวเท่านั้น สูตร LSAT สามารถแสดงได้เป็นเซตของช่วงกึ่งปิดที่ไม่ทับซ้อนกันบนเส้นตรง การตัดสินว่าสูตร LSAT สามารถทำให้เป็นจริงได้หรือไม่นั้นเป็นปัญหา NP-complete [ 21 ]

2-ความพึงพอใจ

ปัญหา SAT จะง่ายขึ้นหากจำนวนตัวแปรในประโยคจำกัดไว้ที่อย่างมาก 2 ตัว ซึ่งในกรณีนี้ ปัญหาจะเรียกว่า2-SATปัญหานี้สามารถแก้ไขได้ในเวลาพหุนาม และในความเป็นจริงแล้วเป็นปัญหาที่สมบูรณ์สำหรับระดับความซับซ้อนNLหากเปลี่ยนการดำเนินการ OR ทั้งหมดในตัวแปรเป็นการดำเนิน การ XORผลลัพธ์ที่ได้จะเรียกว่าexclusive-or 2-satisfiabilityซึ่งเป็นปัญหาที่สมบูรณ์สำหรับระดับความซับซ้อนSL = L

ความพึงพอใจของเขา

ปัญหาของการตัดสินความสามารถในการทำให้เป็นจริงของการเชื่อมโยงของข้อความ Horn ที่กำหนด เรียกว่าHorn-satisfiabilityหรือHORN-SATสามารถแก้ไขได้ในเวลาพหุนามด้วยขั้นตอนเดียวของ อัลกอริธึม การแพร่กระจายหน่วยซึ่งสร้างแบบจำลองขั้นต่ำเพียงแบบเดียวของชุดข้อความ Horn (โดยสัมพันธ์กับชุดของตัวอักษรที่กำหนดให้กับ TRUE) Horn-satisfiability เป็นปัญหาP-completeสามารถมองได้ว่าเป็น เวอร์ชัน Pของปัญหาความสามารถในการทำให้เป็นจริงแบบบูลีน นอกจากนี้ การตัดสินความจริงของสูตร Horn ที่มีปริมาณสามารถทำได้ในเวลาพหุนาม[ 22 ]

ประโยคเงื่อนไขแบบฮอร์นมีความน่าสนใจเพราะสามารถแสดงถึงการบ่งชี้ของตัวแปรหนึ่งจากชุดของตัวแปรอื่น ๆ ได้ ตัวอย่างเช่น ประโยคเงื่อนไข ¬ x 1 ∨ ... ∨ ¬ x nyสามารถเขียนใหม่ได้เป็นx 1 ∧ ... ∧ x nyนั่นคือ ถ้าx 1 ,..., x nเป็นจริงทั้งหมดแล้วyก็ต้องเป็นจริงด้วย

การขยายความทั่วไปของกลุ่มสูตรฮอร์นคือกลุ่มสูตรฮอร์นที่เปลี่ยนชื่อได้ ซึ่งเป็นเซตของสูตรที่สามารถจัดให้อยู่ในรูปฮอร์นได้โดยการแทนที่ตัวแปรบางตัวด้วยนิเสธของตัวแปรนั้น ตัวอย่างเช่น ( x 1 ∨ ¬ x 2 ) ∧ (¬ x 1x 2x 3 ) ∧ ¬ x 1ไม่ใช่สูตรฮอร์น แต่สามารถเปลี่ยนชื่อเป็นสูตรฮอร์น ( x 1 ∨ ¬ x 2 ) ∧ (¬ x 1x 2 ∨ ¬ y 3 ) ∧ ¬ x 1โดยการนำy 3 มา เป็นนิเสธของx 3ในทางตรงกันข้าม การเปลี่ยนชื่อ ( x 1 ∨ ¬ x 2 ∨ ¬ x 3 ) ∧ (¬ x 1x 2x 3 ) ∧ ¬ x 1 ไม่ นำไปสู่สูตรฮอร์น การตรวจสอบการมีอยู่ของการแทนที่ดังกล่าวสามารถทำได้ในเวลาเชิงเส้น ดังนั้น ความสามารถในการทำให้เป็นจริงของสูตรดังกล่าวจึงอยู่ใน P เนื่องจากสามารถแก้ไขได้โดยการดำเนินการแทนที่นี้ก่อน แล้วจึงตรวจสอบความสามารถในการทำให้เป็นจริงของสูตรฮอร์นที่ได้

ไม่ใช่ปัญหาของ 3SAT

รูปแบบปกติแบบแยกส่วน

ปัญหา SAT นั้นง่ายมากหากสูตรถูกจำกัดให้อยู่ในรูปแบบปกติแบบแยกส่วน (disjunctive normal form)กล่าวคือ เป็นการแยกส่วนของการเชื่อมโยงของตัวแปร สูตรดังกล่าวจะสามารถทำให้เป็นจริงได้ก็ต่อเมื่ออย่างน้อยหนึ่งในการเชื่อมโยงสามารถทำให้เป็นจริงได้ และการเชื่อมโยงสามารถทำให้เป็นจริงได้ก็ต่อเมื่อมันไม่มีทั้งxและ NOT xสำหรับตัวแปรx บางตัว สามารถตรวจสอบได้ในเวลาเชิงเส้น ยิ่งไปกว่านั้น หากจำกัดให้สูตรอยู่ในรูปแบบปกติแบบแยกส่วนที่สมบูรณ์ (full disjunctive normal form ) ซึ่งตัวแปรทุกตัวปรากฏเพียงครั้งเดียวในการเชื่อมโยงแต่ละครั้ง ก็สามารถตรวจสอบได้ในเวลาคงที่ (constant time) (การเชื่อมโยงแต่ละครั้งแสดงถึงการกำหนดค่าที่ทำให้เป็นจริงหนึ่งค่า) แต่การแปลงปัญหา SAT ทั่วไปให้เป็นรูปแบบปกติแบบแยกส่วนอาจใช้เวลาและพื้นที่แบบเลขชี้กำลัง ตัวอย่างเช่น ลองเปลี่ยน "∧" และ "∨" ในตัวอย่างการระเบิดแบบเลขชี้กำลัง ข้างต้น เป็นรูปแบบปกติแบบเชื่อมโยง (conjunctive normal forms)

ความพึงพอใจที่แน่นอน 1 3

อีกรูปแบบหนึ่งของปัญหา NP-complete ของปัญหา 3-satisfiability คือ3-SAT แบบหนึ่งในสาม (หรือที่รู้จักกันในชื่อ1-in-3-SATและexactly-1 3-SAT ) โดยกำหนดให้รูปแบบปกติแบบเชื่อมโยงที่มีตัวแปรสามตัวต่อประโยคย่อย ปัญหาคือการพิจารณาว่ามีการกำหนดค่าความจริงให้กับตัวแปรหรือไม่ เพื่อให้แต่ละประโยคย่อยมี ตัวแปรที่เป็นจริง เพียงหนึ่งตัว (และมีตัวแปรที่เป็นเท็จสองตัว)

ความพึงพอใจที่ไม่เท่าเทียมกันทั้งหมด 3 ประการ

อีกรูปแบบหนึ่งคือ ปัญหา ความพึงพอใจ 3 ประการที่ไม่เท่ากันทั้งหมด (เรียกอีกอย่างว่าNAE3SAT ) เมื่อกำหนดรูปแบบปกติแบบเชื่อมโยงที่มีตัวอักษรสามตัวต่อประโยค ปัญหาคือการพิจารณาว่ามีการกำหนดค่าให้กับตัวแปรหรือไม่ โดยที่ไม่มีประโยคใดที่ตัวอักษรทั้งสามตัวมีค่าความจริงเดียวกัน ปัญหานี้เป็นปัญหา NP-complete เช่นกัน แม้ว่าจะไม่มีสัญลักษณ์การปฏิเสธก็ตาม ตามทฤษฎีบทการแบ่งแยกของ Schaefer [ 23 ]

ความพึงพอใจแบบ XOR

กรณีพิเศษอีกประการหนึ่งคือคลาสของปัญหาที่แต่ละข้อความประกอบด้วยตัวดำเนินการ XOR (เช่นเอกสิทธิ์เฉพาะหรือ ) แทนที่จะเป็นตัวดำเนินการ OR (ธรรมดา) ซึ่งอยู่ในPเนื่องจากสูตร XOR-SAT สามารถมองได้ว่าเป็นระบบสมการเชิงเส้น mod 2 และสามารถแก้ได้ในเวลาลูกบาศก์โดยการกำจัดแบบเกาส์เซียน[ 24 ]

ทฤษฎีบทการแบ่งแยกของเชเฟอร์

ข้อจำกัดข้างต้น (CNF, 2CNF, 3CNF, Horn, XOR-SAT) กำหนดให้สูตรที่พิจารณาต้องเป็นผลรวมของสูตรย่อย โดยแต่ละข้อจำกัดจะระบุรูปแบบเฉพาะสำหรับสูตรย่อยทั้งหมด เช่น ใน 2CNF เฉพาะประโยคไบนารีเท่านั้นที่สามารถเป็นสูตรย่อยได้

ทฤษฎีบทการแบ่งแยกของ Schaefer ระบุว่า สำหรับข้อจำกัดใดๆ ของฟังก์ชันบูลีนที่สามารถใช้สร้างสูตรย่อยเหล่านี้ได้ ปัญหาความพึงพอใจที่สอดคล้องกันจะอยู่ใน P หรือ NP-complete การเป็นสมาชิกใน P ของความพึงพอใจของสูตร 2CNF, Horn และ XOR-SAT เป็นกรณีพิเศษของทฤษฎีบทนี้[ 23 ]

ตารางต่อไปนี้สรุปรูปแบบต่างๆ ของข้อสอบ SAT ที่พบได้ทั่วไป

ชื่อ รหัส มีปัญหาเรื่อง 3SAT หรือเปล่า? ข้อจำกัด ความต้องการ ระดับ
3-ความพึงพอใจ3SATใช่ แต่ละประโยคย่อยประกอบด้วยตัวอักษร 3 ตัว อย่างน้อยหนึ่งข้อความตามตัวอักษรต้องเป็นจริง เอ็นพี-ซี
2-ความพึงพอใจ2SATใช่ แต่ละประโยคย่อยประกอบด้วยตัวอักษร 2 ตัว อย่างน้อยหนึ่งข้อความตามตัวอักษรต้องเป็นจริง เอ็นแอล-ซี
พอดี-1 3-เสาร์1-in-3-SATเลขที่ แต่ละประโยคย่อยประกอบด้วยตัวอักษร 3 ตัว ต้องมีข้อเท็จจริงเพียงหนึ่งเดียวเท่านั้น เอ็นพี-ซี
ถูกต้อง -1 บวก 3-SAT1-in-3-SAT+เลขที่ แต่ละประโยคย่อยประกอบด้วยข้อความเชิงบวก 3 ข้อความ ต้องมีข้อเท็จจริงเพียงหนึ่งเดียวเท่านั้น เอ็นพี-ซี
ความพึงพอใจที่ไม่เท่าเทียมกันทั้งหมด 3 ประการNAE3SATเลขที่ แต่ละประโยคย่อยประกอบด้วยตัวอักษร 3 ตัว อย่างน้อยหนึ่งหรือสองข้อความจะต้องเป็นจริง เอ็นพี-ซี
ผลสอบ 3-SAT ไม่ได้เท่าเทียมกันทั้งหมดNAE3SAT+เลขที่ แต่ละประโยคย่อยประกอบด้วยข้อความเชิงบวก 3 ข้อความ อย่างน้อยหนึ่งหรือสองข้อความจะต้องเป็นจริง เอ็นพี-ซี
แพลนาร์ เอสเอทีPL-SATใช่ กราฟแสดงความสัมพันธ์ระหว่างเหตุการณ์ (กราฟความสัมพันธ์ระหว่างประโยคและตัวแปร) เป็นกราฟ ระนาบอย่างน้อยหนึ่งข้อความตามตัวอักษรต้องเป็นจริง เอ็นพี-ซี
เชิงเส้น SATLSATใช่ แต่ละอนุประโยคประกอบด้วยตัวแปร 3 ตัว ตัดกับอนุประโยคอื่นได้มากที่สุดหนึ่งอนุประโยค และส่วนที่ตัดกันนั้นมีตัวแปรเพียงหนึ่งตัวเท่านั้น อย่างน้อยหนึ่งข้อความตามตัวอักษรต้องเป็นจริง เอ็นพี-ซี
ความพึงพอใจของฮอร์นHORN-SATใช่ อนุประโยคฮอร์น (มีคำคุณศัพท์เชิงบวกอย่างมากที่สุดหนึ่งคำ) อย่างน้อยหนึ่งข้อความตามตัวอักษรต้องเป็นจริง พีซี
ความพึงพอใจของ XorXOR-SATเลขที่ แต่ละข้อความย่อยประกอบด้วยการดำเนินการ XOR แทนที่จะเป็น OR ผลลัพธ์ของการ XOR ระหว่างค่าคงที่ทั้งหมดต้องเป็นจริง พี

ส่วนขยายของ SAT

ส่วนขยายที่ได้รับความนิยมอย่างมากตั้งแต่ปี 2003 คือsatisfiability modulo theories ( SMT ) ซึ่งสามารถเสริมสูตร CNF ด้วยข้อจำกัดเชิงเส้น อาร์เรย์ ข้อจำกัดที่แตกต่างกันทั้งหมดฟังก์ชันที่ไม่ได้ตีความ [ 25 ] เป็นต้น ส่วนขยายดังกล่าวโดย ทั่วไปยังคงเป็น NP-complete แต่ปัจจุบันมีตัวแก้ปัญหาที่มีประสิทธิภาพมากที่สามารถจัดการกับข้อจำกัดหลายประเภทดังกล่าวได้

ปัญหาความน่าพอใจจะซับซ้อนมากขึ้นหากอนุญาตให้ใช้ตัวบ่งปริมาณ ทั้ง "สำหรับทุก" ( ) และ "มีอยู่" ( ) ในการผูกตัวแปรบูลีน ตัวอย่างของนิพจน์ดังกล่าวคือ xyz ( xyz ) ∧ (¬ x ∨ ¬ y ∨ ¬ z ) ; ซึ่งถูกต้อง เนื่องจากสำหรับทุกค่าของxและyสามารถหาค่าz ที่เหมาะสมได้ กล่าวคือ z = TRUE ถ้าทั้งxและyเป็น FALSE และz = FALSE ในกรณีอื่น ๆ ทฤษฎีบทความน่าพอใจ (SAT) เอง (โดยปริยาย) ใช้เฉพาะตัวบ่งปริมาณ ∃ เท่านั้น หากอนุญาตให้ใช้เฉพาะตัวบ่งปริมาณ ∀ แทน จะได้ ปัญหา ที่เรียกว่าปัญหาสัจนิรันดร์ ซึ่งเป็น ปัญหา co-NP- complete หากอนุญาตให้ใช้ตัวบ่งปริมาณทั้งสองจำนวนเท่าใดก็ได้ ปัญหาดังกล่าวเรียกว่าปัญหาของสูตรบูลีนที่มีตัวบ่งปริมาณ ( QBF ) ซึ่งสามารถแสดงให้เห็นได้ว่าเป็น ปัญหา ที่สมบูรณ์แบบในระดับ PSPACEเป็นที่เชื่อกันอย่างกว้างขวางว่าปัญหาที่สมบูรณ์แบบในระดับ PSPACE นั้นยากกว่าปัญหาใดๆ ในกลุ่ม NP อย่างเคร่งครัด แม้ว่ายังไม่มีการพิสูจน์อย่างเป็นทางการก็ตาม

ข้อสอบ SAT ทั่วไปถามว่ามีการกำหนดค่าตัวแปรอย่างน้อยหนึ่งค่าที่ทำให้สูตรเป็นจริงหรือไม่ ส่วนข้อสอบแบบอื่น ๆ จะเกี่ยวข้องกับจำนวนของการกำหนดค่าตัวแปรดังกล่าว:

  • MAJ-SATถามว่าอย่างน้อยครึ่งหนึ่งของการมอบหมายทั้งหมดทำให้สูตรเป็นจริงหรือไม่ เป็นที่ทราบกันว่าสมบูรณ์สำหรับPPซึ่งเป็นคลาสความน่าจะเป็น น่าประหลาดใจที่MAJ-kSATได้รับการพิสูจน์แล้วว่าอยู่ใน P สำหรับจำนวนเต็มจำกัด k ทุกตัว[ 26 ]
  • #SATซึ่งเป็นปัญหาเกี่ยวกับการนับจำนวนการกำหนดค่าตัวแปรที่สอดคล้องกับสูตร เป็นปัญหาการนับ ไม่ใช่ปัญหาการตัดสินใจ และเป็นปัญหา #P- complete
  • UNIQUE SAT [ 27 ]คือปัญหาในการพิจารณาว่าสูตรมีการกำหนดค่าเพียงหนึ่งเดียวหรือไม่ เป็นปัญหาที่สมบูรณ์สำหรับUS [ 28 ] ซึ่งเป็นคลาสความซับซ้อน ที่อธิบายปัญหาที่สามารถแก้ไขได้โดย เครื่องจักรทัวริงแบบไม่กำหนดเวลาพหุนามที่ยอมรับเมื่อมีเส้นทางการยอมรับแบบไม่กำหนดเพียงหนึ่งเดียวและปฏิเสธในกรณีอื่น ๆ
  • UNAMBIGUOUS-SATคือชื่อที่ใช้เรียกปัญหาความพึงพอใจเมื่อสูตรอินพุตรับประกันว่าจะมีการกำหนดค่าที่น่าพอใจได้ไม่เกินหนึ่งรายการ ปัญหานี้เรียกอีกอย่างว่าUSAT [ 29 ] อัลกอริทึมการแก้ปัญหาสำหรับ UNAMBIGUOUS-SAT สามารถแสดงพฤติกรรมใดๆ ก็ได้ รวมถึงการวนลูปไม่รู้จบ บนสูตรที่มีการกำหนดค่าที่น่าพอใจหลายรายการ แม้ว่าปัญหานี้จะดูง่ายกว่า แต่ Valiant และ Vazirani ได้แสดงให้เห็น[ 30 ]ว่าหากมีอัลกอริทึมที่ใช้งานได้จริง (เช่นอัลกอริทึมเวลาพหุนามแบบสุ่ม ) เพื่อแก้ปัญหานี้ ปัญหาทั้งหมดในNPก็สามารถแก้ไขได้ง่ายเช่นกัน
  • MAX-SATหรือปัญหาความสามารถในการทำให้เป็นจริงสูงสุดเป็น ปัญหาที่ขยายมาจาก SAT ไปสู่ ​​FNPโดยถามถึงจำนวนข้อความสูงสุดที่สามารถทำให้เป็นจริงได้ด้วยการกำหนดค่าใดๆ ปัญหานี้มีอัลกอริธึมประมาณค่า ที่มีประสิทธิภาพ แต่การแก้ปัญหาอย่างแม่นยำนั้นยากในระดับ NP-hard ยิ่งไปกว่านั้น มันยังเป็นปัญหาAPX -complete ซึ่งหมายความว่าไม่มีวิธีการประมาณค่าแบบใช้เวลาพหุนาม (PTAS) สำหรับปัญหานี้ เว้นแต่ว่า P=NP
  • WMSATคือปัญหาของการค้นหาการกำหนดค่าที่มีน้ำหนักน้อยที่สุดซึ่งสอดคล้องกับสูตรบูลีนแบบโมโนโทน (กล่าวคือ สูตรที่ไม่มีการปฏิเสธใดๆ) น้ำหนักของตัวแปรเชิงประพจน์จะถูกกำหนดไว้ในข้อมูลนำเข้าของปัญหา น้ำหนักของการกำหนดค่าคือผลรวมของน้ำหนักของตัวแปรจริง ปัญหาดังกล่าวเป็น NP-complete (ดูทฤษฎีบทที่ 1 ของ[ 31 ] )

การสรุปทั่วไปอื่นๆ ได้แก่ ความสามารถในการทำให้เป็นจริงสำหรับ ตรรกะลำดับ ที่หนึ่งและลำดับที่สองปัญหาการแก้ข้อจำกัดและ การเขียน โปรแกรมจำนวนเต็ม 0-1

การหาภารกิจที่น่าพึงพอใจ

แม้ว่า SAT จะเป็นปัญหาการตัดสินใจแต่ปัญหาการค้นหาการกำหนดค่าที่น่าพอใจนั้นลดรูปไปเป็น SAT กล่าวคือ อัลกอริทึมแต่ละตัวที่ตอบคำถามได้อย่างถูกต้องว่าอินสแตนซ์ของ SAT สามารถแก้ไขได้หรือไม่ สามารถนำมาใช้เพื่อค้นหาการกำหนดค่าที่น่าพอใจได้ ขั้นแรก จะถามคำถามกับสูตร Φ ที่กำหนดให้ ถ้าคำตอบคือ "ไม่" แสดงว่าสูตรนั้นไม่สามารถหาคำตอบได้ มิฉะนั้น จะถามคำถามกับสูตรที่กำหนดค่าบางส่วนแล้ว Φ { x 1 =TRUE}นั่นคือ Φ ที่แทนที่ตัวแปรแรกx 1ด้วย TRUE และลดรูปตามนั้น ถ้าคำตอบคือ "ใช่" แสดงว่าx 1 =TRUE มิฉะนั้นx 1 =FALSE ค่าของตัวแปรอื่นๆ สามารถหาได้ในภายหลังด้วยวิธีเดียวกัน โดยรวมแล้วต้องใช้การทำงานของอัลกอริทึมn + 1 ครั้ง โดยที่ nคือจำนวนตัวแปรที่แตกต่างกันใน Φ

คุณสมบัตินี้ถูกนำไปใช้ในทฤษฎีบทหลายข้อในทฤษฎีความซับซ้อน:

อัลกอริทึมสำหรับการแก้ปัญหา SAT

ความซับซ้อนแบบทวีคูณของการแก้ข้อสอบ SAT เมื่อเทียบกับจำนวนตัวแปร จำนวนประโยค และความยาวของสูตร

เนื่องจากปัญหา SAT เป็นปัญหา NP-complete จึงมีเพียงอัลกอริทึมที่มีความซับซ้อนในกรณีที่เลวร้ายที่สุดแบบเลขชี้กำลังเท่านั้นที่เป็นที่รู้จัก แม้จะเป็นเช่นนั้น อัลกอริทึมที่มีประสิทธิภาพและปรับขนาดได้สำหรับ SAT ก็ได้รับการพัฒนาในช่วงทศวรรษ 2000 และมีส่วนช่วยให้เกิดความก้าวหน้าอย่างมากในความสามารถในการแก้ปัญหาโดยอัตโนมัติซึ่งเกี่ยวข้องกับตัวแปรหลายหมื่นตัวและข้อจำกัดหลายล้านข้อ (เช่น ข้อความ) [ 3 ]ตัวอย่างของปัญหาดังกล่าวในการออกแบบระบบอิเล็กทรอนิกส์อัตโนมัติ (EDA) ได้แก่ การตรวจ สอบความเท่าเทียมกันอย่างเป็นทางการ การตรวจสอบแบบ จำลองการตรวจสอบอย่างเป็นทางการของไมโครโปรเซสเซอร์แบบไปป์ไลน์ [ 25 ]การสร้างรูปแบบการทดสอบอัตโนมัติการกำหนดเส้นทางของFPGA [ 32 ]การวางแผนและ ปัญหาการจัดตารางเวลาเป็นต้น เครื่องมือแก้ปัญหา SAT ยังถือเป็นส่วนประกอบที่สำคัญในกล่องเครื่องมือ การออกแบบระบบอิเล็กทรอนิกส์อัตโนมัติ อีกด้วย

เทคนิคหลักที่ใช้โดยตัวแก้ปัญหา SAT สมัยใหม่ ได้แก่อัลกอริทึม Davis–Putnam–Logemann–Loveland (หรือ DPLL), การเรียนรู้ข้อความที่ขับเคลื่อนด้วยความขัดแย้ง (CDCL) และ อัลกอริทึม การค้นหาเฉพาะที่แบบสุ่ม เช่นWalkSATตัวแก้ปัญหา SAT เกือบทั้งหมดมีการกำหนดเวลาหมดอายุ ดังนั้นจะยุติในเวลาที่เหมาะสมแม้ว่าจะไม่สามารถหาคำตอบได้ก็ตาม ตัวแก้ปัญหา SAT ที่แตกต่างกันจะพบว่าอินสแตนซ์ต่างๆ ง่ายหรือยากต่างกัน และบางตัวก็เก่งในการพิสูจน์ความไม่สามารถพอใจได้ ในขณะที่บางตัวก็เก่งในการหาคำตอบ ความพยายามล่าสุดได้เกิดขึ้นเพื่อเรียนรู้ความสามารถในการพอใจของอินสแตนซ์โดยใช้เทคนิคการเรียนรู้เชิงลึก[ 33 ]

โปรแกรมแก้ปัญหา SAT ได้รับการพัฒนาและเปรียบเทียบในการแข่งขันแก้ปัญหา SAT [ 34 ]โปรแกรมแก้ปัญหา SAT สมัยใหม่ยังมีผลกระทบอย่างมากต่อสาขาการตรวจสอบซอฟต์แวร์ การแก้ปัญหาข้อจำกัดในปัญญาประดิษฐ์ และการวิจัยการดำเนินงานเป็นต้น

ในช่วงหลายทศวรรษที่ผ่านมา มีการนำเสนออัลกอริทึมเชิงทฤษฎีที่มีการรับประกันเวลาการทำงานในกรณีที่เลวร้ายที่สุดที่ดีขึ้นเรื่อยๆ รวมถึง อัลกอริทึมสำหรับชุดข้อความที่มีความยาว (จำนวนตัวอักษรทั้งหมด) [ 35 ] [ 36 ] อัลกอริทึมสำหรับชุดของข้อความ[ 37 ] [ 38 ]และอัลกอริทึมสำหรับ 3-SAT ที่มีตัวแปร[ 39 ]ในที่นี้ สัญลักษณ์ " " หมายถึง "จนถึงตัวประกอบพหุนาม" เช่นการรับประกันเวลาการทำงานก่อนหน้านี้แสดงอยู่ในแผนภาพ

ดูเพิ่มเติม

หมายเหตุ

  1. ^ปัญหา SAT สำหรับ สูตร ใดๆก็เป็นปัญหา NP-complete เช่นกัน เนื่องจากสามารถพิสูจน์ได้ง่ายว่าอยู่ใน NP และไม่สามารถง่ายกว่า SAT สำหรับสูตร CNF ได้
  2. ^กล่าวคือ ยากอย่างน้อยก็เท่ากับปัญหาอื่นๆ ทุกปัญหาใน NP ปัญหาการตัดสินใจจะเป็น NP-complete ก็ต่อเมื่อมันอยู่ใน NP และเป็นปัญหา NP-hard
  3. ^กล่าวคือ ตัวอักษรหนึ่งไม่ใช่การปฏิเสธของตัวอักษรอีกตัวหนึ่ง
  • เกม SAT : ลองแก้ปัญหาความพึงพอใจแบบบูลีนด้วยตัวคุณเอง
  • เว็บไซต์การแข่งขัน SAT ระดับนานาชาติ
  • การประชุมวิชาการนานาชาติว่าด้วยทฤษฎีและการประยุกต์ใช้การทดสอบความน่าพอใจ
  • วารสารว่าด้วยความพึงพอใจ การสร้างแบบจำลองบูลีน และการคำนวณ
  • SAT Live คือเว็บไซต์รวบรวมข้อมูลการวิจัยเกี่ยวกับปัญหาความน่าพอใจ (satisfiability problem)
  • การประเมินผลประจำปีของผู้แก้โจทย์ MaxSAT

แหล่งที่มา

  • บทความนี้มีเนื้อหาจากhttps://web.archive.org/web/20070708233347/http://www.sigda.org/newsletter/2006/eNews_061201.htmlโดยศาสตราจารย์Karem A. Sakallah

อ่านเพิ่มเติม

(เรียงตามวันที่ตีพิมพ์)

  • Garey, Michael R. ; Johnson, David S. (1979). คอมพิวเตอร์และความยากลำบากในการแก้ปัญหา: คู่มือทฤษฎีความสมบูรณ์ของ NP . WH Freeman. หน้า A9.1: LO1–LO7, หน้า 259–260. ISBN 0-7167-1045-5.
  • Marques-Silva, J.; Glass, T. (1999). "การตรวจสอบความเท่าเทียมกันเชิงการจัดเรียงโดยใช้ความสามารถในการทำให้เป็นจริงและการเรียนรู้แบบเรียกซ้ำ" การประชุมและนิทรรศการการออกแบบ การทำงานอัตโนมัติ และการทดสอบในยุโรป ปี 1999 เอกสารประกอบการประชุม (หมายเลขแคตตาล็อก PR00078) ( PDF)หน้า 145 doi : 10.1109/DATE.1999.761110 ISBN 0-7695-0078-1จัดเก็บในรูปแบบไฟล์ PDFจากต้นฉบับเมื่อวันที่ 9 ตุลาคม 2022
  • Clarke, E.; Biere, A.; Raimi, R.; Zhu, Y. (2001). "การตรวจสอบแบบจำลองที่มีขอบเขตโดยใช้การแก้ปัญหาความพึงพอใจ" วิธีการเชิงทางการในการออกแบบระบบ 19 : 7– 34. doi : 10.1023 /A:1011276507260 . S2CID  2484208 .
  • จูนชิเกลีย อี.; ทัคเชลลา, เอ. (2004) จุยชิกเลีย, เอนรีโก; ทาเชลลา, อาร์มันโด (บรรณาธิการ). ทฤษฎีและการประยุกต์การทดสอบความพึงพอใจ บันทึกการบรรยายทางวิทยาการคอมพิวเตอร์ ฉบับที่ 2919. ดอย : 10.1007/b95238 . ไอเอสบีเอ็น 978-3-540-20851-8. S2CID  31129008 .
  • Babic, D.; Bingham, J.; Hu, AJ (2006). "B-Cubing: ความเป็นไปได้ใหม่สำหรับการแก้ SAT อย่างมีประสิทธิภาพ" (PDF) . IEEE Transactions on Computers . 55 (11): 1315. Bibcode : 2006ITCmp..55.1315B . doi : 10.1109/TC.2006.175 . S2CID  14819050 . เก็บถาวรจากต้นฉบับเมื่อวันที่ 23 ตุลาคม 2016
  • Rodriguez, C.; Villagra, M.; Baran, B. (2007). "อัลกอริทึมทีมแบบอะซิงโครนัสสำหรับความพึงพอใจแบบบูลีน" (PDF) . 2007 2nd Bio-Inspired Models of Network, Information and Computing Systems . หน้า  66– 69. doi : 10.1109/BIMNICS.2007.4610083 . S2CID  15185219 .
  • Gomes, Carla P. ; Kautz, Henry; Sabharwal, Ashish; Selman, Bart (2008). "Satisfiability Solvers". ใน Harmelen, Frank Van; Lifschitz, Vladimir; Porter, Bruce (บรรณาธิการ). Handbook of knowledge representation . Foundations of Artificial Intelligence. Vol. 3. Elsevier. หน้า  89–134 . doi : 10.1016/S1574-6526(07)03002-7 . ISBN 978-0-444-52211-5.
  • Vizel, Y.; Weissenbacher, G.; Malik, S. (2015). "Boolean Satisfiability Solvers and Their Applications in Model Checking". Proceedings of the IEEE . 103 (11): 2021– 2035. doi : 10.1109/JPROC.2015.2455034 . S2CID  10190144 .
  • Knuth, Donald E. (2022). "บทที่ 7.2.2.2: ความสามารถในการทำให้เป็นจริง" ศิลปะแห่งการเขียนโปรแกรมคอมพิวเตอร์เล่ม 4B: อัลกอริทึมเชิงผสม ส่วนที่ 2. Addison-Wesley Professional. หน้า  185–369 . ISBN 978-0-201-03806-4.
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Boolean_satisfiability_problem&oldid=1360645105 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ ปัญหาความพึงพอใจแบบบูลีน

ใน ตรรกศาสตร์ และ วิทยาศาสตร์คอมพิวเตอร์ ปัญหา ความสามารถในการทำให้เป็นจริงของบูลีน (บางครั้งเรียกว่า ปัญหาความสามารถในการทำให้เป็นจริงของประพจน์ และ ย่อว่า SATISFIABILITY , SAT...

คำจำกัดความ

สูตร ตรรกะ เชิงประพจน์ หรือที่เรียกว่า นิพจน์บูลีน สร้างขึ้นจาก ตัวแปร ตัว ดำเนินการ AND ( การเชื่อม หรือ แสดงด้วย ∧) OR ( การแยก ∨) NOT ( การปฏิเสธ ¬) และวงเล็บ สูตรจะเรียกว่า สามารถทำให้เป็นจริงได้ หากสามารถทำให้เป็นจริงได้โดยการกำหนด ค่าตรรกะ ที่เหมาะสม...

รูปแบบปกติของการเชื่อมคำ

ตัวแปร (literal) คือตัวแปร (ในกรณีนี้เรียกว่า ตัวแปรบวก ) หรือค่าปฏิเสธของตัวแปร (เรียกว่า ตัวแปรลบ ) อนุ ประโยค (clause) คือการเชื่อมกันของตัวแปร (หรือตัวแปรเดียว) อนุประโยคเรียกว่าอนุ ประโยค ฮอร์น (Horn clause ) ถ้ามีตัวแปรบวกอย่างมากที่สุดหนึ่งตัว...

ความซับซ้อน

SAT เป็นปัญหาแรกที่ทราบว่าเป็น NP-complete ดังที่พิสูจน์โดย Stephen Cook ที่ มหาวิทยาลัยโทรอนโต ในปี 1971 [ 10 ] และโดย Leonid Levin ที่ สถาบันวิทยาศาสตร์แห่งรัสเซีย ในปี 1973 [ 11 ] จนถึงเวลานั้น แนวคิดของปัญหา NP-complete ยังไม่มีอยู่จริง...