Equilíbrio Geral - Trocas

Autor
Afiliação

Roney Fraga Souza

Universidade Federal de Mato Grosso

Data de Publicação

Invalid Date

Por onde começar?

Apresentação interativa: Use as setas de navegação ou as teclas ← → para navegar entre os slides.

Abrir em tela cheia, ou acessar na pequena janela abaixo ↓.

Considere que a oferta anual de soja pelo Brasil no mercado internacional é dada por \(Q=\frac{P}{2} - 5\), onde \(5 ≤ Q ≤ 100\) e \(Q\) é empresso em MMtoneladas (milhões de toneladas) e \(p\) é o preço em $/tonelada. A demanda de soja pela mercado norte-americano é dada por \(P=180-1.8Q\). Encontre a quantidade de soja que será exportada e o preço da tonelada.

Desenvolvimento Teórico

Conceitos Fundamentais

Equilíbrio de mercado ocorre quando a quantidade ofertada iguala-se à quantidade demandada a um determinado preço. Matematicamente:

\[Q_o(P) = Q_d(P)\]

Onde:

  • \(Q_o(P)\) é a função de oferta
  • \(Q_d(P)\) é a função de demanda
  • \(P\) é o preço de equilíbrio

Funções do Problema

Oferta do Brasil: \(Q = \frac{P}{2} - 5\)

Esta é uma função de oferta linear onde:

  • O intercepto vertical (preço mínimo) ocorre quando \(Q = 0\): \(P = 10\)
  • A inclinação indica que a cada aumento de \(2\) no preço, a quantidade ofertada aumenta em \(1\) unidade

Demanda dos EUA: \(P = 180 - 1.8Q\)

Esta é uma função de demanda linear onde:

  • O preço máximo (intercepto vertical) é \(P = 180\) quando \(Q = 0\)
  • A inclinação negativa indica que a cada aumento de \(1\) unidade na quantidade, o preço diminui \(1.8\)

Formalização Matemática

Passo a Passo da Resolução

Passo 1: Igualar oferta e demanda

Temos:

  • Oferta: \(Q = \frac{P}{2} - 5\)
  • Demanda: \(P = 180 - 1.8Q\)

Substituindo a oferta na demanda:

\[P = 180 - 1.8\left(\frac{P}{2} - 5\right)\]

Passo 2: Resolver para \(P\)

\[P = 180 - 1.8\left(\frac{P}{2}\right) + 1.8 \times 5\] \[P = 180 - 0.9P + 9\] \[P + 0.9P = 189\] \[1.9P = 189\] \[P^* = \frac{189}{1.9}\] \[P^* = 99.47\]

Passo 3: Encontrar \(Q^*\)

Substituindo \(P^*\) na função de oferta:

\[Q^* = \frac{99.47}{2} - 5\] \[Q^* = 49.735 - 5\] \[Q^* = 44.735\]

Passo 4: Verificação

Substituindo \(Q^*\) na função de demanda:

\[P = 180 - 1.8 \times 44.735\] \[P = 180 - 80.523\] \[P = 99.47\]

Interpretação Econômica

  • Preço de equilíbrio: \(P^* = \$99.47\) por tonelada
  • Quantidade de equilíbrio: \(Q^* = 44.735\) milhões de toneladas
  • Verificação de restrições: \(5 ≤ Q^* ≤ 100\)

O preço de equilíbrio está acima do preço mínimo de oferta (\(\$10\)), garantindo que os produtores brasileiros tenham incentivo para ofertar soja no mercado internacional.

Exemplos Numéricos

Análise de Sensibilidade

Vamos analisar o comportamento das funções em diferentes pontos:

Preço (\(P\)) Oferta (\(Q_o\)) Demanda (\(Q_d\)) Excesso
$50 20 72.22 -52.22 (escassez)
$80 35 55.56 -20.56 (escassez)
$99.47 44.735 44.735 0 (equilíbrio)
$120 55 33.33 +21.67 (excesso)
$150 70 16.67 +53.33 (excesso)

Implementação em R

Código
# Carregar bibliotecas necessárias
suppressPackageStartupMessages({
  library(ggplot2)
  library(dplyr)
  library(tidyr)
  library(scales)
})

# 1. Definir parâmetros e funções
preco_min_oferta <- 10
preco_max_demanda <- 180

# Função de oferta: Q = P/2 - 5
oferta <- function(preco) {
  q <- preco/2 - 5
  # Garantir que Q esteja no domínio válido
  pmax(pmin(q, 100), 0)
}

# Função de demanda: P = 180 - 1.8Q
demanda <- function(quantidade) {
  p <- 180 - 1.8 * quantidade
  # Garantir que P seja não-negativo
  pmax(p, 0)
}

# Função inversa da demanda: Q = (180 - P)/1.8
demanda_inversa <- function(preco) {
  q <- (180 - preco) / 1.8
  pmax(q, 0)
}

# 2. Calcular equilíbrio
# Encontrar P* e Q* numericamente
precos <- seq(10, 180, by = 0.01)
diferencas <- oferta(precos) - demanda_inversa(precos)
indice_equilibrio <- which.min(abs(diferencas))

preco_equilibrio <- precos[indice_equilibrio]
quantidade_equilibrio <- oferta(preco_equilibrio)

# cat("Preço de equilíbrio (P*):", round(preco_equilibrio, 2), "\n")
# cat("Quantidade de equilíbrio (Q*):", round(quantidade_equilibrio, 3), "\n")

# 3. Criar dados para visualização
dados_grafico <- tibble::tibble(
  preco = seq(0, 180, by = 1)
) |>
  dplyr::mutate(
    oferta = oferta(preco),
    demanda = demanda_inversa(preco)
  ) |>
  tidyr::pivot_longer(
    cols = c(oferta, demanda),
    names_to = "tipo",
    values_to = "quantidade"
  )

# 4. Visualizar equilíbrio
grafico_equilibrio <- ggplot2::ggplot(dados_grafico, ggplot2::aes(x = quantidade, y = preco, color = tipo)) +
  ggplot2::geom_line(linewidth = 1.2) +
  ggplot2::geom_point(
    data = tibble::tibble(
      quantidade = quantidade_equilibrio,
      preco = preco_equilibrio,
      tipo = "Equilíbrio"
    ),
    ggplot2::aes(x = quantidade, y = preco),
    color = "red",
    size = 4,
    shape = 17
  ) +
  ggplot2::geom_hline(yintercept = preco_equilibrio, linetype = "dashed", color = "gray50") +
  ggplot2::geom_vline(xintercept = quantidade_equilibrio, linetype = "dashed", color = "gray50") +
  ggplot2::annotate(
    "text", x = quantidade_equilibrio + 10, y = preco_equilibrio + 10,
    label = paste("E* (", round(quantidade_equilibrio, 1), ", ", round(preco_equilibrio, 1), ")", sep = ""),
    color = "red", fontface = "bold"
  ) +
  ggplot2::scale_color_manual(
    values = c(oferta = "blue", demanda = "darkgreen", "Equilíbrio" = "red"),
    labels = c(oferta = "Oferta (Q = P/2 - 5)", demanda = "Demanda (P = 180 - 1.8Q)")
  ) +
  ggplot2::labs(
    title = "Equilíbrio de Mercado - Soja (Brasil × EUA)",
    subtitle = "Oferta brasileira e demanda norte-americana",
    x = "Quantidade (milhões de toneladas)",
    y = "Preço ($/tonelada)",
    color = "Função"
  ) +
  ggplot2::scale_x_continuous(
    limits = c(0, 100),
    expand = c(0, 0),
    labels = scales::comma
  ) +
  ggplot2::scale_y_continuous(
    limits = c(0, 200),
    expand = c(0, 0),
    labels = scales::dollar
  ) +
  ggplot2::theme_minimal() +
  ggplot2::theme(
    axis.line = ggplot2::element_line(color = "black", linewidth = 0.5),
    panel.grid.major = ggplot2::element_line(color = "gray90"),
    panel.grid.minor = ggplot2::element_blank(),
    plot.title = ggplot2::element_text(size = 14, face = "bold"),
    plot.subtitle = ggplot2::element_text(size = 12),
    axis.title = ggplot2::element_text(size = 11),
    legend.position = "bottom"
  )

