Thursday, December 5, 2024

Five years ago at the blog we were talking about an aborted twenty year old project that keeps getting more relevant

Didn't do a great job with this the first time. The patches are in brackets.

Wednesday, August 14, 2019

Agent-based simulations and horse-race journalism

(This was never my area of expertise, and what little I once knew I've mostly forgotten. Since lots of our regular readers are experts on this sort of things, I welcome criticism but I hope you'll be gentle.)

I tried a little project of my own back in the early 2000s. One of these days, I'd like to revisit the topic here and talk about what I had in mind and how quixotic the whole thing was, but for now there's one aspect of it that has become particularly relevant so here's a very quick overview so I can get to the main point.

Imagine you have an agent-based simulation with a fixed number of iterations and a fixed number of runs. You randomly place the agents on a landscape with multiple dimensions and multiple optima and have them each perform gradient searches.  Now we add one wrinkle. Each agent is aware of the position of at least one other agent and will move toward either the highest point in its search radius unless another searcher it is in communication with has a higher position in which case it heads toward that one.

[Let's explain this in a bit more detail. Say we have fifty agents, one hundred iterations, and two maxima (A with height 10 and B with height 5) and that agent 1 shares with agent 2, agent 2 shares with agents 1 and 3, and so forth. At the beginning of each iteration, each agent looks around a radius of one unit then shares the results with whatever other agents it is in communication with. Agents move toward the highest point they are aware of. If 1 found h=0.4, 2 found h=0.2 and 3 found h=0.3, 1 would move in the direction of the sharpest gradient, 2 would move in the direction of the the highest point 1 found and 3 would move in the direction of its sharpest gradient.

[After one hundred iterations, some agents will be at A, some will be at B and some will be in transit. At the end of one hundred iterations, we measure the height of each agent's endpoint and take the average. -- MP]

What happens to average height when we add lines of communication to the matrix? At one extreme where each searcher is only in contact with one other, you are much more likely to have one of them find the global optimum but most will be left behind. [If we greatly increase the number of iterations, all of the agents will hit the global optimum almost all the time -- MP] At the other extreme, if everyone is in contact with everyone, there is a far greater chance of converging on a substandard local optimum [In other words, given enough iterations, minimal communication consistently beats maximal. -- MP]. Every time I ran a set of simulations, I got the same [lopsided] U-shaped curve with the best results coming from a high but not too high level of communication.

It is always dangerous to extend these abstract ideas derived from artificial scenarios to the real world, but there are some fairly obvious conclusions we can draw. What if we think of the primary process in similar terms? Each voter is doing an optimization search, bringing in information on their own and trying to determine the best choice, but at the same time, they are also weighing the opinions of others performing the same search.

Given this framework, what is the optimal level of communication between voters via the polls? At what point does the frequency of polling reach a level where it makes it more likely for voters to converge on a sub-optimal choice? I'm pretty sure we've passed it.

 

No comments:

Post a Comment