| # Python | # Spark | # Flask | # MySQL | # AWS |
| # SQL | # Hadoop | # Django | # PostgreSQL | # Azure |
| # VBA | # Kafka | # SQLite | # GCP | |
| # Flink | # MongoDB | # cloud on-premises |
| time: | May 2014 – May 2018 |
| role: | Data Scientist |
| company: | KRONOSPAN |
Silva, part of the Kronospan Group, managed a fleet of about 350 vehicles, including off-road trucks, specialized vehicles, and TIR-type trucks. These vehicles were heavily used and operated under varying weather and terrain conditions. Each vehicle had several assigned drivers, which made monitoring fuel consumption and routes a challenging task. The vehicles refueled at internal fuel stations located within Kronospan’s facilities, which simplified logistics but also posed a risk of uncontrolled fuel usage.
The main problem I had to solve was detecting potential fuel thefts and unauthorized routes. Given the large scale of fuel consumption and the frequency of refueling, manual monitoring was impossible. I decided to use statistical methods and data analysis to detect anomalies in fuel consumption that could indicate fraud.
PROJECT IMPLEMENTATION
The first step was to gather data on fuel consumption, refueling, routes, and the conditions in which the vehicles operated. A key element was understanding the normal fuel consumption pattern for each type of vehicle, considering various factors such as terrain, weather conditions, and the specific characteristics of the vehicle and route.
The model I created was based on simple statistical algorithms for detecting deviations from the norm. I used statistical distributions and calculated average fuel consumption for a given route and under certain conditions. Any significant deviation from standard values was flagged as a potential anomaly. The system compared data for similar routes and vehicles and also detected differences in fuel consumption between drivers.
During the analysis, however, I discovered an unexpected phenomenon. One driver consistently achieved the best fuel consumption results, which initially seemed exemplary. Upon closer examination, it turned out that this driver was adding fuel from his own pocket to improve his results and win the award for the best driver. This behavior introduced a flaw into the model, which did not account for such actions.
To address this issue, I had to adjust the model by introducing additional rules for unusually good fuel consumption results, which could suggest data inconsistencies. I also incorporated cross-referencing with other data sources, such as refueling schedules and route lengths, to ensure that the results matched reality.
Ultimately, the model worked correctly, detecting both fuel theft attempts and unusual driver behaviors that impacted the analysis results.
PROJEKT: WYKRYWANIE ANOMALII W ZUŻYCIU PALIWA DLA FIRMY SILVA
Firma Silva, będąca częścią Grupy Kronospan, zarządzała flotą około 350 pojazdów, w tym ciężarówek terenowych, specjalistycznych oraz pojazdów typu TIR. Pojazdy te były intensywnie eksploatowane i działały w różnych warunkach pogodowych oraz terenowych. Każdy pojazd miał przypisanych kilku kierowców, co sprawiało, że monitorowanie zużycia paliwa i tras było nie lada wyzwaniem. Pojazdy były tankowane na wewnętrznych stacjach paliwowych ulokowanych w zakładach Kronospan, co z jednej strony upraszczało logistykę, ale z drugiej strony tworzyło ryzyko niekontrolowanego zużycia paliwa.
Głównym problemem, który musiałem rozwiązać, było wykrywanie ewentualnych nadużyć w postaci kradzieży paliwa oraz nieautoryzowanych tras. Ze względu na dużą skalę procesu zużycia paliwa i częstotliwość tankowań, ręczne monitorowanie było niemożliwe. Zdecydowałem się na wykorzystanie metod statystycznych i analizy danych, aby wychwytywać anomalie w zużyciu paliwa, które mogłyby wskazywać na oszustwa.
REALIZACJA PROJEKTU
Pierwszym krokiem było zgromadzenie danych na temat zużycia paliwa, tankowań, tras przejazdów oraz warunków, w jakich działały pojazdy. Kluczowym elementem było zrozumienie normalnego wzorca zużycia paliwa dla każdego rodzaju pojazdu, biorąc pod uwagę różne czynniki, takie jak warunki terenowe, pogodowe oraz specyficzne charakterystyki danego pojazdu i trasy.
Model, który stworzyłem, opierał się na prostych statystycznych algorytmach do wykrywania odchyleń od normy. Używałem rozkładów statystycznych i obliczeń średnich zużycia paliwa na określonej trasie i w określonych warunkach. Każde znaczące odchylenie od standardowych wartości było rejestrowane jako potencjalna anomalia. System porównywał dane dla podobnych tras i pojazdów, a także wykrywał różnice w zużyciu paliwa między kierowcami.
Podczas analizy, wykryłem jednak nieoczekiwane zjawisko. Jeden z kierowców regularnie osiągał najlepsze wyniki w zużyciu paliwa, co na początku wydawało się wzorowe. Po głębszej analizie okazało się, że kierowca ten dolewał paliwo z własnej kieszeni, aby poprawić swoje wyniki i zdobyć nagrodę dla najlepszego kierowcy. To zachowanie wprowadzało błąd do modelu, który nie przewidywał takiego rodzaju działań.
Aby rozwiązać ten problem, musiałem dostosować model, wprowadzając dodatkowe reguły dotyczące zbyt dobrych wyników zużycia paliwa, które mogłyby sugerować nieprawidłowości w danych. Uwzględniłem także większą weryfikację danych z innych źródeł, takich jak harmonogramy tankowań i długość tras, aby upewnić się, że wyniki są zgodne z rzeczywistością.
Ostatecznie model działał prawidłowo, wykrywając zarówno próby kradzieży paliwa, jak i nietypowe zachowania kierowców, które wpływały na wyniki analizy.
