Stigmergy applied in Sensorica
Sensorica uses a mix of stigmergy and agile planning for coordinating productive activity.
See more on Stigmergy and Planning
Current implementation
Working definition: Stigmergy is the use of the (digital) environment to leave signals / instructions that lead to possible actions.
About the digital environment
Sensoricans currently use Google Docs example, which is not the best space to play with stigmergy, but it was inherited as legacy practice. Nevertheless Google docs satisfy some main requirement of a digital collaborative space
- real time collaborative
- is free (lack of structure for maximum expression potential),
- accessible
- intuitive (easy access to participation, low technical skills required)
- ubiquitous (lowest common denominator, everyone can use it)
- easy to store, group, search and retrieve (Google drive folders)
- supports rich media content (text, pictures, tables, ...)
- interactive (comments, chat, tagging someone in context)
- has history and versioning
Mirro boards were also tested and suit better stigmergic work, because of the 2D space and the ability to zoom in and out of zones, wile keeping all the other important features that Google docs provide.
We can call the Google doc environment the territory of exploration of peers. The content in the Google doc is a capture of all the exploration already done by affiliates to reach a set of shared goals. It details, in a structured manner, what has been done, i.e. documentation of work done.
Pheromones
Contributors use a set of icons to signal to others what they could do, what's important, what has been agreed upon, etc.. We call these signals digital pheromones. They are easily identifiable in the digital space (the Google doc), they are placed on the left margin of the page. The icons are places within a table, the middle column is used to write the specifications of the pheromone, containing instructions. The rest of the meaning of these digital pheromones is provided by the context in which they are used.
Anyone can create a pheromone in the text. Anyone can react / respond to a pheromone, which means following the instructions associated with it, modifying the instructions, etc.
The general practice is that agents explore different action venues to reach the shared goals. Some of these activities may potentially lead to good outcomes. They can place a pheromone signalling that potential to other affiliates that contribute to the work and may build on these previous activities.
Pheromones architecture
Objective: Generalize pheromone creation and use.
Some general considerations
Are pheromones purely signaling or they can also have a transactional component?
Pheromones have an instructional component. Their primary role is to induce a specific action, generate a specific behavior.
Pheromones must be lightweight, low cost, and should not need effort to engage in the “pheromone economy”.
Pheromones and commitment? Dropping a pheromone requires a commitment?
Also the idea that dropping a pheromone requires validation (those who have left a pheromone have something real to show), requires some validated work (did that and I attest that there is a there there)
Close the loop, enforce or add pheromones to a trace only when there is real merit. Connection with incentives.
Ontology of pheromones - emergent, evolved for adaptive capacity and survival.
Connect to action theory. Pheromones are about signaling for action. An opinion is not enough, such as a "like" button.
Modeling
Pheromones can be modeled as objects with properties. Some identified properties are:
- Instructions: tell the agent that may encounter the pheromone in a specific context what to do next. You can think of this as a list of todos, with background and justifications.
- Intensity: property of pheromones, a value that gives an idea about the importance or priority level of instructions that they contain. Perceived intensity is how an agent in a specific role may experience the importance or priority a property of a role that is energized by an affiliate, see below.
- Sensitivity or visibility: a property of a role that relates to the perception of a pheromone. Pheromones, regardless of their intensity parameter, can become visible or not, or their "perceived" intensity can be modulated depending on the type of role energized by the agent that may encounter it. In other words, at the UI level, some affiliates that sign up in a specific role might not see a given type of pheromone, or it can be that the sensitivity of this role is high, therefore the perceived intensity is high.
- Subsistence: persistence of a pheromone in a digital environment, a time function that modulates intensity (reduces) - perishable pheromones. Some pheromones relate to more stable patterns, high-level patterns, they might be able to subsist longer term.
- Incentives: unlike ants, which are programmed to react to pheromones, humans need incentives to move into action or produce a behavior. Along with the instructions, pheromones can contain incentives to act.
- Notifications: is a manifestation of the pheromone, a type of broadcasting or selective broactasting, role-specific,
- Subscription: agents can subscribe to a pheromone or to a pheromone type, which means that the agent receives notifications of actions others take in relation with a specific pheromone.This makes stigmergy more dynamic and could accelerate self-organization.
More about incentives
Possible implementation through tokens. In this implementation tokens are not the pheromone, they add a reward mechanism to pheromones.
More about intensity
Can increase based on successful interaction. For example, if an agent follows the instructions and that leads to positive outcomes, the pheromone's intensity can increase, signaling to other agents that there is something there worth pursuing.
some have proposed staking as a possible implementation. People look at possible actions, existing pheromones and can staking on it, which can lead to a future rewarded if there is really something there, if the suggested action ends up being productive. This incentivises agents to contribute to pheromones, signaling towards some target. The concept here is similar to predictive market. Staking adds to intensity, more tokes are staked higher the intensity.
Other possible implementations ERC1155 token, NFT + fungible tokens might be a tool to explore for implementation.
Design approach
Declaring pheromones, specify what they are from the start, not a very good idea. although some specifications / templates may emerge in use.
Emergent pheromones. Pheromone is an object, but the actual content is filled in, with characteristics and wanted behavior. Pheromone type.
What if the environment/landscape learns how to place pheromones? Balance agency (human-centric) with efficiency. Agents can be humans of digital artifacts. What would be the effects of that, if some of the signaling is algorithmically-driven? See also niche construction: key concept is that a species does not evolve by itself, it co-evolve with the niche. Synergy, co-evolution.
Stigmergy in NRP-CAS
Within Sensorica every context of work (i.e. a project or a venture) has a representation in the NRP-CAS. There, we can for example see some planning, processes, agents, tasks, events, commitments (agent / task, as an agent promising to do something) and contributions (agent / task, as in agents have logged an event, an activity), resources, transactions. If properly payed out, every agent can see how things flow in that particular context.
- Tasks can be seen as pheromones that signal what needs to be done.
- Recipes can be seen as pheromones that signal a general direction.
- Commitments for tasks can be seen as a pheromone that signals that someone is on something. Commitments for resources signal that some resources in the pool of shareables will be used, or that some resource needs to be acquired from outside the network.
- Contributions can be seen as a pheromone that signals that someone has done something.
The web2 version of the NRP-CAS also has a basic signaling functionality, it sends an email / notification to affiliates when some new entries are created. For example, if someone creates a task, an affiliate who has already performed that type of task can get an email. Tibi call this second level stigmergy, or active signaling stigmergy.
See also
General page on Stigmergy