On 12/8/05, <b class="gmail_sendername">Scott Ritchie</b> <<a href="mailto:scott@open-vote.org">scott@open-vote.org</a>> wrote:<div><span class="gmail_quote"></span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>Then make it 5 A>B>C, 4 B>C>A, and 3 C>A>B, and watch the same thing<br>happen.<br></blockquote></div><br>I looked into this a bit, and see what's going on and think it is easily fixable.<br><br>My approach would be to stick with the conceptual point of view that each voter has one software "agent", that attempts to convert the range ballot to the most strategic approval ballot, considering only that individual voters' strategic interest.  In order for each agent to be effective, though, it has to have the best information as to how all the other voters are likely to vote.
<br><br>The problem was that each agent was basing its strategy on the outcome of the previous round, assuming that to be the most accurate predictor of the outcome of the current round.  In a cyclic situation, this could be very inaccurate, since it could bounce back and forth between different leading candidates with each round.  If instead, the system averaged the scores of past rounds, this would stabilize the data and therefore be a far more accurate predictor of the current round's outcome.  (If we averaged ALL the past rounds, this would work fine and be very stable, but might take a bit longer to converge to the final results than if we just averaged a few rounds' worth each time)
<br><br>Of course in the end, we would not be using averaged totals, but current totals.  Once we have reached an equilibrium (which will happen as soon as the ordering of the totals doesn't change from one round to the next), we're good and there is no need to base anything on totals from previous rounds.  We can easily determine all approval ballots are optimum, and produce the final results from that Nash equilibrium ballot set.
<br><br>Note that I had initially considerered making it the agent look at the current vote counts, as opposed to the results of the last full round (or rounds).  This has a stability -- and efficiency -- benefit, at the cost of strict determinism, since the ordering of the ballots could (in theory) have an effect on the outcome.
<br><br>BTW, one other minor detail:  when dealing with very small numbers of voters, such as the examples you provided with only 3 voters, technically the agent should subtract its own previous vote from the previous round's totals.  That may or may not have made a difference in your examples.
<br><br>-rob