Witam.
Na zlecenie klienta mam do zrobienia prognozowanie zamówień. Nie bardzo wiem jak to ugryźć. Jedyne co wiem to robiąc to statystyką mogę dostać mało wiarygodne dane. Nie jestem pewien, czy w ogóle jestem w stanie coś takiego zasymulować, aby otrzymać dane w miarę rzeczywiste. Czy to już uczenie maszynowe?
To jest mega ciężki temat.
Zawsze, co miesiąc biorą 10 sztuk czegoś. Potem był jednorazowy strzał, że było potrzebne 200 sztuk. To ile zamawiamy kolejnym razem? ;)
Poza tym, poza samą rotacją, musisz jeszcze uwzględnić stany magazynowe. Czy klient ma określone stany minimalne?
Spodziewałem się takiej odpowiedzi. Domyślałem się, że nie będzie to proste, ale w dobie sztucznych inteligencji i uczenia maszynowego może jest szansa, że się uda ;-)
Jeśli będzie trzeba ustalić stany minimalne to się ustali, ale domyślam się, że ma. Na początek chciałem się dowiedzieć, czy w ogóle jest sens się za to brać i czy są jakiekolwiek narzędzia.
PS.
Wrzuciłem to do C#, ponieważ oprogramowanie, do którego mam dopisać prognozowanie jest w C#... Liczyłem, że będzie wysyp bibliotek, które policzą to za mnie :-D
Ale co policzą?
Bo skoro nie ma wymagań, to nie ma czego liczyć. A jeden miesiąc to chyba za mało, żeby cokolwiek prognozować, zwłaszcza jeśli popyt zmienia się sezonowo.
Tylko tak mi się wydaje, że skupiasz się na narzędziu (AI/ML czy jakieś biblioteki), ale nie to jest problemem. Bo jakakolwiek biblioteka, albo własnoręcznie napisany algorytm, będzie w stanie to (czy lepiej, czy gorzej - to już inna kwestia) obliczyć, tylko musi mieć określone zasady i wymagania, zgodnie z którymi ma postępować.
A to wymaga dość konkretnej pracy z klientem. Bo jeżeli klient nie określi, czego dokładnie potrzebuje, a Ty tego w pełni nie zrozumiesz, to nie wytłumaczysz maszynie, jak ma do tematu podejść. I wprawdzie algorytm wykona się poprawnie i zwróci jakieś wyniki, z matematycznego punktu widzenia zupełnie poprawne, ale może się okazać, że biznesowo będzie to coś całkowicie rozmijającego się z oczekiwaniami klienta. Chociażby podany przeze mnie wcześniej przykład - musiałbyś ustalić, w jaki sposób chcą oni traktować takie zdarzenia:
- czy liczymy średnia (jeśli tak, to z jakiego okresu)
- a może wyznaczamy medianę z zamawianych ilości
- może takie jednostkowe zamówienia, które odbiegają od pozostałych o X% w ogóle wykluczamy z symulacji?
- co chcemy osiągnąć - czy żeby zawsze stan magazynowy przekraczał poziom minimalny?
- a może chcemy mieć taką ilość, żeby przy statystycznym użytkowaniu, po zamówieniu mieć margines 3 tygodni do dojścia do poziomów minimalnych
Takich pytań/kwestii są dziesiątki i w nich jest problem. Napisanie samego algorytmu to jest kwestia wtórna i o wiele prostsza, niż porządne zrozumienie, czego klient oczekuje. Musisz z nim długo posiedzieć i ustalić, jaka jest jego wizja biznesowa i oczekiwania względem tego prognozowania.
Problem chyba w tym, że ja sobie z tego sprawę zdaje, ale klient nie. Tak jak pisałem wcześniej. Byłem niemalże pewny, że w XXI wieku istnieją narzędzia, które gdzieś to ułatwią i ich wyniki są najbliżej "prawdy". Matematyki nie oszukam, klient jest ciężki, więc to chyba nie wartę pieniędzy ;-)
Albo pokaż klientowi ten wątek (póki co nie nazywałeś go debilem, więc nie masz powodów do obaw) - może to rzuci nowe światło na sprawę i koleś zrozumie, że najpierw sam musi wiedzieć, czego chce ;)