Two comments on Andrew Gelman's defense of rational voting (as described at http://www.stat.columbia.edu/~gelman/research/published/rational_final6.pdf):
  1. The theory of rationality requires that the utility functions employed be "stable" -- you aren't allowed to have a different utility function for every different actions. (This requirement prevents the theory of rationality from being completely tautological.) But almost no one behaves according to the social utility function in the paper except when the cost of doing so is very small. For example, donating money to your candidate of choice does a much better job of optimizing that function than voting, and the number of donors is vastly smaller than the number of voters.

  2. Gelman et al explicitly assume voters who don't update on the beliefs of others. While the classical theory of rationality says nothing about updating, almost all of its modern extensions (for example, any variant of Bayesianism) require it. And updating should dilute your belief in the expected benefit of your preferred position or candidate winning precisely when the probability of you swaying the election is highest -- i.e., when the polls say it is near 50%/50%.

Put it together and it seems clear that our best theories of what it means to be a rational agent say that voting is irrational.