首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Python中找到多变量函数的最小值和最大值

问在Python中找到多变量函数的最小值和最大值
EN

Stack Overflow用户
提问于 2022-04-29 04:26:53
回答 1查看 722关注 0票数 -1

我有一个函数,我想找到它的最大值和最小值。我的职责是:

代码语言:javascript
复制
fuc = x * (4 - x * y)

我有一个x -1,1和y- 2,10的区间。我想找到一种方法,限制在这个区间内,来发现这个函数的最大值和最小值。

EN

回答 1

Stack Overflow用户

发布于 2022-04-29 04:46:00

使用scipy.optimize.minimize

代码语言:javascript
复制
from scipy.optimize import minimize
import numpy as np

func = lambda x: x[0] * (4 - x[0] * x[1])
x0 = np.array([0, 2])
bounds = [(-1, 1), (2, 10)]
min_val = minimize(func, x0, bounds=bounds).fun
max_val = minimize(lambda x: -func(x), x0, bounds=bounds).fun

print(min_val, max_val)

输出:

代码语言:javascript
复制
-14.0 -2.0

感谢@joni指出应该使用参数bounds而不是简单的约束。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72052811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档