# Exibir gráfico
print(grafico_equilibrio)

Resumo do Problema

Solução encontrada:

  • Preço de equilíbrio: \(P^* = \$99.47\) por tonelada
  • Quantidade de equilíbrio: \(Q^* = 44.735\) milhões de toneladas

O equilíbrio ocorre dentro das restrições especificadas (\(5 ≤ Q ≤ 100\)), indicando uma solução válida para o mercado internacional de soja entre Brasil e Estados Unidos.

Suponha que um consumidor A possua 18 maçãs e 1 pera e que sua função utilidade em relação aos dois produtos seja \(U_A = q_m q_p + q_m\), onde os subíndices indicam os produtos maçãs e peras, respectivamente. Suponha que outro consumidor, B, possua 20 peras e 1 maçã. A função utilidade de B é \(U_B = q_m q_p + q_p\). Considere que cada um dos consumidores irá possuir pelo menos uma unidade de cada produto em qualquer negociação que realizem.

Passo 1: Identificar as dotações e as funções de utilidade.

Dotação \((q_m, q_p)\) Utilidade
Consumidor A \((18, 1)\) \(U_A = q_m q_p + q_m\)
Consumidor B \((1, 20)\) \(U_B = q_m q_p + q_p\)

Dotações totais: \(Q_m = 18 + 1 = 19\) maçãs e \(Q_p = 1 + 20 = 21\) peras. Cada consumidor deve possuir pelo menos 1 unidade de cada bem após a troca.

Eficiência de Pareto: ocorre quando não é possível melhorar a situação de um indivíduo sem piorar a de outro. Em uma economia de troca pura, as alocações eficientes de Pareto satisfazem \(TMS_A = TMS_B\). A Caixa de Edgeworth representa graficamente todas as alocações possíveis de dois bens entre dois consumidores.

Passo 2: Derivar a TMS do consumidor A.

\[\begin{aligned} U_A &= q_m q_p + q_m \\[6pt] \frac{\partial U_A}{\partial q_m} &= q_p + 1 & & \text{derivar em relação a } q_m \text{, tratando } q_p \text{ como constante} \\[6pt] \frac{\partial U_A}{\partial q_p} &= q_m & & \text{derivar em relação a } q_p \text{, tratando } q_m \text{ como constante} \\[6pt] TMS_A &= \frac{\partial U_A / \partial q_m}{\partial U_A / \partial q_p} = \frac{q_p + 1}{q_m} & & \text{razão das utilidades marginais} \end{aligned}\]

Passo 3: Derivar a TMS do consumidor B.

\[\begin{aligned} U_B &= q_m q_p + q_p \\[6pt] \frac{\partial U_B}{\partial q_m} &= q_p & & \text{derivar em relação a } q_m \\[6pt] \frac{\partial U_B}{\partial q_p} &= q_m + 1 & & \text{derivar em relação a } q_p \\[6pt] TMS_B &= \frac{\partial U_B / \partial q_m}{\partial U_B / \partial q_p} = \frac{q_p}{q_m + 1} & & \text{razão das utilidades marginais} \end{aligned}\]

A TMS mede a disposição do consumidor a trocar peras por maçãs. Para A, \(TMS_A = (q_p + 1)/q_m\): quanto mais maçãs possui (maior \(q_m\)), menos peras está disposto a ceder por uma maçã adicional. Para B, a lógica é análoga com \(TMS_B = q_p/(q_m + 1)\).

Passo 4: Impor a condição de eficiência de Pareto (\(TMS_A = TMS_B\)) e derivar a curva de contrato.

Na Caixa de Edgeworth, a alocação do consumidor B é determinada pela de A via restrições de factibilidade: \(q_m^B = 19 - q_m^A\) e \(q_p^B = 21 - q_p^A\).

\[\begin{aligned} TMS_A &= TMS_B & & \text{condição de Pareto} \\[6pt] \frac{q_p^A + 1}{q_m^A} &= \frac{21 - q_p^A}{20 - q_m^A} & & \text{substituindo } q_p^B = 21 - q_p^A \text{ e } q_m^B + 1 = 20 - q_m^A \\[6pt] (q_p^A + 1)(20 - q_m^A) &= q_m^A(21 - q_p^A) & & \text{multiplicando cruzado} \\[6pt] 20q_p^A + 20 - q_m^A q_p^A - q_m^A &= 21q_m^A - q_m^A q_p^A & & \text{expandindo os dois lados} \\[6pt] 20q_p^A + 20 &= 22\,q_m^A & & q_m^A q_p^A \text{ cancela; agrupando } q_m^A \end{aligned}\]

A curva de contrato é:

\[\boxed{q_m^A = \frac{10\,q_p^A + 10}{11}}\]

sujeita a \(1 \leq q_m^A \leq 18\) e \(1 \leq q_p^A \leq 20\).

Passo 5: Encontrar uma alocação eficiente específica.

Para simplificar, buscamos o ponto onde \(q_m^A = q_p^A\):

\[\begin{aligned} q_m^A &= \frac{10\,q_m^A + 10}{11} & & \text{substituindo } q_p^A = q_m^A \\[6pt] 11\,q_m^A &= 10\,q_m^A + 10 & & \text{multiplicando ambos os lados por 11} \\[6pt] q_m^A &= 10 & & \text{portanto } q_p^A = 10 \end{aligned}\]

Alocação resultante: consumidor A fica com \((10, 10)\) e consumidor B com \((9, 11)\).

Passo 6: Calcular utilidades e verificar ganhos da troca.

Alocação \((q_m, q_p)\) Utilidade Ganho
A — dotação inicial \((18, 1)\) \(18 \cdot 1 + 18 = 36\)
A — alocação eficiente \((10, 10)\) \(10 \cdot 10 + 10 = 110\) \(+74\)
B — dotação inicial \((1, 20)\) \(1 \cdot 20 + 20 = 40\)
B — alocação eficiente \((9, 11)\) \(9 \cdot 11 + 11 = 110\) \(+70\)

Verificando a condição de Pareto na alocação eficiente:

\[\begin{aligned} TMS_A &= \frac{10 + 1}{10} = 1{,}1 \\[6pt] TMS_B &= \frac{11}{9 + 1} = 1{,}1 \\[6pt] TMS_A &= TMS_B \quad \checkmark & & \text{alocação é Pareto eficiente} \end{aligned}\]

Ambos melhoram significativamente: a troca voluntária permite alcançar a curva de contrato, onde não há mais oportunidades de troca mutuamente benéficas.

Implementação em R

Código
# Carregar bibliotecas necessárias
suppressPackageStartupMessages({
  library(ggplot2)
  library(dplyr)
  library(tidyr)
  library(scales)
  library(plotly)
})

# 1. Definir parâmetros iniciais
dotal_A <- c(macas = 18, peras = 1)
dotal_B <- c(macas = 1, peras = 20)
total <- dotal_A + dotal_B

# 2. Definir funções de utilidade
utilidade_A <- function(q_m, q_p) {
  q_m * q_p + q_m
}

utilidade_B <- function(q_m, q_p) {
  q_m * q_p + q_p
}

# 3. Calcular utilidades iniciais
U_A_inicial <- utilidade_A(dotal_A[1], dotal_A[2])
U_B_inicial <- utilidade_B(dotal_B[1], dotal_B[2])

# 4. Funções para taxas marginais de substituição
TMS_A <- function(q_m, q_p) {
  (q_p + 1) / q_m
}

TMS_B <- function(q_m, q_p) {
  q_p / (q_m + 1)
}

# 5. Encontrar pontos na curva de contrato
curva_contrato <- function(q_p_A) {
  q_m_A <- (10 * q_p_A + 10) / 11
  q_m_B <- total[1] - q_m_A
  q_p_B <- total[2] - q_p_A

  # Verificar restrições
  if (q_m_A >= 1 && q_m_B >= 1 && q_p_A >= 1 && q_p_B >= 1) {
    return(data.frame(
      q_m_A = q_m_A, q_p_A = q_p_A,
      q_m_B = q_m_B, q_p_B = q_p_B,
      U_A = utilidade_A(q_m_A, q_p_A),
      U_B = utilidade_B(q_m_B, q_p_B),
      TMS_A = TMS_A(q_m_A, q_p_A),
      TMS_B = TMS_B(q_m_B, q_p_B)
    ))
  }
  return(NULL)
}

