ปัญหาอัลกอริทึมใด ๆ ที่มีความซับซ้อนด้านเวลาโดยการนับ?


13

สิ่งที่ฉันเรียกว่าการนับเป็นปัญหาที่เกิดขึ้นในการค้นหาจำนวนวิธีแก้ปัญหาของฟังก์ชั่น แม่นยำยิ่งขึ้นเนื่องจากฟังก์ชันf:N{0,1} (ไม่จำเป็นต้องเป็นกล่องดำ) ประมาณ #{xNf(x)=1}=|f1(1)|.

ฉันกำลังมองหาปัญหาอัลกอริทึมที่เกี่ยวข้องกับการนับบางประเภทและความซับซ้อนของเวลาได้รับอิทธิพลอย่างมากจากปัญหาการนับที่อยู่ภายใต้นี้

แน่นอนฉันกำลังมองหาปัญหาที่ไม่นับปัญหาด้วยตัวเอง และจะได้รับการชื่นชมอย่างมากหากคุณสามารถให้เอกสารสำหรับปัญหาเหล่านี้

คำตอบ:


15

Θ(n2)Ω(n2)O(n2)

Θ(n2)Ω(n2)(n2)จุดแยกและมองหาจุดที่ซ้ำกัน

ในทำนองเดียวกันมีชุดของตัวเลขที่องค์ประกอบสามอย่างรวมกันเป็นศูนย์ ดังนั้นขั้นตอนวิธีการใด ๆ (รูปแบบโดยชั้นหนึ่งของต้นไม้ตัดสินใจ) เพื่อทดสอบว่าให้ชุดมีสามองค์ประกอบที่ผลรวมเป็นศูนย์ต้องเวลา (เป็นไปได้ที่จะโกนบันทึกบางรายการผ่านการเทียบเคียงระดับบิต แต่ไม่ว่าอะไรก็ตาม)Θ(n2)Ω(n2)

อีกตัวอย่างหนึ่งก็มาจากวิทยานิพนธ์ของฉันเป็นปัญหาของ Hopcroft: ให้คะแนนและเส้นในระนาบที่ไม่จุดใดมีเส้นใด ๆ จำนวนที่เลวร้ายที่สุดกรณีของอุบัติการณ์จุดเส้นเป็นที่รู้จักกัน{4/3}) ฉันพิสูจน์แล้วว่าในการคำนวณแบบ จำกัด (แต่ยังคงเป็นธรรมชาติ)จำเป็นต้องใช้เวลาในการพิจารณาว่ามีอุบัติการณ์ของจุดหนึ่งจุดหรือไม่ โดยสังหรณ์ใจเราจะต้องแจกแจงใกล้กับเหตุการณ์และตรวจสอบแต่ละคนเพื่อดูว่ามันเป็นเหตุการณ์จริงหรือไม่nnΘ(n4/3)Ω(n4/3)Θ(n4/3)

อย่างเป็นทางการขอบเขตที่ต่ำกว่านี้ยังคงเป็นเพียงการคาดเดาเพราะพวกเขาต้องการแบบจำลองการคำนวณที่ จำกัด ซึ่งมีความเชี่ยวชาญเฉพาะกับปัญหาในมือโดยเฉพาะอย่างยิ่งสำหรับปัญหาของ Hopcroft) อย่างไรก็ตามการพิสูจน์ขอบเขตที่ต่ำกว่าสำหรับปัญหาเหล่านี้ในรุ่น RAM น่าจะยากพอ ๆ กับปัญหาที่มีขอบเขตล่างอื่น ๆ (เช่นเราไม่มีเงื่อนงำ) - ดูบทความSODA 2010 โดย Patrascu และ Williams ที่เกี่ยวข้องกับการสรุปทั่วไปของ 3SUM สมมติฐาน.


9

