Very early in the semester I built (and subsequently failed to save anywhere) an element that did Abelian sandpile models, and in my experience it actually did produce deterministic outcomes. Which is sort of astonishing for the MFM, but was what I expected. This is actually one of the fascinating properties of this particular cellular automaton – that its outcome is not dependent on its update order.
This idea is pretty abstract, and would require a review of literature that might be over my head, but I'm really extremely interested in exploring what other ways simple rules might be able to produce deterministic output despite non-deterministic update orders.
I was also considering exploring uses for the fact that sandpiles tend to gravitate toward critical states. It might be possible to use sandpile “grains” as messaging packets to create a messaging system that passes data in a way that will cover a significant portion of a pile, but is also guaranteed to terminate.
At the very least I'll probably rebuild that sandpile element and collect some data verifying that it is in fact deterministic. Just for fun.
At this point I'm so taken with the concept of bonds that I'm actually leaning toward wanting to just do an implementation of that. I've got some ideas for how to use them for semi-permeable membranes, too.
As a less big-monster-central-questiong-of-the-entire-paradigm project than “consensus,” I have an idea for combining the wavefront/burn idea with the ant/nest concept with something like pheromones but which builds a sparse grid of copies of itself. Make the grid self-repairing, and use propagating/burning signals to map the gradient both back to the nest and to ants that have located things they are looking for. See if a solid resource-gathering behavior can be built that way, even inside a maze or around obstacles.
I'm still somewhat interested in consensusbuilding, but I kind of wonder if it should even be all that complex in a lot of cases. Certainly this is a big topic to bite into, and if I were to explore it I would need to find a way to focus a little.
Another more practical-applications sort of idea I have in my head is trying to think up a way of getting data in and out of an MFM in a robust fashion. This one probably also falls in the “too big” category though, unless I have a more specific idea before next week.