Show HN: Aiomas – An asyncio based library for multi-agent systems in Python
bitbucket.orgInteresting work!
At first glance it would seem that Erlang or Akka provide a proven infrastructure for building such a multi-agent system+. Yet, a key construct is the notion of time and its passage.
(+Which is subtly different from an agent-based model, for simplicity let's assume they're both the same thing.)
There is a profound observation by Rich Hickey in his talk [1] 'Are we there yet? - A deconstruction of object-oriented time' (the baseball field slide): "Perception is massively parallel and requires no co-ordination - This is not message passing!"
For example if the said ballpark suffered an earthquake, would the Matrix need to pass messages to each agent? Would a spectator continue walking toward the hot-dog stand just because the message hasn't shown up yet?
From this perspective, the notion of 'container clock' presented here can be useful. Question is whether we 'get to stop the world when we want to look around' (Hickey), or not.
[1] http://wiki.jvmlangsummit.com/images/a/ab/HickeyJVMSummit200...