Các hạn chế chính của vấn đề của bạn là gấp đôi: tạo biểu đồ 1 kết nối; và tạo ra nó với các kết nối gần. Câu trả lời của Philip, trong khi hơi có giá trị, không giải quyết được tất cả các ràng buộc của vấn đề của bạn
Lý tưởng nhất là một lỗ giun không được vượt quá chiều dài tối đa và nếu có thể, các lỗ giun không nên giao nhau.
Khi bạn kết nối một cách ngây thơ các điểm trong một đám mây, bạn sẽ gặp rủi ro (và ở mức cao, tại đó) các điều kiện này không được đáp ứng.
Vì vậy, bạn thấy, vấn đề không phải là một trong những kết nối như là một sự gần gũi trên các kết nối đó. Việc kết nối mọi nút trong biểu đồ với mọi nút khác là chuyện nhỏ, nhưng chỉ kết nối với các nút gần nhất trong khi duy trì kết nối 1 của biểu đồ tổng thể thì khó hơn một chút.
Đây là những gì một tam giác Delaunay tạo ra, trong n chiều. Lý do đầu tiên để sử dụng tam giác Delaunay là nó hoàn thành cả hai điều này. Lý do thứ hai là việc làm ngược lại từ biểu đồ như vậy dễ dàng hơn nhiều (trừ các cạnh và đỉnh bạn không muốn), hơn là cố gắng tạo nó theo những cách khác.
- Tạo ngẫu nhiên đám mây điểm đầy đủ của bạn.
- Delaunay-tam giác nó.
- Xây dựng biểu đồ (kết nối các điểm). Trong trường hợp này, trước tiên bạn có thể tạo toàn bộ biểu đồ (mọi ngôi sao) và sau đó lấy biểu đồ làm vị thành niên đại diện cho các vùng được kết nối với lỗ sâu của bạn, khi thực hiện bước 4. Ngoài ra, bạn có thể làm việc theo cách khác, chỉ tạo các vùng được kết nối với lỗ sâu đầu tiên là các nút siêu âm, và sau đó trong giai đoạn thứ hai, tạo ra các ngôi sao riêng lẻ trong các khối giới hạn của các vùng đó (đối với các nút này tôi sẽ lấy biểu đồ kép của tam giác Delaunay - biểu đồ Voronoi theo 3 chiều) dưới dạng sơ đồ. Bây giờ bạn có các cụm sao được kết nối gần đúng và tất cả các cụm được kết nối bằng các lỗ sâu hiếm hơn: cấu trúc liên kết và địa hình của bạn có ý nghĩa với người chơi.
- Áp dụng các phương pháp thông minh để định hình các siêu đồ thị và đồ thị con, tùy thuộc vào cách bạn đã chọn để xử lý nó trong bước 3.
Điều quan trọng là phải thấy rằng đây là một quá trình phân cấp. Cấp độ đầu tiên liên quan đến kết nối wormhole; giao dịch thứ hai với khoảng cách có lẽ có thể đi qua bằng cách sử dụng một ổ đĩa tiêu chuẩn. Bạn có thể áp dụng Delaunay ở một hoặc cả hai cấp để đáp ứng các ràng buộc của bạn.
Làm điều này hoàn toàn theo cấu trúc liên kết sẽ khiến bạn có các lỗ sâu không có ý nghĩa, vì chúng có thể kết nối một bên của thiên hà với một bên khác, mặc dù có mật độ cao của các ngôi sao (và thậm chí có thể rơi trên tuyến đường trực tiếp của lỗ giun). Cấu trúc không phải là địa hình; cái sau là một sự cân nhắc hơn và trước cái trước. Bạn quan tâm đến sự gần gũi và do đó địa hình.