Saya melihat bagaimana jarak Euclidean minimum yang diharapkan antara titik-titik seragam acak dan titik asal berubah saat kami meningkatkan kepadatan titik-titik acak ( titik per unit persegi ) di sekitar titik asal. Saya telah berhasil menemukan hubungan antara keduanya yang digambarkan sebagai berikut:
Saya datang dengan ini dengan menjalankan beberapa simulasi Monte Carlo di R dan pas kurva secara manual (kode di bawah).
Pertanyaan saya adalah : dapatkah saya memperoleh hasil ini secara teoritis daripada melalui eksperimen?
#Stack Overflow example
library(magrittr)
library(ggplot2)
#---------
#FUNCTIONS
#---------
#gen random points within a given radius and given density
gen_circle_points <- function(radius, density) {
#round radius up then generate points in square with side length = 2*radius
c_radius <- ceiling(radius)
coords <- data.frame(
x = runif((2 * c_radius) ^ 2 * density, -c_radius, c_radius),
y = runif((2 * c_radius) ^ 2 * density, -c_radius, c_radius)
)
return(coords[sqrt(coords$x ^ 2 + coords$y ^ 2) <= radius, ])#filter in circle
}
#Example plot
plot(gen_circle_points(radius = 1,density = 200)) #200 points around origin
points(0,0, col="red",pch=19) #colour origin
#return euclidean distances of points generated by gen_circle_points()
calculate_distances <- function(circle_points) {
return(sqrt(circle_points$x ^ 2 + circle_points$y ^ 2))
}
#find the smallest distance from output of calculate_distances()
calculate_min_value <- function(distances) {
return(min(distances))
}
#Try a range of values
density_values <- c(1:100)
expected_min_from_density <- sapply(density_values, function(density) {
#simulate each density value 1000 times and take an average as estimate for
#expected minimum distance
sapply(1:1000, function(i) {
gen_circle_points(radius=1, density=density) %>%
calculate_distances() %>%
calculate_min_value()
}) %>% mean()
})
results <- data.frame(density_values, expected_min_from_density)
#fit based off exploration
theoretical_fit <- data.frame(density = density_values,
fit = 1 / (sqrt(density_values) * 2))
#plot monte carlo (black) and fit (red dashed)
ggplot(results, aes(x = density_values, y = expected_min_from_density)) +
geom_line() +
geom_line(
data = theoretical_fit,
aes(x = density, y = fit),
color = "red",
linetype = 2
)
r
expected-value
monte-carlo
uniform
minimum
Michael Bird
sumber
sumber
Jawaban:
Pertimbangkan jarak ke asal variabel acak yang didistribusikan secara independen yang memiliki distribusi seragam di alun-alunn (Xsaya,Ysaya) [ - 1 , 1]2.
Menulis untuk jarak kuadrat, geometri Euclidean menunjukkan kepada kita bahwaR2saya=X2saya+Y2saya
sementara (dengan sedikit lebih banyak pekerjaan)
Bersama-sama ini menentukan fungsi distribusi umum untuk semuaF Rsaya.
Karena titik independen, begitu juga jarak mana fungsi survival adalahn Rsaya, min (Rsaya)
menyiratkan jarak terpendek rata-rata adalah
Untuk hampir semua area dalam integral ini mendekati jadi kami dapat memperkirakannya sebagain ≫ 1 , 0 ,
Kesalahan tidak lebih besar dari bagian integral yang dihilangkan, yang pada gilirannya tidak lebih besar dari
yang jelas menurun secara eksponensial dengann .
Kami mungkin akan memperkirakan integrand sebagai
Hingga konstanta normalisasi, ini adalah fungsi kerapatan distribusi Normal dengan rata-rata dan varians Konstanta normalisasi yang hilang adalah0 σ2= 2 / ( n π) .
Oleh karena itu, memperluas integral dari hingga (yang menambahkan kesalahan sebanding dengan ),1 ∞ e- n
Dalam proses memperoleh perkiraan ini tiga kesalahan dibuat. Secara kolektif mereka paling banyak memesan kesalahan terjadi ketika mendekati oleh Gaussian.n- 1, Sn( r )
Gambar ini memplot kali perbedaan antara dan kali jarak terpendek rata-rata yang diamati dalam set data simulasi terpisah untuk setiap Karena berkurang ketika bertambah, ini adalah bukti bahwa kesalahannya adalahn 1 n--√ 105 n . n o (n- 1/n--√) = o (n- 3 / 2) .
Akhirnya, faktor dalam pertanyaan berasal dari ukuran kuadrat:1 / 2 kepadatan adalah jumlah titik per satuan luas dan kuadrat memiliki luas , dari manan , [ - 1 , 1]2 4
Ini adalah
R
kode untuk simulasi:sumber