รุ่นการปรับให้เหมาะสมของปัญหาการตัดสินใจ


26

เป็นที่ทราบกันว่าปัญหาการเพิ่มประสิทธิภาพ / การค้นหาแต่ละรายการมีปัญหาในการตัดสินใจเทียบเท่า ตัวอย่างเช่นปัญหาเส้นทางที่สั้นที่สุด

  • การเพิ่มประสิทธิภาพ / รุ่นค้นหา: สมมติว่าไม่มีทิศทางกราฟไม่ได้ชั่งและสองจุดหาเส้นทางที่สั้นที่สุดระหว่างและยูG=(V,E)v,uVvu
  • เวอร์ชันการตัดสินใจ: เนื่องจากกราฟถ่วงน้ำหนักที่ไม่ได้บอกทิศทาง , สองจุดยอด , และเลขจำนวนเต็มที่ไม่เป็นลบ , มีเส้นทางในระหว่างและที่มีความยาวสูงสุดหรือไม่?G=(V,E)v,uVkGuvk

โดยทั่วไป "ค้นหา st !" กลายเป็น "มีx \ in X st f (x) \ leq kหรือไม่"xXf(x)=min{f(x)xX}xXf(x)k

แต่สิ่งที่ตรงกันข้ามก็เป็นความจริงนั่นคือมีปัญหาการเพิ่มประสิทธิภาพที่เทียบเท่าสำหรับทุกปัญหาการตัดสินใจ ถ้าไม่เป็นตัวอย่างของปัญหาการตัดสินใจที่ไม่มีปัญหาการเพิ่มประสิทธิภาพเทียบเท่า


6
บิตนี้เท่ากับศูนย์หรือไม่?
JeffE

5
คุณต้องอธิบาย "เทียบเท่า" ในรายละเอียดเพิ่มเติมเช่นคุณหมายถึงหนึ่งสามารถแก้ไขได้โดยใช้อื่น ๆ เป็น oracle / blackbox ในเวลาพหุนาม (หรือในพื้นที่ลอการิทึม)? คุณใส่ใจปัญหาทั้งหมดหรือมีปัญหาเฉพาะในNPหรือไม่
Kaveh

1
ขึ้นอยู่กับมุมมองของคุณคำถามนั้นเป็นเรื่องเล็กน้อย (รับปัญหาการตัดสินใจใด ๆ ที่ไม่มี " k ") หรือไม่สามารถตอบได้ (วิธีการพิสูจน์ว่ามี "ไม่มีปัญหาการเลือกเทียบเท่า")
กราฟิลส์

คำตอบ:


28

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


คำที่เกี่ยวข้อง: ปัญหาการเพิ่มประสิทธิภาพเป็น tuple (X,F,Z,)ด้วย

  • Xชุดของการเข้ารหัสที่เหมาะสม (สตริง) เดอะอินสแตนซ์หรือปัจจัยการผลิต
  • Fเป็นฟังก์ชันที่แผนที่แต่ละเช่นชุดของการแก้ปัญหาที่เป็นไปได้ของxxXF(x)x
  • Zเป็นฟังก์ชันวัตถุประสงค์ที่แผนที่แต่ละคู่ที่และจะเป็นจำนวนจริงเรียกว่าค่าของY(x,y)xXyF(x)Z(x,y)y
  • เป็นทิศทางการเพิ่มประสิทธิภาพทั้งหรือ\minmax

คำจำกัดความ:คำตอบที่ดีที่สุดของอินสแตนซ์ของปัญหาการหาค่าเป็นคำตอบที่เป็นไปได้ซึ่ง\} มูลค่าของการแก้ปัญหาที่ดีที่สุดคือการแสดงด้วยและเรียกว่าดีที่สุดxXPOyF(x)Z(x,y)={Z(x,y)yF(x)}Opt(x)

คำที่เกี่ยวข้อง: ปัญหาการประเมินผลการชี้แนะสอดคล้องกับปัญหาการเพิ่มประสิทธิภาพเป็นดังต่อไปนี้: ให้อินสแตนซ์คำนวณถ้ามีทางออกที่ดีที่สุดและการส่งออก“ไม่มีทางออกที่ดีที่สุด” มิฉะนั้นPEPOxXOpt(x)x

โปรดทราบว่านี่เป็นเพียงการขอคุณค่าของโซลูชันที่ดีที่สุดไม่ใช่โซลูชันทั้งหมดพร้อมรายละเอียดทั้งหมด

