f(x,y,z)=(x-2/3)/(x+y+z-2)
x,y,z>0
xyz=1
该函数的最小值为-1.5,当x=1/3, y=2/3, z=1.5时取得最小值。
from scipy.optimize import minimize
def f(xyz):
x, y, z = xyz
return (x - 2/3) / (x + y + z - 2)
def constraint(xyz):
x, y, z = xyz
return x*y*z - 1
bounds = [(0, None), (0, None), (0, None)]
res = minimize(f, x0=(1, 1, 1), bounds=bounds, constraints={'type': 'eq', 'fun': constraint})
print(res)
print("Minimum value: ", res.fun)
不知道你这个问题是否已经解决, 如果还没有解决的话: