f(x)=∑xi^2/4000−∏cos(xi/i^0.5)+1 xi∈[−600,600],i=1,2,⋯,D用python语句表达
时间: 2023-06-16 16:07:00 浏览: 162
多边形内部的点:找到多边形内部的那些点 (xi,yi),由向量 (x,y) 定义-matlab开发
可以使用以下代码实现:
``` python
import numpy as np
def f(x):
D = len(x)
sum_sq = np.sum(x**2)/4000
prod_cos = np.prod(np.cos(x/np.sqrt(np.arange(1, D+1))))
return sum_sq - prod_cos + 1
```
其中,`np.sum`、`np.prod` 分别表示求和和求积,`np.arange` 用于生成 $[1, 2, \ldots, D]$ 序列。
阅读全文