अगर मैं आपको सही तरीके से समझता हूं, तो केवल कुछ छोटी मात्रा में एन-डायमेंशनल स्पेस आपकी बाधाओं को पूरा करता है।
आपका पहला अवरोध इसे एक हाइपरस्फियर के आंतरिक हिस्से में बाधा डालता है, जो मुझे comp.graphics.algorithms की याद दिलाता है " सामान्य क्षेत्र के समान अंक" और 3-डी यूनिट बॉल में समान रूप से वितरित अंक कैसे उत्पन्न करें?
दूसरा बाधा हाइपरस्फेयर से थोड़ा बाहर खिसकता है, और दूसरी बाधाएं आगे की मात्रा में दूर हो जाती हैं जो आपके अवरोधों को पूरा करती हैं।
मुझे लगता है कि सबसे सरल बात यह है कि अक्सर पूछे जाने वाले दृष्टिकोणों में से एक है:
- कुछ मनमाने ढंग से एक्सिस-संरेखित बाउंडिंग बॉक्स चुनें जो हमें यकीन है कि पूरी मात्रा में हैं। इस स्थिति में, -c <a_1 <c, -c <a_2 <c, ... -c <a_n <c में संपूर्ण विवश आयतन सम्मिलित है, क्योंकि इसमें पहली बाधा द्वारा वर्णित हाइपरस्फेयर सम्मिलित है, और अन्य बाधाएं सम्मिलित रहती हैं। उस मात्रा पर दूर।
- एल्गोरिथ्म समान रूप से उस बाउंडिंग बॉक्स में पॉइंट करता है। इस स्थिति में, एल्गोरिथ्म स्वतंत्र रूप से -c से + c तक के कुछ समान रूप से वितरित यादृच्छिक संख्या के लिए एक उम्मीदवार वेक्टर के प्रत्येक समन्वय को निर्धारित करता है। (मुझे लगता है कि आप इस मात्रा के बराबर घनत्व के साथ वितरित किए गए अंक चाहते हैं। मुझे लगता है कि आप एल्गोरिथ्म को कुछ या सभी निर्देशांक एक पॉइसन वितरण या कुछ अन्य गैर-समान वितरण के साथ चुन सकते हैं, अगर आपके पास ऐसा करने का कोई कारण था)।
- एक बार जब आपके पास एक उम्मीदवार वेक्टर हो, तो प्रत्येक बाधा की जांच करें। यदि यह उनमें से किसी को भी विफल करता है, तो वापस जाएं और एक अन्य बिंदु चुनें।
- एक बार जब आपके पास एक उम्मीदवार वेक्टर होता है, तो इसे बाद में उपयोग के लिए कहीं स्टोर करें।
- यदि आपके पास पर्याप्त संचित वैक्टर नहीं हैं, तो वापस जाएं और एक और उत्पन्न करने का प्रयास करें।
पर्याप्त रूप से उच्च-गुणवत्ता वाले यादृच्छिक संख्या जनरेटर के साथ, यह आपको संग्रहीत निर्देशांक का एक सेट देता है जो आपके मानदंड (अपेक्षित) एक समान घनत्व के साथ मिलते हैं।
काश, अगर आपकी अपेक्षाकृत उच्च आयामीता n है (यानी, यदि आप प्रत्येक वैक्टर को निर्देशांक की अपेक्षाकृत लंबी सूची से बाहर का निर्माण करते हैं), तो खुदा हुआ क्षेत्र (आपकी सीटी-डाउन मात्रा बहुत कम) कुल मात्रा के आश्चर्यजनक रूप से छोटा हिस्सा है कुल बाउंडिंग बॉक्स, इसलिए इसे कई पुनरावृत्तियों को निष्पादित करने की आवश्यकता हो सकती है, उनमें से अधिकांश आपके विवश क्षेत्र के बाहर एक बिंदु खोजने से पहले, आपके विवश क्षेत्र के बाहर अस्वीकार किए गए बिंदुओं को उत्पन्न करते हैं। चूंकि इन दिनों कंप्यूटर बहुत तेज हैं, क्या यह काफी तेज होगा?