Inspiration
We’ve all seen how hot AI servers can get and how much water is wasted when data centers just flood the racks after the fact. We thought: what if we could cool things down before they overheat? That spark led us to build a system that can look ahead and cool only when needed.
What it does
Our AI Farm Water Management System is like a digital caretaker for a server room. It simulates 24 servers across four racks and keeps track of their temperatures in real time. There are two ways it can run:
- Standard mode – wait until a server goes above 85 °F and then turn on the cooling.
- AI mode – use machine‑learning to predict when a server is going to get hot and start cooling before that happens if there’s a high chance of a heat spike.
Behind the scenes, it has two models: one that predicts future temperatures and another that guesses the chance of a spike. It takes into account the time of day, recent temperature history, how temperatures are trending, past spikes and even what the neighbouring servers are doing. On the front end, you get a dark‑themed dashboard with a 3D view of the racks. Each server shows its current temperature, what we think it will be next, whether a spike is likely and whether cooling is on. The interface updates every couple of seconds and uses smooth animations to make it easy to see what’s happening.
How we built it
We set up a Flask backend on Render to run a simulation loop every second. It updates each server’s temperature, simulates heat spreading to neighbors and sometimes creates random spikes. We trained two models using scikit‑learn: a Gradient Boosting regressor and a Random Forest classifier. We spent a lot of time creating features that capture the daily patterns, short‑term fluctuations, rolling averages, spikes and relationships between servers. The API lets the front end start and stop the simulation, trigger spikes, switch between standard and AI modes, retrain the models and fetch predictions or historical data.
On the front end, we built a React app and used Three.js to draw the server room. It’s hosted on Netlify. The sidebar has simple toggles and buttons so you can control the simulation and retraining. Each server card uses colors to show how hot it is (green is cool, yellow is warm, orange and red are getting hot) and how likely a spike is. We also added progress bars and status messages so you know when a model is training or when a spike happens.
Challenges we ran into
We underestimated how tricky it would be to make a believable simulation of heat spreading between servers. Coming up with features that captured both the timing and the spatial relationships without overfitting took a lot of experimentation. We also had to balance how often the front end checked for updates so it felt real‑time but didn’t overwhelm the backend. Getting the 3D visualization to run smoothly and clearly show what’s going on was another fun challenge.
Accomplishments that we're proud of
We’re proud that we built an end‑to‑end system in a short time that not only simulates an AI farm but also predicts issues before they happen. The dual‑model approach gave us reliable forecasts and helped us make proactive cooling decisions. Our heat diffusion model and auto‑spike generation made the simulation feel realistic, and the 3D dashboard turned out to be both informative and fun to use.
What we learned
We learned a lot about feature engineering for time‑series data and how to handle spatio‑temporal relationships. Integrating machine‑learning models into a live simulation taught us about serving models through APIs and handling state. Building a 3D visualization with Three.js inside a React app was new for us and we’re excited to use these skills again.
What's next for AI Farm Water Management System
We’d love to connect this system to real sensors in data centers and test how well it works with actual temperature data. There are more advanced models like LSTMs and transformers that could improve our predictions, and we want to explore those. We’re also thinking about adding optimization algorithms to use as little water as possible while keeping things cool. And of course, scaling up to larger server farms and letting users reconfigure rack layouts would make the system even more useful.
Built With
- flask
- gradient-boosting
- netlify
- python
- random-forest
- react
- render
- scikit-learn
- three.js
Log in or sign up for Devpost to join the conversation.