https://scholars.lib.ntu.edu.tw/handle/123456789/30701
標題: | 計算第k個特徵值的高效率方法 Efficient Scheme for Computing the k-th Eigenvalue |
作者: | 夏佑槐 Xia, You-Huai |
關鍵字: | 廣義特徵值問題;特徵值估計;特徵值個數估計;分段單調三次插值;西爾維斯特慣性定理 | 公開日期: | 2014 | 摘要: | 在一些物理問題的應用裡,矩陣的某些特徵值會是我們特別想知道的,在這裡我們的目標是求一個廣義特徵值問題裡任意指定的第k個特徵值(以由小到大順序排列)。 hspace{10mm} 根據線性代數裡的Sylvester''s law of inertia,我們可以藉由$LDL^T$分解來知道一個矩陣在任一個給定的值之前會有多少個特徵值。如果把給定的值之前有多少個特徵值當成一個函數f來看(這會是一個階梯函數),那麼尋找矩陣的第k個特徵值可以轉變為一個求根的問題( 解f(x)=k )。對於這個問題而言,我們的目標是以某些求根的演算法來找到一個實數值s滿足f(s)=k或k-1,這樣我們就能以某些shift-invert eigenvalue solver來找到精確的第k個特徵值。在這篇論文裡我們不著重在特定eigenvalue solver的選擇,而是將重點放在發展求根演算法以及引入一個可以減少函數值計算時間的方法(相對於$LDL^T$分解)。 hspace{10mm} 在先前的文獻裡,目前可用於階梯函數的穩定求根演算法已有二分法(Bisection method),而在這裡,首先我們將其推廣至一個適合於平行的多分法(Multiple-section method)。接著,我們也發展了一個基於單調三次分段插值的求根演算法,並將其和可平行的多分法作結合。在同樣的條件下(所採用平行節點的個數相同),相較於多分法,它能在大部份的情況下達成降低函數值總共計算次數的目的。 hspace{10mm} 另一方面,除了以$LDL^T$作為精確函數值的計算,我們還嘗試了一個用來估計特徵值個數的近似方法作為$LDL^T$分解的替代方案來達到減少單次函數值計算時間的目的。數值實驗的結果告訴我們通常在大型稀疏矩陣的情況下,我們可以藉由犧牲一些函數值的精確性來換取函數計算時間上的優勢。 In some applications of physics problems, we may want to know certain eigenvalues we''re interested in. Here our target is an arbitrarily chosen k-th eigenvalue of a generalized eigenvalue problems. According to the Sylvester''s law of inertia in Linear algebra, we may get the eigenvalue counts before an arbitrarily given number via $LDL^T$ decomposition. If we view the eigenvalue counts before a given number as a step function f, then our problem of finding the k-th eigenvalue can be transformed into a root-finding problem ( solving $f(x)=k$ for x ). As far as our problem concerned, our goals is to find a real value $s$ such that $f(s)=k$ or $f(s)=k-1$ so that we can find the exact k-th eigenvalue by an shift-invert eigenvalue solver. In this paper, we do not emphasize the choice of a specific eigenvalue solver, but focus on developing the root-finding algorithm and introduce an approximating method which can reduce time consuming relative to $LDL^T$ decomposition. In the literature, the Bisection method is an existing stable root-finding algorithm which can be applied to step functions. Here we will first extend the Bisection method to the Multiple-section method which can be naturally parallelized. We will also developed a sequential method based on piecewise Monotone cubic interpolation and then combine it with Multiple-section method to get a parallel algorithm. With the same number of MPI processes, it can reduce the total number of function evaluations for one time root-solving in most cases relative to the pure Multiple-section method. On the other hand, besides computing the exact function value via $LDL^T$ decomposition, we also took a stochastic scheme for estimating the eigenvalue counts as an alternative to achieve the aim for reducing the time consuming for one-time function evaluation. The result of numerical experiment shows that in the case of large sparse matrix, we can save function evaluation time by sacrificing some exactness of function value. |
URI: | http://ntur.lib.ntu.edu.tw//handle/246246/264031 | Rights: | 論文公開時間:2016/08/25 論文使用權限:同意有償授權(權利金給回饋學校) |
顯示於: | 數學系 |
檔案 | 描述 | 大小 | 格式 | |
---|---|---|---|---|
ntu-103-R00221024-1.pdf | 23.54 kB | Adobe PDF | 檢視/開啟 |
在 IR 系統中的文件,除了特別指名其著作權條款之外,均受到著作權保護,並且保留所有的權利。