HRI Design Patterns Overview
Purpose
The HRI Design Patterns define reusable architectural solutions for socially intelligent Human-Robot Interaction systems.
They are not implementations, APIs, ROS graphs, or fixed software modules.
They are reusable HML-based architectural compositions that describe how HIFs, Semantic Cells, Semantic Operators, policies, state structures, queues, gates, and executors may be combined to solve recurring HRI design problems.
In this documentation, each pattern should be understood as:
a reusable semantic architecture for a recurring HRI problem
rather than:
a required implementation recipe
This distinction is important.
The concrete examples in this documentation illustrate possible compositions. They do not claim that every robot must implement the pattern in exactly the same way.
Relationship to SOCIAL and HML
The design patterns are the third layer of the framework.
SOCIAL principles
↓
HML modeling language
↓
HRI Design Patterns
↓
Concrete HRI architectures
- SOCIAL defines the architectural commitments.
- HML defines the modeling language and visual grammar.
- HRI Design Patterns define reusable ways to compose HML primitives.
- Concrete architectures instantiate those patterns for a specific robot, task, deployment, or research system.
The patterns therefore serve as the bridge between abstract principles and concrete HRI architecture.
What Counts as a Pattern?
A design pattern should satisfy four criteria.
1. It Solves a Recurring HRI Problem
The pattern should address a problem that appears repeatedly in socially intelligent robotics.
Examples include:
- synchronizing multiple perceptual experts
- managing limited attention or compute resources
- resolving intent with bounded latency
- learning a user-specific gesture
- detecting meaningful context changes
- updating a transparent semantic world model
- resolving incomplete tasks
- validating social acceptability
- styling an action for a social context
2. It Can Be Expressed in HML
A pattern should be representable using HML primitives:
- HIFs
- HC / ST / SG / ES / HE cells
- λ operators
- policies
- decision diamonds
- state structures
- queues
- caches
- HRI_DB
- semantic objects
3. It Is Reusable Across Layers
A pattern may be introduced in one cognitive layer but reused later.
For example, a Synchronous Multi-Extractor may first appear in Human Context processing, but the same pattern can also be reused for Scene Context extraction.
4. It Has Tradeoffs
A pattern is not merely a diagram.
It should expose engineering tradeoffs such as:
- latency
- robustness
- resource cost
- explainability
- synchronization complexity
- policy complexity
- risk of stale state
- risk of over-escalation
- failure behavior
Pattern Container Notation
When a diagram needs to show that several HML elements form a reusable pattern, the pattern may be wrapped in a clipped-corner container.
This convention follows the presentation style used for layer examples.
The clipped container means:
The enclosed elements form one reusable design pattern or pattern instance.
It does not mean:
The enclosed elements must be implemented as one software component.
Use this container sparingly.
It is most useful in layer examples, where the same diagram contains several reusable patterns connected together.
Documentation Strategy
The design pattern documentation follows a layer-oriented reading path while preserving each pattern as a reusable catalog entry.
This gives two complementary views.
1. Layer-Oriented Reading Path
The reader can follow the construction of a socially intelligent HRI architecture layer by layer:
Human Context
Scene Context
Robot Context
Context Management and Reasoning
Social Planning and Behavioral Synthesis
Actuation
This path explains why each pattern appears, what role it plays in a larger architecture, and how later layers reuse earlier patterns.
2. Reusable Pattern Catalog
Each pattern is documented as an independent reusable architectural solution.
This allows a designer to ask:
Which pattern should I use to solve this specific HRI problem?
For example:
- Use SME when several experts must process the same source while preserving temporal alignment.
- Use EAG when attention or compute must be allocated according to social relevance.
- Use TSC/TSP when language or intent resolution should be fast, cached, and escalation-aware.
- Use CNE when the system should reason about meaningful change rather than all raw state.
- Use TPR when a task is meaningful but not yet executable.
- Use SCV when physically possible actions must be checked for social acceptability.
Cognitive Layer Map
The following organization is recommended for the documentation.
Human Context
Human Context introduces patterns that convert raw human-facing signals into structured human context.
Introduced patterns:
- Synchronous Multi-Extractor (SME)
- Elastic Attention Governor (EAG)
- Tiered Semantic Cache / Proxy (TSC/TSP)
- Adaptive Signature Learner (ASL)
Layer examples may include:
- video-based person, skeleton, gaze, and facial expression extraction
- audio-based speech, azimuth, and sentiment extraction
- resource-aware 2D-to-3D skeleton processing
- verbal grounding of a learned gesture
These are examples of possible compositions, not required implementations.
Scene Context
Scene Context reuses foundational extraction and attention patterns for the physical environment.
Reused patterns:
- SME
- EAG
Layer examples may include:
- object detection
- door detection
- stair detection
- obstacle detection
- slope detection
- SLAM integration
- 2D-to-3D scene grounding
The goal is to show how the same pattern language generalizes beyond human perception.
Robot Context
Robot Context models the robot's own body, resources, actuation interfaces, and internal state as HIF streams.
Reused HML structures:
- HC
- SG
- HE
- Semantic Cells
- HIF streams
- structured resource state
Layer examples may include:
- battery HIFs
- CPU / memory / disk HIFs
- motion request HIFs
- speech request HIFs
- domain-specific execution requests
This layer is less about introducing new patterns and more about showing that the robot itself is also part of the semantic context.
Context Management and Reasoning
Context Management connects Human Context, Scene Context, Robot Context, memory, and reasoning.
Introduced patterns:
- Context Novelty Extractor (CNE)
- HRI_DB Handler Pattern
Commonly reused or derived patterns:
- Spatial-Based Reasoning (SBR)
- Consistency Evaluator and Updater (CEU)
- Query Social Handler (QSH)
- Deep Social Insight Extractor (DSIE)
- System Integrity and Agency Handler (SIAH)
- Task Prerequisite Resolver (TPR)
- Social Convention Validator (SCV)
This layer is where many pieces become connected.
It should show how unified context becomes delta context, how delta context updates or queries HRI_DB, and how specialized handlers reason over transparent state.
Social Planning and Behavioral Synthesis
Social Planning turns validated context and pending intentions into socially appropriate action candidates.
Introduced or emphasized patterns:
- Social Opportunity TPR
- Social Action Stylist (SAS)
- Late-Binding Behavioral Choreographer
Layer examples may include:
- waiting for the right social moment
- choosing whether to speak, gesture, move, or combine modalities
- styling an action based on politeness, privacy, urgency, and context
- binding behavior as late as possible to preserve adaptability
This layer should make clear that planning is not only about what to do, but also:
when to do it
how to do it
whether it is socially appropriate to do it now
Actuation
The actuation layer remains open for future documentation.
It will likely involve patterns that connect executable HIFs to embodied effects through HE cells, actuator policies, safety gates, action monitoring, and rollback behavior.
Pattern Reuse Principle
A pattern should be introduced where it first becomes necessary, but it should remain reusable elsewhere.
For example:
SME is introduced in Human Context.
SME is reused in Scene Context.
SME may also appear in Social Action Styling when several stylists produce candidate modalities.
Similarly:
EAG is introduced for human attention and resource allocation.
EAG may also be reused for scene processing, social prioritization, or actuation bandwidth.
This avoids duplicating pattern definitions while still allowing concrete examples in each layer.
Documentation pages should use this wording:
First introduced in:
Reused in:
Example composition:
Concrete Examples Are Illustrative
Concrete examples are important because HRI patterns can otherwise remain too abstract.
However, each example should be framed as an illustration of possible connections.
Use language such as:
One possible instantiation is...
A layer example may connect...
In this example composition...
This does not require every implementation to...
Avoid language such as:
The system must...
The architecture is...
The robot always...
The purpose is to document a reusable pattern language, not to document one specific robot project.
Recommended Pattern Page Structure
Each design pattern page should use the same general structure.
# Pattern Name
## Intent
What the pattern is trying to achieve.
## Problem
The recurring HRI problem addressed by the pattern.
## Context
When the pattern is useful.
## HML Structure
A diagram using the HML visual language.
## Participants
HIFs, Semantic Cells, λ operators, policies, state structures, queues, gates.
## Flow
Step-by-step explanation of the pattern.
## Example Composition
A concrete example showing one possible connection of the pattern.
## Reuse
Where else the pattern may appear.
## SOCIAL Principles Supported
How the pattern supports S/O/C/I/A/L.
## Tradeoffs
Benefits, costs, risks, and failure modes.
## Implementation Notes
Practical considerations for deployment or experimentation.
This structure should remain stable across pattern pages.
Foundational and Composite Patterns
Some patterns are foundational.
They provide basic reusable mechanisms.
Examples:
- Synchronous Multi-Extractor
- Elastic Attention Governor
- Tiered Semantic Cache / Proxy
- Adaptive Signature Learner
- Context Novelty Extractor
- HRI_DB Handler
Other patterns are composite or orchestration-oriented.
They combine earlier mechanisms into higher-level reasoning or planning roles.
Examples:
- Spatial-Based Reasoning
- Consistency Evaluator and Updater
- Query Social Handler
- Deep Social Insight Extractor
- System Integrity and Agency Handler
- Task Prerequisite Resolver
- Social Convention Validator
- Social Opportunity TPR
- Social Action Stylist
- Late-Binding Behavioral Choreographer
This distinction is not rigid.
A pattern may begin as a composite in one context and later become a reusable building block in another.
Example Mapping of HRI Design Patterns to Architectural Layers
This map is intentionally schematic.
It shows the recommended learning path and reuse structure, not a mandatory architecture.
Writing Style for Pattern Pages
Use engineering-academic language.
Prefer:
The pattern supports...
The pattern can be instantiated as...
A common implementation strategy is...
One possible HML composition is...
The pattern trades latency for synchronization integrity...
Avoid:
The robot must...
The system always...
This is the implementation...
The documentation should support academic publication by presenting the patterns as generalizable architecture, while still remaining concrete enough for engineers to apply.
Conclusion
The HRI Design Patterns document reusable architectural solutions built from HML primitives and governed by SOCIAL principles.
They should be organized by the cognitive layer in which they first become necessary, while remaining reusable across later layers.
This organization supports both:
a readable architectural learning path
and:
a reusable pattern catalog
The next pages define the individual patterns, beginning with the Human Context layer and the Synchronous Multi-Extractor.