ลดการใช้พื้นที่ของการเชื่อมต่อ st ด้วยหลายรอบหรือไม่


20

สมมติว่ากราฟมีจุดยอดแสดงเป็นสตรีมของขอบแต่อนุญาตให้ผ่านได้หลายครั้งผ่านกระแสn เมตรGnm

Monika Rauch Henzinger, Prabhakar Raghavan และ Sridar Rajagopalanตั้งข้อสังเกตว่ามีความจำเป็นที่จะต้องพิจารณาว่ามีช่องว่างระหว่างจุดสองจุดที่กำหนดในหรือไม่ถ้าอนุญาตผ่านข้อมูล (ดูที่เวอร์ชันรายงานทางเทคนิคด้วย) อย่างไรก็ตามจะไม่มีการจัดทำอัลกอริทึมเพื่อให้บรรลุข้อผูกพันนี้ ฉันคิดว่าอัลกอริทึมที่ดีที่สุดจริงจะใช้เวลาพื้นที่ในแบบจำลองคอมพิวเตอร์ที่สมจริงตั้งแต่หนึ่งที่มีการแยกแยะความแตกต่างจุดที่แตกต่างกันหากไม่สามารถหน่วยความจำดัชนีโดยใช้ตัวชี้ขนาดคงที่G k O ( ( nΩ(n/k)GknO((nlogn)/k)n

เราจะตัดสินใจเลือกการเชื่อมต่อกราฟที่มีผ่านโดยใช้พื้นที่อย่างไรO ( ( nkO((nlogn)/k)

หากอนุญาตให้ส่งผ่านได้เพียงครั้งเดียวข้อมูลอินพุตสามารถจัดเก็บเป็นพาร์ติชันของชุดจุดยอดรวมชุดถ้าขอบถูกมองเห็นระหว่างจุดยอดในชุดต่าง ๆ ที่สอง สิ่งนี้ต้องมีพื้นที่มากที่สุดอย่างชัดเจน คำถามของฉันเกี่ยวกับ : เราจะใช้บัตรผ่านเพิ่มเติมเพื่อลดพื้นที่ที่ต้องการได้อย่างไรk > 1O(nlogn)k>1

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


อัปเดต: แม้แต่สำหรับมันจะมีประโยชน์มากที่จะมีวิธีเก็บเฉพาะจุดยอดหรือมีขอบเขตต่ำกว่าที่แข็งแกร่งกว่าสำหรับค่าคงที่โดยไม่คำนึงถึง ?n / 2 c n c kk=2n/2cnck


วิธีการโดยไม่คำนึงถึง ? ถ้ามันมีขนาดใหญ่มากการเชื่อมต่อแบบ st สามารถแก้ไขได้ในพื้นที่ดังนั้นจึงมีโอกาสสำหรับอัลกอริทึม แต่ตามที่แสดงโดย azotlichid อาจไม่อยู่ในk) O ( บันทึก2 n ) O ( n บันทึกn / k )kO(log2n)O(nlogn/k)
domotorp

โปรดทราบว่าการกำจัด Pass ของ Guha และ McGregor สำหรับอัลกอริธึมแบบสุ่มทำงานในทิศทางตรงกันข้ามโดยใช้พื้นที่มากขึ้นเพื่ออนุญาตให้ผ่านน้อยกว่า (แม้ว่าพื้นที่เพิ่มเติมจะมีขนาดใหญ่หากข้อผิดพลาดที่ต้องการมีขนาดเล็ก) คำถามนี้ถามว่าด้วยการใช้บัตรผ่านมากขึ้นใครสามารถลดการใช้พื้นที่
András Salamon

คำตอบ:


8

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


1
M. Tompa อัลกอริธึมการปิด transitive ที่คุ้นเคยสองอันซึ่งไม่ยอมรับเวลาพหุนามการใช้พื้นที่ sublinear SIAM J. Comput 11 (1), 130–137 dx.doi.org/10.1137/0211010
András Salamon

กระดาษนี้ให้ "อัลกอริทึมสำหรับการเชื่อมต่อเซนต์ที่ทำงานในพร้อมกันพื้นที่ย่อยเชิงเส้นและเวลาพหุนาม"

4

นี่ไม่ใช่คำตอบ แต่ฉันแค่อยากจะชี้ให้เห็นว่าถ้าคุณสามารถแก้ปัญหานี้สำหรับคุณก็จะแก้ปัญหาการเชื่อมต่อ st ในพื้นที่และเวลา ( ซึ่งในกรณีออฟไลน์คุณสามารถทำได้ด้วยความน่าจะเป็น> 1/2 โดยการเดินแบบสุ่ม แต่ดูเหมือนยากขึ้นเล็กน้อยเมื่อขอบมาจากสตรีม) คำถามที่น่าสนใจมาก IMOO ( บันทึกn ) O ( n m )k=Θ(n)O(logn)O(nm)


3

k


ขอบคุณสำหรับตัวชี้นี่เป็นกระดาษที่น่าสนใจ โปรเซสเซอร์มีการเข้าถึงโครงสร้างข้อมูลที่มีขนาดใหญ่เท่ากับกราฟอย่างน้อยดังนั้นจึงไม่ช่วยลดการใช้พื้นที่ มันจะเป็นเรื่องที่น่าสนใจหากมีวิธีการลดการใช้พื้นที่โดยใช้ประโยชน์จากจำนวนรอบเช่นเดียวกับจำนวนตัวประมวลผล
András Salamon

2

ยังไม่มีคำตอบอื่น: มีเอกสารบางอย่างเกี่ยวกับอัลกอริทึมสไตล์ mapreduce ปฏิบัติการบนกราฟขนาดใหญ่ เป้าหมายคือเพื่อให้ได้พื้นที่ว่างต่อเครื่อง o (m) สำหรับกราฟที่หนาแน่น แต่โดยทั่วไปแล้วต้องการพื้นที่ O (n) ต่อเครื่อง

theory.stanford.edu/~sergei/papers/soda10-mrc.pdf http://theory.stanford.edu/~sergei/papers/spaa11-matchings.pdf


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