Skip to content

Instantly share code, notes, and snippets.

@davidefiocco
Last active December 26, 2025 23:34
Show Gist options
  • Select an option

  • Save davidefiocco/b5f5e5a04c5f958730b3a4416b51cfb6 to your computer and use it in GitHub Desktop.

Select an option

Save davidefiocco/b5f5e5a04c5f958730b3a4416b51cfb6 to your computer and use it in GitHub Desktop.

E3 Modeling Concepts Primer

Foundations for Understanding GEM-E3, PRIMES, and PROMETHEUS


Purpose: This document provides an accessible introduction to all foundational concepts needed to understand the E3Modelling suite (GEM-E3, PRIMES, PROMETHEUS). It is designed for readers with a basic quantitative background but limited exposure to economics, energy systems, or optimization theory.

How to use this document: Read sequentially for a comprehensive foundation, or jump to specific chapters as needed. Each chapter is self-contained but builds on earlier material.


Table of Contents

Part I: Economic Foundations

Part II: Mathematical Methods

Part III: Energy Systems

Part IV: Trade and Environment

Part V: Integration

Appendices


Part I: Economic Foundations


Chapter 1: Markets and Demand

1.1 What Is a Market?

A market is any arrangement that brings together buyers and sellers to exchange goods, services, or resources. Markets can be physical (like a farmer's market) or abstract (like the global oil market or the European electricity market).

In energy-economy models, we represent many interconnected markets:

  • Goods markets: Steel, chemicals, transportation services
  • Factor markets: Labor, capital
  • Energy markets: Electricity, natural gas, oil products
  • Emissions markets: Carbon permits (in cap-and-trade systems)

1.2 Demand

Demand describes how much of a good buyers are willing and able to purchase at various prices.

The Law of Demand: All else equal (ceteris paribus—Latin for "other things being equal"), as price increases, quantity demanded decreases. This inverse relationship is fundamental to economics.

Demand curve: Shows the maximum price each buyer is willing to pay. Different buyers value the good differently:

  • Some buyers value it highly (would pay a lot) → top of curve
  • Others value it less (would only buy if cheap) → bottom of curve
Price (P)
    │
    │\  ← Buyers who value it most (would pay high price)
    │ \
    │  \
    │   \  Demand curve (D)
    │    \
    │     \ ← Buyers who value it least
    └──────\─────── Quantity (Q)

Demand shifters (factors that move the entire curve):

  • Income: Higher income typically increases demand
  • Prices of related goods: Substitutes and complements
  • Preferences: Consumer tastes and habits
  • Expectations: Anticipated future price changes
  • Population: Number of potential buyers

1.3 Price Elasticity

Elasticity measures responsiveness—how much one variable changes when another changes.

Price elasticity of demand (ε_d): $$\varepsilon_d = \frac{\text{% change in quantity demanded}}{\text{% change in price}} = \frac{\Delta Q / Q}{\Delta P / P}$$

Point elasticity (calculus form): $$\varepsilon_d = \frac{dQ}{dP} \cdot \frac{P}{Q}$$

The calculus form gives the instantaneous rate of change—more precise for smooth demand curves. The percentage formula above is the discrete approximation (arc elasticity). Both forms are equivalent in the limit.

Elasticity Value Classification Interpretation
|ε| > 1 Elastic Demand responds strongly to price changes
|ε| = 1 Unit elastic Proportional response
|ε| < 1 Inelastic Demand responds weakly to price changes
ε = 0 Perfectly inelastic Demand unchanged by price (e.g., insulin)

Why elasticity matters in E3 models:

Energy demand is typically inelastic in the short run (you can't immediately change your car or heating system) but more elastic in the long run (you can buy a more efficient car, insulate your home).

Energy Type Short-run Elasticity Long-run Elasticity
Gasoline -0.1 to -0.3 -0.5 to -0.8
Electricity -0.1 to -0.2 -0.3 to -0.7
Natural gas -0.1 to -0.3 -0.5 to -1.0

Literature ranges—values vary substantially by study, time period, region, and estimation method. These are illustrative central tendencies, not consensus estimates. See Espey (1998) for gasoline, Labandeira et al. (2017) for a meta-analysis.

Cross-price elasticity measures how demand for one good responds to prices of another: $$\varepsilon_{xy} = \frac{\text{% change in demand for x}}{\text{% change in price of y}}$$

  • If ε_xy > 0: goods are substitutes (gas and coal for electricity generation)
  • If ε_xy < 0: goods are complements (cars and gasoline)

Income elasticity measures how demand responds to income changes: $$\varepsilon_I = \frac{\text{% change in demand}}{\text{% change in income}}$$

  • Normal goods: ε_I > 0 (demand increases with income)
  • Inferior goods: ε_I < 0 (demand decreases with income)
  • Necessities: 0 < ε_I < 1
  • Luxuries: ε_I > 1

1.4 Where This Appears in E3 Models

Model Demand Modeling
GEM-E3 Utility-based demand; responds to prices and income
PRIMES Energy demand by sector; price-responsive
PROMETHEUS Econometric demand with income and price elasticities

Key insight: E3 models don't assume fixed demand—they model how demand responds to price and income changes through elasticity parameters. Getting these right is crucial for realistic policy analysis.

How do producers decide what to supply? That depends on production costs—see Chapter 2.


Chapter 2: Production and Supply

Chapter 1 covered what buyers want. Now: how do firms produce, and what determines what they're willing to sell?

2.1 What Is a Production Function?

A production function describes how inputs (labor, capital, energy, materials) are transformed into outputs:

$$Y = F(K, L, E, M)$$

where:

  • $Y$ = output (quantity produced)
  • $K$ = capital (machines, buildings)
  • $L$ = labor (workers, hours)
  • $E$ = energy
  • $M$ = materials (intermediate inputs)

2.2 Key Concepts

Marginal product: Additional output from one more unit of input $$MP_L = \frac{\partial F}{\partial L}$$

This partial derivative measures how much extra output you get from adding one more unit of labor, holding capital fixed.

Returns to scale:

  • Constant returns (CRS): Double inputs → double output
  • Increasing returns (IRS): Double inputs → more than double output
  • Decreasing returns (DRS): Double inputs → less than double output

CGE models typically assume constant returns to scale (modeling choice: required for competitive equilibrium with zero profits, but many real industries have increasing returns).

Substitution: Can one input replace another?

  • Perfect substitutes: can trade 1-for-1 (e.g., different grades of coal)
  • Perfect complements: must use in fixed proportions (e.g., one driver per truck)
  • Imperfect substitutes: can trade off, but at varying rates

2.3 The CES Production Function

Constant Elasticity of Substitution (CES) is the workhorse of CGE models. (Modeling choice: CES is chosen for tractability, not because it's the "true" form of production.)

The core question: You combine inputs to produce output. If one input gets expensive, how much can you substitute the other?

Example (capital K vs labor L):

  • Wages rise → do you automate (buy machines instead of hiring)?
  • How responsive is that substitution to the price change?

This responsiveness is measured by the elasticity of substitution σ:

$$\sigma = \frac{\Delta (K/L) / (K/L)}{\Delta (P_L/P_K) / (P_L/P_K)}$$

In words: σ = (% change in K/L ratio) / (% change in relative price).

Real-world intuition for σ:

  • σ ≈ 0 (complements): Truck + driver. 10 trucks + 1 driver = 1 delivery. Can't substitute.
  • σ ≈ 1 (Cobb-Douglas): Factory automation. Can replace some workers with machines, but diminishing returns.
  • σ → ∞ (perfect substitutes): Hiring contractors vs employees for identical work. Only cost matters.

The CES formula: $$Y = A \left[ \alpha \cdot K^{\rho} + (1-\alpha) \cdot L^{\rho} \right]^{1/\rho}$$

where σ = 1/(1-ρ). The formula is chosen so that σ stays constant regardless of your current K/L mix—that's the "constant" in CES. This makes the math tractable: you don't need to track where you are on some complex curve.

Note: CES can combine ANY two inputs—not just K and L. In nested CES structures (see next section), different nests combine different things: capital vs labor, coal vs gas, energy vs materials. Each nest has its own σ.

Parameters:

  • $A$ = productivity multiplier (better technology → more output from same inputs)
  • $\alpha$ = capital's importance (how much of output is "due to" capital vs labor)
  • $\rho$ = substitution parameter → determines σ

Why CES is used:

  • Flexible: nests multiple functional forms
  • Empirically estimable: σ can be estimated from data
  • Analytically tractable: has nice mathematical properties

Limitations to keep in mind:

  • CES assumes substitution elasticity is constant across all input ratios—real production may have varying substitutability
  • Aggregating heterogeneous firms into a single CES function can bias estimated elasticities
  • The nesting structure (which inputs are grouped together) is a modeling choice that affects results but is rarely tested empirically
  • CES cannot represent situations where inputs become complements at some ratios and substitutes at others

2.4 Nested CES Production

Real production uses many inputs with different substitution possibilities. Nested CES handles this by grouping inputs:

Output (σ ≈ 0, near-Leontief)
├── Value Added (σ_KL ≈ 0.5)
│   ├── Capital
│   └── Labor
└── Intermediate Bundle (σ_M ≈ 0.3)
    ├── Energy Bundle (σ_E ≈ 0.5-1.0)
    │   ├── Electricity
    │   └── Fossil Fuels (σ_F ≈ 1.0-2.0)
    │       ├── Coal
    │       ├── Oil
    │       └── Gas
    └── Materials (σ_NE ≈ 0.2)

Each nest has its own elasticity:

  • Low σ at top (output needs both labor/capital AND materials)
  • Higher σ within energy (can substitute between fuels)
  • Highest σ within fossil fuels (gas for coal is easier than electricity for heat)

2.5 Elasticity Values Matter!

The substitution elasticities are crucial parameters—they determine how the economy responds to price changes.

Typical values used in GEM-E3:

Elasticity Symbol Range Impact
Capital-Labor σ_KL 0.4-1.0 How automation responds to wages
Energy-Value Added σ_E,VA 0.1-0.5 Very important for climate policy
Interfuel σ_F 0.5-2.0 Fuel switching response
Armington (trade) σ_A 2.0-8.0 Trade response to prices (see Chapter 11)

These ranges are illustrative, drawn from econometric literature. Actual values are contested and vary by sector, region, and estimation approach. The energy-value added elasticity (σ_E,VA) is particularly uncertain and consequential—different credible estimates can change policy cost projections by factors of 2-3x.

Higher σ_E,VA → easier to reduce energy use → lower cost of carbon policy Lower σ_E,VA → harder to reduce energy use → higher cost of carbon policy

This is why sensitivity analysis on elasticities is essential—results should always be tested against alternative plausible values.

2.6 Technical Change

Autonomous Energy Efficiency Improvement (AEEI): Over time, economies become more energy-efficient even without price changes. This is captured by a trend parameter:

$$E_t = E_0 \cdot (1 - AEEI)^t \cdot f(Y_t, P_t)$$

This says energy demand at time $t$ equals base-year demand, reduced by autonomous efficiency gains $(1-AEEI)^t$, then adjusted for economic activity and prices via $f(Y_t, P_t)$. Typical AEEI values: 0.5-1.5% per year.

Endogenous technical change: Some models make efficiency improvements depend on R&D spending or learning-by-doing.

2.7 Cost Functions and Input Demands

The firm's problem: Produce Y units at minimum cost, given input prices (wage W, capital rental R).

Cost function: $C(R, W, Y)$ = minimum cost to produce Y at prices R, W.

With "constant returns to scale" (2× inputs → 2× output), cost-per-unit is constant: $C = Y \cdot c(R,W)$.

Shephard's Lemma: Optimal input demand equals the derivative of cost w.r.t. that input's price: $$K^* = \frac{\partial C}{\partial R}, \quad L^* = \frac{\partial C}{\partial W}$$

General intuition: When an input price rises by €1, total cost rises by the amount of that input used (€1 × quantity). Hence ∂C/∂(price) = quantity.

Example: 10 machines × €1 price increase = €10 cost increase, so ∂C/∂R = 10.

(Re-optimization effects are second-order—"envelope theorem.")

Why this is useful: The cost function C embeds the solution to "minimize cost subject to producing Y." Shephard's Lemma is a shortcut: once you have C, extract input demands by differentiation—no need to re-solve the optimization. CGE models specify convenient functional forms for C (e.g., CES), and input demands follow automatically.

2.8 From Costs to Supply

Now we can complete the producer's story: production function → cost function → supply curve.

The supply curve is the marginal cost curve. A profit-maximizing firm supplies another unit only if the price covers the cost of producing it:

  • At low quantities, marginal cost is low → willing to supply at low price
  • At high quantities, marginal cost rises → need higher price to justify production
Price (P)
    │           /
    │         / ← Expensive units (need high price)
    │       /  Supply = Marginal Cost
    │     /
    │   /
    │  / ← Cheap units (low marginal cost)
    │ :  ← Minimum price (no supply below this)
    └─────────────── Quantity (Q)

Caveat: This upward slope assumes diminishing returns, not economies of scale. With economies of scale (larger production → lower costs), you get natural monopolies instead of competitive markets. CGE models typically assume constant returns to scale for tractability.

Supply shifters:

  • Input prices: Cost of labor, raw materials, energy (affects cost function → shifts supply)
  • Technology: Productivity improvements (higher A in production function)
  • Number of sellers: Market entry/exit
  • Government policies: Taxes, subsidies, regulations

Carbon tax example: A carbon tax raises energy input prices → increases production costs → shifts supply curve up → at any given price, less is supplied.

2.9 Where This Appears in E3 Models

Model Production & Supply
GEM-E3 Nested CES for all 31 sectors; supply from cost minimization
PRIMES Technology-specific engineering detail; explicit cost curves
PROMETHEUS Reduced-form; aggregate production relationships

Now that we understand both demand (Chapter 1) and supply (Chapter 2), we can see how they come together—see Chapter 3.


Chapter 3: Equilibrium Concepts

We've seen what buyers want (Chapter 1) and what sellers offer (Chapter 2). Now: how do they meet?

3.1 Market Equilibrium

Equilibrium occurs when quantity demanded equals quantity supplied. At the equilibrium price, the market "clears"—no excess supply or demand.

Price (P)
    │           S
    │         /
    │       / 
    │     /
P*  │----X--------  ← Equilibrium price
    │   / \
    │ /    \
    │/      \ D
    └────────────── Quantity (Q)
          Q*
          ↑
    Equilibrium quantity

Market clearing condition: $$Q^D(P^) = Q^S(P^)$$

where $Q^D$ = quantity demanded, $Q^S$ = quantity supplied, and $P^*$ = equilibrium price.

This equation is central to all economic models. In GEM-E3, market clearing must hold for all goods, factors, and permits simultaneously.

3.2 What Is Economic Equilibrium? (General Concept)

More broadly, equilibrium is a state where no agent has an incentive to change their behavior given current prices and the choices of others. It's a "rest point" of the economic system.

Think of it like a ball in a bowl: the ball settles at the bottom where forces balance. In economics, equilibrium is where supply and demand forces balance across all markets.

3.3 Partial Equilibrium vs. General Equilibrium

This distinction is crucial for understanding the difference between PRIMES and GEM-E3.

Key terminology:

  • Exogenous variable: Determined outside the model; taken as given (e.g., world oil prices in a national model)
  • Endogenous variable: Determined within the model by the equilibrium conditions (e.g., domestic prices, quantities)

Partial Equilibrium:

  • Analyzes one market in isolation
  • Holds prices in other markets constant ("ceteris paribus")
  • Ignores feedback effects from the rest of the economy
  • Simpler, more detailed for the market in question

Example: Analyzing the electricity market, taking GDP, labor costs, and other prices as given.

General Equilibrium:

  • Analyzes all markets simultaneously
  • All prices adjust together to clear all markets
  • Captures feedback effects and interdependencies
  • More complex, but more comprehensive

Example: Analyzing how a carbon tax affects electricity prices, which affects production costs, which affects wages, which affects consumption, which affects electricity demand again...

Partial Equilibrium (PRIMES approach):
+-------------------------------------+
|         Energy Sector               |
|  +---------+    +---------+         |
|  | Supply  | <> | Demand  |         |
|  +---------+    +---------+         |
|         v equilibrium v             |
|        Energy prices                |
+-------------------------------------+
        ^                   v
   GDP (fixed)         Energy prices
        ^                   v
  ---------- REST OF ECONOMY (exogenous) ----------


General Equilibrium (GEM-E3 approach):
+-------------------------------------------------+
|                 ENTIRE ECONOMY                  |
|  +----------+  +----------+  +----------+       |
|  |  Goods   |<>| Factors  |<>|  Energy  |       |
|  | markets  |  |  (L,K)   |  | markets  |       |
|  +----------+  +----------+  +----------+       |
|       ^             ^             ^             |
|       +--------------------------+              |
|                     v                           |
|           ALL PRICES ADJUST                     |
|           SIMULTANEOUSLY                        |
+-------------------------------------------------+

3.4 Walrasian General Equilibrium

The theoretical foundation for Computable General Equilibrium (CGE) models like GEM-E3 comes from Léon Walras (1874) and was formalized by Arrow and Debreu (1954).

Perfect competition — the key assumption:

  • Many buyers and sellers — no single agent can influence the market price
  • Price-takers — everyone takes the market price as given and decides only how much to buy/sell
  • Homogeneous goods — products are identical (no brand loyalty)
  • Perfect information — everyone knows all prices and qualities
  • Free entry/exit — firms can enter or leave the market without barriers

This is an idealization. Real markets have market power, asymmetric information, and barriers to entry. But it's a useful benchmark.

Walrasian equilibrium (theoretical framework) is a set of prices such that:

  1. Each consumer maximizes utility given their budget constraint
  2. Each firm maximizes profit given its technology
  3. All markets clear (supply = demand)

Mathematically: Find price vector $\mathbf{p}^* = (p_1^, p_2^, ..., p_n^*)$ such that:

$$z_i(\mathbf{p}^*) = 0 \quad \forall i$$

where:

  • $\mathbf{p}$ = price vector (prices of all $n$ goods)
  • $z_i(\mathbf{p})$ = excess demand in market $i$: $z_i = D_i(\mathbf{p}) - S_i(\mathbf{p})$
  • $D_i, S_i$ = demand and supply for good $i$ (functions of all prices, not just $p_i$)

Key properties of Walrasian equilibrium:

  • Walras' Law: The value of total excess demand is always zero: $\sum_i p_i \cdot z_i(\mathbf{p}) = 0$
  • If all but one market clears, the last one clears automatically
  • Prices are only determined up to a numeraire (we can normalize one price to 1)

Limitations to keep in mind:

  • Walrasian equilibrium assumes all agents are price-takers with perfect information—real markets have market power, asymmetric information, and transaction costs
  • The theory says nothing about how equilibrium is reached or how long adjustment takes
  • Multiple equilibria may exist; the model finds one but can't tell you which one the economy would actually reach
  • The framework is comparative statics: it compares equilibria, not the transition path between them

Simple Example: Two-Good Exchange Economy

Consider two consumers (A and B) and two goods (apples and bread):

Apples Bread
A's endowment 10 0
B's endowment 0 10

Both prefer variety. If $P_{apples} = P_{bread} = 1$:

  • A sells 5 apples, buys 5 bread → ends with (5, 5)
  • B sells 5 bread, buys 5 apples → ends with (5, 5)

Market clearing check:

  • Apples: A supplies 5, B demands 5 ✓
  • Bread: B supplies 5, A demands 5 ✓

This is a Walrasian equilibrium: both maximize utility given their budget, and both markets clear.

3.5 The Auctioneer Metaphor

Walras imagined a fictional "auctioneer" who:

  1. Announces prices
  2. Collects supply and demand from all agents
  3. Adjusts prices (raise if excess demand, lower if excess supply)
  4. Repeats until all markets clear

This is called tâtonnement (French for "trial and error" or "groping toward equilibrium"). CGE models effectively implement this process computationally.

3.6 Existence and Uniqueness

Arrow-Debreu Theorem: Under certain conditions (continuous preferences, no increasing returns to scale, etc.), a Walrasian equilibrium exists.

Uniqueness is not guaranteed—there may be multiple equilibria. CGE models typically find one equilibrium (the one closest to the starting point).

3.7 Comparative Statics

CGE models use comparative statics: comparing two equilibria (before and after a policy change) without modeling the transition path.

Equilibrium A          →          Equilibrium B
(no carbon tax)       Policy      (with carbon tax)
                      change

We compare A and B, but don't model the path between them

This is a limitation: CGE models tell you the new equilibrium, not how long it takes to get there or what happens during the transition.

3.8 Dynamic Extensions

Recursive dynamics (used in GEM-E3):

  • Solve a sequence of static equilibria
  • Each period, capital stocks update based on previous period's investment
  • Agents have adaptive expectations (don't perfectly foresee the future)
Period 1 → Period 2 → Period 3 → ...
    ↓          ↓          ↓
  K₁ → I₁ → K₂ → I₂ → K₃ → ...

Intertemporal optimization (used partly in PRIMES):

  • Agents optimize over entire time horizon
  • Perfect foresight (or rational expectations)
  • More computationally demanding

3.9 Labor Markets: Beyond Perfect Competition

Standard Walrasian equilibrium assumes labor markets clear → no involuntary unemployment. Reality disagrees.

GEM-E3's solution: Efficiency Wages (Shapiro-Stiglitz 1984)

Core idea: Firms can't perfectly monitor effort. If wages = market-clearing, workers have nothing to lose by shirking (jobs are easy to find). So firms pay a premium → creates unemployment → workers fear job loss → don't shirk.

The efficiency wage: $$w = w^* \cdot \left(1 + \frac{e}{b + \rho/q}\right)$$

  • $w^*$ = market-clearing wage; $e$ = required effort
  • $b$ = unemployment benefit rate; $\rho$ = discount rate; $q$ = detection probability

Intuition: Higher required effort or weaker penalties for shirking (generous benefits, low detection, high discounting) → bigger premium needed. Higher unemployment → smaller premium (job loss is scarier).

For GEM-E3: Unemployment is endogenous. Labor cost policies have employment effects. Revenue recycling (carbon tax → cut labor taxes) can deliver a "double dividend."

3.10 Where This Appears in E3 Models

Model Equilibrium Concept
GEM-E3 Full general equilibrium (all markets clear simultaneously)
PRIMES Partial equilibrium (energy sector only); takes GDP as exogenous
PROMETHEUS Market clearing for world energy; partial equilibrium

Key insight from the technical summaries:

  • GEM-E3: "Find price vector p* such that all markets clear simultaneously"
  • PRIMES: "EPEC (Equilibrium Problem with Equilibrium Constraints)"—finds equilibrium within the energy sector
  • The models are coupled to get benefits of both: PRIMES provides energy detail, GEM-E3 provides economy-wide feedback

Chapter 4: Welfare Economics

4.1 What Is Welfare?

Welfare in economics refers to the well-being or satisfaction of individuals and society. Welfare economics asks: Is one economic outcome "better" than another? How do we measure the impact of policies on society?

This matters for E3 models because policymakers need to know not just what happens (GDP change, emissions reduction) but whether society is better or worse off.

4.2 Utility

Utility = numerical measure of satisfaction. Can't observe it directly, but infer from choices.

Utility function: $U = U(x_1, x_2, ..., x_n)$ where $x_i$ = quantity of good $i$.

Key properties: More is better (non-satiation). Diminishing marginal utility (10th slice < 1st slice). Ordinal only (rankings matter, absolute numbers don't).

Example (Cobb-Douglas): $$U(C, L) = C^{\alpha} \cdot L^{1-\alpha}$$

  • C = consumption (goods/services); L = leisure (time not working); α ∈ (0,1) = weight on consumption

This models the labor-leisure tradeoff: work more → more income (C) but less free time (L). Both essential (U=0 if either is zero). Constant shares: fraction α of time-budget goes to work, (1-α) to leisure.

4.3 Consumer and Producer Surplus

Markets use one price for heterogeneous buyers and sellers:

  • Consumer surplus: Buyers who would've paid more than P* keep the difference
  • Producer surplus: Sellers who would've accepted less than P* keep the difference
Price (P)
    │ D
    │  \        S
    │   \      /    Consumer Surplus (above P*, below D)
    │    \    /
P*  │------X------ ← uniform market price
    │     /  \      Producer Surplus (below P*, above S)
    │    /    \
    │ S          D
    └──────────────── Quantity (Q)
          Q*

Total surplus = gains from trade. Deadweight loss = surplus destroyed by distortions (taxes, monopoly)—trades that would've been mutually beneficial but didn't happen.

4.4 Pareto Efficiency

Allocation: Who gets what—a distribution of goods across people, each yielding some utility.

Pareto efficient: No way to make someone better off without making someone else worse off. Think: pie split with no crumbs on the table. But 50-50 and 99-1 are both Pareto efficient—it says nothing about fairness.

Pareto improvement: A change that helps at least one person without hurting anyone.

The Welfare Theorems:

First: Competitive markets reach Pareto efficient outcomes. (No gains from trade left on the table.)

Second: Any Pareto efficient allocation can be achieved via markets—if you first redistribute endowments using lump-sum (non-distortionary) transfers. This conceptually separates efficiency (let markets work) from equity (who starts with what).

The catch: Real redistribution (income tax, means-tested welfare) depends on behavior → creates distortions → efficiency costs. Lump-sum transfers are a theoretical device, not a policy tool. Hence the equity-efficiency tradeoff: in practice, more redistribution typically means some efficiency loss.

For policy analysis: Markets achieve efficiency but not fairness. Policies create winners and losers. We need welfare measures to compare outcomes (next sections).

4.5 Measuring Welfare Changes

When prices change, how do we convert utility changes into money?

Equivalent Variation (EV): The € amount (at OLD prices) that would cause the same utility change as the policy.

Compensating Variation (CV): The € amount (at NEW prices) needed to restore original utility after the policy.

Measure Evaluated at Question
EV OLD prices "How much € (at old prices) = same utility change?"
CV NEW prices "How much € (at new prices) = same utility change?"

Why they differ (for a price increase):

  • EV (old prices): €1 buys more → need fewer € taken away to reach new lower utility → EV smaller
  • CV (new prices): €1 buys less → need more € added to restore old higher utility → CV larger

Example: Price rises €0.10 → €0.15/kWh. You cut consumption 1000 → 800 kWh.

  • Bill rises €20, but welfare loss > €20 (you also gave up 200 kWh you valued)
  • EV (at old prices where €1 = 10 kWh): smaller € amount
  • CV (at new prices where €1 = 6.7 kWh): larger € amount

For small price changes, EV ≈ CV ≈ consumer surplus change. GEM-E3 uses EV for cross-scenario comparability.

4.6 Social Welfare Functions

To compare outcomes where some gain and others lose, we need a social welfare function (SWF) that aggregates individual utilities:

Utilitarian (Benthamite): $$W = \sum_i U_i$$ Sum of all utilities—treats everyone equally.

Rawlsian: $$W = \min_i {U_i}$$ Only care about the worst-off individual.

Weighted sum: $$W = \sum_i \omega_i \cdot U_i$$ Different groups have different weights (distributional preferences).

CGE models typically use utilitarian welfare (sum or average of equivalent variations), but can report distributional impacts separately.

4.7 Efficiency vs. Equity Trade-offs

Most real policies involve trade-offs:

Policy Efficiency Equity
Carbon tax ✅ Corrects externality, efficient ❌ Regressive (hurts low-income more)
Carbon tax + rebates ✅ Still efficient ✅ Can be made progressive
Subsidies for renewables ❓ May distort markets ✅ Benefits vary

GEM-E3 can analyze both:

  • Total welfare change (efficiency)
  • Welfare change by region, sector, or income group (distributional)

4.8 The Double Dividend Hypothesis

A key policy question: Can environmental taxes provide a "double dividend"?

  1. First dividend: Environmental improvement (less pollution)
  2. Second dividend: Economic improvement (if tax revenue is used to reduce distortionary taxes like labor taxes)

GEM-E3 is specifically designed to analyze this because it models:

  • Environmental taxes and their revenue
  • Labor market with unemployment
  • Revenue recycling options (lump-sum vs. tax cuts)

4.9 Where This Appears in E3 Models

Model Welfare Concepts
GEM-E3 Reports Equivalent Variation by region; analyzes double dividend
PRIMES Reports total system costs; implicit welfare through consumer choice
PROMETHEUS No explicit welfare; focuses on price projections

End of Part I: Economic Foundations

Continue to Part II: Mathematical Methods for the mathematical tools used in these models.


Part II: Mathematical Methods


A note on reading this part: The sections below mix three types of statements:

  • Definitions — what terms mean (e.g., "elasticity is the ratio of percentage changes")
  • Modeling choices — how E3 models implement concepts (e.g., "GEM-E3 uses CES production functions")
  • Empirical findings — what data suggests (e.g., "energy demand is typically inelastic")

These are different kinds of claims with different epistemic status. Definitions are conventions; modeling choices are decisions made for tractability; empirical findings are contestable summaries of evidence.

Chapter 5: Optimization Primer

5.1 Why Optimization?

Economic models assume agents optimize: consumers maximize utility, firms minimize costs. Combined with market clearing (supply = demand), this generates equilibrium.

Different models, different mathematical structures:

Model What's optimized Mathematical form
PRIMES Total energy system cost LP/MILP — single objective, find minimum
PROMETHEUS Market clearing Nonlinear equations — find prices where supply = demand
GEM-E3 Many agents simultaneously MCP — no single objective; find prices where everyone's optimal choices are mutually consistent

The key difference: PRIMES has one decision-maker (a social planner minimizing cost). GEM-E3 has many decision-makers (consumers, firms, government), each optimizing their own objective. You can't write "many agents optimizing" as a single optimization problem—but you can write down the conditions that must hold when all are at their optima simultaneously. That's what MCP does.

5.2 The Basic Optimization Problem

Unconstrained optimization: $$\max_{x} f(x) \quad \mathrm{or} \quad \min_{x} f(x)$$

First-order condition (FOC): At an optimum, the derivative is zero: $$\frac{df}{dx} = 0$$

Second-order condition (SOC): For a maximum, $f''(x) &lt; 0$; for a minimum, $f''(x) &gt; 0$.

5.3 Constrained Optimization and Lagrange Multipliers

Most economic problems involve constraints (budget constraints, resource limits, etc.).

General form: $$\max_{x} f(x) \quad \mathrm{s.t.} \quad g(x) = 0$$

Lagrangian method: $$\mathcal{L}(x, \lambda) = f(x) - \lambda \cdot g(x)$$

First-order conditions: $$\frac{\partial \mathcal{L}}{\partial x} = 0, \quad \frac{\partial \mathcal{L}}{\partial \lambda} = g(x) = 0$$

The Lagrange multiplier (λ) has a powerful interpretation:

λ is the shadow price of the constraint—the marginal value of relaxing the constraint by one unit.

Why? At the optimum, ∇f = λ∇g (gradients parallel). Moving in the direction that relaxes g by 1 unit increases f by λ. So λ = df*/dc where c is the constraint bound.

Connection to duality: λ is also the dual variable. Every constrained optimization has a "dual" problem where λ becomes the decision variable (interpreted as the "price" of the constraint). Under convexity, primal and dual have the same optimal value—this is why λ simultaneously measures: (1) how much you'd pay to relax the constraint, and (2) the "price" that makes the constraint worth respecting.

Example: In a carbon-constrained economy: $$\max \ GDP \quad \mathrm{s.t.} \quad Emissions \leq \bar{E}$$

The Lagrange multiplier on the emissions constraint is the marginal abatement cost—the GDP sacrifice from reducing emissions by one more ton.

5.4 Types of Optimization Problems

Linear Programming (LP): $$\min_{x} c^T x \quad \mathrm{s.t.} \quad Ax \leq b, ; x \geq 0$$

where $c$ = cost vector, $x$ = decision variables, $A$ = constraint matrix, $b$ = constraint bounds.

  • Objective and constraints are linear
  • Fast to solve (polynomial time)
  • Used in simple dispatch models

Mixed-Integer Linear Programming (MILP): Same as LP, but some variables must be integers.

  • Models yes/no decisions (build a power plant or not)
  • Much harder to solve (NP-hard)
  • Used in PRIMES for investment decisions

Nonlinear Programming (NLP): $$\min_{x} f(x) \quad \mathrm{s.t.} \quad g(x) \leq 0, ; h(x) = 0$$

Quadratic Programming (QP): Quadratic objective with linear constraints—a special case of NLP that's easier to solve.

5.5 Shadow Prices (Dual Variables)

Every constraint in an optimization problem has an associated shadow price (also called dual variable or Lagrange multiplier).

Interpretation: The shadow price tells you the marginal value of relaxing the constraint.

In energy models:

Constraint Shadow Price
Electricity demand = supply Wholesale electricity price (€/MWh)
Emissions ≤ cap Carbon permit price (€/tCO₂)
Capacity ≤ installed capacity Scarcity rent (€/MW)
Renewable share ≥ target Cost of RES constraint (€/MWh)

GEM-E3 reports shadow prices for all constraints—these are the equilibrium prices.

5.6 Complementarity Problems

CGE equilibrium conditions are typically cast as a Mixed Complementarity Problem (MCP) and solved by specialized solvers.

The complementarity condition: $$0 \leq x \perp f(x) \geq 0$$

The symbol $\perp$ ("perp") denotes complementarity. This notation means: $x \geq 0$, $f(x) \geq 0$, and $x \cdot f(x) = 0$.

Interpretation: Either $x = 0$ or $f(x) = 0$ (or both). They "complement" each other.

In market context: $$0 \leq P \perp (S - D) \geq 0$$

  • If there's excess supply ($S &gt; D$), price must be zero
  • If price is positive, the market must clear ($S = D$)

Why MCP instead of standard optimization?

A single agent's optimum satisfies the Karush-Kuhn-Tucker (KKT) conditions:

  • Gradient condition (∇f = λ∇g)
  • Feasibility (constraints satisfied)
  • Complementary slackness (if constraint slack, multiplier = 0)

In a market, each agent has their own KKT conditions. The equilibrium is where:

  • All agents satisfy their individual KKT conditions
  • Markets clear (supply = demand for each good)

You can't write this as "minimize some function"—there's no single objective. But you CAN collect all agents' KKT conditions plus market clearing into one big system of complementarity conditions. That's the MCP.

Why specialized solvers (PATH)? Standard optimization solvers (gradient descent, Newton) assume you're minimizing something. MCP solvers handle the "either-or" structure of complementarity (either x=0 or f(x)=0) directly, using pivoting methods similar to how simplex solves LPs.

Limitations to keep in mind:

  • MCP finds an equilibrium, but multiple equilibria may exist—the solution found depends on the starting point
  • Convergence is not guaranteed for all problem structures; poorly specified models may fail to solve
  • The equilibrium found is a mathematical fixed point; whether it represents real-world market outcomes depends on whether the underlying behavioral assumptions hold

5.7 Solving Optimization Problems

Iterative methods:

  1. Start from an initial guess
  2. Compute search direction (gradient, Newton step)
  3. Update solution
  4. Repeat until convergence

GAMS (General Algebraic Modeling System):

  • Industry-standard language for optimization
  • Declarative: you describe the problem, solver finds the solution
  • Multiple solvers: CPLEX (LP/MIP), CONOPT (NLP), PATH (MCP)

Example GAMS structure:

VARIABLES x, z;
EQUATIONS obj, constraint;

obj..           z =e= c * x;           * Objective
constraint..    A * x =l= b;           * Constraint

MODEL mymodel /all/;
SOLVE mymodel USING LP MINIMIZING z;

5.8 Where This Appears in E3 Models

Model Optimization Approach
GEM-E3 MCP (market equilibrium as complementarity)
PRIMES LP/MILP for power sector; Equilibrium Problem with Equilibrium Constraints (EPEC) overall
PROMETHEUS Nonlinear equation system (market clearing)

Chapter 6: Discrete Choice Models

6.1 The Problem: Heterogeneous Choices

In reality, not everyone makes the same choice even when facing the same prices. Some buy electric cars, others buy gasoline cars. Some install heat pumps, others stick with gas boilers.

Why?

  • Different preferences
  • Different constraints (budget, space, access)
  • Different information
  • Behavioral factors (risk aversion, habits)

PRIMES models this heterogeneity using discrete choice theory.

6.2 Random Utility Models

Basic idea: Each option has a "utility" that includes:

  • Observable components (price, performance)
  • Unobservable components (personal taste, hidden costs)

$$U_i = V_i + \varepsilon_i$$

where:

  • $U_i$ = total utility of option $i$
  • $V_i$ = systematic (observable) utility
  • $\varepsilon_i$ = random (unobservable) component

Consumer chooses option with highest total utility.

6.3 The Logit Model

If the random components follow an extreme value (Gumbel) distribution, the probability of choosing option $i$ is:

$$P_i = \frac{e^{V_i / \mu}}{\sum_j e^{V_j / \mu}}$$

where $\mu$ is a scale parameter.

Properties:

  • Probabilities sum to 1
  • Higher utility → higher probability
  • But not deterministic: even expensive options get some market share

Limitations to keep in mind:

  • IIA (Independence of Irrelevant Alternatives): Adding a new option doesn't change relative shares of existing options. This is often unrealistic—adding a third car brand should affect similar brands more than dissimilar ones.
  • Assumes unobserved heterogeneity follows a specific distribution (Gumbel). If real heterogeneity differs, market share predictions can be biased.
  • Nested logit (Section 6.5) partially addresses IIA but requires specifying the nest structure, which is itself a modeling choice.

Example: Technology choice in buildings $$V_i = -\alpha \cdot Cost_i - \beta \cdot Hassle_i + \gamma \cdot Efficiency_i$$

6.4 The Weibull Distribution (in PRIMES)

PRIMES uses Weibull-based market shares:

$$S_i = \frac{e^{-\nu \cdot C_i}}{\sum_j e^{-\nu \cdot C_j}}$$

where:

  • $S_i$ = market share of technology $i$
  • $C_i$ = generalized cost
  • $\nu$ = heterogeneity parameter

The generalized cost includes "intangible costs": $$C_i = (CAPEX_i + OPEX_i) + \mu_i$$

where:

  • CAPEX = capital expenditure (upfront cost: buying the equipment)
  • OPEX = operating expenditure (ongoing costs: fuel, maintenance)
  • μ_i = intangible costs (non-monetary factors—see below)

Intangible costs capture:

  • Risk aversion (new technology is risky)
  • Hidden costs (installation complexity, learning time)
  • Behavioral inertia (familiarity with current technology)
  • Market barriers (lack of information, financing constraints)

6.5 Nested Logit (for Transport)

When choices have natural groupings, nested logit is used:

Travel choice
├── Private car
│   ├── Gasoline car
│   ├── Diesel car
│   └── Electric car
├── Public transit
│   ├── Bus
│   └── Train
└── Active (walk/bike)

Two-level choice:

  1. Choose mode (car, transit, active)
  2. Choose specific option within mode

Formula: $$P(mode\ m) = \frac{e^{V_m / \lambda_m}}{\sum_{m'} e^{V_{m'} / \lambda_{m'}}}$$

$$P(option\ i\ |\ mode\ m) = \frac{e^{V_i / \mu}}{\sum_{j \in m} e^{V_j / \mu}}$$

where $\lambda_m$ = nest-specific scale parameter (captures correlation within mode $m$), $\mu$ = scale parameter for options within a nest, and $V$ = systematic utility.

6.6 Calibration of Intangible Costs

The intangible costs ($\mu_i$) are calibrated, not estimated:

  1. Observe actual market shares in base year
  2. Calculate what intangible costs would be needed to match these shares given known financial costs
  3. Use these calibrated values for projections

This is a limitation: We're inferring behavior from outcomes, not from direct measurement of preferences.

6.7 Why This Matters for Policy

Discrete choice modeling affects policy analysis:

Without heterogeneity:

  • Carbon tax makes EVs cheapest
  • Everyone switches to EVs immediately
  • Unrealistic!

With heterogeneity:

  • Some early adopters switch quickly
  • Others need larger price signals
  • Technology diffusion is gradual
  • More realistic policy impact

6.8 Where This Appears in E3 Models

Model Discrete Choice Application
GEM-E3 Not directly; uses CES (continuous substitution)
PRIMES Technology choice, mode choice, vehicle choice
PROMETHEUS Not directly; uses aggregate demand functions

Chapter 7: Stochastic Methods

7.1 The Challenge of Uncertainty

Energy projections face deep uncertainty in:

  • Future oil prices
  • Technology costs (will solar keep getting cheaper?)
  • Economic growth (especially in emerging economies)
  • Policy evolution
  • Resource availability

PROMETHEUS explicitly addresses this by treating key parameters as probability distributions rather than point estimates.

7.2 Types of Uncertainty

Aleatory uncertainty: Inherent randomness (weather, accidents)

  • Can be characterized probabilistically
  • Won't disappear with more research

Epistemic uncertainty: Lack of knowledge (future technology costs)

  • Could be reduced with more information
  • But often we must act before uncertainty resolves

Deep uncertainty: Fundamental unknowns (paradigm shifts, black swans)

  • Hard to assign probabilities
  • Scenario analysis may be more appropriate

7.3 Probability Distributions

PROMETHEUS uses distributions for uncertain parameters:

Normal distribution: $X \sim N(\mu, \sigma^2)$

  • Symmetric, bell-shaped
  • Used for: demand elasticities, growth rates

Lognormal distribution: $X \sim LN(\mu, \sigma^2)$

  • Always positive, right-skewed
  • Used for: prices, resource estimates

Triangular distribution: Defined by min, mode, max

  • Easy to elicit from experts
  • Used for: technology learning rates

Uniform distribution: Equal probability in range

  • Maximum ignorance within bounds
  • Used when we only know plausible range

7.4 Monte Carlo Simulation

Monte Carlo method:

  1. Draw random values from input distributions
  2. Run the model with these values
  3. Record outputs
  4. Repeat many times (1000-10000)
  5. Analyze distribution of outputs
Input: θ ~ distribution
       │
       ▼
┌──────────────────┐
│     MODEL        │
│  (PROMETHEUS)    │
└──────────────────┘
       │
       ▼
Output: Oil price, demand, etc.

Repeat N times → Output distribution

Output: Not a single forecast, but a probability distribution

  • Mean, median
  • Standard deviation
  • Percentiles (P10, P50, P90)
  • Full distribution

7.5 Latin Hypercube Sampling (LHS)

Simple random sampling can miss parts of the parameter space. Latin Hypercube Sampling ensures better coverage:

  1. Divide each parameter's range into N equal-probability intervals
  2. Sample exactly once from each interval
  3. Randomly pair samples across parameters

Advantage: More efficient—variance reduction is roughly O(1/N) vs O(1/√N) for random sampling. For expensive models, this can cut required runs by 5-10×.

Simple Random:          Latin Hypercube:
X₂                     X₂
│  •    •              │     •  
│    •     •           │  •     
│  •    •              │        •
│      •  •            │     •  
└──────────── X₁       └──────────── X₁
(clumpy coverage)      (stratified coverage)

7.6 Sensitivity Analysis

Question: Which uncertain inputs drive the most uncertainty in outputs?

Note: Local sensitivity is a deterministic concept (just calculus). We include it here as context before the stochastic method (Sobol indices), which requires Monte Carlo runs.

Local sensitivity: Change one input slightly, see output change $$S_i = \frac{\partial Y}{\partial X_i}$$

Global sensitivity (Sobol indices): Decompose output variance

First-order Sobol index: $$S_i = \frac{V[E[Y|X_i]]}{V[Y]}$$

where $V[\cdot]$ = variance, $E[\cdot]$ = expected value, and $X_{-i}$ = all inputs except $X_i$.

Fraction of output variance explained by input $X_i$ alone.

Total-effect index: $$S_{T,i} = 1 - \frac{V[E[Y|X_{-i}]]}{V[Y]}$$

Includes all interactions involving $X_i$.

Typical PROMETHEUS findings:

Parameter First-order Index
Oil Ultimate Recoverable Resources (URR) 0.2-0.4
GDP growth 0.1-0.3
OPEC behavior 0.1-0.2
Demand elasticity 0.05-0.15

7.7 Interpreting Stochastic Results

Don't:

  • Treat the mean as "the forecast"
  • Ignore the distribution width

Do:

  • Report ranges: "Oil prices in 2040: €60-120/barrel (80% probability)"
  • Use for stress-testing policies
  • Identify which uncertainties matter most

7.8 Where This Appears in E3 Models

Model Stochastic Treatment
GEM-E3 Deterministic; uses scenario analysis for uncertainty
PRIMES Deterministic; can use PROMETHEUS price distributions
PROMETHEUS Full Monte Carlo with LHS; explicit uncertainty quantification

End of Part II: Mathematical Methods

Continue to Part III: Energy Systems for energy-specific concepts.


Part III: Energy Systems


Chapter 8: Energy Fundamentals

8.1 Why Energy Matters for Economic Modeling

Energy is unique among economic goods:

  • Essential input for virtually all production
  • Limited substitutability in many uses
  • Environmental externalities (emissions)
  • Strategic importance (national security)
  • Infrastructure-intensive (long-lived capital)

Understanding energy fundamentals is essential for interpreting E3 models.

8.2 Energy Forms and Conversions

Primary energy: Energy as found in nature

  • Fossil fuels (coal, crude oil, natural gas)
  • Nuclear (uranium)
  • Renewables (solar, wind, hydro, biomass, geothermal)

Secondary energy: Transformed/refined energy

  • Electricity (from any primary source)
  • Refined petroleum products (gasoline, diesel, jet fuel)
  • Hydrogen (produced from various sources)

Final energy: Energy delivered to end users

  • What you buy (electricity at the meter, gasoline at the pump)
  • Before losses in end-use equipment

Useful energy: Energy service actually provided

  • Heat delivered to room
  • Motion of vehicle
  • Light from bulb
Primary Energy (100 units)
    │
    │ Extraction, refining, generation
    │ (losses: ~30-40%)
    ▼
Secondary/Final Energy (60-70 units)
    │
    │ End-use conversion
    │ (losses: ~30-70%)
    ▼
Useful Energy (20-40 units)

PRIMES models the entire chain from primary to useful energy, capturing losses at each stage.

8.3 Energy Units

Unit Definition Typical Use
Joule (J) SI unit of energy Scientific
kWh 3.6 MJ Electricity billing
toe Tonne of oil equivalent (41.868 GJ) Energy statistics
Mtoe Million toe National/EU level
PJ Petajoule (10¹⁵ J) Energy balances
TWh Terawatt-hour (3.6 PJ) Electricity statistics
BTU British Thermal Unit (~1055 J) US/UK
MMBtu Million BTU Natural gas (US)

Conversion factors:

  • 1 toe = 11.63 MWh = 41.868 GJ
  • 1 TWh = 0.086 Mtoe
  • 1 barrel of oil ≈ 0.136 toe

8.4 Energy Balances

An energy balance is an accounting framework showing all energy flows in an economy.

┌──────────────────────────────────────────────────────────────┐
│                         SUPPLY                               │
│  Domestic production + Imports - Exports - Stock changes     │
└──────────────────────────────────────────────────────────────┘
                              ↓
                      Primary Energy Supply
                              ↓
┌──────────────────────────────────────────────────────────────┐
│                     TRANSFORMATION                           │
│  Power plants, refineries, heat plants                       │
│  (input - output = losses)                                   │
└──────────────────────────────────────────────────────────────┘
                              ↓
                      Final Energy Consumption
                              ↓
┌──────────────────────────────────────────────────────────────┐
│                         DEMAND                               │
│  Industry + Transport + Residential + Services + Agriculture │
└──────────────────────────────────────────────────────────────┘

Key identity: $$Primary\ Supply = Final\ Consumption + Transformation\ Losses + Own\ Use$$

PRIMES and GEM-E3 are calibrated to Eurostat energy balances for the base year.

8.5 Energy Intensity

Energy intensity measures how much energy is used per unit of economic output:

$$Energy\ Intensity = \frac{Total\ Primary\ Energy\ Supply}{GDP}$$

Usually expressed in toe/€million or MJ/€.

Decomposition: $$\frac{E}{GDP} = \sum_s \frac{E_s}{Y_s} \cdot \frac{Y_s}{GDP}$$

This decomposes aggregate energy intensity into: (1) sector-level intensity ($E_s/Y_s$) and (2) sectoral shares of GDP ($Y_s/GDP$). A country can reduce energy intensity either by making each sector more efficient or by shifting toward less energy-intensive sectors.

Energy intensity depends on:

  • Sectoral composition (services vs. heavy industry)
  • Technology efficiency (better equipment)
  • Behavior (conservation practices)

Trends:

  • Developed economies: ~1-2% annual decrease in energy intensity
  • Driven by structural change + efficiency improvements
  • Autonomous Energy Efficiency Improvement (AEEI) parameter in models captures this

8.6 Emissions and Carbon Intensity

Carbon intensity of energy: $$Carbon\ Intensity = \frac{CO_2\ Emissions}{Energy\ Consumption}$$

Carbon content by fuel:

Fuel kg CO₂/GJ Relative
Coal 94-96 Highest
Oil 73-75 Medium
Natural gas 56-58 Lowest fossil
Biomass 0* Net zero (if sustainable)
Nuclear 0 Zero direct
Renewables 0 Zero direct

*Biomass carbon is considered biogenic (part of natural cycle).

Emissions accounting in GEM-E3: $$EMI_{f,s,r} = \epsilon_f \cdot E_{f,s,r}$$

where $\epsilon_f$ = emission factor for fuel $f$ (kg CO₂/GJ), $E_{f,s,r}$ = energy consumption of fuel $f$ in sector $s$ and region $r$. This simple multiplication links the economic model to physical emissions.

8.7 Exhaustible Resources: Hotelling Theory

The Hotelling Rule (1931) is fundamental to understanding fossil fuel supply in PROMETHEUS.

Core insight: Exhaustible resources (oil, gas, coal) have a finite stock. Extracting today means less available tomorrow. Owners must consider the opportunity cost of extraction.

The Hotelling condition: $$\frac{dP}{dt} = r \cdot P$$

In words: the price of an exhaustible resource rises at the interest rate $r$.

Intuition:

  • Resource owner can either extract now (get price P, invest at interest r) or wait (get price P_{t+1})
  • In equilibrium, they must be indifferent: $P_{t+1} = P_t(1+r)$
  • Otherwise arbitrage: if prices rise faster than r, everyone waits; if slower, everyone extracts now

With extraction costs: $$\frac{d(P - MC)}{dt} = r \cdot (P - MC)$$

The resource rent (price minus marginal cost) rises at rate r.

Why prices actually fluctuate: The simple Hotelling model predicts smooth price rises, but real prices are volatile because:

  • Demand shocks (recessions, growth spurts)
  • Supply shocks (discoveries, wars, technology)
  • Market power (OPEC decisions)
  • Uncertainty about reserves

Limitations to keep in mind:

  • Hotelling assumes rational, forward-looking resource owners with perfect information about reserves—real actors have limited information and heterogeneous expectations
  • Historical oil prices have not followed Hotelling paths; empirical tests generally reject the simple model
  • The theory works better as a benchmark for understanding long-run tendencies than as a short-run price predictor
  • Political factors (sanctions, nationalization, OPEC quotas) often dominate economic logic

PROMETHEUS models this by:

  • Tracking cumulative extraction relative to URR (Ultimate Recoverable Resources—the total amount ultimately extractable)
  • Making extraction costs rise as easy reserves deplete
  • Treating URR as uncertain (probability distributions)

8.8 Market Power in Energy: OPEC

Global oil markets are not perfectly competitive. OPEC (Organization of Petroleum Exporting Countries) has significant market power.

PROMETHEUS models OPEC as a "dominant firm with competitive fringe":

Market demand = OPEC supply + Non-OPEC supply
                    ↓               ↓
            (strategic)      (price-taking)

The dominant firm model:

  1. Competitive fringe supplies according to marginal cost: Fringe supply: $S^{fringe}(P)$ = supply from non-OPEC producers at price $P$

  2. OPEC faces residual demand: $$D^{OPEC}(P) = D^{world}(P) - S^{fringe}(P)$$

  3. OPEC maximizes profit: $$\max_P (P - MC^{OPEC}) \cdot D^{OPEC}(P)$$

Result: OPEC restricts output below competitive level, raising prices.

PROMETHEUS captures this by:

  • Modeling OPEC production decisions
  • Including capacity constraints and market share targets
  • Allowing for different OPEC behavior scenarios (aggressive vs. accommodating)

Why this matters: Oil price projections are highly sensitive to assumptions about OPEC behavior—a major source of uncertainty.

8.9 Where This Appears in E3 Models

Model Energy Data Use
GEM-E3 Energy balances for calibration; emissions by fuel
PRIMES Detailed energy flows; transformation sector
PROMETHEUS Global energy supply/demand; Hotelling dynamics; OPEC behavior

Chapter 9: Power Sector Basics

9.1 Why Power Sector Gets Special Treatment

The electricity sector is modeled in detail because:

  • Central to decarbonization (electrification of transport, heat)
  • Highly capital-intensive (long-lived assets)
  • Complex operations (real-time balancing)
  • Subject to extensive regulation

PRIMES has a dedicated power sector module with sub-annual temporal resolution (see Section 9.6 on time slices).

9.2 Generation Technologies

Technology Type Dispatchable? Capacity Factor
Coal Thermal Yes 40-85%
Natural gas CCGT (Combined Cycle Gas Turbine) Thermal Yes 30-60%
Nuclear Thermal Baseload 80-95%
Hydro (reservoir) Renewable Yes 30-50%
Wind onshore Renewable No 20-35%
Wind offshore Renewable No 35-50%
Solar PV Renewable No 10-25%
Solar CSP Renewable Partly 20-40%

Dispatchable: Can increase/decrease output on demand (gas, coal, hydro) Variable (non-dispatchable): Output depends on weather (wind, solar) Baseload: Technically dispatchable, but economically optimal to run at constant high output (nuclear)

9.3 Key Technical Parameters

Capacity factor: $$CF = \frac{Actual\ Generation}{Maximum\ Possible\ Generation} = \frac{E}{P \cdot 8760}$$

where E = annual generation (MWh), P = capacity (MW), 8760 = hours/year.

Efficiency: $$\eta = \frac{Electricity\ Output}{Fuel\ Input}$$

Typical efficiencies:

  • Coal: 35-45%
  • CCGT: 55-62%
  • Nuclear: 33-37%
  • Solar/Wind: N/A (no fuel)

Heat rate: Inverse of efficiency, often used for thermal plants $$Heat\ Rate = \frac{1}{\eta} \quad (GJ/MWh\ or\ BTU/kWh)$$

9.4 Cost Structure

Capital cost (CAPEX): €/kW installed

  • Nuclear: €4,000-8,000/kW
  • Offshore wind: €2,500-4,000/kW
  • Onshore wind: €1,000-1,500/kW
  • Solar PV: €400-800/kW
  • CCGT: €600-900/kW

Operating costs:

  • Fixed O&M: €/kW/year (maintenance regardless of operation)
  • Variable O&M: €/MWh (depends on generation)
  • Fuel: €/MWh (depends on fuel price and efficiency)

Levelized Cost of Electricity (LCOE): $$LCOE = \frac{\sum_t \frac{I_t + M_t + F_t}{(1+r)^t}}{\sum_t \frac{E_t}{(1+r)^t}} = \frac{\text{NPV of lifetime costs}}{\text{NPV of lifetime electricity}}$$

where I = investment, M = maintenance, F = fuel, E = electricity output, r = discount rate.

Where this comes from: Set NPV(revenues) = NPV(costs), assume a constant selling price P, and solve for P. The result is the LCOE—the unique break-even price.

Why it's useful: Allows apples-to-apples comparison of technologies with different cost profiles (nuclear: high upfront, low fuel; gas: low upfront, high fuel).

9.5 Load and Dispatch

Load: Electricity demand varies over time

Demand (MW)
    │     ┌──────┐
    │    /        \        Peak
    │   /          \
    │──/            \───   Shoulder
    │ /              \
    │/                \    Baseload
    └──────────────────────── Time (hours)
      6am    12pm   6pm

Merit order dispatch: Plants dispatched from lowest to highest marginal cost

Marginal Cost
(€/MWh)
    │              ┌──┐ Peak (gas turbines)
    │         ┌────┘  │
    │    ┌────┘       │ Mid (CCGT)
    │ ───┘            │ Baseload (nuclear, coal)
    │                 │
    └─────────────────┴──── Cumulative Capacity (GW)

Wholesale price = marginal cost of most expensive unit running

9.6 Time Slices in PRIMES

PRIMES doesn't model all 8760 hours—too computationally expensive. Instead, it uses representative time slices:

Time slices = Season × Day type × Hour type

Seasons: Winter, Summer, Intermediate (3)
Day type: Peak day, Average day (2)  
Hour type: Peak, Shoulder, Off-peak, Night (4)

Total: 3 × 2 × 4 = 24 representative periods

Each time slice has:

  • Typical demand level
  • Renewable availability (wind, solar)
  • Weight (hours it represents)

9.7 Reserve Margin and Reliability

Reserve margin: $$RM = \frac{Available\ Capacity - Peak\ Demand}{Peak\ Demand}$$

Typically 10-20% to ensure reliability.

Capacity credit: Fraction of nameplate capacity that counts as "firm" for reliability planning.

  • Thermal plants: ~90-95% (high availability)
  • Wind: ~5-15% (may not blow at peak)
  • Solar: ~0-30% (depends on when peak occurs—high if summer afternoon, zero if winter evening)

Example: 100 MW wind farm with 10% capacity credit → only 10 MW counts toward meeting peak demand.

9.8 Electricity Pricing: Ramsey-Boiteux

Electricity pricing is complex because it involves both competitive wholesale markets and regulated retail distribution.

Wholesale market pricing (competitive): The wholesale price equals the marginal cost of the most expensive plant needed to meet demand: $$P_{wholesale} = MC_{marginal_unit}$$

Why? Grid operators solve an optimization: minimize total generation cost subject to meeting demand. The Lagrange multiplier on the demand constraint is the cost of serving one more MW—which equals the marginal unit's cost.

The problem with regulated infrastructure:

Distribution networks (grids) are natural monopolies:

  • High fixed costs, low marginal costs
  • Marginal cost pricing doesn't recover investment costs
  • But monopoly pricing exploits consumers

Ramsey-Boiteux pricing solves this by setting prices to recover costs while minimizing welfare loss.

The Ramsey-Boiteux rule: $$\frac{P_i - MC_i}{P_i} = \frac{k}{\varepsilon_i}$$

where:

  • $P_i$ = price charged to consumer class $i$
  • $MC_i$ = marginal cost of serving class $i$
  • $\varepsilon_i$ = price elasticity of demand for class $i$
  • $k$ = constant ensuring total revenue = total cost

Interpretation:

  • Charge higher markups to consumers with lower elasticity
  • Industrial users (elastic) pay close to marginal cost
  • Residential users (inelastic) pay higher markups
  • This minimizes the total deadweight loss from above-marginal-cost pricing

Why this matters for PRIMES:

  • PRIMES models retail electricity prices as wholesale price + network tariffs + policy costs + taxes
  • Network tariffs follow Ramsey-Boiteux principles
  • Different consumer classes face different prices
  • This affects technology adoption decisions

Retail price decomposition (from PRIMES): $$P_{retail} = P_{wholesale} + T_{network} + T_{policy} + Taxes$$

where:

  • $T_{network}$ = grid tariffs (Ramsey-Boiteux pricing)
  • $T_{policy}$ = RES support levies, capacity payments
  • $Taxes$ = VAT, energy taxes

9.9 Where This Appears in E3 Models

Model Power Sector Treatment
GEM-E3 Aggregate electricity sector; substitution between fuels
PRIMES Detailed technology-by-technology; hourly dispatch approximation
PROMETHEUS Global power generation projections; technology mix

Chapter 10: Technology Representation

10.1 Why Technology Detail Matters

Energy transitions are fundamentally about technology change:

  • From coal to gas to renewables
  • From internal combustion to electric vehicles
  • From gas boilers to heat pumps

Modeling technology choice and evolution is crucial for policy analysis.

10.2 Technology Vintages and Stock Turnover

Energy-using capital has long lifetimes:

  • Power plants: 30-60 years
  • Buildings: 50-100 years
  • Vehicles: 10-20 years
  • Appliances: 5-20 years

Stock turnover model: $$K_t = K_{t-1} \cdot (1 - \delta) + I_t$$

where:

  • $K_t$ = capital stock in year $t$
  • $\delta$ = depreciation/retirement rate
  • $I_t$ = new investment

Implication: Even with zero new fossil fuel investment, old plants keep running. Decarbonization takes decades.

10.3 Learning Curves

Experience curve: Technology costs decline as cumulative production increases

$$C_t = C_0 \cdot \left(\frac{Q_t}{Q_0}\right)^{-b}$$

where:

  • $C_t$ = unit cost at time $t$
  • $Q_t$ = cumulative production (total units ever made)
  • $b$ = learning parameter (higher = faster cost decline)

The negative exponent means costs fall as production accumulates—"learning by doing."

Learning rate (LR): Percentage cost reduction per doubling of capacity $$LR = 1 - 2^{-b}$$

If $b = 0.32$, then $LR = 1 - 2^{-0.32} \approx 0.20$ (20%)—each time cumulative production doubles, unit cost falls by 20%.

Typical learning rates:

Technology Learning Rate
Solar PV modules 20-24%
Wind turbines 10-15%
Batteries (Li-ion) 15-20%
Nuclear ~0% (no learning in recent decades)
CCS (Carbon Capture & Storage) Uncertain (5-15%?)

Historical estimates that may not persist. Solar's high learning rate is well-documented but unprecedented in energy history. Whether it continues, and whether other technologies follow similar curves, is genuinely uncertain.

In PROMETHEUS: Learning rates are treated as uncertain parameters with probability distributions—reflecting that past learning rates are imperfect guides to future cost reductions.

10.4 Intangible Costs

Real technology adoption is slower than pure cost optimization would predict. Intangible costs capture this:

$$C_i^{total} = C_i^{financial} + \mu_i$$

where $\mu_i$ represents:

Factor Description
Risk premium Uncertainty about new technology performance
Hidden costs Installation complexity, training needs
Hassle factor Time and effort to research, purchase
Financing constraints Limited access to capital
Information barriers Lack of awareness
Behavioral inertia Preference for familiar options

PRIMES calibrates intangible costs to match observed market shares in the base year.

10.5 Technology Choice in PRIMES

PRIMES uses a discrete choice framework for technology selection:

  1. Calculate generalized cost for each technology (financial + intangible)
  2. Apply Weibull distribution to get market shares
  3. Result: Technology mix, not winner-take-all

Example: Residential heating choice

  • Gas boiler: Low capital, high fuel cost, familiar
  • Heat pump: High capital, low running cost, unfamiliar

Even if heat pumps have lower lifecycle cost, gas boilers retain market share due to intangible costs.

10.6 Autonomous vs. Price-Induced Technical Change

AEEI (Autonomous Energy Efficiency Improvement):

  • Efficiency improves over time independent of prices
  • Represents ongoing technological progress
  • Exogenous parameter (typically 0.5-1.5%/year)

PIEEI (Price-Induced Energy Efficiency Improvement):

  • Higher energy prices → more investment in efficiency
  • Endogenous response to policy
  • Captured through substitution elasticities

Debate: How much is autonomous vs. induced? Important for policy analysis—if most improvement is autonomous, carbon prices matter less.

10.7 R&D and Innovation

Some models include explicit R&D and innovation:

  • Government R&D spending
  • Private R&D induced by carbon prices
  • Knowledge spillovers

GEM-E3 and PRIMES mostly treat technical change as exogenous (given by assumptions), though learning curves provide some endogeneity.

10.8 Where This Appears in E3 Models

Model Technology Representation
GEM-E3 Aggregate; AEEI parameter; no explicit technologies
PRIMES Hundreds of explicit technologies; learning curves; intangible costs
PROMETHEUS Learning curves with uncertainty; technology cost projections

End of Part III: Energy Systems

Continue to Part IV: Trade and Environment for international and environmental aspects.


Part IV: Trade and Environment


Chapter 11: International Trade

11.1 Why Trade Matters for E3 Models

International trade is crucial for energy-economy analysis:

  • Energy trade: Oil, gas, coal are globally traded commodities
  • Carbon leakage: Production may shift to countries with weaker climate policy
  • Competitiveness: Energy-intensive industries face international competition
  • Technology diffusion: Trade spreads efficient technologies

11.2 Comparative Advantage

Ricardo's principle: Countries benefit from specializing in goods where they have comparative (not absolute) advantage.

  • Absolute advantage: Produce more with same resources (Country A makes wine faster than B)
  • Comparative advantage: Produce at lower opportunity cost (what you give up)

Key insight: Even if Country A is better at making everything, both countries gain from trade if each specializes where it's relatively best.

Example: A lawyer types faster than their secretary (absolute advantage in both law and typing). Should they type their own documents? No—their comparative advantage is law (where the gap is largest). They gain by specializing in law and hiring the secretary for typing.

Why this matters:

  • Total gains from trade: If both countries specialize where they're relatively best, total output rises—more for everyone in aggregate.
  • But: winners and losers within countries. When a country specializes, the sector it doesn't specialize in shrinks. Workers in that sector lose, even if the country overall gains. (This is why trade is politically contentious.)
  • Climate policy connection: Comparative advantage depends on relative costs. A carbon price changes these—countries with clean energy may gain comparative advantage in energy-intensive goods.

11.3 The Armington Assumption

Problem: Simple trade theory predicts complete specialization, but we observe:

  • Countries both import and export similar goods
  • Trade flows respond gradually to price changes

Armington (1969) solution: Domestic and imported goods are imperfect substitutes.

$$X = \left[ \delta \cdot D^{\rho} + (1-\delta) \cdot M^{\rho} \right]^{1/\rho}$$

where:

  • $X$ = composite good consumed (a CES aggregate of domestic and imported varieties)
  • $D$ = domestic good
  • $M$ = imported good
  • $\sigma = 1/(1-\rho)$ = Armington elasticity

This CES form means consumers view domestic and foreign goods as differentiated—not perfectly interchangeable—so trade adjusts gradually to price changes rather than switching entirely.

Limitations to keep in mind:

  • Armington is a modeling convenience, not a deep theory—it's chosen because it prevents unrealistic corner solutions
  • The assumption that goods differ only by country of origin ignores firm-level heterogeneity within countries
  • Armington elasticities are difficult to estimate reliably; values vary widely across studies and affect trade flow predictions substantially
  • The approach cannot represent situations where trade is blocked entirely (e.g., sanctions) without ad-hoc modifications

11.4 Armington Elasticity

The Armington elasticity $\sigma_A$ measures how much trade responds to price changes:

$$\sigma_A = \frac{\Delta (M/D) / (M/D)}{\Delta (P_M/P_D) / (P_M/P_D)}$$

In words: % change in import/domestic ratio divided by % change in relative price.

Typical values in GEM-E3:

Good Armington Elasticity
Crude oil 5-10 (highly substitutable)
Electricity 2-4 (less traded)
Manufactured goods 2-6
Services 1-2 (hard to trade)
Agriculture 2-4

Higher σ_A:

  • Trade responds strongly to prices
  • Small price advantage → large trade flow shift
  • More "competitive" goods

Lower σ_A:

  • Trade responds weakly
  • Prices can differ substantially between regions
  • More "differentiated" goods

11.5 Two-Level Armington Structure

GEM-E3 uses a nested structure:

First level: Domestic vs. imports $$X = f(D, M; \sigma_D)$$

Second level: Imports by origin $$M = g(M_1, M_2, ..., M_n; \sigma_M)$$

where $M_i$ = imports from region $i$.

This allows different substitutability between:

  • Domestic and any import (σ_D)
  • Imports from different countries (σ_M)

11.6 Trade Balance and Current Account

Trade balance: $$TB = X - M$$

where X = exports, M = imports.

Current account includes:

  • Trade in goods and services
  • Factor income (returns on foreign investment)
  • Transfers

GEM-E3 enforces:

  • Trade flows balance globally (world exports = world imports)
  • Current account constraints by region (over time)

11.7 Carbon Leakage

Carbon leakage occurs when climate policy in one region causes emissions to increase elsewhere:

Mechanisms:

  1. Competitiveness channel: Energy-intensive industries relocate
  2. Energy market channel: Lower demand reduces world fuel prices, increasing consumption elsewhere

Leakage rate: $$Leakage = \frac{\Delta E_{rest}}{\Delta E_{policy}} \times (-1)$$

where $\Delta E_{policy}$ = emission reduction in the policy region (negative), and $\Delta E_{rest}$ = emission change in the rest of the world.

If leakage = 100%, global emissions unchanged by policy.

GEM-E3 is designed to analyze leakage because it models:

  • Multi-regional trade flows
  • Energy-intensive sectors explicitly
  • World energy prices

11.8 Border Carbon Adjustments

Border Carbon Adjustment (BCA): Apply carbon cost to imports based on their embodied emissions

Types:

  • Import tariff based on carbon content
  • Export rebate for domestic carbon costs

GEM-E3 can model BCA by adding tariffs linked to emission coefficients.

11.9 Where This Appears in E3 Models

Model Trade Treatment
GEM-E3 Full bilateral trade; Armington; carbon leakage analysis
PRIMES EU focus; imports from outside EU as exogenous
PROMETHEUS Global energy trade flows; regional energy balances

Chapter 12: Environmental Policy

12.1 The Problem: Externalities

Externality: A cost or benefit not reflected in market prices

Negative externality from emissions:

  • Burning fossil fuels causes climate change
  • Costs fall on society, not the polluter
  • Market outcome has too much pollution

Efficient outcome: Polluter pays the social cost of emissions

12.2 Why Markets Fail

Without intervention:

  • Private cost < Social cost
  • Production is higher than socially optimal
  • Result: Deadweight loss from over-pollution
Price
    │
    │      Social MC
    │        /
    │       / \
    │      /   \ Private MC
    │     /     \
    │────/───────\─── Demand
    │   /         \
    │  / Deadweight\
    │ /   loss      \
    └─────────────────── Quantity
       Q*   Q_market

12.3 Carbon Pricing: Tax vs. Cap-and-Trade

Two main approaches to internalize the externality:

Carbon Tax:

  • Government sets price, market determines quantity
  • Revenue to government
  • Price certainty, quantity uncertainty

Cap-and-Trade (ETS):

  • Government sets quantity (cap), market determines price
  • Permits allocated or auctioned
  • Quantity certainty, price uncertainty
Feature Carbon Tax Cap-and-Trade
Price certainty
Quantity certainty
Revenue predictability Variable
Political acceptability Lower? Higher?
Implementation complexity Lower Higher

EU Emissions Trading System (ETS): Europe's main climate policy instrument since 2005

12.4 Marginal Abatement Cost (MAC)

MAC: The cost of reducing emissions by one more ton

$$MAC = -\frac{\partial C}{\partial E} > 0$$

where C = total abatement cost, E = emissions. The negative sign ensures MAC is positive: reducing emissions (lowering E) increases cost.

MAC curve: Shows cost of emission reductions

MAC
(€/tCO₂)
    │                    /
    │                   /
    │                  /
    │                 /
    │                / Steep = expensive further cuts
    │               /
    │              /
    │             /
    │    ────────/  Flat = cheap initial cuts
    │
    └─────────────────────── Abatement (Mt CO₂)

In GEM-E3: Carbon price = shadow price on emissions constraint = MAC at equilibrium

12.5 Revenue Recycling and Double Dividend

Revenue recycling options:

  1. Lump-sum rebates to households
  2. Reduce other taxes (labor, capital)
  3. Fund green investments
  4. Reduce government debt

Double dividend hypothesis:

  1. First dividend: Environmental improvement
  2. Second dividend: Economic gain from reducing distortionary taxes

GEM-E3 can test this because it models:

  • Labor market with unemployment
  • Detailed tax system
  • Welfare effects of different recycling options

12.6 Carbon Border Adjustments

To prevent carbon leakage, countries may impose border carbon adjustments:

$$Import\ tariff = Carbon\ price \times Embodied\ emissions$$

EU Carbon Border Adjustment Mechanism (CBAM): Being phased in from 2026

GEM-E3 is used to analyze CBAM impacts on trade, competitiveness, and emissions.

12.7 Policy Interactions

Real policies come in packages:

  • Carbon pricing + renewable subsidies + efficiency standards + R&D support

Interactions can be:

  • Complementary: Carbon price + R&D = faster innovation
  • Conflicting: ETS + Renewable Energy Sources (RES) target = lower permit price
  • Redundant: Multiple policies targeting same behavior

GEM-E3 and PRIMES can model policy packages to understand interactions.

12.8 Co-Benefits

Climate policies often have co-benefits:

  • Air quality improvement (less SO₂, NOx, PM)
  • Energy security (less import dependence)
  • Health benefits (less pollution)
  • Innovation stimulus

GEM-E3 reports:

  • CO₂, CH₄, N₂O (greenhouse gases)
  • SO₂, NOx, PM (air pollutants)

This allows analysis of climate-air quality co-benefits.

12.9 Where This Appears in E3 Models

Model Environmental Policy Features
GEM-E3 Carbon tax, ETS, revenue recycling, CBAM, multi-pollutant
PRIMES Carbon price input; technology response; RES targets
PROMETHEUS Global climate policy scenarios; emission projections

End of Part IV: Trade and Environment

Continue to Part V: Integration for data and model coupling.


Part V: Integration


Chapter 13: Data and Calibration

13.1 The Data Challenge

E3 models require vast amounts of data:

  • Economic flows between sectors and regions
  • Energy production, transformation, consumption
  • Technology costs and performance
  • Emissions by source
  • Trade flows by commodity and partner

Getting this data consistent and comprehensive is a major challenge.

13.2 Social Accounting Matrix (SAM)

A Social Accounting Matrix is the data foundation for CGE models like GEM-E3.

What is a SAM?

  • A square matrix showing all value flows in an economy for a base year
  • Rows = income (receipts)
  • Columns = expenditure (payments)
  • Row total = Column total for each account (everything balances)

SAM structure:

                              EXPENDITURES
             ┌──────────┬──────────┬─────────┬──────────┬─────┬─────┐
             │Activities│Commodit. │ Factors │Households│ Gov │ RoW │
┌────────────┼──────────┼──────────┼─────────┼──────────┼─────┼─────┤
│Activities  │          │ Domestic │         │          │     │Exp- │
│            │          │ sales    │         │          │     │orts │
├────────────┼──────────┼──────────┼─────────┼──────────┼─────┼─────┤
│Commodities │ Intermed │          │         │Consumpt. │ Gov │     │
│            │ inputs   │          │         │          │     │     │
├────────────┼──────────┼──────────┼─────────┼──────────┼─────┼─────┤
│Factors     │ Value    │          │         │          │     │     │
│(L, K)      │ added    │          │         │          │     │     │
├────────────┼──────────┼──────────┼─────────┼──────────┼─────┼─────┤
│Households  │          │          │ Factor  │          │Trans│     │
│            │          │          │ income  │          │fers │     │
├────────────┼──────────┼──────────┼─────────┼──────────┼─────┼─────┤
│Government  │ Indirect │          │         │ Direct   │     │     │
│            │ taxes    │          │         │ taxes    │     │     │
├────────────┼──────────┼──────────┼─────────┼──────────┼─────┼─────┤
│Rest of     │          │ Imports  │         │          │     │     │
│World       │          │          │         │          │     │     │
└────────────┴──────────┴──────────┴─────────┴──────────┴─────┴─────┘
     ↑
 RECEIPTS

Key property: Every row sum equals the corresponding column sum.

13.3 Data Sources

For GEM-E3:

Data Type Primary Source Secondary Sources
Economic structure GTAP database Eurostat, national accounts
Bilateral trade GTAP UN Comtrade
Energy balances Eurostat, IEA National statistics
Emissions UNFCCC, IPCC National inventories
Elasticities Literature Econometric estimates

GTAP Database (Global Trade Analysis Project):

  • Maintained by Purdue University
  • Global database covering 141 regions, 65 sectors
  • Used as starting point for most CGE models
  • Updated every few years (current: GTAP 11, base year 2017)

13.4 The Calibration Principle

Calibration assumption: The base year SAM represents an equilibrium.

Procedure:

  1. Set all prices to 1 (numeraire normalization)
  2. Choose functional forms (CES)
  3. Specify elasticities from literature/estimation
  4. Solve for share parameters such that model replicates SAM flows

Example: CES calibration

Given observed inputs $X_1 = 60$, $X_2 = 40$ and prices $P_1 = P_2 = 1$:

For CES: $Y = [\alpha X_1^{\rho} + (1-\alpha) X_2^{\rho}]^{1/\rho}$

At calibration: $$\alpha = \frac{X_1}{X_1 + X_2} = \frac{60}{100} = 0.6$$

(Exact formula depends on nesting structure and normalization.)

13.5 Replication Test

A properly calibrated model must replicate the base year exactly.

If you run the model with no policy shock:

  • All prices should remain at 1
  • All quantities should match the SAM
  • This is the "benchmark replication test"

If replication fails: There's a bug or inconsistency in the data/model.

13.6 SAM Balancing

Real data sources don't perfectly balance. SAM balancing adjusts raw data to ensure consistency.

Methods:

  • RAS method: Iteratively scale rows and columns
  • Cross-entropy: Minimize information distance from original data
  • Least squares: Minimize sum of squared adjustments

GEM-E3 constructs SAMs from multiple sources and balances them for each region.

13.7 Base Year and Projections

Base year: The year for which the model is calibrated (e.g., 2015, 2020)

Projections require additional assumptions:

  • GDP growth rates (from macroeconomic forecasts)
  • Population growth (from demographic projections)
  • World energy prices (from PROMETHEUS)
  • Policy changes (scenario-specific)

13.8 Uncertainty in Parameters

Key uncertain parameters:

Parameter Source Uncertainty Level
Armington elasticities Literature Medium
Capital-labor substitution Econometrics Medium
Energy-value added substitution Literature High
Learning rates Historical High
Intangible costs Calibration Very High

Sensitivity analysis is essential: Results should be tested against alternative parameter values.

13.9 Where This Appears in E3 Models

Model Data/Calibration
GEM-E3 SAM from GTAP + Eurostat; calibrated CES functions
PRIMES Energy balances from Eurostat; technology database
PROMETHEUS Historical energy data from IEA, BP; econometric estimation

Chapter 14: Model Coupling

14.1 Why Couple Models?

No single model can do everything well:

Requirement Best Approach
Economy-wide impacts CGE (GEM-E3)
Technology detail Partial equilibrium (PRIMES)
Uncertainty quantification Stochastic (PROMETHEUS)

Solution: Couple models to get benefits of each.

14.2 Types of Model Linkage

Hard linking (full integration):

  • Models share same code/platform
  • Solve simultaneously
  • Computationally demanding
  • Ensures perfect consistency

Soft linking (iterative):

  • Models run separately
  • Exchange data between runs
  • Iterate until convergence
  • More flexible, easier to maintain

GEM-E3/PRIMES use soft linking — they iterate until energy prices and economic activity are consistent.

14.3 The E3-Modelling Coupling Architecture

┌──────────────────────────────────────────────────────────────┐
│                    E3-MODELLING SUITE                         │
└──────────────────────────────────────────────────────────────┘

         ┌─────────────────┐
         │   PROMETHEUS    │
         │  (World Energy) │
         └────────┬────────┘
                  │
                  │ World fuel prices
                  │ (Oil, Gas, Coal)
                  ▼
         ┌─────────────────┐
         │     GEM-E3      │◄──────────────┐
         │    (Economy)    │               │
         └────────┬────────┘               │
                  │                        │
                  │ GDP, sectoral          │
                  │ activity levels        │ Energy prices,
                  ▼                        │ system costs
         ┌─────────────────┐               │
         │     PRIMES      │───────────────┘
         │    (Energy)     │
         └─────────────────┘
                  │
                  │ Detailed energy
                  │ projections
                  ▼
         ┌─────────────────┐
         │    OUTPUTS      │
         │  (Integrated)   │
         └─────────────────┘

14.4 The Iteration Process

Step 1: PROMETHEUS runs

  • Generates world fossil fuel price trajectories
  • May include uncertainty bounds (P10, P50, P90)

Step 2: GEM-E3 initial run

  • Uses PROMETHEUS prices
  • Calculates GDP, sectoral output
  • First estimate of energy demand response

Step 3: PRIMES runs

  • Takes GDP trajectory from GEM-E3
  • Optimizes energy system
  • Calculates energy prices, system costs

Step 4: GEM-E3 re-runs

  • Uses energy prices from PRIMES
  • Updates economic projections
  • May change GDP, sectoral composition

Step 5: Iterate

  • Repeat steps 3-4 until convergence
  • Convergence = energy flows ↔ economic costs are consistent
Iteration 1:  GEM-E3(GDP₀) → PRIMES → Energy prices₁
Iteration 2:  GEM-E3(prices₁) → PRIMES → Energy prices₂
Iteration 3:  GEM-E3(prices₂) → PRIMES → Energy prices₃
...
Convergence: |prices_n - prices_{n-1}| < tolerance

14.5 What Gets Exchanged

GEM-E3 → PRIMES:

  • GDP by country and year
  • Sectoral value added (industry, services)
  • Population, households
  • Discount rates

PRIMES → GEM-E3:

  • Energy demand by sector and fuel
  • Energy prices (wholesale, retail)
  • Investment in energy sector
  • System costs

PROMETHEUS → GEM-E3/PRIMES:

  • World oil prices (€/barrel)
  • World gas prices (€/MWh)
  • World coal prices (€/ton)
  • Possibly: probability distributions

14.6 Ensuring Consistency

Challenges:

  • Different sectoral aggregations
  • Different time steps
  • Different geographic boundaries
  • Different price concepts

Solutions:

  • Mapping tables between classifications
  • Interpolation for time steps
  • Regional aggregation/disaggregation
  • Clear definition of price concepts

14.7 Advantages of the Coupled System

Feature Standalone Model Coupled System
Technology detail Limited in CGE Full from PRIMES
Economic feedback None in PE Full from GEM-E3
Price consistency Assumed Ensured by iteration
Uncertainty Scenarios PROMETHEUS distributions

14.8 Computational Considerations

Full model run:

  • PROMETHEUS: minutes
  • GEM-E3 (one year): seconds to minutes
  • PRIMES (one country-year): minutes
  • Full iteration: hours
  • All EU countries, all years: 1-2 days

Practical implications:

  • Scenario design matters (can't run everything)
  • Parallel computing helps
  • Results caching important

14.9 When to Use Which Model

Question Model(s) to Use
GDP impact of carbon tax GEM-E3
Optimal power mix in 2050 PRIMES
Oil price uncertainty PROMETHEUS
Sectoral employment effects GEM-E3
Technology investment needs PRIMES
Carbon leakage from EU policy GEM-E3
Complete policy assessment All three (coupled)

14.10 Related Models in the Ecosystem

The E3-Modelling suite can link with other models for extended analysis:

E3ME (Cambridge Econometrics)

  • Type: Macroeconometric model (not CGE)
  • Approach: Based on historical relationships, not optimization
  • Key difference: Allows for under-utilized resources, path-dependent dynamics
  • Use case: Alternative to GEM-E3 for macro drivers; sometimes used when Keynesian features desired
  • Linkage: Can substitute for GEM-E3 in providing macro drivers to PRIMES

GAINS (IIASA)

  • Type: Air pollution and greenhouse gas model
  • Focus: Multi-pollutant, multi-effect analysis
  • Key feature: Detailed emission control technology costs
  • Use case: Air quality co-benefits; pollution control costs
  • Linkage: Can receive energy scenarios from PRIMES; provides air pollutant costs
Model Developer Linkage to E3 Suite
E3ME Cambridge Econometrics Alternative macro driver for PRIMES
GAINS IIASA Air pollutant costs; co-benefits analysis
GTAP Purdue Database source for GEM-E3 calibration
IEA WEO IEA Benchmark for PROMETHEUS validation

Why multiple models exist: Different methodological approaches have different strengths. CGE models (GEM-E3) assume equilibrium; econometric models (E3ME) capture historical dynamics. Using multiple approaches provides robustness checks for policy conclusions.


End of Part V: Integration

Continue to Appendices for reference materials.


Appendices


Appendix A: Glossary

Term Definition
AEEI Autonomous Energy Efficiency Improvement — exogenous efficiency gains over time
Armington elasticity Substitution elasticity between domestic and imported goods
Calibration Process of determining model parameters to replicate base year data
Carbon leakage Increase in emissions outside a policy region due to the policy
CES Constant Elasticity of Substitution — a production/utility function
CGE Computable General Equilibrium — economy-wide model with optimization
Complementarity Mathematical condition where either price=0 or market clears
Discount rate Rate used to convert future values to present values
Dominant firm Market structure where one large firm sets price, others follow
E3ME Energy-Environment-Economy Model for Europe — macroeconometric alternative to CGE
EPEC Equilibrium Problem with Equilibrium Constraints
ETS Emissions Trading System (cap-and-trade)
Efficiency wage Above-market wage paid to prevent shirking; explains unemployment
Equivalent Variation Welfare measure: money to give before price change to reach new utility
Externality Cost or benefit not reflected in market prices
GAINS Greenhouse Gas and Air Pollution Interactions and Synergies model (IIASA)
GTAP Global Trade Analysis Project — database for CGE models
Hotelling rule Price of exhaustible resource rises at rate of interest
Learning curve Relationship between cumulative production and unit cost
LCOE Levelized Cost of Electricity
LP Linear Programming
MAC Marginal Abatement Cost — cost of reducing one more unit of emissions
MCP Mixed Complementarity Problem — mathematical formulation used to solve CGE equilibrium
MILP Mixed-Integer Linear Programming
Monte Carlo Simulation method using random sampling
Nested CES Hierarchical structure of CES functions for multiple inputs
NLP Nonlinear Programming
Numeraire Good whose price is normalized to 1
OPEC Organization of Petroleum Exporting Countries — oil cartel
Partial equilibrium Analysis of one market holding others constant
Ramsey-Boiteux pricing Setting prices to recover fixed costs while minimizing welfare loss
SAM Social Accounting Matrix — balanced data of economic flows
Shadow price Marginal value of relaxing a constraint
Shapiro-Stiglitz Efficiency wage model explaining involuntary unemployment
Sobol indices Global sensitivity analysis measures
TFP Total Factor Productivity
Time slice Representative period used to approximate temporal variation
URR Ultimate Recoverable Resources
Walrasian equilibrium Price vector where all markets clear simultaneously
Welfare Economic well-being; often measured as utility or equivalent variation

Appendix B: Mathematical Notation

Sets and Indices

Symbol Meaning
$i, j$ Goods/sectors
$f$ Fuels
$r, s$ Regions
$t$ Time periods
$h$ Hours/time slices

Variables

Symbol Meaning Units
$Y$ Output € or physical
$K$ Capital
$L$ Labor persons or hours
$E$ Energy GJ, MWh
$P$ Price €/unit
$W$ Wage €/hour
$r$ Interest rate %
$U$ Utility index
$C$ Consumption
$I$ Investment
$X$ Exports
$M$ Imports
$EMI$ Emissions Mt CO₂
$\tau$ Carbon price €/tCO₂

Parameters

Symbol Meaning
$\sigma$ Elasticity of substitution
$\alpha, \beta$ Share parameters
$\rho$ CES substitution parameter ($\rho = (\sigma-1)/\sigma$)
$\delta$ Depreciation rate
$\epsilon$ Emission coefficient
$\nu$ Weibull heterogeneity parameter
$\mu$ Intangible cost

Appendix C: Key Equations Cheat Sheet

Production

CES Production Function: $$Y = A \left[ \alpha K^{\rho} + (1-\alpha) L^{\rho} \right]^{1/\rho}, \quad \sigma = \frac{1}{1-\rho}$$ Output Y is produced by combining capital K and labor L, where σ controls how easily one can substitute for the other.

Cost Minimization (FOC): $$\frac{K}{L} = \left( \frac{\alpha}{1-\alpha} \cdot \frac{W}{R} \right)^{\sigma}$$ Firms use more capital relative to labor when wages W rise relative to the cost of capital R; σ determines how much they switch.

Demand

Price Elasticity: $$\varepsilon = \frac{\partial Q / Q}{\partial P / P} = \frac{\partial \ln Q}{\partial \ln P}$$ If price rises by 1%, quantity demanded falls by ε%. Inelastic (|ε|<1) means demand barely budges; elastic (|ε|>1) means big response.

Discrete Choice (Logit): $$P_i = \frac{e^{V_i / \mu}}{\sum_j e^{V_j / \mu}}$$ Probability of choosing option i depends on its "attractiveness" V_i relative to all alternatives. Same as softmax in ML.

Equilibrium

Market Clearing: $$Q^{supply}(P^) = Q^{demand}(P^)$$ The equilibrium price P is where buyers want exactly what sellers offer — no excess supply or demand.*

Complementarity: $$0 \leq P \perp (S - D) \geq 0$$ Either price is zero (free good) OR supply equals demand. Can't have both positive price AND excess supply.

Trade

Armington Composite: $$X = \left[ \delta D^{\rho} + (1-\delta) M^{\rho} \right]^{1/\rho}$$ Domestic goods D and imports M are imperfect substitutes. Prevents unrealistic "all-or-nothing" trade swings.

Environment

Emissions: $$EMI_f = \epsilon_f \cdot E_f$$ Emissions from fuel f = emission factor × energy consumed. Coal has high ε, gas has lower ε, renewables have zero.

Effective Fuel Price (with carbon tax): $$P_f^{eff} = P_f + \tau \cdot \epsilon_f$$ Carbon tax τ raises dirty fuels more than clean ones, making low-carbon alternatives relatively cheaper.

Learning

Experience Curve: $$C_t = C_0 \cdot \left( \frac{Q_t}{Q_0} \right)^{-b}, \quad LR = 1 - 2^{-b}$$ Costs fall as cumulative production grows. Learning rate LR = % cost drop per doubling of capacity (e.g., 20% for solar PV).

Capital Dynamics

Stock Update: $$K_{t+1} = (1 - \delta) K_t + I_t$$ Next year's capital = what survives depreciation + new investment. Drives the dynamics in recursive models.

NPV

Net Present Value: $$NPV = \sum_{t=0}^{T} \frac{CF_t}{(1+r)^t}$$ Future cash flows discounted to today. Positive NPV = profitable investment. Used for technology choice in PRIMES.

Resource Economics

Hotelling Rule: $$\frac{dP}{dt} = r \cdot P$$ Price of exhaustible resources rises at the interest rate. If not, arbitrage: everyone would extract now (or wait).

Resource Rent Growth: $$\frac{d(P - MC)}{dt} = r \cdot (P - MC)$$ The profit margin (price minus extraction cost) grows at rate r. Drives long-run oil/gas price dynamics in PROMETHEUS.

Pricing

Ramsey-Boiteux Rule: $$\frac{P_i - MC_i}{P_i} = \frac{k}{\varepsilon_i}$$ To recover fixed costs, charge higher markups to less price-sensitive customers. Used for electricity grid tariffs.

Labor Market

Efficiency Wage (Shapiro-Stiglitz): $$w = w^* \cdot \left(1 + \frac{e}{b + \rho/q}\right)$$ Firms pay above market-clearing wage to discourage shirking. Creates equilibrium unemployment — key feature of GEM-E3.


Appendix D: Bridging Notes — From Physics & ML to E3 Modeling

For readers with a background in computational physics and/or machine learning.

D.1 Statistical Physics → Economic Equilibrium

E3 Concept Physics Analogue Connection
Walrasian equilibrium Thermodynamic equilibrium Both are stable states where no agent/particle has incentive to change; system minimizes a "potential"
Market clearing Detailed balance Flows in = flows out; conservation at each node
CES aggregation Generalized mean / partition function $Y = [\sum \alpha_i X_i^\rho]^{1/\rho}$ interpolates between sum (ρ→1) and min (ρ→-∞), like temperature controlling ensemble behavior
Elasticity of substitution (σ) Inverse "temperature" High σ = agents easily switch (high T, flat distribution); Low σ = locked in (low T, peaked distribution)
Shadow price (λ) Lagrange multiplier Identical math — the marginal "force" enforcing a constraint
Utility maximization Free energy minimization Agents maximize U subject to budget ↔ systems minimize F subject to constraints
SAM balance Conservation laws Row sums = column sums, like current conservation or mass balance

D.2 Computational Physics → CGE Computation

E3 Technique Physics Analogue Connection
Monte Carlo (PROMETHEUS) MC in condensed matter Same idea — sample parameter space, propagate to outputs, build distributions
Solving coupled nonlinear systems Self-consistent field methods CGE solves for prices where all markets clear simultaneously; iterative like SCF
Sensitivity analysis (Sobol) Parameter sweeps Which inputs drive output variance? Same question, same methods
GAMS/PATH solver Newton-Raphson, conjugate gradient Iterative solution of F(x)=0; PATH uses pivoting for complementarity

D.3 Machine Learning → E3 Modeling

E3 Concept ML Analogue Connection
Calibration Training / fitting Adjust parameters so model replicates observed data
Elasticities Hyperparameters Control model behavior; often from literature, not estimated on the SAM
CES production function Parametric model family Like choosing between L1/L2/Huber loss — functional form matters
Discrete choice (logit) Softmax $P_i = e^{V_i}/\sum e^{V_j}$ — identical to softmax in classification
Intangible costs (μ) Regularization / prior Calibrated to match observed behavior; captures "non-financial" factors
Counterfactual simulation What-if analysis Change inputs (policy), observe outputs (welfare, emissions)
Shadow prices Dual variables in constrained optimization scipy.optimize returns these too

D.4 Key Intuition Shortcuts

  • "Zero profit" doesn't mean firms make no money — it means no excess returns above opportunity cost (competitive equilibrium)
  • "Elasticity" is just the log-log slope: $\varepsilon = d\ln Y / d\ln X$
  • "Armington" = "domestic and imported goods are imperfect substitutes" — prevents unrealistic all-or-nothing trade swings
  • "Recursive dynamic" = solve year-by-year, updating capital stocks — no perfect foresight (unlike intertemporal optimization)
  • "Complementarity" = "either the constraint binds OR the shadow price is zero" — like KKT conditions you know from physics optimization

End of E3 Modeling Concepts Primer

GEM-E3: Technical Distillation

General Equilibrium Model for Energy-Economy-Environment


1. Model Identity

Attribute Value
Type Computable General Equilibrium (CGE)
Mathematical Class Mixed Complementarity Problem (MCP)
Temporal Structure Recursive Dynamic
Spatial Coverage Multi-regional (EU-28 + major world regions)
Time Horizon Typically 2020–2070, 5-year steps
Resolution 31 economic sectors (8 energy, 23 non-energy)
Primary Output GDP, prices, welfare (EV), emissions by region/sector
Role in E3 Suite Macro-economic feedback; economy-wide policy impacts

2. Theoretical Foundations

2.1 Walrasian General Equilibrium

GEM-E3 is grounded in Arrow-Debreu general equilibrium theory:

Core Axiom: There exists a price vector p* such that all markets clear simultaneously:

$$ z_i(p^*) = 0 \quad \forall i \in {goods, factors, emissions} $$

where $z_i$ is excess demand in market $i$.

Implications:

  • All agents are price-takers
  • No excess supply or demand in equilibrium
  • Prices carry all information needed for coordination

2.2 Microfoundations

Households: Maximize utility subject to budget constraint

  • Inter-temporal: choose consumption vs. savings
  • Intra-temporal: choose leisure vs. labor, and consumption bundle

Firms: Maximize profit (equivalently, minimize cost) subject to technology

  • Represented by nested CES production functions
  • Zero economic profit in equilibrium (constant returns to scale)

Government: Collects taxes, provides transfers, purchases goods

  • Budget constraint enforced (or deficit financed)

2.3 Deviation from Standard CGE: Labor Market

Unlike Walrasian models assuming full employment, GEM-E3 incorporates involuntary unemployment via the Shapiro-Stiglitz efficiency wage model:

$$ w = w^* \cdot \left(1 + \frac{e}{b + \rho/q}\right) $$

where:

  • $w$ = efficiency wage
  • $w^*$ = market-clearing wage
  • $e$ = effort level required
  • $b$ = unemployment benefits
  • $\rho$ = discount rate
  • $q$ = probability of being caught shirking

Result: Labor market does not clear; unemployment rate is endogenous.


3. Inputs

3.1 Data Requirements

Input Category Source Description
Social Accounting Matrix (SAM) GTAP, Eurostat Base year flows (€bn)
Bilateral Trade Flows GTAP Imports/exports by origin-destination
Energy Balances IEA, Eurostat Physical energy flows (PJ)
Emission Coefficients IPCC, national inventories CO₂, CH₄, N₂O, SO₂, NOx, PM
Elasticities Econometric literature Substitution, trade, labor supply

3.2 Exogenous Drivers

Variable Typical Source Role
Population growth UN projections Labor supply
Autonomous productivity growth Historical trends TFP assumptions
World fossil fuel prices PROMETHEUS model Import prices
Policy instruments Scenario definition Carbon tax, ETS cap, subsidies

3.3 Key Elasticity Parameters

Elasticity Symbol Typical Range Sensitivity
Capital-Labor substitution $\sigma_{KL}$ 0.4–1.0 High
Energy-Value Added substitution $\sigma_{E,VA}$ 0.1–0.5 Very High
Armington (domestic vs. import) $\sigma_A$ 2.0–8.0 High
Intertemporal (consumption smoothing) $\sigma_C$ 0.5–1.0 Medium

4. Outputs

4.1 Macroeconomic Indicators

Output Unit Description
GDP €bn (real) By region and aggregate
Consumption €bn Private, public
Investment €bn By sector
Employment Million persons By sector, with unemployment rate
Trade balance €bn Exports - Imports by region

4.2 Sectoral Results

Output Detail
Output By 31 sectors × regions
Prices Producer, consumer prices by good
Factor use Labor, capital by sector
Energy use Physical units by fuel and sector

4.3 Environmental Indicators

Output Unit
CO₂ emissions Mt CO₂
Other GHGs Mt CO₂-eq
Air pollutants Kt SO₂, NOx, PM
Carbon price €/tCO₂ (shadow price of constraint)

4.4 Welfare Measures

Measure Definition
Equivalent Variation (EV) Income change at old prices giving same utility as new equilibrium
GDP loss/gain % deviation from baseline
Double dividend Whether environmental tax revenue recycling improves welfare

5. Mathematical Formalization

5.1 The Mixed Complementarity Problem (MCP)

GEM-E3 is solved as an MCP, which generalizes the Karush-Kuhn-Tucker (KKT) conditions:

For each market $i$: $$ \begin{aligned} p_i &\geq 0 \ z_i(p) &\geq 0 \ p_i \cdot z_i(p) &= 0 \end{aligned} $$

Interpretation: Either the price is zero (free good) OR the market clears. The complementarity condition prevents both excess supply and positive price.

5.2 Production Technology: Nested CES

Output $Y$ is produced using a nested Constant Elasticity of Substitution (CES) structure:

Top nest (Output): $$ Y = A \left[ \alpha \cdot VA^{\rho} + (1-\alpha) \cdot M^{\rho} \right]^{1/\rho} $$

where $\sigma = 1/(1-\rho)$ is the elasticity of substitution.

Value Added nest: $$ VA = \left[ \beta \cdot K^{\rho_{KL}} + (1-\beta) \cdot L^{\rho_{KL}} \right]^{1/\rho_{KL}} $$

Energy nest (within Materials or separate): $$ E = \left[ \sum_f \gamma_f \cdot E_f^{\rho_E} \right]^{1/\rho_E} $$

where $f \in {coal, oil, gas, electricity}$.

Nesting Structure (typical):

Output (σ ≈ 0)
├── Value Added (σ_KL ≈ 0.5)
│   ├── Capital
│   └── Labor
└── Intermediate Bundle (σ_M ≈ 0.3)
    ├── Energy Bundle (σ_E ≈ 0.5–1.0)
    │   ├── Electricity
    │   └── Fossil Fuels (σ_F ≈ 1.0)
    │       ├── Coal
    │       ├── Oil
    │       └── Gas
    └── Non-Energy Materials (σ_NE ≈ 0.2)

5.3 Consumer Optimization

Utility function (CES over time and goods):

$$ U = \sum_{t=0}^{T} \left(\frac{1}{1+\rho}\right)^t \cdot u(C_t, L_t) $$

where instantaneous utility: $$ u(C, L) = \left[ \alpha C^{\rho_u} + (1-\alpha) L^{\rho_u} \right]^{1/\rho_u} $$

Budget constraint: $$ \sum_t \frac{P_t \cdot C_t}{(1+r)^t} = \sum_t \frac{w_t \cdot \bar{L} + r_t \cdot K_t + Transfers_t}{(1+r)^t} $$

5.4 International Trade: Armington Specification

Domestic goods and imports are imperfect substitutes:

$$ X = \left[ \delta \cdot D^{\rho_A} + (1-\delta) \cdot M^{\rho_A} \right]^{1/\rho_A} $$

Import aggregation (by origin): $$ M = \left[ \sum_r \phi_r \cdot M_r^{\rho_M} \right]^{1/\rho_M} $$

This prevents "bang-bang" specialization and allows for intra-industry trade.

5.5 Emissions and Environmental Policy

Emissions function: $$ EMI_{f,s,r} = \epsilon_f \cdot E_{f,s,r} $$

where $\epsilon_f$ is the emission coefficient (tCO₂/TJ) for fuel $f$.

Carbon pricing (tax or ETS):

The carbon price $\tau$ enters the effective fuel price: $$ P_f^{eff} = P_f + \tau \cdot \epsilon_f $$

Cap-and-trade: $$ \sum_{s,r} EMI_{s,r} \leq \bar{EMI} \quad (\lambda = \text{permit price}) $$

The shadow price $\lambda$ on this constraint is the equilibrium carbon price.

5.6 Recursive Dynamics

Unlike intertemporal models with perfect foresight, GEM-E3 is recursive dynamic:

  1. Solve static equilibrium for year $t$
  2. Update capital stocks: $$ K_{t+1} = (1-\delta) K_t + I_t $$
  3. Solve year $t+1$

Savings rule: Adaptive expectations or fixed savings rate (not Ramsey optimal).


6. Solution Method

6.1 GAMS/MPSGE Implementation

GEM-E3 is implemented in GAMS using the MPSGE (Mathematical Programming System for General Equilibrium) subsystem:

$MODEL:GEM_E3

$SECTORS:
    Y(s,r)      ! Production by sector and region
    C(r)        ! Consumption aggregate
    
$COMMODITIES:
    P(s,r)      ! Goods prices
    W(r)        ! Wage rate
    R(r)        ! Return to capital
    PCO2        ! Carbon permit price

$CONSUMERS:
    HH(r)       ! Household by region

$PROD:Y(s,r) s:0 va:sigma_va(s) e:sigma_e(s)
    O:P(s,r)    Q:output0(s,r)
    I:P(i,r)    Q:input0(i,s,r)
    I:W(r)      Q:labor0(s,r)     va:
    I:R(r)      Q:capital0(s,r)   va:
    I:P(e,r)    Q:energy0(e,s,r)  e:  A:GOVT T:tau(e)

6.2 Solver

  • PATH solver for MCP
  • Convergence criterion: excess demand < tolerance (typically 10⁻⁶)
  • Typical solve time: seconds to minutes per year

7. Calibration

7.1 The Calibration Principle

Assumption: The base year SAM represents an equilibrium.

Procedure:

  1. Set all prices to 1 (numeraire normalization)
  2. Choose functional forms (CES)
  3. Solve for share parameters ($\alpha$, $\beta$, $\gamma$) such that model replicates SAM quantities at unit prices

Example (CES calibration):

Given observed inputs $X_1^0, X_2^0$ and prices $P_1 = P_2 = 1$: $$ \alpha = \frac{X_1^0}{X_1^0 + X_2^0} $$

7.2 Replication Test

A properly calibrated model must exactly replicate the base year when solved with no policy shock.


8. Key Assumptions and Limitations

Assumption Implication
Representative agent per region No within-region inequality
Constant returns to scale Zero pure profits
Perfect competition Price = marginal cost
No money, no financial sector Real economy only
Recursive dynamics No perfect foresight, myopic investment
Armington trade No firm heterogeneity in trade

Known limitations:

  • Elasticities are uncertain → sensitivity analysis essential
  • Comparative statics, not transition dynamics
  • Aggregation hides sectoral heterogeneity

8.1 Closure Rules

CGE models have more potential endogenous variables than equations. To make the system "square" (solvable), some variables must be fixed exogenously. This choice is called a closure rule.

Key closure choices:

Closure Options Policy Implication
Government budget Fixed deficit vs. endogenous taxes Does carbon tax revenue offset other taxes?
Foreign sector Fixed current account vs. flexible exchange rate Does energy price shock affect trade balance or borrowing?
Investment-savings Savings-driven vs. investment-driven Who adjusts when investment demand changes?

Why closures matter: The same policy shock with different closures yields different GDP and employment results. There is no universally "correct" closure—it depends on the policy question and time horizon.

Worked Example: Same Policy, Different Closures

Consider a €50/tCO₂ carbon tax generating €10bn in revenue:

Closure Mechanism Illustrative GDP Impact
Lump-sum recycling Revenue returned as equal transfers to households GDP: -0.5%
Labor tax cut Revenue used to cut payroll taxes GDP: -0.2% (or even +0.1% with efficiency wage effects)
Capital tax cut Revenue used to cut corporate taxes GDP: -0.3%
Deficit reduction Revenue reduces government borrowing GDP: -0.6%

These numbers are illustrative—actual results depend on model calibration and other assumptions. The key point is that the same carbon tax can look costly or nearly costless depending on what you assume happens to the revenue.

Why this matters: When reading GEM-E3 results, always ask: "What closure was used?" Results presented without specifying the closure are incomplete.

GEM-E3's typical approach: Closures are scenario-dependent, but commonly:

  • Government budget balanced via lump-sum transfers or tax adjustment
  • Current account may be fixed or allowed to adjust depending on research question
  • Savings rate follows adaptive expectations (recursive dynamic structure)

9. Connections to Other Models

Model Interface
PRIMES Receives: GDP, sectoral activity. Sends: energy prices, costs
PROMETHEUS Receives: world fuel prices as exogenous boundary conditions
GTAP Uses GTAP database for SAM construction
JRC-GEM-E3 JRC version used for EU Commission impact assessments

10. Key References

  1. Capros, P. et al. (2013). "GEM-E3 Model Documentation." E3MLab Technical Report.
  2. Böhringer, C., Rutherford, T. (2008). "Combining bottom-up and top-down." Energy Economics.
  3. Sue Wing, I. (2004). "Computable General Equilibrium Models." MIT Technical Note 6.
  4. Armington, P. (1969). "A Theory of Demand for Products Distinguished by Place of Production." IMF Staff Papers.

PRIMES: Technical Distillation

Price-Induced Market Equilibrium System


1. Model Identity

Attribute Value
Type Partial Equilibrium (Energy Sector)
Mathematical Class EPEC (Equilibrium Problem with Equilibrium Constraints) / Hybrid
Temporal Structure Mixed: Intertemporal optimization (supply) + Dynamic simulation (demand)
Spatial Coverage EU Member States + UK, candidate countries
Time Horizon Typically 2020–2070, 5-year steps
Resolution High technological detail (hundreds of technologies)
Primary Output Energy balances, technology mix, energy prices, investment
Role in E3 Suite Detailed energy sector projections; technology pathways

2. Theoretical Foundations

2.1 Partial Equilibrium Framework

Unlike CGE, PRIMES models only the energy sector in detail, taking the rest of the economy as exogenous:

Exogenous from GEM-E3:

  • GDP growth by country
  • Sectoral value added (industry, services)
  • Population, household numbers

Endogenous within PRIMES:

  • Energy demand by fuel and sector
  • Technology choices (stock turnover)
  • Energy supply, transformation, prices
  • Infrastructure investment

2.2 Hybrid Modeling Philosophy

PRIMES is "hybrid" because it combines:

  1. Engineering/Technology Models (bottom-up)

    • Explicit representation of technologies
    • Physical constraints (efficiency, capacity, ramping)
  2. Economic/Behavioral Models (top-down)

    • Price-responsive demand
    • Consumer heterogeneity
    • Market equilibrium conditions

2.3 Theoretical Basis by Module

Module Theoretical Approach
Demand (Residential, Tertiary, Industry) Discrete choice theory (McFadden)
Transport Nested logit models, generalized cost
Power Generation Least-cost optimization (LP/MILP)
Refining, Gas Supply Market equilibrium, Stackelberg games
Pricing Ramsey-Boiteux (regulated), marginal cost (wholesale)

2.4 Why Transitions Are Slow: Two Distinct Mechanisms

PRIMES produces gradual transitions for two fundamentally different reasons. Understanding the distinction matters for policy analysis:

1. Capital Inertia (Stock Dynamics)

  • Existing equipment has remaining economic/physical lifetime
  • A power plant built in 2020 runs until 2050+ regardless of new policy
  • Early retirement is possible but costly (stranded assets)
  • Policy implication: Even with strong price signals, old stock persists. Carbon pricing affects new investment decisions, not existing capacity.

2. Adoption Heterogeneity (Discrete Choice)

  • Even for new purchases, not everyone adopts the lowest-cost option simultaneously
  • People differ in preferences, constraints, information, risk tolerance
  • Captured via Weibull/logit distributions over generalized costs
  • Policy implication: Market shares shift gradually even for new purchases. A carbon tax doesn't make everyone buy EVs—it shifts the distribution of choices.
Mechanism What It Affects Time Scale Policy Lever
Inertia Existing stock retirement Decades (equipment lifetimes) Early retirement incentives, stranded asset compensation
Heterogeneity New purchase decisions Years (adoption diffusion) Price signals, information campaigns, infrastructure

These mechanisms stack: slow turnover of existing stock + gradual adoption of new technologies = multi-decade transitions.


3. Inputs

3.1 Macroeconomic Drivers (from GEM-E3)

Input Source Description
GDP GEM-E3 Real GDP by country, scenario
Sectoral output GEM-E3 Value added by NACE sector
Population Eurostat projections Persons, households
Discount rates Scenario assumption Social vs. private (4-12%)

3.2 Energy System Data

Input Source Description
Energy balances Eurostat, IEA Base year physical flows
Installed capacity ENTSO-E, Platts Power plants, refineries
Technology database IEA, IRENA, internal Costs, efficiencies, lifetimes
Fuel prices PROMETHEUS World oil, gas, coal prices
CO₂ prices Policy scenario ETS price trajectory

3.3 Technology Parameters

Parameter Examples Uncertainty
Investment cost €/kW for wind, solar, nuclear Medium-High
Fixed O&M €/kW/year Low
Variable O&M €/MWh Low
Efficiency % (thermal plants) Low
Capacity factor % (renewables) Medium
Lifetime Years Low
Learning rate % cost reduction per doubling High

3.4 Policy Inputs

Policy Type Implementation
Carbon price Tax or ETS cap + price floor
Renewable targets Constraint on RES share
Efficiency standards Minimum efficiency for appliances, vehicles
Phase-out dates Nuclear, coal exit years
Subsidies Feed-in tariffs, investment support

4. Outputs

4.1 Energy Balances

Output Detail
Final energy demand By sector × fuel × country × year
Primary energy supply By source (domestic, imports)
Transformation Power, heat, refining losses
Energy intensity Energy/GDP, energy/capita

4.2 Technology Stocks

Output Detail
Installed capacity GW by technology × country × year
Generation mix TWh by technology
Fleet composition Million vehicles by type
Building stock m² by efficiency class
Industrial processes Technology shares

4.3 Prices

Output Unit
Wholesale electricity price €/MWh
Retail electricity price €/kWh (by sector)
Natural gas price €/MWh
Oil product prices €/liter
Heat prices €/GJ

4.4 Investment and Costs

Output Description
Investment expenditure €bn/year by sector
Total system cost NPV of all costs
Marginal abatement cost €/tCO₂ avoided
Stranded assets Value of early retirements

4.5 Emissions

Output Coverage
CO₂ by sector and fuel Mt CO₂/year
Other GHGs CH₄ from gas, N₂O from transport
Air pollutants SO₂, NOx, PM (linked to fuel use)

5. Mathematical Formalization

5.1 Overall Structure: EPEC

PRIMES solves an Equilibrium Problem with Equilibrium Constraints (EPEC):

Multiple agents (producers, consumers) each solve their own optimization problem, and the model finds market-clearing prices:

$$ \text{Find } (p^_, q^_) \text{ such that } \sum_i q_i^{demand}(p^_) = \sum_j q_j^{supply}(p^_) $$

where each agent's quantity is the solution to their own optimization.

5.2 Demand Side: Discrete Choice Models

5.2.1 Useful Energy Demand

First, calculate demand for energy services (not fuels):

$$ UE_{s,r,t} = f(VA_{s,r,t}, P_{UE}, AEEI_t) $$

where:

  • $UE$ = useful energy (e.g., process heat in GJ)
  • $VA$ = sectoral value added (from GEM-E3)
  • $P_{UE}$ = price of useful energy
  • $AEEI$ = autonomous energy efficiency improvement

5.2.2 Technology Choice: Weibull Distribution

Consumers don't all choose the lowest-cost option. Market shares follow a Weibull distribution:

$$ S_i = \frac{e^{-\nu \cdot C_i}}{\sum_j e^{-\nu \cdot C_j}} $$

where:

  • $S_i$ = market share of technology $i$
  • $C_i$ = generalized cost (not just financial)
  • $\nu$ = parameter controlling heterogeneity

Generalized cost includes: $$ C_i = \underbrace{CAPEX_i + OPEX_i}{\text{engineering cost}} + \underbrace{\mu_i}{\text{intangible cost (risk, hassle)}} $$

The intangible cost $\mu_i$ captures:

  • Risk aversion toward new technologies
  • Hidden costs (installation complexity)
  • Behavioral inertia

5.2.3 Nested Logit (Transport)

Transport mode and vehicle choice uses nested logit:

$$ P(\text{mode } m | \text{trip type } t) = \frac{e^{V_m / \lambda}}{\sum_{m'} e^{V_{m'} / \lambda}} $$

where $V_m$ is the systematic utility: $$ V_m = \beta_0 + \beta_1 \cdot \text{cost}_m + \beta_2 \cdot \text{time}_m + \beta_3 \cdot \text{comfort}_m $$

5.3 Supply Side: Cost Minimization

5.3.1 Power Sector Objective

Minimize total discounted system cost:

$$ \min \sum_{t=0}^{T} \frac{1}{(1+r)^t} \left[ \sum_i (IC_i \cdot \Delta K_{i,t} + FC_i \cdot K_{i,t} + VC_i \cdot G_{i,t}) \right] $$

where:

  • $IC_i$ = investment cost (€/kW)
  • $FC_i$ = fixed O&M (€/kW/year)
  • $VC_i$ = variable cost (€/MWh)
  • $K_{i,t}$ = capacity of technology $i$ in year $t$
  • $G_{i,t}$ = generation (MWh)

5.3.2 Key Constraints

Demand satisfaction: $$ \sum_i G_{i,t,h} = D_{t,h} \quad \forall t, h $$

Capacity constraint: $$ G_{i,t,h} \leq CF_{i,h} \cdot K_{i,t} \quad \forall i, t, h $$

where $CF_{i,h}$ is the capacity factor in hour $h$.

Ramping constraints: $$ |G_{i,t,h+1} - G_{i,t,h}| \leq RR_i \cdot K_{i,t} $$

Reserve margin: $$ \sum_i AvailCap_{i,t} \geq (1 + \xi) \cdot PeakDemand_t $$

Renewable portfolio standard: $$ \frac{\sum_{i \in RES} G_{i,t}}{\sum_i G_{i,t}} \geq \theta_t $$

5.3.3 Investment Decision

New capacity is built when the Net Present Value is positive:

$$ NPV_i = \sum_{t=0}^{L_i} \frac{R_{i,t} - C_{i,t}}{(1+r)^t} - IC_i > 0 $$

where $R_{i,t}$ is expected revenue (price × generation).

5.4 Pricing Mechanisms

5.4.1 Wholesale Electricity: Marginal Cost

The wholesale price equals the shadow price of the demand constraint:

$$ P_{wholesale,h} = \lambda_h^{demand} $$

This equals the marginal cost of the most expensive unit dispatched.

5.4.2 Retail Pricing: Ramsey-Boiteux

For regulated infrastructure (grids), prices are set to recover fixed costs while minimizing welfare loss:

$$ \frac{P_i - MC_i}{P_i} = \frac{k}{\epsilon_i} $$

where:

  • $\epsilon_i$ = price elasticity of demand for consumer class $i$
  • $k$ = constant ensuring cost recovery

Interpretation: Charge higher markups to consumers with lower elasticity (they'll reduce demand less).

5.4.3 Retail Price Decomposition

$$ P_{retail} = P_{wholesale} + T_{network} + T_{policy} + Taxes $$

where:

  • $T_{network}$ = grid tariffs
  • $T_{policy}$ = RES support, capacity payments
  • $Taxes$ = VAT, energy taxes

5.5 Temporal Resolution

PRIMES represents intra-annual variation through:

Load duration curve: Hours ranked by demand level Time slices: Typically 12-24 representative periods per year

$$ \text{Periods} = {Peak, Shoulder, OffPeak} \times {Winter, Summer, Intermediate} \times {Day, Night} $$

This captures:

  • Diurnal patterns (solar availability)
  • Seasonal patterns (heating/cooling demand)
  • Peak vs. baseload operation

6. Solution Method

6.1 Iterative Market Equilibrium

EPEC is the conceptual umbrella—multiple agents each solving their own optimization, with market clearing linking them. Operationally, PRIMES implements this as modular equilibrium iteration with embedded optimizations:

PRIMES doesn't solve a single monolithic optimization. It iterates between:

  1. Demand modules calculate quantities given prices
  2. Supply modules calculate prices given quantities
  3. Check convergence; if not, update and repeat
Initialize prices P⁰

For iteration k:
    1. Demand modules: Q^k = D(P^{k-1})
    2. Supply modules: P^k = S(Q^k)
    3. If ||P^k - P^{k-1}|| < ε: STOP
    4. Else: k = k+1

6.2 GAMS Implementation

PRIMES is implemented in GAMS with:

  • Demand modules as simulation/econometric equations
  • Supply modules as LP/MILP optimization
  • Master loop controlling iteration

6.3 Computational Complexity

Component Method Solve Time
Demand modules Simulation Fast (seconds)
Power module LP/MILP Medium (minutes)
Full model iteration Market equilibrium Hours
All EU countries + years Full scenario 1-2 days

7. Calibration

7.1 Base Year Calibration

The model must replicate Eurostat energy balances for the base year:

  1. Adjust technology shares to match observed generation mix
  2. Calibrate demand functions to observed consumption
  3. Set intangible costs $\mu_i$ to match observed technology adoption rates

7.2 Validation

Metric Validation Source
Historical backcasting Replicate 2010-2020 with historical inputs
Cross-model comparison Compare with TIMES, MESSAGE
Expert review Sense-check technology pathways

8. Key Assumptions and Limitations

Assumption Implication
Exogenous GDP No feedback from energy costs to macroeconomy (handled by GEM-E3 coupling)
Perfect foresight (supply) Investors know future prices
Myopic consumers (demand) Households don't optimize intertemporally
No market power Perfect competition in most markets
Representative consumers Within each class, homogeneous behavior

Known limitations:

  • Intangible costs are calibrated, not estimated
  • Hourly resolution approximated by time slices
  • Technology learning rates uncertain
  • Behavioral change beyond technology adoption not fully captured

9. Connections to Other Models

Model Interface Direction
GEM-E3 GDP, sectoral activity Receives
GEM-E3 Energy prices, system costs Sends
PROMETHEUS World fuel prices Receives
E3ME Alternative macro driver Can substitute for GEM-E3
GAINS Air pollutant costs Can link

Coupling with GEM-E3

The coupling iteration:

GEM-E3: GDP_t → PRIMES
PRIMES: Energy system → Energy prices_t
Energy prices_t → GEM-E3
GEM-E3: GDP_{t+1} → ...

Convergence when $|GDP_{iteration} - GDP_{iteration-1}| &lt; \epsilon$


10. Comparison with Alternative Energy Models

Feature PRIMES TIMES/MARKAL OSeMOSYS
Equilibrium Partial None (cost min) None (cost min)
Demand Behavioral Elastic Fixed
Pricing Endogenous Shadow prices Shadow prices
Scope EU focus Flexible Flexible
Openness Proprietary Commercial Open source

11. Key References

  1. E3Modelling (2018). "The PRIMES Model 2018." Technical documentation.
  2. Capros, P. et al. (2014). "Description of models and scenarios used to assess European decarbonisation pathways." Energy Strategy Reviews.
  3. McFadden, D. (1974). "Conditional logit analysis of qualitative choice behavior." Frontiers in Econometrics.
  4. Ramsey, F. (1927). "A Contribution to the Theory of Taxation." Economic Journal.

PROMETHEUS: Technical Distillation

Stochastic World Energy Model


1. Model Identity

Attribute Value
Type Stochastic Simulation Model
Mathematical Class Non-linear equation system + Monte Carlo
Temporal Structure Dynamic simulation (annual steps)
Spatial Coverage Global (world regions)
Time Horizon Typically 2020–2070, annual steps
Resolution Aggregate (major fuels × world regions)
Primary Output Probability distributions of world fuel prices
Role in E3 Suite Boundary condition generator; uncertainty quantification

2. Theoretical Foundations

2.1 The Problem of Uncertainty

Energy system projections face deep uncertainty in:

  • Fossil fuel resource availability
  • Technology development (costs, performance)
  • Economic growth in emerging economies
  • Policy evolution globally

PROMETHEUS addresses this by:

  1. Modeling key parameters as probability distributions rather than point estimates
  2. Running Monte Carlo simulations to propagate uncertainty
  3. Producing probabilistic forecasts rather than single scenarios

2.1.1 Structure Shapes Uncertainty

PROMETHEUS is not just a Monte Carlo wrapper that passes random inputs through a black box. The value lies in how structural features of energy markets interact with parameter uncertainty:

Structural Feature How It Shapes Uncertainty
Depletion dynamics Uncertainty in URR compounds over time—small differences in reserves lead to divergent long-run price paths
OPEC behavior Strategic responses amplify or dampen shocks—a demand shock triggers supply response that feeds back
Demand lags Partial adjustment means prices overshoot and then correct—volatility patterns emerge from structure
Learning curves Uncertain learning rates create path dependence—early deployment affects long-run costs

The insight isn't the distribution itself but how structural features propagate and transform input uncertainty into output uncertainty.

2.2 Theoretical Basis

2.2.1 Supply: Hotelling-style Resource Economics

Oil and gas supply follows principles from exhaustible resource theory:

$$ \frac{\partial P}{\partial t} = r \cdot P - \frac{\partial MC}{\partial Q} $$

where:

  • $P$ = resource price
  • $r$ = discount rate
  • $MC$ = marginal extraction cost
  • $Q$ = cumulative extraction

Key insight: As resources deplete, extraction moves to more expensive sources, driving up prices.

2.2.2 Demand: Econometric Relationships

Demand is modeled using reduced-form econometric equations:

$$ \ln(D_{f,r,t}) = \alpha + \beta_1 \ln(GDP_{r,t}) + \beta_2 \ln(P_{f,t}) + \beta_3 \ln(D_{f,r,t-1}) + \epsilon $$

Characteristics:

  • Log-log specification (constant elasticities)
  • Lagged dependent variable (partial adjustment)
  • Estimated from historical data (1970-present)

2.2.3 Technology: Learning Curves with Uncertainty

Technology costs follow experience curves:

$$ C_t = C_0 \cdot \left(\frac{Q_t}{Q_0}\right)^{-b} $$

where $b = -\ln(1-LR)/\ln(2)$ and $LR$ is the learning rate.

PROMETHEUS innovation: The learning rate $LR$ is itself a random variable:

$$ LR \sim \mathcal{N}(\mu_{LR}, \sigma_{LR}^2) $$


3. Inputs

3.1 Stochastic Parameters (Distributions)

Parameter Distribution Uncertainty Source
Oil URR (Ultimate Recoverable Resources) Triangular/Lognormal Geological estimates vary
Gas URR Triangular/Lognormal Same
Coal resources Triangular Less uncertain
GDP growth (non-OECD) Normal Economic forecasts diverge
Technology learning rates Normal/Triangular Historical variance
Demand elasticities Normal Econometric estimation error

3.2 Deterministic Inputs

Input Source Description
Historical data IEA, BP Prices, production, consumption (1970-present)
Proven reserves OPEC, EIA Current known resources
Econometric estimates Literature Central elasticity values
Policy assumptions Scenario Global climate policy strength

3.3 Scenario Dimensions

PROMETHEUS typically explores scenarios along:

  1. Resource availability: Pessimistic → Optimistic
  2. Demand growth: Low → High
  3. Technology progress: Slow → Fast
  4. Climate policy: Weak → Strong

4. Outputs

4.1 Primary Outputs: Price Distributions

Output Format Use
Oil price $/barrel, probability distribution PRIMES, GEM-E3 input
Gas price (regional) $/MMBtu, probability distribution PRIMES input
Coal price $/ton, probability distribution PRIMES input

Output format:

  • Mean, median, standard deviation
  • Percentiles (P10, P50, P90)
  • Full empirical distribution from Monte Carlo

4.2 Secondary Outputs

Output Description
Global primary energy demand By fuel and region
Production by region Oil, gas, coal extraction
Trade flows Net exports/imports by region
Depletion rates Remaining resources over time

4.3 Uncertainty Quantification

Metric Description
Variance decomposition Which input uncertainties drive output variance
Sensitivity indices Sobol indices for global sensitivity
Confidence intervals 90% CI for price projections

5. Mathematical Formalization

5.1 Overall Model Structure

PROMETHEUS consists of:

  1. Supply module for each fossil fuel
  2. Demand module for each region
  3. Market clearing condition
  4. Monte Carlo wrapper for uncertainty propagation

5.2 Supply Functions

5.2.1 Oil and Gas Supply (Non-linear Cost Curves)

Supply is derived from a cost-resource curve:

$$ C(R) = C_0 + \gamma \cdot \left(\frac{R}{URR}\right)^\eta $$

where:

  • $C(R)$ = marginal cost when cumulative extraction is $R$
  • $C_0$ = initial (lowest) extraction cost
  • $URR$ = ultimate recoverable resources (uncertain)
  • $\gamma, \eta$ = curve shape parameters

Production decision: Extract where marginal revenue ≥ marginal cost: $$ Q_t = \min\left{Q^{capacity}_t, Q : P_t = C'(R_t + Q)\right} $$

5.2.2 OPEC Behavior

OPEC is modeled as a dominant firm with competitive fringe:

$$ Q^{OPEC}_t = D_t(P_t) - S^{fringe}_t(P_t) $$

OPEC sets price to maximize discounted profits: $$ \max_{P_t} \sum_{t} \frac{(P_t - MC^{OPEC}_t) \cdot Q^{OPEC}_t}{(1+r)^t} $$

Subject to: market share constraints, capacity limits, depletion dynamics.

5.2.3 Coal Supply

Coal supply is more competitive (no cartel), modeled as:

$$ S^{coal}_t = f(P^{coal}_t, Capacity_t, TransportCosts) $$

5.3 Demand Functions

5.3.1 Regional Demand (Econometric)

For region $r$ and fuel $f$:

$$ \ln D_{f,r,t} = \alpha_{f,r} + \beta^{GDP}_{f,r} \ln GDP_{r,t} + \beta^{P}_{f,r} \ln P_{f,t} + \beta^{lag}_{f,r} \ln D_{f,r,t-1} $$

Estimated parameters:

Fuel Income elasticity ($\beta^{GDP}$) Price elasticity ($\beta^P$)
Oil 0.4–0.8 -0.1 to -0.3
Gas 0.6–1.0 -0.2 to -0.5
Coal 0.3–0.6 -0.1 to -0.2

5.3.2 Inter-fuel Substitution

Long-run substitution between fuels:

$$ \frac{D_{oil}}{D_{gas}} = \kappa \cdot \left(\frac{P_{gas}}{P_{oil}}\right)^{\sigma_{sub}} $$

where $\sigma_{sub}$ is the substitution elasticity (typically 0.5–2.0).

5.4 Market Clearing

For each fuel $f$ and time $t$:

$$ \sum_r D_{f,r,t}(P_{f,t}) = \sum_r S_{f,r,t}(P_{f,t}) $$

Solution: Find $P^*_{f,t}$ that clears the market.

5.5 Monte Carlo Implementation

5.5.1 Sampling

For each Monte Carlo iteration $m = 1, \ldots, M$:

  1. Draw random parameters: $$ \theta^{(m)} \sim \pi(\theta) $$

where $\theta = (URR^{oil}, URR^{gas}, LR^{renewables}, \beta^{GDP}, \ldots)$

  1. Solve model: Find equilibrium prices $P^{(m)}_t$ for all $t$

  2. Store results: $P^{(m)}_t$ becomes one sample in the output distribution

5.5.2 Number of Iterations

Typically $M = 1000$ to $10000$ iterations, chosen to achieve: $$ SE(\hat{\mu}) = \frac{\hat{\sigma}}{\sqrt{M}} < \epsilon $$

where $\epsilon$ is the desired precision (e.g., $1/barrel for oil price).

5.5.3 Latin Hypercube Sampling (LHS)

To improve efficiency, PROMETHEUS uses Latin Hypercube Sampling rather than simple random sampling:

  1. Divide each parameter's range into $M$ equal-probability intervals
  2. Sample exactly once from each interval
  3. Randomly pair samples across parameters

Advantage: Better coverage of parameter space with fewer iterations.

5.6 Solving the Stochastic System

For each Monte Carlo draw:

Input: θ^(m) = {URR, elasticities, growth rates, ...}

For t = t_0 to T:
    1. Update GDP: GDP_t = GDP_{t-1} × (1 + g_t)
    2. Update resources: R_t = R_{t-1} + Q_{t-1}
    3. Solve market clearing:
       Find P_t such that D(P_t) = S(P_t)
    4. Compute quantities: Q_t = D(P_t)

Output: {P_t}_{t=t_0}^T for this iteration

5.7 Uncertainty Quantification

5.7.1 Output Statistics

From $M$ price trajectories ${P^{(m)}_t}$:

Mean: $\hat{\mu}_t = \frac{1}{M} \sum_m P^{(m)}_t$

Variance: $\hat{\sigma}^2_t = \frac{1}{M-1} \sum_m (P^{(m)}_t - \hat{\mu}_t)^2$

Percentiles: $P_{10,t}, P_{50,t}, P_{90,t}$ from empirical distribution

5.7.2 Sensitivity Analysis: Sobol Indices

To identify which uncertain parameters drive output variance:

First-order index: $$ S_i = \frac{V[\mathbb{E}[Y | X_i]]}{V[Y]} $$

Measures the fraction of output variance explained by parameter $X_i$ alone.

Total-effect index: $$ S_{T,i} = 1 - \frac{V[\mathbb{E}[Y | X_{-i}]]}{V[Y]} $$

Includes all interactions involving $X_i$.

Typical findings:

Parameter First-order $S_i$
Oil URR 0.2–0.4
GDP growth 0.1–0.3
OPEC behavior 0.1–0.2
Demand elasticity 0.05–0.15

6. Solution Method

6.1 Implementation

PROMETHEUS is typically implemented in:

  • GAMS for the core market model
  • R or Python for Monte Carlo wrapper and post-processing
  • Excel/VBA for parameter input management

6.2 Computational Requirements

Component Time
Single deterministic run Seconds
Full Monte Carlo (5000 iterations) Minutes to hours
Sensitivity analysis Hours (requires many runs)

6.3 Solver

Market clearing equations solved using:

  • Newton-Raphson for single markets
  • PATH solver for simultaneous multi-fuel equilibrium

7. Calibration

7.1 Historical Calibration

  1. Backcast test: Run model for 1990–2020 with historical GDP
  2. Compare simulated prices to actual IEA/EIA prices
  3. Adjust parameters until historical fit is acceptable

7.2 Parameter Estimation

Parameter Estimation Method
Demand elasticities Time-series regression
Supply cost curves Engineering cost data + resource estimates
OPEC behavior Calibration to historical market share

7.3 Distribution Specification

Challenge: Specify probability distributions for uncertain parameters.

Approaches:

  1. Expert elicitation: Ask experts for min/max/most likely
  2. Historical variance: Use observed volatility
  3. Literature review: Combine multiple estimates

8. Key Assumptions and Limitations

Assumption Implication
Reduced-form demand No structural technology modeling
OPEC as rational actor May not capture political decisions
Independent parameters Correlation structure simplified
No feedback from prices to GDP Handled by GEM-E3 coupling
Annual resolution No intra-year price volatility

Known limitations:

  • Black swan events (wars, revolutions) not modeled
  • Correlation between parameters may be underestimated
  • Technology disruptions (shale revolution) hard to predict
  • Political factors (sanctions, OPEC+ decisions) exogenous

9. Connections to Other Models

Model Interface Frequency
PRIMES Oil, gas, coal prices Annual, probabilistic
GEM-E3 World fuel prices Annual, probabilistic
IEA WEO Comparison/validation External benchmark

9.1 How Outputs Are Used

Deterministic runs (PRIMES/GEM-E3):

  • Use P50 (median) price trajectory as central case
  • Run additional scenarios at P10, P90 for sensitivity

Probabilistic analysis:

  • Feed distribution into stochastic version of PRIMES (if available)
  • Report results as ranges, not point estimates

10. Comparison with Alternative Models

Feature PROMETHEUS IEA WEO EIA IEO OPEC WOO
Stochastic ✅ Full MC ❌ Scenarios ❌ Scenarios ❌ Scenarios
Behavioral OPEC Partial
Learning curves ✅ Uncertain ✅ Fixed ✅ Fixed Limited
Open source

PROMETHEUS advantage: Explicit uncertainty quantification vs. scenario-based approaches.


11. Practical Usage Guidance

11.1 Interpreting Outputs

Don't:

  • Treat mean as a forecast
  • Ignore the distribution width
  • Say "PROMETHEUS predicts X"

Do:

  • Report ranges (e.g., "oil prices in 2040: $60–120/barrel with 80% probability")
  • Use for stress-testing policies under price uncertainty
  • Identify which uncertainties matter most (via sensitivity analysis)

11.1.1 Communicating P10/P50/P90 to Policymakers

Percentile Meaning Use In Policy Discussion
P50 Median—50% chance above, 50% below Central planning assumption; "our baseline"
P10 10th percentile—90% chance of being higher Downside stress test; "even if prices are low..."
P90 90th percentile—90% chance of being lower Upside stress test; "even if prices are high..."

Framing suggestions:

  • ❌ "Oil will cost $80/barrel in 2040"
  • ✅ "There's an 80% chance oil prices fall between $50 and $120/barrel in 2040, with $80 as the median estimate"
  • ✅ "Our policy remains cost-effective even at P90 prices"
  • ✅ "The key uncertainty is not the price level but whether OPEC accommodates or restricts supply"

Note: P10/P90 bounds the 80% confidence interval, not 90%. For 90% CI, use P5/P95.

11.2 Typical Results

Horizon Oil Price Range (P10–P90) Key Driver of Uncertainty
2030 $50–90/barrel OPEC behavior, demand growth
2050 $40–150/barrel URR, technology, climate policy
2070 $30–200/barrel Deep uncertainty dominates

12. Key References

  1. E3Modelling (2018). "The PROMETHEUS Model." Technical documentation.
  2. Hotelling, H. (1931). "The Economics of Exhaustible Resources." Journal of Political Economy.
  3. Kaufmann, R.K. (1995). "Econometric models of energy demand." Energy Economics.
  4. Sobol, I.M. (2001). "Global sensitivity indices for nonlinear mathematical models." Mathematics and Computers in Simulation.
  5. McKay, M.D., Beckman, R.J., Conover, W.J. (1979). "A Comparison of Three Methods for Selecting Values of Input Variables." Technometrics.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment