La differenziazione dà un'approssimazione lineare di una funzione vicino a un punto. Una funzione lineare è la più semplice da trattare, e per questo gli algoritmi di ottimizzazione partono da lì. In una variabile derivata e differenziabilità coincidono. In Rn l'equivalenza non vale.
Sia f:R→R e x0∈R. Il rapporto incrementale è definito per x=x0, e x0 è di accumulazione per questo insieme, quindi il suo limite ha senso. Se il limite esiste finito, è la derivata prima in x0. Con x=x0+h:
La funzione f è differenziabile in x0 se esiste una costante a tale che
f(x)=f(x0)+a(x−x0)+o(x−x0),x→x0
Per x→x0, r=o(g) significa che r e g tendono a zero e r ci va più in fretta:
r(x)→0,g(x)→0,g(x)r(x)→0
Il termine o(x−x0), detto resto, è dunque trascurabile rispetto all'incremento x−x0. Vicino a x0 si può allora sostituire f con la funzione affine
f^(x)=f(x0)+a(x−x0)
che è lineare nell'incremento x−x0, e per questo f si dice linearizzabile.
In una variabile derivabile e differenziabile sono equivalenti, con a=f′(x0). Dividendo la formula per x−x0 si vede che il resto, diviso per l'incremento, tende a zero se e solo se il rapporto incrementale tende ad a. Così f^ è la retta tangente.
La tangente come approssimazione di f
Intorno ampio di x0
x0x
f(x)=sinx
f^(x)
Ingrandimento attorno a x0
x
f(x)
f^(x)
Lontano da x0 la tangente si stacca dal grafico. Vicino a x0 le due curve si confondono: l'errore è trascurabile rispetto a x−x0.
Rette e semirette in Rn
Il passaggio a più variabili passa per le direzioni. Dati un punto xˉ∈Rn e un vettore d∈Rn non nullo, la retta per xˉ parallela a d e la semiretta nel verso di d sono
{x∈Rn:x−xˉ=td,t∈R}{x∈Rn:x−xˉ=td,t≥0}
Con t≤0 si ha la semiretta opposta. La retta è l'unione delle due, e tutte e tre contengono xˉ.
Retta e semirette per xˉ
xˉxˉ+dx1x2
semiretta nel verso di d
vettore d
semiretta opposta
La retta per xˉ parallela a d è l'unione di due semirette: quella nel verso di d (t≥0) e quella opposta (t≤0).
Derivata direzionale
Per ora f:Rn→R è definita su tutto Rn. Si fissano un punto x e una direzione d e si studia come varia f lungo la semiretta che parte da x nel verso di d, cioè nei punti x+td con t≥0. Se esiste finito il limite
Df(x,d)=t→0+limtf(x+td)−f(x)
si chiama derivata direzionale di f in x lungo d. Il limite è per t→0+ perché la semiretta ha t≥0. Dipende dal punto e dalla direzione, e può non esistere. Con φ(t)=f(x+td) è la pendenza di φ in t=0, vista da destra.
La derivata direzionale come pendenza lungo la semiretta
Semiretta da x=(1,2)
xx+tdx1x2
semiretta nel verso di d
rette dove f è costante
f=ex1−x2 lungo la semiretta
t
φ(t)=f(x+td)
tangente in t=0, pendenza Df(x,d)
Lungo la semiretta da x, φ(t)=f(x+td) ha pendenza Df(x,d) in t=0. Ruotando d la pendenza cambia, ed è nulla quando d è parallela alle rette dove f è costante.
Derivate parziali e gradiente
Si fissa la j-esima variabile e si lasciano ferme le altre. Se esiste finito il limite
∂xj∂f(x)=t→0limtf(x1,…,xj+t,…,xn)−f(x)
è la derivata parziale di f rispetto a xj in x. Dipende anche dai valori delle variabili ferme. Si calcola con le regole di derivazione, trattando le altre variabili come costanti.
Se esistono le derivate parziali rispetto a tutte le variabili, si dispongono in colonna e si ottiene il gradiente:
∇f(x)=∂x1∂f(x)⋮∂xn∂f(x)∈Rn
Il gradiente sta nello spazio delle variabili e ha tante componenti quante sono. Calcolarlo è solo derivazione.
Esempio in R3. Per f(x)=x13−3x1x2+x1x2x3:
∇f(x)=3x12−3x2+x2x3−3x1+x1x3x1x2
Nel punto xˉ=(1,2,−1) si sostituiscono le coordinate:
∇f(xˉ)=3−6−2−3−12=−5−42
Esempio in R2. Per f(x)=ex1−x2 il gradiente sta in R2. Nel punto xˉ=(1,2):
∇f(x)=(ex1−x2−ex1−x2)∇f(xˉ)=(e−1−e−1)
Esercizio. Trovare f:R6→R il cui gradiente, in un punto assegnato, sia c=(1,−1,2,3,1,6)⊤. Invertire i calcoli punto per punto è inutile. Basta una funzione il cui gradiente non dipende dal punto, cioè una funzione lineare f(x)=c⊤x:
f(x)=x1−x2+2x3+3x4+x5+6x6
Ogni derivata parziale è il coefficiente della variabile, quindi ∇f(x)=c in ogni punto.
Derivate parziali e derivate direzionali
Il punto (x1,…,xj+t,…,xn) si ottiene da x cambiando solo la componente j, quindi è x+tej, dove ej è il versore del j-esimo asse coordinato, con 1 al posto j e 0 altrove. Così
∂xj∂f(x)=t→0limtf(x+tej)−f(x)
È simile a Df(x,ej), ma il limite è per t→0 da entrambi i lati, mentre la derivata direzionale lo è solo da destra. Servono perciò due direzioni, ej e −ej.
Proposizione. La derivata parziale ∂f(x)/∂xj esiste se e solo se esistono Df(x,ej) e Df(x,−ej) e
Df(x,ej)=−Df(x,−ej)
Dimostrazione. La derivata parziale esiste se e solo se esistono, e coincidono, il limite del rapporto incrementale per t→0+ e quello per t→0−. Il primo è per definizione Df(x,ej). Nel secondo si pone t=−h, con h→0+:
Il limite da sinistra esiste se e solo se esiste Df(x,−ej), e vale il suo opposto. Dunque i due limiti esistono e coincidono se e solo se esistono le due derivate direzionali e Df(x,ej)=−Df(x,−ej). In tal caso ∂f(x)/∂xj=Df(x,ej). □
La funzione t↦f(x+tej) attorno a t=0
t
φ(t)=f(x+tej)
pendenza a destra: Df(x,ej)
pendenza a sinistra: −Df(x,−ej)
La derivata parziale esiste se la pendenza a destra e quella a sinistra coincidono, cioè Df(x,ej)=−Df(x,−ej). Con lo spigolo, scelto dal selettore, no.
Le derivate parziali non bastano per la continuità
In una variabile la derivabilità implica la continuità. Da f(x)−f(x0)=a(x−x0)+o(x−x0) il secondo membro tende a zero, quindi f(x)→f(x0). Non è necessaria: esistono funzioni continue e non derivabili.
In due variabili ci si aspetterebbe che l'esistenza delle due derivate parziali in un punto implichi la continuità. È falso. Esiste una funzione con f(0,0)=0, nulla sugli assi, e con limite 1 lungo A={(x1,x2):x1=0,x2=0}. Ad esempio
f(x1,x2)={10x1=0,x2=0altrimenti
Non è continua in (0,0). L'origine è di accumulazione per A e la restrizione f∣A tende a 1. Se f fosse continua in (0,0), f∣A tenderebbe a f(0,0)=0.
Le derivate parziali esistono. Sugli assi f è nulla, quindi f(t,0)=f(0,t)=0 per ogni t e i rapporti incrementali sono nulli:
Entrambe le derivate parziali in (0,0) esistono e valgono 0.
Un controesempio nell'origine
(0,0)f=1f=0x1x2
A, dove f=1
assi, dove f=0
Avvicinandosi all'origine lungo A la funzione vale sempre 1, sugli assi vale 0. Per questo non è continua in (0,0), anche se le derivate parziali esistono.