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 a free 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.







