Behavior SIM#

This is the documentation of the behavior module of the SIM model from Godley & Lavoie (2006, Chapter 3), detailing the equations of the model.

Initialization#

BehaviorGL06SIM.initialize()[source]

Initialize the behavior of the Godley-Lavoie 2006 SIM model.

Within the book the initialization is generally to set all non-scenario variables to zero. Accordingly

Equations

\begin{align} C_d(0) &= C_s(0) = 0 \\ G_d(0) &= G_s(0) = 0 \\ T_s(0) &= T_d(0) = 0 \\ N_s(0) &= N_d(0) = 0 \\ YD(0) &= 0 \\ W(0) &= 0 \\ H_s(0) &= 0 \\ H_h(0) &= 0 \end{align}

Dependency

Sets

  • ConsumptionDemand

  • ConsumptionSupply

  • GovernmentDemand

  • GovernmentSupply

  • TaxSupply

  • TaxDemand

  • LabourSupply

  • LabourDemand

  • DisposableIncome

  • WageRate

  • MoneySupply

  • HouseholdMoneyStock

Main Simulation Loop#

BehaviorGL06SIM.government_supply(t: int, scenario: dict, params: dict | None = None, **kwargs)[source]

In the model it is assumed that the supply will adjust to the demand, that is, whatever is demanded can and will be produced. Equation (3.2) in the book.

Parameters:
  • t (torch.tensor) – Current time step

  • scenario (dict) – Scenario dictionary

  • params (dict) – Parameter dictionary

Equations

\[G_s(t) = G_d(t)\]

Dependency

  • scenario: GovernmentDemand

Sets

  • GovernmentSupply

BehaviorGL06SIM.labour_demand(t: int, scenario: dict, params: dict | None = None, **kwargs)[source]

We can resolve the labour demand from the national income equation, together with the consumption demand (+ disposable income) and the government demand knowing that labour demand is equal to labour supply.

Parameters:
  • t (torch.tensor) – Current time step

  • scenario (dict) – Scenario dictionary

  • params (dict) – Parameter dictionary

Equations

\[N_d(t) =\frac{\alpha_2 H_h(t-1) + G_d}{W(t)(1-\alpha_1(1-\theta))}\]

Dependency

  • prior: HouseholdMoneyStock

  • scenario: GovernmentDemand

  • scenario: WageRate

Sets

  • LabourDemand

BehaviorGL06SIM.labour_supply(t: int, scenario: dict, params: dict | None = None, **kwargs)[source]

In the model it is assumed that the supply will be equal to the amount of labour demanded. Equation (3.4) in the book

Parameters:
  • t (torch.tensor) – Current time step

  • scenario (dict) – Scenario dictionary

  • params (dict) – Parameter dictionary

Equations

\[N_s(t) = N_d(t)\]

Dependency

  • state: LabourDemand

Sets

  • LabourSupply

BehaviorGL06SIM.tax_demand(t: int, scenario: dict, params: dict | None = None, **kwargs)[source]

The tax demand is a function of the tax rate, the labour supply, and the wage rate. Equation (3.6) in the book.

Parameters:
  • t (torch.tensor) – Current time step

  • scenario (dict) – Scenario dictionary

  • params (dict) – Parameter dictionary

Equations

\[T_d(t) = \theta N_s(t) W(t)\]

Dependency

  • parameters: TaxRate

  • state: LabourSupply

  • scenario: WageRate

Sets

  • TaxDemand

BehaviorGL06SIM.tax_supply(t: int, scenario: dict, params: dict | None = None, **kwargs)[source]

In the model it is assumed that the supply will be equal to the amount of taxes demanded. Equation (3.3) in the book

Parameters:
  • t (torch.tensor) – Current time step

  • scenario (dict) – Scenario dictionary

  • params (dict) – Parameter dictionary

Equations

\[T_s(t) = T_d(t)\]

Dependency

  • state: TaxDemand

Sets

  • TaxSupply

BehaviorGL06SIM.disposable_income(t: int, scenario: dict, params: dict | None = None, **kwargs)[source]

The disposable income is the wage bill minus the taxes. Equation (3.5) in the book.

Parameters:
  • t (torch.tensor) – Current time step

  • scenario (dict) – Scenario dictionary

  • params (dict) – Parameter dictionary

Equations

\[YD(t) = W(t) N_s(t) - T_s(t)\]

Dependency

  • state: LabourIncome

  • state: TaxSupply

Sets

  • DisposableIncome

BehaviorGL06SIM.consumption_demand(t: int, scenario: dict, params: dict | None = None, **kwargs)[source]

The consumption demand is a function of the disposable income, the propensity to consume income, and the propensity to consume savings. Equation (3.7) in the book.

Parameters:
  • t (torch.tensor) – Current time step

  • scenario (dict) – Scenario dictionary

  • params (dict) – Parameter dictionary

Equations

\[C_d(t) = \alpha_1 YD(t) + \alpha_2 H_h(t-1)\]

Dependency

  • state: DisposableIncome

  • prior: HouseholdMoneyStock

Sets

  • ConsumptionDemand

BehaviorGL06SIM.consumption_supply(t: int, scenario: dict, params: dict | None = None, **kwargs)[source]

In the model it is assumed that the supply will adjust to the demand, that is, whatever is demanded can and will be produced. Equation (3.1) in the book.

Parameters:
  • t (torch.tensor) – Current time step

  • scenario (dict) – Scenario dictionary

  • params (dict) – Parameter dictionary

Equations

\[C_s(t) = C_d(t)\]

Dependency

  • state: ConsumptionDemand

Sets

  • ConsumptionSupply

BehaviorGL06SIM.government_money_stock(t: int, scenario: dict, params: dict | None = None, **kwargs)[source]

The government money stock is a function of the government demand, and the tax supply. Equation (3.8) in the book.

Parameters:
  • t (torch.tensor) – Current time step

  • scenario (dict) – Scenario dictionary

  • params (dict) – Parameter dictionary

Equations

\[H_s(t) = H_s(t-1) + G_d(t) - T_d(t)\]

Dependency

  • scenario: GovernmentDemand

  • state: TaxDemand

  • prior: GovernmentMoneyStock

Sets

  • GovernmentMoneyStock

BehaviorGL06SIM.household_money_stock(t: int, scenario: dict, params: dict | None = None, **kwargs)[source]

The household money stock is a function of the disposable income, the propensity to consume income, and the propensity to consume savings. Equation (3.9) in the book.

Parameters:
  • t (torch.tensor) – Current time step

  • scenario (dict) – Scenario dictionary

  • params (dict) – Parameter dictionary

Equations

\[H_h(t) = H_h(t-1) + YD(t) - C_d(t)\]

Dependency

  • state: DisposableIncome

  • state: ConsumptionDemand

  • prior: HouseholdMoneyStock

Sets

  • HouseholdMoneyStock

BehaviorGL06SIM.national_income(t: int, scenario: dict, params: dict | None = None, **kwargs)[source]

The national income is the sum of the consumption demand, the government demand, and the tax supply. Equation (3.10) in the book.

Parameters:
  • t (torch.tensor) – Current time step

  • scenario (dict) – Scenario dictionary

  • params (dict) – Parameter dictionary

Equations

\[Y(t) = C_s(t) + G_s(t)\]

Dependency

  • state: ConsumptionSupply

  • state: GovernmentSupply

Sets

  • NationalIncome