Development of AI System for Smart City Lighting Management
Urban street lighting—one of municipality's largest electricity consumers: 30–40% of communal electricity expenses. Smart Lighting reduces this consumption by 40–70% while maintaining and improving safety.
Adaptive Lighting Level Management
Adaptive dimming logic:
Lighting intensity adjusts to real conditions:
- Time of day + astronomical calculation (dawn/dusk without sensors)
- Traffic flow: sensors or video analysis → low activity reduce to 30%
- Pedestrian activity: PIR or CV counters → people present → 100% brightness
- Weather: fog, snow → increase brightness above nominal
import numpy as np
from astral import LocationInfo
from astral.sun import sun
import datetime
class AdaptiveLightingController:
"""Adaptive lighting controller for group of fixtures"""
def __init__(self, location_lat, location_lon, city_name):
self.location = LocationInfo(city_name, 'Russia', 'UTC+3',
location_lat, location_lon)
def calculate_dimming_level(self, timestamp, sensor_data):
"""
Calculate dimming level (0.0–1.0).
sensor_data: {'traffic_count': int, 'pedestrians': int,
'visibility_km': float, 'weather': str}
"""
# Astronomical calculation
s = sun(self.location.observer, date=timestamp.date())
civil_dusk = s['dusk']
civil_dawn = s['dawn']
# Is it dark?
is_dark = not (civil_dawn < timestamp.replace(tzinfo=civil_dawn.tzinfo) < civil_dusk)
if not is_dark:
return 0.0 # turn off during day
# Base level by time of night
hour = timestamp.hour
if 22 <= hour or hour <= 6:
base_level = 0.5 # late night — economy
else:
base_level = 0.8 # evening/morning — standard
# Correction by traffic and pedestrians
activity = sensor_data.get('traffic_count', 0) + sensor_data.get('pedestrians', 0)
if activity > 10:
activity_level = 1.0
elif activity > 3:
activity_level = 0.8
elif activity > 0:
activity_level = 0.6
else:
activity_level = 0.3
# Weather correction
weather_factor = 1.3 if sensor_data.get('weather') in ['fog', 'snow'] else 1.0
final_level = min(1.0, max(base_level, activity_level) * weather_factor)
return final_level
Predictive Maintenance of Fixtures
LED health monitoring:
Smart fixtures with telemetry transmit:
- Power consumption: >20% decline from nominal → LED degradation
- Module temperature: overheating → shortened lifespan
- Supply voltage: spikes → damage risk
Lamp replacement forecast:
ML model on telemetry data + passport characteristics:
- Operating hours
- Thermal stress (cumulative temperature load)
- Number of on/off cycles (thermal cycling)
- Remaining service life forecast → planned replacement before emergency failure
Replacement savings: emergency replacement costs 2–3x more than planned (emergency crew call, urgency).
Video Data Analysis for Management
Traffic and pedestrian counting:
Cameras on lighting poles:
- YOLOv8 + SORT tracker → real-time vehicle and pedestrian counting
- Activity heat maps by time of day and day of week
- Activity forecast → proactive brightness increase
Accident and incident detection:
Anomaly detection on video stream: sudden scene change (collision, person falling) → alert to duty service. Reduce accident response time from 8–15 to 2–4 minutes.
Lighting Network Management
Topology and losses:
Lighting network map in GIS (QGIS, ArcGIS) → ML optimization of grouping:
- Zoning: different scenarios for residential, industrial, commercial zones
- Load balancing across feeders
- Detection of unauthorized connections (electricity theft)
System KPIs:
| Metric | Standard Lighting | Smart Lighting |
|---|---|---|
| Energy kWh/year/fixture | 300–450 | 80–130 |
| Operating hours | 100% night hours | 60–75% full brightness |
| Planned vs. emergency replacements | 60/40 | 90/10 |
| Lighting complaints | baseline | -60% |
Development timeline: 2–4 months for Smart Lighting system with adaptive dimming, predictive maintenance and GIS integration.







