MICROECONOMÍA INTERMEDIA CON R

Curvas de Indiferencia

Preferencias y Utilidad

Axiomas de la Elección Racional

Una forma de iniciar el análisis de los individuos es plantear un conjunto básico de postulados, o axiomas, que describen el comportamiento “racional” del mismo. Supondremos que dadas dos cestas de consumo cualesquiera, \((x_{1},x_{2})\) y \((y_{1},y_{2})\). El consumidor puede ordenarlas según su atractivo. Es decir, puede decidir que una de ellas es estrictamente mejor que la otra o bien que le son indiferentes.

Utilizaremos la notación:

  • \(\succ\) para indicar que una cesta se prefiere estrictamente a otra, es decir, \((x_{1},x_{2}) \succ (y_{1},y_{2})\).
  • \(\sim\) para indicar que al consumidor le resulta indiferente elegir una u otra de las dos cestas de bienes y lo representamos matemáticamente como \((x_{1},x_{2})\sim (y_{1},y_{2})\).
  • \(\succeq\) Si el individuo prefiere una de las dos cestas o es indiferentes entre ellas, decimos que prefiere débilmente la \((x_{1},x_{2})\) a la \((y_{1},y_{2})\) y escribimos \((x_{1},x_{2}) \succeq (y_{1},y_{2})\).

Con base en todo lo anterior, ya estamos listos para mencionar los tres axiomas de la teoría del consumidor. Decimos que las preferencias son:

  • Completas Suponemos que es posible comparar dos cestas cualesquiera. Es decir, dada cualquier cesta \(X\) y cualquier cesta \(Y\), suponemos que \((x_{1},x_{2}) \succeq (y_{1},y_{2})\) o \((y_{1},y_{2}) \succeq (x_{1},x_{2})\) o las dos cosas, en cuyo caso el consumidor es indiferente entre las dos cestas.
  • Reflexivas Suponemos que cualquier cesta es al menos tan buena como ella misma: \((x_{1},x_{2}) \succeq (y_{1},y_{2})\).
  • Transitivas Si \((x_{1},x_{2}) \succeq (y_{1},y_{2})\) y \((y_{1},y_{2}) \succeq (z_{1},z_{2})\), suponemos que \((x_{1},x_{2}) \succeq (z_{1},z_{2})\). En otras palabras, si el consumidor piensa que la cesta X es al menos tan buena como la Y y que la Y es al menos tan buena como la Z, piensa que la X es al menos tan buena como la Z.

Considere que cuando nos referimos a la cesta X, Y, o Z, estamos haciendo referencia a:

  • \(X = (x_{1},x_{2})\)
  • \(Y = (y_{1},y_{2})\)
  • \(Z = (z_{1},z_{2})\)

Si las preferencias no fueran transitivas, podría muy bien haber un conjunto de cestas tal que ninguna de las elecciones fuera la mejor.

Utilidad

Las preferencias de los individuos están representadas por una función de utilidad de la forma

\[U(x_{1},x_{2}, . . . , x_{n})\] donde \(x_{1},x_{2}, . . . , x_{n}\) son las cantidades de cada una de los \(n\) bienes que podrían consumirse en un periodo. Esta función es única hasta que la transformación de la misma altere el orden.

En esta representación consideramos que las variables son “bienes”; es decir, independientemente de las cantidades económicas que representen, suponemos que, dentro de un periodo, los individuos prefieren más de un \(x_{i}\) particular que menos. Suponemos que esto ocurre con todos los bienes, ya sea un bien de consumo simple, como una hamburguesa, o un agregado complejo, como la riqueza o el ocio.

La figura representa esta convención en el caso de una función de utilidad de dos bienes.

El área sombreada representa las combinaciones de \(x\) e \(y\) que son contundentemente preferibles a la combinación \(x^*\), \(y^*\). Ceteris paribus, los individuos prefieren más que menos de un bien cualquiera. Las combinaciones señaladas con “?” implican cambios ambiguos del bienestar, porque incluyen más de un bien pero menos del otro.

Siendo honesto con tigo cuando aprendí por primera vez sobre las funciones de utilidad y sus curvas de indiferencia asociadas, se me mostro una figura intimidante que se parecía un poco a la imagen de abajo.

Algunas cosas fueron motivo de preocupación inmediata: ¿por qué hay múltiples curvas de indiferencia para una función si solo representa a un consumidor? ¿Por qué se mueven las curvas? Entonces, mientras respondía mis propias preguntas, pensé que compartir el conocimiento sería útil. Con suerte, esta publicación proporcionará una mejor descripción de la que tal vez la mayoría de nosotros haya escuchado y al final comprenderá:

  • Qué son las curvas de indiferencia y qué representan
  • Cómo se relaciona una restricción presupuestaria con estas curvas de indiferencia y la función de utilidad general
  • Cómo optimizar la utilidad dentro de estas limitaciones (si eres valiente)