# 6. Gerar curva de contrato
q_p_A_seq <- seq(1, 20, by = 0.1)
curva_completa <- purrr::map_dfr(q_p_A_seq, curva_contrato)

# 7. Encontrar solução simétrica (onde U_A = U_B)
if (!is.null(curva_completa)) {
  diferenca <- abs(curva_completa$U_A - curva_completa$U_B)
  indice_otimo <- which.min(diferenca)
  solucao_otima <- curva_completa[indice_otimo, ]

  cat("Solução ótima (U_A ≈ U_B):\n")
  cat("Consumidor A:", round(solucao_otima$q_m_A, 2), "maçãs,", round(solucao_otima$q_p_A, 2), "peras\n")
  cat("Consumidor B:", round(solucao_otima$q_m_B, 2), "maçãs,", round(solucao_otima$q_p_B, 2), "peras\n")
  cat("U_A =", round(solucao_otima$U_A, 2), "\n")
  cat("U_B =", round(solucao_otima$U_B, 2), "\n")
  cat("TMS_A =", round(solucao_otima$TMS_A, 4), "\n")
  cat("TMS_B =", round(solucao_otima$TMS_B, 4), "\n\n")
}
Solução ótima (U_A ≈ U_B):
Consumidor A: 10 maçãs, 10 peras
Consumidor B: 9 maçãs, 11 peras
U_A = 110 
U_B = 110 
TMS_A = 1.1 
TMS_B = 1.1 
Código
# 8. Visualização da Caixa de Edgeworth
if (!is.null(curva_completa)) {
  # Criar gráfico da caixa de Edgeworth
  grafico_edgeworth <- ggplot2::ggplot() +
    # Curva de contrato
    ggplot2::geom_line(
      data = curva_completa,
      ggplot2::aes(x = q_m_A, y = q_p_A),
      color = "red", linewidth = 1.5, linetype = "dashed"
    ) +
    # Dotação inicial
    ggplot2::geom_point(
      data = data.frame(x = dotal_A[1], y = dotal_A[2]),
      ggplot2::aes(x = x, y = y),
      color = "blue", size = 5, shape = 16
    ) +
    # Solução ótima
    ggplot2::geom_point(
      data = solucao_otima,
      ggplot2::aes(x = q_m_A, y = q_p_A),
      color = "darkgreen", size = 6, shape = 17
    ) +
    # Limites da caixa - Eixos do Consumidor A (origem)
    ggplot2::geom_vline(xintercept = 0, linewidth = 1.5, color = "black") +
    ggplot2::geom_hline(yintercept = 0, linewidth = 1.5, color = "black") +
    # Limites da caixa - Eixos do Consumidor B (invertido)
    ggplot2::geom_vline(xintercept = total[1], linewidth = 1.5, color = "gray50", linetype = "dashed") +
    ggplot2::geom_hline(yintercept = total[2], linewidth = 1.5, color = "gray50", linetype = "dashed") +
    # Anotações - Dotação inicial
    ggplot2::annotate(
      "text", x = dotal_A[1] + 1, y = dotal_A[2] + 1,
      label = "Dotação Inicial\nA(18,1), B(1,20)",
      color = "blue", fontface = "bold", size = 3
    ) +
    # Anotações - Solução ótima
    ggplot2::annotate(
      "text", x = solucao_otima$q_m_A + 1, y = solucao_otima$q_p_A - 1,
      label = paste("Solução Ótima\nA(", round(solucao_otima$q_m_A, 1), ",",
                   round(solucao_otima$q_p_A, 1), ")"),
      color = "darkgreen", fontface = "bold", size = 3
    ) +
    # Anotações - Consumidor A (origem)
    ggplot2::annotate(
      "text", x = 0.5, y = 0.5,
      label = "Origem A\n(0,0)",
      color = "black", fontface = "bold", size = 3, hjust = 0
    ) +
    ggplot2::annotate(
      "text", x = total[1]/2, y = -0.8,
      label = "Eixo X: Maçãs do Consumidor A →",
      color = "black", fontface = "italic", size = 3.5, hjust = 0.5
    ) +
    ggplot2::annotate(
      "text", x = -0.8, y = total[2]/2,
      label = "Eixo Y: Peras do Consumidor A ↑",
      color = "black", fontface = "italic", size = 3.5, hjust = 0.5, angle = 90
    ) +
    # Anotações - Consumidor B (canto superior direito)
    ggplot2::annotate(
      "text", x = total[1] - 0.5, y = total[2] - 0.5,
      label = "Origem B\n(0,0)",
      color = "gray50", fontface = "bold", size = 3, hjust = 1
    ) +
    ggplot2::annotate(
      "text", x = total[1]/2, y = total[2] + 0.8,
      label = "← Eixo X: Maçãs do Consumidor B",
      color = "gray50", fontface = "italic", size = 3.5, hjust = 0.5
    ) +
    ggplot2::annotate(
      "text", x = total[1] + 0.8, y = total[2]/2,
      label = "Eixo Y: Peras do Consumidor B ↓",
      color = "gray50", fontface = "italic", size = 3.5, hjust = 0.5, angle = 90
    ) +
    # Anotações explicativas
    ggplot2::annotate(
      "text", x = total[1]/2, y = total[2] + 2.0,
      label = "Caixa de Edgeworth: Consumidor A medido a partir da origem (0,0) | Consumidor B medido a partir do canto superior direito",
      color = "darkblue", fontface = "bold", size = 4, hjust = 0.5
    ) +
    ggplot2::annotate(
      "text", x = total[1]/2, y = total[2] + 2.8,
      label = "Linhas sólidas: Eixos do Consumidor A | Linhas tracejadas: Eixos do Consumidor B",
      color = "darkred", fontface = "italic", size = 3.5, hjust = 0.5
    ) +
    ggplot2::labs(
      title = "Caixa de Edgeworth - Troca entre Consumidores A e B",
      subtitle = "Curva de Contrato e Alocação Eficiente de Pareto\nConsumidor A: origem (0,0) | Consumidor B: origem invertida (19,21)",
      x = "Maçãs do Consumidor A (←) / Maçãs do Consumidor B (→)",
      y = "Peras do Consumidor A (↑) / Peras do Consumidor B (↓)"
    ) +
    ggplot2::scale_x_continuous(
      limits = c(-2, total[1] + 2),
      breaks = seq(0, total[1], by = 2),
      sec.axis = ggplot2::dup_axis(
        name = "Maçãs do Consumidor B",
        labels = function(x) total[1] - x,
        breaks = seq(0, total[1], by = 2)
      )
    ) +
    ggplot2::scale_y_continuous(
      limits = c(-2, total[2] + 3),
      breaks = seq(0, total[2], by = 3),
      sec.axis = ggplot2::dup_axis(
        name = "Peras do Consumidor B",
        labels = function(y) total[2] - y,
        breaks = seq(0, total[2], by = 3)
      )
    ) +
    ggplot2::theme_classic() +
    ggplot2::theme(
      plot.title = ggplot2::element_text(size = 16, face = "bold", hjust = 0.5),
      plot.subtitle = ggplot2::element_text(size = 12, lineheight = 1.3, hjust = 0.5),
      axis.title = ggplot2::element_text(size = 11),
      axis.title.x.top = ggplot2::element_text(color = "gray50", size = 10),
      axis.title.y.right = ggplot2::element_text(color = "gray50", angle = 90, size = 10),
      axis.text = ggplot2::element_text(size = 9),
      axis.text.x.top = ggplot2::element_text(color = "gray50", size = 9),
      axis.text.y.right = ggplot2::element_text(color = "gray50", size = 9),
      panel.background = ggplot2::element_rect(fill = "white", color = NA),
      plot.background = ggplot2::element_rect(fill = "white", color = NA),
      legend.position = "none"
    )

  # Exibir o gráfico com dimensões maiores
  print(grafico_edgeworth)
}

Determine a equação da curva de contrato e esboce seu gráfico considerando as seguintes funções:

