2012-05-24 19 views
6

क्या वे सिर्फ ब्रूट फोर्स दृष्टिकोण का उपयोग करके पता लगाए हैं या ऐसा करने में कोई एल्गोरिदम है?लॉगरिदम प्रोग्राम कैसे किए जाते हैं?

+3

'ब्रूट फोर्स' और 'एल्गोरिदम' पारस्परिक रूप से अनन्य नहीं हैं, आपके प्रश्न में झूठी डिचोटोमी है। और जवाब है, हाँ, ऐसा करने में एक एल्गोरिदम है। –

+0

आह, मुझे मूर्खतापूर्ण लगता है कि क्रूर बल वास्तव में एक एल्गोरिदम था। धन्यवाद। – Taffer

+0

"ब्रूट फोर्स" एल्गोरिदम की एक संपत्ति है, जहां आप कम सोच से दूर होने के लिए अधिक कंप्यूटिंग पावर लागू करते हैं (जिसे आप कम ब्रूट एल्गोरिदम खोजने के लिए इस्तेमाल कर सकते थे)। – starblue

उत्तर

14

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

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

प्राकृतिक लॉगरिदम के मामले में, सीमा को कम करने का एक आसान तरीका है। वास्तविक संख्या लगभग सार्वभौमिक एक अपूर्णांश के मामले और एक प्रतिपादक में प्रतिनिधित्व कर रहे हैं: एक्स = मीटर * 2 पी, जहां पी एक पूर्णांक और मीटर 1 और 2 प्रकार के लिए लॉग इन के बीच है ( एक्स) = लॉग ( मीटर) + पी * लॉग (2)। उत्तरार्द्ध शब्द, पी * लॉग (2), ज्ञात स्थिरांक द्वारा केवल एक गुणा है। इस प्रकार समस्या 1 और 2 (या 1/2 और 1 के बीच) के अंक के लॉगरिदम को खोजने के लिए कम कर देती है। इस तथ्य का उपयोग करके एक और सीमा में कमी की जा सकती है कि √2 [1,2) के बीच में लॉगरिदमिक रूप से है। इस प्रकार सभी की आवश्यकता है 1 और √2 के बीच संख्या के लॉगेरिथम की गणना करने का एक तरीका है। यह आमतौर पर एक तर्कसंगत बहुपद के साथ किया जाता है। एक दूसरे क्रम बहुपद बहुपद से तीसरे क्रम का अनुपात इस के लिए काफी अच्छी तरह से काम करता है।

+4

.5 यूएलपी एक महत्वाकांक्षी लक्ष्य है; यह सही ढंग से गोलाकार जैसा ही है, जिसका अर्थ गणितीय सटीक परिणाम के निकट प्रतिनिधित्व करने योग्य संख्या लौटा दी जानी चाहिए। सीआरएलआईबीएम प्रोजेक्ट (http://lipforge.ens-lyon.fr/www/crlibm/) ऐसा करने का प्रयास करता है, लेकिन यह अपूर्ण है (उदाहरण के लिए, व्यस्त हाइपरबॉलिक फ़ंक्शंस प्रदान नहीं किए जाते हैं)। वफादार गोल (1 यूएलपी से कम) एक अधिक प्राप्य लक्ष्य है, और विशिष्ट पुस्तकालय कई यूएलपी की त्रुटियों की अनुमति देते हैं। सामान्य प्रोसेसर पर विभाजन धीमा होने के बाद तर्कसंगत कार्यों से बचा जाता है। उदा।, एक स्पर्शक एक तर्कसंगत कार्य का उपयोग कर सकता है, लेकिन साइन और लॉगरिदम सरल बहुपदों का उपयोग करेगा। –

+0

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

+1

[1.0, 2.0) तक सीमा को कम करने से लॉग (0.9 99 ...) के पास बड़ी त्रुटियां उत्पन्न होती हैं, क्योंकि डेविड हैमैन ने टिप्पणी की थी। [2/3, 4/3) या [वर्ग (0.5), वर्ग (2.0)) जैसे इंटीरियर में 1.0 की एक सीमा को कम करके इस समस्या से बचने के लिए मुझे पता है कि कार्यान्वयन। प्रोग्रामिंग शब्दों में, यह करने के लिए केवल कुछ अतिरिक्त निर्देश हैं: यदि (एम> स्थिर) {पी + = 1; मीटर * = 0.5;} –

2

लॉगरिदम की गणना करने के कई तरीके हैं। this देखें।

+5

-1। वे "टेलर श्रृंखला अनुमानों द्वारा ज्यादातर गणना नहीं की जाती हैं"। –

+0

मैंने अब यह नहीं कहने का उत्तर अपडेट कर दिया है। – Oleksi

+1

हालांकि यह लिंक प्रश्न का उत्तर दे सकता है, लेकिन यहां उत्तर के आवश्यक हिस्सों को शामिल करना बेहतर है और संदर्भ के लिए लिंक प्रदान करना बेहतर है। लिंक किए गए पृष्ठ में परिवर्तन होने पर लिंक-केवल उत्तर अमान्य हो सकते हैं। - [समीक्षा से] (/ समीक्षा/कम गुणवत्ता वाली पोस्ट/18788146) – Syfer

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