Розробка AI-системи керування автопарком Fleet Management AI транспорт
Транспортні флоти - автобусні парки, таксопарки, каршерингові мережі - стикаються із завданнями оптимізації використання та технічного обслуговування одиниць. AI-система поєднує телематику, предиктивне ТО та оперативне диспетчування.
Прогнозування технічних несправностей
CAN-bus телематика:
Сучасні автобуси генерують тисячі параметрів через OBD-II/J1939 протокол. Ключові для прогнозування: - температура охолоджуючої рідини, масла, трансмісії - тиск турбіни, упорскування - обороти двигуна та їх дисперсія - пробіг гальмівних колодок (за інтенсивністю гальмування)
from sklearn.ensemble import RandomForestClassifier
from sklearn.preprocessing import RobustScaler
import pandas as pd
import numpy as np
class FleetFailurePredictor:
"""Прогноз отказа компонентов транспортного средства за 7–14 дней"""
COMPONENTS = ['engine', 'transmission', 'brakes', 'suspension', 'electrical']
def extract_rolling_features(self, telemetry_df, window_hours=24):
"""Агрегация телематики за скользящее окно"""
features = {}
freq = f'{window_hours}H'
for col in ['engine_temp', 'oil_temp', 'rpm', 'fuel_rate']:
rolled = telemetry_df[col].rolling(freq)
features[f'{col}_mean'] = rolled.mean()
features[f'{col}_std'] = rolled.std()
features[f'{col}_max'] = rolled.max()
features[f'{col}_trend'] = rolled.apply(lambda x: np.polyfit(range(len(x)), x, 1)[0])
# Аномалии: сколько раз параметр выходил за 3σ за последние сутки
for col in ['engine_temp', 'oil_temp']:
mean, std = telemetry_df[col].mean(), telemetry_df[col].std()
features[f'{col}_spike_count'] = (
(telemetry_df[col] > mean + 3*std).rolling(freq).sum()
)
return pd.DataFrame(features)
Метрики предиктивного ТО для транспорту: - Recall відмов за 7 днів: цільовий >85% - False positive rate: <20% (кожен п'ятий alert - реальна проблема чи ні) - Lead time: середня 5-8 днів до відмови
Оптимізація розкладу випуску
Завдання: при 200 автобусах та 50 маршрутах — які автобуси випустити, на які маршрути, з яким розкладом водіїв?
Vehicle-Shift Scheduling Problem: - Водій працює 8-10 годин з 45-хвилинною перервою (ТК РФ, ЕСТР для міжміста) - Автобус вимагає 1 годину миття + ТО між змінами - Мінімізувати: кількість автобусів + понаднормових водіїв
OR-Tools CP-SAT: для парку 100-300 одиниць рішення за 30-120 секунд.
Оперативний диспетчінг
Вирівнювання інтервалів (Bus Bunching Prevention):
Класична проблема: два автобуси їдуть разом після затримки. Алгоритм: - Моніторинг headway в реальному часі по GPS - При сходження: перший автобус - holding (затримати на зупинці) - ML-модель прогнозує optimal holding time: занадто довго = подразнення пасажирів, замало = bunching знову
Перерозподіл при збоях:
Поломка автобуса на маршруті → система пропонує: 1. Найближчий резервний автобус з депо (розрахунок ETA) 2. Перенаправити автобус з паралельного маршруту 3. Оповіщення пасажирів через стенди та додаток
Економіка та аналітика
KPI управління флотом:
| Метрика | Типичные значения | Цель с AI |
|---|---|---|
| Техническая готовность парка | 82–88% | 92–96% |
| Пробег до внепланового ТО | 8 000–12 000 км | 18 000–25 000 км |
| Расход топлива л/100км | базис | -8–12% |
| Время оборота на маршруте | базис | -5–8% (регуляризация интервалов) |
Паливний контроль:
Норма витрати = f (маршрут, навантаження, погода). Відхилення >15% → підозра на злив: - кореляція рівня палива з GPS-маршрутом та навантаженням - ML-класифікатор: природні коливання vs. слив - Alert з геолокацією передбачуваного інциденту
Термін розробки: 4-6 місяців для системи передиктивного ТО + диспетчеризації + аналітики з інтеграцією в існуючі МІС/TMS автотранспортного підприємства.







