def obj_value(var_list):
    """
    The real function
    :param var_list: position variables
    :return: the solution as a number
    """
    #Ackley
    #value = -20*math.exp(-0.2*math.sqrt(0.5*((var_list[0]**2 + (var_list[1]**2))))) - math.exp(0.5*(math.cos(var_list[0]*2*math.pi) + math.cos(var_list[1]*2*math.pi))) +math.e + 20
    #Beale
    # value = (1.5 - var_list[0] + var_list[0]*var_list[1])**2 + (2.25 - var_list[0] + var_list[0]*(var_list[1]**2))**2 + (2.625 - var_list[0] + var_list[0]*(var_list[1]**3))**2)
    # Booth -10<x,y<10      (1, 3)
    value = (var_list[0] + 2 * var_list[1] - 7) ** 2 + (2 * var_list[0] + var_list[1] - 5) ** 2
    return value