\[U_A (x^{A}_{1}, x^{A}_{2}) = {x^{A}_{1}}^\alpha {x^{A}_{2}}^\beta\]

\[U_B (x^{B}_{1}, x^{B}_{2}) = {x^{B}_{1}}^\alpha {x^{B}_{2}}^\beta\]

Passo 1: Derivar a TMS do consumidor A.

\[\begin{aligned} U_A &= (x_1^A)^\alpha (x_2^A)^\beta \\[6pt] \frac{\partial U_A}{\partial x_1^A} &= \alpha (x_1^A)^{\alpha-1} (x_2^A)^\beta & & \text{regra da potência em } x_1^A \text{, com } x_2^A \text{ constante} \\[6pt] \frac{\partial U_A}{\partial x_2^A} &= \beta (x_1^A)^\alpha (x_2^A)^{\beta-1} & & \text{regra da potência em } x_2^A \text{, com } x_1^A \text{ constante} \\[6pt] TMS_A &= \frac{\alpha (x_1^A)^{\alpha-1} (x_2^A)^\beta}{\beta (x_1^A)^\alpha (x_2^A)^{\beta-1}} = \frac{\alpha}{\beta} \cdot \frac{x_2^A}{x_1^A} & & \text{simplificando: } (x_1^A)^{\alpha-1-\alpha} = (x_1^A)^{-1} \end{aligned}\]

Passo 2: Derivar a TMS do consumidor B.

Como B tem a mesma forma funcional:

\[\begin{aligned} U_B &= (x_1^B)^\alpha (x_2^B)^\beta \\[6pt] TMS_B &= \frac{\alpha}{\beta} \cdot \frac{x_2^B}{x_1^B} & & \text{mesma derivação do Passo 1} \end{aligned}\]

Passo 3: Impor a condição de eficiência de Pareto (\(TMS_A = TMS_B\)).

\[\begin{aligned} \frac{\alpha}{\beta} \cdot \frac{x_2^A}{x_1^A} &= \frac{\alpha}{\beta} \cdot \frac{x_2^B}{x_1^B} & & \text{igualando as TMS} \\[6pt] \frac{x_2^A}{x_1^A} &= \frac{x_2^B}{x_1^B} & & \text{cancelando } \alpha/\beta \text{ de ambos os lados} \end{aligned}\]

Com preferências idênticas, a condição de Pareto exige que ambos consumam os bens na mesma proporção.

Passo 4: Substituir as restrições de factibilidade e derivar a curva de contrato.

Restrições: \(x_1^B = \omega_1 - x_1^A\) e \(x_2^B = \omega_2 - x_2^A\).

\[\begin{aligned} \frac{x_2^A}{x_1^A} &= \frac{\omega_2 - x_2^A}{\omega_1 - x_1^A} & & \text{substituindo } x_2^B \text{ e } x_1^B \\[6pt] x_2^A(\omega_1 - x_1^A) &= x_1^A(\omega_2 - x_2^A) & & \text{multiplicando cruzado} \\[6pt] x_2^A \omega_1 - x_2^A x_1^A &= x_1^A \omega_2 - x_1^A x_2^A & & \text{expandindo os dois lados} \\[6pt] x_2^A \omega_1 &= x_1^A \omega_2 & & x_2^A x_1^A \text{ cancela em ambos os lados} \end{aligned}\]

A curva de contrato é:

\[\boxed{x_2^A = \frac{\omega_2}{\omega_1} \cdot x_1^A}\]

Uma reta pela origem com inclinação \(\omega_2/\omega_1\) — a diagonal da Caixa de Edgeworth. Quando ambos têm preferências idênticas, qualquer alocação eficiente mantém a mesma proporção entre os bens para os dois consumidores.

Ilustração Gráfica da Caixa de Edgeworth

        x₂^A
         │
    ω₂   ┌────────────────B
         │               ╱│
         │              ╱ │
         │             ╱  │
         │            ╱   │
         │ Curva de  ╱    │
         │ Contrato ╱     │
         │         ╱      │
         │        ╱       │
         │       ╱        │
         │      ╱         │
         │     ╱          │
         │    ╱           │
         │   ╱            │
         │  ╱             │
         │ ╱              │
       0 O╱───────────────┘─────── x₁^A
         A                ω₁

Interpretação do Gráfico

  • O retângulo representa a Caixa de Edgeworth com dimensões \(\omega_1 \times \omega_2\)
  • O ponto O (origem) no canto inferior esquerdo \((0,0)\) é a origem do consumidor A
  • O ponto B no canto superior direito \((\omega_1, \omega_2)\) é a origem do consumidor B
  • A linha diagonal partindo de O até B é a curva de contrato, representando todas as alocações Pareto-eficientes
  • Como ambos os consumidores têm preferências idênticas, a curva de contrato é uma reta que conecta as duas origens
  • Qualquer ponto sobre esta linha representa uma alocação onde as TMS dos dois consumidores são iguais
  • A equação da curva é \(x_2^A = \frac{\omega_2}{\omega_1} \cdot x_1^A\), que passa pela origem \((0,0)\)

Determine a equação da curva de contrato e esboce gráfico da curva de contrato assumindo as seguintes funções utilidades:

\(U_A (x^{A}_{1}, x^{A}_{2}) = {x^{A}_{1}}^2 x^{A}_{2}\)

\(U_B (x^{B}_{1}, x^{B}_{2}) = x^{B}_{1} x^{B}_{2}\)

Passo 1: Derivar a TMS do consumidor A.

\[\begin{aligned} U_A &= (x_1^A)^2 \, x_2^A \\[6pt] \frac{\partial U_A}{\partial x_1^A} &= 2\,x_1^A \cdot x_2^A & & \text{regra da potência em } x_1^A \text{, com } x_2^A \text{ constante} \\[6pt] \frac{\partial U_A}{\partial x_2^A} &= (x_1^A)^2 & & x_2^A \text{ tem expoente 1; } (x_1^A)^2 \text{ é constante} \\[6pt] TMS_A &= \frac{2\,x_1^A \cdot x_2^A}{(x_1^A)^2} = \frac{2\,x_2^A}{x_1^A} & & \text{simplificando } x_1^A \end{aligned}\]

Passo 2: Derivar a TMS do consumidor B.

\[\begin{aligned} U_B &= x_1^B \, x_2^B \\[6pt] \frac{\partial U_B}{\partial x_1^B} &= x_2^B & & \text{derivar em relação a } x_1^B \\[6pt] \frac{\partial U_B}{\partial x_2^B} &= x_1^B & & \text{derivar em relação a } x_2^B \\[6pt] TMS_B &= \frac{x_2^B}{x_1^B} & & \text{razão das utilidades marginais} \end{aligned}\]

Note que A valoriza relativamente mais o bem 1 (expoente 2 vs. 1), resultando em \(TMS_A = 2x_2^A/x_1^A\) — o dobro do que seria com expoentes iguais.

Passo 3: Impor a condição de eficiência de Pareto (\(TMS_A = TMS_B\)).

Restrições de factibilidade: \(x_1^B = \omega_1 - x_1^A\) e \(x_2^B = \omega_2 - x_2^A\).

\[\begin{aligned} \frac{2\,x_2^A}{x_1^A} &= \frac{\omega_2 - x_2^A}{\omega_1 - x_1^A} & & \text{substituindo } x_2^B \text{ e } x_1^B \\[6pt] 2\,x_2^A(\omega_1 - x_1^A) &= x_1^A(\omega_2 - x_2^A) & & \text{multiplicando cruzado} \\[6pt] 2\,x_2^A \omega_1 - 2\,x_2^A x_1^A &= x_1^A \omega_2 - x_1^A x_2^A & & \text{expandindo} \\[6pt] 2\,x_2^A \omega_1 &= x_1^A \omega_2 + x_1^A x_2^A & & \text{passando } -x_1^A x_2^A \text{ e } +2x_2^A x_1^A \text{ para a direita} \\[6pt] x_2^A(2\omega_1 - x_1^A) &= x_1^A \omega_2 & & \text{fatorando } x_2^A \end{aligned}\]

A curva de contrato é:

\[\boxed{x_2^A = \frac{x_1^A \, \omega_2}{2\omega_1 - x_1^A}}\]

