हाइब्रिड कलन विधि: Difference between revisions

From Vigyanwiki
(Created page with "{{Unreferenced|date=May 2014}} हाइब्रिड कलन विधि एक एल्गोरिदम है जो दो या दो से अधिक...")
 
 
(15 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{Unreferenced|date=May 2014}}
'''हाइब्रिड [[कलन विधि]]''' एक कलन विधि है जो किसी समस्या को हल करने के लिए दो या अधिक अन्य कलन विधियो को संयोजित करता है, या तो डेटा की कुछ विशेषता के आधार पर एक का चयन करता है, या कलन विधि के प्रवाह के दौरान उनमें स्विच करता है। यह सामान्य तौर पर प्रत्येक की वांछित विशेषताओं को संयोजित करने के लिए किया जाता है, ताकि समग्र कलन विधि व्यक्तिगत घटकों से बेहतर हो सके।
हाइब्रिड [[कलन विधि]] एक एल्गोरिदम है जो दो या दो से अधिक अन्य एल्गोरिदम को जोड़ता है जो एक ही समस्या को हल करते हैं, या तो डेटा की कुछ विशेषताओं के आधार पर किसी एक को चुनते हैं, या एल्गोरिदम के दौरान उनके बीच स्विच करते हैं। यह आम तौर पर प्रत्येक की वांछित विशेषताओं को संयोजित करने के लिए किया जाता है, ताकि समग्र एल्गोरिदम व्यक्तिगत घटकों से बेहतर हो।


हाइब्रिड एल्गोरिदम का तात्पर्य केवल एक अलग समस्या को हल करने के लिए कई एल्गोरिदम के संयोजन से नहीं है - कई एल्गोरिदम को सरल टुकड़ों के संयोजन के रूप में माना जा सकता है - बल्कि केवल उन एल्गोरिदम के संयोजन से है जो एक ही समस्या को हल करते हैं, लेकिन अन्य विशेषताओं, विशेष रूप से प्रदर्शन में भिन्न होते हैं।
हाइब्रिड कलन विधि का तात्पर्य केवल एक अलग समस्या को हल करने के लिए कई कलन विधि के संयोजन से नहीं है-बल्कि केवल उन कलन विधि के संयोजन से है जो एक ही समस्या को हल करते हैं,तथा अन्य विशेषताए, विशेष रूप से प्रदर्शन में भिन्न होती हैं और कई कलन विधि को सरल टुकड़ों के संयोजन के रूप में भी माना जा सकता है।


