2009-04-03 23 views
27

मैट्रिक्स के eigenvalues ​​की गणना करने के लिए कितना महंगा है?मैट्रिक्स के eigenvalues ​​की गणना करने के लिए कितना महंगा है?

सर्वोत्तम एल्गोरिदम की जटिलता क्या है?

यदि मेरे पास 1000 x 1000 मैट्रिक्स है तो अभ्यास में कितना समय लग सकता है? मुझे लगता है कि अगर मैट्रिक्स स्पैस है तो यह मदद करता है?

क्या ऐसे कोई मामले हैं जहां eigenvalue गणना समाप्त नहीं होगी?

R में, मैं निम्नलिखित खिलौना उदाहरण के रूप में eigenvalues ​​गणना कर सकते हैं:

m<-matrix(c(13,2, 5,4), ncol=2, nrow=2) 
eigen(m, only.values=1) 
$values 
[1] 14 3 

किसी को भी पता है क्या एल्गोरिथ्म इसे इस्तेमाल करता है?

क्या कोई अन्य (ओपन-सोर्स) पैकेज है जो eigenvalue की गणना करता है?

+0

यदि मुझे Google पेजरैंक में जादू गलत नहीं है (कम से कम partley) एक विशाल eigenvalue गणना है। यह देखना अच्छा लगेगा कि वे इसे कैसे करते हैं। संख्यात्मक विश्लेषण में पाठ्यक्रम के दौरान MATLAB में ऐसा करते समय हमने बिजली पुनरावृत्ति या क्यूआर अपघटन का उपयोग किया। – sris

+2

Google पेजरैंक गणना एक बहुत ही विशिष्ट ईजिनॉल्यू समस्या से मेल खाती है: एक स्टोकास्टिक मैट्रिक्स के प्रमुख इकाई ईजेनवेल्यू से जुड़े ईजिनवेक्टर की गणना करना। उस स्थिति में, एक विशेष एल्गोरिदम का उपयोग किया जाता है (शायद पावर विधि के कुछ प्रकार के आधार पर)। – Fanfan

उत्तर

5

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

11

मुझे लगता है कि मैट्रिक्स स्पैस है तो यह मदद करता है?

हां, एल्गोरिदम हैं, जो स्पैर मैट्रिस पर अच्छा प्रदर्शन करते हैं।

उदाहरण के लिए देखें: http://www.cise.ufl.edu/research/sparse/

+0

क्या eigenvalues ​​खोजने के लिए वहाँ एल्गोरिदम है? मैं थोड़ी देर के लिए खोज करता हूं और कुछ भी नहीं मिलता ... – Marek

+0

@ मारक: लांज़ोस, जैकोबी-डेविडसन और अन्य पुनरावृत्तियों को देखें, जो विशेष रूप से अच्छी तरह से काम करते हैं यदि आप केवल ईग्नवेल के उप-समूह में रूचि रखते हैं। –

19

eigen मूल्य संगणना के लिए एल्गोरिदम के अधिकांश बड़े-ओह (एन^3), जहां n (सममित और वर्ग) मैट्रिक्स के पंक्तियां/स्तंभ आयाम है करने के लिए पैमाने पर।

आज तक सर्वश्रेष्ठ एल्गोरिदम की समय जटिलता जानने के लिए आपको वैज्ञानिक कंप्यूटिंग/संख्यात्मक तरीकों में नवीनतम शोध पत्रों का संदर्भ लेना होगा।

लेकिन यदि आप खराब मामले को मानते हैं, तो भी आपको 1000x1000 मैट्रिक्स के लिए कम से कम 1000^3 संचालन की आवश्यकता होगी।

आर डिफ़ॉल्ट रूप से LAPACK रूटीन (DSYEVR, DGEEV, ZHEEV और ZGEEV) कार्यान्वयन का उपयोग करता है। हालांकि आप EISPACK के आरएस, आरजी, सीएच और सीजी रूटीन का उपयोग करने के लिए पैरामीटर के रूप में EISPACK = TRUE निर्दिष्ट कर सकते हैं।

ईजिनवे गणना के लिए सबसे लोकप्रिय और अच्छे ओपन सोर्स पैकेज LAPACK और EISPACK हैं।

+2

'EISPACK' अब निष्क्रिय और अनदेखा है। Http://stat.ethz.ch/R-manual/R-devel/library/base/html/eigen.html देखें – Randel

7

पर अभ्यास में कितना समय लग सकता है मेरे पास 1000x1000 मैट्रिक्स है?

MATLAB (LAPACK के आधार पर) एक डुअल कोर 1.83 GHz मशीन पर गणना करता है मोटे तौर पर 5 सेकंड में यादृच्छिक एक 1000x1000 के सभी eigenvalues। जब मैट्रिक्स सममित है, तो गणना को काफी तेज़ी से किया जा सकता है और केवल 1 सेकंड की आवश्यकता होती है।

18

बड़ी matrices के साथ आप आमतौर पर सभी eigenvalues ​​नहीं चाहते हैं। आप बस शीर्ष कुछ करना चाहते हैं (कहना) एक आयाम कमी।

विहित एल्गोरिथ्म Arnoldi-Lanczos पुनरावृत्ति एल्गोरिथ्म ARPACK में लागू है:

www.caam.rice.edu/software/ARPACK/

eigs में एक matlab इंटरफेस है:

http://www.mathworks.com/access/helpdesk/help/techdoc/index.html?/access/helpdesk/help/techdoc/ref/eigs.html

eigs(A,k) and eigs(A,B,k) return the k largest magnitude eigenvalues. 

और वहाँ अब एक अनुसंधान इंटरफेस के रूप में अच्छी तरह से है:

http://igraph.sourceforge.net/doc-0.5/R/arpack.html

2

Apache Mahout-को कम नक्शा एक खुला स्रोत पर बनाया गया ढांचा नहीं है (यानी यह वास्तव में वास्तव में बड़ी matrices के लिए काम करता है)। ध्यान दें कि बहुत सारे मैट्रिक्स सामानों के लिए सवाल यह नहीं है कि "बड़े-बड़े रनटाइम क्या हैं" बल्कि "यह समानांतर कैसे है?" Mahout says वे लांज़ोस का उपयोग करते हैं, जो अनिवार्य रूप से कई प्रोसेसर पर समानांतर में चलाया जा सकता है जैसा कि आप इसे देना चाहते हैं।

0

यह क्यूआर अलगो का उपयोग करता है। विल्किन्सन, जे एच (1 ​​9 65) द बीजगणित Eigenvalue समस्या देखें। क्लेरेंडन प्रेस, ऑक्सफोर्ड। यह दुर्लभता का फायदा नहीं उठाता है।

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