Otimização usando scipy

No seguinte script:

import numpy as np
from scipy.optimize import minimise

a=np.array(range(4))
b=np.array(range(4,8))

def sm(x,a,b):
      sm=np.zeros(1)
      a=a*np.exp(x)
      sm += sum(b-a)
      return sm

 x0=np.zeros(4)
 print sm(x0,a,b) #checking my function

 opt = minimize(sm,x0,args=(a,b),method='nelder-mead', 
 options={'xtol': 1e-8,     'disp': True})        

Estou tentando otimizar para x, mas estou tendo a seguinte mensagem:

Aviso: O número máximo de avaliações de funções foi excedido.

E o resultado é:

matriz ([- 524.92769674, 276.6657959, 185.98604937, 729.5822923])

O que não é o ideal. Minha pergunta é: estou recebendo esta mensagem e resultado porque meus pontos de partida não estão corretos?

questionAnswers(2)

yourAnswerToTheQuestion