gpt4 book ai didi

algorithm - 矩阵正定和病态的迭代线性求解器

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:00:18 24 4
gpt4 key购买 nike

我需要一些帮助来解决这个问题。

我想解决Ax = b,

其中 A 是 n x n(方阵),b 是 n x 1 矩阵

但是 A 矩阵有这个属性:+ 病态 (K >> 1)(可能大于 10 ^ 8)+ 对称正定(因为是协方差矩阵)

我已经尝试过 Jacobi 方法,但不幸的是收敛速度很慢。我避免使用 Cholesky 分解。

而且我已经尝试过 Conjugate Gradient,但不幸的是,如果矩阵 A 的条件数太大,它就无法收敛。

更新:我需要一种可以在并行框架(如 MPI)中运行的方法。所以我不能在当前迭代中使用需要 x[i] 的 Gauss-seidal。

我可以用什么样的方法来解决这类问题?谢谢:)

最佳答案

我猜测您的问题是由于矩阵向量积的计算不准确造成的。 (我从未见过共轭梯度完全无法减少残差,除非矩阵向量乘积很差。重启后的第一次迭代只是做最速下降。)

您可以尝试再次运行共轭梯度,但使用扩展精度或 Kahan summation或计算矩阵向量积时的东西。

或者,如果您的矩阵具有某种已知结构,您可能会尝试找到一种不同的方法来编写矩阵向量积,以减少计算结果中的舍入。如果我能看到你的矩阵,我也许可以在这里给出更具体的建议。

关于algorithm - 矩阵正定和病态的迭代线性求解器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18063741/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com