Carregando WebR...
# ============================================ # Cournot com custos assimetricos # Exercicio Resolvido 16.1 # ============================================ a <- 100; b <- 1 # Demanda: p = a - b*Q c1 <- 10; c2 <- 20 cat("====== COURNOT ASSIMETRICO ======\n") cat("Demanda: p =", a, "- Q\n") cat("c1 =", c1, " c2 =", c2, "\n\n") # --- Funcoes de melhor-resposta --- # q1*(q2) = (a - c1 - b*q2) / (2b) # q2*(q1) = (a - c2 - b*q1) / (2b) MR1 <- function(q2) (a - c1 - b*q2) / (2*b) MR2 <- function(q1) (a - c2 - b*q1) / (2*b) # --- Equilibrio --- q1_star <- (a - 2*c1 + c2) / (3*b) q2_star <- (a - 2*c2 + c1) / (3*b) Q_star <- q1_star + q2_star p_star <- a - b * Q_star pi1 <- (p_star - c1) * q1_star pi2 <- (p_star - c2) * q2_star s1 <- q1_star / Q_star * 100 s2 <- q2_star / Q_star * 100 HHI <- (s1/100)^2 + (s2/100)^2 cat("--- Equilibrio de Nash ---\n") cat(sprintf("q1* = %.2f q2* = %.2f Q* = %.2f\n", q1_star, q2_star, Q_star)) cat(sprintf("p* = %.2f\n", p_star)) cat(sprintf("pi1 = %.1f pi2 = %.1f Pi = %.1f\n", pi1, pi2, pi1+pi2)) cat(sprintf("s1 = %.1f%% s2 = %.1f%%\n", s1, s2)) cat(sprintf("HHI = %.0f (escala 10.000)\n\n", HHI * 10000)) # --- Comparacao: Cournot simetrico (c = c1) --- q_sym <- (a - c1) / (3*b) Q_sym <- 2 * q_sym p_sym <- a - b * Q_sym pi_sym <- (p_sym - c1) * q_sym cat("--- Comparacao: simetrico (c = c1) ---\n") cat(sprintf("q* = %.2f cada Q = %.2f p = %.2f pi = %.1f cada\n\n", q_sym, Q_sym, p_sym, pi_sym)) cat("A assimetria de custos gera assimetria de producao:\n") cat("A firma eficiente (c1) produz mais e lucra mais.\n") # --- Grafico: Melhores-respostas --- par(mar = c(4.5, 4.5, 3, 2), bg = "#f8f9fa") q_seq <- seq(0, 100, length = 300) plot(q_seq, MR1(q_seq), type = "l", lwd = 3, col = "#0d6efd", xlim = c(0, 55), ylim = c(0, 55), xlab = expression(q[1]), ylab = expression(q[2]), main = "Cournot assimetrico: melhores-respostas", asp = 1) lines(MR2(q_seq), q_seq, lwd = 3, col = "#dc3545") # MR2 no eixo q1 # Equilibrio points(q1_star, q2_star, pch = 19, col = "#6f42c1", cex = 2.5) text(q1_star + 1.5, q2_star + 1.5, paste0("Nash (", round(q1_star,1), ", ", round(q2_star,1), ")"), col = "#6f42c1", cex = 0.8, font = 2) # Cournot simetrico points(q_sym, q_sym, pch = 17, col = "#198754", cex = 1.8) text(q_sym + 1.5, q_sym - 2, "Simetrico", col = "#198754", cex = 0.7, font = 2) # Linha 45 abline(a = 0, b = 1, col = "#adb5bd", lty = 3) legend("topright", legend = c(expression(MR[1](q[2])), expression(MR[2](q[1])), "Nash (assimetrico)", "Nash (simetrico)"), col = c("#0d6efd", "#dc3545", "#6f42c1", "#198754"), lwd = c(3, 3, NA, NA), pch = c(NA, NA, 19, 17), cex = 0.7, bg = "white")
▶ Executar
↻ Resetar
(Aguardando WebR...)