矩阵链的基本算法

摘要:矩阵链乘积问题是针对给定的n个矩阵的乘积,寻求最小化算术操作次数的括号化方式。1973年,Godbole提出了一种经典的动态规划解法,时间复杂度为链的长度的立方。目前已知的最优算法的时间复杂度是线性对数级别,而最优近似算法的时间复杂度是线性时间,并且近似因子小于2。所有解法都有一个共同点,即它们从Cn-1(Catalan数n-1)个不同的括号化中选出一个最优的括号化方案。我们研究了括号化的集合,并发现:(a)指数级别的括号化方案在无限的输入空间中是最优的;(b)只有n+1个括号化方案是至关重要的,因为它们在无限的输入空间中要优于第二优的方案;(c)最佳的至关重要的括号化方案的成本永远不会超过最佳的非至关重要的括号化方案的两倍。通过对输入空间进行随机抽样,我们进一步发现,至关重要的括号化方案中包括绝大多数情况下的最优方案,并且最佳的至关重要的括号化方案与最坏情况下的边界值相比,平均更接近最优解。这些结果对于开发在编译时矩阵大小未知的线性代数表达式编译器具有直接意义。

作者:Francisco L''opez, Lars Karlsson, Paolo Bientinesi

论文ID:2303.17352

分类:Discrete Mathematics

分类简称:cs.DM

提交时间:2023-03-31

PDF 下载: 英文版 中文版pdf翻译中