लाइन खोज में घन और द्विघात प्रक्षेप के बीच निर्णय लेने में सहायता करें


9

मैं एक अर्ध-न्यूटन BFGS एल्गोरिथ्म के भाग के रूप में एक लाइन खोज कर रहा हूं। लाइन खोज के एक चरण में मैं स्थानीय न्यूनतम के करीब जाने के लिए एक क्यूबिक प्रक्षेप का उपयोग करता हूं।

चलो f:RR,fC1ब्याज की क्रिया हो। मैं एक खोजने के लिए चाहते हैंx ऐसा है कि f(x)0

चलो f(xk), f(xk), f(xk+1) तथा f(xk+1)पहचान बनाओ। भी मान लो0xk<x<xk+1। मैं एक घन बहुपद फिट बैठता हूंQ(x)=ax3+bx2+cx+d ताकि Q(0)=f(xk), Q(0)=f(xk), Q(xk+1xk)=f(xk+1) तथा Q(xk+1xk)=f(xk+1)

मैं द्विघात समीकरण को हल करता हूं: (1):Q(xxk)=0 मेरी मांग के लिए x बंद फार्म समाधान का उपयोग करना।

उपरोक्त ज्यादातर मामलों में अच्छी तरह से काम करता है, सिवाय कब f(x)=O(x2) के लिए बंद फार्म समाधान के रूप में (1) से विभाजित करता है a जो बिल्कुल या बिल्कुल पास हो जाता है 0

मेरा समाधान यह देखना है a और अगर यह "बहुत छोटा है" बस द्विघात बहुपद के न्यूनतम के लिए बंद फॉर्म समाधान लें Q2(x)=bx2+cx+d जिसके लिए मेरे पास पहले से ही गुणांक है b,c,d पहले फिट से Q(x)

मेरा सवाल यह है: मैं क्यूबिक पर द्विघात प्रक्षेप को लेने के लिए एक अच्छी परीक्षा कैसे तैयार करता हूं? के लिए परीक्षण करने के लिए भोली दृष्टिकोणa0 संख्यात्मक कारणों से बुरा है इसलिए मैं देख रहा हूं |a|<ϵτ कहाँ पे ϵ मशीन सटीक है, लेकिन मैं एक अच्छा फैसला करने में असमर्थ हूं τ के पैमाने पर अपरिवर्तनीय है f

बोनस प्रश्न: क्या गुणांक का उपयोग करने के साथ कोई संख्यात्मक मुद्दे हैं,b,c,d, असफल क्यूबिक फिट से या मुझे गुणांक की गणना करने के उचित तरीके के साथ एक नया द्विघात फिट प्रदर्शन करना चाहिए?

स्पष्टीकरण के लिए संपादित करें: मेरे प्रश्न मेंf वास्तव में क्या कहा जाता है ϕ(α)=f(x¯k+αpk¯)सहित्य में। मैंने प्रश्न निर्माण को सरल बनाया। मैं जिस अनुकूलन समस्या को हल कर रहा हूं वह 6 आयामों में गैर-रैखिक है। और मुझे अच्छी तरह से पता है कि बीएफजीएस लाइन खोज के लिए वोल्फ स्थितियां पर्याप्त हैं इसलिए कहा गया कि मुझे इसमें दिलचस्पी थीf(x)0; मैं कुछ ऐसी चीजों की तलाश कर रहा हूं, जो मजबूत वुल्फ स्थितियों को संतुष्ट करें और क्यूबिक सन्निकटन का न्यूनतम उपाय करना एक अच्छा तरीका है।

प्रश्न बीएफजीएस के बारे में नहीं था, बल्कि यह निर्धारित करने के लिए कि कब घन गुणांक काफी छोटा है कि एक द्विघात अनुमानित अधिक उपयुक्त है।

संपादन 2: अपडेट नोटेशन, समीकरण अपरिवर्तित हैं।

जवाबों:


4

हम्म ... क्यूबिक इंटरपलेशन लाइन खोज के लिए अनसुना नहीं है, लेकिन आमतौर पर ओवरकिल।

