Appearance
Microservices
Optimal Reality's accelerator catalogue represents the deep domain IP the team has built across real-world client engagements. Each accelerator solves a specific operational or data challenge — from real-time data ingestion and spatial tagging to traffic simulation triggering and metric calculation — and is designed to be composable, reusable, and harvestable across projects.
These microservices are the building blocks that make OR a platform, not just a framework. They encode hard-won knowledge about how to ingest live data feeds, manage simulation lifecycles, detect events in real-time, and orchestrate complex data pipelines. Every accelerator documented here is IP owned by Optimal Reality and deployable across new client environments.
As the platform evolves toward AI-native orchestration, these microservices become tools that AI agents can reason about and compose. The combination of simulation microservices, data pipeline services, and AI agent capabilities is what enables OR to accelerate the path from business problem to real-time physical AI decision making.
Ground Transport Digital Twin Microservices
A real-time traffic operations and simulation system built for ground transport use cases. These components form the foundation of OR's transport domain IP and are deployable across any road network — from urban arterials to national highway corridors.
Data Pipeline
Components responsible for getting data into, through, and out of the platform.
| Component | Description |
|---|---|
| Data Ingestion | Ingests batched data from live external sources. Configurable HTTP-based retrieval with retry logic and timeout handling. Supports GTFS-R transit feeds with GeoJSON transformation. |
| Data Stream Ingestion | Ingests streaming data from live sources. Handles continuous data feeds where batched ingestion is insufficient — listens to client-specific endpoints with a format general enough to accept different sources via config. |
| Data Transformer | Transforms raw ingested data into the GraphQL format expected by the Experiment Manager. Bridges the gap between external data formats and the platform's internal data model. |
| Data Fusion | Fuses multiple data sources and batches them by time. Aggregates data from different origins into coherent time-aligned datasets for downstream processing. |
| Data Loader | Loads static and reference data into relevant databases on stack spin-up. Hydrates the platform with the baseline datasets required for operation. |
| Data Recorder | Saves snapshots of live data into the historic database at scheduled intervals. Copies data to PostgreSQL for long-term storage and analysis. |
| Data Archiver | Archives PostgreSQL data to S3 for long-term storage. Manages the data lifecycle from live operational data through to cold storage. |
| Data Redis Ingestion | Ingests data from external Redis key stores. Bridges external Redis-based data sources into the platform. |
Transport & Traffic Operations
Central coordination and operational logic for the transport domain.
| Component | Description |
|---|---|
| Experiment Manager | Central component responsible for all inter-service communication. GraphQL server with queries, mutations, and subscriptions. All data flows route through this service. |
| Session Manager | Manages user sessions on the platform. Handles authentication state and session lifecycle. |
| Baseline Manager | Manages baseline data creation and retrieval. Creation is triggered on Data Archiver completion. Retrieval surfaces historical data for comparison and analysis. |
| Search Engine | Full-text search capabilities across platform data. |
Metrics & Analytics
Components that compute derived insights from raw and processed data.
| Component | Description |
|---|---|
| Metrics Service | Calculates metrics in real-time from live data sources. Subscribes to data changes and runs updated calculations (e.g. average network speed). |
| Sim Metrics | Calculates simulated metrics from traffic model outputs. Processes simulation results and generates comparable metrics for validation against actuals. |
| Simulation Validation | Calculates validation metrics by comparing simulation metrics against actual metrics. Determines how accurately the simulation reflects real-world conditions. |
Spatial & Geospatial
Components that provide geographic intelligence to the platform.
| Component | Description |
|---|---|
| Spatial Service | Labels locations with relevant geographic names (e.g. suburbs, road segments). Used to geo-tag events — determining which road segments an incident is likely to impact. |
| Scats Graph Manager | Transforms SCATS intersection data into graph networks. Returns connected components to the frontend for network visualisation. |
| Route Finder | Calculates optimal routes through the road network. |
| Schematics | Provides schematic representations of network infrastructure. |
Simulation
Components that power the platform's simulation and scenario modelling capabilities — where AI reasoning meets physical simulation.
| Component | Description |
|---|---|
| Realtime Manager | Triggers real-time simulations on a scheduled cycle (e.g. every 5 minutes). |
| Traffic Model | Runs the core traffic simulation model. Receives configuration, runs the simulation, and writes raw outputs back. |
| Schedule Generation | Generates simulation input schedules from historical data, live data sources, and geospatial data. |
Event Detection & Response
Components that detect, monitor, and respond to real-time events in the transport network.
| Component | Description |
|---|---|
| Event Manager | Detects unplanned events (incidents, congestion) based on data from the Metrics Service. Uses spatial intelligence to determine impact zones. |
| Task Allocation | Takes detected events and allocates response tasks. Bridges from event detection to operational action. |
| CCTV Integration | Integration service for serving live CCTV feeds to the frontend. Connects video surveillance infrastructure to the platform's operational view. |
| OpenLR Converter | Converts location references between OpenLR format and the platform's spatial representation. |
Computer Vision
Components for processing live camera feeds and extracting operational intelligence from video.
| Component | Description |
|---|---|
| AutoEye | Cloud-based computer vision platform for processing CCTV streams. Produces aggregate vehicle counts from live camera feeds. Designed to scale to thousands of camera streams. |
| Camera Control | Manages CCTV cameras including retrieving stream URLs and determining outages. |
| Panorama Control | Low-level management of Panorama devices, including deploying and redeploying applications to different streams. |
| Panorama Fleet Management | High-level fleet management of Panorama devices. Handles monitoring, stream failures, and device tracking. |
Other Microservices
Beyond ground transport, several microservices have been built for other engagements and internal R&D — demonstrating the platform's applicability across domains.
Fire & Resource Optimisation
Wildfire simulation and emergency resource allocation services built as part of a OR Alpha project. These components model fire ignition, spread dynamics, and optimal resource deployment across scenarios ranging from individual fire events to hundreds of simultaneous national-scale incidents.
| Component | Description |
|---|---|
| Fire Spread Modelling | Julia-based wildfire simulation — environment grid generation, fire spread modelling, stochastic analysis, national-scale fire assessment, and resource optimisation. |
| H3 Spatial Indexing | Python geospatial utility providing Uber H3 hexagonal spatial indexing, coordinate-to-hex conversion, polygon point sampling, and multi-resolution aggregation for fire risk mapping. |
Satellite Modelling
Satellite operations analysis services built for the Alpha Orbit project. These components provide end-to-end satellite coverage and communications planning — from orbit propagation and swath coverage through to ground station visibility and data downlink scheduling.
| Component | Description |
|---|---|
| Satellite Coverage | Python-based satellite swath coverage simulation — orbit propagation, swath footprint generation, hit testing, and revisit frequency analysis. |
| Ground Station Coverage | Python-based satellite-to-ground-station visibility analysis — pass event detection with elevation/range constraints, optimal ground station assignment, and GeoJSON generation for map visualisation. |
Data Flow Examples
Live Data Ingestion
External API / Sensor
↓
Data Ingestion (HTTP retrieval, batching)
↓
Data Transformer (raw → platform format)
↓
Experiment Manager (stores live data)
↓
├── Metrics Service (recalculates network metrics)
├── Spatial Service (geo-tags events)
└── Data Recorder (scheduled snapshot → historic storage)Simulation Cycle
Realtime Manager (timer trigger)
↓
Experiment Manager
↓
Traffic Model + Schedule Generation
↓
Sim Metrics (calculates metrics from simulation)
↓
Simulation Validation (compares sim vs actual)Event Detection
Metrics Service (detects anomalous values)
↓
Event Manager (classifies event, determines spatial impact)
↓
Task Allocation (assigns response tasks)
↓
Frontend (displays event on operational dashboard)Databases
The ground transport digital twin uses a polyglot persistence architecture — each storage engine chosen for its strengths:
| Database | Purpose |
|---|---|
| Redis | In-memory key-value store for real-time data (live sensor readings + simulation results) |
| RediSearch | In-memory search index powering the Search Engine |
| PostgreSQL | Historic and static reference data |
| PostgreSQL (Simulation) | Simulation input data (schedules, trip information) — separate from operational data |
| Tile38 | Spatial key-value store for geographic data (roads, suburb definitions, intersection geometries) |
| S3 | Long-term archive storage for historic data and baseline snapshots |
Subpages
Data Pipeline
- Data Ingestion — Batched HTTP retrieval from live external sources
- Data Stream Ingestion — Continuous streaming data from live sources
- Data Loader — Static and reference data loading on stack spin-up
- Data Recorder — Live data snapshots to PostgreSQL historic storage
- Data Archiver — PostgreSQL to S3 long-term archival
- Data Redis Ingestion — External Redis key store ingestion
- Batch Ingestion — Config-driven loading of static reference data
- Data Exporter — Export for external analytics
Spatial & Geospatial
- Spatial Service — Geographic labelling and geo-tagging
- H3 Spatial Indexing — H3 hexagonal spatial indexing, coordinate conversion, and polygon operations