Diferentemente do caso com preferências idênticas, a curva é uma hipérbole (não-linear) que passa pela origem. A curvatura reflete as diferentes preferências: A valoriza mais o bem 1 (expoente 2), B valoriza ambos igualmente (expoentes 1).

Ilustração Gráfica da Caixa de Edgeworth

Código
suppressPackageStartupMessages({
  library(ggplot2)
  library(dplyr)
  library(latex2exp)
  library(glue)
})

# Parâmetros das dotações
omega_1 <- 10
omega_2 <- 10

# Curva de contrato: x2^A = (x1^A * omega_2) / (2*omega_1 - x1^A)
# Válida para 0 <= x1^A < 2*omega_1 (mas limitada a omega_1 pela caixa)
seq(0.01, omega_1 * 0.99, length.out = 200) |>
  tibble::tibble(x1_A = _) |>
  dplyr::mutate(
    x2_A = (x1_A * omega_2) / (2 * omega_1 - x1_A)
  ) |>
  dplyr::filter(x2_A >= 0, x2_A <= omega_2) ->
  curva_contrato

# Criar a Caixa de Edgeworth
ggplot2::ggplot() +
  # Retângulo da caixa
  ggplot2::geom_rect(
    ggplot2::aes(xmin = 0, xmax = omega_1, ymin = 0, ymax = omega_2),
    fill = NA, color = "black", linewidth = 1
  ) +
  # Curva de contrato
  ggplot2::geom_line(
    data = curva_contrato,
    ggplot2::aes(x = x1_A, y = x2_A),
    color = "red", linewidth = 1.5
  ) +
  # Ponto de origem A (0,0)
  ggplot2::geom_point(
    ggplot2::aes(x = 0, y = 0),
    size = 4, color = "blue"
  ) +
  ggplot2::annotate(
    "text", x = 0.7, y = 0.5, label = "O (A)", size = 5, color = "blue"
  ) +
  # Ponto de origem B (omega_1, omega_2)
  ggplot2::geom_point(
    ggplot2::aes(x = omega_1, y = omega_2),
    size = 4, color = "darkgreen"
  ) +
  ggplot2::annotate(
    "text", x = omega_1 - 0.7, y = omega_2 - 0.5, 
    label = "B", size = 5, color = "darkgreen"
  ) +
  # Anotação da curva de contrato
  ggplot2::annotate(
    "text", x = 4, y = 7, 
    label = "Curva de Contrato\n(hipérbole)", 
    size = 4, color = "red"
  ) +
  # Eixos e labels
  ggplot2::scale_x_continuous(
    breaks = seq(0, omega_1, by = 2),
    limits = c(0, omega_1)
  ) +
  ggplot2::scale_y_continuous(
    breaks = seq(0, omega_2, by = 2),
    limits = c(0, omega_2)
  ) +
  ggplot2::labs(
    # title = "Caixa de Edgeworth com Curva de Contrato",
    subtitle = latex2exp::TeX(
      glue::glue(r"($U_A = (x_1^A)^2 x_2^A, U_B = x_1^B x_2^B, \omega_1 = {omega_1}, \omega_2 = {omega_2}$)")
    ),
    x = latex2exp::TeX(r"($x_1^A$ (Bem 1 para A))"),
    y = latex2exp::TeX(r"($x_2^A$ (Bem 2 para A))")
  ) +
  ggplot2::theme_minimal() +
  ggplot2::theme(
    plot.title = ggplot2::element_text(hjust = 0.5, face = "bold", size = 14),
    plot.subtitle = ggplot2::element_text(hjust = 0.5, size = 10),
    axis.title = ggplot2::element_text(size = 11),
    panel.grid.minor = ggplot2::element_blank()
  ) +
  ggplot2::coord_fixed()

Interpretação do Gráfico

  • O retângulo representa a Caixa de Edgeworth com dimensões \(\omega_1 \times \omega_2\)
  • O ponto O (origem) no canto inferior esquerdo \((0,0)\) é a origem do consumidor A
  • O ponto B no canto superior direito \((\omega_1, \omega_2)\) é a origem do consumidor B
  • A curva vermelha partindo de O é a curva de contrato, representando todas as alocações Pareto-eficientes
  • Diferentemente do caso com preferências idênticas, esta curva é não-linear (hipérbole)
  • A curvatura reflete as diferentes preferências: A valoriza mais o bem 1, B valoriza ambos igualmente
  • Qualquer ponto sobre esta curva representa uma alocação onde as TMS dos dois consumidores são iguais
  • A equação da curva é \(x_2^A = \frac{x_1^A \omega_2}{2\omega_1 - x_1^A}\), que passa pela origem \((0,0)\)

Determine a equação da curva de contrato e esboce seu gráfico considerando as seguintes funções utilidades:

\[U_A (x^{A}_{1}, x^{A}_{2}) = \ln(x^{A}_{1}) x^{A}_{2}\]

\[U_B (x^{B}_{1}, x^{B}_{2}) = \sqrt{x^{B}_{1}} x^{B}_{2}\]

Considere também que: \(\omega_1 = \omega_2 = 2\)

Passo 1: Derivar a TMS do consumidor A.

\[\begin{aligned} U_A &= \ln(x_1^A) \cdot x_2^A \\[6pt] \frac{\partial U_A}{\partial x_1^A} &= \frac{1}{x_1^A} \cdot x_2^A = \frac{x_2^A}{x_1^A} & & \text{derivada de } \ln(x_1^A) = 1/x_1^A \text{; } x_2^A \text{ constante} \\[6pt] \frac{\partial U_A}{\partial x_2^A} &= \ln(x_1^A) & & \text{derivada de } x_2^A = 1 \text{; } \ln(x_1^A) \text{ constante} \\[6pt] TMS_A &= \frac{x_2^A / x_1^A}{\ln(x_1^A)} = \frac{x_2^A}{x_1^A \ln(x_1^A)} & & \text{razão das utilidades marginais} \end{aligned}\]

Passo 2: Derivar a TMS do consumidor B.

\[\begin{aligned} U_B &= \sqrt{x_1^B} \cdot x_2^B = (x_1^B)^{1/2} \cdot x_2^B \\[6pt] \frac{\partial U_B}{\partial x_1^B} &= \frac{1}{2}(x_1^B)^{-1/2} \cdot x_2^B = \frac{x_2^B}{2\sqrt{x_1^B}} & & \text{regra da potência com } n = 1/2 \\[6pt] \frac{\partial U_B}{\partial x_2^B} &= \sqrt{x_1^B} & & x_1^B \text{ constante} \\[6pt] TMS_B &= \frac{x_2^B / (2\sqrt{x_1^B})}{\sqrt{x_1^B}} = \frac{x_2^B}{2\,x_1^B} & & (\sqrt{x_1^B})^2 = x_1^B \end{aligned}\]

Passo 3: Impor a condição de eficiência de Pareto (\(TMS_A = TMS_B\)).

Restrições de factibilidade: \(x_1^B = \omega_1 - x_1^A\) e \(x_2^B = \omega_2 - x_2^A\), com \(\omega_1 = \omega_2 = 2\).

\[\begin{aligned} \frac{x_2^A}{x_1^A \ln(x_1^A)} &= \frac{\omega_2 - x_2^A}{2(\omega_1 - x_1^A)} & & \text{substituindo } x_2^B \text{ e } x_1^B \\[6pt] 2(\omega_1 - x_1^A)\,x_2^A &= x_1^A \ln(x_1^A)(\omega_2 - x_2^A) & & \text{multiplicando cruzado} \\[6pt] 2\omega_1 x_2^A - 2x_1^A x_2^A &= x_1^A \omega_2 \ln(x_1^A) - x_1^A x_2^A \ln(x_1^A) & & \text{expandindo} \\[6pt] x_2^A\bigl[2\omega_1 - 2x_1^A + x_1^A \ln(x_1^A)\bigr] &= x_1^A \omega_2 \ln(x_1^A) & & \text{agrupando } x_2^A \text{ à esquerda} \end{aligned}\]

A curva de contrato é:

\[\boxed{x_2^A = \frac{x_1^A \,\omega_2 \ln(x_1^A)}{2\omega_1 - 2x_1^A + x_1^A \ln(x_1^A)}}\]