คำที่เกี่ยวข้อง: ปัญหาการตัดสินใจชี้แนะที่สอดคล้องกับปัญหาการเพิ่มประสิทธิภาพเป็นดังต่อไปนี้: ให้คู่ที่และตัดสินใจว่ามีทางออกที่เป็นไปได้เช่นว่าถ้าและเช่นว่าถ้า\PDPO(x,k)xXkQxyZ(x,y)k=minZ(x,y)k=max

สังเกตแรกคือตอนนี้ที่{} หลักฐานไม่ยากและถูกตัดออกจากที่นี่PONPOPDNP

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

จำได้ว่าภาษาเป็นพหุนามเวลาออกซิเจนภาษาอื่นถ้ามีฟังก์ชั่น , คำนวณในเวลาพหุนามเช่นว่าทุกคำ ,L_2 ชนิดของ reducibility นี้เป็นที่รู้จักกันคาร์พหรือหลายต่อหนึ่ง reducibilityและถ้า เป็นออกซิเจนในลักษณะนี้เราแสดงโดยการเขียนL_2 นี่คือแนวคิดหลักในคำจำกัดความของความสมบูรณ์แบบ NPL1L2fxxL1f(x)L2L1L2L1mL2

น่าเสียดายที่การลดลงแบบตัวต่อตัวระหว่างภาษาและยังไม่ชัดเจนว่าจะใช้ภาษาเหล่านี้อย่างไรในบริบทของปัญหาการเพิ่มประสิทธิภาพ ดังนั้นเราจึงต้องพิจารณาชนิดที่แตกต่างกันของ reducibility, ทัวริง reducibility ก่อนอื่นเราต้องการสิ่งนี้:

คำที่เกี่ยวข้อง: oracleสำหรับปัญหาเป็น (สมมุติ) ย่อยที่สามารถแก้กรณีของในเวลาคงPP

ความหมาย:ปัญหาที่เกิดขึ้นเป็นพหุนามเวลาทัวริง-ซึ้งทำให้เป็นปัญหาเขียนถ้ากรณีของจะสามารถแก้ไขได้ในเวลาพหุนามโดยอัลกอริทึมที่มีการเข้าถึง oracle สำหรับP_2P1P2P1TP2P1P2

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

ให้แล้วP_OPONPOPDTPETPO

เนื่องจากให้โซลูชันเต็มรูปแบบการคำนวณค่าและการตัดสินใจว่าตรงกับขอบเขตนั้นง่ายหรือไม่k

คำจำกัดความ:หากมีปัญหาสองประการและทั้งความสัมพันธ์ ,ถือไว้เราจะเขียน ; แนวคิดเรื่องความเท่าเทียมของเราP1P2P1TP2P2P1P1TP2

ขณะนี้เราพร้อมที่จะพิสูจน์ว่าเนื่องจากปัญหาการปรับให้เหมาะสมที่สอดคล้องกันคือและเป็นจำนวนเต็มมูลค่า เราต้องแสดงให้เห็นว่าถืออยู่ เราสามารถตรวจสอบกับไบนารีค้นหา usign orcale สำหรับP_Dความหมายของเพื่อให้แน่ใจว่าสำหรับบางพหุนามดังนั้นจำนวนของขั้นตอนในการค้นหาไบนารีคือพหุนามใน. PDTPEPONPOZPETPD{Z(x,y)yF(x)}PDNPO|Z(x,y)|2q(|x|)q|x|

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

ก่อนอื่นเราต้องขยายจากคู่ภาษาเป็นคู่ของปัญหาการตัดสินใจที่สอดคล้องกัน จากนั้นก็จะเป็นเรื่องง่ายที่จะเห็นว่าทั่วไปมากกว่า\mTm

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

ตอนนี้เราพร้อมแล้วสำหรับตอนจบ:

ให้และสมมติว่าเป็นจำนวนเต็มและนั้นเป็น NP-complete จากนั้นกับข้อสังเกตก่อนหน้านี้มันก็ยังคงที่จะแสดงP_E การทำเช่นนี้เราจะแสดงปัญหาดังกล่าวว่าP_E' จากนั้นเรามีที่สองและสามถือเพราะความเท่าเทียมกันของการตัดสินใจและการประเมินผลรุ่นพิสูจน์ก่อนหน้านี้ ที่สามติดตามจาก NP-ครบถ้วนของและข้อเท็จจริงสองข้อที่กล่าวถึงก่อนหน้าคือPONPOZPD

