La regressione non-lineare
Andrea Onofri
Dipartimento di Scienze Agrarie ed Ambientali Universit`a degli Studi di Perugia
Versione on-line: http://www.unipg.it/ onofri/RTutorial/index.html
Indice
1 Introduzione 1
1.1 Linearizzazione della funzione . . . 2 1.2 Approssimazione della vera funzione tramite una polinomiale
in X . . . 2 1.3 Adattamento di funzioni curvilinee qualunque . . . 3 2 Inferenze statistiche e verifiche delle assunzioni di base 4
3 La regressione non-lineare con R 4
4 Il package drc 7
5 Ricerca dell’intervallo di confidenza per la X 10
6 Trasformazione del modello 12
7 Per approfondire 13
1 Introduzione
Difficilmente i fenomeni biologici possono essere descritti da funzioni linea- ri, salvo il caso in cui si consideri un intervallo di variazione della variabile indipendente piuttosto ristretto. Pi`u comunemente, le relazioni di maggior interesse agrario e biologico in genere (per esempio la crescita di una coltu- ra, la cinetica degradativa degli erbicidi nel terreno, la risposta produttiva delle colture a densit`a crescenti di malerbe o a dosi crescenti di concime, la risposta fitotossica di una specie infestante alla dose di un erbicida) so- no curvilinee, posseggono punti di massimo o minimo, flessi e, soprattutto, asintoti.
E’ quindi di fondamentale importanza pratica la capacit`a di adattare ai dati sperimentali funzioni curvilinee, il che pu`o essere ottenuto in vari modo:
1
1 INTRODUZIONE 2 1. linearizzazione della funzione tramite trasformazione delle variabili;
2. approssimazione della vera funzione curvilinea con una polinomiale in X;
3. adattamento ai dati sperimentali di funzioni curvilinee, tramite meto- diche di regressione non-lineare.
1.1 Linearizzazione della funzione
Alcune funzioni matematiche curvilinee possono essere linearizzate con un semplice trasformazione dei dati. Per esempio, Una funzione esponenziale del tipo:
Y =AeX
pu`o essere linearizzata con una trasformazione logaritmica, come segue:
log(Y) =log(A) +X
I parametri di questo modello possono essere facilmente determinati con le usuali tecniche di regressione lineare.
Un altro esempio `e dato dalla funzione di Michaelis-Menten per la de- scrizione della cinetica delle reazioni chimiche:
Y = a·x b+x
Questa funzione pu`o essere linearizzata trasformando i due termini nel loro reciproco:
1 Y = 1
a+ b a· 1
X =a0+b0·X
Le funzioni linearizzabili per semplice trasformazione delle variabili sono dette lineari per trasformazione (Bates e Watts, 1988) e presentano il van- taggio di semplificare molto i calcoli richiesti per la stima dei parametri. Un grave svantaggio `e dato dal fatto che trasformando la Y si trasforma anche la distribuzione degli errori; quindi, se `e ragionevole assumere che i dati nella scala originale siano normalmente distribuiti e omoschedastici, la trasforma- zione introduce distorsioni dal punto di vista delle assunzioni di base per l’inferenza statistica, alle quali bisogna porre particolare attenzione.
1.2 Approssimazione della vera funzione tramite una poli- nomiale in X
In generale, relazioni matematiche curvilinee possono essere approssimate tramite funzioni polinomiali di ordinen. Si tratta di una famiglia di funzioni
1 INTRODUZIONE 3 molto flessibile, che contiene la funzione lineare come caso particolare (n=1) e che permette di descrivere curvature anche molto complesse semplicemente aumentando l’ ordine della funzione. In questo modo `e possibile ottenere un adattamento ai dati sperimentali teoricamente anche perfetto.
Le funzioni polinomiali sono un tipico esempio di funzioni non-lineari nelle variabili, ma lineari nei parametri; esse possono essere trattate ricor- rendo alle metodiche di calcolo normalmente utilizzate per la regressione lineare.
Gli svantaggi delle funzioni polinomiali sono legati al fatto che queste presentano raramente giustificazione biologica. Per esempio, con le funzioni polinomiali non `e possibile descrivere relazioni asintotiche, che sono invece molto comuni in biologia.
Inoltre, le polinomiali possono approssimare bene una funzione solo in un intervallo della X molto ristretto e non consentono nessuna estrapola- zione al di fuori di questo, dato che possono portare a stime della risposta completamente insensate biologicamente.
Per questi motivi l’ uso delle funzioni polinomiali dovrebbe essere limita- to ai casi in cui non si abbia nessuna conoscenzaa priori dell’ andamento del fenomeno. Tra l’ altro i moderni supporti informatici consentono di risolvere il problema dell’ adattamento diretto di funzioni curvilinee qualunque senza i lunghi calcoli manuali che venivano richiesti fino ad alcuni anni fa.
1.3 Adattamento di funzioni curvilinee qualunque
Per quanto sopra accennato, ogniqualvolta possibile, si preferisce utilizzare metodologie di regressione non-lineare, che permettono di adattare diretta- mente funzioni curvilinee di qualunque tipo ai dati sperimentali. La stima dei parametri, tuttavia, non `e immediata come nel caso delle regressioni li- neari; il calcolo risulta piuttosto complicato rendendo obbligatorio l’ impiego del personal computer per ottenere risultati in tempi ragionevolmente brevi.
Per l’esecuzione delle regressioni non-lineari vengono generalmente im- piegati metodi iterativi (Gauss-Newton, Steepest Descent, Marquardt, Sim- plex, si rinvia per ulteriori informazioni alla bibliografia riportata in calce), nei quali `e necessario fissare delle stime iniziali dei parametri, che vengo- no corrette in ogni iterazione successiva fino ad ottenere la convergenza sui valori che minimizzano la funzione dei minimi quadrati. Ovviamente, trat- tandosi di metodi iterativi, le stime ottenute sono solo un’approssimazione (accettabile!) dei valori reali.
2 INFERENZE STATISTICHE E VERIFICHE DELLE ASSUNZIONI DI BASE4
2 Inferenze statistiche e verifiche delle assunzioni di base
Le assunzioni parametriche di base relative ai modelli non-lineari sono le stesse dei modelli lineari e, di conseguenza, gli strumenti diagnostici sono analoghi. Bisogna tuttavia menzionare il fatto che, dato l’impiego di metodi iterativi per la ricerca dei valori dei parametri, tutti i risultati a cui si pervie- ne (stima dei parametri, della varianza residua e numero dei gradi di libert`a relativi) sono solo una approssimazione di quelli reali. Per questo motivo, nel caso non-lineare i metodi grafici (analisi dei residui) sono largamente preferiti.
Nel caso della regressione non-lineare, `e necessario valutare molto atten- tamente la correlazione tra i parametri, che pu`o essere il sintomo di (sovrapa- rametrizzazione), cio`e di aver incluso nell’equazione un numero di parametri non giustificato dai dati sperimentali.
Per quanto riguarda le trasformazioni stabilizzanti, valgono le stesse con- siderazioni relative ai modelli lineari ed `e possibile ricorrere alla famiglia di trasformazioni descritta da Box e Cox (1964). L’unica differenza rispetto alle regressioni lineari `e nel fatto che operare la trasformazione della sola variabile dipendente comporta anche la modifica della scala sulla quale ven- gono stimati i parametri, che quindi non conservano il loro valore biologico.
Dato che spesso le regressioni non-lineari vengono eseguite proprio perch`e si `e interessati all’informazione contenuta nei parametri di un modello, si preferisce adottare la cosiddetta tecnica della trasformazione di entrambe le parti, o metodo TBS (”Transform Both Sides”) e trasformare quindi sia i dati osservati per la variabile dipendente, sia il modello:
Yλ=f(X)λ
In questo modo si ottengono i parametri della funzione sulla scala origi- nale come se la trasformazione non fosse stata eseguita per niente.
3 La regressione non-lineare con R
Immaginiamo di voler determinare la funzione di crescita di una coltura. I dati osservati sono:
3 LA REGRESSIONE NON-LINEARE CON R 5
Giorni Peso
dalla semina
35.00 420.50 39.00 1660.70 46.00 3195.00 53.00 5870.10 60.00 7591.30 67.00 8784.80 74.00 9422.20 81.00 10328.10
Vogliamo adattare ai dati anzidetti una funzione di Gompertz, del tipo:
y=a·exp(−b·exp(−c·x))
Per eseguire la regressione non lineare possiamo utilizzare la funzio- ne nls(), che `e gi`a implementata nel package di base di R. La sintassi `e abbastanza semplice:
nls(formula, start, trace)
dove formula `e la funzione da adattare ai dati, start `e la lista dei valori iniziali, trace (FALSE o TRUE) permette di richiedere la stampa a video dei risultati delle iterazioni.
> dati
DAS DW
1 35 420.5 2 39 1660.7 3 46 3195.0 4 53 5870.1 5 60 7591.3 6 67 8784.8 7 74 9422.2 8 81 10328.1
> model<-nls(DW~a*exp(-exp(b*(c-DAS))),
start=list(a=10000, b=0.08, c=47), trace=TRUE, data=dati) 2287456 : 1.0e+04 8.0e-02 4.7e+01
296223.3 : 1.079510e+04 8.320439e-02 4.769160e+01 294817.9 : 1.078999e+04 8.314129e-02 4.761957e+01 294817.7 : 1.078956e+04 8.315383e-02 4.761927e+01 294817.7 : 1.078956e+04 8.315391e-02 4.761925e+01
> summary(model)
3 LA REGRESSIONE NON-LINEARE CON R 6
Formula: DW ~ a * exp(-exp(b * (c - DAS))) Parameters:
Estimate Std. Error t value Pr(>t|) a 1.079e+04 3.351e+02 32.20 5.43e-07 ***
b 8.315e-02 6.610e-03 12.58 5.64e-05 ***
c 4.762e+01 6.470e-01 73.60 8.77e-09 ***
---
Signif. codes: 0 ’***’ 0.001 ’**’ 0.01 ’*’ 0.05 ’.’ 0.1 ’ ’ 1 Residual standard error: 242.8 on 5 degrees of freedom
Correlation of Parameter Estimates:
a b
b -0.8455
c 0.7618 -0.5558
>
Il vantaggio di nls() `e che `e molto facile immettere una qualunque funzione, anche se non `e sempre altrettanto facile reperire delle stime ini- ziali dei parametri accettabili. In questo senso possono tornare utili al- cune funzioni di self starting gi`a implementate in R, che si occupano da sole del reperimento delle stime iniziali dei parametri. Per esempio, la fun- zione di Gompertz anzidetta pu`o essere richiamata utilizzando la funzione SSgompertz(X, Asym, b2, b3):
> model<-nls(DW ~ SSgompertz(DAS, Asym, b2, b3), data=dati, trace=T) 294817.7 : 1.078955e+04 5.244305e+01 9.202095e-01
> summary(model)
Formula: DW ~ SSgompertz(DAS, Asym, b2, b3) Parameters:
Estimate Std. Error t value Pr(>t|) Asym 1.079e+04 3.351e+02 32.201 5.43e-07 ***
b2 5.244e+01 1.512e+01 3.468 0.0179 * b3 9.202e-01 6.083e-03 151.280 2.39e-10 ***
---
Signif. codes: 0 ’***’ 0.001 ’**’ 0.01 ’*’ 0.05 ’.’ 0.1 ’ ’ 1 Residual standard error: 242.8 on 5 degrees of freedom
Number of iterations to convergence: 0
4 IL PACKAGE DRC 7
Achieved convergence tolerance: 1.567e-06 |
Ad oggi, esistono funzioni diSelfStarting pernls()relative alle seguenti funzioni: SSminmen(), SSlogis(), SSweibull(). Per queste e per altre funzioni pu`o essere reperito l’help all’interno di R.
All’interno del package aomisc `e possibile reperire: decrescita esponen- ziale (NLSexpoDecay()), equazione di Freundlich (NLSpowerCurve()), re- gressione logaritmica (NLSlogReg), esponenziale negativa (NLSnegExp()),
crescita monomolecolare (NLSmonoGrowth()), regressione asintotica (NLSasymReg()), crescita logistica a tre parametri (NLSlogiGrowth()), funzione di Hill (NLShillCurve()), Weibull (NLSweibull()).
4 Il package drc
Oltre alla funzionenls()in R esiste un package molto comodo, che si chiama drc(), che implementa tutte le funzioni necessarie per l’analisi di regressione non-lineare.
Dopo aver caricato il package con il comando:
library(drc)
possiamo utilizzare il dataset (incluso nel package)beetGrowth:
> beetGrowth
DAE weightInf weightFree 1 21 0.06000 0.0715091 2 21 0.06000 0.0662547 3 21 0.11000 0.0747931 4 27 0.20000 0.3368074 5 27 0.20000 0.3952256 6 27 0.21000 0.2520960 7 38 2.13000 2.3225072 8 38 3.03000 1.7163224 9 38 1.27000 1.2189231 10 49 6.13000 11.7761096 11 49 5.76000 13.6191507 12 49 7.78000 12.1462931 13 65 17.05000 33.1067720 14 65 22.48000 24.9648226 15 65 12.66000 34.6577561 16 186 21.51010 38.8329912 17 186 26.25887 27.8375016 18 186 27.67733 37.7165427
>
4 IL PACKAGE DRC 8 Si tratta della crescita di una coltura di barbabietola da zucchero in presenza ed in assenza di piante infestanti. Ai dati `e possibile adattare una funzione di Gompertz, in modo molto semplice:
model <- drm(weightFree ~ DAE, data=beetGrowth, fct=gompGrowth.1(), adjust="bc1")
notare l’argomento fctche permette di specificare una funzione (scelta tra quelle disponibili), mentre l’argomentoadjust imlementa la procedura di Box e Cox, che sceglie automaticamente il valore di lambda pi`u opportuno per la trasformazione.
La funzione summary() restituisce le stime, indicando il valore lambda utilizzato per la correzione:
> summary(model)
Model fitted: Gompertz Growth Model (3 parms) Parameter estimates:
Estimate Std. Error t-value p-value c:(Intercept) 0.0507220 0.0040974 12.3790341 2.823e-09 m:(Intercept) 0.9681277 0.1598079 6.0580709 2.191e-05 plateau:(Intercept) 44.2395691 8.0757317 5.4780880 1e-04 Residual standard error: 0.3730283 (15 degrees of freedom) Non-normality/heterogeneity adjustment through optimal Box-Cox
transformation Estimated lambda: 0
Confidence interval for lambda: [-0.176,0.195]
La funzione anova() esegue un test di lack of fit:
> anova(model) Lack-of-fit test
ModelDf RSS Df F value p value One-way ANOVA 12 0.46231
DRC model 15 2.08725 3 14.0593 0.0003
>
Vediamo che, in questo caso il test `e significativo. La funzione plot() permette di ottenere un grafico dei dati e della funzione. Per default, viene
4 IL PACKAGE DRC 9 plottato il logaritmo della x, se ci`o non corrisponde alla propria volont`a `e necessario indicarlo, utilizzando l’argomentolog:
> plot(model)
Osserviamo che la funzione di Gompertz `e poco adatta, in quanto non permette una buona stima dell’asintoto superiore. Si pu`o quindi provare ad utilizzare una funzione logistica, caricando il package aomisc, che la contiene:
> library(aomisc)
> model <- drm(weightFree ~ DAE, data=beetGrowth, + fct=logiGrowth.1(), adjust="bc1")
> summary(model)
Model fitted: Logistic Growth Model (3 parms) Parameter estimates:
Estimate Std. Error t-value p-value init:(Intercept) 1.7457e-03 1.0406e-04 1.6776e+01 3.963e-11 m:(Intercept) 1.8568e-01 2.9883e-03 6.2138e+01 8.205e-20 plateau:(Intercept) 3.5417e+01 3.5683e+00 9.9253e+00 5.515e-08
5 RICERCA DELL’INTERVALLO DI CONFIDENZA PER LA X 10
Residual standard error: 0.234448 (15 degrees of freedom) Non-normality/heterogeneity adjustment through optimal Box-Cox
transformation Estimated lambda: 0
Confidence interval for lambda: [-0.176,0.195]
> anova(model) Lack-of-fit test
ModelDf RSS Df F value p value One-way ANOVA 12 0.46231
DRC model 15 0.82449 3 3.1336 0.0656
>
In questo caso possiamo osservare che il fitting `e migliorato notevolmen- te. Il packagedrc`e estremamente comodo, perch`e contiene tutte le funzioni necessarie per eseguire analisi di regressione adeguate. Le funzioni dispo- nibili (coni relativi self-starter) sono log-logistica a due tre e quattro pa- rametri (LL.2(), LL.3(), LL.4()), weibull a due, tre, quattro parametri (W1.2(), W1.3(), W1.4()), sigmoidale con picco iniziale (b3(), b4() e b5()),
Gompertz (tre parametrizzazioni alternative: gompGrowth.1(), gompGrowth.2(), gompGrowth.3()), decrescita esponenziale (expDecay()). Nella library aomisc sono contenu-
te altre funzioni quali: allometrica (allometric.1()), crescita esponenziale (expoGrowth()), degradazione del primo ordine (firstOrder()), iperbole rettangolare (hyperbolic.1()), crescita logistica (tre parametrizzazioni al- ternative logiGrowth.1(), logiGrowth.2(), logiGrowth.3()), crescita monomolecolare (monGrowth()), equazione di Freundlich (DRCpowerCurve()), loglineare (DRClogCurve()), esponenziale negativa a due parametri (DRCnegExp()), regressione asintotica (DRCasymReg()), valori estremi (DRCextremeValue()), funzione di Hill (DRChill()), Chapman-Richard (DRCchapman()).
E’possibile definire funzioni personalizzate, anche se non in modo sem- plice come connls().
5 Ricerca dell’intervallo di confidenza per la X
In taluni casi, abbastanza frequenti per la verit`a, l’ analisi di regressione viene eseguita per stimare o predire il valore della X corrispondente ad un dato Y0. Per esempio, la concentrazione di un erbicida nel terreno pu`o es- sere determinata misurando lo sviluppo di una pianta-test allevata su di esso. In questo caso `e necessario in primo luogo determinare la curva stan- dard di risposta della pianta test allevata su terreno a concentrazione nota
5 RICERCA DELL’INTERVALLO DI CONFIDENZA PER LA X 11 e successivamente utilizzare l’ inversa della funzione di calibrazione per pre- vedere il valore di concentrazione di un terreno conoscendo lo sviluppo della pianta-test.
Mentre `e facile (con l’approssimazione lineare) stimare il limite di confi- denza della Y per una data X, il problema contrario non `e di facile soluzione.
Esistono due strade praticabili: la riparametrizzazione del modello e l’uso della banda d’inferenza per la risposta attesa.
La riparametrizzazione del modello `e una scelta utile; immaginiamo un modello di cinetica del primo ordine (esponenziale decrescente):
Y =a·e−k·t
dove Y `e la concentrazione di una sostanza, t `e il tempo, a `e la con- centrazione iniziale mentre k `e il tasso di degradazione. Nella gran parte dei casi, questo modello viene utilizzato per prevedere la ’semivita’, cio`e il tempo richiesto per avere una concentrazione pari alla met`a di quella iniziale (a/2)
Se t1/2 `e la semivita, si pu`o notare che:
a·exp(−k·t1/2) = a2 exp(−k·t1/2) = 12 (−k·t1/2) = log12 k·t1/2 = log (2) k= log(2)t
1/2
Si pu`o quindi pensare di riparametrizzare il modello esponenziale in questo modo:
Y =a·exp(−log (2) t1/2 ·t)
Si possono quindi ottenere i limiti di confidenza della semivita diretta- mente tramite l’analisi di regressione non-lineare.
La seconda strada percorribile `e quella di utilizzare la banda d’inferenza della risposta attesa per un dato X (Snedecor e Cochran, 1991). La proce- dura `e illustrata in figura e, dal punto di vista geometrico, il calcolo `e chiaro:
data una curva e la banda di confidenza per la Y attesa (linee tratteggiate), i limiti di confidenza per la X corrispondente ad Y = 60 sono dati dai va- lori corrispondenti ai punti in cui la linea orizzontale passante per Y = 60 incontra le curve che delimitano la banda d’ inferenza (0,17 e 0,21).
6 TRASFORMAZIONE DEL MODELLO 12
La soluzione numerica, immediata nel caso di regressioni lineari (vedi Bliss, 1967), non `e altrettanto semplice nel caso di regressioni non lineari;
una soluzione esplicita non `e riportata in letteratura ed occorre quindi uti- lizzare metodi numerici di calcolo. Lo svantaggio di questa procedura `e che i limiti di confidenza cos`ı ottenuti non sono simmetrici.
6 Trasformazione del modello
La trasformazione del modello dalla sua forma originaria in una forma alternativa pu`o rendersi necessaria per diversi motivi:
1. il modello iniziale non presenta un buon adattamento ai dati speri- mentali e l’ analisi dei residui suggerisce deviazioni sistematiche che fanno pensare alla possibilit`a di includere un ulteriore parametro. Per esempio nel caso in cui in una curva dose-risposta i residui sono preva- lentemente positivi nella parte iniziale, facendo pensare all’ esistenza di un effetto stimolante dell’ erbicida a basse dosi.
2. Alcuni parametri non sono significativi. In questo caso `e bene elimina- re i parametri dal modello. Talvolta l’ eliminazione dei parametri non `e possibile e quindi pu`o essere presa in considerazione la possibilit`a di so- stituire il parametro con un valore arbitrario determinato per esso sulla base dell’ andamento dei dati sperimentali e di conoscenze pregresse di carattere biologico. Quest’ ultima soluzione `e tuttavia da considerare con attenzione e da valutare con molto buon senso; l’ inclusione di vincoli nel modello, in quanto operazione arbitraria, dovrebbe essere eseguita solo se non esistono ulteriori alternative (Streibig, 1980).
3. Alta correlazione tra i parametri. Anche in questo caso i parametri troppo correlati dovrebbero essere eliminati dal modello, considerando
7 PER APPROFONDIRE 13 che `e sempre necessario utilizzare il modello pi`u semplice tra quelli capaci di descrivere i dati in una certa situazione.
Una volta che il modello `e stato modificato, o in tutte le situazioni in cui pi`u modelli possono essere impiegati per descrivere i dati sperimentali, pu`o rendersi necessario un confronto, con il fine di valutare quale modello `e preferibile adottare.
In questo caso, `e necessario distinguere tra modelli annidati (nested) e non. I modelli annidati sono quelli in cui l’ uno si riduce all’ altro semplice- mente uguagliando a zero uno o pi`u parametri. In questo caso il confronto si esegue sulla base di un test di probabilit`a, quale un test F. Infatti, l’ esclu- sione di un parametro dal modello comporter`a certamente un pi`u o meno elevato incremento della devianza residua. Se RSSc `e la devianza residua del modello pi`u complesso associata a DFc gradi di libert`a e se RSSi `e il residuo del modello semplificato, associato aDFi gradi di libert`a, l’ incre- mento della devianza residua dovuto all’ eliminazione dei parametri `e dato daRSSi−RSScconDFi−DFc gradi di libert`a. Il rapporto tra:
F(DFi−DFc);α=
(RSSi−RSSc) (DFi−DFc)
RSSc
DFc
ha una distribuzione F e pu`o essere confrontato con i valori tabulati, per il prescelto livello di probabilit`a. Se il test non risulta significativo il modello semplificato pu`o essere ragionevolmente accettato.
Da tener presente che anche in questo caso l’ analisi risulta solamente approssimata, a causa della non-linearit`a intrinseca dei parametri stimati.
Nel caso di modelli non nidificati, la scelta dovrebbe essere basata su considerazioni di natura biologica ed il modello pi`u significativo in tal senso dovrebbe essere accettato. Se non esistono buone ragioni biologiche per preferire un modello all’ altro `e bene scegliere il modello con la minore devianza residua e con la migliore distribuzione dei residui.
7 Per approfondire
Bates D. M. e Watts D. G., 1988. Nonlinear regression analysis and its applications. John Wiley and Sons, Inc., New York, pp.365
Bliss C. I., 1967. Statistics in biology. McGraw-Hill Inc., Carrol R. J. e Ruppert D., 1988. Transformation and weighting in regression. Chapman and Hall, London
Draper N. R. e Smith H., 1981. Applied regression. John Wiley and Sons, Inc., New York, 2nd ed.
Gunther P., 1991. Biotests mit hoheren Pflanzen zur Untersuchung und Bewertung des Verhaltens von Sulfonylharnstoff-Herbiziden un ande- ren Xenobiotika im Boden. Dissertation fur des akademischen Grades eines Doktors der Gartenbauwissenschaften, University of Hannover, Hannover
7 PER APPROFONDIRE 14 Mead R. e Pike D. J., 1975. A review of response surface methodology from a biometric viewpoint. Biometrics 31, 803-851.
Ratkowsky D.A., 1990. Handobook of nonlinear regression models. Mar- cell Dekker Inc., New York, 241 pp.
Ruppert D., Cressie N. e Carrol R. J., 1989. A trasformation/weighting model for estimating Michaelis-Menten parameters. Biometrics 45, 637.
Snedecor G. W. e Cochran W. G., 1991. Statistical methods. IOWA State University Press, AMES (Iowa), pp.503
Streibig J. C., 1980. Models for curve-fitting herbicide dose response data. Acta Agricolturae Scandinavica 30, 59-64.