Showing posts with label genetic algorithm. Show all posts
Showing posts with label genetic algorithm. Show all posts

Thursday, April 8, 2010

Thoughtful Thursday, Can Voting Optimize? Can the Voters Learn

"Learning, voting and the information trap" Aleksander Berentsen, Esther Bruegger and Simon Loertscher! (I saw this in Public Choice 2005, but it seems to be at http://www.vwl.unibe.ch/papers/dp/dp0516.pdf. The authors published a journal article of the same title in Public Economics Volume 92 5 to 6, June 2008 pages 998 to 1010, which I will track down for a future Thoughtful Thursday.)

Can voting optimize? In engineering, optimization is finding the values of the parameters of an object or process so as to minimize weight, cost, environmental damage, etc. There are often constraints. Thus, what thickness of material, size of pipe, temperature in furnace gives us the best output from our chemical process. Constraints would be from the fact that at certain tempertures, materials would break down as well as the stoichiometry or arithmetic of the chemical process itself. In social science, it might be what is the tax rate that makes people on average happiest. That is basically the question that Berentsen, Bruegger and Loertscher asked. The voters don't know how effective tax money is in accomplishing a "public good," let's say education. So they increase or decrease taxes, see how much education they got for their taxes and vote again.

Will the voters find an optimal or at least Pareto optimal tax rate? (If the tax rate falls unequally upon individuals, more taxes for the wealthiest, the wealthier might prefer less goods and less taxes while those paying less taxes would prefer the opposite.) How some tax rates, very high ones, might lead to a situation that everyone considers bad--and a very low tax rate with no education at all everyone also considers bad. These are not Pareto optimal!

But there is a problem, the voters don't know exactly how much good they will get for their tax money. In other words, does more money equal better educated children, and by how much? Can the voting system find this out? The answer from their mathematical proofs based upon probability theory is that it would not. They don't. It is likely that society will end up believing the wrong thing about the relation between education and the amount of money put into it. It is likely that they would not achieve a Pareto optimal result for the amount of tax. The more mistaken society starts out, the more likely they would never get to the right place. They also looked at random noise or shocks. That is, other factors affect the quality of the students coming out of the school that have nothing to do with the amount of money in taxes--that upon which the people are voting. Some of these might vary as shocks--more like a sudden rise in oil prices affecting the economy.

There is a well known model of candidate voting, where each party chooses a position on the issue, in this case how much to tax. The authors use this rather than a participatory democracy rule. Obviously, I hope to simulate some of the tax policies I discussed in earlier postings to see if we get similar results--I expect that we will.

Although the authors did not look at it, this is a good model of the recent arguments over taxes. To what extent do high taxes discourage work and investment. As a people, we try high tax rates and see what happens with the economy and vice versa. Will we ever learn the true relationship between taxes and the economy? Assume one has a progressive tax. Can the voters find the optimal amount of progression. If it is too progressive, confiscatory, it might destroy incentives for people to work hard and achieve. And we would have less revenue -- Laffer's Curve. That is, as tax rate goes from zero to one hundred, there is a peak. The government of course gets no revenue at zero percent for obvious arithmetic reasons. They get no tax revenue at one hundred percent because they have no incentive to work or they find a ways to avoid the tax. If it is not progressive enough, insufficient revenue might be achieved to get public goods. I proposed voting on taxes and budget in the form of genetic algorithms--can the voters find the optimal function and find the true function determining work as a function of progressivity.

Sunday, February 28, 2010

Participatory Democracy for Taxes, Possible Approaches

Possible Mechanisms for Participatory Democracy for Taxes

I proposed and our group at Western Illinois University are implementing techniques for people to vote on the laws that constitute the tax code. The tax code could be represented as a decision tree which in the end leads to the amount of tax or a simple formula such as a linear function of income that gives one tax. A decision tree is a set of divisions, each of which will have other divisions. For example, we might vote to divide people on the basis of the number of children. Thus, we would look separately at those having zero children, one child, two children, three or four children, five to eight children, etc. This has been referred to in the literature (Reference One) as Recursive Partitioning.

Then, we might look at the ratio of earned (wages) to unearned income (bank interest, dividends, bond coupons). Thus, the tree might have a division for those having no children and eighty to one hundred percent wage income. Another branch for those having no children and sixty to eighty percent wage income, etc.

Then for each of these divisions, we would have a formula or graph relating income to division.

At each stage in the process, individuals would vote on what divisions to make and eventually the ratio of income.

Another student is working on applying genetic algorithms to determing a tax code.

But do we need rules? Do we need a tax code?

One could envision a taxing system that simply said: each individual and each entity would go before a jury. They would determine the tax they pay. How can we make it less arbitrary?
  1. Tax rates would not vary by more than ten percent year to year without a supermajority. To transition to that system, we would start with whatever tax the entity paid under our complicated tax code. Thus, if a firm paid four millions in taxes the previous year, their tax this year would be between 3.6 million and 4.4 million. However, sixty percent of the jury could vote to change it by twenty percent, in the example from 3.2 million to 4.8 million. Seventy percent could vote to change it by fourty percent, etc.
  2. Several entities could be grouped together for comparison. One possibility is to group them randomly. Thus, a jury would see a disparate group of entities, say
    1. a middle-class individual
    2. a working-class individual
    3. a financial institution
    4. a factory
    The jury would vote on a tax rate for each entity. It doesn't follow that the corporations would pay a higher rate than the individuals. The jury might find that the corporation truly is a public-spirited organization committed to sustainability. And it might find that the individual is a fuel hog in taking unnecessary trips, and not taking care of self. (See my blog entry on the badness tax.)
  3. The above scenario assumes no attempt to group elements. One certainly could group members. This can done by rules. That is, we could vote as discussed at the beginning for classifications. We could vote on dividing by corporation, partnership or individual. We could vote to divide by their net income, gross income or number of employees.. Thus, one would not be comparing small businesses with large businesses. But we wouldn't vote on a tax rate for the category, simply a number of sets to be collected from each group.

    A sample of let's say twenty individuals or entities or corporations would go before the tax jury. The tax jury would know that they have to collect a specific amount revenue from each set. (The computer would divide the total to be collected in each category by the amount of revenue).

    Example, we vote that we want to group all those married individuals earning between sixty-thousand dollars and eighty-thousand dollars and having two children in one group. We would look at the total income earned and decide that gather all such people should pay twenty billion in revenue. Assume this group was two-million families. Thus, on average each family would pay ten-thousand in taxes. And thus, each group of twenty would pay $200,000 in taxes. The jury would tnen adjust the $10,000 that each should pay based upon all kinds of other factors: how much have they given in charity, which have high medical bills or suffered other disasters this year, etc. etc.

    Each family would be given a chance to explain their financial situation and any reason why they should be given special consideration.

  4. The alternative to rules for categorization is clustering. This would introduce a second type of jury. This jury would be given pairs of individuals. They would get financial information for the two individuals in the pair. These jurors would indicate how similar they are; not how much taxes they should pay.

    There are many algorithms available that cluster items into similar groups including Self-organizing maps. In two or three spatial dimensions, this would be groups of points that are very close, forming a clump on a scattergraph. This could be extended to a tax situation in that the software would treat numbers such as number of children, incomes, as spatial dimension and place each taxpayer as a point in the "n-dimensional space." The clustering algorithm would find groups of tax payers that are similar in input characteristics. The taxpayers would go before groups of the first juror types to explain those special tax considerations that would be lower than individuals that are similar.

  5. There are many algorithms to take sets of example data and create a function out of them. (See the discussion below and references one and two for a good summary.) Thus, the jurors could rate several tax payers as to how much tax they should pay. This, of course, assumes that the characteristics that determine how much tax an individual or entity should pay are all quantitative or captured by the collected parameters (income, medical expenses, etc.) Are we better off allowing people to present these issues and construct the rules interactively and collaboratively, or merely say what the tax should be for various tax payers and construct the rules mechanically.
Computer scientists and statisticians have developed many different ways that one could learn functions from example data. These relate from such standby's as multiple regression to the new methods such as neural networks, and machine learning techniques. Thus, assume that we have juror ratings of one thousand tax payers. We can apply these techniques to generate a function between the parameters and the tax assigned. Obviously, one could replace the jurors by the formula. Alternatively, people could use such capabilities to estimate how much tax they would have to pay. This would be how "tax planning" would be done.

This is similar to the various services that report jury verdicts in tort litigation to help trial lawywers decide when and for how much to settle their cases.

Classification Procedures and Tax

James E. Parker and Kenneth F. Abromowicz tried both statistical methods and recursive participation to see if they could discover tax law from examples. They tried it on decision rules of a straightforward tax law provisions for whetehr somebody should be considered a dependent. They also compared the ID3 results with those of a common statistical techniques such as regression. The ID3 based approach did slightly better than other techniques.

They then looked at one hundred decisoins regarding "tax home." Taxpayers can deduct traveling expenses when away from home. But where is one's home? If I claim my home near Western Illinois University where I am an Associate Professor, I cannot deduct the cost to go to and from. But if I am temporarily in Pennsylvania during my sabbatical, can I take my carfare off my taxes? It depends on what is considered my home. The Researchers looked at such factors as where the person filed state tax, have income producing property and where one's children resided. The ID3 algorithm correctly correctly classified twenty-seven out of thirty tax cases while the statistical techniques did only 26 to 30.

The tax law considers a scholarship or fellowship not income. If a profit-making corporation pays one's tuition in exchange for working for them latger, that is income. But what about the assistantships that Ph.D. students often get. There are some duties, but it is more awarded to support promising students Garrison and Michelsen looked at one hundred cases and then presented a holdout sample. The ID3 correctly classified all twelve cases as compared to one two or three from statistical approaches.

The Internal Revenue Service has been looking into using machine learning techniques to identify tax returns that are potentially fraudelent. See94ARD 030-1, Statement of Margaret Milner Richardson on February 10, 1994. NCR Terradata division and States has been using such techniques to help catch those who don't file their State Income Tax or don't pay it problperly. And in 2006, the National Taxpayer Advocate reported on using machine learning to identify abusive tax returns.)