PDTPETPO.
POTPEPONPOPOTPE
POTPETPDTPDTPE.
TTPDPONPOPDNPและP_O'PmPOPTPO

ตอนนี้รายละเอียด: สมมติว่าคำตอบที่เป็นไปได้ของนั้นถูกเข้ารหัสโดยใช้ตัวอักษรพร้อมกับคำสั่งทั้งหมด ให้เป็นคำจากแสดงรายการตามลำดับความยาวที่ไม่ลดลงและคำสั่งทำพจนานุกรมภายในกลุ่มคำที่มีความยาวทั่วไป (ดังนั้นเป็นคำที่ว่างเปล่า.) สำหรับทุกให้หมายถึงเลขที่ไม่ซ้ำกันดังกล่าวว่าการ yสามารถคำนวณทั้งและได้ในเวลาพหุนาม ปล่อยเป็นพหุนามแบบนั้นสำหรับPOΣw0,w1,Σw0yΣσ(y)iy=wiσσ1qxXและทุกเรามี|)}yF(x)σ(y)<2q(|x|)

ตอนนี้ปัญหาเป็นเหมือนยกเว้นสำหรับการปรับเปลี่ยนฟังก์ชั่นวัตถุประสงค์Z'สำหรับและที่เราใช้เวลา(y) คือคำนวณในเวลาพหุนามจึง{}POPOZxXyF(x)Z(x,y)=2q(|x|)Z(x,y)+σ(y)ZPONPO

แสดงให้เห็นว่าเราสังเกตว่าเป็นไปได้สำหรับและถ้าหากมันเป็นไปได้สำหรับP_E'เราสามารถสันนิษฐานได้ว่าเป็นกรณีนี้เนื่องจากกรณีตรงข้ามเป็นเรื่องเล็กน้อยที่จะจัดการPOTPExPOPE

substituion ของ forเป็นแบบโมโนโทนิกในแง่ที่ว่า , ถ้าจากนั้นy_2) นี่ก็หมายความว่าทางออกที่ดีที่สุดสำหรับทุกในเป็นทางออกที่ดีที่สุดของในP_Oดังนั้นหน้าที่ของเราที่จะช่วยลดการคำนวณการแก้ปัญหาที่ดีที่สุดของในP_O'ZZy1,y2F(x)Z(x,y1)<Z(x,y2)Z(x,y1)<Z(x,y2)xPOxPOyxPO

สอบถาม oracle สำหรับเราจะได้รับค่าของ(y) การสร้างส่วนที่เหลือของตัวเลขนี้โมดูโลให้ผลตอบแทนซึ่งสามารถคำนวณได้ในเวลาพหุนามPEZ(x,y)=2q(|x|)Z(x,y)+σ(y)2q(|x|)σ(y)y


"oracle สำหรับปัญหา P คือรูทีนย่อย (สมมุติ) ที่สามารถแก้ปัญหาอินสแตนซ์ของ P ในเวลาคงที่" oracle ต้องใช้เวลาคงที่เท่านั้นหรือ
ทิม

@ Tim แน่นอนมีหนังสือฉันอยู่ไม่กี่ในความคิดเห็นของผู้อื่นคำตอบ
ULI

@ Tim เกี่ยวกับ oracle: ถ้าคุณได้พบ / ตั้งครรภ์ลดลงระหว่างสองปัญหาและคุณได้ลดปัญหาการหาขั้นตอนวิธีการที่มีประสิทธิภาพสำหรับการหาขั้นตอนวิธีการที่มีประสิทธิภาพสำหรับBหรือคำอื่น ๆ ที่ลดลงจะบอกคุณว่าเพื่อที่จะแก้คุณสามารถใช้Bมันก็เหมือนการใช้งานย่อยสำหรับในอัลกอริทึมสำหรับ อย่างไรก็ตามปัญหาและATBABABABBAABมักเป็นปัญหาที่เราไม่รู้จักวิธีแก้ปัญหาที่มีประสิทธิภาพ และในกรณีของทัวริง - รีดซิชั่นเรายังใช้มันในกรณีที่ปัญหาที่เกี่ยวข้องไม่สามารถตัดสินใจได้เลย
uli

