Автор: Станислав Люнченко, ведущий внутренний аудитор, член Ассоциации «Институт внутренних аудиторов»
Системы спутникового контроля автотранспорта пользуются сегодня большой популярностью на предприятиях c собственным автопарком как источник данных для контроля эффективности логистической функции и системы антифрод. При очевидных преимуществах таких систем все они обладают существенным недостатком: их работу можно нарушить, различными способами воздействуя на установленные датчики. Информация обо всех случаях сбоя работы системы, как правило, доступна владельцу автотранспорта, но редко кто уделяет ей должное внимание ввиду отсутствия инструментария аналитики больших массивов данных.
В данной статье рассматривается пример анализа случаев сбоя работы системы спутникового контроля на предмет наличия признаков намеренного вмешательства в работу датчиков. В основе расчетов – методика кластерного анализа, которая позволяет выявить общие закономерности в данных любого типа.
Введение
Системы спутникового контроля автотранспорта широко используются владельцами автопарков любых отраслей для управления эффективностью логистики. Эти системы, с одной стороны, позволяют организовать контроль работы транспорта, включая маршруты перемещения, скоростной режим, расход топлива. С другой стороны, имеют существенный недостаток: в потоке данных, которые генерируют системы, часто встречаются периоды потери связи и сбоя в работе датчиков, в течение которых информация о транспортном средстве отсутствует. В связи с тем, что работу датчиков легко нарушить путем физического воздействия, актуальным становится вопрос: отсутствие данных – это сигнал мошенничества или просто сбой системы?
Все поставщики систем спутникового контроля могут предоставить полную информацию о работе до и после разрыва, но интерпретация этих данных всегда остается за владельцем транспорта, который на практике редко уделяет этому должное внимание из-за отсутствия инструментария аналитики больших массивов данных.
В ломозаготовительном дивизионе нашей компании большой парк собственного автотранспорта. Система спутникового контроля позволяет отслеживать перемещения и действия водителей за пределами территорий заготовительных участков. Но разрывы в данных системы всегда оставались белыми пятнами в данном процессе и не позволяли сделать заключение о его полном контроле. В связи с этим, перед СВА встала задача разработать методологию анализа случаев сбоя в работе системы спутникового контроля, в том числе выделения случаев с признаками умышленного вмешательства в работу датчиков.
Основное
О большой вероятности умышленного вмешательства в работу датчиков системы может говорить наличие одного или комбинации следующих признаков:
-
регулярные сбои в одной географической точке,
-
остановки в момент разрыва,
-
длительность разрыва достаточная для нецелевого использования транспорта (около 1 часа),
-
существенное изменение уровня топлива за время разрыва,
-
стабильный сигнал от спутников до и после разрыва.
Все расчеты производились с помощью языка Python c использованием библиотек pandas и sklearn. Визуализация и анализ результатов расчета выполнялись в системе BI Tableau Desktop. В ходе работы была исключена большая часть случаев сбоя по причинам нестабильной работы датчиков и сформирован список случаев сбоя системы для детального расследования причин.
1. Объединение близко расположенных географических точек в единые локации
Одна из гипотез, которую было необходимо проверить, – есть ли зависимость сбоев в работе системы с географическим расположением транспортного средства. Если на одной и той же машине в одном и том же месте на карте регулярно ломается датчик системы спутникового контроля, это можно рассматривать как сигнал мошенничества.
Задачу усложняет тот факт, что географические координаты редко имеют точные совпадения. Для анализа их нужно сгруппировать по близости друг к другу в единые локации. Для группировки точек был использован алгоритм кластеризации DBSCAN. В отличие от многих других, для него не требуется изначального знания количества кластеров, и группировка выполняется по плотности распределения, что очень подходит для группировки географических координат. Также алгоритм позволяет выделить единичные выбросы, которые не принадлежат ни к одной из групп. В качестве метрики расстояния взят "haversine" – расстояние между географическими точками. Критерием близости принято 200 метров, минимальное количество точек в группе – 3.
Алгоритм DBSCAN выявил в исходных данных 323 группы точек. Для сравнения проведена кластеризация с помощью алгоритма К-средних – KMeans. На рисунке 1 на примере одного города визуально можно отметить существенную разницу между результатами работы алгоритмов. Алгоритм DBSCAN заметно лучше выделил группы точек высокой плотности и позволил исключить единичные случаи.
Рисунок 1. Визуальное сравнение алгоритмов кластеризации DBSCAN и KMeans для группировки географических координат
2. Выявление систематических случаев разрыва в одной локации.
После группировки близко расположенных точек стало возможным выявление подозрительных групп: когда часто разрывы происходят в одной локации. Из рассмотрения были исключены известные точки стоянки и ремонта автотранспорта, где сбой в работе системе обоснован. Из оставшихся локаций с помощью диаграммы Box Plot выделены выбросы по количеству случаев. Пример анализа для одного из городов представлен на рисунке 2. Детальное изучение выбросов показало, что в отдельных точках все сбои произошли в сменах одних и тех же водителей, что стало поводом для проверок по линии безопасности.
Рисунок 2. Анализ выбросов по количеству случаев сбоев в группах точек
3. Анализ особенностей движения ТС в момент разрыва
Исходные данные для анализа включали более 4,5 тысяч случаев сбоя в работе системы. Было понимание, что большая часть из них не связана с вмешательством в работу, необходимо было по каким-то признакам их отсеять.
Снова на помощь пришли алгоритмы кластеризации, но теперь на вход задавались не географические координаты, а значения следующих признаков:
-
скорость транспортного средства (за 1 час до и после разрыва, непосредственно в момент разрыва и после восстановления работы датчиков),
-
пройденное расстояние (за 1 час до и после разрыва, от точки разрыва до точки восстановления),
-
количество спутников, передающих сигнал непосредственно в момент разрыва и после восстановления работы,
-
изменение уровня топлива за период разрыва.
Предварительно, для каждого признака были построены диаграммы распределения для анализа выбросов. Так, например, было выявлено, что один из типов используемых терминалов не передает информацию о количестве спутников. Эти данные были исключены из анализа.
По полученным данным проведена кластеризация с использованием алгоритма К-средних. Количество выделяемых кластеров было определено опытным путем: анализировались средние значения всех признаков по каждому дополнительно выделяемому кластеру. В итоге было выделено 5 кластеров, дальнейшее дробление не приводило к появлению групп интересных с точки зрения цели анализа. Средние значения признаков для итогового варианта кластеризации приведены в таблице 1.
Таблица 1. Результаты кластеризации случаев сбоя работы системы спутникового контроля
Признак |
Номер выделенного кластера |
||||
1 |
2 |
3 |
4 |
5 |
|
Количество случаев |
455 |
17 |
1 289 |
2 265 |
642 |
Время разрыва, час |
18.3 |
3.3 |
1.1 |
1.0 |
1.1 |
Расстояние за час до |
3.1 |
12.8 |
1.6 |
4.8 |
47.9 |
Расстояние за час после |
4.2 |
18.5 |
2.0 |
5.5 |
44.5 |
Расстояние за время разрыва |
0.0 |
49.4 |
0.1 |
0.1 |
0.2 |
Скорость +1час |
5.7 |
22.8 |
3.0 |
11.3 |
54.6 |
Скорость -1час |
4.7 |
8.9 |
2.9 |
11.1 |
66.7 |
Изменение топлива |
-0.4 |
-5.9 |
-0.6 |
-1.1 |
-7.7 |
Количество спутников |
15.7 |
10.0 |
7.2 |
18.2 |
17.3 |
Скорость в момент разрыва |
0.0 |
36.4 |
0.8 |
0.9 |
4.2 |
В результате кластеризации выделены следующие группы случаев сбоя работы системы спутникового контроля:
1. Длительные по времени разрывы без движения транспортного средства (устаревшие виды датчиков – не работают при выключении двигателя).
2. Разрывы на скорости из-за потери связи со спутниками (редкие случаи).
3. Разрывы во время стоянки из-за потери связи со спутниками.
4. Короткие по времени разрывы с отсутствием движения и хорошим сигналом от спутников (многочисленная группа, предположительно, связано с краткосрочным ремонтом).
5. Целевая группа: длительность разрывов в среднем 1 час; остановка транспортного средства в период разрыва при движении до и после; в период разрыва смещение в среднем на 200 метров и существенный расход топлива.
Последняя группа (№5), с точки зрения выявления нецелевого использования транспорта, представляет наибольший интерес. Список этих случаев был направлен в службу безопасности дивизиона для дальнейшего детального расследования. Также была передана методология проведения подобного рода анализа. В дальнейшем внедрение регулярной процедуры анализа данных спутникового контроля позволит повысить надежность антифрод-системы и достигать эффективности в процессе транспортной логистики за счет целевого использования активов.
Заключение
Применение алгоритмов кластеризации имеет большой потенциал для антифрод-анализа. В данной области, на начальном этапе, сложно получить точные индикаторы, по которым можно выявить случаи нарушений. Однако, методология кластерного анализа универсальна и позволяет подсказать аналитику закономерности, которые имеются в данных любого типа.