Uczenie Maszynowe w Sklepach
Innowacyjne rozwiązanie do odczytu temperatury na urządzeniach chłodzących wykorzystujące Machine Learning.
Wyzwanie
Praktycznie w każdym sklepie spożywczym znajdują się urządzenia chłodzące czy mrożące, przechowujące żywność. Do tej pory pracownik sklepu czy też sieci sklepów, kontrolował temperaturę poprzez jej doraźne sprawdzanie. Niestety zdarzało się tak, że nim pracownik zauważył awarię lodówki czy zamrażarki, towar był już do wyrzucenia, lub istniało ryzyko jego zepsucia. W takiej sytuacji sklep nie może sobie pozwolić na sprzedawanie towaru np. częściowo rozmrożonego. Zwykle taka partia towaru szła na straty.
Żeby unikać takich sytuacji, dla jednej z największych sieci sklepów spożywczych w Polsce stworzyliśmy aplikację, która ma za zadanie odczytywać temperaturę na urządzeniach chłodzących i raportować dane do systemu. Dzięki temu sklepy spożywcze zapobiegają rozmrożeniu towaru czy przechowywania żywności w nieodpowiednich warunkach. Oprócz bezpieczeństwa kupujących firma odnosi jeszcze jedną korzyść. Minimalizuje ryzyko strat związanych z marnowaniem żywności.
W sieciach sklepów spożywczych obowiązują procedury, które wymagają cyklicznego raportowania temperatury z urządzeń chłodzących np. co dwie godziny. Pracownik sklepu uruchamia aplikację mobilną i korzystając z kamery swojego urządzenia, skanuje temperaturę oraz kod lodówki czy zamrażarki. Temperatura raportowana jest do systemu.
W chwili, gdy temperatura odbiega od normy, administrator systemu rozpoczyna procedury awaryjne, dzięki którym żywność przechowywana w lodówce może zostać uratowana. Jeśli pracownik sklepu odpowiedzialny za skanowanie temperatur nie dokonał stosownych odczytów, dostaje powiadomienie PUSH z przypomnieniem. Powiadomienia te otrzymuje również wtedy, gdy zeskanował np. 9 z 10 urządzeń w obiekcie. Wtedy wiadomość PUSH zawiera również informację o brakującym odczycie, ze wskazaniem konkretnego urządzenia np. brakuje odczytu z urządzenia nr 123, wykonaj go w ciągu 5 minut.
Rozwiązanie
Celem projektu było wprowadzenie procedury raportowania temperatury na urządzeniach chłodzących. Dzięki aplikacji sieć sklepów spożywczych chciała mieć regularne odczyty temperatur i możliwie szybko reagować na powstające awarie. Cel został osiągnięty dzięki wykorzystaniu OCR (optical character recognition, optycznego rozpoznawania znaków) oraz sekwencji przypominania pracownikom o koniecznych odczytach.
Aplikacja rozwiązuje 3 problemy:
- Wprowadza i systematyzuje procedurę odczytów temperatur. Procedura jest łatwa, intuicyjna i minimalizuje ryzyko błędu ludzkiego - skanowanie temperatury jednocześnie z kodem urządzenia. Aplikacja automatycznie przypisuje temperaturę do urządzenia i raportuje ją do systemu.
- Zmniejsza ryzyko zepsucia towaru przez awarię urządzeń chłodzących, reagując wprowadzeniem procedur alarmowych na wczesnym etapie
- Dzięki przypomnieniom PUSH, które wysyłane są do odpowiedzialnych za odczyt temperatur pracowników, sieć sklepów spożywczych uzyskuje regularne odczyty. Aplikacja pilnuje również, aby żadne z urządzeń nie zostało pominięte. Skanowanie kodu urządzenia eliminuje możliwość wprowadzenia temperatury bez jej sprawdzenia.
Największym wyzwaniem projektu było „wytrenowanie” algorytmu rozpoznawania znaków za pomocą Machine Learningu. Wyzwanie polegało na tym, że w sieci sklepów spożywczych są dziesiątki modeli termometrów, o różnych rozmiarach i umiejscowieniach. Część z nich jest zaszroniona, cześć zamglona, a przy niektórych osłona była podrapana, co utrudniało prawidłowy odczyt. Znalezienie zintegrowanej bazy danych wraz z dopasowaniem odpowiedniego rozwiązania wymagało nakładu zarówno nauki maszynowej, jak i ludzkiej.
Tworzenie aplikacji mobilnej rozpoczęliśmy od oszacowania ilości punktów danych potrzebnych do stworzenia wartościowego rozwiązania dla rdzenia aplikacji opartego o Machine Learning. Długie “trenowanie” algorytmu miało za zadanie zmaksymalizować precyzję i skuteczność odczytów. Algorytm musieliśmy dostosować nie tylko do dużej ilości modeli termometrów, ale również do słabych warunków oświetlenia czy starszych modeli smartfonów. Dzięki takiemu podejściu algorytm potrafi niemal bezbłędnie rozpoznawać znaki. Błędy lub niemożliwość odczytu pojawiały się tam, gdzie ludzkie oko również zawodziło.
Testy aplikacji przeprowadziliśmy na różnych urządzeniach tj. z systemem operacyjnym Android i iOS, różnych producentów smartfonów (w sieci nie występowały modele jednego producenta) oraz na starszych modelach smartfonów. Testy pokryły wszystkie urządzenia dostępnej w sieci sklepów spożywczych. Testowe odczyty temperatur przeprowadzaliśmy w realnych sklepach sieci, które umożliwiały eliminacje możliwych błędów:
- słabe oświetlenie
- szron lub wilgoć
- podrapane osłony
Całość przeprowadzonych prac możemy podzielić na trzy etapy:
- Warsztaty: Przed rozpoczęciem projektu przeprowadziliśmy warsztaty, w których stworzyliśmy listę wymagań funkcjonalnych (FRD), w odpowiedzi na wymagania biznesowe (BRD). Na tym etapie określiliśmy także zakres architektury systemu (TRD). W ten sposób dostosowaliśmy zakres wymagań do potrzeb klienta. Lepiej zrozumieliśmy cele i znaleźliśmy sposób, jak je zrealizować.
- Faza testów: Testy algorytmu w różnych warunkach, które miały na celu przystosowanie aplikacji do zmiennych sposób korzystania przez pracowników.
- Wdrożenie: Przygotowanie i wdrożenie finalnego rozwiązania, które spełniło oczekiwania biznesowe naszego klienta.
Efekty
Aplikacja stworzona dla sieci sklepów spożywczych rozwiązuje problemy i generuje oszczędności.
Awarie urządzeń chłodzących zdarzają się i nadal będą się zdarzać. Tylko dostatecznie szybka reakcja na zaistniałą sytuację pozwala na niwelowanie lub wręcz unikanie strat związanych z awariami. Aplikacja, którą stworzyliśmy, rozwiązuje problem z systematycznością odczytów, skraca czas od zauważenia problemu do zareagowania i zapobiega marnowaniu żywności.
Dzięki aplikacji i wprowadzeniu procedury, żywność w sklepach, którą codziennie kupujemy, jest pod kontrolą.
Ich sposób pracy jest niezwykle przejrzysty; z łatwością możemy zobaczyć, nad czym aktualnie pracują i ile im to zajmuje.
Więcej informacji
Aplikacja dla Flugger Polska
Aplikacja Fiona Wall Design® pozwala klientom odwiedzającym stoiska targowe firmy Flugger w prosty sposób dobierać kolorystykę do wzorów tapet Fiona.
Innogy
Aplikacja umożliwiająca elektroniczne odczytywanie liczników bez konieczności wymieniania go na model IoT.
NaprawmyTo
Serwis Naprawmyto.pl umożliwia swoim użytkownikom zgłaszanie problemów w przestrzeni publicznej, zaobserwowanych w najbliższym otoczeniu.