gpt4 book ai didi

python - Scipy 最小化约束函数

转载 作者:太空狗 更新时间:2023-10-29 22:25:37 26 4
gpt4 key购买 nike

我正在解决以下优化问题:

enter image description here

使用这段 Python 代码:

from scipy.optimize import minimize
import math

def f(x):
return math.log(x[0]**2 + 1) + x[1]**4 + x[0]*x[2]

x0 = [0, 0, 0]

cons=({'type': 'ineq',
'fun': lambda x: x[0]**3 - x[1]**2 - 1},
{'type': 'ineq',
'fun': lambda x: x[0]},
{'type': 'ineq',
'fun': lambda x: x[2]})

res = minimize(f, x0, constraints=cons)
print res

我遇到了一个错误

message: 'Inequality constraints incompatible'

什么会导致这个错误?

最佳答案

问题似乎出在您最初的猜测上。如果我将您的起始值更改为

x0 = [1.0, 1.0, 1.0]

然后你的代码将执行良好(至少在我的机器上)

Python 3.5.1 (v3.5.1:37a07cee5969, Dec 6 2015, 01:54:25) [MSC v.1900 64 bit (AMD64)] on win32

 message: 'Optimization terminated successfully.'
njev: 10
jac: array([ 1., 0., 1., 0.])
fun: 0.6931471805582502
nit: 10
status: 0
x: array([ 1.00000000e+00, -1.39724765e-06, 1.07686548e-14])
success: True
nfev: 51

关于python - Scipy 最小化约束函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35432478/

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