def powell(ind):
    """Powell function defined as:
    $$ f(x) = \sum_{i=1}^{n/4} ( (x_{4i-3}+10x_{4i-2})^2. + 5(x_{4i-1}-x_{4i})^2 + (x_{4i-2}-2x_{4i-1})^4 + 10(x_{4i-3}-x{4i})^4 )$$
    with a search domain of $-4 < x_i < 5, 1 \leq i \leq n$.
    The global minimum is at $f(x_1, ..., x_n) = f(0, ..., 0) = 0.
    """
    return  sum(( (ind[4*i-3] + 10.*ind[4*i-2])**2. for i in range(len(ind)//4) )) + \
            sum(( 5.* ((ind[4*i-1] - ind[4*i])**2.) for i in range(len(ind)//4) )) + \
            sum(( (ind[4*i-2] - 2.*ind[4*i-1])**4. for i in range(len(ind)//4) )) + \
            sum(( 10.* ((ind[4*i-3] - ind[4*i])**4.) for i in range(len(ind)//4) )),