基于不完全LU分解预处理迭代法的电力系统潮流算法
本文发表于《中国电机工程学报》。根据 Krylov 子空间理论,提出基于不完全 LU 分解预处理迭代法的电力系统潮流算法。
问题源起
传统的电力系统潮流计算以牛顿–拉夫逊法为主,在利用这一算法进行潮流计算时,通过逐次线性化,反复求解非线性方程组对应的线性方程组的过程,占据了潮流计算的绝大多数时间。随着省地一体化的进程不断加深,省调管理的输电网模型与地调管辖范围内的配电网模型实现拼接处理计算,系统矩阵阶数增大,雅可比矩阵条件数变差,对潮流计算速度和精度的需求不断提升。因此,研究针对大规模电力系统潮流方程的高效求解方法十分重要。
主要思路
Krylov 子空间与预处理迭代
Krylov 子空间迭代法是求解大型线性方程组的一类重要迭代方法。考虑到潮流计算中的雅可比矩阵的非对称和高度稀疏性,可采用双正交化方法选择迭代法的约束空间。基于稳定的双正交共轭梯度(BICGSTAB)求解潮流计算过程中的线性方程组。
CPU-GPU 异构运算架构及 CUDA 框架
在 CPU-GPU 异构运算架构中,CPU 与 GPU 分别有各自的内存体系,CPU 无法与显存直接通讯,GPU 也无法与主机内存直接通讯,CPU 和 GPU 之间的数据传输通过 PCI-Express 总线进行通信。一个 GPU 通用计算程序需要包括三部分:CPU 计算程序、GPU 计算程序和 CPU-GPU 通信程序。
CUDA (Compute Unified Devices Architecture) 框架是 NVIDIA 公司推出的一种新的编程模型和指令集架构,用于实现 GPU 通用计算。CUDA 框架对原先的 C 语言进行扩展,基于这一框架既可以定义普通的 C 语言函数,也可以定义“特别”的 C 语言函数称为“内核”,即在调用时,并行执行 n 次 n 个不同的并行线程,而不是像普通的 C 语言函 数只执行一次。因此,CUDA 框架为 CPU-GPU 异构运算架构的实现提供了条件。传统的基于 LU 分解的潮流算法建立在矩阵分解、求逆等计算上,难以达到高度并行化。本文算法基于迭代法,矩阵运算和向量运算是主要计算形式,适合并行化处理以提高计算效率。因此,本算法基于 CUDA 框架和 CPU-GPU 异构运算架构进行实现。
主要贡献
根据 Krylov 子空间理论,提出基于不完全 LU 分解预处理迭代法的电力系统潮流算法。
基于 CUDA 框架,采用 CPU-GPU 异构运算架构,加速潮流计算。
结论、思考与讨论
本文提出了一种新的基于不完全 LU 分解预处理迭代法的电力系统潮流算法,所提方法具有以下特点:
1)算法中的迭代方法是求解大规模线性方程组的一种稳定方法,光滑收敛,收敛速度快。系统规模较大时,与传统算法相比具有明显优势。
2)算法采用的不完全 LU 分解预处理方法相比其他预处理方法,例如 Jacobian 预处理,在减少迭代次数、提高收敛性能方面更具优势。
3)算法 RAM 存储占用和 GPU 缓存占用小,普通 PC 机配备的 GPU 即可支持。算例测试表明,本文所提方法能够大幅减少迭代次数,提高线性方程组求解速度,在大规模系统中具有显著的优势,能够满足大规模电网在线潮流计算的需求,具有工程应用的价值。在未来的研究过程中,本文所提的预处理和迭代方法可以尝试应用到电力系统计算的其他领域中,包括最优潮流、开断潮流、状态估计等。
文章链接
唐坤杰, 董树锋, 宋永华. 基于不完全LU分解预处理迭代法的电力系统潮流算法- [J]. 中国电机工程学报, 2017, 37(S1):55-62.
若对于本文有任何疑问或者建议,请联系作者tangkunjie1994@zju.edu.cn。
版权声明:本文由SGOOL团队创作和发表,转载或引用本文内容请注明作者及出处。