동태경제모형을 이용한에너지 거시경제 정책변수의 최적화 · 요약 i 요 약...

95
기본연구보고서 2005-14 동태경제모형을 이용한에너지 거시경제 정책변수의 최적화 - 콜로케이션 방법(Collocation method)의 응용과 시사점 - 김 수 일

Transcript of 동태경제모형을 이용한에너지 거시경제 정책변수의 최적화 · 요약 i 요 약...

  • 기본연구보고서 2005-14

    동태경제모형을 이용한에너지 거시경제

    정책변수의 최적화 - 콜로케이션 방법(Collocation method)의 응용과 시사점 -

    김 수 일

  • 참여연구진

    연구책임자 : 책임연구원 김수일

  • 요약 i

    요 약

    1. 연구필요성 및 목적

    경제구조가 복잡해짐에 따라 정부의 정책간에 상호 의존도가 증가하

    고 그 영향도 점점 더 복잡한 동태적 구조를 나타내고 있다. 에너지․환

    경부문에서 다루고 있는 정책도 거시경제부문의 일반 정책과 상호 영향

    을 미치며 밀접한 관련을 맺고 있다. 이러한 동태경제구조를 분석하기

    위해 경제학에서 개발된 모델들은 주로 확률적 변환구조를 가지고 있는

    상태변수와 이론적인 의사결정법칙 가정아래 동태경제문제의 해 혹은

    균형을 찾는다. 대표적인 모형들로 경제성장모형이나 자산가치 모형, 혹

    은 균형탐색모형 등을 거론할 수 있다. 이러한 모델중의 하나인 동태최

    적화 모델은 벨만의 최적화 원칙에 입각하여 모형을 구성한다. 하지만,

    여러 연구에 광범위하게 사용되고 있음에도 불구하고, 동태경제모델은

    특별한 경우를 제외하고 명시적인 해를 구할 수 없다거나 근사추정된

    해의 정확성이 떨어지는 문제점이 있다. 예를 들어, 그동안 경제학에서

    동태경제모형을 풀기 위해 많이 사용되어왔던 L-Q(Linear-Quadratic) 방

    법은 모형변환과정에서 제약식이 누락될 경우 근사오차가 커지는 단점

    이 있다.

    본 연구는 동태경제모델의 해를 근사추정하는 알고리즘으로 콜로케이

    션 방법(Collocation methods)을 설명하고 다양한 동태경제문제에 적용

    해보고자 했다. 콜로케이션 방법은 물리학 등에서 널리 사용되는 근사추

  • ii

    정방법으로서 미란다(Miranda)와 패클러(Fackler)에 의해 경제학에 소개

    된 바 있다. 새로운 방법을 소개하는 만큼, 본 연구는 대부분의 지면을

    콜로케이션 방법의 설명에 할애하고 있다. 또한, 다양한 경제모델을 사

    용하여 콜로케이션 방법을 이용한 동태경제모형 풀이를 설명하고자 하

    였다.

    2. 내용 요약

    본 연구에서는 콜로케이션 방법에 대한 이론적인 설명과 MATLAB 프

    로그램 작성에 대한 설명을 병행하였다. 또한 동태경제최적화의 다양한

    모델을 이용하여 콜로케이션 방법의 프로그램과 그 결과를 예시하였다.

    본 연구에서 예제로 사용된 동태경제모형은 단순한 램지(Ramsey) 경제

    성장 모형과 환경오염을 변수로 한 성장모형 그리고 경제정책변수의 최

    적화 모형 등이다.

    콜로케이션 방법 (Collocation Methods)

    콜로케이션 방법은 주로 복잡한 비선형 함수로 이루어진 동태최적화

    모형의 목적함수인 벨만함수나 그 해인 제어변수 함수를 미리 선정한

    지점에서 연구자가 알고있는 밑함수의 선형결합과 일치하도록 근사추정

    하는 방법이다. 콜로케이션 방법은 함수근사추정 방법들의 일반화된 방

    법으로, 유한기 혹은 무한기의 문제 그리고 연속 혹은 이산적인 시간․

    상태․제어변수 등 다양한 동태경제모델에 적용할 수 있다.

    일반적인 동태모형의 구조는 다음과 같다. 매 기에 경제주체는 경제구

    조와 상태를 관찰하고 미래에 대한 합리적 기대 하에 최적행동을 취하

    며, 이에 대한 보상을 받는다. 다음기의 경제 상태는 현재기의 경제 상

  • 요약 iii

    태와 경제주체의 결정 혹은 행동, 그리고 외부적인 미래의 경제충격을

    요인으로 포함하는 마르코프 과정(Markov process)을 따라 변한다고 가

    정한다. 여기서 경제주체의 행동은 현재기와 할인된 앞으로의 기대보상

    의 합(가치함수)을 극대화하기 위해, 임의의 상태와 기간에서 취해야 할

    최적행동을 규정하는 일련의 최적 의사결정함수의 순서이다. 이러한 동

    태경제모형은 벨만(Bellman)의 최적화 원칙(principle of optimality)를

    이용하여 구조화되며, 의사결정 문제가 무한기에 걸친 문제일 경우, 벨

    만함수를 함수의 방정식 문제로 표현할 수 있다. 또한, 경제학에서 다루

    는 제어변수나 상태변수는 일정한 제약이 있는 경우가 일반적이기 때문

    에, 이러한 경우 상보조건을 이용하여 문제의 해를 표시한다.

    동태경제모형에서 접하게 되는 수리적 문제는 두 가지 형태의 함수

    근사법으로 푸는데, 그중 하나는 보간법(interpolation)이고 다른 하나는

    함수 방정식(functional equation)이라 한다. 콜로케이션 방법은 개념상

    함수 근사법의 일반화된 방법으로, 동태경제학 문제에서 접하는 다양한

    함수 방정식의 문제들에 적용가능하다. 함수 방정식은 벨만 함수나 오일

    러 함수 등 동태경제 분석에서 일반적으로 나타나는 형태이다. 하지만

    함수 방정식 법은 미지의 해가 무한대의 점으로 구성된 함수 자체이기

    때문에 풀기가 쉽지 않다. 콜로케이션 방법은 미지의 함수인 벨만 기대

    함수(혹은 제어변수)를 연구자가 알고 있는 n개 밑함수(basis functions)

    의 선형결합으로 표현하고, 미리 지정한 n개의 콜로케이션 지점

    (collocation nodes)에서 만족하도록 n개의 계수를 구하는 방법이다. 즉,

    콜로케이션 방법은 무한차원의 함수 방정식을 간단한 유한 차원의 근찾

    기(rootfinding) 문제로 대체시킨다.

  • iv

    동태경제모형과 경제정책변수의 최적화

    동태 경제성장 모형을 콜로케이션 방법으로 푸는 과정을 설명하기 위

    해 본 연구는 램지(Ramsey) 모델의 기본적인 분석에서부터 출발하였다.

    이후, 램지의 기본모형을 바탕으로 오염이 포함된 모델에서의 소비최적

    화 문제, 그리고 소비와 탄소세의 동시 최적화 문제 등 다양한 경제문제

    들을 다루는 예제들로 모형을 확장하였다.

    기본모델의 구조는 다음과 같다. 먼저, 외부 거래가 없는 폐쇄된 경제

    구조 하에서 무한기를 사는 대표 소비자는 무한기에 걸친 효용을 극대

    화한다. 여기서 경제주체는 모든 가용 정보에 바탕을 둔 합리적 기대를

    한다. 경제 내에서 생산되는 재화는 한가지이며 재화생산에 필요한 투입

    재는 노동과 자본이다. 생산된 재화는 그 기에 소비되거나 다음기의 생

    산을 위해 투자된다. 시장은 완전경쟁적이고 세금은 없는 것으로 가정한

    다. 이러한 무한기에 걸친 효용극대화 문제는 벨만 함수와 상태변화함수

    로 간단히 표시할 수 있다. 상보조건을 이용하여 동태경제모형의 해를

    구하면 균형에서 일인당 소비의 증가 속도와 균형 경제 성장이 일치하

    게 되는 것을 알 수 있다.

    램지의 기본모델은 균형조건식을 사용하거나 가치함수를 포함한 원래

    의 모형식을 사용하여 콜로케이션 방법을 적용할 수 있다. 두가지 방법

    모두 미란다와 패클러가 구축한 MATLAB program toolbox인

    CompEcon을 사용한다. 콜로케이션 방법의 적용은 다음과 같다. 우선

    균형조건식, 상태변환함수 그리고 기대함수와 그 도함수들을 계산하는

    외부 모델 파일을 작성한다. 두 번째 과정으로 모델에 필요한 파라메터

    와 외부충격에 대한 정의를 한다. 세 번째, MATLAB 구조명령어

    'model'을 이용하여 모델을 구성한다. 네 번째, 콜로케이션 방법에 사용

  • 요약 v

    할 밑함수와 보간점을 결정한다. 다섯 번째, 연구자가 임의로 제어변수

    의 초기값을 설정하고 'remsolve'나 'dpsolve'를 수행한다. 'remsolve

    (dpsolve)'는 모델구조, 근사공간, 그리고 초기값을 이용하여 기대함수에

    대한 근사함수의 계수값, 계산이 수행된 상태변수 공간, 그리고 상태 공

    간에서 균형 제어변수값, 기대함수 값, 균형함수의 값과 근사오차를 결

    과로 출력한다. 마지막으로 추정결과를 이용하여 사후분석을 시행한다.

    기본 모델의 확장은 다음과 같다. 우선, 기본모델에서 아밍톤 에너지

    재화를 사용함으로써 오염이 발생하고, 오염이 효용을 떨어뜨리는 경우

    를 살펴보았다. 또다른 변화모델은 오염배출 조정 모형으로 정부가 오염

    배출 상한을 설정한 후, 탄소세나 에너지 재화의 최적 선택을 통하여 정

    부의 오염배출 상한을 유지하는 모델들이다. 이러한 모델의 모형화는 여

    러 가지 시나리오가 가능한데, 예를 들어 세금 부과 없이 오염배출 한도

    내에서 기업이 최적의 에너지 재화를 선택하는 모형을 설정할 수 있다.

    다른 모형화 방안은 오염배출이 상한을 초과할 경우에만 정부가 일정

    세율의 탄소세를 부과하는 방안이다. 이 때, 탄소세는 에너지 재화에 직

    접 부과될 수도 있고, 일반 자본에 부과됨으로써 자본 축적방정식에 영

    향을 미치는 모델이 될 수도 있다. 마지막으로 오염배출 상한이 준수되

    도록 정부가 최적의 세율을 결정하는 방법이 있다. 이럴 경우, 최적화

    모델은 최적 소비와 최적 탄소세를 동시에 구하게 된다. 본 연구에서는

    탄소세율이 고정되어 있는 상황에서 동태 최적 소비결정과 정부가 최적

    탄소세를 결정하는 두 가지 모형을 살펴보았다.

    3. 연구결과 및 정책제언

    본 연구에서는 동태경제 모형의 해법으로 제시되는 함수 근사추정을

  • vi

    일반화한 콜로케이션 방법을 소개하고, 단순한 동태경제모형에서부터 최

    적 탄소세 결정 모형까지 다양한 동태경제 모형의 예에 대한 응용 프로

    그램과 결과를 설명하였다.

    연구에서 사용된 경제모형들은 임의로 파라메터를 설정하는 등 다분

    히 인공적인 모델이지만 현실 경제문제를 다룰 수 있게 확장가능하다.

    따라서 본 연구는 탄소세나 에너지와 관련된 정책 등 주요 정책수단들

    을 최적화하고 그 영향을 분석할 수 있는 기반과 유용한 분석수단을 제

    시한다고 본다. 본 연구에서 다루어진 동태경제 모형은, 이전의 동태경

    제 모형과는 달리, 균형성장을 하는 최적 제어변수와 상태변수들을 직접

    근사추정했다. 또한 새로운 방법론 소개는 그동안 많은 연구에서 널리

    사용되었던 이전 풀이방법들의 결과들과 비교분석을 통하여 과거 연구

    들의 정확성을 재검토할 수 있는 바탕이 된다.

  • abstract i

    ABSTRACT

    1. Research Purpose

    The interdependence between economic policies of the government

    is increasing and the corresponding influence has a dynamic

    structure. Policies in the energy/environmental sector have an

    intimate relationship with macroeconomic policies. The analytic

    models describing the dynamic structure seek solution or equilibrium

    of the economy under the assumption about stochastically evolving

    states and theory-consistent decision rule. Economic growth model,

    asset pricing model, and searching model are among them. The

    dynamic optimization model constructs the model based on Bellman's

    optimality principle. The dynamic models, in spite of wide

    application, lack the closed functional form of solution except limited

    special cases. The approximation algorithm to solve the model

    numerically renders highly inaccurate solution. For example,

    linear-quadratic method which has been extensively used in dynamic

    model will yield poor approximation if any constraints are discarded

    in the process of Talyor expansion.

    This research focuses on introducing a brand-new methodology,

    collocation method, and applying the method in simple dynamic

  • ii

    examples. The collocation method, introduced by Miranda and Fackler

    is an numerical approximation which has been used in biology,

    physical and engineering science. For the purpose of addressing a

    new method, this research explains the theory and program examples

    of the collocation method throughout the book. For further

    understanding, the research also attempts to include dynamic models

    in economics.

    2. Summary

    This research explains the theory of the collocation method with

    MATLAB codes for solution algorithm. The last chapter is devoted to

    economic examples of application of the collocation method to

    dynamic optimization and the outcomes. The economic models

    considered in this research include the Ramsey's simple growth

    model, the consumption optimization with pollution, and

    simultaneous optimization of consumption and carbon tax.

    Collocation Methods

    In the collocation method, the unknown function, such as the

    Bellman equation or the function for the control variable which are

    highly nonlinear, are approximated by a linear combination of known

    basis functions which satisfy the unknown function only at prescribed

    points. The collocation method is a straightforward generalization of

  • abstract iii

    the function approximation methods for dynamic economic models

    including finite or infinite time and discrete or continuous time, state

    or control variables.

    Simple and general dynamic model has the following structure: in

    every period, an economic agent observes the state of an economic

    system, takes an optimized action under the rational expectation of

    the future, and earns a reward that depends on the state and action.

    The next state of the economic system is controlled by Markov

    process, implying that the next period's state depends on the current

    state of the economic system and action of the agent conditional on

    an exogenous random shock. In this process, the agent's action is a

    sequence of optimized policies or decision that maximize the present

    value of current and expected future rewards over a time horizon.

    The dynamic economic model may be structured and analyzed by

    Bellman's principle of optimality. In a infinite time horizon case,

    Bellman equation can be written as a vector fixed-point equation. The

    case with constraints on the action or state variables as common in

    the economic problem may be solved using complementarity

    conditions. Two types of function approximation methods solve the

    numerical problems arising in the dynamic model: the interpolation

    and functional equation. The collocation method, conceptually the

    generalized method of functional approximation, can be applied into

    various dynamic economic problems since the Bellman equation or

    Euler condition can be expressed in the form of functional equation.

  • iv

    Funtional equations, however, are difficult to slove because the

    unknown is an entire function whose domain contains an infinite

    number of points. The collocation method approximates the unknown

    Bellman equation (or control variable) using a linear combination of n

    known basis functions whose n coefficients are fixed by requiring the

    approximant to satisfy the functional equation at n prescribed

    collocation nodes. That is, the collocation method substitutes the

    infinite-dimensional functional equation problem with the simpler

    finite-dimensional rootfinding problem.

    Optimization of Policy Variables in Dynamic Economic Models

    To show the application of the collocation method into the

    dynamic model, this research starts from the Ramsey model as a

    benchmark and analyzes various economic optimization problems

    such as the consumer optimization problem including pollution and

    simultaneous optimization of consumption and carbon tax.

    The basic structure of the simple model are as follows. The closed

    economy has a population of a large number of identical agents with

    a constant growth rate. The representative agent maximizes the utility

    over infinite time with the rational expection based on all currently

    available information, subject to the constraint that output is either

    consumed or invested. The economy produce only one good using

    labor and capital. The market is prefect competitive and has no tax.

    The infinite-time utility maximization may be expressed in the form

  • abstract v

    of the Bellman equation with state transition functions. The

    equilibrium condition, in terms of primal or complementarity

    formulation, shows that a constant per capita consumption growth

    rate is sustained by a constant economic growth rate at the steady

    state.

    The collocation method solves the Ramsey's basic model through

    either of primal or complementarity formulation. Miranda and Fackler

    provide the CompEcon Toolbox, MATLAB routines, for both cases. To

    implement the collocation method, one first codes a model function

    file that returns the values and derivatives of the reward and

    transition functions (and expectation function in the case of

    complementarity formulation) at arbitrary vectors of states, actions

    and shocks. Second, one enters the model parameters and defines the

    shock descretized using Gaussian quadratures. Third, one packs the

    model structure using a structured variable, 'model'. Fourth, one

    specifies the basis functions and collocation nodes. Fifth, one provides

    judicious guesses for starting values and solves the decision model

    using the routine of remsolve or dpsolve. The CompEcon Toolbox

    routine returns the basis coefficients, optimal values, optimal actions

    and approximation residuals at a refined state grid. Finally, one

    performs the postoptimality analysis.

    The basic model is expanded as follows. The first model modifies

    the production function such that the using Armington energy good

    in production generates the pollution deteriorating utility. Other

  • vi

    adjusted models are pollution regulation models considering that the

    government set the ceiling of pollution emission and optimizes the

    carbon tax or energy goods to support the ceiling. Those models

    allow a set of scenarios; for example, the model captures the

    producers behavior choosing optimized set of input including the

    energy goods. Another possibility is that the government imposes the

    carbon tax upon the excess emission of pollution over the limit. In

    this case, the carbon tax can decrease the use of either of energy

    goods or capital. Finally, to keep the ceiling of pollution emission,

    the government may decide the optimal rate of tax, resulting the

    model return the optimal consumption and carbon tax. This research

    analyzes both of the dynamic optimization of consumption with a

    fixed carbon tax rate and simultaneous optimization of consumption

    and carbon tax.

    3. Research Results & Policy Suggestions

    This research introduces the collocation method which is a

    generalized method of functional approximation as the solution of

    dynamic problems, and shows various examples that one can apply

    the collocation method. The economic models considered in this

    research are the Ramsey's simple growth model, the consumption

    optimization with pollution, and simultaneous optimization of

    consumption and carbon tax.

    The economic models in the research are artificial in the sense that

  • abstract vii

    the researcher assumes the discretionary values for the parameter.

    However, since one can modify and apply models to the real

    economic problems, this research may provide a foundation and

    practical methodology to develop optimization models of major policy

    means such as energy taxes and energy-related policies. Furthermore,

    this research shows the functional approximation of the optimal

    control variables evolving through time. The collocation method may

    provide the opportunity to reexamine models and methodologies in

    previous studies and enrich the future research.

  • 차례 i

    제목 차례

    Ⅰ. 서론 ································································································1

    Ⅱ. 동태최적화 모형과 균형조건 ·······················································3

    1. 동태최적화 모형과 벨만함수 (Bellman equation) ····················3

    2. L-Q (Linear-Quadratic) Control을 이용한 동태최적화 문제의

    풀이 ···························································································6

    3. 동태경제모형의 상보조건 (Complementarity condition) ··········7

    Ⅲ. 콜로케이션 방법 (Collocation Methods) ···································11

    1. 보간법과 함수 방정식 ·····························································11

    2. Chebycheb과 Spline ································································13

    2.1 Chebycheb nodes와 Chebycheb polynomial basis ···········13

    2.2 구역 근사추정 (Piecewise Splines) ····································15

    3. 콜로케이션 방법 ······································································18

    3.1 콜로케이션 방법 ·································································18

    3.2 MATLAB 프로그램을 이용한 콜로케이션 방법의 수행 ····21

    3.3 벨만 함수 콜로케이션 (Bellman Equation Collocation) ····24

    3.4 상보조건 콜로케이션 (Complementarity Condition

    Collocation) ·······································································27

  • ii

    Ⅳ. 동태경제모형과 경제정책 변수의 최적화 ·································31

    1. 콜로케이션 방법 이용한 경제성장모형의 풀이 ·······················31

    2. 오염배출 조정 모형 ·································································43

    2.1 오염배출과 소비의 동태 최적화 ········································43

    2.2 탄소세와 탄소세의 최적화 ·················································53

    Ⅴ. 결론 ······························································································67

    참고문헌 ·····························································································69

    [부록 1] 바이어스트라스 정리(Weierstrass Theorem)와 Jackson's

    Theorem ··············································································71

    [부록 2] Contraction Mapping Theorem ·········································73

  • 차례 iii

    그림 차례

    [그림 3-1] Chebycheb 다항식의 베이시스 함수 ·······························14

    [그림 3-2] 선형 Spline의 베이시스 함수 ··········································16

    [그림 3-3] 3차 Spline의 베이시스 함수 ············································17

    [그림 4-1] 경제성장모형의 최적소비 ················································38

    [그림 4-2] 경제성장모형의 근사오차 ················································38

    [그림 4-3] 경제성장모형의 기대함수 ················································39

    [그림 4-4] 경제성장모형의 균형함수 ················································39

    [그림 4-5] 경제성장모형의 생산함수 ················································41

    [그림 4-6] 경제성장모형의 투자함수 ················································41

    [그림 4-7] 경제성장모형의 20년간 자본축적 경로 (초기자본=5) ·····42

    [그림 4-8] 경제성장모형의 20년간 최적소비경로 ·····························42

    [그림 4-9] 자본과 에너지재화 공간에서 오염배출모형의 최적소비 47

    [그림 4-10] 자본과 오염공간에서 오염배출모형의 최적소비 ···········47

    [그림 4-11] 자본과 에너지제화 공간에서 오염배출모형의 근사오차 48

    [그림 4-12] 자본과 오염공간에서 오염배출모형의 근사오차 ···········48

    [그림 4-13] 오염배출모형의 생산함수 ··············································50

    [그림 4-14] 오염배출모형의 투자함수 ··············································50

    [그림 4-15] 오염배출모형의 20년간 자본축적 경로 (초기자본=10) · 51

  • iv

    [그림 4-16] 오염배출모형의 20년간 오염축적 경로 (초기오염=1.2) 51

    [그림 4-17] 오염배출모형의 20년간 최적소비 경로 ·························52

    [그림 4-18] 오염배출모형의 20년간 최적소비, 자본, 오염 경로 ······52

    [그림 4-19] 탄소세모형의 최적소비 ··················································56

    [그림 4-20] 탄소세모형의 근사오차 ··················································56

    [그림 4-21] 탄소세모형의 20년간 자본축적 경로(초기자본=10) ·······57

    [그림 4-22] 탄소세모형의 20년간 에너지재화 투입(초기에너지=12) 57

    [그림 4-23] 탄소세모형의 20년간 최적소비 경로 ·····························58

    [그림 4-24] 탄소세모형의 20년간 최적소비, 자본, 에너지재화 경로 58

    [그림 4-25] 최적탄소세 모형의 최적소비 ·········································63

    [그림 4-26] 최적탄소세 모형의 최적탄소세 ·····································63

    [그림 4-27] 최적탄소세 모형의 근사오차 ·········································64

    [그림 4-28] 최적탄소세 모형의 20년간 자본축적 경로 ····················64

    [그림 4-29] 최적탄소세 모형의 20년간 에너지재화 투입 ················65

    [그림 4-30] 최적탄소세 모형의 20년간 최적소비 경로 ····················65

    [그림 4-25] 최적탄소세 모형의 20년간 최적소비, 자본, 에너지재화

    경로 ···············································································66

    [그림 4-32] 최적탄소세 모형의 20년간 탄소세 ································66

  • Ⅰ. 서론 1

    I. 서론

    무한기 혹은 유한기의 동태모형에 대한 근사추정은 오랜 기간 연구자

    들의 관심이 되어왔다. 경제학에서는 경제성장모형이나 자산가치 모형,

    혹은 균형탐색모형 등 다양한 분야에서 동태모형이 다루어졌다. 그동안

    무한기 동태경제모형의 해를 구하는 방법이 다양하게 제시되어 왔는데,

    대표적인 것으로는 벨만함수(Bellman equation)로 동태경제모델을 모형

    화하고 대수학을 이용하여 균형조건을 구하는 것이다. 일반적으로 구하

    고자 하는 제어변수에 제약조건이 있기 때문에 균형조건은 상보조건

    (complementarity condition)의 형태로 나타낸다. 하지만 특별한 경우를

    제외하고 동태경제모형의 해를 명시적으로 구할 수 없다는 단점이 있다.

    동태경제문제의 명시적 해를 구하기 위해, 경제학에서는 오랜 기간

    L-Q(Linear-Quadratic control method)가 널리 이용되었다. L-Q 방법은

    균제균형상태(steady-state)에서 비선형 동태경제모형을 테일러 확장하여

    일차 제약조건식과 이차 목적함수로 변형시키는 방법이다. L-Q 방법은

    모델의 해를 명시적으로 구할 수 있다는 장점이 있다. 한편, Judd (1996,

    1998)는 함수 근사추정 방법을 이용한 수리적 방법을 제시한 바 있다.

    이는 물리학 등에서 널리 사용되는 함수 근사법을 이용하여 음함수 형

    태로 이루어진 동태경제모형의 해를 선형 함수로 추정하는 방법이다. 컴

    퓨터의 놀라운 발전과 다양한 응용프로그램을 손쉽게 사용할 수 있게

    되면서 이러한 수리적 방법의 적용이 점점 더 확장되는 추세이다.

    본 연구에서는 Judd가 제시한 방법을 보다 확장한 콜로케이션 방법

  • 2

    (collocation method; Miranda 1996, 1998; Miranda and Feckler 2002)을

    소개하고 무한기의 동태최적화 모형에서 에너지․거시경제 변수의 최적

    해를 구해보고자 한다. 콜로케이션 방법은 함수 근사법을 이용하여 동태

    경제모형의 벨만함수를 근사추정하여 최적 해를 도출하거나 균형조건의

    기대함수 혹은 제어변수 함수를 근사추정하는 방법이다. 이전 방법과 다

    른 점은 최소자승법 대신에 콜로케이션 지점(node)이라는 임의의 점에

    서만 원함수와 근사함수가 일치되게 계수를 조정한다. 콜로케이션 방법

    은 무한기 혹은 유한기의 동태경제모형에 적용 가능하며, 상태 및 제어

    변수 뿐만 아니라 시간이 연속 혹은 이산적인 경우에 상관없이 사용할

    수 있다.

    콜로케이션 방법의 이해와 이의 동태경제모형 적용을 위해, 본 연구는

    다음과 같이 구성되어 있다. 먼저 제2장에서는 단순화된 동태경제모형과

    그 균형조건을 살펴본다. 여기서는 그동안 널리 사용됐던 L-Q 방법론도

    간략히 설명한다. 제3장에서는 콜로케이션 방법의 근간이 되는 함수 근

    사법(보간법 및 구역법, polynomial interpolation and piecewise

    polynomial splines)과 콜로케이션 방법에 대한 설명을 하였다. 콜로케이

    션 방법에 대한 설명은 MATLAB을 이용한 프로그램 과정을 병행하였

    다. 동태경제모형을 수리적으로 풀기 위해서는 비선형 방정식의 풀이 및

    수리적 미분․적분 등에 대한 이해가 필요하나, 이에 대한 자세한 설명

    은 참고문헌으로 대체한다. 제4장은 동태경제모형의 몇가지 예에 대해

    콜로케이션 방법을 적용한 프로그램과 그 결과를 설명한다. 본 연구에서

    예제로 사용된 동태경제모형은 단순한 램지(Ramsey) 경제성장 모형과

    환경오염을 변수로 한 성장모형 그리고 경제정책변수의 최적화 모형 등

    이다. 마지막으로 제5장은 본 연구의 결과 및 시사점을 살펴보았다.

  • Ⅱ. 동태최적화 모형과 균형조건 3

    II. 동태최적화 모형과 균형조건

    1. 동태최적화 모형과 벨만 함수 (Bellman equation)

    본 연구에서 다루는 동태최적화 모형은 무한기의 이산적인 시간 하에

    서 상태변수와 제어변수가 연속인 경우의 모형이다. 연속적인 시간인 경

    우나, 이산적인 상태 혹은 제어변수의 모형인 경우에도 최적화 모형이나

    균형조건의 변경을 통해 콜로케이션 방법의 응용이 가능하며 마지막 기

    가 존재하는 유한기의 모형도 이전 방법과 같이 귀납적(recursive) 계산

    을 통해 균형 함수를 구하기는 하나, 기본적인 함수 근사추정의 개념은

    콜로케이션 방법을 통해 이루어진다.

    먼저, 모형에 대한 간결한 설명을 위해 상태변수와 제어변수가 연속인

    상황에서 무한기에 걸친 보상함수를 극대화하는 경제주체의 의사결정

    문제를 살펴보도록 한다. 모형의 구조는 다음과 같다. 매 기 t에서 경제

    주체는 경제구조와 상태(s)를 관찰하고 최적 행동 x를 취하며, 이에 따라

    보상 f( s t,x t)를 받는다. 다음기의 경제 상태는 현재기의 경제 상태 s

    와 경제주체의 결정 x, 그리고 외부적인 경제충격 εt+ 1

    에 의해 다음과

    같은 마르코프 과정(Markov process)을 따라 변한다.

    s t+1=g ( s t,x t,ε t+1) (1)

    경제주체는 현재기와 할인된 앞으로의 기대보상의 합을 극대화하기

  • 4

    위해, 임의의 상태 s와 t에서 취해야 할 최적행동을 규정하는 일련의

    최적 의사결정함수의 순서 {x*}를 구한다.

    이러한 동태경제모형은 벨만(Bellman)의 최적화 원칙(principle of

    optimality)를 이용하여 모형화할 수 있다. 즉, 최적 정책은 초기의 상태

    와 의사 결정이 무엇이든 나머지 기간의 의사결정은 주어진 상태에 대

    해 최적의 정책이 된다 (Bellman 1957). 우선 현재 기에서 현재와 미래

    의 기대되는 보상의 최대치를 V t( s)를 하자. 벨만의 최적화 원칙에

    의하면 가치함수 Vt : S↦ R는 다음의 벨만 방정식을 만족해야 한다.

    V t( s)= max x∈X ( s){ f( s,x)+δE εV t+1(g( s,x,ε))} (2)

    s∈S , t= 1,2,...,T

    의사결정 문제가 무한기에 걸친 문제일 경우, 가치 함수는 시간에 영

    향을 받지 않으므로, 우리는 벨만 방정식에서 시간 하첨자를 제외하고

    벨만 방정식을 함수의 방정식 문제로 표현할 수 있다.

    상태변수와 제어변수가 연속인 경우, 문제의 해는 오일러 조건이라는

    일차 미분을 통한 균형조건으로 표시할 수 있다. 모형을 풀기 위해 우선

    보상함수 f와 상태변환 합수 g가 공간 S와 X에서 이차미분 가능한 연속

    인 함수로 가정하고 매 기간 할인율은 δ는 1보다 작은 실수로 가정한다.

    동태최적모형의 균형조건은 벨만방정식에 쿤-터커(Karush-Kuhn-Tucker)

    조건과 Envelope theorem을 적용하여 구할 수 있다. 제어변수 x가 제약

    을 받지 않는 경우, 최적 제어변수 x는 다음의 한계균형 조건을 만족한

    다.

  • Ⅱ. 동태최적화 모형과 균형조건 5

    f x( s,x)+δE ε[λ(g( s,x,ε))g x( s,x,ε)]= 0 (3)

    또한, Envelope theorem에 의해 다음의 균형조건이 도출된다.

    f s( s,x)+δE ε[λ(g( s,x,ε))g s( s,x,ε)]= λ( s) (4)

    여기서 λ( s)는 λ( s)≡V '( s)로 정의되며, f x , f s, g x, g s는

    부분 미분을 의미한다. 만약 상태 변환이 x에 의해서만 결정되는 특수한

    경우라면, g s=0이므로 위의 두 균형조건은 다음과 같이 간단히 나타

    낼 수 있다.

    f x( s,x( s))+ δE ε[ f s(g( s,x( s),ε))g x( s,x( s),ε)]= 0 (5)

    동태경제모형을 분석할 때, 연구자의 관심은 대부분 균형상태의 특성

    과 균형의 장기 추세에 있다. 모델이 잘 정의되어 있고 제약조건이 없는

    비확률(deterministic) 모델인 경우, 균형상태가 존재한다면 이는 다음의

    식들을 만족한다.

    f x( s*,x*)+ δλ*g x ( s*,x*)= 0

    λ*= f s( s*,x*)+δλ*g s( s*,x*)

    s*= g( s*,x*)

    벨만 함수나 오일러 조건에서 명시적인 해를 구할 수 없더라도 종종

  • 6

    완전한 형태의 균제균형상태(steady-state)를 구하는 것이 가능하다. 모델

    이 확률과정을 따른다면, 균제균형 대신 임의의 외생적인 충격에 대한

    기대값을 이용하여 확실성 동등 균제균형(certainty-equivalent steady

    state)을 구하게 된다.

    2. Linear-Quadratic (L-Q) Control을 이용한 동태최적화

    문제의 풀이

    동태문제의 실제 적용 시 어려운 일은 벨만 함수인 식 (2)나 균형조건

    함수인 식 (3) 또는 식 (4)에서 명시적인 함수 형태의 해를 구할 수 없기

    때문에 문제의 해를 수리적으로 근사 추정해야 한다는 점이다. 그동안

    경제학자들 사이에서 많이 쓰여졌던 근사 추정 방법은 선형의 상태변환

    함수와 이차의 보상함수를 이용한 L-Q 방법이다. 선형의 제약식과 이차

    함수 형태의 보상함수는 종종 경제학에서 접할 수 있는 문제인데, 원래

    의 문제가 L-Q 형태가 아니더라도 테일러 확장(Taylor expansion)을 이

    용하여 비선형 동태경제 문제를 L-Q 문제로 전환할 수 있다.

    우선 보상함수와 상태변환함수를 다음과 같이 정의하자.

    f( s,x)=F 0+Fss+Fxx+0.5sTF sss+ s

    TF sxx+0.5xTFxxx

    g( s,x,ε)=G 0+Gss+Gxx+ε

    여기서 F와 G는 각각 해당하는 하첨자 변수의 차원을 그 크기로 하는

    계수 및 상수의 행렬이다. 이러한 L-Q 형태의 동태 경제모형은 다음과

    같이 상태변수에 대해 선형인 최적 제어변수와 shadow price를 갖는다

  • Ⅱ. 동태최적화 모형과 균형조건 7

    는 것이 증명되었다.

    x( s)= Γ 0+Γ ss

    λ( s)=Λ 0+Λ ss

    여기서 shadow price의 계수들의 행렬인 Λ0와 Λ

    s는 비선형 벡터의

    고정점 리카티 함수(nonlinear vector fixed-point Riccati equations)이며,

    일단 shadow price를 함수 반복법을 이용하여 구하면 최적 제어변수는

    대수적 방법에 의해 직접 구할 수 있다.1)

    L-Q 방법은 최적 제어변수와 shadow price가 상태변수의 선형 함수

    라는 점 때문에 계산이 상대적으로 간단하다. 또한 모델의 해는 상태변

    수에 있는 임의의 외부 충격의 분포 모형과 상관없이 그 분포의 평균에

    만 영향을 받는다는 특징도 모델의 수행을 수월하게 한다. 하지만 L-Q

    모델은, 계산상의 많은 장점에도 불구하고, L-Q 모델을 구축하는 과정에

    서 테일러 전개가 모델에 부과되어 있는 실효 제약식을 폐기하게 되면

    근사값의 오차가 매우 커진다는 단점이 있다. 또한 테일러 전개의 특성

    상 균형 주변에서만 근사치의 정확도가 있기 때문에, 모델에 있는 임의

    충격에 의해 상태변수가 균형에서 멀리 그리고 자주 벗어날 경우에도

    근사 오차가 커진다.

    3. 동태경제모형의 상보조건 (Complementarity condition)

    1) Shadow price와 최적 제어변수의 해에 대한 구체적인 형태는 Miranda and Feckler

    (2002)를 참조

  • 8

    보통, 경제학에서 다루는 제어변수나 상태변수는 일정한 제약이 있는

    경우가 일반적이다. 제어변수에 다음과 같은 제약조건이 있는 경우를 살

    펴보자.

    a( s)≤x≤b( s) (6)

    제어변수에 제약조건이 있는 경우, 위의 식 (4)로 표현된 오일러 조건

    은 다음과 같이 변형된다.

    f x( s,x)+δE ε[λ(g( s,x,ε))g x( s,x,ε)]= μ (7)

    f s( s,x) + δE ε[λ(g( s,x,ε))g s( s,x,ε)]+ min (μ,0)a'( s)+ max (μ,0)b'( s)= λ( s)

    (8)

    여기서 x와 μ는 다음과 같은 상보조건을 만족해야 한다.

    a( s)≤x≤b( s) ,

    x i >a i ( s)⇒ μ i≥0 , (9)

    x i

  • Ⅱ. 동태최적화 모형과 균형조건 9

    못한다. 그리고 x i가 제약범위 내에 있을 때, μ i는 제약이 없을 때와

    마찬가지로 0을 만족해야 한다.

    Rutherford(1995, 1999)와 Lau et al. (2002) 등은 위의 상보조건을 일

    반화한 MCPs(Mixed Complementarity Problems 혹은 Generalized

    Complementarity Problems)를 이용하여 무한기의 동태경제모형 해법을

    선보였다. 일반화된 MCP의 정의는 다음과 같다.

    함수 f:RN→ R

    N가 주어지고 l, u∈ RN일 때, MCP는 다음과

    같은 조건을 만족하는 z, w, v∈ R N를 찾는다.

    F(z)-w+ v=0

    l≤z≤u , w≥0 , v≥0

    wT(z- l)= 0 , v

    T(u- z)= 0

    제약조건 l과 u는 -∞≤l < u≤∞이다.

    위의 MCP는 선형 및 비선형 연립방정식, 상보조건 문제 및 비선형

    프로그램 문제등에 포괄적으로 적용된다. Rutherford는 위의 MCP를 이

    용한 GAMS 프로그램인 GAMS/MCP를 개발하였다. Rutherford의

    GAMS/MCP는 두가지 solver를 사용하는데, 하나는 일반 균형 모델을

    풀기 위하여 개발된 뉴튼 알고리즘을 이용하는 것으로 MILES(a Mixed

    Inequality and nonLinear Equation Solver)라 한다. 다른 하나는 PATH

    라는 이름으로 보다 최근에 개발된 알고리즘인데, MILES에서 사용하는

    ‘backtracking line search’ 대신에 ‘path search'를 이용하는 ’global

    Newton method'를 채택하고 있다.

  • 10

    Lau et al.은 신고전파 경제성장 모형에서 상보조건 이용하여 무한기

    의 균형을 근사추정하였다. Lau et al.은 무한기의 연산모형을 두개의 부

    분 기간으로 나누어 첫 기간의 마지막 기의 투자 성장률이 경제 성장률

    과 일치한다는 제약을 추가함으로써 무한기 연산의 어려움을 해결하였

    다. Lau et al.의 결과에 의하면 비선형 프로그래밍 모형을 직접 이용하

    는 최적화 방법보다 상보조건 형태의 문제 풀이가 무한기 균형을 더 근

    접하게 추정하는 것으로 나타났다.

    본 연구에서는 Miranda and Feckler(2002)의 정의를 따라 위 식(9)의

    상보조건을 다음과 같이 표시한다.

    CP(μ( s,x),a ( s),b ( s)) (10)

    상보조건은 일반적인 근찾기(rootfinding) 문제의 해법과 다르게 표현

    되지만, 상보조건의 부등호 문제를 최소-최대 함수로 대치시켜 근찾기

    문제로 전환할 수 있다. 즉, 위의 식 (10)은 다음과 같은 근찾기 문제와

    동치이다.

    μ(x)= min ( max (μ(x),a- x ),b- x ) (11)

    따라서 상보조건의 경우에도 제약조건이 없는 동태문제를 풀 때 사용

    하는 근사방법을 동일하게 적용할 수 있다.

  • Ⅲ. 콜로케이션 방법 (Collocation Methods) 11

    III. 콜로케이션 방법 (Collocation Methods)

    1. 보간법과 함수 방정식

    앞서 설명하였듯이, 동태경제의 문제에서 우리가 구하고자 하는 해는

    일반적으로 함수 자체이고, 특수한 경우가 아닌 한 해를 이루는 함수는

    명시적으로 구할 수 없다. 그동안 경제학에서 주로 사용되어왔던 L-Q

    근사추정 방법은 계산상의 이점과 동시에 정확한 해를 구하기 어렵다는

    단점을 갖고 있기 때문에, 근래에는 물리학 등에서 주로 사용되는 함수

    근사방법 등이 대안으로 사용되고 있다.

    보통, 경제학에서 발생하는 수리적 문제는 두 가지 형태의 함수 근사

    법으로 나타나는데, 그중 하나는 보간법(interpolation)을 이용해서 푸는

    문제이고, 다른 하나는 함수 방정식(functional equation)을 이용해서 푸

    는 문제이다. 두 해법에 대해서 간단히 설명하면, 보간법의 경우 분석이

    어렵거나 불가능한 함수를 주어진 정보를 이용하여 수리적으로 다루기

    쉬운 함수로 근사 추정하는 방법이다. 바이어스트라스 정리(Weierstrass

    Theorem)에 의하면, 폐쇄공간 속에서 정의된 어떠한 연속인 실수값의

    함수도 다항식을 이용하여 임의의 정확도로 추정가능하다. 보간법은 이

    러한 바이어스트라스 정리에 기초한다. 일반적으로 n차 다항식 근사치를

    구하기 위해선 n개의 균등하게 나누어진 점을 만족하는 n-1차 다항식을

    구축하는 방법을 사용하나, 룬게 함수 (Runge's function) 등 특별한 경

    우 이러한 균등 보간점은 n을 증가시킬수록 정확도가 떨어지는 상황을

  • 12

    발생시킨다. 이러한 문제에 대한 대안으로 많이 사용되는 것이

    Chebycheb-node이며, 잭슨의 정리(Jackson's Theorem)에 의하면 함수 f

    가 연속이고 미분가능할 때, n차 Chebycheb-node 다항식에 의한 근사추

    정 오차는 n이 증가할 수록 0에 가깝게 된다는 것이 밝혀졌다.

    Chebycheb-node에 대해서는 다음 항에서 자세히 살펴보도록 하겠다.2)

    Judd(1996, 1998)는 경제학의 최적화 문제를 풀기 위해 보간법을 사용

    하여 벨만 함수를 근사추정하는 방법에 대해서 설명하고 있다. 이를 간

    단히 소개하면 다음과 같다. 먼저, n차 다항식(Chebycheb polynomial)과

    m≥n+1개의 교점을 설정한다. 벨만 함수를 V( s)라고 정의하면, 주어

    진 초기 계수값과 연구자가 선택한 m개의 교점에서 V( s)를 만족하는

    V( s)의 근사함수( ∑n

    j=1c jφ j(x))를 계산하고 벨만 함수의 극대화 혹은

    극소화 문제를 푼다. 극대화 혹은 극소화 문제에서 계산된 벨만 함수를

    이용하여 개선된 계수값을 최소자승법으로 계산하고, 계수값이 수렴할

    때까지 이 과정을 반복하게 된다. Judd(1998)는 다항식 보간법에서 발생

    할 수 있는 교점간 진동을 방지하기 위해 Schumaker splines을 제안한

    바 있다.

    함수 방정식은 Tf=0 혹은 f=Tf를 만족하는 함수 f를 찾는 방법

    이다. 여기서 T는 함수의 벡터 공간을 그 함수 공간에 투사하는 연산자

    이며, 전자는 함수 방정식 후자는 함수 고정점(functional fixed-point)이

    라 한다. 함수 방정식 방법은 벨만 함수나 오일러 함수 등 동태경제 분

    석에서 일반적으로 나타나는 형태이다. 하지만 함수 방정식 법은 미지의

    해가 무한대의 점으로 구성된 함수 자체이기 때문에 풀기가 쉽지 않다.

    2) 바이어스트라스 정리와 잭슨의 정리는 부록에 간략이 정리되어 있다. 보다 엄밀한

    증명은 수리경제학 교재나 Ljungqvist and Sargent(2000)을 참조하기 바란다.

  • Ⅲ. 콜로케이션 방법 (Collocation Methods) 13

    이를 위해서 일반적으로는 보간법의 응용으로 함수 방정식의 해를 근사

    추정하는 방법이 쓰이고 있다.

    2. Chebycheb과 Spline3)

    2.1 Chebycheb nodes와 Chebycheb polynomial basis

    앞서 밝혔듯이, [a, b] 구간에서 n차 다항식의 근사함수를 설정하는

    가장 간단한 방법은 n개의 교점을 균일하게 선택하고 이 구간들을 보간

    하는 n-1차 다항식을 설정하는 것이다. 하지만 이렇게 균등하게 교점을

    분포시키는 방법은 룬게 함수와 같이 특별한 함수 형태의 경우 다항식

    의 차수를 증가시킬수록 근사 오차가 커지는 문제를 발생시킨다. 따라서

    콜로케이션 방법에서도 Chebycheb 다항식이나 Judd(1998)가 제안했던

    것처럼 spline 다항식을 주로 사용한다.

    구간 [a, b]에서 Chebycheb-node는 다음과 같이 선택된다.

    x i=a+ b2+b-a2

    cos ( n- i+0.5n π) (12)

    Chebycheb-node는 코사인 함수에 의해 정의된 구간의 끝점에 밀집되

    고 중앙에는 산재하는 모습을 보인다. Rivlin의 정리에 따르면, n차

    Chebycheb-node를 사용한 다항식 보간법의 근사오차는

    2π log (n)+2보다 작다. 잭슨의 정리는 이를 보다 정확히 계산하였는

    3) Chebycheb와 spline에 대한 자세한 설명은 Miranda and Feckler (2002)를 참조.

  • 14

    데, 이 정리에 따르면 미지의 함수 f가 연속이며 미분가능할 때, n차

    Chebycheb node를 사용한 다항식 근사추정의 근사오차는 다음과 같다.

    ∥ f- p n∥≤6n∥ f'∥(b-a)[ log (n)π +1]

    [그림 3-1] Chebycheb 다항식의 베이시스 함수

    자료: Miranda and Fackler (2002)

    콜로케이션 방법에서 Chebycheb-node와 결합해서 쓰이는 밑함수

    (basis functions)는 주로 Chebycheb polynomial basis가 사용된다. n이

    양의 정수이고 z를 2(x-a)/(b- a)-1라고 정의할 때, 구간

  • Ⅲ. 콜로케이션 방법 (Collocation Methods) 15

    [a, b]에서 Chebycheb polynomial은 다음의 식 (13)으로 정의된다.

    T n= cos (n∙cos- 1z) (13)

    [그림 3-1]은 구간 [0, 1]에서 첫 9개의 Chebycheb 밑함수를 보여주

    고 있다. 그림에서 알 수 있듯이, Chebycheb 밑함수는 차원이 높아질수

    록 진폭이 짧은 파장의 모형을 갖는다.

    2.2. 구역 근사추정 (Piecewise Splines)

    Spline은 경제학뿐만 아니라 다른 학문 분야에서도 다양하게 활용되고

    있는 함수 추정방법이다. 일반적으로 k차 spline은 k-1차까지의 모든 도

    함수의 연속성을 보장하기 위해 k차 다항식의 결합으로 구성되어 있다.

    함수를 추정하고자 하는 구간 [a, b]를 (p+1)개의 구간으로 나누

    며, 양쪽 끝 구간을 제외한 각 구간들의 끝은 breakpoints라 하여 다항

    식의 조각들이 이 점들에서 연결된다.

    Spline의 종류는 여러 가지가 있으나 실제 응용에는 1차 혹은 선형

    (linear) spline과 3차 (cubic) spline이 주로 사용되고 있다. 구간 [a, b]

    에서 n개의 균일하게 분포된 breakpoints에 대한 선형 spline은 다음과

    같이 식 (14)로 표시된다.

    φj(x)= { 1-

    x- v jh

    if |x- v j|≤h

    0 otherwise

    (14)

  • 16

    여기서 h는 구간의 길이에 해당하며, v j는 순서대로 정렬된

    breakpoints를 나타낸다. [그림 3-2]에서 보이듯이, 선형 spline은 소위

    hat function으로 잘 알려져 있다. 1차 spline의 경우 breakpoint와 보간

    점이 동일할 경우 계산상의 편이점이 있기 때문에 실제 응용에서는 항

    상 보간점을 breakpoint로 설정한다. 하지만 1차 spline의 경우 구조 정

    의상 경제학에서 중요한 의미를 갖고 있는 도함수의 근사추정이 어렵거

    나 혹은 불가능하다는 단점이 있다.

    [그림 4-2 ] 선형 Spline의 베이시스 함수

    자료: Miranda and Fackler (2002)

    3차 spline은 선형 spline의 단점을 보완하면서 그 유용성과 편리성을

    제공해준다. 3차 spline의 함수형태는 식 (15)와 같다.

  • Ⅲ. 콜로케이션 방법 (Collocation Methods) 17

    φj(x)=

    23( 1-6q 2( 1- q)) if q=

    x- v jh

    ≤1

    43(1- q)

    3if 1≤q≤2

    0 otherwise

    (15)

    n차 근사추정을 위해서는 구간 [a, b]을 n-1개의 하위구역, 즉

    n-2개의 breakpoints를 균일하게 분포시킨다. 물론 보다 정확한 근사

    추정을 위해서 다양하게 breakpoint를 배열하는 방법을 사용할 수 있다.

    3차 spline의 각각의 밑함수는 연속인 4개 구역에서 0이 아닌 값을 갖는

    다.

    [그림 3-3] 3차 Spline의 베이시스 함수

    자료: Miranda and Fackler (2002)

  • 18

    Spline을 이용하여 함수를 근사추정하는 방법은 그 구조상 각 밑함수

    가 제한된 범위를 갖고 있기 때문에 보간행렬이 sparse matrix가 되고

    이러한 성질은 다차원 공간의 문제를 풀 때 계산상 매우 유리하다는 장

    점을 갖고 있다. 또한 각 구역에서 발생하는 교란요인이 다른 구간에 미

    치는 영향이 전 구간을 한꺼번에 근사추정하는 방법보다 작아진다.

    3. 콜로케이션 방법

    3.1 콜로케이션 방법

    콜로케이션 방법은 개념상 함수 근사법의 일반화된 방법으로, 동태경

    제학 문제에서 접하는 다양한 함수 방정식의 문제들에 적용가능하다

    (Miranda and Fackler 2002). 예를 들어, 간단한 형태의 함수 방정식 문

    제는 다음의 식을 만족하는 함수 f를 찾는 것이다.

    G(x, f(x))= 0 for x∈[a, b]

    여기서 G는 연구자가 이미 알고 있는 함수이다. 콜로케이션 방법은

    미지의 함수 f를 알고 있는 n개 밑함수(basis functions)의 선형결합으로

    표현한다.

    f(x)= ∑n

    j= 1c jφ j(x)

  • Ⅲ. 콜로케이션 방법 (Collocation Methods) 19

    따라서 콜로케이션 방법은 미리 지정된 n개의 콜로케이션 지점

    (collocation nodes) 에서 다음의 비선형 연립방정식을 만족하는 n개의

    계수 를 구하는 것이 된다.

    G(x i, ∑n

    j= 1c jφ j(x i))= 0 for i= 1,2,...,n

    콜로케이션 방법은 무한차원의 함수 방정식을 간단한 유한 차원의 근

    찾기 문제로 대체시킨다. 앞에서 설명한 동태 최적화 형태의 경우, 미지

    의 함수는 벨만의 가치함수 자체가 되며, 함수 방정식

    max (∙)- ∑n

    j=1c jφ j( s)= 0를 만족하는 계수 벡터 c를 구하는 것

    이 문제이다.4) n개의 콜로케이션 지점과 n개의 콜로케이션 밑함수

    (collocation basis)가 결정되면 n개의 계수값의 계산은 다음의 식 (16)과

    같이 간단한 선형 연립방정식이 된다.

    Φc= v(c) (16)

    여기서 Φ는 n×n 크기의 콜로케이션 행렬(collocation matrix)이라 하

    며, 이 행렬의 i, j 번째 원소는 Φij= φ j( s i)로 정의된다. v( s)는

    Rn에서 R

    n으로 투사되는 콜로케이션 함수(collocation function)로 i

    4) 상보조건으로 동태 경제문제의 해를 표시했을 경우, 미지의 함수는 제어함수이거나

    혹은 기대함수가 된다. 하지만 기본적인 응용방법은 Bellman 함수를 collocation 함

    수로 표시하거나 상보조건을 collocation 함수로 표시하거나 같은 방식으로 문제를

    풀게 된다. 이에 대한 설명은 다음 절에서 다루어지고 있다.

  • 20

    번째 원소는 다음의 식 (17)과 같다.

    v i(c)= max x∈X ( s i){ f( s i,x)+δE ε ∑n

    j=1c jφ j(g( s i,x,ε))}

    (17

    )

    (17)

    만약 상태변환 함수가 확률적 마르코프 과정을 따른다면, 콜로케이션

    함수에 들어가 있는 연속의 임의 변수 ε은 Gauss quadrature와 같이 적

    절한 구적법으로 대치하여 계산을 수행한다.

    콜로케이션 함수의 계수는 일반적으로 비선형 방정식 풀이 방법을 이

    용하여 구할 수 있다. 즉, 위의 식 (16)을 다음과 같이 고정점 문제

    c=Φ - 1v(c)로 바꾸면, 다음과 같이 함수 반복법을 이용하거나

    c← Φ - 1v(c) (18)

    혹은, 뉴튼 방법을 이용하여

    c← c-[Φ- v '(c)] - 1[Φc- v(c)] (19)

    콜로케이션 함수를 만족하는 계수값을 구할 수 있다.

    콜로케이션 방법에서 함수의 근사치 f( x)는 방법의 정의상 연구자

    가 설정한 n개의 콜로케이션 지점에서만 원래의 함수를 만족한다. 우리

    가 추정하고자 하는 구간의 나머지 부분에서는 근사 오차가 발생하기

    마련인데, 이를 수식으로 나타내면 다음 식 (20)과 같다.

  • Ⅲ. 콜로케이션 방법 (Collocation Methods) 21

    R c(s)=max x∈X(s){f(s,x)+δE ε∑n

    j=1c jφ j(g(s,x,ε))}-∑

    n

    j=1c jφ j(s)

    (

    20)

    (20)

    위의 근사오차는 콜로케이션 방법을 통해 구한 함수 추정의 정확성을

    가늠할 수 있는 판단 근거로 사용된다. 만약 근사오차가 연구자의 허용

    범위보다 크면 더 많은 콜로케이션 지점, 혹은 다른 밑함수를 사용하거

    나, 또는 근사 범위를 조정함으로써 콜로케이션 방법을 시도한다.

    콜로케이션 방법은 상태변수나 제어변수, 그리고 시간변수가 이산적이

    거나 혹은 연속적인 경우 모두 적용 가능하며, 마지막 기간이 정해진 경

    우 혹은 무한대의 문제에도 사용할 수 있다. 다음절에서는 연속인 상태

    변수와 연속인 제어변수 그리고 이산적인 무한기의 동태최적화 문제의

    프로그래밍 작업에 대한 설명을 위주로 한다.

    3.2 MATLAB Program을 이용한 콜로케이션 방법의 수행

    콜로케이션 방법의 수행은 벡터 연산이 가능한 어느 프로그램에서도

    가능하지만, 우리는 MATLAB 프로그램(MATLAB 7.1, Release 14,

    Service Pack 3)의 명령어를 이용하여 콜로케이션 방법의 주요 과정을

    설명하고자 한다. 콜로케이션 방법에 필요한 주요 구조 명령어들은

    Miranda and Fackler (2002)에서 구할 수 있다5).

    우선 이해를 돕기 위하여, 하나의 상태변수와 하나의 제어변수인 동태

    경제모형을 설정하였다. 콜로케이션 방법을 수행하는 첫 단계는 가치함

    수(value function)를 나타낼 콜로케이션 밑함수와 벨만 함수의 관계가

    성립해야 하는 콜로케이션 지점을 지정하는 일이다. 이 과정에서는 세

    5) 저자의 홈페이지에서 내려받기가 가능하며 CompEcon Toolbox로 정리되어 있다.

  • 22

    가지의 주요 루틴이 사용되는데, 이는 다음과 같다.

    fspace = fundefn('basistype', n, smin, smax);s = funnode(fspace);Phi = funbas(fspace);

    첫 번째 명령어 fundefn에 의해서 나온 결과 fspace는 밑함수를 정의

    하는 구조 변수가 된며, s는 n×1의 표준 collocation node 벡터이다.

    Phi는 밑함수와 연관된 n×n 크기의 행렬이다.

    두 번째 단계는 사실상 콜로케이션 방법을 수행하는데 가장 중요한

    과정이다. 이 과정에서는 연구자가 해결하고자 하는 문제에 필요한 범

    위, 보상함수, 그리고 상태변환 함수를 입력한 외부 m-file이 필요하다.

    외부 m-file이 작성되면, 이를 이용하여 콜로케이션 함수의 함수값과 이

    의 도함수 값, 그리고 이때 최적 제어변수의 값을 계산하는 일련의 과정

    이 특정의 루틴을 통해 이루어진다. 이러한 루틴은 벨만 함수 콜로케이

    션은 'vmax'를 통해, 상보조건 콜로케이션의 경우 ‘equisolve’를 통해 수

    행된다.6)

    [v, x, vjac] = vmax(s, c)[f, x, h] = equisolve(s, x, c)

    여기서, s, x, c는 입력정보로 사용되는 각각 n×1 크기의 콜로케이션

    지점, 그리고 제어변수와 계수의 초기값으로 이루어진 벡터들이며, v, x,

    vjac는 결과로 출력되는 n×1의 콜로케이션 함수의 함수값, n×1의 최적

    6) 'vmax'와 ’equisolve'는 각각 해당 절에 설명을 보충하였다. 자세한 내용은 Miranda

    and Fackler (2002)를 참조하기 바란다.

  • Ⅲ. 콜로케이션 방법 (Collocation Methods) 23

    제어변수 값, 그리고 n×n의 도함수 값에 대한 벡터 및 행렬이다.

    ‘equisolve'의 경우 n×1의 균형함수 f, n×1의 최적 제어변수, 그리고

    n×1의 기대함수 값을 결과로 출력한다.

    콜로케이션 지점 ‘s’와 콜로케이션 행렬 ‘Phi’, 그리고 콜로케이션 함수

    루틴인 ‘vmax’ 혹은 ‘equisolve'가 마련되면, 함수 반복법 혹은 뉴튼 방

    법을 통해 주어진 계수의 초기값 c 0에서부터 시작하여 균형의 해 c*

    를 찾는다. 식 (18)에 있는 함수 반복법의 MATLAB 프로그래밍은 다음

    과 같다.

    for it = 1:maxit cold = c; [v, x] = vmax(s, c); c = Phi\v; if norm(c - cold) < tol, break, end;end

    식(19)의 뉴튼 방법은 다음과 같이 입력할 수 있다.

    for it = 1:maxit cold = c; [v, x, vjac] = vmax(s, c); c = c - [Phi - vjac]\[Phi*c - v]; if norm(c - cold) < tol, break, end;end

    여기서 tol과 maxit은 연구자가 미리 설정한 수렴 허용오차와 최대 반복

    횟수이다. 상보조건을 이용할 경우 ‘vmax’는 ‘equisolve’로 대체되며, 계

  • 24

    수값 c는 c = Phi\h로 갱신된다.

    한편, 함수 반복법이나 뉴튼 방법을 통하여 콜로케이션 함수의 해를

    구한 후, 함수 근사추정이 연구에 적절한 수준으로 이루어졌는지를 판단

    하기 위해 근사오차를 이용한 테스트를 거치게 된다. 근사오차는 식

    (20)에 정의되어 있으며, 실제 프로그램 상에서는 추정 구간을 세밀하게

    나눈 후 vmax 혹은 equisolve와 funeval을 이용하여 계산한다. 예를 들

    어 벨만 콜로케이션의 경우 다음과 같이 입력함으로써 근사오차를 계산

    하고 그래프로 나타낼 수 있다.

    nplot = 500;splot = nodeunif(nplot, smin, smax);resid = vmax(splot, c) - funeval(c, fspace, splot);plot(splot, resid)

    여기서, nodeunif는 일정구간(smin과 smax)에서 균일하게 분포된 nplot

    개의 점을 추출하는 루틴이며, vmax는 콜로케이션 지점이 아닌 splot에

    서 계산이 수행된다.

    이하 3.3과 3.4에서는 벨만함수와 상보조건 각각의 경우 vmax와

    equisolve를 어떻게 프로그램하는지에 대해서 설명하였다.

    3.3 벨만 함수 콜로케이션 (Bellman Equation Collocation)

    우리는 이미 이전 장에서 사회조정자의 동태최적화 문제에 대해서 살

    펴보았다. 이산적인 시간, 마르코프 과정을 따르는 연속인 상태변수의

    문제는 다음과 같은 구조를 갖고 있다. 매 기간 t에서, 경제주체는 경제

    구조의 상태 s t를 관찰하고 자신이 갖고 있는 모든 정보를 바탕으로

  • Ⅲ. 콜로케이션 방법 (Collocation Methods) 25

    합리적인 선택 x t를 하며 이에 대한 보상으로 f( s t, x t)를 받는다.

    여기서 우리는 경제주체가 이미 다음 식으로 표현된 상태변수의

    Markov 변환 규칙을 알고 있다고 가정한다.

    s t+1=g ( s t, x t, ε t+ 1)

    연속인 마르코프 변환과정은 확률변환과정을 따른다면, 외생의 임의충

    격 εt는 시간에 대해 독립적이며 동일한 분포를 갖고, 또한 이전의 상

    태 및 제어변수의 값에 대해 독립적이라 가정한다.

    이러한 동태최적화 문제는 식 (2)와 같이 벨만 함수로 표시할 수 있

    다.

    V( s)= max x∈X( s){ f( s, x)+δE εV(g( s, x, ε))}, s∈S

    동태 최적화의 문제가 무한기에 걸친 문제일 경우, 균형상태에서 가치

    함수 V( s)는 시간에 영향을 받지 않으므로 위의 Bellman 함수는 시간

    하첨자가 제외되어 있다. 따라서 무한기의 동태 최적화 문제는 미지의

    해가 유클리드 공간의 부분에서 정의된 함수 V( s)인 함수 방정식의 문

    제로 표현된다.

    벨만함수 콜로케이션의 경우 근사추정을 해야 하는 함수는 벨만 함수

    자체이다. 벨만함수 콜로케이션 방법은 벨만 함수를 이미 알고 있는 콜

    로케이션 밑함수의 연립방정식으로 대체하여 고정점 문제(fixed-point

    problem) 혹은 근찾기 문제(rootfinding problem)의 형태로 바꾸고, 이를

  • 26

    함수 반복법 (function iteration) 혹은 뉴튼 방법 (Newton's method)를

    이용하여 푸는 과정을 거친다. 작업 순서는 다음과 같다.

    가. 먼저 벨만 함수를 이미 알고 있는 밑함수의 연립방정식으로 표현

    한다.

    V( s)≈ ∑n

    j=1c jφ j( s)

    나. 연립방정식을 벨만 함수 방정식에 대입하고 이미 선정한 n개의 콜

    로케이션 지점에서 벨만 함수 방정식을 만족하는 n개의 계수 c j를 구한

    다.

    다. 연립방정식의 풀이를 통하여 얻어진 계수값을 이용하여 근사함수

    의 추정오차를 계산하고 결과의 채택 유무를 판단한다.

    라. 추정된 근사 함수를 이용하여 다양한 시나리오 상황에서 경제 현

    상을 분석한다.

    이전 절에서 설명하였듯이, 벨만함수 콜로케이션을 수행하는데 가장

    핵심적인 부분은 가치함수와 그의 도함수 값을 계산하는 vmax를 프로

    그래밍 하는 일이다. 벨만함수의 vmax는 다음과 같이 입력된다.

    function [v, x, vjac] = vmax(s, x, c)[xl, xu] = bfunc(s);for it = 1:maxit [f, fx, fxx] = ffunc(s, x); Ev = 0; Evx = 0; Evxx = 0; for k = 1:K [g, gx, gxx] = gfunc(s, x, e(k));

  • Ⅲ. 콜로케이션 방법 (Collocation Methods) 27

    vn = funeval(c, fspace, g); vnder1 = funeval(c, fspace, g, 1); vnder2 = funeval(c, fspace, g, 2); Ev = Ev + w(k)*vn; Evx = Evx + w(k)*vnder1.*gx; Evxx = Evxx + w(k)*(vnder1.*gxx + vnder2.*gx.^2); end v = f + delta*Ev; delx = -(fx + delta*Evx)./(fxx + delta*Evxx); delx = min(max(delx, xl-x), xu-x); x = x + delx; if norm(delx) < tol, break, end;endvjac = 0;for k = 1:K g = gfunc(s, x, e(k)); vjac = vjac + delta*w(k)*funbas(fspace, g);end

    벨만 함수의 vmax를 입력할 때, bfunc, ffunc, gfunc는 각각 연구자가

    외부에서 입력한 범위, 보상함수, 상태변환 함수와 연관된 루틴이며, 첫

    번째 반복명령 구간의 내부 반복구간은 다음기의 상태변수 값을 계산하

    는 과정이고, 현재기와 다음기의 상태변수 값을 이용하여 첫 번째 반복

    명령 구간은 균형 제어변수 값을 뉴튼 방법을 통해 계산하는 과정이다.

    여기서 e(k)와 w(k)는 각각 k번째 외부 충격과 그의 확률값이다.

    3.4 상보조건 콜로케이션 (Complementarity Condition Collocation)

    동태 최적화 문제는 동태 균형 모형과 밀접한 관련이 있다. 동태 최적

    화 문제의 해는 일반적으로 벨만 함수의 일차 미분인 기간간 균형조건

  • 28

    과 동일하다. 역으로, 동태 균형모형을 적분함으로써 동태 최적화 문제

    로 표현할 수 있다. 이전 장에서 설명하였듯이, 동태경제 모형의 해는

    다음과 같은 상보조건 및 상태변환 함수로 표현할 수 있다.

    CP( f( s t,x t,E th( s t+ 1,x t+ 1)),a ( s t),b ( s t))

    s t+1=g ( s t,x t,ε t+ 1)

    상보조건을 이용한 콜로케이션 방법은 제어변수 x를 근사추정하거나

    기대함수 자체를 근사추정할 수 있다. 어느 쪽을 먼저 근사추정하든, 나

    머지 함수는 근사추정된 함수로부터 유도될 수 있다. 제어변수를 근사추

    정할 경우, 먼저 제어변수 함수를 콜로케이션 지점과 밑함수의 선형결합

    으로 표시한다.

    x( s)≈ ∑n

    j= 1c jφ j( s)

    기대함수를 먼저 근사추정할 경우, 기대함수는 다음과 같이 콜로케이

    션 함수로 표시된다.

    h( s,x( s))≈ ∑n

    j= 1c jφ j( s)

    제어변수 함수를 근사추정하는 것이 직관적으로 쉬워 보이지만, 간혹

    원래의 제어변수가 제약조건에 의해 꺾어지거나 불연속이 될 때는 기대

  • Ⅲ. 콜로케이션 방법 (Collocation Methods) 29

    함수를 근사추정하는 것이 콜로케이션 방법을 수행하기에 쉽다.

    벨만함수 콜로케이션의 경우와 마찬가지로, 상보조건을 이용한 콜로케

    이션 방법의 경우에도 균형값을 계산하는 equisolve의 프로그램 과정이

    콜로케이션 방법을 수행하는 가장 중요한 단계이다. 상보조건의

    equisolve는 다음과 같이 입력된다.

    function [f, x, h] = equisolve(s, x, c)for it = 1:maxit xold = x; [f, fx] = equifunc(s, x, c); deltax = -fx\f; x = x + deltax; if norm(deltax) < tol, break, end;endh = hfunc(s, x);

    여기서, equifunc는 균형조건함수의 값과 도함수 값을 계산하는 하위 루

    틴이며, hfunc는 임의의 상태변수 값과 제어변수 값에서 기대함수 값을

    계산한다.

    균형조건함수의 값과 그 도함수는 다음과 같이 계산된다.

    function [f, fx] = equifunc(s, x, c)eh = 0;ehder = 0;for k = 1:length(w) [g, gx] = gfunc(s, x, e(k)); eh = eh + w(k)*funeval(c, fspace, g); ehder = ehder + w(k)*funeval(c, fspace, g, 1).*gx;end

  • 30

    [f, fx, feh] = ffunc(s, x, eh);fx = fx + feh.*ehder;

    ffunc와 gfunc는 연구자가 제공하는 외부 루틴으로, 각각 임의의 s와 x,

    eh, 그리고 충격 e에서 주어진 계수 c를 이용하여 함수 f와 g의 값과 그

    들의 도함수 값을 계산한다.

  • Ⅳ. 동태경제모형과 경제정책 변수의 최적화 31

    IV. 동태경제모형과 경제정책 변수의 최적화

    1. 콜로케이션 방법을 이용한 경제성장모형의 풀이

    동태 경제성장 모형을 설명하기 위해 본 연구는 많은 경제학 교과서

    에서 이미 다루어진 램지(Ramsey) 모델의 기본적인 분석에서부터 시작

    한다. 다른 많은 동태 최적화 모델이 그렇듯이, 이후 다루게 될 에너

    지 거시경제 정책변수의 최적화를 위한 모델은 램지 모델의 확장으로

    다루어진다.

    모델의 구조는 다음과 같다. 먼저, 외부 거래가 없는 폐쇄된 경제구조

    하에서 무한기를 사는 대표 소비자는 다음과 같이 무한기에 걸친 효용

    을 극대화한다.

    U= ∑∞

    t=0(11+ρ )

    t

    u(C t) (21)

    여기서 ρ는 시간선호율을 의미하고 C t는 t기의 총소비이다. 순간효용

    함수 u(C t)는 logC t로 가정하였다.

    경제 내에서 생산되는 재화는 한가지이며 재화생산에 필요한 투입재

    는 노동과 자본이다. 생산된 재화는 그 기에 소비되거나 다음기의 생산

    을 위해 투자된다.

  • 32

    C t+ I t=F (K t,L t) (22)

    재화 생산함수는 생산요소에 대해 양의 감소하는 한계생산의 성질과

    Inada conditions을 만족하는 함수이다.

    t+1기의 자본스톡은 감가상각된 현재기의 자본스톡과 투자의 합이다.

    K t+1= (1-δ)K t+ I t, I t≥0 (23)

    여기서 δ는 감가상각률이다. 시장은 완전경쟁적이고 세금은 없는 것으로

    가정한다. 경제주체는 모든 가용 정보에 바탕을 둔 합리적 기대를 한다.

    인구증가는 매년 일정한 증가율을 갖는 것으로 가정하였다.

    L t+1= (1+γ)L t (24)

    앞 절에서 설명한 바와 같이 위의 무한기에 걸친 효용극대화 문제는

    다음과 같은 벨만 함수로 표시할 수 있다.

    V t(s)=max c∈C(K){U(C t)+( 11+ρ )E εV t+1(g(K t,L t,C t))} (25)

    여기서 상태변환함수는 시장청산조건으로부터 다음과 같이 유도된다.

    K t+1≡g(K t,C t)=(1-δ)K t+F(K t,L t)-C t , C t≥0 (26)

  • Ⅳ. 동태경제모형과 경제정책 변수의 최적화 33

    벨만 함수로 표현된 위의 문제는 시간선호율이 1보다 크고 보상함수

    (여기서는 효용함수로 나타남)가 유계(bounded)일 때 Contraction

    Mapping Theorem에 의해 함수로 표시되는 유일한 해를 갖는다. 하지만

    특별한 효용함수와 생산함수의 경우를 제외하고는 명시적으로 모델의

    해를 구할 수 없다.

    위의 경제성장모형은 벨만함수의 일차조건을 이용하여 상보조건 콜로

    케이션을 적용할 수 있다. 위의 예에서 사용한 간단한 경제성장모형의

    상보조건은 다음과 같다. 먼저, 경쟁 균형의 상태에서 기업은 가계로부

    터 자본을 빌리고 자본의 한계 생산만큼 지불한다. 가계는 일련의 예산

    제약 하에서 효용을 극대화한다. 이러한 경쟁적 시장 균형 상태는 사회

    조정자의 가치함수 극대화와 동일한 해를 갖게 되는데, 이는 위의 식

    (25)에 있는 벨만 함수의 일차 미분으로부터 다음과 같이 도출할 수 있

    다.

    u'(C t)= ( 11+ρ )E t{u'(C t+1)[ f'( K t+ 1)+1-δ]}

    (27)

    효용함수가 시간간 대체탄력성이 일정한 CES 함수 형태이고 경제주체가

    완전 예측을 한다면, 위의 균형조건은 균형에서 소비의 증가 속도가 균

    형 경제 성장과 일치한다는 것을 의미한다.

    상보조건을 이용한 collocation method의 적용은 다음과 같다. 우선

    프로그램 작업에 필요한 식은 균형조건인 식 (27)과 상태변환에 대한 정

    의인 식 (23), (24)이다. 다음의 프로그램 수행은 Miranda와 Fackler가 구

    축한 MATLAB program toolbox인 CompEcon을 이용하였다. 상보조건

    콜로케이션을 풀기 위해 합리적기대모형의 해법인 ‘remsolve'를 사용하

  • 34

    였다. 먼저, 제어변수의 구간, 균형함수 및 도함수값, 그리고 기대함수의

    계산을 수행하는 외부 모델 파일을 다음과 같이 작성한다.

    function [out1, out2, out3] = func(flag, ss, xx, eh, e, rho, delta, alpha, gamma, theta);

    k = ss(:,1);L = ss(:,2);C = xx(:,1); nn = length(k); switch flagcase 'b' fK = k.^(alpha).*L.^(1-alpha); out1 = zeros(nn,1); out2 = fK;case 'f' du = C.^(-theta); out1 = du - rho*eh; out2 = (-theta)*C.^(-theta-1); out3 = -rho*ones(nn,1); case 'g' fK = k.^(alpha).*L.^(1-alpha); Inv = fK - C; out1(:,1) = (1-delta)*k + Inv; out1(:,2) = L*(1+gamma); out2(:,1) = -ones(nn,1); out2(:,2) = zeros(nn,1);case 'h' du = (C).^(-theta); dfK = alpha*k.^(alpha -1).*L.^(1-alpha);

  • Ⅳ. 동태경제모형과 경제정책 변수의 최적화 35

    Eh = du.*((1-delta) + dfK); out1 = Eh; out2 = -theta*(C).^(-theta-1).*((1-delta) + dfK); out3(:,1) = alpha*(alpha-1)*du.*k.^(alpha-2).*L.^(1-alpha); out3(:,2) = alpha*(1-alpha)*du.*k.^(alpha-1).*L.^(-alpha);end

    여기서 ‘flag'는 MATLAB의 내부명령어로서 프로그램에서 설정한 경우

    (case)에 따라 그에 해당하는 결과를 내보낸다. 첫 번째 ’case b'는 제어

    변수의 상․하 구간을 지정해주는 과정이고, 두 번째 ‘case f'는 균형조

    건의 함수값과 제어변수 및 기대함수에 대한 균형조건의 일차 미분값을

    계산한다. 보상함수인 효용함수는 소비의 로그함수로 가정하였다. 세 번

    째 ’case g'는 상태변환함수들과 제어변수에 대한 상태변환함수의 미분

    값이다. 생산함수는 콥-더글라스 함수로 정의되었고, 자본은 감가상각된

    현재기의 자본에 신규투자의 합만큼 축적되며, 노동은 일정한 비율로 증

    가한다. 네 번째 'case h'는 균형조건에 있는 기대함수의 정의이다. 프로

    그램은 기대함수 값, 기대함수의 제어변수에 대한 미분값, 그리고 기대

    함수의 상태변수에 대한 미분값을 결과로 출력한다.

    두 번째 과정으로 모델에 필요한 파라메터와 외부충격에 대한 정의를

    한다. 두 번째 과정부터는 본 프로그램에 입력하게 되는데, 여기서 정의

    된 파라메터 값과 외부충격은 다음에 설명하는 구조명령어에 의해 외부

    파일의 모델구조와 함께 모델을 풀게 된다.

    alpha = 0.36; delta = 0.07; rho = 0.95; gamma = 0.01;

  • 36

    theta = 1;

    여기서 rho는 시간선호율을 반영한 할인요소이다( ρ= 1/(1+ρ)).

    세 번째, MATLAB 구조명령어 'model'을 이용하여 모델을 구성한다.

    ‘remsolve에서 필요한 모델구조는 외부 모델파일, 할인율, 임의충격에 대

    한 구적법에 필요한 확률과 확률값, 그리고 기타 모델의 파라메터에 대

    한 정의이다.

    model.func = 'func';model.params = { rho alpha delta gamma theta };

    여기서는 분석의 편의상 임의의 외부충격이 없는 상황을 프로그램하였

    다.

    네 번째, 콜로케이션 방법에 사용할 밑함수와 보간점을 결정한다.

    n = [10 10];smin = [5 1];smax = [10 5];fspace = fundefn('spli', n, smin, smax, []);scoord = funnode(fspace);

    여기서는 각 상태변수에 대해 spline 보간함수와 10개의 보간점을 사용

    하였다. 'scoord'는 10×2 크기의 보간점을 정의하는 cell이다.

    다섯 번째, 연구자가 임의로 설정한 제어변수의 초기값을 사용하여

    'remsolve'를 수행한다.

  • Ⅳ. 동태경제모형과 경제정책 변수의 최적화 37

    ns = size(snodes, 1);xinit = 5*ones(ns, 1);[c, s, x, h, f, resid] = remsolve(model, fspace, scoord, xinit);

    'remsolve'는 연구자가 지정한 모델구조(model), 근사공간(fsapce,

    scoord), 그리고 초기값(xinit)을 이용하여 기대함수에 대한 근사함수의

    계수값(c), 계산을 수행한 상태변수 공간(s), 그리고 상태 공간에서 균형

    제어변수 값(x), 기대함수의 값(h), 균형함수의 값(f)과 근사오차(resid)를

    결과로 출력한다.

    위의 프로그램을 수행한 결과는 다음과 같다. [그림 4-1]는 동태경제모

    형에서의 최적소비가 노동과 자본에 따라 어떻게 결정되는가를 보여준

    다. 모형에서 예상할 수 있는 것처럼, 노동과 자본이 증가함에 따라 최

    적소비도 단조증가하며 그 증가율은 점차 감소한다. [그림 4-2]는 기대함

    수의 콜로케이션 근사함수의 근사오차를 표시한다. 본 예제에서는 각 보

    간점 사이에 10개의 균등 지점을 설정하고 각 지점에서 원래의 기대함

    수 값과 근사추정된 기대함수 값의 차이를 계산하였다. 그림에서 볼 수

    있듯이, 노동과 자본의 크기가 작을 수록 근사오차가 약간 커지는 경향

    이 있으나, 그 크기는 프로그램의 결과를 수용하는데 문제가 없는 것으

    로 판단된다. [그림 4-3]과 [그림 4-4]는 ‘remsolve'의 출력결과인 기대변

    수와 한계차익을 노동과 자본을 축으로 하는 3차원 공간에 표시한 것이

    다.

  • 38

    [그림 4-1] 경제성장모형의 최적소비

    [그림 4-2] 경제성장모형의 근사오차

  • Ⅳ. 동태경제모형과 경제정책 변수의 최적화 39

    [그림 4-3] 경제성장모형의 기대함수

    [그림 4-4] 경제성장모형의 균형함수

  • 40

    근사함수 계수값의 수렴치, 근사 오차의 크기, 그리고 추정결과와 결

    과에 대한 이론적 설명에 문제가 없을 경우, 사후분석(postoptimality

    analysis)의 과정으로 넘어간다. 먼저, 추정이 수행된 노동과 자본의 공

    간에서 생산곡선을 [그림 4-5]에 시각적으로 표현했다. [그림 4-5]의 생산

    과 [그림4-1]의 최적소비의 차이가 [그림 4-6]에 있는 노동과 자본 각 상

    태에서 최적투자가 된다.

    [그림 4-7]은 초기 자본과 노동이 각각 5의 크기일 때 최적소비가 이

    후 20년에 걸쳐 어떤 모습을 보이는지를 분석한 그림이다. Miranda and

    Fackler의 CompEcon에는 ‘remsolve'의 결과를 이용하여 상태변수 및 최

    적제어변수의 동태흐름을 시뮬레이션하는 'remsimul'을 포함하고 있다.

    동태모형이 마르코프 과정에 의해 변하는 상태변수를 포함하고 있을 경

    우, 'remsimul'은 연구자가 지정한 npath개의 Monte Carlo 시뮬레이션

    을 수행하고, 이의 기대치를 계산함으로써 확률적 변환과정을 따르는 동

    태모형의 최적변수 흐름을 전망한다. 이는 다음과 같이 간단한 명령어로

    수행가능하다.

    nyrs = 20; npath = 1000; sinit = [5*ones(npath,1) 5*ones(npath,1)]; [spath, xpath] = remsimul(model, sinit, nyrs, s, x);

    여기서, s와 x는 ‘remsolve'의 결과를 이용한다. 본 예제는 확률적 변환

    과정이 포함되지 않으므로 모든 시뮬레이션 결과가 같게 된다. 시뮬레이

    션의 결과, 대략 12년 이후 최적 소비의 증가 속도가 일정한 것으로 판

    단된다. 즉, 일정한 성장률 하의 균제균형상태에 도달한다.

  • Ⅳ. 동태경제모형과 경제정책 변수의 최적화 41

    [그림4-5] 경제성장모형의 생산함수

    [그림 4-6] 경제성장모형의 투자함수

  • 42

    0 2 4 6 8 10 12 14 16 18 204

    6

    8

    10

    12

    14

    16

    18Expected State Path

    Year

    Cap

    ital

    [그림4-7] 경제성장모형의 20년간 자본축적 경로 (초기자본=5)

    0 2 4 6 8 10 12 14 16 18 203

    3.5

    4

    4.5

    5

    5.5

    6

    6.5

    7

    7.5

    8Expected Response Path

    Year

    Con

    sum

    ptio

    n

    [그림4-8] 경제성장모형의 20년간 최적소비경로

  • Ⅳ. 동태경제모형과 경제정책 변수의 최적화 43

    2. 오염배출 조정 모형

    2.1 오염배출과 소비의 동태 최적화

    다음은 위의 기본모델에서 아밍톤 에너지 재화를 사용함으로써 오염

    이 발생하고, 오염이 효용을 떨어뜨리는 경우를 살펴 본다.

    첫 번째로, 생산에 필요한 투입요소가 자본과 에너지 재화, 두 가지인

    경우를 고려해 보자. 경제의 생산함수는 자본과 에너지 재화로 구성된

    콥-더글라스 함수로 설정하였다7).

    Y t= f (k t,XA t)= kαt XA

    (1-α)t

    여기서 자본은 편의상 노동 단위당 자본으로 가정한다. 따라서 자본축적

    방정식인 식 (23)은 다음과 같이 바꿀 수 있다.

    k t+ 1≡g(k t,C t)= (1-δ)k t+ f (k t,A t)-C t

    (28)

    아밍톤 에너지 재화는 고정된 증가율만큼 매년 증가한다고 가정한다.

    XA t+1= (1+γ)XA t (29)

    7) 에너지 재화와 다른 생산요소는 보통 대체관계가 0인 것으로 밝혀졌다. 하지만 여

    기서는 분석의 연속성을 고려하여 이전 모델에 사용한 콥-더글라스 함수에 에너지

    재화를 추가하였다.

  • 44

    재화 생산에 사용된 아밍톤 에너지 재화는 부수적으로 오염물질을 배

    출한다. 환경오염 수준은 자연 정화되지 못한 이전의 환경오염과 새로이

    배출되는 오염물질의 합으로 결정된다.

    P t+1=Pηt+ ζXA t (30)

    여기서 η는 자연 오염정화율이고 는 에너지 재화의 오염배출계수이다.

    대표 소비자는 재화 소비로부터 양의 효용을 얻고, 환경오염 수준에

    의해 음의 효용이 발생한다. 따라서 위에서 가정된 생산함수와 자본, 에

    너지 재화 및 환경오염의 상태변환함수가 주어진 상태에서, 대표 소비자

    는 다음과 같은 무한기에 걸친 효용 극대화의 문제를 푼다.

    Max c t∈C( 11+ρ )t

    U(C t,P t) (31)

    대표 소비자의 문제를 벨만 함수로 표현한 후, 소비에 대해 미분하여 일

    차 균형조건을 구하면 다음과 같다.

    u'(C t,P t)=( 11+ρ )E t{u'(C t+1,P t+1)[f'(K t+1,XA t+1)+1-δ]} (32)

    오염배출 모형의 균형조건은 기본모형의 균형조건과 같다. 다만 소비자

    의 효용함수에 환경오염이라는 상태변수가 추가된다.