==उदाहरण==
==उदाहरण==
[[कंप्यूटर विज्ञान]] में, पुनरावर्ती एल्गोरिदम के अनुकूलित वास्तविक-विश्व कार्यान्वयन में हाइब्रिड एल्गोरिदम बहुत आम हैं, विशेष रूप से फूट डालो और जीतो एल्गोरिदम#कार्यान्वयन मुद्दे
[[कंप्यूटर विज्ञान]] में, [[पुनरावर्ती कलन]] विधि के इष्टतमी वास्तविक-विश्व [[कार्यान्वयन]] में हाइब्रिड कलन विधि बहुत सामान्य हैं, विशेष रूप से विभाजन और [[विघटन या कमी-और-कॉन्कर कलन]] विधि के कार्यान्वयन, जहां पुनरावर्तन में गहराई से आगे बढ़ने पर डेटा का आकार घट जाता है। इस स्थिति में, समग्र दृष्टिकोण (बड़े डेटा पर) के लिए एक कलन विधि का उपयोग किया जाता है, लेकिन पुनरावृत्ति में गहराई से, यह एक अलग कलन विधि पर स्विच हो जाता है, जो छोटे डेटा पर अधिक कुशल होता है। एक सामान्य उदाहरण [[छँटाई एल्गोरिथ्म|पृथक्करण कलन विधि]] में है, जहां निवेशन छाँट, जो बड़े डेटा पर अक्षम है, लेकिन छोटे डेटा (जैसे, पांच से दस तत्वों) पर बहुत प्रभावशाली है, जो मुख्य रूप से [[विलय शाट]][[न]] या [[क्विकसॉर्ट|क्विकप्रकार]] जैसे किसी अन्य कलन विधि को लागू करने के बाद अंतिम चरण के रूप में उपयोग किया जाता है। विलय शाटन और क्विकप्रकार बड़े डेटा पर असम्बद्ध रूप से इष्टतम हैं, लेकिन उन्हें छोटे डेटा पर लागू करने पर शिरोपरि महत्वपूर्ण हो जाता है, इसलिए पुनरावर्तन के अंत में एक अलग कलन विधि का उपयोग होता है। एक अत्यधिक इष्टतमी हाइब्रिड पृथक्करण कलन विधि [[टिमसॉर्ट|टिमप्रकार]] है, जो विलयन तर्क में अतिरिक्त तर्क ([[ द्विआधारी खोज |द्विआधारी खोज]] सहित) के साथ विलय शाटन, निवेशन छाँट को जोड़ता है।
फूट डालो और जीतो एल्गोरिदम|फूट डालो और जीतो या [[घटाओ और जीतो]] एल्गोरिदम, जहां रिकर्सन में गहराई तक जाने पर डेटा का आकार घटता जाता है। इस मामले में, समग्र दृष्टिकोण (बड़े डेटा पर) के लिए एक एल्गोरिदम का उपयोग किया जाता है, लेकिन पुनरावृत्ति में गहराई से, यह एक अलग एल्गोरिदम पर स्विच हो जाता है, जो छोटे डेटा पर अधिक कुशल होता है। एक सामान्य उदाहरण [[छँटाई एल्गोरिथ्म]] में है, जहां इंसर्शन सॉर्ट, जो बड़े डेटा पर अक्षम है, लेकिन छोटे डेटा (जैसे, पांच से दस तत्वों) पर बहुत कुशल है, को मुख्य रूप से एक अन्य एल्गोरिदम लागू करने के बाद अंतिम चरण के रूप में उपयोग किया जाता है, जैसे कि [[ मर्ज़ सॉर्ट ]] या क्विक सॉर्ट। मर्ज सॉर्ट और [[जल्दी से सुलझाएं]] बड़े डेटा पर असम्बद्ध रूप से इष्टतम हैं, लेकिन उन्हें छोटे डेटा पर लागू करने पर ओवरहेड महत्वपूर्ण हो जाता है, इसलिए रिकर्सन के अंत में एक अलग एल्गोरिदम का उपयोग होता है। एक अत्यधिक अनुकूलित हाइब्रिड सॉर्टिंग एल्गोरिदम [[टिमसॉर्ट]] है, जो मर्जिंग लॉजिक में अतिरिक्त लॉजिक ([[ द्विआधारी खोज ]] सहित) के साथ मर्ज सॉर्ट, इंसर्शन सॉर्ट को जोड़ता है।


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


