Sipy Linprog 输出与文档不匹配



我尝试重现scipy.optimize.linprog示例代码,从文档粘贴如下:

>>> c = [-1, 4]
>>> A = [[-3, 1], [1, 2]]
>>> b = [6, 4]
>>> x0_bounds = (None, None)
>>> x1_bounds = (-3, None)
>>> res = linprog(c, A_ub=A, b_ub=b, bounds=(x0_bounds, x1_bounds),
...               options={"disp": True})
>>> print(res)
Optimization terminated successfully.
     Current function value: -11.428571
     Iterations: 2
status: 0
success: True
fun: -11.428571428571429
x: array([-1.14285714,  2.57142857])
message: 'Optimization terminated successfully.'
nit: 2

但是,当我运行它时,我实际上得到了以下输出:

Optimization terminated successfully.
         Current function value: -22.000000  
         Iterations: 1
     fun: -22.0
 message: 'Optimization terminated successfully.'
     nit: 1
   slack: array([ 39.,   0.])
  status: 0
 success: True
       x: array([ 10.,  -3.])

我计算机上的解决方案似乎是正确的,所以我想知道为什么会出现分歧。

这是一个已修复的文档错误。(它需要更多的修复,因为他们忘记更新代码示例下注释中的值。

最新更新