December 9, 2015

A Markov Chain Model of Migration and Social Utility

Two Region Markov Chain Example

  • Outlined in the paper "Using Markov Chains to Model Human Migration in a Network Equilibrium Framework", by J. Pan and A. Nagurney

  • For the individual, each region is assumed to have its own utility function, which is a function of its population, and a cost of moving, which is a function of the number of people moving in the current iteration.

  • The two regions have an initial population vector \(p = [p_1, p_2]\)

  • The flow matrix, which we solve for, will be \(F = \left[ \begin{array}{cc} f_{11} & f_{12} \\ f_{21} & f_{22} \end{array} \right]\)

Two Region Markov Chain Example

  • This leaves us with the functions \(u_1 (p)\), \(u_2 (p)\), \(c_{12} (f)\) and \(c_{21} (f)\).

  • People will move from locations of lower utility to locations of higher utility.

  • At each iteration, we can solve the following for f:

\[ u_i (p) + c_{ij} (f) = u_j (p) \]

Two Region Markov Chain Example

Two Region Markov Chain Example

flowcalcpan <- function(p){
  if(u2pan(p) > u1pan(p)){
    f1 <- (p[1] - p[2] + 6)/4
    f <- c(f1,0)
  }else if(u1pan(p) > u2pan(p)){
    f2 <- (p[2] - p[1] - 6)/4
    f <- c(0,f2)
  }else{f <- c(0,0)}
  
  return(f)
}

Two Region Markov Chain Example

p0 <- c(4,2)

u0 <- c(u1pan(p0), u2pan(p0))

pdatapan <- data.frame(p1 = 4, p2 = 2, u1 = u0[1], u2 = u0[2], 
                       totu = p0 %*% u0 )

iter <- 1:5

for(i in iter){
  p <- c(tail(pdatapan$p1,1),tail(pdatapan$p2,1))
  f <- flowcalcpan(p)
  p[1] <- p[1]-f[1]+f[2]
  p[2] <- p[2]+f[1]-f[2]
  u <- c(u1pan(p),u2pan(p))
  totu <- p %*% u

  pdatapan <- rbind(pdatapan, c(p[1], p[2], u, totu))
}

Social Utility

p1 p2 u1 u2 totu
4.000 2.000 4.000 12.000 40.00000
2.000 4.000 6.000 10.000 52.00000
1.000 5.000 7.000 9.000 52.00000
0.500 5.500 7.500 8.500 50.50000
0.250 5.750 7.750 8.250 49.37500
0.125 5.875 7.875 8.125 48.71875

Social Utility

  • In the last slide, you can see total social utility in the last column
  • This is equal to the individual utility at each location times the population of each location
  • or, \(p \times u^T\), with p as the population vector and u as the utility vector, whose lengths are the number of locations.
  • In this model, it is not guarenteed that people acting in their own self interest will lead to a socially optimal distribution.

Maximizing Social Utility

  • This is solveable by linear programming

  • \(u_{TOT} = p \times u\)

  • \(u_{TOT} = p_1 (8-p_1) + p_2 (14-p_2)\)

  • Subject to: \(p_1 + p_2 = p_{TOT} = 6\)

Maximizing Social Utility

Maximizing Social Utility

  • Social Utility is Maximized at \(p_1 = 1.5\), and \(p_2 = 4.5\)

Achieving Maximum Social Utility

  • How can a society achieve maximum social utility?

  • Lets model the decision that taxes the residents in the higher utility region and redistributes the gains to the lower utility region

Achieving Maximum Social Utility

Achieving Maximum Social Utility

  • This is somewhat like the prisoner's dilemma.

  • If 5t < 2, moving is a strictly dominant strategy for player 1, so they will definitely do that. Given this, player 2 gets the same payoff whether or not they tax, so we'll assume they have a 50% chance of taxing.

  • If 5t > 2, we still end up in the same place! Consider the situation where player 1 moves and player 2 taxes. Player 1 would be better off if they decided to stay.

  • However, if player 1 decided to stay, player 2 would vote to not tax. Given that, it would make sense for player 1 to move. This suggests there might be a mixed strategy equilibrium.

Achieving Maximum Social Utility

  • Lets assume Player 1 will move with probability \(p_m\), and Player 2 will tax with probability \(p_t\), and look at the decision facing player 2:

  • Tax: \(8p_m + (1-p_m)(10-t) = 10 - 2p_m - t + p_m t\)

  • No Tax: \(8p_m + 10(1-p_m) = 10 - 2p_m\)

  • The p_m that would induce player 2 to mix between these two strategies would occur when these two payoffs are equal. So:

  • \(10 - 2p_m - t + p_m t = 10 - 2p_m\)

  • \(p_m = 1\). In a mixed strategy equilibrium, player 1 will move no matter what the tax is.