चोल्स्की अपघटन: Difference between revisions

From Vigyanwiki
No edit summary
Line 1: Line 1:
{{Short description|Matrix decomposition method}}
{{Short description|Matrix decomposition method}}
रैखिक बीजगणित में, '''चोल्स्की अपघटन''' या '''चोल्स्की गुणनखंडन''' (उच्चारण /ʃəˈlɛski/ shə-LES-kee) एक हर्मिटियन, धनात्मक-निश्चित आव्यूह का एक निम्न त्रिभुजीय आव्यूह और उसके संयुग्मी स्थानान्तरण के उत्पाद में अपघटन है, जो दक्ष संख्यात्मक समाधान के लिए उपयोगी है, जैसे, मोंटे कार्लो अनुकरण होता है। वास्तविक आव्यूह के लिए इसकी खोज आंद्रे-लुई चोल्स्की ने की थी और इसे मरणोपरांत 1924 में प्रकाशित किया गया था।<ref name="Bulletin">{{Cite journal|last=Benoit|date=1924|title=Note sur une méthode de résolution des équations normales provenant de l'application de la méthode des moindres carrés à un système d'équations linéaires en nombre inférieur à celui des inconnues (Procédé du Commandant Cholesky)|journal=[[Bulletin Géodésique]]|language=fr|volume=2|pages=66–67| doi=10.1007/BF03031308}}</ref> जब यह प्रयुक्त होता है, तो चोलेस्की अपघटन रैखिक समीकरणों की प्रणालियों को हल करने के लिए LU अपघटन से लगभग दोगुना सक्षम होता है।<ref name="NR">{{cite book|last=Press|first=William H.|author2=Saul A. Teukolsky|author3=William T. Vetterling|author4=Brian P. Flannery|title=Numerical Recipes in C: The Art of Scientific Computing|edition=second|publisher=Cambridge University England EPress|year=1992|page=[https://archive.org/details/numericalrecipes0865unse/page/994 994]|url=https://archive.org/details/numericalrecipes0865unse/page/994|isbn=0-521-43108-5|access-date=2009-01-28}}</ref>
रैखिक बीजगणित में, '''चोल्स्की अपघटन''' या '''चोल्स्की गुणनखंडन''' (उच्चारण /ʃəˈlɛski/ shə-LES-kee) एक हर्मिटियन, धनात्मक-निश्चित आव्यूह का एक निम्न त्रिभुजीय आव्यूह और उसके संयुग्मी स्थानान्तरण के गुणन में अपघटन है, जो कुशल संख्यात्मक समाधान के लिए उपयोगी है, जैसे, मोंटे कार्लो अनुकरण होता है। वास्तविक आव्यूह के लिए इसकी खोज आंद्रे-लुई चोल्स्की ने की थी और इसे मरणोपरांत 1924 में प्रकाशित किया गया था।<ref name="Bulletin">{{Cite journal|last=Benoit|date=1924|title=Note sur une méthode de résolution des équations normales provenant de l'application de la méthode des moindres carrés à un système d'équations linéaires en nombre inférieur à celui des inconnues (Procédé du Commandant Cholesky)|journal=[[Bulletin Géodésique]]|language=fr|volume=2|pages=66–67| doi=10.1007/BF03031308}}</ref> जब यह प्रयुक्त होता है, तो चोलेस्की अपघटन रैखिक समीकरणों की प्रणालियों को संशोधन करने के लिए LU अपघटन से लगभग दोगुना सक्षम होता है।<ref name="NR">{{cite book|last=Press|first=William H.|author2=Saul A. Teukolsky|author3=William T. Vetterling|author4=Brian P. Flannery|title=Numerical Recipes in C: The Art of Scientific Computing|edition=second|publisher=Cambridge University England EPress|year=1992|page=[https://archive.org/details/numericalrecipes0865unse/page/994 994]|url=https://archive.org/details/numericalrecipes0865unse/page/994|isbn=0-521-43108-5|access-date=2009-01-28}}</ref>




Line 29: Line 29:
== LDL अपघटन ==
== LDL अपघटन ==


उत्कृष्ट चोलेस्की अपघटन का एक निकट संबंधी संस्करण LDL अपघटन है,
उत्कृष्ट चोलेस्की अपघटन का एक निकटवर्ती संस्करण LDL अपघटन है,


: <math>\mathbf{A} = \mathbf{L D L}^*,</math>
: <math>\mathbf{A} = \mathbf{L D L}^*,</math>
Line 110: Line 110:




== अनुप्रयोग ==
== एप्लिकेशन ==
चोल्स्की अपघटन का उपयोग मुख्य रूप से रैखिक समीकरण <math>\mathbf{Ax} = \mathbf{b}</math> के संख्यात्मक समाधान के लिए किया जाता है। यदि '''A''' सममित और धनात्मक निश्चित है, तो हम पहले चॉलेस्की अपघटन  <math>\mathbf{Ax} = \mathbf{b}</math> की गणना करके  <math>\mathbf{A} = \mathbf{LL}^\mathrm{*}</math> को हल कर सकते हैं। फिर आगे प्रतिस्थापन द्वारा y के लिए  <math>\mathbf{Ly} = \mathbf{b}</math> को हल करना और अंत में x के लिए वापस प्रतिस्थापन द्वारा <math>\mathbf{L^*x} = \mathbf{y}</math> को हल करना।
चोल्स्की अपघटन का उपयोग मुख्य रूप से रैखिक समीकरण <math>\mathbf{Ax} = \mathbf{b}</math> के संख्यात्मक समाधान के लिए किया जाता है। यदि '''A''' सममित और धनात्मक निश्चित है, तो हम पहले चॉलेस्की अपघटन  <math>\mathbf{Ax} = \mathbf{b}</math> की गणना करके  <math>\mathbf{A} = \mathbf{LL}^\mathrm{*}</math> को संशोधन कर सकते हैं। फिर आगे प्रतिस्थापन द्वारा y के लिए  <math>\mathbf{Ly} = \mathbf{b}</math> को संशोधन करना और अंत में x के लिए वापस प्रतिस्थापन द्वारा <math>\mathbf{L^*x} = \mathbf{y}</math> को संशोधन करना।


<math>\mathbf{LL}^\mathrm{*}</math> अपघटन में वर्गमूल लेने से बचने का एक वैकल्पिक तरीका LDL अपघटन <math>\mathbf{A} = \mathbf{LDL}^\mathrm{*}</math> की गणना करना है, फिर y के लिए <math>\mathbf{Ly} = \mathbf{b}</math> को हल करना, और अंत में <math>\mathbf{DL}^\mathrm{*}\mathbf{x} = \mathbf{y}</math> को हल करना।
<math>\mathbf{LL}^\mathrm{*}</math> अपघटन में वर्गमूल लेने से संरक्षण का एक वैकल्पिक तरीका LDL अपघटन <math>\mathbf{A} = \mathbf{LDL}^\mathrm{*}</math> की गणना करना है, फिर y के लिए <math>\mathbf{Ly} = \mathbf{b}</math> को संशोधन करना, और अंत में <math>\mathbf{DL}^\mathrm{*}\mathbf{x} = \mathbf{y}</math> को संशोधन करना।


रैखिक प्रणालियों के लिए जिन्हें सममित रूप में रखा जा सकता है, अधितकम दक्षता और संख्यात्मक स्थिरता के लिए चोल्स्की अपघटन (या इसका LDL संस्करण) वरण की विधि है। LU अपघटन की तुलना में, यह लगभग दोगुना सक्षम है।<ref name="NR"/>
रैखिक प्रणालियों के लिए जिन्हें सममित रूप में रखा जा सकता है, अधितकम दक्षता और संख्यात्मक स्थिरता के लिए चोल्स्की अपघटन (या इसका LDL संस्करण) वरण की विधि है। LU अपघटन की तुलना में, यह लगभग दोगुना सक्षम है।<ref name="NR"/>
Line 123: Line 123:


=== गैर रेखीय अनुकूलन ===
=== गैर रेखीय अनुकूलन ===
न्यूटन की विधि के परिवर्त का उपयोग करके गैर-रेखीय बहु-भिन्न फलनों को उनके मापदंडों पर कम किया जा सकता है, जिन्हें अर्ध-न्यूटन विधियां कहा जाता है। पुनरावृति k पर खोज एक दिशा में <math> p_k </math> पुनरावृत्ति है जिसे <math> B_k p_k  =  -g_k </math> के लिए <math> p_k </math>को हल करके परिभाषित किया जाता है, जहां <math> p_k </math>चरण की दिशा है, <math> g_k </math> प्रवणता है, और <math> B_k </math> प्रत्येक पुनरावृत्ति पर श्रेणी-1 संशोधन को पुनरावर्त करके गठित हेसियन आव्यूह का एक अनुमान है। दो प्रसिद्ध संशोधन सूत्र को डेविडन-फ्लेचर-पॉवेल (डीएफपी) और ब्रोयडेन-फ्लेचर-गोल्डफ़ार्ब-शैनो (बीएफजीएस) कहा जाता है। पूर्णांक त्रुटि के माध्यम से धनात्मक-निश्चित स्थिति के नुकसान से बचा जा सकता है यदि हेसियन के व्युत्क्रम के सन्निकटन को संशोधित करने के अतिरिक्त, हेसियन आव्यूह के एक सन्निकटन के चोल्स्की अपघटन को संशोधित किया जाता है।<ref>Arora, J.S. ''Introduction to Optimum Design'' (2004), p. 327. https://books.google.com/books?id=9FbwVe577xwC&pg=PA327</ref>
न्यूटन की विधि के परिवर्त का उपयोग करके गैर-रेखीय बहु-भिन्न फंक्शनों को उनके मापदंडों पर कम किया जा सकता है, जिन्हें अर्ध-न्यूटन विधियां कहा जाता है। पुनरावृति k पर खोज एक दिशा में <math> p_k </math> पुनरावृत्ति है जिसे <math> B_k p_k  =  -g_k </math> के लिए <math> p_k </math>को संशोधन करके परिभाषित किया जाता है, जहां <math> p_k </math>चरण की दिशा है, <math> g_k </math> प्रवणता है, और <math> B_k </math> प्रत्येक पुनरावृत्ति पर श्रेणी-1 संशोधन को पुनरावर्त करके निर्मित हेसियन आव्यूह का एक अनुमान है। दो प्रसिद्ध संशोधन सूत्र को डेविडन-फ्लेचर-पॉवेल (डीएफपी) और ब्रोयडेन-फ्लेचर-गोल्डफ़ार्ब-शैनो (बीएफजीएस) कहा जाता है। पूर्णांक त्रुटि के माध्यम से धनात्मक-निश्चित स्थिति के हानि से संरक्षित किया जा सकता है यदि हेसियन के व्युत्क्रम के सन्निकटन को संशोधित करने के अतिरिक्त, हेसियन आव्यूह के एक सन्निकटन के चोल्स्की अपघटन को संशोधित किया जाता है।<ref>Arora, J.S. ''Introduction to Optimum Design'' (2004), p. 327. https://books.google.com/books?id=9FbwVe577xwC&pg=PA327</ref>




Line 135: Line 135:


=== आव्यूह व्युत्क्रमण ===
=== आव्यूह व्युत्क्रमण ===
हर्मिटियन आव्यूह के स्पष्ट व्युत्क्रम की गणना कोलेस्की अपघटन द्वारा की जा सकती है, जो कि <math>n^3</math> संक्रिया (<math>\tfrac{1}{2} n^3</math> गुणन) का उपयोग करके रैखिक प्रणालियों को हल करने के समान है।<ref name="kri"/> संपूर्ण व्युत्क्रम को उसी स्थान पर कुशलतापूर्वक निष्पादित किया जा सकता है।
हर्मिटियन आव्यूह के स्पष्ट व्युत्क्रम की गणना कोलेस्की अपघटन द्वारा की जा सकती है, जो कि <math>n^3</math> संक्रिया (<math>\tfrac{1}{2} n^3</math> गुणन) का उपयोग करके रैखिक प्रणालियों को संशोधन करने के समान है।<ref name="kri"/> संपूर्ण व्युत्क्रम को समष्टि पर कुशलतापूर्वक निष्पादित किया जा सकता है।


गैर-हर्मिटियन आव्यूह '''B''' को निम्नलिखित पहचान का उपयोग करके व्युत्क्रमण भी किया जा सकता है, जहां '''BB'''* सदैव हर्मिटियन होगा:
गैर-हर्मिटियन आव्यूह '''B''' को निम्नलिखित पहचान का उपयोग करके व्युत्क्रमण भी किया जा सकता है, जहां '''BB'''* सदैव हर्मिटियन होगा:
Line 145: Line 145:
चोल्स्की अपघटन की गणना के लिए विभिन्न विधियाँ हैं। सामान्य रूप से उपयोग किए जाने वाले एल्गोरिदम की संगणनात्मक जटिलता सामान्य रूप से ''O''(''n''<sup>3</sup>) है।{{Citation needed|date=June 2011}} नीचे वर्णित सभी एल्गोरिदम में वास्तविक रूप के लिए लगभग (1/3)''n''<sup>3</sup> एफएलओपी (''n''<sup>3</sup>/6 गुणन और समान संख्या में जोड़) और जटिल रूप के लिए (4/3)''n''<sup>3</sup> एफएलओपी सम्मिलित हैं,<ref>?potrf Intel® Math Kernel Library [https://software.intel.com/content/www/us/en/develop/documentation/onemkl-developer-reference-c/top/lapack-routines/lapack-linear-equation-routines/lapack-linear-equation-computational-routines/matrix-factorization-lapack-computational-routines/potrf.html#potrf]</ref> जहां n का आकार आव्यूह '''A''' है। इसलिए, उनके पास LU अपघटन की अर्ध-कीमत है, जो 2''n''<sup>3</sup>/3 एफएलओपी (ट्रेफेथेन और बाउ 1997 देखें) का उपयोग करता है।
चोल्स्की अपघटन की गणना के लिए विभिन्न विधियाँ हैं। सामान्य रूप से उपयोग किए जाने वाले एल्गोरिदम की संगणनात्मक जटिलता सामान्य रूप से ''O''(''n''<sup>3</sup>) है।{{Citation needed|date=June 2011}} नीचे वर्णित सभी एल्गोरिदम में वास्तविक रूप के लिए लगभग (1/3)''n''<sup>3</sup> एफएलओपी (''n''<sup>3</sup>/6 गुणन और समान संख्या में जोड़) और जटिल रूप के लिए (4/3)''n''<sup>3</sup> एफएलओपी सम्मिलित हैं,<ref>?potrf Intel® Math Kernel Library [https://software.intel.com/content/www/us/en/develop/documentation/onemkl-developer-reference-c/top/lapack-routines/lapack-linear-equation-routines/lapack-linear-equation-computational-routines/matrix-factorization-lapack-computational-routines/potrf.html#potrf]</ref> जहां n का आकार आव्यूह '''A''' है। इसलिए, उनके पास LU अपघटन की अर्ध-कीमत है, जो 2''n''<sup>3</sup>/3 एफएलओपी (ट्रेफेथेन और बाउ 1997 देखें) का उपयोग करता है।


नीचे दिए गए एल्गोरिदम में से कौन सा तेज है कार्यान्वयन के विवरण पर निर्भर करता है। सामान्य रूप से, पहला एल्गोरिदम अल्प मंद होगा क्योंकि यह डेटा को कम नियमित तरीके से अभिगम्य करता है।
नीचे दिए गए एल्गोरिदम में से कौन सा तीव्र है कार्यान्वयन के विवरण पर निर्भर करता है। सामान्य रूप से, पहला एल्गोरिदम अल्प मंद होगा क्योंकि यह डेटा को कम नियमित तरीके से अभिगम्य करता है।


=== चोल्स्की एल्गोरिथम ===
=== चोल्स्की एल्गोरिथम ===
Line 180: Line 180:
0                & 0 & \mathbf{B}^{(i)} - \frac{1}{a_{i,i}} \mathbf{b}_{i} \mathbf{b}_{i}^{*}
0                & 0 & \mathbf{B}^{(i)} - \frac{1}{a_{i,i}} \mathbf{b}_{i} \mathbf{b}_{i}^{*}
\end{pmatrix}.</math>
\end{pmatrix}.</math>
ध्यान दें कि '''b'''<sub>''i''</sub> '''b'''*<sub>''i''</sub> एक बाहरी उत्पाद है, इसलिए इस एल्गोरिदम को (गोलब और वैन लोन) में बाहरी-उत्पाद संस्करण कहा जाता है।
ध्यान दें कि '''b'''<sub>''i''</sub> '''b'''*<sub>''i''</sub> एक बाहरी गुणन है, इसलिए इस एल्गोरिदम को (गोलब और वैन लोन) में बाहरी-गुणन संस्करण कहा जाता है।


हम इसे i से 1 से n तक पुनरावर्ती हैं। n चरणों के बाद, हमें '''A'''<sup>(''n''+1)</sup> = '''I''' मिलता है। इसलिए, हम जिस निम्न त्रिभुजीय आव्यूह ''L'' की जांच कर रहे हैं, उसकी गणना इस प्रकार की जाती है
हम इसे i से 1 से n तक पुनरावर्ती हैं। n चरणों के बाद, हमें '''A'''<sup>(''n''+1)</sup> = '''I''' मिलता है। इसलिए, हम जिस निम्न त्रिभुजीय आव्यूह ''L'' की जांच कर रहे हैं, उसकी गणना इस प्रकार की जाती है
Line 255: Line 255:
}
}
</syntaxhighlight>
</syntaxhighlight>
यदि वांछित हो तो अभिगम्य का कोई भी पैटर्न संपूर्ण गणना को उसी स्थान पर निष्पादित करने की स्वीकृति देता है।
यदि वांछित हो तो अभिगम्य का कोई भी पैटर्न संपूर्ण गणना को समष्टि पर निष्पादित करने की स्वीकृति देता है।


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


अब, मान लीजिए कि चोल्स्की अपघटन प्रयुक्त होता है। जैसा ऊपर बताया गया है, एल्गोरिदम दो गुना तीव्र होगा। इसके अतिरिक्त, कोई [[धुरी तत्व|पिवट तत्व]] आवश्यक नहीं है, और त्रुटि सदैव छोटी होगी। विशेष रूप से, यदि हम '''Ax = b''' को हल करना चाहते हैं, और y परिकलित समाधान को दर्शाता है, तो y विकृत प्रणाली '''(A + E) y = b''' को हल करता है, जहाँ
अब, मान लीजिए कि चोल्स्की अपघटन प्रयुक्त होता है। जैसा ऊपर बताया गया है, एल्गोरिदम दो गुना तीव्र होगा। इसके अतिरिक्त, कोई [[धुरी तत्व|पिवट तत्व]] आवश्यक नहीं है, और त्रुटि सदैव कम होगी। विशेष रूप से, यदि हम '''Ax = b''' को संशोधन करना चाहते हैं, और y परिकलित समाधान को दर्शाता है, तो y विकृत प्रणाली '''(A + E) y = b''' को संशोधन करता है, जहाँ
:<math> \|\mathbf{E}\|_2 \le c_n \varepsilon \|\mathbf{A}\|_2. </math>
:<math> \|\mathbf{E}\|_2 \le c_n \varepsilon \|\mathbf{A}\|_2. </math>
यहां ||·||<sub>2</sub> [[मैट्रिक्स मानदंड|आव्यूह मानदंड]] है | 2-मानदंड है, और ''c<sub>n</sub>'' n के आधार पर एक छोटा स्थिरांक है, और ε इकाई पूर्णांक को दर्शाता है।
यहां ||·||<sub>2</sub> [[मैट्रिक्स मानदंड|आव्यूह मानक]] है | 2-मानक है, और ''c<sub>n,</sub>'' n के आधार पर एक लघु स्थिरांक है, और ε इकाई पूर्णांक को दर्शाता है।


चॉल्स्की अपघटन के बारे में जागरूक होने के लिए एक चिंता वर्ग जड़ों का उपयोग है। यदि गुणनखंड किया जा रहा आव्यूह आवश्यक रूप से धनात्मक निश्चित है, तो वर्गमूल के अंतर्गत संख्याएँ परिशुद्ध अंकगणित में सदैव धनात्मक होती हैं। तथापि, पूर्णांक त्रुटियों के कारण संख्याएँ ऋणात्मक हो सकती हैं, जिस स्थिति में एल्गोरिथम जारी नहीं रह सकता है। हालाँकि, यह केवल तभी हो सकता है जब आव्यूह बहुत विकृत स्थिति में हो। इसे संबोधित करने का एक तरीका धनात्मक-निश्चितता को बढ़ावा देने के प्रयास में विघटित होने वाले आव्यूह में एक विकर्ण संशोधन आव्यूह जोड़ना है।<ref>{{cite journal|last=Fang|first=Haw-ren|author2=O'Leary, Dianne P.|author2-link= Dianne P. O'Leary |title=Modified Cholesky Algorithms: A Catalog with New Approaches|date=8 August 2006|url=http://www.cs.umd.edu/~oleary/tr/tr4807.pdf}}</ref> हालांकि यह अपघटन की परिशुद्धता को कम कर सकता है, यह अन्य कारणों से बहुत अनुकूल हो सकता है; उदाहरण के लिए, अनुकूलन में न्यूटन की विधि का प्रदर्शन करते समय, एक विकर्ण आव्यूह जोड़ने से इष्टतम से दूर होने पर स्थिरता में संशोधन हो सकता है।
चॉल्स्की अपघटन के बारे में अभिज्ञ होने के लिए एक तर्क वर्गमूल का उपयोग है। यदि गुणनखंड किया जा रहा आव्यूह आवश्यक रूप से धनात्मक निश्चित है, तो वर्गमूल के अंतर्गत संख्याएँ परिशुद्ध अंकगणित में सदैव धनात्मक होती हैं। तथापि, पूर्णांक त्रुटियों के कारण संख्याएँ ऋणात्मक हो सकती हैं, जिस स्थिति में एल्गोरिथम जारी नहीं रह सकता है। हालाँकि, यह केवल तभी हो सकता है जब आव्यूह अधिक विकृत स्थिति में हो। इसे संबोधित करने का एक तरीका धनात्मक-निश्चितता को बढ़ावा देने के प्रयास में विघटित होने वाले आव्यूह में एक विकर्ण संशोधन आव्यूह जोड़ना है।<ref>{{cite journal|last=Fang|first=Haw-ren|author2=O'Leary, Dianne P.|author2-link= Dianne P. O'Leary |title=Modified Cholesky Algorithms: A Catalog with New Approaches|date=8 August 2006|url=http://www.cs.umd.edu/~oleary/tr/tr4807.pdf}}</ref> हालांकि यह अपघटन की परिशुद्धता को कम कर सकता है, यह अन्य कारणों से अधिक अनुकूल हो सकता है; उदाहरण के लिए, अनुकूलन में न्यूटन की विधि का प्रदर्शन करते समय, एक विकर्ण आव्यूह जोड़ने से इष्टतम से दूर होने पर स्थिरता में संशोधन हो सकता है।


=== LDL अपघटन ===
=== LDL अपघटन ===
Line 292: Line 292:
:<math> D_j = A_{jj} - \sum_{k=1}^{j-1} L_{jk}^2 D_k, </math>
:<math> D_j = A_{jj} - \sum_{k=1}^{j-1} L_{jk}^2 D_k, </math>
:<math> L_{ij} = \frac{1}{D_j} \left( A_{ij} - \sum_{k=1}^{j-1} L_{ik} L_{jk} D_k \right) \quad \text{for } i>j. </math>
:<math> L_{ij} = \frac{1}{D_j} \left( A_{ij} - \sum_{k=1}^{j-1} L_{ik} L_{jk} D_k \right) \quad \text{for } i>j. </math>
यह तब तक काम करता है जब तक '''D''' में उत्पन्न विकर्ण तत्व गैर-शून्य रहते हैं। अपघटन तब अद्वितीय है। यदि '''A''' वास्तविक है तो '''D''' और '''L''' वास्तविक हैं।
यह तब तक कार्य करता है जब तक '''D''' में उत्पन्न विकर्ण तत्व गैर-शून्य रहते हैं। अपघटन तब अद्वितीय है। यदि '''A''' वास्तविक है तो '''D''' और '''L''' वास्तविक हैं।


जटिल हर्मिटियन आव्यूह '''A''' के लिए, निम्न सूत्र प्रयुक्त होता है:
जटिल हर्मिटियन आव्यूह '''A''' के लिए, निम्न सूत्र प्रयुक्त होता है:
Line 298: Line 298:
:<math> D_{j} = A_{jj} - \sum_{k=1}^{j-1} L_{jk}L_{jk}^* D_k, </math>
:<math> D_{j} = A_{jj} - \sum_{k=1}^{j-1} L_{jk}L_{jk}^* D_k, </math>
:<math> L_{ij} = \frac{1}{D_j} \left( A_{ij} - \sum_{k=1}^{j-1} L_{ik} L_{jk}^* D_k \right) \quad \text{for } i>j. </math>
:<math> L_{ij} = \frac{1}{D_j} \left( A_{ij} - \sum_{k=1}^{j-1} L_{ik} L_{jk}^* D_k \right) \quad \text{for } i>j. </math>
पुनः, अभिगम्य का पैटर्न वांछित होने पर पूरी गणना को उसी स्थान में करने की स्वीकृति देता है।
पुनः, अभिगम्य का पैटर्न वांछित होने पर पूरी गणना को समष्टि में करने की स्वीकृति देता है।


=== ब्लॉक संस्करण ===
=== ब्लॉक संस्करण ===
Line 330: Line 330:
:<math>\mathbf D_j = \mathbf A_{jj} - \sum_{k=1}^{j-1} \mathbf L_{jk} \mathbf D_k \mathbf L_{jk}^\mathrm T,</math>
:<math>\mathbf D_j = \mathbf A_{jj} - \sum_{k=1}^{j-1} \mathbf L_{jk} \mathbf D_k \mathbf L_{jk}^\mathrm T,</math>
:<math>\mathbf L_{ij} = \left(\mathbf A_{ij} - \sum_{k=1}^{j-1} \mathbf L_{ik} \mathbf D_k \mathbf L_{jk}^\mathrm T\right) \mathbf D_j^{-1}.</math>
:<math>\mathbf L_{ij} = \left(\mathbf A_{ij} - \sum_{k=1}^{j-1} \mathbf L_{ik} \mathbf D_k \mathbf L_{jk}^\mathrm T\right) \mathbf D_j^{-1}.</math>
इसमें आव्यूह उत्पाद और स्पष्ट व्युत्क्रमण सम्मिलित है, इस प्रकार व्यावहारिक ब्लॉक आकार को सीमित करता है।
इसमें आव्यूह गुणन और स्पष्ट व्युत्क्रमण सम्मिलित है, इस प्रकार व्यावहारिक ब्लॉक आकार को सीमित करता है।


=== अपघटन को संशोधित करना ===
=== अपघटन को संशोधित करना ===
Line 338: Line 338:
विशिष्ट स्थिति, जहां संशोधित आव्यूह <math> \tilde{\mathbf{A}} </math> आव्यूह <math>\mathbf{A}</math> द्वारा <math> \tilde{\mathbf{A}} = \mathbf{A} + \mathbf{x} \mathbf{x}^* </math> से संबंधित है, एक पद संशोधन के रूप में जाना जाता है।
विशिष्ट स्थिति, जहां संशोधित आव्यूह <math> \tilde{\mathbf{A}} </math> आव्यूह <math>\mathbf{A}</math> द्वारा <math> \tilde{\mathbf{A}} = \mathbf{A} + \mathbf{x} \mathbf{x}^* </math> से संबंधित है, एक पद संशोधन के रूप में जाना जाता है।


यहां मैटलैब सिंटैक्स में लिखा गया एक फलन<ref>Based on: {{cite book|last=Stewart|first=G. W.|title=Basic decompositions|year=1998|publisher=Soc. for Industrial and Applied Mathematics|location=Philadelphia|isbn=0-89871-414-1}}</ref> है जो एक पद संशोधन को प्राप्त करता है:
यहां मैटलैब सिंटैक्स में लिखा गया एक फ़ंक्शन<ref>Based on: {{cite book|last=Stewart|first=G. W.|title=Basic decompositions|year=1998|publisher=Soc. for Industrial and Applied Mathematics|location=Philadelphia|isbn=0-89871-414-1}}</ref> है जो एक पद संशोधन को प्राप्त करता है:
<syntaxhighlight lang="matlab">
<syntaxhighlight lang="matlab">
function [L] = cholupdate(L, x)
function [L] = cholupdate(L, x)
Line 357: Line 357:


==== एक श्रेणी डाउनडेट ====
==== एक श्रेणी डाउनडेट ====
एक पद डाउनडेट एक पद संशोधन के समान है, इसके अतिरिक्त <math> \tilde{\mathbf{A}} = \mathbf{A} - \mathbf{x} \mathbf{x}^* </math> जोड़ को व्यवकलन द्वारा प्रतिस्थापित किया जाता है। यह केवल तभी काम करता है जब नया आव्यूह <math> \tilde{\mathbf{A}} </math> अभी भी धनात्मक निश्चित है।
एक पद डाउनडेट एक पद संशोधन के समान है, इसके अतिरिक्त <math> \tilde{\mathbf{A}} = \mathbf{A} - \mathbf{x} \mathbf{x}^* </math> जोड़ को व्यवकलन द्वारा प्रतिस्थापित किया जाता है। यह केवल तभी कार्य करता है जब नया आव्यूह <math> \tilde{\mathbf{A}} </math> अभी भी धनात्मक निश्चित है।


ऊपर दिखाए गए एक श्रेणी संशोधन के लिए कोड को एक पद डाउनडेट करने के लिए आसानी से अनुकूलित किया जा सकता है: किसी को केवल <code>r</code> और <code>L((k+1):n, k)</code> के समनुदेशन में दो अतिरिक्त को व्यवकलन द्वारा प्रतिस्थापित करने की आवश्यकता है।
ऊपर दिखाए गए एक श्रेणी संशोधन के लिए कोड को एक पद डाउनडेट करने के लिए आसानी से अनुकूलित किया जा सकता है: किसी को केवल <code>r</code> और <code>L((k+1):n, k)</code> के समनुदेशन में दो अतिरिक्त को व्यवकलन द्वारा प्रतिस्थापित करने की आवश्यकता है।
Line 379: Line 379:
\end{pmatrix},
\end{pmatrix},
</math>
</math>
फिर एक नए आव्यूह <math> \tilde{\mathbf{A}} </math> के लिए, जो <math> \mathbf A </math> के समान है,लेकिन नई रो और कॉलम के सम्मिलन के साथ,
फिर एक नए आव्यूह <math> \tilde{\mathbf{A}} </math> के लिए, जो <math> \mathbf A </math> के समान है,लेकिन नई रो और कॉलम के प्रविष्ट के साथ,
:<math>\begin{align}
:<math>\begin{align}
\tilde{\mathbf{A}} &=  
\tilde{\mathbf{A}} &=  
Line 409: Line 409:
\end{align}
\end{align}
</math>
</math>
इन सूत्रों का उपयोग किसी भी स्थिति में रो या कॉलम के सम्मिलन के बाद चोल्स्की कारक को निर्धारित करने के लिए किया जा सकता है, यदि हम रो और कॉलम आयामों को उपयुक्त रूप से (शून्य सहित) समुच्चय करते हैं। व्युत्क्रमण समस्या, जब हमारे पास है
इन सूत्रों का उपयोग किसी भी स्थिति में रो या कॉलम के प्रविष्ट के बाद चोल्स्की कारक को निर्धारित करने के लिए किया जा सकता है, यदि हम रो और कॉलम आयामों को उपयुक्त रूप से (शून्य सहित) समुच्चय करते हैं। व्युत्क्रमण समस्या, जब हमारे पास है


:<math>\begin{align}
:<math>\begin{align}
Line 469: Line 469:
k \rightarrow \infty
k \rightarrow \infty
</math>  
</math>  
:संक्रियक मानदंड में धनात्मक निश्चित स्थितियो से, प्रत्येक <math> \mathbf{A}_k </math> में चॉलेस्की अपघटन <math> \mathbf{A}_k = \mathbf{L}_k\mathbf{L}_k^* </math> होता है। संक्रियक मानदंड की गुण के अनुसार,
:संक्रियक मानक में धनात्मक निश्चित स्थितियो से, प्रत्येक <math> \mathbf{A}_k </math> में चॉलेस्की अपघटन <math> \mathbf{A}_k = \mathbf{L}_k\mathbf{L}_k^* </math> होता है। संक्रियक मानक की गुण के अनुसार,


:<math>\| \mathbf{L}_k \|^2 \leq \| \mathbf{L}_k \mathbf{L}_k^* \| = \| \mathbf{A}_k \| \,.</math>
:<math>\| \mathbf{L}_k \|^2 \leq \| \mathbf{L}_k \mathbf{L}_k^* \| = \| \mathbf{A}_k \| \,.</math>
<math>\leq</math> h> इसलिए मान्य है क्योंकि <math>M_n(\mathbb{C})</math> संक्रियक मानदंड से सुसज्जित एक C* बीजगणित है। इसलिए <math> \left(\mathbf{L}_k \right)_k</math> संक्रियक के [[बनच स्थान|बनच समष्टि]] में एक परिबद्ध समुच्चय है, इसलिए [[अपेक्षाकृत कॉम्पैक्ट|अपेक्षाकृत सुसंहत]] है। क्योंकि अंतर्निहित सदिश समष्टि परिमित-आयामी है। परिणामस्वरूप, इसका एक अभिसारी परिणाम है, जिसे  <math> \left( \mathbf{L}_k \right)_k</math> सीमा के साथ <math> \mathbf{L}</math> द्वारा भी निरूपित किया जाता है। यह आसानी से जांचा जा सकता है कि इस <math> \mathbf{L}</math> मे वांछित गुण हैं, अर्थात <math> \mathbf{A} = \mathbf{L}\mathbf{L}^* </math> और <math> \mathbf{L}</math> सभी <math> x</math> और <math> y</math> के लिए गैर-ऋणात्मक विकर्ण प्रविष्टियों के साथ निम्न त्रिभुजीय है
<math>\leq</math> h> इसलिए मान्य है क्योंकि <math>M_n(\mathbb{C})</math> संक्रियक मानक से सुसज्जित एक C* बीजगणित है। इसलिए <math> \left(\mathbf{L}_k \right)_k</math> संक्रियक के [[बनच स्थान|बनच समष्टि]] में एक परिबद्ध समुच्चय है, इसलिए [[अपेक्षाकृत कॉम्पैक्ट|अपेक्षाकृत सुसंहत]] है। क्योंकि अंतर्निहित सदिश समष्टि परिमित-आयामी है। परिणामस्वरूप, इसका एक अभिसारी परिणाम है, जिसे  <math> \left( \mathbf{L}_k \right)_k</math> सीमा के साथ <math> \mathbf{L}</math> द्वारा भी निरूपित किया जाता है। यह आसानी से जांचा जा सकता है कि इस <math> \mathbf{L}</math> मे वांछित गुण हैं, अर्थात <math> \mathbf{A} = \mathbf{L}\mathbf{L}^* </math> और <math> \mathbf{L}</math> सभी <math> x</math> और <math> y</math> के लिए गैर-ऋणात्मक विकर्ण प्रविष्टियों के साथ निम्न त्रिभुजीय है
:<math>  
:<math>  
\langle \mathbf{A} x, y \rangle  
\langle \mathbf{A} x, y \rangle  
Line 479: Line 479:
= \langle \mathbf{L} \mathbf{L}^*x, y \rangle \,.  
= \langle \mathbf{L} \mathbf{L}^*x, y \rangle \,.  
</math>
</math>
इसलिए <math> \mathbf{A} = \mathbf{L}\mathbf{L}^* </math>प्राप्त होता है। क्योंकि अंतर्निहित सदिश समष्टि परिमित-आयामी है, संक्रियक के स्थान पर सभी सांस्थिति समकक्ष हैं। इसलिए <math> \left( \mathbf{L}_k \right)_k</math> सामान्य अर्थों में <math> \mathbf{L}</math> आदर्श रूप में <math> \left( \mathbf{L}_k \right)_k</math> की ओर प्रवृत्त होता है और <math> \mathbf{L}</math> प्रविष्टिवार की ओर प्रवृत्त होता है। बदले में इसका तात्पर्य यह है कि, चूंकि प्रत्येक <math> \mathbf{L}_k</math> गैर-ऋणात्मक विकर्ण प्रविष्टियों के साथ निम्न त्रिभुजीय है, और इसिलिए <math> \mathbf{L}</math> भी है।
इसलिए <math> \mathbf{A} = \mathbf{L}\mathbf{L}^* </math>प्राप्त होता है। क्योंकि अंतर्निहित सदिश समष्टि परिमित-आयामी है, संक्रियक के समष्टि पर सभी सांस्थिति समकक्ष हैं। इसलिए <math> \left( \mathbf{L}_k \right)_k</math> सामान्य अर्थों में <math> \mathbf{L}</math> आदर्श रूप में <math> \left( \mathbf{L}_k \right)_k</math> की ओर प्रवृत्त होता है और <math> \mathbf{L}</math> प्रविष्टिवार की ओर प्रवृत्त होता है। बदले में इसका तात्पर्य यह है कि, चूंकि प्रत्येक <math> \mathbf{L}_k</math> गैर-ऋणात्मक विकर्ण प्रविष्टियों के साथ निम्न त्रिभुजीय है, और इसिलिए <math> \mathbf{L}</math> भी है।


=== QR अपघटन द्वारा प्रमाण ===
=== QR अपघटन द्वारा प्रमाण ===
Line 510: Line 510:
== प्रोग्रामिंग पुस्तकालयों में कार्यान्वयन ==
== प्रोग्रामिंग पुस्तकालयों में कार्यान्वयन ==
* [[सी प्रोग्रामिंग भाषा|C प्रोग्रामिंग भाषा]]: [[जीएनयू वैज्ञानिक पुस्तकालय|जीएनयू वैज्ञानिक लाइब्रेरी]] चोल्स्की अपघटन के कई कार्यान्वयन प्रदान करती है।
* [[सी प्रोग्रामिंग भाषा|C प्रोग्रामिंग भाषा]]: [[जीएनयू वैज्ञानिक पुस्तकालय|जीएनयू वैज्ञानिक लाइब्रेरी]] चोल्स्की अपघटन के कई कार्यान्वयन प्रदान करती है।
* [[मैक्सिमा (सॉफ्टवेयर)|अधिकतम (सॉफ्टवेयर)]] कंप्यूटर बीजगणित प्रणाली: फलन <code>cholesky</code> चोल्स्की अपघटन की गणना करता है।
* [[मैक्सिमा (सॉफ्टवेयर)|अधिकतम (सॉफ्टवेयर)]] कंप्यूटर बीजगणित प्रणाली: फ़ंक्शन <code>cholesky</code> चोल्स्की अपघटन की गणना करता है।
* जीएनयू ऑक्टेव संख्यात्मक संगणना प्रणाली एक चोल्स्की अपघटन की गणना, संशोधित और प्रयुक्त करने के लिए कई फलन प्रदान करता है।
* जीएनयू ऑक्टेव संख्यात्मक संगणना प्रणाली एक चोल्स्की अपघटन की गणना, संशोधित और प्रयुक्त करने के लिए कई फ़ंक्शन प्रदान करता है।
* [[LAPACK|लैपैक]] लाइब्रेरी चोलस्की अपघटन का एक उच्च प्रदर्शन कार्यान्वयन प्रदान करता है जिसे [[फोरट्रान]], [[सी (प्रोग्रामिंग भाषा)|C (प्रोग्रामिंग भाषा)]] और अधिकांश भाषाओं से अभिगम्य किया जा सकता है।
* [[LAPACK|लैपैक]] लाइब्रेरी चोलस्की अपघटन का एक उच्च प्रदर्शन कार्यान्वयन प्रदान करता है जिसे [[फोरट्रान]], [[सी (प्रोग्रामिंग भाषा)|C (प्रोग्रामिंग भाषा)]] और अधिकांश भाषाओं से अभिगम्य किया जा सकता है।
* [[पायथन (प्रोग्रामिंग भाषा)]] में, फलन <code>cholesky</code> से <code>numpy.linalg</code> मॉड्यूल चोल्स्की अपघटन करता है।
* [[पायथन (प्रोग्रामिंग भाषा)]] में, फ़ंक्शन <code>cholesky</code> से <code>numpy.linalg</code> मॉड्यूल चोल्स्की अपघटन करता है।
* मैटलैब में, <code>chol</code> फलन चोलस्की अपघटन देता है। ध्यान दें कि <code>chol</code> डिफ़ॉल्ट रूप से निर्दिष्ट आव्यूह के ऊपरी त्रिभुजीय कारक का उपयोग करता है, अर्थात यह <math>A = R^* R</math> की गणना करता है,जहां <math>R</math> उपरी त्रिकोण है। इसके अतिरिक्त निम्न त्रिभुजीय कारक का उपयोग करने के लिए एक चिन्ह पारित किया जा सकता है।
* मैटलैब में, <code>chol</code> फ़ंक्शन चोलस्की अपघटन देता है। ध्यान दें कि <code>chol</code> डिफ़ॉल्ट रूप से निर्दिष्ट आव्यूह के ऊपरी त्रिभुजीय कारक का उपयोग करता है, अर्थात यह <math>A = R^* R</math> की गणना करता है,जहां <math>R</math> उपरी त्रिकोण है। इसके अतिरिक्त निम्न त्रिभुजीय कारक का उपयोग करने के लिए एक चिन्ह पारित किया जा सकता है।
* [[आर (प्रोग्रामिंग भाषा)|R (प्रोग्रामिंग भाषा)]] में, <code>chol</code> फलन चोलस्की अपघटन देता है।
* [[आर (प्रोग्रामिंग भाषा)|R (प्रोग्रामिंग भाषा)]] में, <code>chol</code> फ़ंक्शन चोलस्की अपघटन देता है।
* [[जूलिया (प्रोग्रामिंग भाषा)]] में, <code>cholesky</code> फलन से <code>LinearAlgebra</code> मानक लाइब्रेरी चोलस्की अपघटन देता है।
* [[जूलिया (प्रोग्रामिंग भाषा)]] में, <code>cholesky</code> फ़ंक्शन से <code>LinearAlgebra</code> मानक लाइब्रेरी चोलस्की अपघटन देता है।
* गणित में, फलन<code>CholeskyDecomposition</code>आव्यूह पर प्रयुक्त किया जा सकता है।
* गणित में, फलन<code>CholeskyDecomposition</code>आव्यूह पर प्रयुक्त किया जा सकता है।
* [[सी ++|C ++]] में, कई रैखिक बीजगणित लाइब्रेरी इस अपघटन का समर्थन करते हैं:
* [[सी ++|C ++]] में, कई रैखिक बीजगणित लाइब्रेरी इस अपघटन का समर्थन करते हैं:
Line 523: Line 523:
** [[ जड़ | रूट]] पैकेज में, <code>TDecompChol</code> वर्ग उपलब्ध है।
** [[ जड़ | रूट]] पैकेज में, <code>TDecompChol</code> वर्ग उपलब्ध है।


* [[एनालिटिका (सॉफ्टवेयर)]] में, फलन <code>Decompose</code> चोल्स्की अपघटन देता है।
* [[एनालिटिका (सॉफ्टवेयर)]] में, फ़ंक्शन <code>Decompose</code> चोल्स्की अपघटन देता है।
* अपाचे सामान्य गणित लाइब्रेरी में एक कार्यान्वयन है जिसका उपयोग जावा, स्काला और किसी भी अन्य जेवीएम भाषा में किया जा सकता है।
* अपाचे सामान्य गणित लाइब्रेरी में एक कार्यान्वयन है जिसका उपयोग जावा, स्काला और किसी भी अन्य जेवीएम भाषा में किया जा सकता है।



Revision as of 16:57, 27 June 2023

रैखिक बीजगणित में, चोल्स्की अपघटन या चोल्स्की गुणनखंडन (उच्चारण /ʃəˈlɛski/ shə-LES-kee) एक हर्मिटियन, धनात्मक-निश्चित आव्यूह का एक निम्न त्रिभुजीय आव्यूह और उसके संयुग्मी स्थानान्तरण के गुणन में अपघटन है, जो कुशल संख्यात्मक समाधान के लिए उपयोगी है, जैसे, मोंटे कार्लो अनुकरण होता है। वास्तविक आव्यूह के लिए इसकी खोज आंद्रे-लुई चोल्स्की ने की थी और इसे मरणोपरांत 1924 में प्रकाशित किया गया था।[1] जब यह प्रयुक्त होता है, तो चोलेस्की अपघटन रैखिक समीकरणों की प्रणालियों को संशोधन करने के लिए LU अपघटन से लगभग दोगुना सक्षम होता है।[2]


कथन

हर्मिटियन आव्यूह धनात्मक-निश्चित आव्यूह A का चोल्स्की अपघटन, प्ररूप का अपघटन होता है

जहाँ L वास्तविक और धनात्मक विकर्ण प्रविष्टियों के साथ एक निम्न त्रिभुजीय आव्यूह है, और L*, L के संयुग्मी स्थानांतरण को दर्शाता है। प्रत्येक हर्मिटियन धनात्मक-निश्चित आव्यूह (और इस प्रकार प्रत्येक वास्तविक-मान सममित धनात्मक-निश्चित आव्यूह) में एक अद्वितीय चोल्स्की अपघटन होता है।[3]

उत्क्रम महत्वहीन है: यदि A को कुछ व्युत्क्रमणीय L, निम्न त्रिभुजीय या अन्यथा के लिए LL* के रूप में लिखा जा सकता है, तो A हर्मिटियन और धनात्मक निश्चित है।

जब A एक वास्तविक आव्यूह (इसलिए सममित धनात्मक-निश्चित) है, तो गुणनखंडन लिखा जा सकता है

जहां L धनात्मक विकर्ण प्रविष्टियों के साथ वास्तविक निम्न त्रिभुजीय आव्यूह है।[4][5][6]


धनात्मक अर्ध निश्चित आव्यूह

यदि एक हर्मिटियन आव्यूह A धनात्मक निश्चित के अतिरिक्त केवल धनात्मक अर्ध निश्चित है, तो इसमें अभी भी प्ररूप A = LL* का अपघटन है, जहाँ L की विकर्ण प्रविष्टियाँ शून्य होने की स्वीकृति है।[7] उदाहरण के लिए, अपघटन को अद्वितीय होने की आवश्यकता नहीं है:

हालाँकि, यदि A की श्रेणी r है, तो परिशुद्ध r धनात्मक विकर्ण तत्वों और n−r कॉलम वाला एक अद्वितीय निम्न त्रिभुजीय L होता है जिसमें सभी शून्य होते हैं।[8]

वैकल्पिक रूप से, जब एक पिवट विकल्प निर्धारित हो जाता है तो अपघटन को अद्वितीय बनाया जा सकता है। औपचारिक रूप से, यदि A श्रेणी r का एक n × n धनात्मक अर्धनिश्चित आव्यूह है, तो कम से कम एक क्रमपरिवर्तन आव्यूह P है, जैसे कि P A PT में P A PT = L L* के रूप में एक अद्वितीय अपघटन होता है, जिसमें होता है, जहां L1 धनात्मक विकर्ण वाला एक r × r निम्न त्रिभुजीय आव्यूह है।[9]


LDL अपघटन

उत्कृष्ट चोलेस्की अपघटन का एक निकटवर्ती संस्करण LDL अपघटन है,

जहां L एक निम्न इकाई त्रिभुजीय (एकत्रिभुजीय) आव्यूह है, और D एक विकर्ण आव्यूह है। अर्थात्, अपघटन में एक अतिरिक्त विकर्ण आव्यूह D को प्रस्तुत करने की कीमत पर L के विकर्ण तत्वों को 1 होना आवश्यक है। मुख्य लाभ यह है कि LDL अपघटन की गणना और अनिवार्य रूप से समान एल्गोरिदम के साथ उपयोग किया जा सकता है, लेकिन वर्गमूल निकालने से बचा जाता है।[10]

इस कारण से, LDL अपघटन को प्रायः वर्ग-मूल-मुक्त चोलेस्की अपघटन कहा जाता है। वास्तविक आव्यूहों के लिए, गुणनखंडन का रूप A = LDLT होता है और इसे प्रायः LDLT अपघटन (या LDLT अपघटन, या LDL′) के रूप में जाना जाता है। यह वास्तविक सममित आव्यूहों, A = QΛQT के ईजेन-अपघटन के समान है, लेकिन व्यवहार में यह अपेक्षाकृत अधिक भिन्न है क्योंकि Λ और D समान आव्यूह नहीं हैं।

LDL अपघटन रूप LL* के उत्कृष्ट चोल्स्की अपघटन से निम्नानुसार संबंधित है:

इसके विपरीत, एक धनात्मक निश्चित आव्यूह के उत्कृष्ट चोल्स्की अपघटन को देखते हुए, यदि S एक विकर्ण आव्यूह है जिसमें का मुख्य विकर्ण सम्मिलित है तो A को के रूप में विघटित किया जा सकता है जहां

(यह विकर्ण तत्व 1 बनाने के लिए प्रत्येक कॉलम को पुन: मापता है),

यदि A धनात्मक निश्चित है तो D के विकर्ण अवयव सभी धनात्मक हैं। धनात्मक अर्ध निश्चित A के लिए अपघटन सम्मिलित है जहां विकर्ण D पर गैर-शून्य तत्वों की संख्या परिशुद्ध A की श्रेणी है।[11] कुछ अनिश्चित आव्यूह जिनके लिए कोई चोलेस्की अपघटन सम्मिलित नहीं है, उनमें D में ऋणात्मक प्रविष्टियों के साथ LDL अपघटन होता है: यह पर्याप्त है कि A के पहले n−1 अग्रणी प्रमुख लघु व्युत्क्रमणीय हैं।[12]


उदाहरण

यहाँ एक सममित वास्तविक आव्यूह का चोल्स्की अपघटन है:

और यहाँ इसका LDLT अपघटन है:


एप्लिकेशन

चोल्स्की अपघटन का उपयोग मुख्य रूप से रैखिक समीकरण के संख्यात्मक समाधान के लिए किया जाता है। यदि A सममित और धनात्मक निश्चित है, तो हम पहले चॉलेस्की अपघटन की गणना करके को संशोधन कर सकते हैं। फिर आगे प्रतिस्थापन द्वारा y के लिए को संशोधन करना और अंत में x के लिए वापस प्रतिस्थापन द्वारा को संशोधन करना।

अपघटन में वर्गमूल लेने से संरक्षण का एक वैकल्पिक तरीका LDL अपघटन की गणना करना है, फिर y के लिए को संशोधन करना, और अंत में को संशोधन करना।

रैखिक प्रणालियों के लिए जिन्हें सममित रूप में रखा जा सकता है, अधितकम दक्षता और संख्यात्मक स्थिरता के लिए चोल्स्की अपघटन (या इसका LDL संस्करण) वरण की विधि है। LU अपघटन की तुलना में, यह लगभग दोगुना सक्षम है।[2]


रैखिक न्यूनतम वर्ग

A सममित और धनात्मक निश्चित के साथ रूप Ax = b की प्रणालियाँ अनुप्रयोगों में प्रायः सामने आती हैं। उदाहरण के लिए, रैखिक न्यूनतम वर्ग समस्याओं में सामान्य समीकरण इस रूप के होते हैं। ऐसा भी हो सकता है कि आव्यूह A एक ऊर्जा कार्यात्मकता से आता है, जो भौतिक विचारों से धनात्मक होना चाहिए; आंशिक अवकल समीकरणों के संख्यात्मक समाधान में ऐसा प्रायः होता है।

गैर रेखीय अनुकूलन

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


मोंटे कार्लो विधि

चॉल्स्की अपघटन का उपयोग सामान्य रूप से मोंटे कार्लो पद्धति में कई सहसंबद्ध चर वाले प्रणाली के अनुकरण के लिए किया जाता है। सहप्रसरण आव्यूह को निम्न-त्रिभुजीय L देने के लिए विघटित किया जाता है। इसे असंबद्ध प्रतिदर्शों u के एक सदिश पर प्रयुक्त करने से प्रणाली के सहप्रसरण गुणों के साथ एक प्रतिदर्श सदिश Lu उत्पन्न होता है।[14]

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

कलमन फ़िल्टर

तथाकथित सिग्मा बिंदुओं का एक समुच्चय चयन के लिए असुवासित कलमैन फ़िल्टर सामान्य रूप से चोल्स्की अपघटन का उपयोग करते हैं। कल्मन फ़िल्टर एक प्रणाली की औसत स्थिति को लंबाई N के सदिश x और N × N आव्यूह P के रूप में सहप्रसरण के रूप में पदांक प्राप्त करता है। आव्यूह P सदैव धनात्मक अर्ध-निश्चित होता है और इसे LLT में विघटित किया जा सकता है। 2N सदिश का एक समुच्चय बनाने के लिए L के कॉलम को माध्य x से जोड़ा और घटाया जा सकता है, जिसे सिग्मा बिन्दु कहा जाता है। ये सिग्मा बिंदु प्रणाली स्थिति के माध्य और सहप्रसरण को पूरी तरह से प्रग्रहण कर लेते हैं।

आव्यूह व्युत्क्रमण

हर्मिटियन आव्यूह के स्पष्ट व्युत्क्रम की गणना कोलेस्की अपघटन द्वारा की जा सकती है, जो कि संक्रिया ( गुणन) का उपयोग करके रैखिक प्रणालियों को संशोधन करने के समान है।[10] संपूर्ण व्युत्क्रम को समष्टि पर कुशलतापूर्वक निष्पादित किया जा सकता है।

गैर-हर्मिटियन आव्यूह B को निम्नलिखित पहचान का उपयोग करके व्युत्क्रमण भी किया जा सकता है, जहां BB* सदैव हर्मिटियन होगा:


गणना

चोल्स्की अपघटन की गणना के लिए विभिन्न विधियाँ हैं। सामान्य रूप से उपयोग किए जाने वाले एल्गोरिदम की संगणनात्मक जटिलता सामान्य रूप से O(n3) है।[citation needed] नीचे वर्णित सभी एल्गोरिदम में वास्तविक रूप के लिए लगभग (1/3)n3 एफएलओपी (n3/6 गुणन और समान संख्या में जोड़) और जटिल रूप के लिए (4/3)n3 एफएलओपी सम्मिलित हैं,[15] जहां n का आकार आव्यूह A है। इसलिए, उनके पास LU अपघटन की अर्ध-कीमत है, जो 2n3/3 एफएलओपी (ट्रेफेथेन और बाउ 1997 देखें) का उपयोग करता है।

नीचे दिए गए एल्गोरिदम में से कौन सा तीव्र है कार्यान्वयन के विवरण पर निर्भर करता है। सामान्य रूप से, पहला एल्गोरिदम अल्प मंद होगा क्योंकि यह डेटा को कम नियमित तरीके से अभिगम्य करता है।

चोल्स्की एल्गोरिथम

अपघटन आव्यूह 'L' की गणना करने के लिए उपयोग किया जाने वाला चोल्स्की एल्गोरिदम, गॉसियन उन्मूलन का एक संशोधित संस्करण है।

पुनरावर्ती एल्गोरिथम i := 1 और से प्रारंभ होता है

A(1) := A.

चरण i पर, आव्यूह A(i) का निम्नलिखित रूप है:

जहां Ii−1 आयाम i - 1 के पहचान आव्यूह को दर्शाता है।

यदि अब हम आव्यूह Li को परिभाषित करते हैं

ध्यान दें कि ai,i > 0 चूँकि A(i) धनात्मक निश्चित है, तो हम A(i) को इस प्रकार लिख सकते हैं

जहां

ध्यान दें कि bi b*i एक बाहरी गुणन है, इसलिए इस एल्गोरिदम को (गोलब और वैन लोन) में बाहरी-गुणन संस्करण कहा जाता है।

हम इसे i से 1 से n तक पुनरावर्ती हैं। n चरणों के बाद, हमें A(n+1) = I मिलता है। इसलिए, हम जिस निम्न त्रिभुजीय आव्यूह L की जांच कर रहे हैं, उसकी गणना इस प्रकार की जाती है


चोल्स्की-बनाकिविज़ और चोल्स्की-क्राउट एल्गोरिदम

यथास्थान चोल्स्की के लिए अभिगम्य पैटर्न (सफ़ेद) और लेखन पैटर्न (पीला) - 5×5 आव्यूह पर बैनाचिविक्ज़ एल्गोरिथम

यदि हम समीकरण लिखते हैं

हम निम्नलिखित प्राप्त करते हैं:

और इसलिए L की प्रविष्टियों के लिए निम्नलिखित सूत्र:

जटिल और वास्तविक आव्यूह के लिए, विकर्ण और संबंधित संवृत-विकर्ण तत्वों के अप्रासंगिक यादृच्छिक रूप से संकेत परिवर्तन की स्वीकृति है। यदि A वास्तविक और धनात्मक-निश्चित है तो वर्गमूल के अंतर्गत अभिव्यक्ति सदैव धनात्मक होती है।

जटिल हर्मिटियन आव्यूह के लिए, निम्न सूत्र प्रयुक्त होता है:

इसलिए हम (i, j) प्रविष्टि की गणना कर सकते हैं यदि हम बाईं और ऊपर की प्रविष्टियों को जानते हैं। गणना सामान्य रूप से निम्नलिखित में से किसी एक क्रम में व्यवस्थित की जाती है:

  • 'चोल्स्की-बानाचीविक्ज़ एल्गोरिथ्म' आव्यूह L के ऊपरी बाएँ कोर से प्रारंभ होता है और रो दर रो आव्यूह की गणना करने के लिए आगे बढ़ता है।
    for (i = 0; i < dimensionSize; i++) {
        for (j = 0; j <= i; j++) {
            float sum = 0;
            for (k = 0; k < j; k++)
                sum += L[i][k] * L[j][k];
    
            if (i == j)
                L[i][j] = sqrt(A[i][i] - sum);
            else
                L[i][j] = (1.0 / L[j][j] * (A[i][j] - sum));
        }
    }
    
  • चोल्स्की-क्राउट एल्गोरिथम आव्यूह L के ऊपरी बाएँ कोर से प्रारंभ होता है और कॉलम द्वारा आव्यूह कॉलम की गणना करने के लिए आगे बढ़ता है।
    for (j = 0; j < dimensionSize; j++) {
        float sum = 0;
        for (k = 0; k < j; k++) {
            sum += L[j][k] * L[j][k];
        }
        L[j][j] = sqrt(A[j][j] - sum);
    
        for (i = j + 1; i < dimensionSize; i++) {
            sum = 0;
            for (k = 0; k < j; k++) {
                sum += L[i][k] * L[j][k];
            }
            L[i][j] = (1.0 / L[j][j] * (A[i][j] - sum));
        }
    }
    

यदि वांछित हो तो अभिगम्य का कोई भी पैटर्न संपूर्ण गणना को समष्टि पर निष्पादित करने की स्वीकृति देता है।

गणना की स्थिरता

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

अब, मान लीजिए कि चोल्स्की अपघटन प्रयुक्त होता है। जैसा ऊपर बताया गया है, एल्गोरिदम दो गुना तीव्र होगा। इसके अतिरिक्त, कोई पिवट तत्व आवश्यक नहीं है, और त्रुटि सदैव कम होगी। विशेष रूप से, यदि हम Ax = b को संशोधन करना चाहते हैं, और y परिकलित समाधान को दर्शाता है, तो y विकृत प्रणाली (A + E) y = b को संशोधन करता है, जहाँ

यहां ||·||2 आव्यूह मानक है | 2-मानक है, और cn, n के आधार पर एक लघु स्थिरांक है, और ε इकाई पूर्णांक को दर्शाता है।

चॉल्स्की अपघटन के बारे में अभिज्ञ होने के लिए एक तर्क वर्गमूल का उपयोग है। यदि गुणनखंड किया जा रहा आव्यूह आवश्यक रूप से धनात्मक निश्चित है, तो वर्गमूल के अंतर्गत संख्याएँ परिशुद्ध अंकगणित में सदैव धनात्मक होती हैं। तथापि, पूर्णांक त्रुटियों के कारण संख्याएँ ऋणात्मक हो सकती हैं, जिस स्थिति में एल्गोरिथम जारी नहीं रह सकता है। हालाँकि, यह केवल तभी हो सकता है जब आव्यूह अधिक विकृत स्थिति में हो। इसे संबोधित करने का एक तरीका धनात्मक-निश्चितता को बढ़ावा देने के प्रयास में विघटित होने वाले आव्यूह में एक विकर्ण संशोधन आव्यूह जोड़ना है।[16] हालांकि यह अपघटन की परिशुद्धता को कम कर सकता है, यह अन्य कारणों से अधिक अनुकूल हो सकता है; उदाहरण के लिए, अनुकूलन में न्यूटन की विधि का प्रदर्शन करते समय, एक विकर्ण आव्यूह जोड़ने से इष्टतम से दूर होने पर स्थिरता में संशोधन हो सकता है।

LDL अपघटन

एक वैकल्पिक रूप, वर्गमूल लेने की आवश्यकता को समाप्त करता है जब A सममित होता है, तब सममित अनिश्चित गुणनखंड है[17]

D और L की प्रविष्टियों के लिए निम्नलिखित पुनरावर्ती संबंध प्रयुक्त होते हैं:

यह तब तक कार्य करता है जब तक D में उत्पन्न विकर्ण तत्व गैर-शून्य रहते हैं। अपघटन तब अद्वितीय है। यदि A वास्तविक है तो D और L वास्तविक हैं।

जटिल हर्मिटियन आव्यूह A के लिए, निम्न सूत्र प्रयुक्त होता है:

पुनः, अभिगम्य का पैटर्न वांछित होने पर पूरी गणना को समष्टि में करने की स्वीकृति देता है।

ब्लॉक संस्करण

जब अनिश्चित आव्यूह पर उपयोग किया जाता है, तो LDL* गुणनखंड सावधानीपूर्वक पिवट के बिना अस्थिर होने के लिए जाना जाता है;[18] विशेष रूप से, गुणनखंड के तत्व यादृच्छिक रूप से बढ़ सकते हैं। एक संभावित सुधार सामान्य रूप से 2 × 2 ब्लॉक उप-आव्यूह पर गुणनखंडन करना है:[19]

जहां उपरोक्त आव्यूह में प्रत्येक तत्व एक वर्ग उप-आव्यूह है। इससे, ये समान पुनरावर्ती संबंध अनुसरण करते हैं:

इसमें आव्यूह गुणन और स्पष्ट व्युत्क्रमण सम्मिलित है, इस प्रकार व्यावहारिक ब्लॉक आकार को सीमित करता है।

अपघटन को संशोधित करना

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

एक श्रेणी संशोधन

विशिष्ट स्थिति, जहां संशोधित आव्यूह आव्यूह द्वारा से संबंधित है, एक पद संशोधन के रूप में जाना जाता है।

यहां मैटलैब सिंटैक्स में लिखा गया एक फ़ंक्शन[20] है जो एक पद संशोधन को प्राप्त करता है:

function [L] = cholupdate(L, x)
    n = length(x);
    for k = 1:n
        r = sqrt(L(k, k)^2 + x(k)^2);
        c = r / L(k, k);
        s = x(k) / L(k, k);
        L(k, k) = r;
        if k < n
            L((k+1):n, k) = (L((k+1):n, k) + s * x((k+1):n)) / c;
            x((k+1):n) = c * x((k+1):n) - s * L((k+1):n, k);
        end
    end
end

एक श्रेणी-n संशोधन वह है जहां आव्यूह के लिए अपघटन को इस तरह संशोधित करता है। इसे के प्रत्येक कॉलम के लिए क्रमिक रूप से एक पद संशोधन करके इसे प्राप्त किया जा सकता है

एक श्रेणी डाउनडेट

एक पद डाउनडेट एक पद संशोधन के समान है, इसके अतिरिक्त जोड़ को व्यवकलन द्वारा प्रतिस्थापित किया जाता है। यह केवल तभी कार्य करता है जब नया आव्यूह अभी भी धनात्मक निश्चित है।

ऊपर दिखाए गए एक श्रेणी संशोधन के लिए कोड को एक पद डाउनडेट करने के लिए आसानी से अनुकूलित किया जा सकता है: किसी को केवल r और L((k+1):n, k) के समनुदेशन में दो अतिरिक्त को व्यवकलन द्वारा प्रतिस्थापित करने की आवश्यकता है।

रो और कॉलम को जोड़ना और हटाना

यदि हमारे पास एक सममित और धनात्मक निश्चित आव्यूह के रूप में ब्लॉक रूप में दर्शाया गया है

और इसका ऊपरी चॉल्स्की कारक

फिर एक नए आव्यूह के लिए, जो के समान है,लेकिन नई रो और कॉलम के प्रविष्ट के साथ,

हम संपूर्ण अपघटन की प्रत्यक्ष गणना किए बिना ,के चॉलेस्की गुणनखंडन को खोजने में रुचि रखते हैं, जिसे हम कहते हैं।

के समाधान के लिए लिखना, जो त्रिभुजीय आव्यूह के लिए आसानी से पाया जा सकता है, और चोलस्की अपघटन के लिए, निम्नलिखित संबंध पाए जा सकते हैं:

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

ज्ञात चोल्स्की अपघटन के साथ

और चोल्स्की गुणन का निर्धारण करना चाहते हैं

आव्यूह का रो और कॉलम को हटाकर,

निम्नलिखित नियम उत्पन्न करता है:

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


धनात्मक अर्ध-निश्चित आव्यूह के लिए प्रमाण

सीमित तर्क द्वारा प्रमाण

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

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

संक्रियक मानक में धनात्मक निश्चित स्थितियो से, प्रत्येक में चॉलेस्की अपघटन होता है। संक्रियक मानक की गुण के अनुसार,

h> इसलिए मान्य है क्योंकि संक्रियक मानक से सुसज्जित एक C* बीजगणित है। इसलिए संक्रियक के बनच समष्टि में एक परिबद्ध समुच्चय है, इसलिए अपेक्षाकृत सुसंहत है। क्योंकि अंतर्निहित सदिश समष्टि परिमित-आयामी है। परिणामस्वरूप, इसका एक अभिसारी परिणाम है, जिसे सीमा के साथ द्वारा भी निरूपित किया जाता है। यह आसानी से जांचा जा सकता है कि इस मे वांछित गुण हैं, अर्थात और सभी और के लिए गैर-ऋणात्मक विकर्ण प्रविष्टियों के साथ निम्न त्रिभुजीय है

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

QR अपघटन द्वारा प्रमाण

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

सामान्यीकरण

चॉलेस्की गुणनखंडन को संक्रियक प्रविष्टियों के साथ (आवश्यक रूप से सीमित नहीं) आव्यूहों में सामान्यीकृत किया जा सकता है[citation needed] मान लीजिए कि हिल्बर्ट समष्टि का एक क्रम है। संक्रियक आव्यूह पर विचार करें

प्रत्यक्ष योग पर कार्य करना

जहां प्रत्येक

एक परिबद्ध संकारक है। यदि A धनात्मक (अर्द्धपरिमित) इस अर्थ में है कि सभी परिमित k और किसी के लिए

हमारे पास है, तो एक निम्न त्रिभुजीय संक्रियक आव्यूह L सम्मिलित है जैसे कि A = LL* प्राप्त है। कोई भी L की विकर्ण प्रविष्टियों को धनात्मक मान सकता है।

प्रोग्रामिंग पुस्तकालयों में कार्यान्वयन

  • C प्रोग्रामिंग भाषा: जीएनयू वैज्ञानिक लाइब्रेरी चोल्स्की अपघटन के कई कार्यान्वयन प्रदान करती है।
  • अधिकतम (सॉफ्टवेयर) कंप्यूटर बीजगणित प्रणाली: फ़ंक्शन cholesky चोल्स्की अपघटन की गणना करता है।
  • जीएनयू ऑक्टेव संख्यात्मक संगणना प्रणाली एक चोल्स्की अपघटन की गणना, संशोधित और प्रयुक्त करने के लिए कई फ़ंक्शन प्रदान करता है।
  • लैपैक लाइब्रेरी चोलस्की अपघटन का एक उच्च प्रदर्शन कार्यान्वयन प्रदान करता है जिसे फोरट्रान, C (प्रोग्रामिंग भाषा) और अधिकांश भाषाओं से अभिगम्य किया जा सकता है।
  • पायथन (प्रोग्रामिंग भाषा) में, फ़ंक्शन cholesky से numpy.linalg मॉड्यूल चोल्स्की अपघटन करता है।
  • मैटलैब में, chol फ़ंक्शन चोलस्की अपघटन देता है। ध्यान दें कि chol डिफ़ॉल्ट रूप से निर्दिष्ट आव्यूह के ऊपरी त्रिभुजीय कारक का उपयोग करता है, अर्थात यह की गणना करता है,जहां उपरी त्रिकोण है। इसके अतिरिक्त निम्न त्रिभुजीय कारक का उपयोग करने के लिए एक चिन्ह पारित किया जा सकता है।
  • R (प्रोग्रामिंग भाषा) में, chol फ़ंक्शन चोलस्की अपघटन देता है।
  • जूलिया (प्रोग्रामिंग भाषा) में, cholesky फ़ंक्शन से LinearAlgebra मानक लाइब्रेरी चोलस्की अपघटन देता है।
  • गणित में, फलनCholeskyDecompositionआव्यूह पर प्रयुक्त किया जा सकता है।
  • C ++ में, कई रैखिक बीजगणित लाइब्रेरी इस अपघटन का समर्थन करते हैं:
    • अर्माडिलो (C++ लाइब्रेरी) अनुक्रम chol चोल्स्की अपघटन करने के लिए आपूर्ति करता है।
    • ईजेन लाइब्रेरी विरल और सघन दोनों प्रकार के आव्यूहों के लिए चॉलेस्की गुणनखंड प्रदान करता है।
    • रूट पैकेज में, TDecompChol वर्ग उपलब्ध है।
  • एनालिटिका (सॉफ्टवेयर) में, फ़ंक्शन Decompose चोल्स्की अपघटन देता है।
  • अपाचे सामान्य गणित लाइब्रेरी में एक कार्यान्वयन है जिसका उपयोग जावा, स्काला और किसी भी अन्य जेवीएम भाषा में किया जा सकता है।

यह भी देखें

टिप्पणियाँ

  1. Benoit (1924). "Note sur une méthode de résolution des équations normales provenant de l'application de la méthode des moindres carrés à un système d'équations linéaires en nombre inférieur à celui des inconnues (Procédé du Commandant Cholesky)". Bulletin Géodésique (in français). 2: 66–67. doi:10.1007/BF03031308.
  2. 2.0 2.1 Press, William H.; Saul A. Teukolsky; William T. Vetterling; Brian P. Flannery (1992). Numerical Recipes in C: The Art of Scientific Computing (second ed.). Cambridge University England EPress. p. 994. ISBN 0-521-43108-5. Retrieved 2009-01-28.
  3. Golub & Van Loan (1996, p. 143), Horn & Johnson (1985, p. 407), Trefethen & Bau (1997, p. 174).
  4. Horn & Johnson (1985, p. 407).
  5. "मैट्रिसेस - एक जटिल सममित मैट्रिक्स का विकर्णीकरण". MathOverflow. Retrieved 2020-01-25.
  6. Schabauer, Hannes; Pacher, Christoph; Sunderland, Andrew G.; Gansterer, Wilfried N. (2010-05-01). "सामान्यीकृत जटिल सममित eigenvalue समस्याओं के लिए एक समानांतर सॉल्वर की ओर". Procedia Computer Science. ICCS 2010 (in English). 1 (1): 437–445. doi:10.1016/j.procs.2010.04.047. ISSN 1877-0509.
  7. Golub & Van Loan (1996, p. 147).
  8. Gentle, James E. (1998). Numerical Linear Algebra for Applications in Statistics (in English). Springer. p. 94. ISBN 978-1-4612-0623-1.
  9. Higham, Nicholas J. (1990). "Analysis of the Cholesky Decomposition of a Semi-definite Matrix". In Cox, M. G.; Hammarling, S. J. (eds.). विश्वसनीय संख्यात्मक संगणना (in English). Oxford, UK: Oxford University Press. pp. 161–185. ISBN 978-0-19-853564-5.
  10. 10.0 10.1 Krishnamoorthy, Aravindh; Menon, Deepak (2011). "चॉल्स्की अपघटन का उपयोग करके मैट्रिक्स उलटा". 1111: 4144. arXiv:1111.4144. Bibcode:2011arXiv1111.4144K. {{cite journal}}: Cite journal requires |journal= (help)
  11. So, Anthony Man-Cho (2007). A Semidefinite Programming Approach to the Graph Realization Problem: Theory, Applications and Extensions (PDF) (PhD) (in English). Theorem 2.2.6.
  12. Golub & Van Loan (1996, Theorem 4.1.3)
  13. Arora, J.S. Introduction to Optimum Design (2004), p. 327. https://books.google.com/books?id=9FbwVe577xwC&pg=PA327
  14. Matlab randn documentation. mathworks.com.
  15. ?potrf Intel® Math Kernel Library [1]
  16. Fang, Haw-ren; O'Leary, Dianne P. (8 August 2006). "Modified Cholesky Algorithms: A Catalog with New Approaches" (PDF). {{cite journal}}: Cite journal requires |journal= (help)
  17. Watkins, D. (1991). मैट्रिक्स संगणना के मूल तत्व. New York: Wiley. p. 84. ISBN 0-471-61414-9.
  18. Nocedal, Jorge (2000). संख्यात्मक अनुकूलन. Springer.
  19. Fang, Haw-ren (24 August 2007). "सममित अनिश्चित मैट्रिक्स के लिए ब्लॉक एलडीएलटी फैक्टराइजेशन का विश्लेषण". {{cite journal}}: Cite journal requires |journal= (help)
  20. Based on: Stewart, G. W. (1998). Basic decompositions. Philadelphia: Soc. for Industrial and Applied Mathematics. ISBN 0-89871-414-1.
  21. Osborne, M. (2010), Appendix B.


संदर्भ


बाहरी संबंध

विज्ञान का इतिहास

  • रेखीय समीकरणों की प्रणालियों के संख्यात्मक विभेदन पर, चोल्स्की की 1910 की पांडुलिपि, ऑनलाइन और पर विश्लेषण - रैखिक बिबनम (in French and English) [for English, click 'A télécharger']


जानकारी

कंप्यूटर कोड

अनुकरण में आव्यूह का उपयोग

ऑनलाइन कैलकुलेटर


श्रेणी:संचालक सिद्धांत श्रेणी:मैट्रिक्स अपघटन श्रेणी:संख्यात्मक रैखिक बीजगणित श्रेणी:लेख उदाहरण के साथ MATLAB/Octave कोड