Ottimizzazione multivariata

Introduzione all'ottimizzazione in Python

Jasmin Ludolf

Content Developer

La fabbrica di biscotti

 

Funzione obiettivo:

  • $F = K^{0.34} \times L^{0.66}$
    • $F$: funzione di produzione
    • Lavoro ($L$): ore dei lavoratori
    • Capitale ($K$): ore di funzionamento delle macchine
    • Problema multivariato

 

Biscotti su una linea di produzione.

Introduzione all'ottimizzazione in Python

Derivate parziali

 

Univariata

 

Funzione obiettivo:

$p = 40q - 0.5q^2$

Derivata: la pendenza cambia al variare dell’unica variabile

$\frac{dp}{dq} = 40 - q$

 

Multivariata

 

Funzione obiettivo:

$F = K^{0.34} \times L^{0.66}$

Derivate parziali: come cambia la pendenza rispetto a ogni variabile

$\frac{\partial F}{\partial K}$ e $\frac{\partial F}{\partial L}$

Introduzione all'ottimizzazione in Python

Risolvere problemi multivariati

 

Funzione obiettivo:

  • $F = K^{0.34} \times L^{0.66}$
    • $F$: funzione di produzione
    • Lavoro ($L$): ore dei lavoratori
    • Capitale ($K$): ore di funzionamento delle macchine
from sympy import symbols, diff, solve

K, L = symbols('K L') F = K**.34 * L**.66
dF_dK = diff(F, K) dF_dL = diff(F, L)
crit_points = solve([dF_dK, dF_dL], (K, L))
print(crit_points)
[]
Introduzione all'ottimizzazione in Python

La nostra funzione di produzione

 

Funzione obiettivo:

  • $F = K^{0.34} \times L^{0.66}$
  • Aumentando $K$ e $L$, $F$ cresce
  • Nessun massimo o minimo!

Un grafico 3D della funzione di produzione dei biscotti.

Introduzione all'ottimizzazione in Python

I limiti della derivazione

 

Fai attenzione a:

  • Nessuna derivata
  • Discontinuità
  • Funzioni crescenti o decrescenti

 

  • Non derivabile: non si può ottimizzare con la derivazione

Tre grafici di funzioni per cui la derivazione non trova massimi o minimi.

Introduzione all'ottimizzazione in Python

Ayo berlatih!

Introduzione all'ottimizzazione in Python

Preparing Video For Download...