gpt4 book ai didi

python - 在 Python 中设置 linprog 时遇到问题

转载 作者:行者123 更新时间:2023-11-28 22:33:32 27 4
gpt4 key购买 nike

我正在使用下面的代码,但我一直无法设置运行的问题。

import numpy as np
from scipy.optimize import linprog

c = np.asarray([-0.098782540360068297, -0.072316526358138802, 0.004, 0.004, 0.004, 0.004])
A_ub = np.asarray([[1.0, 0, 0, 0, 0, 0], [-1.0, 0, 0, 0, 0, 0], [0, -1.0, 0, 0, 0, 0], [0, 1.0, 0, 0, 0, 0], [1.0, 1.0, 0, 0, 0, 0]])
b_ub = np.asarray([3.0, 3.0, 3.0, 3.0, 20.0])
A_eq = np.asarray([[1.0, 0, -1, 1, -1, 1], [0, -1.0, -1, 1, -1, 1]])
b_eq = np.asarray([0,0])
res = linprog(c, A_ub, b_ub, A_eq, b_eq)
lb = np.zeros([6,1]) #lower bound for x array
ub = np.ones([6,1])*2 #upper bound for x array
res2 = linprog(c, A_ub, b_ub, bounds=(lb, ub))

我得到的错误是:

ValueError: Invalid input for linprog with method = 'simplex'.  Length of bounds is inconsistent with the length of c

最佳答案

bounds 参数需要一个对列表。使用类似的东西:

lb = np.zeros(6) #lower bound for x array
ub = np.ones(6)*2 #upper bound for x array
res2 = linprog(c, A_ub, b_ub, bounds=list(zip(lb, ub)))

关于python - 在 Python 中设置 linprog 时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39797663/

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