मैं एक मार्ग नियोजन प्रणाली का निर्माण कर रहा हूं, लेकिन मुझे अभी भी तय करना है कि मैं किस रूटिंग इंजन का उपयोग करूंगा। अब तक मैंने pgrouting और neo4j पाया है।
मेरे पास पोस्टग्रेजिकल / पोस्टगिस डेटाबेस (एक आकृति से आयातित) में मेरा मार्ग नेटवर्क है। मैंने नोड्स निकालने के लिए प्रश्न किए हैं (उन तरीकों के समापन बिंदु जहां आपको निर्णय लेना है कि किस दिशा में जाना है या मृत समाप्त होता है) और किनारों को निकालने के लिए (अक्सर कई लगातार तरीकों से बनाया गया है)। मेरे सभी किनारे द्विदिश हैं।
मेरा मुख्य लक्ष्य एक ए-स्टार एल्गोरिथ्म का उपयोग करके इस नेटवर्क पर मार्गों की गणना करना है जहां दूरी = लागत।
मेरी भावना मुझे बताती है कि एक ग्राफ डेटाबेस जैसे कि neo4j जाने का रास्ता है (जैसा कि यह सिर्फ इस उद्देश्य के लिए बनाया गया है), लेकिन वे डिफ़ॉल्ट रूप से ए-स्टार का समर्थन नहीं करते हैं और यह भी कि ज्यामिति की कोई वास्तविक भावना नहीं है । यह नक्शे के बजाय सामाजिक नेटवर्क के लिए बेहतर अनुकूल लगता है।
- क्या मेरी जरूरतों को पूरा करने में मदद मिलेगी?
- क्या यह फ्लाई क्वेरीज़ (+ -2000 नोड्स, + -4000 किनारों) के लिए पर्याप्त तेज़ है? आम तौर पर यह ए-स्टार के लिए कुछ एमएस होगा, लेकिन मैं एसक्यूएल में इस कार्यान्वयन के बारे में अनिश्चित हूं।
- क्या ए-स्टार पियर्सिंग मुझे नोड्स और किनारों की सूची देता है?
- अधिकांश उदाहरणों में, मैं देख रहा हूँ कि मैं सूचना के लिए मार्ग की गणना के बाद आमतौर पर आदेशों की एक सूची देता हूं (जैसे "एट एक्स टर्न लेफ्ट, आदि")। क्या pgrout इसका उत्पादन करता है या यह किसी अन्य सिस्टम से है?
उम्मीद है कि कोई मुझे कुछ जानकारी दे सकता है कि किस सिस्टम को चुनना है। Neo4j, pgrout, या कुछ अन्य प्रणाली।