@Tim ดังนั้นเป็นรูทีนย่อยที่ไม่รู้จัก มันได้กลายเป็นที่กำหนดเองในทฤษฎีความซับซ้อนที่จะเรียกขั้นตอนวิธีการสมมุติสำหรับที่ได้มาจากการลดลงเป็นอัลกอริทึมกับ Oracle Bเรียก subroutine ไม่รู้จักพยากรณ์เพียงเป็นการแสดงออกว่าเราไม่สามารถหวังว่าจะได้พบกับขั้นตอนวิธีการที่มีประสิทธิภาพสำหรับเหมือนกับที่เราไม่สามารถหวังว่าจะได้รับ oracle สำหรับBตัวเลือกนี้ค่อนข้างโชคร้ายเนื่องจากมันมีความสามารถทางเวทย์มนตร์ ค่าใช้จ่ายสำหรับ oracle ควรเป็นเป็น subroutine มีอย่างน้อยการอ่านการป้อนข้อมูลxBABBBB|x|x
uli

3
คำตอบที่ยอดเยี่ยมทั่ว; สิ่งเดียวที่ฉันจะเพิ่ม (มาที่มันตอนนี้ผ่านคำถามอื่น) คือ 'ทิศทางการปรับให้เหมาะสม' เป็นความซับซ้อนที่ไม่จำเป็นและสำหรับความเป็นรูปธรรมเราสามารถสันนิษฐานได้เสมอว่าฟังก์ชันวัตถุประสงค์จะถูกขยายให้ใหญ่ที่สุด; ถ้าความตั้งใจที่จะลดแล้วเราก็สามารถกำหนดวัตถุประสงค์ใหม่ฟังก์ชั่นและเขียนทั้งหมดลดของเป็นสูงสุดของZ'ZZ=ZZZ
Steven Stadnicki

5

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

ให้เป็นความสัมพันธ์บางอย่างที่เป็น\}SS{(a,b)a,bΣ}

ตอนนี้เรากำหนดปัญหาการค้นหาสำหรับ :S

ได้รับหาดังกล่าวว่าSab(a,b)S

และปัญหาการตัดสินใจสำหรับ :S

ป.ร. ให้ไว้คำตอบหรือไม่S(a,b)(a,b)S

(ตัวอย่างเช่นในตัวอย่างที่ให้ไว้ในคำถามจะเก็บคู่ทั้งหมดไว้ เพื่อให้มีเส้นทางระหว่างและซึ่งสั้นกว่า )S(u,v,k)uvk

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

การเรียกร้องที่ 1 : การตัดสินใจหมายถึงการค้นหา

พิสูจน์: Letเป็นอัลกอริทึมที่แก้ปัญหาการตัดสินใจของSรับอินพุต , เราสามารถเรียกใช้สำหรับ , อันใดอันหนึ่งหรือต่อเนื่องกัน หากมีเช่นนั้นเราจะพบมันในที่สุด ถ้าไม่ได้อัลกอริทึมอาจจะไม่หยุด^DSSaDS(a,x)xΣb(a,b)S

การเรียกร้องที่ 2 : การค้นหาไม่ได้บ่งบอกถึงการตัดสินใจ

เหตุผลก็คืออัลกอริทึมการค้นหาอาจส่งคืนแตกต่างจากที่เราต้องการ นั่นคือสำหรับทุกมีบางว่าเป็นเรื่องง่ายมากที่จะหา แต่คนอื่น ๆที่ไม่ได้เป็น ตัวอย่างเช่นให้เป็นภาษาที่ไม่สามารถตัดสินใจได้จากนั้นกำหนด สำหรับทุกวิธีการค้นหาสามารถกลับ0แต่ขั้นตอนวิธีการตัดสินใจที่ไม่สามารถตอบได้อย่างถูกต้องไม่ว่าจะเป็นสำหรับทุกคู่1) ถ้าทำได้ก็จะตัดสินใจว่าเป็นปัญหาที่ไม่อาจตัดสินใจได้ซึ่งเป็นไปไม่ได้babbL

S={(x,0)xΣ}{(x,1)xL}.
x0(x,1)S(x,1)


นี้ขึ้นอยู่กับSตัวอย่างเช่นถ้าถูก จำกัด อาจมีอัลกอริทึมที่จะหยุดอยู่SS


2
ปัญหาการตัดสินใจที่ถูกต้องคือการดำรงอยู่ของเซนต์S ba,bS
Kaveh

หากการตัดสินใจถูกกำหนดให้มีอยู่ของดังนั้นการค้นหาก็หมายถึงการตัดสินใจ b
Ran G.

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