คำถามติดแท็ก satisfiability

Satisfiability (SAT) เป็นปัญหาในการพิจารณาว่ามีการกำหนดตัวแปรที่สอดคล้องกับสูตรบูลีนที่กำหนดหรือไม่

3
การวัดความยากลำบากของอินสแตนซ์ SAT
รับตัวอย่างของ SAT ฉันต้องการประเมินความยากลำบากในการแก้ไขอินสแตนซ์ วิธีหนึ่งคือการเรียกใช้ตัวแก้ปัญหาที่มีอยู่ แต่ความพ่ายแพ้แบบนั้นมีจุดประสงค์เพื่อประเมินความยากลำบาก วิธีที่สองอาจจะดูอัตราส่วนของอนุประโยคต่อตัวแปรตามที่ทำสำหรับการเปลี่ยนเฟสในการสุ่ม-SAT แต่ฉันแน่ใจว่ามีวิธีที่ดีกว่า มีตัวอย่างของ SAT แล้วจะมีวิธีแก้ปัญหาแบบเร็วในการวัดความยากลำบากหรือไม่? เงื่อนไขเดียวก็คือว่าฮิวริสติกเหล่านี้จะเร็วกว่าการเรียกใช้ตัวแก้ SAT ที่มีอยู่จริงบนอินสแตนซ์ คำถามที่เกี่ยวข้อง ปัญหา SAT ใดที่ง่าย? บน cstheory.SE คำถามนี้ถามเกี่ยวกับชุดอินสแตนซ์ที่หาได้ นี่เป็นคำถามที่คล้ายกัน แต่ไม่เหมือนกันทั้งหมด ฉันสนใจฮิวริสติกที่ให้อินสแตนซ์เดียวทำให้เดากึ่งอัจฉริยะว่าถ้าอินสแตนซ์นั้นยากที่จะแก้ไข

2
การเข้ารหัสข้อ จำกัด 1-out-of-n สำหรับนักแก้ปัญหา SAT
ฉันใช้ตัวแก้ SAT เพื่อเข้ารหัสปัญหาและเป็นส่วนหนึ่งของอินสแตนซ์ SAT ฉันมีตัวแปรบูลีนซึ่งมีจุดประสงค์ว่าหนึ่งในนั้นควรเป็นจริงและส่วนที่เหลือควรเป็นเท็จ . (บางครั้งฉันเคยเห็นสิ่งนี้อธิบายว่าเป็นการเข้ารหัส "one-hot")x1,x2,…,xnx1,x2,…,xnx_1,x_2,\dots,x_n ฉันต้องการเข้ารหัสข้อ จำกัด "ตรงหนึ่งจากต้องเป็นจริง" ใน SAT วิธีที่ดีที่สุดในการเข้ารหัสข้อ จำกัด นี้เพื่อให้นักแก้ปัญหา SAT ทำงานได้อย่างมีประสิทธิภาพมากที่สุดเท่าที่จะเป็นไปได้x1,…,xnx1,…,xnx_1,\dots,x_n ฉันเห็นการเข้ารหัสข้อ จำกัด นี้ได้หลายวิธี: ข้อ จำกัด แบบคู่ ฉันสามารถเพิ่มข้อ จำกัด แบบ pairwiseสำหรับทั้งหมดเพื่อให้แน่ใจว่าอย่างน้อยที่สุดหนึ่งนั้นเป็นจริงแล้วเพิ่มเพื่อให้แน่ใจว่าอย่างน้อยก็เป็นจริง .¬xi∨¬xj¬xi∨¬xj\neg x_i \lor \neg x_ji,ji,ji,jx 1 ∨ x 2 ∨ ⋯ ∨ x nxixix_ix1∨x2∨⋯∨xnx1∨x2∨⋯∨xnx_1 \lor x_2 \lor \cdots \lor x_n สิ่งนี้เพิ่มส่วนคำสั่งและไม่มีตัวแปรบูลีนพิเศษΘ(n2)Θ(n2)\Theta(n^2) การเข้ารหัสแบบไบนารี …

