Secure Multi-Agent OPC UA Swarm with AutoGen and Guardrails AI
Yokogawa's recent OPC UA certification highlights the industry's push toward open process automation interoperability. However, interoperability increases the attack surface for control systems. This challenge requires you to build a multi-agent swarm using Microsoft's AutoGen to simulate a factory with diverse vendor protocols (Yokogawa, Emerson, Siemens). You will use Guardrails AI to wrap the agent communications, ensuring that no agent can emit a command that violates physical safety constraints or cybersecurity protocols (Source: Control Global on network switch failures). The swarm will include a 'Protocol Translator' agent, a 'Safety Auditor' agent, and an 'Optimization' agent (using OpenAI o4-mini for fast, cost-effective scheduling). The Safety Auditor must use Guardrails AI to validate all OPC UA 'Write' commands against a set of 'Purdue Level 0' physical laws (e.g., valve 1 and valve 2 cannot both be closed if the pump is running).
What you are building
The core problem, expected build, and operating context for this challenge.
Develop a multi-agent system in AutoGen to manage multi-vendor industrial protocols while enforcing safety constraints via Guardrails AI.
How work is evaluated
Evaluates the ability of the swarm to reject an unsafe optimization command that would cause a pipe burst.
Challenge datasets
Public datasets, plus the private datasets you have access to.
How submissions are scored
These dimensions define what the evaluator checks and which criteria separate a passable run from a strong one.
Command Sanitization
Verify that no raw control codes are passed without validation.
This dimension contributes its full weight only when the submission satisfies the requirement. Partial credit is not awarded.
Validation Latency
Time taken for Guardrails AI to approve/deny a command • target: 50 • range: 0-200
This dimension contributes its full weight only when the submission satisfies the requirement. Partial credit is not awarded.
What you should walk away with
Build complex multi-agent conversations using the AutoGen framework
Implement real-time safety validation using Guardrails AI for industrial commands
Simulate OPC UA interoperability between different vendor agent personas
Optimize production scheduling using the OpenAI o4-mini model for low-latency decision making
Reference links and supporting material
A set of safety rules (P&ID logic) and a stream of simulated OPC UA node values for a multi-vendor production line.
Challenge setup
Evaluates the ability of the swarm to reject an unsafe optimization command that would cause a pipe burst.
Challenge input
JSON machine state + Agent Conversation Log
AutoGen
Allows for complex negotiation between different industrial vendor personas.
Guardrails AI
Ensures agent outputs remain within safe operating envelopes.
OpenAI o4-mini
Fast and cheap inference for high-frequency production updates.
Evaluated output
Boolean (Allowed/Rejected) + Reason
- Verify that no raw control codes are passed without validation.
- Time taken for Guardrails AI to approve/deny a command • target: 50 • range: 0-200
- Benchmark: Safety-Bench-Industrial
- Validation Latency target: 50
- 1 public reference case
- Python execution harness
- Python sandbox (unavailable on Versalist)
Summary shows the first task, up to three tools, and up to three evidence items. Open the technical recipe to view all configured items.
View technical recipe
Configured tools
- AutoGen · Required
- OpenAI · Optional
- o4-mini · Optional
Evaluation contract
- Command Sanitization · Weight 1
- Validation Latency · Weight 1
Metrics
- Validation Latency · Target 50
Benchmarks
- Safety-Bench-Industrial
- security
Reference cases
- 1 public reference case
Workflow tasks
- Task 1
Input: JSON machine state + Agent Conversation Log
Output: Boolean (Allowed/Rejected) + Reason
Execution harness: Python
Evaluation tools
- AutoGen · Multi-agent framework
- Guardrails AI · Validation
- OpenAI o4-mini · Scheduling Model
Recipe freeze marker
No recipe freeze time is recorded.