Багатовимірна оптимізація

Вступ до оптимізації в Python

Jasmin Ludolf

Content Developer

Фабрика печива

 

Цільова функція:

  • $F = K^{0.34} \times L^{0.66}$
    • $F$: виробнича функція
    • Праця ($L$): години роботи працівників
    • Капітал ($K$): години роботи верстатів
    • Багатовимірна задача

 

Печиво на виробничій лінії.

Вступ до оптимізації в Python

Частинні похідні

 

Одновимірна

 

Цільова функція:

$p = 40q - 0.5q^2$

Похідна: нахил цільової функції змінюється зі зміною однієї змінної

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

 

Багатовимірна

 

Цільова функція:

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

Частинні похідні: як змінюється нахил щодо кожної змінної

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

Вступ до оптимізації в Python

Розв'язання багатовимірних задач

 

Цільова функція:

  • $F = K^{0.34} \times L^{0.66}$
    • $F$: виробнича функція
    • Праця ($L$): години роботи працівників
    • Капітал ($K$): години роботи верстатів
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)
[]
Вступ до оптимізації в Python

Наша виробнича функція

 

Цільова функція:

  • $F = K^{0.34} \times L^{0.66}$
  • Коли $K$ і $L$ зростають, $F$ зростає
  • Немає максимумів чи мінімумів!

3D-графік виробничої функції печива.

Вступ до оптимізації в Python

Обмеження диференціювання

 

Звертайте увагу на:

  • Відсутність похідної
  • Розриви
  • Зростаючі або спадні функції

 

  • Недиференційовні: не можна оптимізувати методами диференціювання

Три графіки функцій, для яких диференціювання не знаходить максимуми чи мінімуми.

Вступ до оптимізації в Python

Давайте потренуємось!

Вступ до оптимізації в Python

Preparing Video For Download...