सबसे तेज़ मार्ग निर्धारित करने के लिए एल्गोरिथम?


17

मान लीजिए कि हम 1 से 5 तक जा रहे हैं। सबसे छोटा मार्ग 1-4-3-5 (कुल: 60 किमी) होगा।

ग्राफ़

हम ऐसा करने के लिए दिज्क्स्ट्रा के एल्गोरिथ्म का उपयोग कर सकते हैं ।

अब समस्या यह है कि सबसे छोटा मार्ग हमेशा ट्रैफ़िक जाम या अन्य कारकों के कारण सबसे तेज़ नहीं होता है।

उदाहरण के लिए:

  • 1-2 को अक्सर ट्रैफिक जाम होने के लिए जाना जाता है, इसलिए इसे टाला जाना चाहिए।
  • अचानक एक कार दुर्घटना 4-3 के साथ होती है, इसलिए इसे भी बचा जाना चाहिए।
  • आदि...

इसलिए शायद हम ट्रैफिक जाम / दुर्घटनाओं की वजह से मार्ग 1-4-5 पर गति कर सकते हैं, इसलिए यह 5 तेजी से पहुंचेगा।

खैर यह सामान्य विचार है, और मैंने अभी तक अधिक विवरण के बारे में नहीं सोचा है।

क्या इस समस्या को हल करने के लिए कोई एल्गोरिथ्म है?


3
क्या यह होमवर्क है? क्या यह सिर्फ भारित ग्राफ को ट्रेस करने के लिए en.wikipedia.org/wiki/Travelling_salesman_problem नहीं है ?
स्टुपेरयूज़र

9
@StuperUser: नहीं, TSP डुप्लिकेट के बिना सभी नोड्स का एक सर्किट है। उदाहरण के लिए, नमूना मामले में, नोड 2 को हिट करने की कोई आवश्यकता नहीं है।
डेविड थॉर्नले

2
@DavidThornley मैं देख रहा हूं। तो दिक्जस्त्र एक भारित ग्राफ पर सबसे छोटा मार्ग है? और टीएसपी हर नोड पर दौरा कर रहा है?
स्टुपरयूज़र

1
@ स्टॉपर: सबसे छोटा ट्रैवर्सल, यस
ब्लूराजा - डैनी पफ्लुगुफ्ट

2
@StuperUser, सिर्फ FYI, TSP एक मजबूत एनपी-पूर्ण समस्या है जिसका कोई समाधान नहीं है जिसे बहुपद समय में चलाया जा सकता है। ... तो अब आप जान गए।
रिवलॉक

जवाबों:


5

जब से आप चित्र में भीड़ लाए हैं, सावधान रहें कि आप ब्रेस के विरोधाभास को पकड़ नहीं सकते हैं । यदि हर कोई इष्टतम रास्ता चुनता है, तो इससे सभी के लिए यात्रा का समय खराब होता है।


49

यः द्विजस्तत्र

दिज्क्स्त्र इस स्थिति के लिए भी काम करता है।
आप केवल प्रत्येक चाप के वजन के रूप में दूरी के बजाय समय का उपयोग करते हैं।


9
आमतौर पर दिज्क्स्त्र में 'दूरी' को सभी प्रकार की चीजों, लागत / टोल, फ्रीवे वरीयता, गति सीमा के लिए भारित किया जाएगा - केवल दूरी का उपयोग करना सबसे सरल नीव दृष्टिकोण है। यह वह है जो एल्गोरिथ्म को इतना चालाक बनाता है
मार्टिन बेकेट

6
यद्यपि डेज्स्कट्रेट करेगा, मैं आम तौर पर किसी भी गंभीर पाथफाइंडिंग कार्य के लिए A * चुनूंगा; उत्तराधिकारियों से बहुत मदद मिलेगी।
मिरिकिया चिरायु

6
लिंक: एक * खोज एल्गोरिथ्म । यह दिज्क्स्त्र की विधि का विस्तार है।
mgkrebbs

जब तक एक लागू हेयुरिस्टिक है, ए * दिज्क्स्ट्रा (प्रदर्शन के मामले में) से बेहतर होने जा रहा है।
बुमज़ैक

एक स्वीकार्य आश्रित व्यक्ति को यहाँ खोजने के लिए कुछ हद तक चुनौतीपूर्ण होगा क्योंकि हम कई कारकों (जैसे ट्रैफ़िक जाम) को ध्यान में रखते हैं।
pwny

16

हाँ। डीजकस्ट्रा का एल्गोरिथ्म इस समस्या को हल करेगा।

आपके मामले में समस्या यह है कि आप स्वचालित रूप से छोटी दूरी की यात्रा की दूरी के बराबर है, जब वास्तव में यह अधिक उचित रूप से एक मार्ग लेने के COST के बराबर है।

यदि किसी एक मार्ग में एक मार्ग है तो उसका COST अधिक होना चाहिए, और एल्गोरिथ्म अभी भी लागू होता है।


क्षमा करें, यदि मैंने सही शब्द का उपयोग नहीं किया है। मेरा मतलब है कि 'सबसे सुविधाजनक मार्ग' (सबसे न्यूनतम लागत)
anta40

11

आपको बस अपनी दूरी को नोड्स के बीच के समय के साथ बदलने में सक्षम होना चाहिए और इसे उसी तरह से हल करना चाहिए।


10

डिज्कस्ट्रा

जैसा कि पहले कहा गया था, यह न केवल सबसे कम दूरी के लिए उपयोग किया जाता है। मेरा मानना ​​है कि यह एनीमेशन दिज्क्स्त्र की "शक्ति" (एक बेहतर शब्द की कमी के लिए) की अच्छी समझ देता है:

डिज्कस्ट्रा

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.