Inspiration
Reverse-osmosis plants depend on membranes that gradually foul with salts, minerals, and organic material. Clean too early and the plant spends unnecessarily on chemicals, labor, and downtime. Clean too late and energy use rises while membrane performance declines.
Oceanus began with a practical question: can a digital twin give operators an earlier, evidence-based warning before fouling becomes expensive?
What it does
Oceanus is an AI-assisted digital twin for reverse-osmosis water plants. It brings together plant telemetry, physics-based simulation, forecasting, anomaly detection, and role-specific AI agents.
The system helps operators:
- Detect early signs of membrane fouling
- Compare live sensor values with a clean-membrane baseline
- Forecast operational performance and maintenance needs
- Identify units that may benefit from cleaning
- Explain recommendations using measured data, modeled outputs, and documented assumptions
A simplified fouling signal compares measured differential pressure with the expected clean baseline:
$$ \Delta P_{\text{fouling}} = \Delta P_{\text{measured}} - \Delta P_{\text{clean}} $$
A growing positive value suggests that the membrane may be accumulating fouling beyond normal operating conditions.
How we built it
Oceanus uses Google Cloud as its operating foundation.
- BigQuery stores and analyzes plant telemetry, forecasts, anomalies, embeddings, and operational views.
- BigQuery ML supports in-warehouse forecasting, anomaly detection, embedding generation, and semantic retrieval.
- Vertex AI and Gemini provide the reasoning and orchestration layer.
- WaterTAP, deployed as a FastAPI service on Cloud Run, calculates physics-based clean-membrane baselines.
- Pub/Sub supports streaming telemetry workflows.
- Role-scoped datasets and analytical views make the data easier for agents and operators to query safely.
The architecture keeps compute close to the operational data. Instead of moving data through several disconnected services, Oceanus performs much of its analysis where the data already lives.
Challenges we ran into
The hardest part was not connecting an LLM to a dataset. It was making the system useful without letting it guess.
Plant data contains sensor noise, missing readings, changing operating conditions, and a mix of measured and modeled values. A language model can summarize this information, but it cannot independently solve membrane transport equations or verify whether a claim is supported by telemetry.
We addressed this by separating responsibilities:
- The data agent uses measured SCADA data.
- The simulation agent calls WaterTAP for modeled baselines.
- The economics agent states tariff and cost assumptions.
- A critic checks that each numeric claim is grounded in retrieved context.
The system can recommend an action, but it does not control plant equipment. Operators remain responsible for review and approval.
Accomplishments that we're proud of
- Built a working digital-twin architecture for reverse-osmosis operations
- Integrated 15,624 daily readings from 21 membrane units
- Backtested signals against 71 historical cleaning events
- Combined physical modeling with data-driven anomaly detection
- Added agent roles that distinguish measured data from modeled results
- Designed the workflow so recommendations remain advisory and reviewable
What we learned
AI becomes more useful in industrial settings when it has clear boundaries.
The LLM is good at interpreting questions, coordinating tools, and explaining results. BigQuery is good at working with operational data. WaterTAP is good at calculating physical baselines. Operators are responsible for the final decision.
Oceanus works by giving each part of the system a job it can do reliably.
What's next for Oceanus
Next, we plan to:
- Expand the digital twin to more water-quality and energy variables
- Improve predictive-maintenance models with additional historical operating data
- Add operator feedback loops to evaluate recommendation quality
- Build clearer maintenance-planning workflows around tariff windows and cleaning schedules
- Test the architecture with additional membrane configurations and plant datasets
Oceanus is designed to help water operators see problems earlier, understand why they are happening, and make better maintenance decisions before small performance losses become costly failures.
Built With
- adk
- fastapi
- gcp
- gemini
- google-bigquery
- google-cloud
- google-cloud-sql
- mcp
- next.js
- python
- rag
- react
Log in or sign up for Devpost to join the conversation.