घने मैट्रिक्स के आइजनवेक्टर की गणना करने का सबसे कुशल तरीका क्या है जो सबसे बड़े परिमाण के ईजेन्यूएल से संबंधित है?


10

मेरे पास एक घने वास्तविक सममित वर्ग मैट्रिक्स है। आयाम लगभग 1000x1000 है। मुझे पहले प्रमुख घटक की गणना करने की आवश्यकता है और आश्चर्य है कि ऐसा करने के लिए सबसे अच्छा एल्गोरिथ्म क्या हो सकता है।

ऐसा लगता है कि MATLAB अर्नोल्डी / लैंक्ज़ोस एल्गोरिदम (के लिए eigs) का उपयोग करता है । लेकिन उनके बारे में पढ़ने से मुझे यकीन नहीं हो रहा है कि क्या उनके पास सरल शक्ति पुनरावृत्ति पर कोई लाभ है , क्योंकि मेरा मैट्रिक्स विरल नहीं है और मुझे केवल पहले आइजनवेक्टर में दिलचस्पी है।

किसी भी सिफारिशें इस मामले में सबसे तेज एल्गोरिथ्म क्या है?


1
मेरे कंप्यूटर पर, एक बेतरतीब ढंग से उत्पन्न 1000 X 1000 सममित मैट्रिक्स पर, R में "eigen" फ़ंक्शन ने सभी eigenvalues ​​और vectors की गणना करने के लिए लगभग एक सेकंड का समय लिया। आपका माइलेज अलग-अलग हो सकता है, लेकिन मुझे संदेह है कि आपकी एल्गोरिथ्म पसंद का उस तरह के समय पर कोई फर्क पड़ता है।

हां, यह सच है। मैं वास्तव में अपने कार्यक्रम को तेजी से चलाने में चिंतित नहीं हूं। मैं बस उत्सुक हूं कि क्या उल्लेखित अधिक जटिल तकनीकों को भी इस उपयोग-मामले (घने, केवल पहले eigenvector) में श्रेष्ठ माना जाता है, या क्या घने मैट्रिस के लिए अलग-अलग तकनीकें हैं।

क्या आप का मतलब है कि सबसे बड़े या सबसे छोटे आइगेनवैल्यू से संबंधित आइजन्वेक्टर? ऐसा लगता है कि आप पूर्व को चाहते हैं।
जैक पॉल्सन

हां, सबसे बड़े परिमाण के साथ आइगेनवेक्टर को आइजनवेल्यू के लिए गलियारा।
मिका फिशर

जवाबों:


12

सबसे तेज़ विधि संभवतः आपके मैट्रिक्स के स्पेक्ट्रम और सामान्यता पर निर्भर करेगी, लेकिन सभी मामलों में क्रायलोव एल्गोरिदम शक्ति प्रवाह से कड़ाई से बेहतर होना चाहिए। GW स्टीवर्ट में इस मुद्दे की अच्छी चर्चा है अध्याय 4 में, मैट्रिक्स एल्गोरिदम की धारा 3 , खंड II: Eigystemystems :

AuAkuAku

100×100i.95ii=0


हम्म, मैंने सोचा था कि MRRR अब मानक विधि थी जब कोई बस कुछ ही eigenvectors चाहता है ...
JM

हे(n2+2n+3)n

समझा; किसी तरह मुझे आभास हो गया था कि क्रायलोव करने से पहले आपको ट्रिडायगोनलाइज़ करने की ज़रूरत है। धन्यवाद!
JM

लैंक्ज़ोस वास्तव में धीरे-धीरे निर्माण कर रहा है, कहा जाता है कि ट्रिडिएगोनल मैट्रिक्स।
जैक पॉल्सन

5

पावर पुनरावृत्ति सबसे सरल है, लेकिन जैसा कि ऊपर उल्लेख किया गया है कि अगर मैट्रिक्स बहुत गैर-सामान्य है तो यह बहुत धीरे-धीरे अभिसरण होगा । आप एक "कूबड़" घटना प्राप्त करते हैं जहां विषमतापूर्ण व्यवहार में किक करने से पहले कई पुनरावृत्तियों के लिए अनुक्रम प्रकट होता है।

चूंकि आपका मैट्रिक्स सममित है, आप RQI पुनरावृत्तियों पर विचार कर सकते हैं, जो सममित मामले में घन अभिसरण देता है: http://en.wikipedia.org/wiki/Rayleigh_quotient_iteration

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

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