ฉันไม่แน่ใจว่านี่คือสิ่งที่คุณหมายถึงหรือไม่ แต่มีปัญหามากมายที่ดูเหมือนว่าพวกเขากำลังนับปัญหาอย่างไรก็ตามวิธีที่ดีที่สุดที่เรารู้วิธีแก้ปัญหาคือการนับวัตถุ ปัญหาอย่างหนึ่งคือการตรวจสอบว่ากราฟมีสามเหลี่ยมหรือไม่ อัลกอริทึมที่รู้จักกันเร็วที่สุดคือการคำนวณการติดตามของคิวบ์ของเมทริกซ์ adjacency ซึ่งเป็น 6 เท่าของสามเหลี่ยมในกราฟ (undirected) สิ่งนี้ใช้เวลา O ( ) เวลาโดยใช้อัลกอริทึมการคูณเมทริกซ์ Coppersmith-Winograd และได้รับการสังเกตเป็นครั้งแรกโดยItai และ Rodehในปี 1978 ในทำนองเดียวกันวิธีที่ดีที่สุดที่เรารู้ในการตรวจสอบ k-clique จำนวน k-cliques อีกครั้งผ่านการคูณเมทริกซ์|V|2.376


8

องอาจพิสูจน์ให้เห็นว่าปัญหาการหาถาวรของเมทริกซ์เป็นที่สมบูรณ์แบบสำหรับ#P ดูหน้าวิกิพีเดียเกี่ยวกับปัญหา #P เป็นคลาสความซับซ้อนที่สอดคล้องกับการนับจำนวนเส้นทางการยอมรับของเครื่อง NP


3

Bipartite Planar (และประเภทบันทึก) Perfect Matching เป็นปัญหาที่อัลกอริทึมของ Kastelyn สำหรับการนับการจับคู่ภาพถ่ายทางอากาศ (ขยายโดย Galluccio และ Loebl และขนานกับ Kulkarni, Mahajan & Vardarajan) มีบทบาทสำคัญแม้ในรุ่นค้นหาของปัญหา การอ้างอิงที่เกี่ยวข้องทั้งหมดสามารถพบได้ในเอกสารต่อไปนี้:

การจับคู่ที่สมบูรณ์แบบและการจับคู่แบบครึ่งตัวที่สมบูรณ์แบบใน NC Raghav Kulkarni, Meena Mahajan และ Kasturi R. Varadarajan วารสารวิทยาศาสตร์คอมพิวเตอร์เชิงทฤษฎีของชิคาโก, เล่มที่ 2008 ข้อ 4.


1

ฉันจะใช้ "อิทธิพลอย่างมาก" เป็นข้อ จำกัด ที่นุ่มนวลมากกว่าเป็นการลด ในแง่นั้นปัญหาหลายอย่างในเรขาคณิตการคำนวณมีเวลาที่ถูก จำกัด ขอบเขตโดยโครงสร้าง combinatorial ตัวอย่างเช่นความซับซ้อนของการคำนวณการจัดเรียงของรูปร่างเชื่อมโยงโดยตรงกับความซับซ้อนที่แท้จริงของการจัดเรียงดังกล่าว

อีกตัวอย่างที่สำคัญของปัญหานี้คือปัญหาต่าง ๆ ในการจับคู่รูปแบบจุดมีเวลาทำงานที่ต้มลงไปเพื่อประมาณปริมาณเช่นจำนวนระยะทางซ้ำ ๆ ในชุดจุดและอื่น ๆ


1

ไม่แน่ใจว่านี่คือสิ่งที่คุณกำลังมองหาหรือไม่ แต่การเปลี่ยนเฟสของปัญหา NP-Complete ขึ้นอยู่กับข้อโต้แย้งที่น่าจะเป็นซึ่งเป็นเพียงรูปแบบการนับอีกรูปแบบหนึ่ง

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

Borgs, Chayes และ Pittelมีลักษณะค่อนข้างสมบูรณ์ในการเปลี่ยนเฟสของปัญหาการแบ่งพาร์ติชันแบบสุ่ม (Uniform) และดังนั้นจึงมีวิธีการแก้ปัญหาจำนวนหนึ่งที่สามารถคาดหวังสำหรับอินสแตนซ์ที่กำหนด (สุ่ม) ของปัญหาการแบ่งพาร์ติชัน

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