미시경제 과목의 첫 3주 정도는 사실상 Optimization만 다뤄졌다. 전반적으로 처음 들어보는 내용은 아니었는데, 세세하게 보면 헷갈리는 지점들이 자주 생겨서 (다변수 함수의 chain rule 도 그중 하나였고) 한 번에 정리했다.
(Local max / Local constrained max / Global max / Global constrained max가 혼재되니까 좀 힘들었다.)
Utility Maximization Problem (UMP)
일관성을 위해 모두 Maximization을 기준으로 살펴본다.
Necessary / Sufficient condition
일단 univariate 함수 f ( x ) f(x) f ( x ) 와 어떤 point x 0 x_0 x 0 에 대해
FOC f ′ ( x 0 ) = 0 f'(x_0)=0 f ′ ( x 0 ) = 0 를 만족하는 것은, x 0 x_0 x 0 가 local max가 되는 것의 Necessary condition 이다.
기울기가 0이어도 그게 local min일 수도 있다.
FOC와 SOC f ′ ′ ( x 0 ) < 0 f''(x_0)<0 f ′′ ( x 0 ) < 0 까지 모두 만족하면 이것은, x 0 x_0 x 0 가 local max가 되는 것의 Sufficient conditon 이다.
Local / Global max
최댓값이 나올 것 같은 어떤 point x 0 x_0 x 0 를 선택한 후 이 point가 FOC (f ′ ( x 0 ) = 0 f'(x_0)=0 f ′ ( x 0 ) = 0 ), SOC (f ′ ′ ( x 0 ) < 0 f''(x_0)<0 f ′′ ( x 0 ) < 0 )을 잘 만족하면, 그건 일단 Local max 라고 한다.
x 0 x_0 x 0 주변 에 대하여 검증한 것이기 때문이다.
x 0 x_0 x 0 가 Global max 가 되려면 일단 FOC f ′ ( x 0 ) = 0 f'(x_0)=0 f ′ ( x 0 ) = 0 와 함께, f ′ ′ ( x 0 ) ≤ 0 ∀ x f''(x_0) \leq 0 \quad \forall \ x f ′′ ( x 0 ) ≤ 0 ∀ x 도 만족해야 한다.
Strict max
Strict local max 여부는 그 최댓값의 uniqueness 에 따라 달라진다. 함수 f ( x ) f(x) f ( x ) 에 그 최댓값이 나타나는 지점이 오직 x = x 0 x=x_0 x = x 0 뿐이라면 Strict local max라고 할 수 있다.
Concavity of fucntion
Concavity에 대해 따지게 되는 대상이 세 가지가 나오는데 (function, set, preference) 그중 함수의 concavity에 대한 정의들이다.
Concave function
수업에서 사용한 정의는, C 2 C^2 C 2 인 함수 f : R 2 → R f:\mathbb{R}^2 \rightarrow \mathbb{R} f : R 2 → R 에 대해
f ( x ) f(x) f ( x ) 가 concave ⇔ \Leftrightarrow ⇔ Hessian matrix D 2 f ( x ) D^2 f(x) D 2 f ( x ) 가 모든 x ∈ X x \in X x ∈ X 에 대해 negative semi definite
이라는 것이다. 또한 후자는
det ( f 11 ( x ) ) ≤ 0 ∀ x ∧ det ( f 22 ( x ) ) ≤ 0 ∀ x ∧ det ( D 2 f ( x ) ) ≥ 0 ∀ x \det\bigl(f_{11}(x)\bigr) \leq 0 \quad \forall x \;\land\;
\det\bigl(f_{22}(x)\bigr) \leq 0 \quad \forall x \;\land\;
\det\bigl(D^2 f(x)\bigr) \geq 0 \quad \forall x det ( f 11 ( x ) ) ≤ 0 ∀ x ∧ det ( f 22 ( x ) ) ≤ 0 ∀ x ∧ det ( D 2 f ( x ) ) ≥ 0 ∀ x
와 동치이다.
그 외의 정의로는 f ( t x + ( 1 − t ) y ) ≥ t f ( x ) + ( 1 − t ) f ( y ) for any t ∈ ( 0 , 1 ) f(tx + (1-t)y) \ \geq \ t f(x) + (1-t) f(y) \ \text{for any} \ t \in (0,1) f ( t x + ( 1 − t ) y ) ≥ t f ( x ) + ( 1 − t ) f ( y ) for any t ∈ ( 0 , 1 ) 도 있다.
Strictly Concave function
위 정의에서 부등호에 등호를 제외하면 Strictly concave한 함수가 된다.
Quasi-concave function
수업에서는
f ( x ) f(x) f ( x ) 가 quasi-concave ⇔ \Leftrightarrow ⇔ { x : f ( x ) ≥ c } (upper contour set) is convex for all c \{x: f(x) \geq c\} \text{(upper contour set) is convex for all} \ c { x : f ( x ) ≥ c } (upper contour set) is convex for all c
로 정의했다.
이러면 이제 set S ⊆ R n S \subseteq \mathbb{R}^n S ⊆ R n 이 convex하다는 건 또 뭐냐:
임의의 두 point x , y ∈ S x, y \in S x , y ∈ S 와 임의이 λ ∈ [ 0 , 1 ] \lambda \in [0,1] λ ∈ [ 0 , 1 ] 에 대해 λ x + ( 1 − λ ) y ∈ S \lambda x + (1-\lambda)y \in S λ x + ( 1 − λ ) y ∈ S 임을 말한다.
그 외의 정의로는 f ( t x + ( 1 − t ) y ) ≥ min { f ( x ) , f ( y ) } for any t ∈ ( 0 , 1 ) f(tx + (1-t)y) \ \geq \ \text{min} \{ f(x), f(y) \} \ \text{for any} \ t \in (0,1) f ( t x + ( 1 − t ) y ) ≥ min { f ( x ) , f ( y )} for any t ∈ ( 0 , 1 ) 도 있다.
이를 만족하는 효용함수로는 Leontief utility function u ( x 1 , x 2 ) = min { x 1 , x 2 } u(x_1, x_2) = \text{min}\{x_1, x_2\} u ( x 1 , x 2 ) = min { x 1 , x 2 } 을 예로 들 수 있다.
Strictly Quasi-concave function
마찬가지로, 위 정의에 있는 부등호에서 등호를 제외하면 된다.
Unconstrained max
Strict local max
FOC: ∇ f ( x 0 ) = 0 \nabla f(x_0) = 0 ∇ f ( x 0 ) = 0 , SOC: hesisan is negative definite **at x 0 x_0 x 0 **
이를 만족하는 x 0 x_0 x 0 은 strict local max 가 된다.
Global max (condition)
주어진 함수가 concave function 이면 FOC를 만족시키는 x 0 x_0 x 0 이 global max 임.
이걸 단계별로 살펴보면, (어떤 point x 0 x_0 x 0 에서 FOC는 만족한다 가정하고)
Hesisan matrix가 x 0 x_0 x 0 에서
Negative semi definite: 이러면 딱히 확정되는 것이 없다. x 0 x_0 x 0 가 saddle point여도 D 2 f ( x 0 ) D^2f(x_0) D 2 f ( x 0 ) 은 semi definite일 수 있다.
Negative definite: f ( x 0 ) f(x_0) f ( x 0 ) 은 Strict local max 가 된다.
Hesisan matrix가 모든 x x x 에 대해
Negative semi definite: 이는 utility function이 concave라는 것을 의미하니 x 0 x_0 x 0 는 Global max 임을 알 수 있다.
Negative definite: 이제는 x 0 x_0 x 0 는 Strict global max 이 된다.
Constrained max
이제 constraint가 조건으로 붙기 시작한다.
Equality condition
max x 1 , x 2 f ( x 1 , x 2 ) s.t. p 1 x 1 + p 2 x 2 = W \begin{aligned}
\max_{\substack{x_1, x_2}} \quad & f(x_1, x_2) \\
\text{s.t.} \quad
& p_1 x_1 + p_2 x_2 = W \\
\end{aligned} x 1 , x 2 max s.t. f ( x 1 , x 2 ) p 1 x 1 + p 2 x 2 = W
와 같은 형태의 문제를 다룬다. 이를 푸는 Lagrangian multiplier 를 학부 미적분학2 시간에 처음 배울 때,
문제를 푸는 직관은 특정 point에서 f f f 와 g g g 의 gradient가 같은 방향 즉 상수배가 돼야 하니 이를 식으로 쓰면
∇ f ( x 1 , x 2 ) = λ ∇ g ( x 1 , x 2 ) \nabla f(x_1, x_2) = \lambda \nabla g(x_1, x_2) ∇ f ( x 1 , x 2 ) = λ ∇ g ( x 1 , x 2 )
이 된다고(minimization은 부호만 반대) 배웠던 기억이 난다. 여기에 GPT의 설명을 좀 더해서 항들을 좌변으로 몰아버린 후 gradient 연산자를 묶어버리면 f − λ g f - \lambda g f − λ g 가 등장한다. 이는
L ( x 1 , x 2 , λ ) = f ( x 1 , x 2 ) − λ g ( x 1 , x 2 ) \mathcal{L}(x_1, x_2, \lambda) = f(x_1, x_2) - \lambda g(x_1, x_2) L ( x 1 , x 2 , λ ) = f ( x 1 , x 2 ) − λ g ( x 1 , x 2 )
Lagrangian function 에 나타나는 f − λ g f - \lambda g f − λ g 와 같은 형태이다. 이제 ∂ L ∂ x 1 = 0 , ∂ L ∂ x 2 = 0 , ∂ L ∂ λ = 0 \frac{\partial \mathcal{L}}{\partial x_1}=0, \frac{\partial \mathcal{L}}{\partial x_2}=0, \frac{\partial \mathcal{L}}{\partial \lambda}=0 ∂ x 1 ∂ L = 0 , ∂ x 2 ∂ L = 0 , ∂ λ ∂ L = 0 을 풀어주면 된다.
Lagrangian multiplier는 '2-variable, 1 constraint problem을 (λ \lambda λ 를 추가함으로써) 3-variable unconstrained problem으로 바꾸는 것'이라는 교수님의 설명이 기억에 남는다.
그리고 이런 equality constraint 문제는 Bordered hessian matrix 를 사용해서 풀 수도 있다.
x ∗ x^* x ∗ 를 잘 찾아서 ∇ f ( x ∗ ) = λ ∗ ∇ g ( x ∗ ) , ∇ f ( x ∗ ) ≠ 0 \nabla f(x^*) = \lambda^* \nabla g(x^*), \ \nabla f(x^*) \ne 0 ∇ f ( x ∗ ) = λ ∗ ∇ g ( x ∗ ) , ∇ f ( x ∗ ) = 0 을 만족하고
Bordered hessian matrix에 대해
d e t ( 0 f 1 ( x ∗ ) f 2 ( x ∗ ) f 1 ( x ∗ ) f 11 ( x ∗ ) f 12 ( x ∗ ) f 2 ( x ∗ ) f 21 ( x ∗ ) f 22 ( x ∗ ) ) > 0 det \begin{pmatrix}
0 & f_1(x^*) & f_2(x^*)\\
f_1(x^*) & f_{11}(x^*) & f_{12}(x^*)\\
f_2(x^*) & f_{21}(x^*) & f_{22}(x^*)
\end{pmatrix}>0 d e t 0 f 1 ( x ∗ ) f 2 ( x ∗ ) f 1 ( x ∗ ) f 11 ( x ∗ ) f 21 ( x ∗ ) f 2 ( x ∗ ) f 12 ( x ∗ ) f 22 ( x ∗ ) > 0 이면, x ∗ x^* x ∗ 는 Strict local constrained max 이다.
Inequality condition
max x 1 , x 2 f ( x 1 , x 2 ) s.t. p 1 x 1 + p 2 x 2 ≤ W x 1 ≥ 0 , x 2 ≥ 0 \begin{aligned}
\max_{\substack{x_1, x_2}} \quad & f(x_1, x_2) \\
\text{s.t.} \quad
& p_1 x_1 + p_2 x_2 \leq W \\
& x_1 \geq 0, \ x_2 \geq 0
\end{aligned} x 1 , x 2 max s.t. f ( x 1 , x 2 ) p 1 x 1 + p 2 x 2 ≤ W x 1 ≥ 0 , x 2 ≥ 0
이러한 부등식 제약식이 있는 문제의 경우 Khun-Tucker lagrangian multiplier 를 이용하여 해결한다.
일관성을 위해 모든 부등식은 g ( x ) ≤ 0 g(\mathbb{x}) \leq 0 g ( x ) ≤ 0 형태로 나타내고, Lagrangian function 을 다음과 같이 써낸다.
L ( x 1 , x 2 , λ , μ 1 , μ 2 ) = f ( x 1 , x 2 ) − λ g 1 ( x 1 , x 2 ) − μ 1 g 1 ( x 1 , x 2 ) − μ 2 g 3 ( x 1 , x 2 ) \mathcal{L}(x_1, x_2, \lambda, \mu_1, \mu_2) = f(x_1, x_2) - \lambda g_1(x_1, x_2) - \mu_1 g_1(x_1, x_2) - \mu_2 g_3(x_1, x_2) L ( x 1 , x 2 , λ , μ 1 , μ 2 ) = f ( x 1 , x 2 ) − λ g 1 ( x 1 , x 2 ) − μ 1 g 1 ( x 1 , x 2 ) − μ 2 g 3 ( x 1 , x 2 )
위 예시에서는, g 1 ( x 1 , x 2 ) = p 1 x 1 + p 2 x 2 − W ≤ 0 , g 2 ( x 1 , x 2 ) = − x 1 ≤ 0 , g 3 ( x 1 , x 2 ) = − x 2 ≤ 0 \ g_1(x_1, x_2) = p_1 x_1 + p_2 x_2 - W \leq 0, \quad g_2(x_1, x_2) = -x_1 \leq 0, \quad g_3(x_1, x_2) = -x_2 \leq 0 g 1 ( x 1 , x 2 ) = p 1 x 1 + p 2 x 2 − W ≤ 0 , g 2 ( x 1 , x 2 ) = − x 1 ≤ 0 , g 3 ( x 1 , x 2 ) = − x 2 ≤ 0
그리고 주어진 조건들에 따라 함수의 domain (X 1 × X 2 X_1 \times X_2 X 1 × X 2 )을 여러 케이스로 잘 나눈 후, 그중 아래 4개의 Khun-Tucker Condition 을 만족하는 경우에서 이 최적화 조건의 해를 찾아내면 된다.
Gradient condition: ∂ L ∂ x 1 = 0 , ∂ L ∂ x 2 = 0 \frac{\partial \mathcal{L}}{\partial x_1} = 0, \quad \frac{\partial \mathcal{L}}{\partial x_2} = 0 ∂ x 1 ∂ L = 0 , ∂ x 2 ∂ L = 0
Feasibility: p 1 x 1 + p 2 x 2 ≤ W , x 1 ≥ 0 , x 2 ≥ 0 p_1 x_1 + p_2 x_2 \leq W, \quad x_1 \geq 0, \quad x_2 \geq 0 p 1 x 1 + p 2 x 2 ≤ W , x 1 ≥ 0 , x 2 ≥ 0
Non-negativity: λ , μ 1 , μ 2 ≥ 0 \lambda, \mu_1, \mu_2 \geq 0 λ , μ 1 , μ 2 ≥ 0
Complementary Slackness Condition
λ ( p 1 x 1 + p 2 x 2 − W ) = 0 \lambda(p_1 x_1 + p_2 x_2 - W )=0 λ ( p 1 x 1 + p 2 x 2 − W ) = 0
μ 1 x 1 = 0 \mu_1 x_1=0 μ 1 x 1 = 0
μ 2 x 2 = 0 \mu_2 x_2=0 μ 2 x 2 = 0
다만 이러한 Khun-Tucker condition은 Necessary condition이므로 이걸 만족해도 그렇게 구한 (candidate) point들이 min / max / saddle point 중 무엇일지 알 수는 없고, 결국 또다시 Second Order Condition이 함께 충족되어야 Sufficient condition이 된다.
만약 함수 f ( x 1 , x 2 ) f(x_1, x_2) f ( x 1 , x 2 ) 가 quasi-concave하고, feasible set은 convex하면, 이를 만족하는 local constrained max는 global constrained max 이다.
2026.03.25
2026.03.30
References
https://pasus.tistory.com/73