2009-05-28 14 views
6

मैं स्पष्ट मानचित्र पैकमैन गेम के लिए एक अच्छा और तेज़ ह्युरिस्टिक के साथ आने की कोशिश कर रहा हूं।ए * ह्युरिस्टिक: एकाधिक बिंदुओं में एक बार गुजरने वाला सबसे छोटा रास्ता

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

क्या कुछ बेहतर है?

एक और तरीके से कह रहा है: मेरी कलम उठाए बिना कई बिंदुओं को जोड़ने की न्यूनतम लागत क्या है?

धन्यवाद

उत्तर

4

एक सभी जोड़े-कम से कम-पथ एल्गोरिथ्म चल रहा है और भोजन के साथ कोने की पहचान करने के बाद, इस traveling salesman problem हो जाता है। आप इसे कुशलता से हल नहीं कर सकते हैं, लेकिन आप बहुपद समय में समाधान के लिए मनमाने ढंग से अच्छे अनुमान लगा सकते हैं। आप संभवतः एक अनुमान का उपयोग करना चाहेंगे जब तक कि आप सबकुछ पूर्व-गणना नहीं कर सकते। यदि आप चीजों की पूर्व-गणना कर सकते हैं (या अन्यथा गारंटी देते हैं कि आपके पास सटीक समाधान खोजने के लिए पर्याप्त समय है), तो एक बार जब आप सभी जोड़े-सबसे कम-पथ प्राप्त कर लेंगे, तो आप आसानी से न्यूनतम संभव चलने की लंबाई आसानी से पा सकते हैं आदेश के क्रमिक क्रम जिसमें आप खाद्य टुकड़े खाते हैं। इस ब्रूट-फोर्स विधि को शायद कुछ हद तक बेहतर किया जा सकता है जब दो खाद्य टुकड़ों के बीच सबसे छोटा रास्ता दूसरे खाद्य टुकड़े को पार करता है।

+0

और टीएसपी के समाधान का अनुमान लगाने का सबसे आसान तरीका क्या होगा? – Chetan

+0

उपरोक्त मेरे उत्तर में एक गलती है: बाध्य-त्रुटि अनुमान लगाने के लिए, आपको बाधाओं को थोड़ा बदलना होगा। सभी जोड़े सबसे कम पथ चरण गारंटी देता है कि दूरी मीट्रिक है (संभावित रूप से आप एक बिंदु पर फिर से विचार करने की कीमत पर), जो आपको न्यूनतम 150% के भीतर प्राप्त करने के लिए क्रिस्टोफाइड्स के एल्गोरिदम का उपयोग करने की अनुमति देता है। यदि आप आगे गारंटी दे सकते हैं कि दूरी यूक्लिडियन (यानी सामान्य ज्यामिति में सीधी रेखा दूरी) है, तो आप मनमाने ढंग से अच्छे अनुमान लगा सकते हैं, लेकिन आमतौर पर वे अतिरिक्त परेशानी के लायक नहीं होते हैं। अधिक के लिए विकिपीडिया लेख देखें। – user57368

संबंधित मुद्दे