A curva é não-linear e não passa pela origem (pois \(\ln(x_1^A)\) é indefinido em \(x_1^A = 0\)). As diferentes formas funcionais — logarítmica para A, raiz quadrada para B — geram taxas de substituição distintas que moldam a curvatura da curva de contrato.

Ilustração Gráfica da Caixa de Edgeworth

Código
suppressPackageStartupMessages({
  library(ggplot2)
  library(dplyr)
  library(latex2exp)
  library(glue)
})

# Parâmetros das dotações
omega_1 <- 2
omega_2 <- 2

# Curva de contrato: x2^A = (x1^A * omega_2 * ln(x1^A)) / (2*omega_1 - 2*x1^A + x1^A*ln(x1^A))
seq(0.05, omega_1 * 0.99, length.out = 200) |>
  tibble::tibble(x1_A = _) |>
  dplyr::mutate(
    x2_A = (x1_A * omega_2 * log(x1_A)) / (2 * omega_1 - 2 * x1_A + x1_A * log(x1_A))
  ) |>
  dplyr::filter(x2_A >= 0, x2_A <= omega_2) ->
  curva_contrato

# Criar a Caixa de Edgeworth
ggplot2::ggplot() +
  # Retângulo da caixa
  ggplot2::geom_rect(
    ggplot2::aes(xmin = 0, xmax = omega_1, ymin = 0, ymax = omega_2),
    fill = NA, color = "black", linewidth = 1
  ) +
  # Curva de contrato
  ggplot2::geom_line(
    data = curva_contrato,
    ggplot2::aes(x = x1_A, y = x2_A),
    color = "red", linewidth = 1.5
  ) +
  # Ponto de origem A (0,0)
  ggplot2::geom_point(
    ggplot2::aes(x = 0, y = 0),
    size = 4, color = "blue"
  ) +
  ggplot2::annotate(
    "text", x = 0.15, y = 0.1, label = "O (A)", size = 5, color = "blue"
  ) +
  # Ponto de origem B (omega_1, omega_2)
  ggplot2::geom_point(
    ggplot2::aes(x = omega_1, y = omega_2),
    size = 4, color = "darkgreen"
  ) +
  ggplot2::annotate(
    "text", x = omega_1 - 0.15, y = omega_2 - 0.1, 
    label = "B", size = 5, color = "darkgreen"
  ) +
  # Anotação da curva de contrato
  ggplot2::annotate(
    "text", x = 1, y = 1.5, 
    label = "Curva de Contrato", 
    size = 4, color = "red"
  ) +
  # Eixos e labels
  ggplot2::scale_x_continuous(
    breaks = seq(0, omega_1, by = 0.5),
    limits = c(0, omega_1)
  ) +
  ggplot2::scale_y_continuous(
    breaks = seq(0, omega_2, by = 0.5),
    limits = c(0, omega_2)
  ) +
  ggplot2::labs(
    # title = "Caixa de Edgeworth com Curva de Contrato",
    subtitle = latex2exp::TeX(
      glue::glue(r"($U_A = \ln(x_1^A) x_2^A, U_B = \sqrt{x_1^B} x_2^B, \omega_1 = <<omega_1>>, \omega_2 = <<omega_2>>$)", .open = "<<", .close = ">>")
    ),
    x = latex2exp::TeX(r"($x_1^A$ (Bem 1 para A))"),
    y = latex2exp::TeX(r"($x_2^A$ (Bem 2 para A))")
  ) +
  ggplot2::theme_minimal() +
  ggplot2::theme(
    plot.title = ggplot2::element_text(hjust = 0.5, face = "bold", size = 14),
    plot.subtitle = ggplot2::element_text(hjust = 0.5, size = 10),
    axis.title = ggplot2::element_text(size = 11),
    panel.grid.minor = ggplot2::element_blank()
  ) +
  ggplot2::coord_fixed()

Interpretação do Gráfico

  • O retângulo representa a Caixa de Edgeworth com dimensões \(\omega_1 \times \omega_2 = 2 \times 2\)
  • O ponto O (origem) no canto inferior esquerdo \((0,0)\) é a origem do consumidor A
  • O ponto B no canto superior direito \((2, 2)\) é a origem do consumidor B
  • A curva vermelha é a curva de contrato, representando todas as alocações Pareto-eficientes
  • Esta curva é não-linear devido às diferentes formas funcionais das utilidades
  • A curvatura reflete as diferentes preferências: A tem utilidade logarítmica em \(x_1\), B tem utilidade em raiz quadrada em \(x_1\)
  • Qualquer ponto sobre esta curva representa uma alocação onde as TMS dos dois consumidores são iguais
  • A equação da curva é \(x_2^A = \frac{x_1^A \omega_2 \ln(x_1^A)}{2\omega_1 - 2x_1^A + x_1^A \ln(x_1^A)}\)

Considere dois consumidores com as seguintes funções de utilidade:

\[U_A (x^{A}_{1}, x^{A}_{2}) = x^{A}_{1} x^{A}_{2}\]

\[U_B (x^{B}_{1}, x^{B}_{2}) = x^{B}_{1} x^{B}_{2}\]

Dotações iniciais:

  • \(\omega_1^A = 10\)
  • \(\omega_2^A = 5\)
  • \(\omega_1^B = 5\)
  • \(\omega_2^B = 10\)

Sendo os preços: \(p_1 = 2\) e \(p_2 = 1\)

Encontre:

  • demandas brutas
  • demandas líquidas
  • excessos de demanda agregada

Por fim, aplique a lei de Walras para saber se os preços conseguem levar a economia ao equilíbrio.

Passo 1: Identificar as utilidades e dotações.

Utilidade \(\alpha_1\) \(\alpha_2\) \(\omega_1\) \(\omega_2\)
A \(x_1^A \, x_2^A\) \(1\) \(1\) \(10\) \(5\)
B \(x_1^B \, x_2^B\) \(1\) \(1\) \(5\) \(10\)
Total \(15\) \(15\)

Preços dados: \(p_1 = 2\) e \(p_2 = 1\). Queremos saber se esses preços levam a economia ao equilíbrio.

NotaDemanda marshalliana

A demanda marshalliana (ou demanda ordinária) é a quantidade ótima de cada bem que o consumidor escolhe, dados os preços e sua renda. É o resultado do problema:

\[\max_{x_1, x_2} \; U(x_1, x_2) \quad \text{sujeito a} \quad p_1 x_1 + p_2 x_2 = m\]

A solução \(x_i^*(p_1, p_2, m)\) expressa a demanda como função dos preços e da renda. Em economia de troca pura, a renda é o valor da dotação inicial: \(m = p_1 \omega_1 + p_2 \omega_2\).

Nos callouts anteriores, encontramos alocações eficientes igualando \(TMS_A = TMS_B\) (curva de contrato). Agora o problema muda: queremos saber qual alocação o mercado seleciona a dados preços. Para isso, cada consumidor resolve seu problema de maximização individual, e verificamos se as demandas resultantes são compatíveis com as dotações totais.

Passo 2: Derivar a demanda marshalliana Cobb-Douglas via Lagrange (revisão).

O consumidor maximiza \(U(x_1, x_2) = x_1^{\alpha_1} x_2^{\alpha_2}\) sujeito a \(p_1 x_1 + p_2 x_2 = m\). O Lagrangiano é:

\[\mathcal{L} = x_1^{\alpha_1} x_2^{\alpha_2} + \lambda(m - p_1 x_1 - p_2 x_2)\]

Condições de primeira ordem:

\[\begin{aligned} \frac{\partial \mathcal{L}}{\partial x_1} &= \alpha_1 x_1^{\alpha_1-1} x_2^{\alpha_2} - \lambda p_1 = 0 & & \Rightarrow \lambda = \frac{\alpha_1 x_1^{\alpha_1-1} x_2^{\alpha_2}}{p_1} \\[6pt] \frac{\partial \mathcal{L}}{\partial x_2} &= \alpha_2 x_1^{\alpha_1} x_2^{\alpha_2-1} - \lambda p_2 = 0 & & \Rightarrow \lambda = \frac{\alpha_2 x_1^{\alpha_1} x_2^{\alpha_2-1}}{p_2} \\[6pt] \frac{\partial \mathcal{L}}{\partial \lambda} &= m - p_1 x_1 - p_2 x_2 = 0 & & \text{restrição orçamentária} \end{aligned}\]

