gpt4 book ai didi

Matlab 问题 : linprog

转载 作者:行者123 更新时间:2023-12-03 16:58:17 24 4
gpt4 key购买 nike

晚上好

我在使用 Matlab 的 linprog 函数时遇到问题,这是我收到的消息:

Exiting due to infeasibility: an all-zero row in the constraint matrix does not have a zero in corresponding right-hand-side entry.

根据帮助,这意味着我在 Aeq 中至少有一行全是零(比方说,第 i 行),但 beq(i) 不等于零。

我检查了我的矩阵:

checkmat=full(sum(abs(Aeq')))';
checkmat=horzcat(checkmat,beq);

for i=1:length(checkmat)
if (checkmat(i,1)==0 && checkmat(i,2)~=0) || (checkmat(i,2)==0 && checkmat(i,1)~=0)
i
end
end

不过好像还行吧。有没有人知道它可能来自哪里?如果遗漏任何信息,我会很乐意尝试收集它们。

最佳答案

linprog 使用的默认内点方法在实际迭代开始之前执行一些预处理步骤。因此,虽然您的 Aeq 可能不包含 beq 的相应元素为非零的全零行,但这可能发生在预处理之后。

您可以尝试使用另一种算法运行 linprog(使用 optimset('LargeScale', 'off') 和/或 optimset('LargeScale', ' off', 'Simplex', 'on')) 并查看这种情况下的输出。

但是,我怀疑在所有情况下您都会得到一个“不可行问题”退出标志,因为您的等式约束似乎无法满足。

More info关于 Matlab 可用的线性规划算法及其预处理步骤。

关于Matlab 问题 : linprog,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13998650/

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