Para el alcance de esta publicación, supondré que tiene una comprensión fundamental de la teoría de la utilidad.

Curvas de Utilidad e Indiferencia

Con base en la definición previa de utilidad, podemos decir en pocas palabras, una función de utilidad es una función que explica la cantidad de utilidad que posee un consumidor dado su consumo de dos bienes diferentes, \(x\), \(y\). Una curva de indiferencia es solo una rebanada infinitesimal de esa función que describe todas las diferentes combinaciones entre dos bienes que producen la misma cantidad de utilidad (es decir, a la que una persona sería indiferente). Entonces, una función de indiferencia definida por \(U(x,y) = 2x + y\) lo que quiere decir que una persona tiene una indiferencia a dos \(x\) o uno \(y\) y todas las diferentes posibilidades a lo largo de esa curva.

En el ambito de seguros por atención a la salud, comunmente sugerimos que la utilidad de una persona se puede definir como su consumo de atención medica, \(AM\), y su consumo de todos los demás beneficios, \(DB\), de modo que \(U(AM,DB) = 2AM + DB\). Nuevamente, \(2AM + DB\) es arbitrario: la utilidad se define por las preferencias de uno. En este caso, leeriamos que se prefiere el consumo de atención medica mas de la mitad que el consumo de otros beneficios. En realidad, ambas variables podrían representar funciones individuales por sí mismas, pero por ahora lo mantendremos simple.

# Librerias 
knitr::opts_chunk$set(echo = TRUE)
library(knitr)
library(plotly)
library(shiny)
library(tidyverse)
library(ggthemes)

# 1. Creación de una matriz de utilidad para su posterior trazado 

b <- 0.6   # --- Función de utilidad Cobb-Douglas  (b es una elección aleatoria mía) 

# 1.1 utilizará esta función para crear valores de utilidad a partir de una matriz de 100x100

utilidad <- function(x, y){ 
  (x^b)*(y^(1-b))
}

# 1.2 creando una matriz para hacer un bucle en la función de utilidad
val_matriz <- matrix(0, 
                       nrow = 200,
                       ncol = 200)

# 1.3 matriz de población con función de utilidad
for(r in 1:nrow(val_matriz)){   
  for(c in 1:ncol(val_matriz)){
    val_matriz[r,c] <- utilidad(r,c)
    
  }
}

# 1.4 Matriz de presupuesto a trazar

# Función presupuestaria: 2x + 3y = z

presupuesto <- function(x,y){
  z <- (1/4)*x + (1/2)*y
  z
}

matriz_presp <- matrix(0, 
                       nrow = 200,
                       ncol = 200)

for(r in 1:nrow(matriz_presp)){
  for(c in 1:ncol(matriz_presp)){
    x <- r
    y <- c
    matriz_presp[r,c] <-  presupuesto(x,y)
  }
}

plot_presup <- function(presp_input){
  # la función presupuestaria se definirá como z(x,y) = (1/4)x + (1/2)y
  # donde entrada presupuesto (presp_input) = z
  x_intercept <- floor(presp_input/0.25)    # resolver para la máxima coordenada x (0,x)
  if(x_intercept > 200){
    x_intercept <- 200
  }
   y <- c()
  for(i in 1:x_intercept){                # iterar a través de todo x hasta x_intercept
    y_coord <- (presp_input - 0.25*i)/0.5
    if(y_coord > 200){
      y <- NA
    }
    y <- c(y, y_coord)
  }
  
  data <- data.frame(
    x = 1:x_intercept,
    y = y,
    z = rep(presp_input, x_intercept)
  )
 return(data)
}

Luego, con base en las funciones creadas en el bloque de código previo, podemos trazar las curvas de indiferencia de la función de Cobb-Douglas (\(x^by^{1-b}\)) en dos dimensiones podrían verse así:

utilidad_plot <- function(utilidad_input){
  # la función de utilidad se definirá como z(x,y) = (x^0.6)(y^0.4)
  # where utilidad_input = z
  
  y <- c()
  
  for(i in 1:100){                # terar a través de todo x hasta 100
    y_coord <- (utilidad_input/(i^(0.6)))^(10/4)
    y <- c(y, y_coord)
  }
  
  data <- data.frame(
    x = 1:100,
    y = y,
    z = rep(utilidad_input, 100)
  )
  return(data)
}