2
มีอัลกอริทึมที่มีประสิทธิภาพในการแก้ #SAT หรือไม่
ให้เป็นสูตรบูลีนซึ่งประกอบด้วยตัวดำเนินการ AND, OR และ NOT ปกติและตัวแปรบางตัว ผมอยากจะนับจำนวนของการมอบหมายงานที่น่าพอใจสำหรับB นั่นคือฉันต้องการค้นหาจำนวนการกำหนดค่าความจริงที่แตกต่างกันไปยังตัวแปรของBซึ่งBถือว่าค่าจริง ตัวอย่างเช่นสูตรa ∨ bมีการมอบหมายที่น่าพอใจสามรายการ ( ∨ ข) ∧ ( ค∨ ¬ ข)มีสี่ นี่คือปัญหา #SATBBBBBBBBBBBBa∨ba∨ba\lor b(a∨b)∧(c∨¬b)(a∨b)∧(c∨¬b)(a\lor b)\land(c\lor\lnot b) เห็นได้ชัดว่าการแก้ปัญหาที่มีประสิทธิภาพสำหรับปัญหานี้จะแสดงถึงวิธีแก้ปัญหาที่มีประสิทธิภาพสำหรับ SAT ซึ่งไม่น่าเป็นไปได้และในความเป็นจริงแล้วปัญหานี้คือ # P-complete และอาจยากกว่า SAT อย่างเคร่งครัด ดังนั้นฉันจึงไม่คาดหวังว่าโซลูชันที่รับประกันจะมีประสิทธิภาพ แต่เป็นที่ทราบกันดีว่ามันมีบางกรณีที่ค่อนข้างยากของ SAT เอง (ดูตัวอย่างที่Cheeseman 1991, " ปัญหาที่ยากจริงๆ คืออะไร" ) การค้นหาแบบสามัญที่ตัดทอนถึงแม้จะเป็นเลขชี้กำลังในกรณีที่แย่ที่สุดก็สามารถแก้ปัญหาได้อย่างมีประสิทธิภาพ วิธีการแก้ปัญหาแม้ในกรณีที่เลวร้ายที่สุด แต่จะมีประสิทธิภาพมากขึ้นในทางปฏิบัติ คำถามของฉันคือ: มีอัลกอริธึมใดที่ทราบแล้วซึ่งสามารถนับจำนวนการมอบหมายที่น่าพอใจของสูตรบูลีนทั่วไปได้อย่างรวดเร็วแม้ว่าอัลกอริทึมดังกล่าวต้องการเวลาแบบเอ็กซ์โพเนนเชียลในอินสแตนซ์ทั่วไปหรือไม่ มีอะไรดีกว่าอย่างเห็นได้ชัดกว่าการแจกแจงการมอบหมายที่เป็นไปได้ทุกครั้งหรือไม่

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

1
การจำแนกประเภทของปัญหาที่น่าพอใจ / ยากที่จะเข้าใจได้
เมื่อเร็ว ๆ นี้ผมพบว่าในกระดาษ [1] รุ่นสมมาตรพิเศษ SAT เรียกว่า2/2 / 4-SAT แต่มีตัวแปรสมบูรณ์หลายตัวเช่นMONOTONE NAE-3SAT , MONOTONE 1-IN-3-SAT , ...NPNP\text{NP} ตัวแปรอื่น ๆ สามารถใช้การได้: - SAT , Planar-NAE- SAT , ...222SATSAT\text{SAT}SATSAT\text{SAT} มีเอกสารสำรวจ (หรือหน้าเว็บ) ที่จำแนกประเภท (แปลก) ทั้งหมดที่ได้รับการพิสูจน์แล้วว่าเป็นแบบNP- ที่สมบูรณ์ (หรือเป็นP )SATSAT\text{SAT}NPNP\text{NP}PP\text{P} การหาวิธีการแก้ปัญหาที่สั้นที่สุดสำหรับ x Nส่วนขยายของ 15 ปริศนาเป็นว่ายากNNNNNNโดย D. รัทเนอร์และเอ็ม Warmuth (1986)

1
สนับสนุนโครงสร้างข้อมูลสำหรับการค้นหาในท้องถิ่นของ SAT
WalkSAT และ GSATเป็นอัลกอริทึมการค้นหาในท้องถิ่นที่รู้จักกันดีและเรียบง่ายสำหรับการแก้ปัญหาความพึงพอใจบูลีน pseudocode สำหรับอัลกอริทึม GSAT ถูกคัดลอกมาจากคำถามการใช้อัลกอริทึม GSAT - วิธีการเลือกตัวอักษรที่จะพลิก? และนำเสนอด้านล่าง procedure GSAT(A,Max_Tries,Max_Flips) A: is a CNF formula for i:=1 to Max_Tries do S <- instantiation of variables for j:=1 to Max_Iter do if A satisfiable by S then return S endif V <- the variable whose flip yield the …

