উত্তর:
এই সমস্যার আনুষ্ঠানিক সমাধানের জন্য প্রথমে a এর যথাযথ সংজ্ঞা প্রয়োজন
" বিতরণ সীমাবদ্ধতার অধীন যা "
প্রাকৃতিক উপায়ে শর্তসাপেক্ষে । এবং এই শর্তসাপেক্ষে ক্ষেত্রে প্রয়োগ করতে । যদি আমরা পোলার স্থানাঙ্ক ব্যবহার করি , তবে রূপান্তরটির সুতরাং বিতরণের শর্তসাপেক্ষ ঘনত্ব
উপসংহার: এই ঘনত্বটি জেকবীয়দের কারণে ইউনিট গোলকের একটি বিন্দুতে সাধারণ ঘনত্বটি কেবল প্রয়োগ করার থেকে পৃথক।
দ্বিতীয় পদক্ষেপটি লক্ষ্য ঘনত্ব এবং প্যারামিটার স্পেস অন্বেষণ করতে একটি মার্কোভ চেইন মন্টি কার্লো অ্যালগরিদম ডিজাইন করুন । আমার প্রথম প্রয়াস গিবস স্যাম্পলারে হবে, এটি নিকটতম গোলকের দিকে অবস্থিত বিন্দুতে , এটি হ'ল, এবং মেট্রোপলিস-ইন-গিবস পদ্ধতিতে এক সময়ে একটি কোণকে এগিয়ে নিয়ে যাওয়া:
পদক্ষেপগুলির গ্রহণযোগ্যতার হারের বিপরীতে , , , স্কেলগুলি এর আদর্শ যেতে পারে ।
এবং জন্য ডিফল্ট মান সহ উপরের চিত্রিত করার জন্য এখানে একটি আর কোড রয়েছে :
library(mvtnorm)
d=4
target=function(the,mu=1:d,sigma=diag(1/(1:d))){
carte=cos(the[1])
for (i in 2:(d-1))
carte=c(carte,prod(sin(the[1:(i-1)]))*cos(the[i]))
carte=c(carte,prod(sin(the[1:(d-1)])))
prod(sin(the)^((d-2):0))*dmvnorm(carte,mean=mu,sigma=sigma)}
#Gibbs
T=1e4
#starting point
mu=(1:d)
mup=mu/sqrt(sum(mu^2))
mut=acos(mup[1])
for (i in 2:(d-1))
mut=c(mut,acos(mup[i]/prod(sin(mut))))
thes=matrix(mut,nrow=T,ncol=d-1,byrow=TRUE)
delta=rep(pi/2,d-1) #scale
past=target(thes[1,]) #current target
for (t in 2:T){
thes[t,]=thes[t-1,]
for (j in 1:(d-1)){
prop=thes[t,]
prop[j]=prop[j]+runif(1,-delta[j],delta[j])
prop[j]=prop[j]%%(2*pi-(j<d-1)*pi)
prof=target(prop)
if (runif(1)<prof/past){
past=prof;thes[t,]=prop}
}
}
কঠোরভাবে সম্ভব নয় যেহেতু একটি (ধারাবাহিক) এলোমেলো পরিবর্তনশীল। আপনি যদি এটির 1 এর বৈচিত্র রাখতে চান, তবে (যেখানে টিলডের অর্থ আমরা বৈকল্পিক অনুমান করি), তারপরে আপনাকে তার বৈচিত্রটি be হওয়া দরকার । যাইহোক, এই চাহিদাটি সাথে দ্বন্দ্ব করতে পারে । অর্থাৎ এ ভ্যারিয়েন্স আপনার যা দরকার তির্যক সঙ্গে নমুনা পেতে সমান হতে ।
নমুনা ফর্ম সাধারণভাবে এই ডিস্ট্রিবিউশন করার জন্য, আপনাকে IID মান লম্ব সংখ্যাবৃদ্ধি দ্বারা তৈরি করতে পারেন, এবং তারপর , বর্গমূল , এবং তারপর উপায়ে যোগ ।