ฉันต้องการบันทึกความคืบหน้าบางส่วน - ดูเหมือนว่าจะมีแนวโน้มจนถึงขั้นตอนวิธีพหุนาม อัปเดต : เพิ่มรายละเอียดบางอย่างลงในบัญชีสำหรับความผิดพลาดที่ชี้ให้เห็นโดย @David (ขอบคุณ!)
วิธีการคือการลดสิ่งนี้ให้กับอินสแตนซ์ของ CSPs ของ MIN-ONES-EVEN-3 (MOEC) ซึ่งเป็นปัญหาที่แก้ได้ในพหุนาม หลักฐานการลดลงนั้นค่อนข้างคลุมเครือ แต่ฉันหวังว่ามันจะมีอยู่จริง!
ตัวอย่างของ MOEC เป็นครอบครัวส่วนย่อย -sized ของจักรวาลของตัวแปรและจำนวนเต็มk คำถามก็คือว่ามีการกำหนดน้ำหนักที่น่าพอใจอย่างมากที่k หรือไม่โดยที่การมอบหมายนั้นเป็นฟังก์ชันจากเอกภพถึง{ 0 , 1 }น้ำหนักของการมอบหมายนั้นคือจำนวนของตัวแปรที่จะกำหนดหนึ่งและการมอบหมายคือ พอใจถ้าสำหรับทุกชุดย่อยของตัวแปร{ x , y , z } , การมอบหมาย (พูดf ) มีคุณสมบัติที่:3kk{0,1}{x,y,z}f
)f(x)+f(y)+f(z)=0(mod 2)
คุณสามารถมองเห็นสิ่งนี้เป็น 3-SAT ด้วยแนวคิดที่แตกต่างของความพึงพอใจ - เลือกไม่มีหรือเลือกสอง ฉันจะเป็นหละหลวมเล็กน้อยเกี่ยวกับตัวอย่างของ MOEC ในการที่เราจะอนุญาตให้มีการนอกเหนือจากปกติ -subsets กระทบ disjunctions ของความยาวสองและข้อ จำกัด( x = 1 ) ฉันเชื่อว่าการเพิ่มเติมอย่างง่ายเหล่านี้จะทำให้เวลาพหุนามมีปัญหา3(x=1)
สมมติว่าเรากำลังลดปัญหาห่วงโซ่นอกจากนี้สำหรับจำนวนnชุดตัวแปรสำหรับการลดลงนี้มีดังต่อไปนี้:n
ทุก ๆตัวแปรNฉัน ฉันจะเขียนตัวแปรN nเป็นNอีกครั้ง สำหรับคู่ทุกฉัน, เจดังกล่าวที่1 ≤ ฉัน, เจ≤ kแนะนำตัวแปรP ฉันเจและถามฉันเจ 1≤i≤nNiNnNi,j1≤i,j≤kPijQij
แนะนำเซตย่อยต่อไปนี้สำหรับทุก ๆเช่นนั้นk = i + j :i,j,kk=i+j
{Pij,Qij,Nk}
และผลกระทบต่อไปนี้:
และ
P ฉันj ⇒ N jPij⇒NiPij⇒Nj
และข้อ จำกัด ดังต่อไปนี้:
)(N1=1),(N=1)
ในที่สุดเราจำเป็นต้องเพิ่มข้อ จำกัด เพื่อให้แน่ใจว่าอย่างน้อยหนึ่งใน Variable จะถูกเลือกเมื่อมีการกำหนด " N " ที่สอดคล้องกัน(ให้อภัยการใช้สัญลักษณ์ในทางที่ผิด) ซึ่งสามารถทำได้โดยการเพิ่มปกติหรือข้อ จำกัด มากกว่าทุกP ฉันเจดังกล่าวว่าฉัน+ JรวมไปN -variable ในคำถาม อย่างไรก็ตามเราต้องค้นหาวิธีการเข้ารหัสสิ่งนี้อีกครั้งใน MOEC-frameworkPNPiji+jN
ขอผมร่างวิธีพูดโดยทั่วไปโดยกำหนดชุดตัวแปร:
,(X,l1,l2,…,lt)
วิธีการ จำกัด "ถ้าการมอบหมายเป็นที่น่าพอใจและตั้งค่าเป็นหนึ่งจากนั้นแน่นอนหนึ่งในl ฉันจะต้องถูกตั้งค่าเป็นหนึ่งโดยการมอบหมาย" สามารถเข้ารหัสด้วยไวยากรณ์ MOEC โปรดทราบว่าสิ่งนี้เพียงพอสำหรับความต้องการของเราเราเพียงแค่แนะนำข้อ จำกัด :Xli
)(Nk,{Pij | i+j=k})
การเข้ารหัสจะทำดังนี้ ให้เป็นที่ฝังรากต้นไม้ไบนารีที่สมบูรณ์แบบบนเสื้อใบ แนะนำใหม่ตัวแปรT d ฉันทั้งหมด1 ≤ d ≤ เข้าสู่ระบบTและ1 ≤ ฉัน≤ L ( d )ที่L ( d )หมายถึงจำนวนโหนดของT Xที่ระดับความลึกdTXtTdi1≤d≤logt1≤i≤L(d)L(d)TXd
สำหรับทุกโหนดถ้าpและqเป็นลูกของมันในต้นไม้แนะนำข้อ จำกัด EVEN-3:Tdipq
{Tdi,p,q}
นี่หมายความว่าหากตัวแปรที่เกี่ยวข้องกับโหนดนั้นถูกตั้งค่าเป็นจริงดังนั้นหนึ่งในนั้นลูกของมันจะต้องถูกตั้งค่าเป็นจริงเช่นกัน ตอนนี้เพิ่มความหมาย:
และ
( d log t , j ) ⇒ l j (เครื่องหมายจุลภาคเพื่อความชัดเจน)(X⇒T11)(dlogt,j)⇒lj
การรวมกันของข้อ จำกัด EVEN-3 และนัยนี้เทียบเท่ากับข้อ จำกัด ที่เราต้องการเข้ารหัส
สิ่งที่เกิดขึ้นก็คือข้อ จำกัด สองข้อสุดท้ายนั้นก่อให้เกิดปฏิกิริยาที่จำเป็นต่อการสร้างห่วงโซ่เพิ่มเติม โดยเฉพาะอย่างยิ่งให้เราดูที่ของที่ได้รับมอบหมายหนึ่งโดยการกำหนดความพึงพอใจ - การเรียกร้องที่พวกเขาจะเป็นห่วงโซ่นอกจากนี้สำหรับN : ตั้งแต่ได้รับมอบหมายถูกบังคับให้ต้องตั้งยังไม่มีการอย่างใดอย่างหนึ่งจะต้องมีอย่างน้อย หนึ่งP i jที่ถูกตั้งค่าเป็นหนึ่งและความหมายบังคับN ฉันและN jNiNNPijNiNjที่จะได้รับมอบหมายและสิ่งนี้ลงไปจนหมด (ฉันแน่ใจว่านี่จะเป็นทางการด้วยการเหนี่ยวนำแม้ว่าฉันจะยังไม่ได้ทำรายละเอียดในระดับนั้น) โปรดทราบว่าการมอบหมาย satsifying ที่ดีที่สุดในจำนวนของคนที่ได้รับมอบหมายจะไม่ได้ตั้งค่าจริงสำหรับสองคู่( r , s )และ( r ′ , s ′ )ด้วยเหตุผลที่P -variables มาพร้อมกับเพิ่มเติม สัมภาระของความหมายและQ-แปรปรวนไม่ได้ (พวกเขาอยู่ที่นั่นเพื่อให้แน่ใจว่าน่าพอใจ EVEN-3 - ในประโยคที่N ฉันเป็นจริงและPPij(r,s)(r′,s′)PQNiไม่เป็นความจริงเรายังต้องเลือกบางสิ่งบางอย่างเพื่อตอบสนองข้อนั้นและด้วยเหตุผลที่ง่ายต่อการมองเห็นสิ่งนี้ไม่สามารถเป็นตัวแปรสากลหนึ่งข้ามข้อ)Pij
ดังนั้นฉันเชื่อว่าห่วงโซ่เพิ่มเติมสอดคล้องกับการมอบหมายที่น่าพอใจและในทางกลับกัน ผมขออธิบายส่วนหนึ่งของเรื่องนี้ค่อนข้างอย่างเป็นทางการ: รับห่วงโซ่นอกจากนี้เราสร้างงานที่มีความพึงพอใจ เพื่อเริ่มต้นกับฉทุกชุดN ฉัน 's คุณลักษณะในห่วงโซ่ที่หนึ่งและอื่น ๆ ที่ไม่มีฉัน ' s ให้เป็นศูนย์ ต่อไปหากkให้บริการในห่วงโซ่นอกจากนี้แล้วสำหรับแต่ละN kให้ฉันk , เจkเป็นองค์ประกอบในห่วงโซ่ดังกล่าวว่าฉันk + J k = J จากนั้นตั้งค่าfffNiNikNkik,jkik+jk=jfกับหนึ่ง (และ Q ฉันk J k ศูนย์) และทั้งหมด ( ฉัน, J )เช่นที่ฉัน≠ ฉันkและเจ≠ เจkและฉัน+ J = k ,ฉชุด Q ฉันเจให้เป็นหนึ่ง (และ P ฉันjถึงศูนย์) สำหรับทุก kที่ไม่ได้มีบทบาทสำคัญในห่วงโซ่นอกจากนี้สำหรับทุกฉัน, เจดังกล่าวว่าฉันPikjkQikjk(i,j)i≠ikj≠jki+j=kfQijPijki,j , ตั้งค่าทั้งหมด Q i jและ P i jเป็นศูนย์ (โปรดสังเกตว่าความสอดคล้องเป็นไปตามจากความจริงที่ว่าตัวเลขสองตัวบวกกันในทางเดียวเท่านั้น) ประโยคทั้งหมดที่เกี่ยวข้องกับ N ฉันในห่วงโซ่เป็นที่พอใจเพราะตัวแปร P หรือตัวแปร Q ที่สอดคล้องกับมันถูกตั้งค่าเป็นหนึ่ง (และสังเกตว่าหนึ่งในนั้นถูกตั้งค่าเป็นหนึ่งสำหรับคู่ใด ๆ ( i , j ) ) สำหรับประโยคอื่น ๆ ทุกอย่างทุกอย่างถูกตั้งค่าเป็นศูนย์ ความหมายของการถือนั้นง่ายต่อการตรวจสอบi+j=kQijPijNi(i,j)
ส่วนที่ยังไม่ชัดเจนคือต่อไปนี้: เพราะทุกองค์ประกอบได้รับการแต่งตั้งในห่วงโซ่นอกจากนี้การกำหนด incurs น้ำหนักของเสื้อ (เพราะทุกQ -variables เป็นชุดเดียว) ดังนั้นจึงมีความเป็นไปได้ที่ห่วงโซ่เพิ่มเติมที่ยาวกว่าจะสอดคล้องกับการมอบหมายที่ถูกกว่า แต่ฉันค่อนข้างแน่ใจว่าสิ่งนี้จะไม่เกิดขึ้นเพราะมีการพิสูจน์ตามบรรทัดต่อไปนี้: พิจารณาห่วงโซ่การเพิ่มที่เหมาะสมที่สุดและสมมติว่า การมอบหมายที่น่าพึงพอใจซึ่งมีน้ำหนักน้อยกว่านั้นสอดคล้องกับมัน เห็นได้ชัดว่าองค์ประกอบของห่วงโซ่ยาวไม่รวมอย่างน้อยหนึ่งจากที่สั้นกว่าหนึ่ง - ให้องค์ประกอบที่เป็นx ฉันอยากจะบอกว่าค่าใช้จ่ายที่เกิดขึ้นกับxttQxxเกิดขึ้นในห่วงโซ่อีกต่อไปและที่เหลือเปรียบเทียบอยู่ในเกณฑ์ดี อย่างไรก็ตามฉันต้องเขียนมันอย่างระมัดระวังและฉันอาจจะได้เห็นสิ่งต่าง ๆ จากโรคหลังเที่ยงคืน!