1
การใช้อัลกอริทึม GSAT - วิธีการเลือกตัวอักษรที่จะพลิก?
GSAT อัลกอริทึมส่วนใหญ่ส่งตรง: คุณได้รับสูตรในรูปแบบปกติซึ่งเชื่อมต่อกันและพลิกตัวอักษรของอนุประโยคจนกว่าคุณจะพบวิธีแก้ปัญหาที่ตรงกับสูตรหรือถึงขีด จำกัด สูงสุดของ max_tries / max_flips และไม่พบวิธีแก้ปัญหา ฉันใช้อัลกอริทึมต่อไปนี้: procedure GSAT(A,Max_Tries,Max_Flips) A: is a CNF formula for i:=1 to Max_Tries do S <- instantiation of variables for j:=1 to Max_Iter do if A satisfiable by S then return S endif V <- the variable whose flip yield the most …


1
เหตุใดนักแก้ปัญหา SAT ล่าสุดทั้งหมดจึงทำงานกับ CNF แทนที่จะเป็นวงจร SAT
หลังจากการเปิดตัวห้องสมุด AIGER เพื่อจัดการกับกราฟกราฟและอินเวอร์เตอร์ในปี 2549 (ฉันคิดว่า) นักแก้ปัญหาวงจร SAT บางตัวได้เปิดตัวในปี 2549-2551 และในการแข่งขัน SAT / การแข่งขันไม่กี่ครั้งที่มีแทร็ก AIG อย่างไรก็ตามตั้งแต่นั้นมาดูเหมือนว่าโฟกัสนั้นได้รับทั้งใน SMT หรือการปรับปรุงตัวแก้ SAT แบบ clausal สำหรับฉันแล้วการให้ความสำคัญกับวงจร SAT ดูเหมือนจะสมเหตุสมผล: หลาย ๆ ปัญหาที่ไม่เกิดขึ้นจริงจะแสดงเป็นวงจร SAT มากกว่า CNF วงจรให้ข้อมูลโครงสร้างที่ไม่สามารถย้อนกลับวิศวกรรมจาก CNF แต่วงจรสามารถเปลี่ยนเป็น CNF ได้เสมอ และอย่างน้อยฟิลด์การสังเคราะห์เชิงตรรกะที่มีความสำคัญทางอุตสาหกรรมดูเหมือนจะเหมาะสมอย่างยิ่งสำหรับ AIGs แล้วเกิดอะไรขึ้น? มันกลับกลายเป็นว่าข้อมูลโครงสร้างพิเศษไม่ได้ช่วยแก้ปัญหา? SAT ที่ใช้ AIG กำลังแก้ไขการทดสอบที่ล้มเหลวหรือไม่

3
ทำไมไม่มีอัลกอริธึมประมาณสำหรับ SAT และปัญหาการตัดสินใจอื่น ๆ
ฉันมีปัญหาในการตัดสินใจ NP-complete จากตัวอย่างของปัญหาฉันต้องการออกแบบอัลกอริทึมที่ให้ผลลัพธ์ YES ถ้าปัญหาเป็นไปได้และไม่เช่นนั้น (แน่นอนว่าหากอัลกอริทึมไม่เหมาะสมจะทำให้เกิดข้อผิดพลาด) ฉันไม่พบอัลกอริทึมการประมาณค่าใด ๆ สำหรับปัญหาดังกล่าว ฉันกำลังมองหา SAT โดยเฉพาะและฉันพบในหน้า Wikipedia เกี่ยวกับอัลกอริทึมการประมาณค่าต่อไปนี้: ข้อ จำกัด อีกประการของวิธีการคือใช้กับปัญหาการปรับให้เหมาะสมเท่านั้นและไม่ใช่ปัญหาการตัดสินใจที่ "บริสุทธิ์" อย่างพอใจ . ยกตัวอย่างเช่นทำไมเราไม่กำหนดอัตราส่วนการประมาณให้เป็นสัดส่วนกับจำนวนข้อผิดพลาดที่อัลกอริทึมทำ เราจะแก้ปัญหาการตัดสินใจอย่างแท้จริงได้อย่างไรด้วยความโลภและวิธีย่อยที่เหมาะสมที่สุด?

3
หนังสือสูตรการเข้ารหัส SAT หรือไม่
นักแก้ปัญหา SAT ได้รับประสิทธิภาพมากขึ้นในการแก้ไขอินสแตนซ์ขนาดใหญ่และถูกใช้เป็นแบ็คเอนด์ในบริบทต่าง ๆ ทุกครั้งที่ต้องการใช้พวกเขาเพื่อแก้ปัญหาในโดเมนเฉพาะเขา / เธอต้องมากับการเข้ารหัสแบบเฉพาะกิจที่ไม่เพียง แต่มีชุดโซลูชั่นที่เหมาะสม แต่ยังวางข้อ จำกัด (แม้แต่ซ้ำซ้อน) ในรูปแบบ ที่ช่วยให้ฮิวริสติกของนักแก้ปัญหาในการหาคำตอบได้เร็ว การเข้ารหัสเช่นนี้ดูเหมือนว่าฉันจะเป็นเรื่องธรรมดามากตัวอย่างเช่น: ยืนยันว่าชุดของโหนดที่เชื่อมโยงกันเป็นต้นไม้หรือเป็น DAG หรือรายการเรียงลำดับ ... มีพื้นที่เก็บข้อมูล / ตำราสูตรของการเข้ารหัสร่วมสำหรับปัญหาที่พบบ่อยกับโซลูชันที่ปรับให้เหมาะสมหรือไม่

