Metode sederhana untuk memindahkan lokasi dalam annuli seperti itu mengeksploitasi representasi grid dari jarak ke batas traktat. Dimulai dengan representasi poligonal dari traktus Sensus (yang biasa),
Konversikan itu menjadi batas poligon (lapisan polyline).
Hitung grid jarak Euclidean dengan batas.
Ekstrak jarak Euclidean di lokasi yang diberikan.
Pindahkan setiap lokasi dalam rentang yang diberikan oleh jarak - yang, menurut definisi, adalah maksimum ke batas.
Masing-masing biasanya hanya memerlukan satu perintah dengan GIS, membuat seluruh urutan mudah otomatis dan mudah dilakukan secara manual. Ini adalah perintah yang efisien , karena mereka tidak memerlukan membangun buffer untuk setiap titik (yang biasanya membuat beberapa lusin hingga hampir seribu poin untuk menggambarkan cincin, atau annulus ). Tidak ada uji coba pencarian atau acak yang diperlukan, baik: titik-titik secara langsung dipindahkan dengan jumlah yang dijamin untuk meninggalkan mereka dalam traktus Sensus asli mereka.
Sebagai contoh, saya memindahkan 172.902 lokasi dalam 47 traktat ke arah acak dengan perpindahan yang terdistribusi secara merata antara setengah jarak dan jarak penuh ke batas. Berikut adalah bagian dari satu risalah sebelum pindah:
(kotak kuning tandai lokasi) dan setelah pindah:
(sekarang kotak abu-abu menandai lokasi baru). Operasi total hanya membutuhkan satu atau dua menit (menggunakan GIS yang sudah usang :-).
Dengan membandingkan angka-angka ini dengan seksama, Anda dapat melihatnya
Poin yang sekarang dekat dengan batas (seperti dekat dua danau yang ditampilkan sebagai "lubang" putih pada gambar-gambar ini) harus selalu dekat dengan batas.
Poin yang jauh dari batas cenderung bergerak jauh.
Akibatnya, suatu titik yang dekat dengan batas kemungkinan berasal (tetapi tidak tentu) berasal sangat dekat, sedangkan titik yang jauh dari batas kemungkinan berasal dari tempat lain yang jauh dari batas. Kedua kecenderungan ini jauh dari acak: mereka dapat (cukup mudah) dieksploitasi oleh seseorang yang ingin menembus privasi yang ingin dicapai oleh gerakan ini.
Metode yang lebih baik akan membuat koneksi antara lokasi akhir dan awal lebih renggang dan lebih acak. Paling tidak, poin harus dipindahkan dalam lingkungan yang cukup besar daripada dalam lingkungan dengan ukuran yang bervariasi (dan mungkin kecil secara sewenang-wenang). Gerakan seperti itu tidak mudah dilakukan dengan kisi-kisi, karena biasanya mereka memerlukan beberapa percobaan dan kesalahan: Anda menghasilkan banyak titik acak dalam lingkungan dari setiap titik asli dan memilih yang pertama yang terletak di dalam saluran Sensus yang sama. Itu adalah loop yang melibatkan (1) gerakan acak dan (2) penyelidikan point-in-polygon. Kedua operasi cepat, tetapi ini membutuhkan sedikit pemrograman untuk mengimplementasikan loop.
(Dalam komentar pada pertanyaan, saya memberikan tautan ke beberapa studi tentang metode yang digunakan untuk menyamarkan data lokasi untuk tujuan privasi.)