Igualando as expressões de \(\lambda\) e simplificando:

\[\begin{aligned} \frac{\alpha_1 x_1^{\alpha_1-1} x_2^{\alpha_2}}{p_1} &= \frac{\alpha_2 x_1^{\alpha_1} x_2^{\alpha_2-1}}{p_2} & & \text{igualando } \lambda \\[6pt] \frac{\alpha_1}{\alpha_2} \cdot \frac{x_2}{x_1} &= \frac{p_1}{p_2} & & \text{simplificando os expoentes} \\[6pt] x_2 &= \frac{\alpha_2 p_1}{\alpha_1 p_2} \cdot x_1 & & \text{isolando } x_2 \end{aligned}\]

Substituindo na restrição orçamentária:

\[\begin{aligned} p_1 x_1 + p_2 \cdot \frac{\alpha_2 p_1}{\alpha_1 p_2} \cdot x_1 &= m \\[6pt] p_1 x_1 \left(1 + \frac{\alpha_2}{\alpha_1}\right) &= m & & \text{fatorando } p_1 x_1 \\[6pt] p_1 x_1 \cdot \frac{\alpha_1 + \alpha_2}{\alpha_1} &= m \end{aligned}\]

A demanda marshalliana Cobb-Douglas é:

\[\boxed{x_i^* = \frac{\alpha_i}{\alpha_1 + \alpha_2} \cdot \frac{m}{p_i}}\]

A fração \(\frac{\alpha_i}{\alpha_1 + \alpha_2}\) é a proporção constante da renda alocada ao bem \(i\). A constante multiplicativa \(A\) da função utilidade não afeta as demandas.

Passo 3: Calcular demandas brutas, líquidas e excesso de demanda agregada.

Em economia de troca pura, a renda é o valor da dotação: \(m = p_1 \omega_1 + p_2 \omega_2\). Com \(\alpha_1 = \alpha_2 = 1\), a fração orçamentária é \(1/2\) para cada bem.

Consumidor A — renda: \(m^A = 2 \cdot 10 + 1 \cdot 5 = 25\).

\[\begin{aligned} x_1^A &= \tfrac{1}{2} \cdot \tfrac{25}{2} = 6{,}25 & & \text{demanda bruta de } x_1 \\[6pt] x_2^A &= \tfrac{1}{2} \cdot \tfrac{25}{1} = 12{,}5 & & \text{demanda bruta de } x_2 \\[6pt] z_1^A &= 6{,}25 - 10 = -3{,}75 & & \text{demanda líquida: vendedor de } x_1 \\[6pt] z_2^A &= 12{,}5 - 5 = +7{,}5 & & \text{demanda líquida: comprador de } x_2 \end{aligned}\]

Consumidor B — renda: \(m^B = 2 \cdot 5 + 1 \cdot 10 = 20\).

\[\begin{aligned} x_1^B &= \tfrac{1}{2} \cdot \tfrac{20}{2} = 5 \\[6pt] x_2^B &= \tfrac{1}{2} \cdot \tfrac{20}{1} = 10 \\[6pt] z_1^B &= 5 - 5 = 0 & & \text{sem demanda líquida} \\[6pt] z_2^B &= 10 - 10 = 0 & & \text{sem demanda líquida} \end{aligned}\]

Note que B já está no ótimo a esses preços: sua razão de dotações \(\omega_2^B / \omega_1^B = 10/5 = 2 = p_1/p_2\), o que coincide com a \(TMS\) avaliada na dotação. Embora B esteja satisfeito, A quer trocar — e o mercado não fecha.

Passo 4: Calcular o excesso de demanda agregada.

O excesso de demanda agregada \(Z_i = \sum_j z_i^j\) mede o desequilíbrio no mercado do bem \(i\).

\[\begin{aligned} Z_1 &= z_1^A + z_1^B = -3{,}75 + 0 = -3{,}75 & & \text{excesso de oferta de } x_1 \\[6pt] Z_2 &= z_2^A + z_2^B = 7{,}5 + 0 = +7{,}5 & & \text{excesso de demanda de } x_2 \end{aligned}\]

Passo 5: Verificar a Lei de Walras.

A Lei de Walras estabelece que \(\sum_i p_i Z_i = 0\) para quaisquer preços — consequência das restrições orçamentárias individuais.

\[\begin{aligned} p_1 Z_1 + p_2 Z_2 &= 2 \cdot (-3{,}75) + 1 \cdot 7{,}5 = 0 \quad \checkmark \end{aligned}\]

A Lei de Walras é satisfeita, mas os mercados individuais não estão em equilíbrio (\(Z_1 \neq 0\), \(Z_2 \neq 0\)). Os preços \(p_1 = 2\), \(p_2 = 1\) não são preços de equilíbrio.

Demanda agregada Oferta (dotação) Excesso Diagnóstico
Bem 1 \(11{,}25\) \(15\) \(-3{,}75\) \(p_1\) muito alto → diminuir
Bem 2 \(22{,}5\) \(15\) \(+7{,}5\) \(p_2\) muito baixo → aumentar

Para alcançar o equilíbrio geral, é necessário ajustar os preços: \(p_1 \downarrow\) e/ou \(p_2 \uparrow\) até que \(Z_1 = Z_2 = 0\). O callout seguinte resolve esse problema.

Considere dois consumidores com as seguintes funções de utilidade:

\[U_A (x^{A}_{1}, x^{A}_{2}) = x^{A}_{1} x^{A}_{2}\]

\[U_B (x^{B}_{1}, x^{B}_{2}) = x^{B}_{1} x^{B}_{2}\]

Dotações iniciais:

  • \(\omega_1^A = 10\)
  • \(\omega_2^A = 5\)
  • \(\omega_1^B = 5\)
  • \(\omega_2^B = 10\)

Quais preços que levam essa economia ao equilíbrio?

No callout anterior, verificamos que preços arbitrários (\(p_1 = 2\), \(p_2 = 1\)) não levaram ao equilíbrio. Agora o objetivo é encontrar os preços que zeram o excesso de demanda.

Passo 1: Identificar parâmetros.

\(U\) \(\alpha_1\) \(\alpha_2\) Fração \(\omega_1\) \(\omega_2\)
A \(x_1^A x_2^A\) \(1\) \(1\) \(1/2\) \(10\) \(5\)
B \(x_1^B x_2^B\) \(1\) \(1\) \(1/2\) \(5\) \(10\)
Total \(15\) \(15\)

Fixamos \(p_1 = 1\) (numerário) e denotamos \(p_2 = p\).

Passo 2: Derivar as funções de demanda em termos de \(p\).

Da demanda marshalliana Cobb-Douglas: \(x_i^* = \frac{\alpha_i}{\alpha_1 + \alpha_2} \cdot \frac{m}{p_i}\), com \(m = p_1 \omega_1 + p_2 \omega_2\).

Consumidor A — renda: \(m^A = 1 \cdot 10 + p \cdot 5 = 10 + 5p\).

\[\begin{aligned} x_1^A &= \tfrac{1}{2} \cdot \frac{10 + 5p}{1} = \frac{10 + 5p}{2} \\[6pt] x_2^A &= \tfrac{1}{2} \cdot \frac{10 + 5p}{p} = \frac{10 + 5p}{2p} \end{aligned}\]

Consumidor B — renda: \(m^B = 1 \cdot 5 + p \cdot 10 = 5 + 10p\).

\[\begin{aligned} x_1^B &= \tfrac{1}{2} \cdot \frac{5 + 10p}{1} = \frac{5 + 10p}{2} \\[6pt] x_2^B &= \tfrac{1}{2} \cdot \frac{5 + 10p}{p} = \frac{5 + 10p}{2p} \end{aligned}\]

Passo 3: Calcular o excesso de demanda agregada como função de \(p\).

\[\begin{aligned} Z_1 &= x_1^A + x_1^B - \omega_1 \\[6pt] &= \frac{10 + 5p}{2} + \frac{5 + 10p}{2} - 15 \\[6pt] &= \frac{15 + 15p}{2} - 15 = \frac{15 + 15p - 30}{2} = \frac{15(p - 1)}{2} \end{aligned}\]