Proposed Work

We can simulate the ID3 algorithm and use Lindahl Equilibrium as a figure of merit. That is, I will hypothesize individuals with various incomes and characteristics. I will also hypothesize a distribution for their preference for public goods (defense, public libraries, public education, national and state parks). We will assume some percentage of them behave strategically and some percentage simply vote their true preferences. Dr. Wally Smith did some excellent simulations for multiple-candidate elections, which will be another Thoughtful Thursday.

As an empirical work, we will solicit stories from taxpayers where they will provide their tax return, other information that the jurors would consider relevant to how much tax they should pay and possibly have them give a video clip explaining how much tax they feel they should pay and why.

We will try two different sets of jurors. One set will simply vote on the taxes to be paid by each taxpayer. They will have a training set of half the sample tax data. Other groups will develop a classification scheme by ID3 or Genetic Algorithms.

Then, we will generate a tax code using the examples from the first set of jurors, and classify the holdout set, the other half. We will ask the first set of jurors how they liked the results for the second half. The second group will have the holdout set classified by the rules on which they just voted. We will see how they like the result.

We may have to make up some hypotheticals for the very rich as we probably could not get them to give us their data. Although some politicians are wealthy and do make their taxes public.

References

  1. Parker, James E. "Predictive Abilities of Three Modeling Procedures" The Journal of the American Taxation Association, 37 to 53, Volume 11 Number One Fall 1989.
  2. Garrison, Larry R. and Robert H. Michaelsen, "Symbolic Concept Acquisition: A New Approach to Determining Underlying Tax Constructs" Journal of the American Taxation Association, 77 to 91, Volume 11 Number One Fall 1989.