प्रदर्शन कारणों से हाइब्रिड एल्गोरिदम का एक और उदाहरण [[परिचय]] और [[ आत्मचयन ]] है, जो तेजी से औसत प्रदर्शन के लिए एक एल्गोरिदम को जोड़ते हैं, इष्टतम सबसे खराब स्थिति के प्रदर्शन को सुनिश्चित करने के लिए (असममित रूप से) दूसरे एल्गोरिदम पर वापस आते हैं। इंट्रोसॉर्ट क्विकॉर्ट से शुरू होता है, लेकिन अगर क्विकॉर्ट अच्छी तरह से प्रगति नहीं कर रहा है तो यह ढेर सॉर्ट में बदल जाता है; समान रूप से इंट्रोसेलेक्ट [[ तुरंत चयन ]] से शुरू होता है, लेकिन अगर क्विकसेलेक्ट अच्छी तरह से प्रगति नहीं कर रहा है तो मध्यस्थों के मध्य में स्विच हो जाता है।
प्रदर्शन कारणों से हाइब्रिड कलन विधि का एक और उदाहरण [[परिचय|इंट्रोप्रकार]] और[[ आत्मचयन | इंट्रोसेलेक्ट]] है, जो तेज़ औसत प्रदर्शन के लिए एक कलन विधि को संयोजित करता है, इष्टतम सबसे खराब स्थिति के प्रदर्शन को सुनिश्चित करने के लिए दूसरे कलन विधि पर निर्भर करता है। इंट्रोप्रकार क्विकॉर्ट से शुरू होता है, लेकिन अगर क्विकॉर्ट अच्छी तरह से प्रगति नहीं कर रहा है तो यह ढेर प्रकार में बदल जाता है, समान रूप से इंट्रोसेलेक्ट[[ तुरंत चयन | क्विकसेलेक्ट]] से शुरू होता है, लेकिन अगर क्विकसेलेक्ट अच्छी तरह से प्रगति नहीं कर रहा है तो मध्यस्थों के मध्य में स्विच हो जाता है।


केंद्रीकृत [[वितरित एल्गोरिदम]] को अक्सर हाइब्रिड एल्गोरिदम के रूप में माना जा सकता है, जिसमें एक व्यक्तिगत एल्गोरिदम (प्रत्येक वितरित प्रोसेसर पर चलता है), और एक संयोजन एल्गोरिदम (एक केंद्रीकृत वितरक पर चलता है) शामिल होता है - ये क्रमशः पूरे एल्गोरिदम को एक प्रोसेसर पर चलाने, या चलाने के अनुरूप होते हैं वितरक पर संपूर्ण गणना, तुच्छ परिणामों (प्रत्येक प्रोसेसर से एक-तत्व डेटा सेट) का संयोजन। इन एल्गोरिदम का एक मूल उदाहरण [[वितरण प्रकार]] हैं, विशेष रूप से बाहरी सॉर्टिंग के लिए उपयोग किया जाता है, जो डेटा को अलग-अलग उपसमूहों में विभाजित करता है, उपसमूहों को क्रमबद्ध करता है, और फिर उपसमूहों को पूरी तरह से क्रमबद्ध डेटा में संयोजित करता है; उदाहरणों में [[ बाल्टी प्रकार ]] और फ़्लैश सॉर्ट शामिल हैं।
केंद्रीकृत [[वितरित एल्गोरिदम|वितरित कलन विधि]] को अक्सर हाइब्रिड कलन विधि के रूप में माना जा सकता है, जिसमें एक व्यक्तिगत कलन विधि (प्रत्येक वितरित प्रोसेसर पर चलता है), और एक संयोजन कलन विधि (एक केंद्रीकृत वितरक पर चलता है) सम्मिलित होता है - क्रमशः एक प्रोसेसर पर संपूर्ण कलन विधि चलाने, या वितरक पर संपूर्ण गणना करने, तुच्छ परिणामों को संयोजित (प्रत्येक प्रोसेसर से एक-तत्व डेटा सेट) करने के अनुरूप होते हैं। इन कलन विधि का एक मूल उदाहरण [[वितरण प्रकार]] हैं, जो विशेष रूप से बाहरी पृथक्करण के लिए उपयोग किया जाता है, जो डेटा को अलग-अलग उपसमूहों में विभाजित करता है, तथा उपसमूहों को क्रमबद्ध करता है, और फिर उपसमूहों को पूरी तरह से क्रमबद्ध डेटा में संयोजित करता है, उदाहरणों में[[ बाल्टी प्रकार | बकेट प्रकार]] और [[फ़्लैश प्रकार]] सम्मिलित हैं।


