ข้อ จำกัด ที่สำคัญของปัญหาของคุณคือทวีคูณ: การสร้างกราฟที่เชื่อมต่อ 1; และสร้างมันด้วยการเชื่อมต่อที่ใกล้เคียง คำตอบของฟิลิปในขณะที่ค่อนข้างมีคุณค่าไม่ได้ช่วยแก้ปัญหาทั้งหมดของคุณ
ตามหลักการแล้วตัวหนอนไม่ควรยาวเกินความยาวสูงสุดและหากเป็นไปได้ตัวหนอนไม่ควรข้ามกัน
เมื่อคุณเชื่อมต่อจุดต่าง ๆ ในระบบคลาวด์อย่างไร้เดียงสาคุณจะต้องเสี่ยงกับสิ่งเหล่านี้ซึ่งเป็นไปไม่ได้
ดังนั้นคุณจะเห็นว่าปัญหาไม่ได้เกิดจากการเชื่อมต่อหนึ่งเดียวกับการเชื่อมต่อเหล่านั้น มันเป็นเรื่องเล็กน้อยที่จะเชื่อมต่อทุกโหนดในกราฟกับโหนดอื่น ๆ แต่การเชื่อมต่อกับโหนดที่ใกล้เคียงที่สุดที่สุดในขณะที่การรักษา 1-connectedness ของกราฟโดยรวมนั้นค่อนข้างยุ่งยากกว่า
นี่คือสิ่งที่สมการDelaunayสร้างขึ้นในnมิติ เหตุผลแรกที่ใช้ Delaunay triangulation ก็คือมันเติมเต็มทั้งสองอย่างโดยปริยาย เหตุผลที่สองคือมันง่ายกว่ามากที่จะย้อนกลับจากกราฟ (ลบขอบและจุดยอดที่คุณไม่ต้องการ) ได้ง่ายกว่าสร้างด้วยวิธีอื่น
- สร้าง cloud point แบบเต็มของคุณ
- Delaunay-triangulate มัน
- สร้างกราฟ (จุดเชื่อมต่อ) ในสิ่งนี้คุณสามารถสร้างกราฟทั้งหมด (ทุกดาว) ก่อนจากนั้นกราฟที่ได้รับมาจากผู้เยาว์ที่เป็นตัวแทนของภูมิภาคที่เชื่อมต่อหนอนของคุณเมื่อดำเนินการขั้นตอนที่ 4 หรือคุณสามารถทำงานด้วยวิธีอื่น ๆ เพื่อสร้างภูมิภาคที่เชื่อมต่อหนอนเท่านั้น ครั้งแรกเป็นโหนด supergraph จากนั้นในระยะที่สองให้สร้างดาวแต่ละดวงภายในปริมาตรขอบเขตของภูมิภาคเหล่านั้น (สำหรับสิ่งเหล่านี้ฉันจะได้รับกราฟคู่ของ Delaunay triangulation triangulation - แผนภาพ Voronoi ใน 3 มิติ) เป็น subgraphs ตอนนี้คุณมีกระจุกดาวที่เชื่อมต่ออย่างใกล้ชิดและกระจุกดาวทั้งหมดเชื่อมต่อกันด้วยหนอนเจาะยาก: โครงสร้างและภูมิประเทศของคุณเหมาะสมกับผู้เล่น
- ใช้วิธีการที่ชาญฉลาดเพื่อกำหนดรูปร่าง super- และ subgraphs ขึ้นอยู่กับวิธีที่คุณเลือกที่จะปฏิบัติต่อในขั้นตอนที่ 3
สิ่งสำคัญคือต้องดูว่านี่เป็นกระบวนการแบบลำดับชั้น ข้อตกลงระดับแรกกับการเชื่อมต่อหนอน ข้อตกลงครั้งที่สองที่มีระยะทางน่าจะเป็นไปได้โดยใช้ไดรฟ์มาตรฐาน คุณสามารถใช้ Delaunay ได้ที่หนึ่งหรือทั้งสองระดับเพื่อตอบสนองข้อ จำกัด ของคุณ
การทำทอพอโลยีอย่างหมดจดนี้จะทำให้คุณมีรูหนอนที่ไม่เข้าท่าเนื่องจากพวกมันอาจเชื่อมต่อกาแลคซีด้านหนึ่งไปยังอีกด้านหนึ่งแม้ว่าดาวฤกษ์ที่มีความหนาแน่นสูงจะมีความหนาแน่นสูง โทโพโลยีไม่ใช่ภูมิประเทศ หลังคือการพิจารณาซ้ำแล้วซ้ำอีกในอดีต คุณมีความกังวลเกี่ยวกับความใกล้ชิดและภูมิประเทศ