Traditional garbage collection runs on a fixed schedule, ignoring actual container fill levels. Result: 40% of trips go to half-empty containers, 20% to overflowing ones, leading to waste spillage and fines. We offer a Smart Waste system that dynamically optimizes routes based on IoT data and computer vision, experience of 5+ years and 50+ deployments in municipal and commercial sectors, with guaranteed operational cost reduction.
For monitoring we use two approaches: IoT sensors and computer vision. IoT sensors are ultrasonic or infrared sensors installed in container lids. They measure distance to waste and transmit data over LoRaWAN or NB-IoT. Power consumption is minimal: one battery lasts up to 5 years. Polling interval is 30–60 minutes. Computer vision analyzes CCTV feeds. A MobileNetV3 convolutional network classifies fill level into four categories: <20%, 20–50%, 50–80%, >80%. Accuracy is 88–93%. This method is suitable when sensors are not deployed.
| Parameter | IoT sensors | Computer vision |
|---|---|---|
| Accuracy | ±5% | 88–93% |
| Cost per container | Low | Minimal (uses existing cameras) |
| Power consumption | Very low | Depends on camera |
| Installation | Requires mounting | Software adaptation |
How does fill prediction work?
Each container has its own fill pattern: residential buildings peak in morning and evening, offices in evening, holidays see 20–35% volume increase. Prediction allows waste collection before overflow. We use the Prophet model for time series. The prediction process involves three steps:
- Extract the current fill cycle (since last collection).
- Train Prophet with daily and weekly seasonality.
- Forecast 48 hours and calculate time to reach 80% fill.
Example code:
import pandas as pd
import numpy as np
from prophet import Prophet
class WasteContainerPredictor:
"""Predict fill level of a container"""
def fit(self, fill_level_history, container_id):
"""
fill_level_history: TimeSeries of fill level (0-100%)
Predict when container reaches 80% fill
"""
df = fill_level_history.reset_index()
df.columns = ['ds', 'y']
# Model sawtooth pattern: increases until collection, then resets
# For prediction: use only the current incomplete fill cycle
last_emptying = df[df['y'] < 10]['ds'].max()
current_cycle = df[df['ds'] >= last_emptying].copy()
model = Prophet(
growth='linear',
daily_seasonality=True,
weekly_seasonality=True,
changepoint_prior_scale=0.3
)
model.fit(current_cycle)
# Forecast up to the point of reaching 80%
future = model.make_future_dataframe(periods=48, freq='H')
forecast = model.predict(future)
full_time = forecast[forecast['yhat'] >= 80]['ds'].min()
return full_time
def predict_collection_priority(self, all_containers, current_time):
"""Rank containers by urgency of collection"""
priorities = []
for cid, container in all_containers.items():
current_fill = container['current_fill_pct']
predicted_full_time = self.fit(container['history'], cid)
hours_until_full = (predicted_full_time - current_time).total_seconds() / 3600
priority_score = current_fill + (1 / max(hours_until_full, 0.5)) * 10
priorities.append((cid, priority_score, current_fill, predicted_full_time))
return sorted(priorities, key=lambda x: -x[1])Prophet — a library from Facebook for time series forecasting, robust to missing data and outliers.
Why is route optimization important?
Each day we build a list of containers with fill >75% or expected to reach that within 24 hours. VRP optimization accounts for truck capacity, working hours, and depot location. Compared to fixed scheduling, VRP reduces trips by 30–45% and mileage by 20–30% — 1.5× more efficient in mileage per ton. Overflows drop by 80%.
| Strategy | Average daily trips | Overflow rate |
|---|---|---|
| Fixed schedule | 100% (baseline) | 20% |
| Smart Waste with prediction and VRP | 60–70% of baseline | <4% |
How is Smart Waste deployed?
Turnkey development includes audit of current infrastructure, sensor installation or computer vision setup, calibration of prediction model, and integration with dispatching. Get a consultation from our engineer — we will assess your container fleet and propose the optimal solution.
Turnkey system includes:
- Installation and integration of IoT sensors or computer vision setup
- Prediction model for each container
- Route optimization (VRP with constraints)
- Web portal with GIS mapping and reports
- Documentation, staff training, 3 months warranty support
Technical stack details
- Frameworks: TensorFlow, PyTorch, Prophet - Protocols: MQTT, LoRaWAN, NB-IoT - Storage: PostgreSQL + TimescaleDB - Backend: FastAPI, Docker, KubernetesAI waste sorting
At sorting stations, computer vision with conveyor cameras classifies recyclables: PET, HDPE, glass, cardboard, metal, organics. AI sorting accuracy is 90–95%, double that of manual (70%–75%). Pneumatic separators direct fractions to bunkers. Hazardous waste detection (batteries, mercury lamps) uses spectroscopy and stops the conveyor upon detection.
Analytics and reporting
A dispatcher portal displays a map of containers with color coding: green (<50%), yellow (50–75%), red (>75%). Real-time truck tracking, route history, and KPIs. Environmental reporting in form 2-TP waste is generated automatically.
Implementation results:
- Trips reduced by 30–45%
- Mileage reduced by 20–30%
- Overflows reduced by 80%
- Payback period: 6–12 months
Order Smart Waste development — get an engineer consultation and project assessment. Contact us to discuss your tasks. We also offer an audit of your current collection system.
According to RosPrirodNadzor, MSW volume in Russia grows by 3% annually. Smart Waste is a way to save budget and the environment.







