Tuesday, April 26, 2011

envelope theorem

Envelope theorem
Consider an arbitrary maximization (or minimization) problem where the objective function f(\bold x,\bold r) depends on some parameters \bold r:
f^*(\bold r) = \max_{\bold x} f(\bold x,\bold r)\,
The function f^*(\bold r) is the problem's optimal-value function — it gives the maximized (or minimized) value of the objective function f(\bold x,\bold r) as a function of its parameters \bold r.
Let \bold x^*(\bold r) be the (arg max) value of \bold x, expressed in terms of the parameters, that solves the optimisation problem, so that f^*(\bold r) = f(\bold x^*(\bold r), \bold r). The envelope theorem tells us how f^*(\bold r) changes as a parameter changes, namely:
\frac{d\ f^*(\bold r)}{d\ r_i} =  \frac{\partial f(\bold x,\bold r)}{ \partial r_i} \Bigg|_{\bold x = \bold x^*(\bold r)}
That is, the derivative of f^*(\bold r) with respect to ri is given by the partial derivative of f(\bold x,\bold r) with respect to ri, holding \bold x fixed, and then evaluating at the optimal choice \bold x = \bold x^*(\bold r).

[edit] General envelope theorem

There also exists a version of the theorem, called the general envelope theorem, used in constrained optimisation problems which relates the partial derivatives of the optimal-value function to the partial derivatives of the Lagrangian function.
We are considering the following optimisation problem in formulating the theorem (max may be replaced by min, and all results still hold):
\max_{\bold x} f(\bold x,\bold r) \;\; s.t. \;\; \bold g(\bold x,\bold r) = \bold 0
Which gives the Lagrangian function:
\mathcal{L}(\bold x,\bold r) = f(\bold x,\bold r) - \boldsymbol{\lambda} \cdot \bold g(\bold x,\bold r)
Where:
\boldsymbol{\lambda} = (\lambda_{1},\dots,\lambda_{n})
\bold g(\bold x,\bold r) = (g_{1}(\bold x,\bold r),\dots,g_{n}(\bold x,\bold r))
\bold 0 = (0,\dots,0) \in \mathbb{R}^n
\cdot is the dot product
Then the general envelope theorem is:
\frac{d f^*(\bold r)}{d r_i} = \frac{\partial \mathcal{L}(\bold x,\bold r)}{\partial r_i} \Bigg|_{ \bold x = \bold x^*(\bold r), \ \boldsymbol{\lambda} = \boldsymbol{\lambda}(\bold r) }
Note that the Lagrange multipliers \boldsymbol{\lambda} are treated as constants during differentiation of the Lagrangian function, then their values as functions of the parameters are substituted in afterwards.