Consensus Dynamics Notes/Pizza
The pizza problem
David Graeber, anthropologist, in Direct Action: An Ethnography, p. 316, describes a consensus process training:
- This was followed by a role-play, where we used what I later learned is the classic, no-frills role-play for consensus trainings where you don't have that much time: twelve people ordering a pizza. If you have time, you can add all sorts of complications: various participants are secretly handed scraps of paper informing them they are passionately fond of anchovies, they're vegans, and so on. The task is to see if the person named facilitator can overcome these difficulties in a fairly short period of time-in this case, two minutes, which was slightly ridiculous.
I was inspired by this to adopt the pizza exercise as a study system for this modeling project. It turns out to be a rich and apt example.
As in Graeber's training, let's keep it simple by assuming everyone agrees on a restaurant, on sharing a single pizza, etc. The only problem is what to put on it.
A more complex exercise could include
- How many pizzas, choices for each one
- Half pizzas
- Which restaurant
- Pizza vs. Chinese food, etc., including assessing the difficulty of ordering together at each place.
- Splitting into smaller groups and going to different places.
I conjecture (and expect to find I'm wrong) that there may be two overall approaches, or at least it's useful to name the two.
- Central / transparent approach
- I'm in charge here, everybody tell me your preferences, and then I'll figure out what's a good order. You don't eat onions, you don't eat meat... ok, we'll order mushroom, tomato and black olives.
- Distributed negotiation approach
- — Person A: How about pepperoni and mushrooms?
- — B: I don't eat meat
- — C: How about the vegetarian special?
- — D: No onions for me
- — C: How about the veg. special without onions?
The transparent approach can be very efficient, but it's not feasible for a very complex problem in which there are too many possibilities to enumerate. Then you simply have to try some possibilities and look for something good without knowing whether other good combinations are going unconsidered. That's the distributed approach: you develop a shared understanding of what works and what doesn't from exploration, but not in an exhaustive way.
Note actually transparent doesn't imply centralized. It's just that you put all the criteria on the table, and then figure out what to order. But once it's completely enumerated, any one person can figure out the answer.
The search space
Let's consider a restaurant that offers three toppings, for simplicity. The logic is the same for more toppings, but it's harder to visualize. Say, pepperoni, mushroom, onion.
The set of toppings is
and all the possible pizza orders are subsets of this set, including the full set of all three, and the empty set (cheese pizza). We can also think of each possible pizza as a string of three bits — for instance for pepperoni only (one in the last place means yes to pepperoni and zeros in the other places mean no to the other things), for mushroom and onion, etc. They have a cube structure, where each corner is a combination, and combinations that differ in only one topping are neighbors.
Now we are exploring this space looking for a combination that works. Some people like some of them, and other people like others.
Subspaces and concerns
Up till now I've been looking at processes where we wander from one point to another testing for agreement. But look at what people do with pizza: they don't reject each combination one by one, they just say, "I don't eat meat." That simple sentence is a leap forward in sophistication from the earlier model: it allows us to eliminate the whole upper half of the cube in a single step!
Once someone says, "I don't eat meat," everybody understands that all the upper options are ruled out and the only space left to search is the bottom face of the cube. When we follow that with "No onions for me," we cut out the right half of the bottom face, leaving only the bottom left: (mushroom pizza) and (cheese pizza). These two steps dramatically reduce the search space, leaving a small one that's very easy to survey.
I think this is a step toward resolving a problem that's been bothering me: how to deal with concerns. In formal consensus process, after a proposal is made, people express their concerns with it and the group looks for ways to resolve the concerns by modifying the proposal (or questioning whether the concerns apply to the proposal). Also, if there were to be a debate about a proposal, it would involve pros and cons, cons being roughly equivalent to concerns and pros being the opposite. The fitness-landscape model, in which people can only say how much they like or dislike each proposal, doesn't have a place for these things. If I have a concern with a proposal, we should follow up by looking for a similar proposal that addresses the concern. That is, a concern is an attribute of a proposal which some other proposals may also have, but some may not. "Meat" is an example.
So the pizza cube and its faces provide an example of how people can identify an attribute of a proposal and use their understanding of that attribute to evaluate many proposals at once, and how it can greatly simplify searching in the solution space. In this example, there's a linear structure to the relevant attributes (see below), but it seems that other solution spaces could have useful attributes that are not linear in structure.
Linear and nonlinear toppings
If our preferences about any given topping are independent of the other toppings, the result can be thought of as linear in the mathematical sense, meaning that we can evaluate each one separately and combine the results: if a particular pizza doesn't contain any off-limits toppings, then it's acceptable. Toppings are nonlinear if they combine in more complex ways. An example of nonlinear toppings might be pineapple: if I don't want pineapple anywhere near my pizza, except that it goes great in the combination with Canadian bacon, we can't decide whether pineapple is an approved or rejected topping unless we know whether Canadian bacon is also in the proposal. If pineapple and Canadian bacon were genes in an organism, that give it high fitness when they're combined but low fitness when they appear separately, we would say they were epistatic.
Linear interactions allow us to use the "No onions for me" trick to evaluate them one by one, eliminating the bad ones and choosing from the remaining good ones, which makes the pizza problem much simpler than the general search-a-big-mysterious-space problem. If toppings are epistatic, the problem could be much more difficult and we might be reduced to trying combinations one by one, hoping to find an acceptable one.
On the other hand, it is possible that some nonlinear situations also have intelligible structure that makes it possible to simplify and solve the problem efficiently. I'll be looking for good examples (including non-pizza ones).
- If we're using the distributed process above, where one person proposes a pizza and another person shoots it down, until one doesn't get shot down, there's a difference between being the proposer and being a bystander: the proposer gets just the pizza they want, and everybody else gets a pizza they are willing to eat. It seems like there's an advantage to being the proposer of the winning pizza. So there might be strategy in when to propose and when not to.
A lateral jump, to another way of thinking about pizza: http://blog.ted.com/2012/03/02/lets-talk-about-sex-and-pizza-al-vernacchio-at-ted2012