相关疑难解决方法(0)

在 Python 中求解线性整数方程组

我正在寻找一种用 Python 求解线性方程组的方法。特别是,我正在寻找大于全零的最小整数向量并求解给定的方程。例如,我有以下等式:

在此输入图像描述

并想解决 在此输入图像描述

在这种情况下,求解该方程的最小整数向量是 在此输入图像描述

但是,如何自动确定该解决方案呢?如果我使用scipy.optimize.nnls,比如

A = np.array([[1,-1,0],[0,2,-1],[2,0,-1]])
b = np.array([0,0,0])
nnls(A,b)
Run Code Online (Sandbox Code Playgroud)

结果是(array([ 0., 0., 0.]), 0.0). 这也是正确的,但不是所需的解决方案......

编辑:对于某些方面的不精确,我深表歉意。如果有人对细节感兴趣,问题来自论文“数字信号处理的同步数据流程序的静态调度”,Edward A. Lee 和 David G. Messerschmitt,IEEE Transactions on Computers,Vol. 11。C-36,第 1 期,第 24-35 页,1987 年 1 月。

定理 2 说

对于具有 s 个节点和拓扑矩阵 A 且rank(A)=s-2 的连通 SDF 图,我们可以找到一个正整数向量 b != 0,使得 Ab = 0,其中 0 是零向量。

在证明定理 2 之后,他们直接说

可能需要求解零空间中的最小正整数向量。为此,请减少 u' 中的每个有理项,使其分子和分母互质。欧几里得算法将适用于此。

python numpy linear-algebra scipy

5
推荐指数
2
解决办法
6374
查看次数

标签 统计

linear-algebra ×1

numpy ×1

python ×1

scipy ×1