Repository navigation
Hazards, Recoil and Conflict Resolution
Version 1.3.0 introduces hazard detection, local recoil, priority signalling and conflict resolution, extending Octopus Controller's distributed control architecture beyond reaching, obstacle avoidance and grasping.
Previous releases established how a central controller could assign objectives while individual arms independently determined how to execute them. This release explores the next question:
What happens when local sensory information conflicts with an arm's current objective?
The simulation can now represent hazards that provoke avoidance or withdrawal, escalate significant threats to central control, and resolve competing intentions through explicit priority rules.
The central principle remains unchanged: local decisions should remain local wherever possible, with central intervention reserved for situations that require wider coordination.
What's New
1. Local Hazard Detection and Recoil
Hazards are introduced as a new type of environmental feature, distinct from physical obstacles.
- Physical obstacles represent impassable regions that constrain movement
- Hazards represent aversive regions that an arm can enter but should attempt to avoid
Individual arm segments detect hazards locally and adjust their movement without requiring the central controller to prescribe an avoidance manoeuvre.
Depending on hazard severity, an arm may alter its approach, recoil away from the hazard, temporarily interrupt reaching, and subsequently resume its original objective.
This introduces an important behavioural distinction: an arm can now deliberately move away from its assigned destination in response to local sensory information.
2. Hazard Escalation and Central Signalling
Hazard warnings may be escalated to the to the central controller, extending local hazard responses with a mechanism for communicating significant threats to central control.
Not every hazard requires intervention. The system distinguishes between hazards that can be handled locally and those serious enough to warrant escalation.
The signalling mechanism supports:
- Severity-dependent hazard reporting
- Escalation based on sustained exposure
- Priority-based communication with the central controller
- Withdrawal instructions in response to serious threats
- Clearance and recovery when reported hazards are no longer detected
This establishes a distinction between what an individual arm senses and what the central controller knows.
The central controller responds to significant reports rather than maintaining complete knowledge of every local environmental interaction.
3. Conflict Resolution and Behavioural Priorities
Explicit arbitration is required when multiple intentions or behavioural requirements cannot all be satisfied simultaneously.
The controller uses a transparent priority hierarchy:
| Behaviour | Priority |
|---|---|
| Withdrawal | 100 |
| Local hazard avoidance | 80 |
| Maintain grip | 60 |
| Assigned reach | 50 |
| Incidental discovery | 20 |
| Idle | 0 |
The new conflict-resolution mechanisms address several important situations.
Approach versus avoidance: An arm may temporarily suspend progress towards a target while responding to a hazard, without necessarily losing its original assignment.
Holding food versus withdrawal: Safety can override an existing grasp, causing an arm to release held food before withdrawing.
Competing arms: When multiple arms claim the same resource, deterministic arbitration selects a winner. Other arms yield while retaining their assignments.
Assigned task versus incidental discovery: An arm pursuing a specifically assigned food object does not abandon that task simply because it encounters another potential food source.
Critical hazard reports can also trigger withdrawal across all eight arms, demonstrating how a local observation can produce a coordinated, whole-system response.
Experimental Scenarios
The release introduces scenarios for observing and investigating the new behaviours, including:
| Scenario | Demonstration |
|---|---|
local-hazard.json |
Local hazard detection, recoil and avoidance |
hazard-escalation.json |
Priority signalling and withdrawal |
food-vs-danger.json |
Safety taking precedence over an existing grasp |
competing-arms.json |
Arbitration between arms pursuing a shared resource |
discovery-vs-task.json |
Assigned objectives taking precedence over incidental discoveries |
reef-forage-extended.json |
Combined reaching, capture, hazard escalation and competing priorities |
These scenarios make it possible to observe not just the resulting arm movements, but the decisions and competing intentions that produce them.
Distributed Control Architecture
The additions preserve the project's distinction between three levels of control:
- Segment-level sensing and response — detecting nearby hazards and influencing local movement
- Arm-level control — managing assigned objectives, recoil, avoidance, grasping and hazard reports
- Central coordination — receiving significant reports, resolving resource conflicts and issuing withdrawal instructions when required
The central controller does not calculate individual joint movements or construct complete avoidance routes.
Instead, it determines which intentions should take precedence while individual arms continue to execute movement through their existing local control mechanisms.
This provides a framework for investigating when local autonomy is sufficient and when central arbitration becomes necessary.
Scope and Limitations
Octopus Controller remains a biologically inspired computational experiment, not a detailed physiological or neurological simulation.
Hazards represent computationally aversive regions rather than biological pain or injury. Recoil and withdrawal are implemented control behaviours, not models of actual octopus defensive physiology.
Similarly, conflict resolution currently uses explicit, deterministic rules rather than learning, reward optimisation or a biologically realistic decision-making process.
Whole-system withdrawal is represented through the coordinated retraction of individual arms; the central body remains fixed.
These simplifications are intentional. They keep the mechanisms observable and make it possible to investigate the consequences of different control rules.
Why This Release Matters
The original controllers demonstrated how local mechanisms could produce purposeful movement in response to centrally assigned intentions.
With hazards, escalation and conflict resolution, the system can now demonstrate how those intentions may be interrupted, challenged, prioritised and resumed.
An arm no longer simply asks:
How do I reach my target?
It must also respond to:
Should I continue towards my target, avoid danger, preserve an existing grasp, or yield to another arm?
The resulting simulation provides a richer experimental framework for exploring the relationship between local autonomy, communication and central coordination.