Pela Lei de Walras, basta resolver \(Z_1 = 0\) — o mercado do bem 2 entra em equilíbrio automaticamente.

Passo 4: Determinar o preço de equilíbrio.

\[\begin{aligned} \frac{15(p - 1)}{2} &= 0 \\[6pt] p^* &= 1 \end{aligned}\]

\[\boxed{p_1^* = 1, \quad p_2^* = 1}\]

Preços relativos iguais: \(p_1/p_2 = 1\). Resultado esperado — ambos têm preferências idênticas e as dotações totais são simétricas (\(\omega_1 = \omega_2 = 15\)).

Passo 5: Calcular alocações de equilíbrio e verificar.

Com \(p_1 = p_2 = 1\):

Dotação \((x_1, x_2)\) Renda Alocação \((x_1^*, x_2^*)\) Demanda líquida
A \((10;\; 5)\) \(15\) \((7{,}5;\; 7{,}5)\) Vende \(2{,}5\) de \(x_1\), compra \(2{,}5\) de \(x_2\)
B \((5;\; 10)\) \(15\) \((7{,}5;\; 7{,}5)\) Compra \(2{,}5\) de \(x_1\), vende \(2{,}5\) de \(x_2\)
Total \((15;\; 15)\) \((15;\; 15)\) \(Z_1 = Z_2 = 0 \;\checkmark\)

Verificando Pareto eficiência (\(TMS = \frac{\alpha_1}{\alpha_2} \cdot \frac{x_2}{x_1}\)):

\[\begin{aligned} TMS_A &= \frac{1}{1} \cdot \frac{7{,}5}{7{,}5} = 1 \\[6pt] TMS_B &= \frac{1}{1} \cdot \frac{7{,}5}{7{,}5} = 1 \\[6pt] TMS_A &= TMS_B = \frac{p_1}{p_2} = 1 \quad \checkmark & & \text{alocação Pareto eficiente} \end{aligned}\]

A troca segue a lógica de vantagem comparativa: A é relativamente rico em \(x_1\) e vende esse bem; B é relativamente rico em \(x_2\) e vende esse bem. Ambos convergem para a mesma cesta \((7{,}5;\; 7{,}5)\), refletindo a simetria das preferências.

Considere um modelo de equilíbrio geral de trocas puras com dois indivíduos: \(A\) e \(B\), e dois bens: \(x\) e \(y\).

Dotações iniciais:

  • \(A\): \(\omega_x^A = 10\) e \(\omega_y^A = 2.5\)
  • \(B\): \(\omega_x^B = 10\) e \(\omega_y^B = 20\)

Funções de utilidade:

  • \(U_A(x,y) = 2 x^{0.2} y^{0.3}\)
  • \(U_B(x,y) = 3 x^{0.5} y^{4.5}\)

Questão: Se fixamos o preço do bem \(x\) em \(1\) unidade monetária (\(p_x = 1\)), qual será o preço do bem \(y\) no equilíbrio competitivo?

Para a Cobb-Douglas \(U = A \cdot x^{\alpha} y^{\beta}\), a constante \(A\) não afeta as demandas Marshallianas — apenas os expoentes \(\alpha\) e \(\beta\) determinam as frações orçamentárias:

\[x^* = \frac{\alpha}{\alpha + \beta} \cdot \frac{m}{p_x} \qquad y^* = \frac{\beta}{\alpha + \beta} \cdot \frac{m}{p_y}\]

Passo 1: Identificar parâmetros e frações orçamentárias.

\(U\) \(\alpha\) \(\beta\) Fração em \(x\): \(\frac{\alpha}{\alpha+\beta}\) Fração em \(y\): \(\frac{\beta}{\alpha+\beta}\) Dotação \((\omega_x, \omega_y)\)
A \(2x^{0{,}2}y^{0{,}3}\) \(0{,}2\) \(0{,}3\) \(0{,}2/0{,}5 = 0{,}4\) \(0{,}3/0{,}5 = 0{,}6\) \((10;\; 2{,}5)\)
B \(3x^{0{,}5}y^{4{,}5}\) \(0{,}5\) \(4{,}5\) \(0{,}5/5 = 0{,}1\) \(4{,}5/5 = 0{,}9\) \((10;\; 20)\)

Dotações totais: \(\omega_x = 20\) e \(\omega_y = 22{,}5\). Fixamos \(p_x = 1\) (numerário) e denotamos \(p_y = p\).

Passo 2: Derivar as funções de demanda.

Consumidor A — renda: \(m^A = 1 \cdot 10 + p \cdot 2{,}5 = 10 + 2{,}5p\).

\[\begin{aligned} x^A &= 0{,}4 \cdot \frac{10 + 2{,}5p}{1} = 4 + p \\[6pt] y^A &= 0{,}6 \cdot \frac{10 + 2{,}5p}{p} = \frac{6 + 1{,}5p}{p} \end{aligned}\]

Consumidor B — renda: \(m^B = 1 \cdot 10 + p \cdot 20 = 10 + 20p\).

\[\begin{aligned} x^B &= 0{,}1 \cdot \frac{10 + 20p}{1} = 1 + 2p \\[6pt] y^B &= 0{,}9 \cdot \frac{10 + 20p}{p} = \frac{9 + 18p}{p} \end{aligned}\]

Passo 3: Calcular o excesso de demanda agregada.

\[\begin{aligned} Z_x &= (x^A + x^B) - \omega_x & & \text{demanda agregada menos dotação total} \\[6pt] &= (4 + p) + (1 + 2p) - 20 \\[6pt] &= 3p - 15 = 3(p - 5) \end{aligned}\]

\[\begin{aligned} Z_y &= (y^A + y^B) - \omega_y \\[6pt] &= \frac{6 + 1{,}5p}{p} + \frac{9 + 18p}{p} - 22{,}5 \\[6pt] &= \frac{15 + 19{,}5p - 22{,}5p}{p} = \frac{15 - 3p}{p} = \frac{3(5 - p)}{p} \end{aligned}\]

Passo 4: Determinar o preço de equilíbrio (\(Z_x = 0\)).

\[\begin{aligned} 3(p - 5) &= 0 & & \text{excesso de demanda de } x \text{ igual a zero} \\[6pt] p^* &= 5 \end{aligned}\]

Pela Lei de Walras, \(p_x Z_x + p_y Z_y \equiv 0\), então \(Z_y = 0\) automaticamente. Verificando: \(Z_y = 3(5 - 5)/5 = 0 \;\checkmark\)

\[\boxed{p_y^* = 5}\]

O bem \(y\) custa 5 vezes mais que \(x\), refletindo a forte preferência de B por \(y\) (90% da renda destinada a \(y\)).

Passo 5: Calcular alocações de equilíbrio e verificar eficiência de Pareto.

Com \(p_x = 1\) e \(p_y = 5\):

Dotação \((x, y)\) Renda \(m\) Alocação \((x^*, y^*)\) Demanda líquida
A \((10;\; 2{,}5)\) \(22{,}5\) \((9;\; 2{,}7)\) Vende 1 de \(x\), compra \(0{,}2\) de \(y\)
B \((10;\; 20)\) \(110\) \((11;\; 19{,}8)\) Compra 1 de \(x\), vende \(0{,}2\) de \(y\)
Total \((20;\; 22{,}5)\) \((20;\; 22{,}5)\) Mercados em equilíbrio \(\checkmark\)

Verificando a eficiência de Pareto (\(TMS = \frac{\alpha}{\beta} \cdot \frac{y}{x}\)):

\[\begin{aligned} TMS_A &= \frac{0{,}2}{0{,}3} \cdot \frac{2{,}7}{9} = \frac{2}{3} \cdot 0{,}3 = 0{,}2 \\[6pt] TMS_B &= \frac{0{,}5}{4{,}5} \cdot \frac{19{,}8}{11} = \frac{1}{9} \cdot 1{,}8 = 0{,}2 \\[6pt] TMS_A &= TMS_B = \frac{p_x}{p_y} = 0{,}2 \quad \checkmark & & \text{alocação Pareto eficiente} \end{aligned}\]

Referências