utilidad_list <- lapply(seq(from = 10, to = 60, by = 10), utilidad_plot)


full_df <- do.call(rbind, utilidad_list)

ggplot() +
  geom_point(data = full_df, aes(x = x, y = y, color = z)) +
  geom_path(data = full_df, aes(x = x, y = y, color = z)) +
  theme_minimal() +
  ylim(0,100) +
  labs(x = "Atención Medica", y = "Otros Beneficios") +
  scale_color_continuous(name = "Utilidad")

Antes de continuar señalaremos lo siguiente:

  • A medida que aumenta la utilidad, las curvas se desplazan hacia la derecha y hacia la izquierda a medida que disminuye la utilidad.

  • Observe que las curvas se inclinan hacia abajo; este debe ser necesariamente el caso; a medida que uno aumenta su consumo de \(AM\), renunciarán al otro bien que les era indiferente, \(DB\).

  • Todo lo que está debajo de la curva de una utilidad dada representa paquetes con menos utilidad. La teoría de la utilidad asume que un consumidor siempre buscará maximizar la utilidad.

  • Comprende que la pendiente no es lineal. En general, cuanto más se tiene de algo, menos utilidad se obtendrá de otra unidad y, por el contrario, más se renunciaría a adquirir el otro bien. Esta pendiente tiene un nombre oficial: Tasa Marginal de Sustitución o \(TMS\) hablaremos de esto posteriormente.

Pero esas son solo algunas rebanadas que ya he señalado como infinitesimalmente pequeñas.

Limitaciones Presupuestarias

Como dije antes, la teoría de la utilidad sugiere que uno buscará maximizar su utilidad en todas las situaciones. Entonces, naturalmente, debe haber alguna restricción, de lo contrario, un consumidor consumiría indefinidamente, lo cual sabemos que no es la realidad. Por lo tanto, no es difícil imaginar que la restricción del consumidor suele ser un presupuesto fijo, una cantidad finita de dinero que tiene que gastar. Entonces, un presupuesto nos dice cuánto podemos gastar y, por lo tanto, debemos maximizar nuestra utilidad dentro de esa restricción.

usemos \(z\) de nuevo para denotar nuestro presupuesto y suponer que el cuidado de la salud es la mitad del precio de todos los demás consumos (nuevamente, una ecuación arbitraria). Su presupuesto se define entonces como,

\[I \geq \frac{1}{4}AM + \frac{1}{2}DB\]

Los coeficientes de una función presupuestaria representan precios y podrían ser cualquier cosa en teoría. En este caso, puedo pagar 2 unidades de AM por una unidad de DB y mi restricción presupuestaria, I , me dirá cuánto de cada uno puedo comprar. Además, la relación de precios,\[\frac{P_{DM}}{P_{AM}}\], representa la pendiente de la función presupuestaria.

Nuevamente, en dos dimensiones, la función presupuestaria podría verse así:

plot_presp <- function(presp_input){
  # la función presupuestaria se definirá como z(x,y) = (1/4)x + (1/2)y
  # donde presp_input = z
  x_intercept <- floor(presp_input/0.25)    # resolver para la máxima coordenada x (0,x)
  if(x_intercept > 200){
    x_intercept <- 200
  }
  y <- c()
  for(i in 1:x_intercept){                # iterar a través de todo x hasta x_intercept
    y_coord <- (presp_input - 0.25*i)/0.5
    if(y_coord > 200){
      y <- NA
    }
    y <- c(y, y_coord)
  }
  
  data <- data.frame(
    x = 1:x_intercept,
    y = y,
    z = rep(presp_input, x_intercept)
  )
  return(data)
}

presp_list <- lapply(seq(from = 10, to = 60, by = 10), plot_presp)


full_df <- do.call(rbind, presp_list)

ggplot() +
  geom_point(data = full_df, aes(x = x, y = y, color = z)) +
  theme_minimal() +
  ylim(0,100) +
  scale_color_continuous(name = "Presupuesto") +
  labs(x = "Atención Medica", y = "Otros Beneficios")

Una vez más, a medida que aumenta el presupuesto (o los ingresos), aumenta la combinación de bienes que uno puede comprar. Y, cualquier cosa por debajo de ese segmento máximo se consideraría inferior ya que un consumidor busca maximizar sus bienes comprados con ingresos.

Entonces ahora queda la pregunta, ¿cómo maximizar la utilidad dentro de una restricción presupuestaria dada si conocemos las funciones que definen ambas? En un articulo que proximamente les compartire trateremos de responder esta pregunta.