min f (x)=(x1-2)^2+(x2-1)^2
时间: 2023-06-17 22:05:11 浏览: 225
min2x 最小二乘法
5星 · 资源好评率100%
这是一个二维的无约束优化问题,可以通过求解该函数的梯度和 Hessian 矩阵来找到全局最小值点。
首先求解梯度:
∇f(x) = [2(x1-2), 2(x2-1)]
然后求解 Hessian 矩阵:
H(f)(x) = [2 0; 0 2]
因此,该函数的全局最小值点为 x* = [2,1],此时 f(x*) = 0。
可以使用梯度下降等优化算法来寻找最小值点。例如,可以使用以下 Python 代码:
```python
import numpy as np
from scipy.optimize import minimize
def f(x):
return (x[0]-2)**2 + (x[1]-1)**2
def grad_f(x):
return np.array([2*(x[0]-2), 2*(x[1]-1)])
x0 = np.array([0, 0])
res = minimize(f, x0, method='BFGS', jac=grad_f, options={'disp': True})
print(res.x)
```
其中,使用 `minimize` 函数来进行优化,优化方法选择 BFGS,设置梯度为 `grad_f`,并输出最终结果。运行结果为 `[2. 1.]`,与理论最小值点相符。
阅读全文