अगर मैं आपकी समस्या को सही ढंग से पढ़ रहा हूँ, xक्या सिर्फ एक अदिश राशि है? इस मामले में बीएफजीएस शायद आपकी समस्या को हल करने का सबसे कुशल तरीका नहीं है। स्केलर ऑप्टिमाइज़ेशन एल्गोरिदम जैसे ब्रेंट का तरीका आपकी समस्या को तेज़ी से हल करने की संभावना है।

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

वैसे भी, वास्तव में आपके प्रश्न का उत्तर देने के लिए: मैं क्यूबिक पॉलीओनोमियल पर स्विच करने पर विचार करूंगा यदि घन एक पैदावार "खराब" मान जैसे कि NaN या Inf को हल करना (जैसा कि यहां किया गया है )।

मुझे यकीन नहीं है कि आप का उपयोग करने से क्या मतलब है b,c,d? क्यूबिक फिट के लिए ये गुणांक द्विघात फिट के लिए समान नहीं होंगे ताकि आप उन्हें पुन: उपयोग न कर सकें।

अंत में, आप उपयोग करना चाह सकते हैं f(xk1) , बजाय f(x0), जैसा कि आपका कार्य होगा (संभवतः) केवल स्थानीय रूप से लगभग घन या द्विघात होगा, और xk तथा xk1 की तुलना में एक दूसरे (और समाधान) के करीब होना चाहिए x0

उम्मीद है की यह मदद करेगा।


स्पष्टता के लिए संपादित। का उपयोग करकेb,c,d"मेरा मतलब है कि मैंने एक क्यूबिक फिट किया Q(x)=ax3+bx2+cx+d और पाया कि a0 इस प्रकार मेरे पास है Q(x)=bx2+cx+dजो पहले से ही एक द्विघात बहुपद है। और सवाल था अगर गुणांकb,c,dइस फिट के लिए एक प्रक्षेप करने के लिए उपयोग करने के लिए समझदार हैं या अगर मुझे एक विशिष्ट द्विघात फिट के लिए नए गुणांक की गणना करनी चाहिए।
एमिली एल

आह, दाहिनी ओर, सहवास। मैं एक संख्यात्मक दृष्टिकोण से गुणांक का उपयोग करने में कोई समस्या नहीं देखता हूं। एकमात्र बिंदु जहां मुझे लगता है कि यह मामला होगा, उस समाधान के बहुत करीब है जहां आप वैसे भी समाप्त होंगे।
LKlevin

क्या आप अपने जवाब को क्यूबिक की गणना और "खराब" मानों के लिए जाँचने के लिए प्रेरित कर सकते हैं? ऐसा कब करना सुरक्षित हैa<<b या a0?
एमिली एल

कब a0, b,c तथा dद्विघात मामले के लिए लगभग सभी होंगे। जैसा कि BFGS लाइन्सचर्च काफी मजबूत है, आपको इनका उपयोग ठीक होना चाहिए, भले ही वे पूरी तरह से सटीक न हों। जब तक आप वुल्फ शर्तों का पालन करते हैं तब तक आपको अभिसरण मिलेगा। "खराब" मानों के लिए, जब तक कि कंप्यूटर आपकी ज़रूरत के हिसाब से सटीक गणना कर सकता है, तब तक सब कुछ अच्छा है। जब यह नहीं हो सकता है, तो आप inf और NaN देखना शुरू कर देंगे।
LKlevin

4

मोके द्वारा एक पेपर है, जिसे नोकेडल द्वारा लागू किया गया है, इसके बारे में:

जॉर्ज जे। मोरे और डेविड जे। थूएंटे। 1994. लाइन सर्च एल्गोरिदम पर्याप्त गारंटी की कमी के साथ। एसीएम ट्रांस। गणित। Softw। 20, 3 (सितंबर 1994), 286-307। डीओआई http://dx.doi.org/10.1145/192115.192132 ( प्रिप्रिंट )।


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