Kendala utama masalah Anda ada dua: membuat grafik 1-terhubung; dan membuatnya dengan koneksi proksimal. Jawaban Philip, meski agak berharga, tidak mengatasi semua kendala masalah Anda
Idealnya, lubang cacing tidak boleh melebihi panjang maksimum dan jika memungkinkan, lubang cacing tidak boleh saling bersilangan.
Ketika Anda secara naif menghubungkan titik-titik dalam cloud, Anda menghadapi risiko (dan yang tinggi, pada saat itu) dari kondisi-kondisi ini yang tidak terpenuhi.
Jadi, Anda lihat, masalahnya bukan konektivitas yang terlalu dekat dengan koneksi itu. Itu sepele untuk menghubungkan setiap node dalam grafik ke setiap node lain, tetapi menghubungkan hanya untuk mereka yang terdekat sambil mempertahankan 1-keterhubungan dari keseluruhan grafik sedikit lebih rumit.
Inilah yang menciptakan triangulasi Delaunay , dalam n dimensi. Alasan pertama untuk menggunakan triangulasi Delaunay adalah karena memenuhi kedua hal ini secara implisit. Alasan kedua adalah bahwa jauh lebih mudah untuk bekerja mundur dari grafik seperti itu (mengurangi tepi dan simpul yang tidak Anda inginkan), daripada mencoba membuatnya dengan cara lain.
- Buat cloud titik penuh Anda secara acak.
- Delaunay-triangulasi itu.
- Bangun grafik (koneksi titik). Dalam hal ini, Anda dapat menghasilkan seluruh grafik (setiap bintang) terlebih dahulu, dan kemudian memperoleh grafik sebagai anak di bawah umur yang mewakili daerah yang terhubung dengan wormhole, saat melakukan langkah 4. Atau Anda dapat bekerja sebaliknya, menghasilkan hanya wilayah yang terhubung dengan wormhole pertama sebagai node supergraph, dan kemudian dalam fase kedua, menghasilkan bintang-bintang individu dalam volume yang mengikat daerah tersebut (untuk ini saya akan menurunkan grafik triangulasi Delaunay ganda - diagram Voronoi dalam 3 dimensi) sebagai subgraph. Sekarang Anda memiliki kluster bintang yang terhubung secara proksimal, dan semua kluster terhubung oleh lubang cacing yang lebih jarang: topologi dan topografi Anda masuk akal bagi pemain.
- Terapkan metode cerdas untuk membentuk super dan subgraf, tergantung pada bagaimana Anda memilih untuk memperlakukannya di langkah 3.
Sangat penting untuk melihat bahwa ini adalah proses hierarkis. Penawaran tingkat pertama dengan konektivitas wormhole; penawaran kedua dengan jarak mungkin dapat dilalui menggunakan pengandar kapal standar. Anda dapat menerapkan Delaunay di satu atau kedua level untuk memenuhi kendala Anda.
Melakukan hal ini secara topologis murni akan meninggalkan Anda dengan lubang cacing yang tidak masuk akal, karena mereka mungkin menghubungkan satu sisi galaksi ke yang lain, terlepas dari kepadatan bintang yang tinggi di antara beween (dan mungkin bahkan jatuh pada rute langsung lubang cacing). Topologi bukan topografi; yang terakhir adalah pertimbangan atas dan di atas yang pertama. Anda prihatin dengan kedekatan dan dengan demikian topografi.