10 एल्गोरिथम समस्याएं अभी भी हल करने के लिए

10 एल्गोरिथम समस्याएं अभी तक हल करने के लिए - डमीज

एल्गोरिदम वास्तव में सदियों से आस पास रहे हैं, इसलिए आपको लगता होगा कि वैज्ञानिक अब तक हर एल्गोरिदम की खोज करेंगे और हल करेंगे। दुर्भाग्य से, विपरीत सच है। किसी विशेष एल्गोरिथम को सुलझाना अक्सर कुछ और प्रश्न प्रस्तुत करता है जो कि एल्गोरिथ्म हल नहीं होता है और जब तक कि किसी ने समाधान के साथ नहीं आया, तब तक यह स्पष्ट नहीं हुआ।

एल्गोरिदम एक समस्या का समाधान करने के लिए उपयोग की जाने वाली कई कदम हैं, और आपको उन्हें अन्य संस्थाओं जैसे कि समीकरणों के साथ भ्रमित नहीं करना चाहिए। एक एल्गोरिथ्म किसी समस्या की खोज में कोई समाधान नहीं है। कोई भी ऐसी समस्या का समाधान करने के लिए कोई कदम उठाएगा जो अभी तक मौजूद नहीं है (या कभी भी अस्तित्व में नहीं है)।

यह सूची उन एल्गोरिथम संबंधी समस्याओं के बारे में है, जो किसी उद्देश्य को पूरा करने के लिए किसी के लिए एक समाधान खोजना चाहिए।

पाठ खोजों के साथ काम करना

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

नियमित अभिव्यक्ति के साथ मौजूदा समस्याओं में से एक यह है कि ऐसा लगता है जैसे हर एपलीकेशन वातावरण में नियमों का एक समान सेट होता है, लेकिन खोज शब्द को कठिन बनाने के लिए पर्याप्त मतभेद हैं सामान्यीकृत स्टार-ऊँचाई समस्या यह जानना चाहता है कि क्या एक सामान्यीकृत रेगुलर एक्सप्रेशन सिंटैक्स मौजूद है या नहीं। यदि हां, परिणामस्वरूप एल्गोरिथ्म किसी के लिए खोज करने के लिए नियमित अभिव्यक्ति बनाने की सिर्फ एक विधि जानने के लिए संभव बनायेगा

शब्दों का भेदभाव करना

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

निर्धारित करें कि कोई एप्लिकेशन समाप्त हो जाएगा

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

हाइपरकॉप्टर एक कंप्यूटिंग मॉडल है जो टोलिंग मशीन से परे जाता है ताकि समस्या को सुलझाने में समस्याएं हल हो सकती हैं हालांकि, वर्तमान तकनीक का उपयोग करके ऐसी मशीनें संभव नहीं हैं यदि संभव हो, तो आप उन्हें उन सभी प्रकार के imponderables कि कंप्यूटर वर्तमान में जवाब नहीं दे सकते पूछने में सक्षम हो जाएगा। यह आलेख आपको एक अच्छा विचार प्रदान करता है कि क्या होगा यदि कोई इस समस्या को हल कर सके।

एक-तरफ़ा फ़ंक्शंस बनाना और उपयोग करना

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

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

सचमुच बड़ी संख्या में गुणा करना

कई जगहों पर बहुत बड़ी संख्या मौजूद है उदाहरण के लिए, मंगल ग्रह की दूरी या प्लूटो से होने वाली गणनाओं का प्रदर्शन करने पर विचार करें। वास्तव में बड़ी संख्या में गुणा करने के लिए तरीके वर्तमान में मौजूद हैं, लेकिन वे धीमे होते हैं क्योंकि उन्हें पूरा करने के लिए कई कार्यों की आवश्यकता होती है। समस्या तब होती है जब प्रोसेसर के रजिस्टरों में फिट होने के लिए संख्याएं बहुत बड़ी होती हैं उस बिंदु पर, गुणा एक से अधिक चरणों में होनी चाहिए, जो चीजों को काफी धीमा कर देता है वर्तमान समाधान में शामिल हैं:

  • गॉस का जटिल गुणा एल्गोरिथ्म
  • कराटूबा गुणाकरण
  • टूम-कुक
  • फूरियर रूपांतरण तरीकों

