Carregando WebR...
# ============================================ # Monopsonio no Mercado de Trabalho # Exercicio Resolvido 17.2 # ============================================ # Oferta de trabalho: w = a + b*H # VPMgL = d - e*H a <- 4; b <- 2 # w(H) = 4 + 2H d <- 100; e <- 2 # VPMgL = 100 - 2H cat("====== MONOPSONIO ======\n") cat("Oferta: w =", a, "+", b, "* H\n") cat("VPMgL =", d, "-", e, "* H\n\n") # --- Equilibrio competitivo --- # VPMgL = w => d - e*H = a + b*H Hc <- (d - a) / (e + b) wc <- a + b * Hc cat("--- Equilibrio competitivo ---\n") cat(sprintf("H_c = %.1f w_c = %.1f\n\n", Hc, wc)) # --- Monopsonio --- # CMgL = a + 2b*H (derivada do custo total wH = (a+bH)H) # VPMgL = CMgL => d - e*H = a + 2b*H Hm <- (d - a) / (e + 2*b) wm <- a + b * Hm VPMg_m <- d - e * Hm exploração <- VPMg_m - wm cat("--- Monopsonio ---\n") cat(sprintf("H_m = %.1f w_m = %.1f\n", Hm, wm)) cat(sprintf("VPMgL(H_m) = %.1f\n", VPMg_m)) cat(sprintf("Exploracao monopsonistica = %.1f\n\n", exploração)) # --- Salario minimo = w_c --- w_min <- wc # CMgL = w_min ate onde oferta = w_min, depois CMgL normal # VPMgL = w_min => d - e*H = w_min H_min <- (d - w_min) / e cat("--- Salario minimo = w_c ---\n") cat(sprintf("w_min = %.1f => H = %.1f\n", w_min, H_min)) cat(sprintf("Variacao emprego: %.1f -> %.1f (+%.0f%%)\n", Hm, H_min, (H_min/Hm - 1)*100)) cat(sprintf("Variacao salario: %.1f -> %.1f (+%.0f%%)\n\n", wm, w_min, (w_min/wm - 1)*100)) # --- Comparacao --- cat("--- Resumo ---\n") cat(sprintf("%-20s %-10s %-10s\n", "", "Monopsonio", "Competitivo")) cat(strrep("-", 42), "\n") cat(sprintf("%-20s %-10.1f %-10.1f\n", "Emprego (H)", Hm, Hc)) cat(sprintf("%-20s %-10.1f %-10.1f\n", "Salario (w)", wm, wc)) cat(sprintf("%-20s %-10.1f %-10.1f\n", "VPMgL", VPMg_m, wc)) cat(sprintf("%-20s %-10.1f %-10.1f\n", "Exploracao", exploração, 0)) # --- Grafico --- par(mar = c(4.5, 4.5, 3, 2), bg = "#f8f9fa") H_seq <- seq(0, 30, length = 300) w_oferta <- a + b * H_seq CMgL <- a + 2*b * H_seq VPMgL <- d - e * H_seq plot(H_seq, VPMgL, type = "l", lwd = 3, col = "#0d6efd", xlim = c(0, 30), ylim = c(0, 110), xlab = "Emprego (H)", ylab = "w, VPMgL, CMgL", main = "Monopsonio vs. Competitivo") lines(H_seq, w_oferta, lwd = 3, col = "#198754") lines(H_seq, CMgL, lwd = 3, col = "#dc3545", lty = 2) # Salario minimo segments(0, w_min, H_min, w_min, lwd = 2, col = "#fd7e14", lty = 4) # Pontos points(Hm, wm, pch = 19, col = "#dc3545", cex = 2) text(Hm + 1, wm + 3, paste0("Monop. (", Hm, ", ", wm, ")"), col = "#dc3545", cex = 0.7, font = 2) points(Hc, wc, pch = 17, col = "#198754", cex = 2) text(Hc + 1, wc + 3, paste0("Compet. (", Hc, ", ", wc, ")"), col = "#198754", cex = 0.7, font = 2) # Exploracao (segmento vertical) segments(Hm, wm, Hm, VPMg_m, lwd = 2, col = "#6f42c1", lty = 3) text(Hm - 2, (wm + VPMg_m)/2, paste0("Expl. = ", exploração), col = "#6f42c1", cex = 0.7, font = 2) # PPM (triangulo) polygon(c(Hm, Hc, Hc, Hm), c(wm, wc, VPMg_m, VPMg_m), col = rgb(0.85, 0.2, 0.2, 0.1), border = NA) legend("topright", legend = c("VPMgL (demanda)", "Oferta (w)", "CMgL", "Salario minimo"), col = c("#0d6efd", "#198754", "#dc3545", "#fd7e14"), lwd = 3, lty = c(1, 1, 2, 4), cex = 0.65, bg = "white")
▶ Executar
↻ Resetar
(Aguardando WebR...)