Thursday, September 17, 2009

Genetic Algorithms (Thoughtful Thursday Post)

In genetic algorithms, one represent information as a Chromosome, a series of values. E. G., assume we are optimizing a gas pipeline, that has five pumping stations each with a pressure differential and we have five pipe diameters between them. Thus we would have for two possibilities. I will refer to them as Configuration A and Configuration B.
P(1) P(2) P(3) P(4) P(5) D(1) D(2) D(3) D(4) D(5)

300  200  150  75    80   1.2  1.5  1.3  2.2  3.3

P(1) P(2) P(3) P(4) P(5) D(1) D(2) D(3) D(4) D(5)

275  300  125  140   140  1.8  1.2  1.4  2.1  3.1
This might represent the following real world configuration where the p(1)..p(5) in boxes are the pressure of the pumping stations and the d(1) to d(50 are the diameter of the pipes:
                           d(3)
_____      ______    _____   _____     _____
|    |d(1) |    |d(2)|    |  |    |d(4)|    |d(5)                               
|P(1)|==== |p(2)|=== |p(3)|==|p(4)|=== |p(5)|===
|    |     |    |    |    |  |    |    |    |                             
_____      ______    _____   _____     _____
The most important operation is crossover, where two possible pipleine configurations "mate" and produce two offspring. The system randomly chooses a point in the chromose, and the two mates get switched at that point. Assume the random number generate says cross over after D(2). The two children in the next set would be:
P(1) P(2) P(3) P(4) P(5) D(1) D(2) D(3) D(4) D(5)

300  200  150  75    80   1.2  1.5  1.4  2.1  3.1

P(1) P(2) P(3) P(4) P(5) D(1) D(2) D(3) D(4) D(5)

275  300  125  140   140  1.8  1.2  1.3  2.2  3.3
The second important operation is fitness evaluation and preferring high fitnesses. In the pipeline scenario, this fitness would probably the inverse cost. Thus, assume the two original configurations had costs of $100.00 and $75.00. Assume that there were two other configurations, call them Configuration C and Configuration D, with costs of $300.00 and $150.00.

The genetic algorithm uses random number generators to determine the chance of each configuration mating and thus contributing to the next set of chromosomes, the population in the terms of the Illigal algorithms. Then configuration B would have four times the chance of mating as C and D would have half the chance of mating as configuration C.

Application to taxation and budgeting

In our project, the chromosome will include the various tax rates. These are the marginal tax rates for each quintile of income (with a few special ones for the richest.

R(1) - tax rate for those in the bottom twenty percent of income
R(2) - tax  rate for those in the twenty to fourty percent of income
R(3) - tax rate for those in the fourty to sixty percent of income
R(4) - tax rate for those in the sixty to eighty percent of income
R(5) - tax rate for those making between eighty to ninety-five percent
       of income
R(6) - tax rate for those making between ninety-five percent and
       ninety percent of the income
R(7) - tax rate for those in the top one percent of income
And then, we have the budget amounts, how much to be spent on:
R(8) - social security
R(9) - defense
R(10) - education
R(11) - medicare
R(12) - transportation
R(13) - agriculture
R(14) - aid to low income families
R(15) - training labor and unemployment
R(16) - international affairs

Schemata

David Goldberg's book very nicely explains schemata (Genetic algorithms in search, optimization, and machine learning / by David E. Goldberg. Published: Reading, Mass. : Addison-Wesley Pub. Co., 1989, which is where I got the information in this article ). Schemata represent that we have chosen several fields. The other's have not been chosen yet. In our first example, the schemata
P(1)=300 * * * * * D(1)=1.2 * * * * *
represents a specific value for the pressure in pumping station one and a specific value for the pipe to its right. The schemata,
P(1)=300 P(2) = 200 * * *  * * * * *
represents all the possible configurations with pumping station one having pressure of 300 and pumping station two having pressure of 200.

In crossover, which schemata is most likely to be disrupted by the crossover which occurs each cycle, it is the first with about a fifty percent chance of getting disrupted. The second schemata has only a ten percent chance of getting disrupted as of the ten possible divisions only one will disrupt the schemata.

(These are approximations as most genetic algorithms use scaling to get better performance to prevent random variations that happenn to fit from dominating in the early stages and to magnify differences for fine tuning at the end of the optimization, but that doesn't concern the main idea of what we are doing in social choice.)

In taxes, schemata might represent

R(1) = 0.1 R(2) = 0.2 * * * *  * * * * *  * 
The tax rates forthe two lowest income quintiles thus constitute a schema, and since they are next to each other on the chromosome, they would be most likely preserved. On the other hand, a relationship between the tax rate on the lowest quintile and the money for welfare (aid to low-income persons) would not likely to be preserved. , e.g.
R(1) = 0.1 * * * *   * * * * *  * * * R(14) = 10.0E6 *  *
That is because the first is on R(1) and the second is on R(14). Practically every cross-over will ruin this connection.

There are two other operators, mutation, which is randomly changing one value in the chromosome and inversion which is changing the order of operations. In this space, we could allow individuals to make proposals of new chromosomes or changes. Mutations thus introduce new possible budgets into the mix.

An interesting twist would be to proceed the genetic algorithm by a process where individuals give their degree of associativeness between two characteristics. This would be a pseudo-inversion.

MR. Lessard, a graduate student in our department, has started two programs in that direction: He implemented a web system for the above genetic algorithm.

  1. After logging in and do "informed consent" stuff, the participants enters their ideal budget. Thus, the initial population consists of everyone's ideal budgets.
  2. When the system has everyone's ideal budget (or at least from enough people), it will cross them over. Each of these will be presented for rating.
  3. The users will rate five budgets each.
  4. The system will do cross over on the results. These will be based on the fitness ratings in step three.
  5. Return to Step Two
Simulation of the strategic behavior will start from the software provided The second step will be a simulation starting from the University of Illinois Library. I have marked the modifications so that we can test strategic behavior. What happens if one or two sets of raters don't give their honest rating, but attempt to give (strategic behavior in the game theory and algorithmic mechanism design literature) a rating that is more likely to have them end up with a budget more to their liking.

Of course, a more basic question is whether the genetic algorithm will converge to a Lindahl Equilibrium. Thus, the first experiment will be to run the genetic algorithm with no strategy. The fitness chromosome will simply the taxation for each group. Each group will have a linear fitness function to give the d U / dTax = M * Tax + b where U is the utility. Each group will be assumed to rate the tax level proportional to the total benefit it receives from the total tax revenue. Thus, the benefit is the integral of the above function up to the total tax on all groups. Then, we will try strategic voting and a genetic algorithm where the chromosome represents a tax which is a piecewise linear function of the Income.

(I really appreciated the lecture of Dr. Warren Jones of this University on Lindahl Equilibrium when I took his Summer Public Finance course. It is on my to do list to write a more detailed Thoughtful Thursday piece on Lidnahl Equilibrium. The next best is the presentation in David N. Hyman, Public Finance, Fifth Edition page 136 to 144,)