带着麻木的,呆滞的版本

numpy 1.25.0
scipy 1.11.0

接下来的scipy.optimize.linprog个电话,

import numpy as np
from scipy.optimize import linprog

A_ub = np.array(
      [[-0.15729144,  0.29943807,  0.29311432],
       [-1.32475528, -2.1125364 , -1.55138585],
       [ 1.00861965,  0.53283629, -0.14939833],
       [ 1.07581479,  0.164022  , -1.19889684]])

b_ub = -np.ones(4)

print(linprog(np.zeros(3),
        A_ub=A_ub,
        b_ub=b_ub))

返回不可行状态,

       message: The problem is infeasible. (HiGHS Status 8: model_status is Infeasible; primal_status is At lower/fixed bound)
       success: False
        status: 2
           fun: None
             x: None
           nit: 0

但这个问题实际上是可行的,因为

x0 = np.array([ 229.1748166 , -507.05266751,  512.14005547])
print('x0 is feasible?', (A_ub @ x0 <= b_ub).all())

返回True.在这种情况下,linprog不应该返回一个可行点和一个不同的状态代码和消息吗?

推荐答案

来自https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.linprog.html的文档:

请注意,默认情况下,lb=0,ub=None.

所以x0 = np.array([ 229.1748166 , -507.05266751, 512.14005547])not是可行的.

Python相关问答推荐

如果条件为真,则Groupby.mean()

使用SciPy进行曲线匹配未能给出正确的匹配

@Property方法上的inspect.getmembers出现意外行为,引发异常

Pandas实际上如何对基于自定义的索引(integer和非integer)执行索引

需要计算60,000个坐标之间的距离

使可滚动框架在tkinter环境中看起来自然

如何使用数组的最小条目拆分数组

如何将Docker内部运行的mariadb与主机上Docker外部运行的Python脚本连接起来

如何在Python脚本中附加一个Google tab(已经打开)

具有相同图例 colored颜色 和标签的堆叠子图

在Python中从嵌套的for循环中获取插值

一个telegram 机器人应该发送一个测验如何做?""

如何使用加速广播主进程张量?

随机森林n_估计器的计算

如何在Pandas中用迭代器求一个序列的平均值?

VSCode Pylance假阳性(?)对ImportError的react

无法使用请求模块从网页上抓取一些产品的名称

如何在Python中实现高效地支持字典和堆操作的缓存?

try 在单个WITH_COLUMNS_SEQ操作中链接表达式时,使用Polars数据帧时出现ComputeError

对当前的鼹鼠进行编码,并且我的按键获得了注册