【scipy】scipy.optimize 求解非线性Rosenbrock最优化问题 python

利用python软件编程求解非线性Rosenbrock最优化问题
m i n f ( x , y ) = ( 1 − x ) 2 + 100 ( y − x 2 ) 2 min f(x, y) = (1-x)^{2}+100(y-x^{2})^{2} minf(x,y)=(1x)2+100(yx2)2

− 2 ≤ x ≤ 2 -2\leq x \leq 2 2x2

− 1 ≤ y ≤ 3 -1\leq y \leq 3 1y3

程序,如下

from scipy.optimize import minimize
fun = lambda x: (1 - x[0]) ** 2 + 100 * (x[1] - x[0] ** 2) ** 2
bnds = ((-2, 2), (-1, 3))
res = minimize(fun, (2, 0), method='SLSQP', bounds=bnds)
print(res.x)

结果

[0.99989094 0.99980692]
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值