2
ภาษาที่สมบูรณ์แบบหนาแน่น NP หมายถึง P = NP
เราบอกว่าภาษาเป็นหนาแน่นถ้ามีพหุนามดังกล่าวว่าสำหรับทุกในคำอื่น ๆ สำหรับความยาวใดก็ตามมีอยู่เฉพาะคำ polynomially หลายความยาวที่ไม่อยู่ในJ⊆Σ∗J⊆Σ∗J \subseteq \Sigma^{*}ppp|Jc∩Σn|≤p(n)|Jc∩Σn|≤p(n) |J^c \cap \Sigma^n| \leq p(n)n∈N.n∈N.n \in \mathbb{N}.nnnnnnJ.J.J. ปัญหาที่ฉันกำลังศึกษาขอให้แสดงต่อไปนี้ หากมีภาษาที่สมบูรณ์แบบหนาแน่นอยู่แล้วNPNPNPP=NPP=NPP = NP สิ่งที่ข้อความที่แนะนำคือการพิจารณาลดพหุนามถึง -แล้วสร้างอัลกอริทึมที่พยายามทำให้สูตรกำหนดเป็นไปตามที่ต้องการพร้อมกับสร้างองค์ประกอบใน333SATSATSATCNFCNFCNFJc.Jc.J^c. สิ่งที่ฉันสงสัยคือ มีหลักฐานเพิ่มเติมโดยตรงหรือไม่ ความคิดนี้เป็นที่รู้จักกันในการตั้งค่าทั่วไปมากขึ้น?

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

1
ทำไมทฤษฎีบทของ Shaefer และ Mahaney จึงไม่ได้หมายถึง P = NP
ฉันแน่ใจว่ามีบางคนคิดเกี่ยวกับเรื่องนี้มาก่อนหรือยกเลิกในทันที แต่ทำไมทฤษฎีการแบ่งขั้วของ Schaefer และทฤษฎีบทของ Mahaney ในฉากห่าง ๆ ไม่ได้แปลว่า P = NP? นี่คือเหตุผลของฉัน: สร้างภาษาซึ่งเท่ากับ SAT ตัดกันโดยชุด sparse decidable ที่ไม่มีที่สิ้นสุด จากนั้นจะต้องกระจัดกระจาย เนื่องจากไม่ใช่เรื่องเล็ก ๆ น้อย ๆ เลียนแบบ 2-sat หรือ Horn-sat ตามทฤษฎีบทของ Shaefer มันจะต้องเป็นปัญหาที่สมบูรณ์ แต่จากนั้นเรามีชุด NP-complete ที่กระจัดกระจายตามทฤษฎีบทของ Mahaney, P = NPLLLLLLLLL ฉันจะไปผิดที่นี่ที่ไหน ฉันสงสัยว่าฉันเข้าใจผิด / ใช้ทฤษฎีบทของ Shaefer ไปในทางที่ผิด แต่ฉันไม่เห็นสาเหตุ

6
การหาค่า XOR สูงสุดของตัวเลขสองตัวในช่วงเวลาหนึ่ง: เราจะทำได้ดีกว่าสมการกำลังสองหรือไม่?
สมมติว่าเรากำลังได้รับสองหมายเลขและและที่เราต้องการที่จะหาสำหรับL \ le i, \, J \ le Rlllrrrmax(i⊕j)max(i⊕j)\max{(i\oplus j)}l≤i,j≤rl≤i,j≤rl\le i,\,j\le r อัลกอริทึมnaïveเพียงตรวจสอบคู่ที่เป็นไปได้ทั้งหมด เช่นในทับทิมเรามี: def max_xor(l, r) max = 0 (l..r).each do |i| (i..r).each do |j| if (i ^ j > max) max = i ^ j end end end max end ฉันรู้สึกว่าเราสามารถทำได้ดีกว่าสมการกำลังสอง มีอัลกอริทึมที่ดีกว่าสำหรับปัญหานี้หรือไม่?

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.