हालाँकि, सामान्य तौर पर वितरित एल्गोरिदम को हाइब्रिड एल्गोरिदम होने की आवश्यकता नहीं है, क्योंकि व्यक्तिगत एल्गोरिदम या संयोजन या संचार एल्गोरिदम विभिन्न समस्याओं को हल कर सकते हैं। उदाहरण के लिए, [[MapReduce]] जैसे मॉडल में, मैप और रिड्यूस चरण अलग-अलग समस्याओं को हल करते हैं, और एक अलग, तीसरी समस्या को हल करने के लिए संयुक्त होते हैं।
हालाँकि, सामान्य तौर पर वितरित कलन विधि को हाइब्रिड कलन विधि होने की आवश्यकता नहीं है, क्योंकि व्यक्तिगत कलन विधि या संयोजन या संचार कलन विधि विभिन्न समस्याओं को हल कर सकते हैं। उदाहरण के लिए, [[MapReduce|मानचित्र समानयन]] जैसे प्रारूप में, मानचित्र और समानयन चरण अलग-अलग समस्याओं को हल करते हैं, और एक अलग, तीसरी समस्या को हल करने के लिए संयुक्त होते हैं।


== यह भी देखें ==
== यह भी देखें ==
* [[हाइब्रिड एल्गोरिदम (बाधा संतुष्टि)]]
* हाइब्रिड कलन विधि (प्रतिबंध संतुष्टि)
* [[हाइब्रिड आनुवंशिक एल्गोरिदम]]
* हाइब्रिड आनुवंशिक कलन विधि
* [[चरण पुनर्प्राप्ति के लिए हाइब्रिड इनपुट आउटपुट (एचआईओ) एल्गोरिदम]]
* चरण पुनर्प्राप्ति के लिए हाइब्रिड निविष्ट निर्गत (एचआईओ) कलन विधि


श्रेणी:एल्गोरिदम
[[Category: Machine Translated Page]]
[[Category:Created On 07/07/2023]]
[[Category:Created On 07/07/2023]]
[[Category:Machine Translated Page]]

Latest revision as of 14:46, 17 October 2023

हाइब्रिड कलन विधि एक कलन विधि है जो किसी समस्या को हल करने के लिए दो या अधिक अन्य कलन विधियो को संयोजित करता है, या तो डेटा की कुछ विशेषता के आधार पर एक का चयन करता है, या कलन विधि के प्रवाह के दौरान उनमें स्विच करता है। यह सामान्य तौर पर प्रत्येक की वांछित विशेषताओं को संयोजित करने के लिए किया जाता है, ताकि समग्र कलन विधि व्यक्तिगत घटकों से बेहतर हो सके।

हाइब्रिड कलन विधि का तात्पर्य केवल एक अलग समस्या को हल करने के लिए कई कलन विधि के संयोजन से नहीं है-बल्कि केवल उन कलन विधि के संयोजन से है जो एक ही समस्या को हल करते हैं,तथा अन्य विशेषताए, विशेष रूप से प्रदर्शन में भिन्न होती हैं और कई कलन विधि को सरल टुकड़ों के संयोजन के रूप में भी माना जा सकता है।

उदाहरण

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

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

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

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

हालाँकि, सामान्य तौर पर वितरित कलन विधि को हाइब्रिड कलन विधि होने की आवश्यकता नहीं है, क्योंकि व्यक्तिगत कलन विधि या संयोजन या संचार कलन विधि विभिन्न समस्याओं को हल कर सकते हैं। उदाहरण के लिए, मानचित्र समानयन जैसे प्रारूप में, मानचित्र और समानयन चरण अलग-अलग समस्याओं को हल करते हैं, और एक अलग, तीसरी समस्या को हल करने के लिए संयुक्त होते हैं।

यह भी देखें

  • हाइब्रिड कलन विधि (प्रतिबंध संतुष्टि)
  • हाइब्रिड आनुवंशिक कलन विधि
  • चरण पुनर्प्राप्ति के लिए हाइब्रिड निविष्ट निर्गत (एचआईओ) कलन विधि