2011-10-16 7 views
8

मैं एक एल्गोरिथ्म है कि क्या इस छवि में है की तरह कुछ उत्पन्न कर सकते हैं के लिए देख रहा हूँ:मैं एक यादृच्छिक पथ कैसे बना सकता हूं?

enter image description here

मैं लेकिन शराबी की पैदल दूरी पर एल्गोरिदम के बारे में पढ़ा है वे काफी मैं क्या जरूरत है फिट करने के लिए नहीं है। मुझे यकीन नहीं है कि अगर मैं भारी संशोधित नशे में चलने वाले एल्गोरिदम के साथ जो खोज रहा हूं उसे प्राप्त कर सकता हूं या यदि मुझे किसी अन्य एल्गोरिदम की गड़बड़ी की तलाश करनी चाहिए।

+0

उस छवि का पथ स्वयं को पार नहीं कर रहा है। क्या यह आपके आवेदन के लिए महत्वपूर्ण है? –

+0

@TedHopp हां, यह महत्वपूर्ण है कि पथ स्वयं को पार न करे। – Talon876

+3

जो आप चाहते हैं उसे स्वयं से बचने वाले रैंडो वाक कहा जाता है, जिसे आम तौर पर एसएडब्ल्यू के रूप में संक्षिप्त किया जाता है। इसके लिए Google और आपको कई पीढ़ी के तरीके मिलेंगे, क्योंकि यह भौतिकी, रसायन विज्ञान और जीवविज्ञान में एक अच्छी तरह से अध्ययन और बहुत महत्वपूर्ण मुद्दा है। एडीएन, बहुलक और अन्य घटनाएं इस तरह की चीजों से संबंधित हैं। आसान और कुशल एल्गोरिदम खोजने की अपेक्षा न करें ... –

उत्तर

1

चूंकि आप स्वयं-छेड़छाड़ से बचना चाहते हैं, इसलिए एक यादृच्छिक चलना सही तरीके से करना मुश्किल होगा। आप आसानी से कोने में खुद को पेंट कर सकते हैं। मैं एक लाइन सेगमेंट से शुरू करने का सुझाव दूंगा जो क्षेत्र को पार करता है, फिर बीच में कहीं भी इस लाइन सेगमेंट को विभाजित करता है और लाइन सेगमेंट की लंबाई के अनुपात में कुछ यादृच्छिक राशि से मिडपॉइंट को स्थानांतरित करता है। दो नई लाइन खंडों के लिए इस प्रक्रिया को दोहराएं। यदि आप मिडपॉइंट के साथ समाप्त होते हैं जो मौजूदा लाइन सेगमेंट को पार करने के लिए दो नए लाइन सेगमेंट में से एक का कारण बनता है, तो एक अलग मिडपॉइंट आज़माएं। जब आपके लाइन सेगमेंट कम होते हैं तो रिकर्सन रोकें (हालांकि आप इसे परिभाषित करना चाहते हैं)।