हालांकि वर्तमान में कई तरीकों से स्वीकार्य परिणाम उपलब्ध हैं, ये सभी समय लेते हैं, और जब आपके पास प्रदर्शन की बहुत सारी गणना होती है, तो समय की समस्या महत्वपूर्ण हो सकती है नतीजतन, बड़ी संख्या में गुणन उन समस्याओं में से एक है जिसे आज उपलब्ध उपलब्धियों की तुलना में बेहतर समाधान की आवश्यकता है

समान रूप से एक संसाधन बांटते हुए

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

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

दूरी गणना समय को कम करना

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

इस समस्या के वर्तमान समाधान मौजूद हैं, उनमें से सभी काफी धीमी हैं वास्तव में, उनमें से ज्यादातर घातीय समय लेते हैं, इसलिए एक परिवर्तन करने के लिए आवश्यक समय जल्दी से उस बिंदु तक जाता है जहां इंसान इनपुट के प्रसंस्करण में विरामों को देख सकते हैं। एक शब्द प्रोसेसर का इस्तेमाल करते समय रोकता है, जो स्वचालित शब्द चेक करता है और गलत वर्तनी वाले शब्द को सही में बदलता है। हालांकि, ध्वनि इंटरफेस का उपयोग करते समय, विराम काफी ध्यान देने योग्य हो सकता है और मानव ऑपरेटर को गलतियां करने के लिए प्रेरित करता है।

समस्याओं को जल्दी से सुलझाना

मशीन सीखना बंद हो जाता है और हम समस्याओं को सुलझाने के लिए कंप्यूटरों पर अधिक से ज्यादा गिनते हैं, समस्या का हल कितनी जल्दी एक कंप्यूटर महत्वपूर्ण हो सकता है महत्वपूर्ण हो जाता है पी बनाम एनपी समस्या केवल पूछता है कि क्या कोई कंप्यूटर जल्दी समस्या हल कर सकता है, जब वह समस्या का समाधान जल्दी से सत्यापित कर सकता है दूसरे शब्दों में, यदि कंप्यूटर उचित रूप से पता लगा सकता है कि बहुविध समय या उससे कम समय में एक मानवीय प्रतिक्रिया सही है, तो क्या यह समस्या बहुविध समय या उससे कम समय में भी हल कर सकती है?

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

समता खेल खेलना

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

स्थानिक मुद्दों को समझना

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

हालांकि, सवाल यह है कि क्या सभी स्थानिक समस्याओं का समाधान है इस मामले में, उन बच्चों के पहेलियाँ में से एक के बारे में सोचें जो आपने एक छोटे से टाइल को चारों ओर फिसलने से एक तस्वीर डाल दी है। ऐसा लगता है कि सभी मामलों में एक समाधान मौजूद होना चाहिए, लेकिन कुछ स्थितियों में, एक खराब प्रारंभिक बिंदु का परिणाम ऐसी स्थिति में हो सकता है जिसके समाधान का कोई समाधान नहीं है।

गणितज्ञों जैसे सैम लॉयड जटिल गणित समस्याओं को प्रदर्शित करने के लिए अक्सर पहेलियाँ का उपयोग करते हैं, जिनमें से कुछ का कोई हल नहीं आज। इन साइटों का दौरा मजेदार है क्योंकि आप केवल कुछ मुफ्त मनोरंजन ही नहीं बल्कि सोचा के लिए भोजन भी नहीं करते हैं। इन पहेलियाँ को उठाए जाने वाले मुद्दों में व्यावहारिक अनुप्रयोग होते हैं, लेकिन उन्हें मज़ेदार तरीके से पेश किया जाता है।