Dalla versione 1.0.9, gretl supporta i minimi quadrati non lineari (NLS - nonlinear least squares), usando una variante dell'algoritmo Levenberg–Marquandt. L'utente deve fornire la specificazione della funzione di regressione, e, prima ancora di fare questo, occorre "dichiarare" i parametri da stimare e fornire dei valori iniziali. È anche possibile indicare analiticamente delle derivate della funzione di regressione rispetto a ognuno dei parametri. La tolleranza usata per fermare la procedura iterativa di stima può essere impostata con il comando genr.
La sintassi per la specificazione della funzione da stimare è la stessa usata per il comando genr. Ecco due esempi, che includono anche le derivate.
Esempio 8-1. Funzione di consumo da Greene
nls C = alfa + beta * Y^gamma deriv alfa = 1 deriv beta = Y^gamma deriv gamma = beta * Y^gamma * log(Y) end nls
Esempio 8-2. Funzione non lineare da Russell Davidson
nls y = alfa + beta * x1 + (1/beta) * x2 deriv alfa = 1 deriv beta = x1 - x2/(beta*beta) end nls
Si notino i comandi nls (che indica la funzione di regressione), deriv (che indica la specificazione di una derivata) e end nls, che conclude la specificazione e avvia la stima. Se si aggiunge l'opzione --vcv all'ultima riga, verrà mostrata la matrice di covarianza delle stime dei parametri.