Cykliczność i parametry zmienne w czasie
Czym jest cykliczność?
Rzeczywiste procesy nie przebiegają tak samo o każdej porze. W godzinach pracy obsługa klienta odbiera więcej połączeń. W zakładach produkcyjnych obowiązują różne zmiany i różna obsada. W handlu występują sezonowe wzrosty popytu.
Cykliczność pozwala określić, kiedy obowiązują poszczególne reguły symulacji. Zamiast jednej wartości dla całego okresu można ustawić różne parametry dla różnych przedziałów czasu:
- Dni robocze i weekendy
- Zmiana poranna i wieczorna
- Sezon szczytowy i poza sezonem
- Godziny pracy i czas poza nimi
Dzięki temu symulacja lepiej odzwierciedla przebieg procesu w różnych porach.
Dlaczego cykliczność ma znaczenie
Rozważmy prosty przykład: napływ klientów.
Bez cykliczności:
- 10 klientów na godzinę przez całą dobę
Z cyklicznością:
- 25 klientów na godzinę w dni robocze, 9:00–18:00
- 15 klientów na godzinę w dni robocze, 18:00–21:00
- 5 klientów na godzinę w weekendy
- 2 klientów na godzinę w nocy
Drugi model lepiej odzwierciedla rzeczywisty popyt, który wpływa na kolejki, wykorzystanie zasobów i przepustowość.
Dostępne typy cykliczności
ProcessMind obsługuje dziewięć typów cykliczności. Każdy określa, kiedy obowiązuje dana reguła:
| Typ | Parametry | Opis |
|---|---|---|
| Zawsze | (brak) | Reguła obowiązuje przez cały czas, bez zmian |
| Domyślnie | (brak) | Reguła zastępcza, gdy nie pasuje żadna inna reguła czasowa |
| Okres stały | startDateTime, endDateTime | Jednorazowy okres, bez powtarzania |
| Codziennie | startTime, endTime | Te same godziny każdego dnia |
| W każdy dzień roboczy | startTime, endTime | Tylko od poniedziałku do piątku |
| W każdy dzień weekendu | startTime, endTime | Tylko w soboty i niedziele |
| Co tydzień | startDay, startTime, endDay, endTime | Powtarza się co tydzień, może obejmować kilka dni |
| Co miesiąc | startDayOfMonth, startTime, endDayOfMonth, endTime | Powtarzający się co miesiąc wzorzec |
| Co roku | startMonth, startDayOfMonth, startTime, endMonth, endDayOfMonth, endTime | Wzorzec roczny lub sezonowy |
Szczegółowy opis typów cykliczności
Zawsze
Najprostsza opcja: reguła obowiązuje przez cały czas i nie zmienia się.
Użyj, gdy: parametr rzeczywiście nie zależy od czasu lub tworzona jest prosta symulacja bazowa.
Domyślnie
Reguła zastępcza, stosowana, gdy żadna inna reguła czasowa nie pasuje do bieżącego czasu symulacji.
Użyj, gdy: mają obowiązywać wyjątki w określonych porach, a w pozostałych przypadkach ma być stosowana wartość domyślna.
Zawsze dodawaj regułę domyślną
Przy kilku regułach cykliczności zawsze dodaj regułę domyślną, która obejmie nieprzypisane przedziały czasu. Dzięki temu symulacja nie będzie działać nieoczekiwanie, gdy żadna konkretna reguła nie będzie pasować.
Codziennie
Reguła obowiązuje w określonych godzinach każdego dnia tygodnia.
Parametry:
startTime: godzina rozpoczęcia obowiązywania reguły (np. 09:00)endTime: godzina zakończenia obowiązywania reguły (np. 17:00)
Przykład: Standardowe godziny pracy 09:00–17:00 obowiązują codziennie, także w weekendy.
W każdy dzień roboczy
Reguła obowiązuje w określonych godzinach wyłącznie od poniedziałku do piątku.
Parametry:
startTime: godzina rozpoczęcia obowiązywania regułyendTime: godzina zakończenia obowiązywania reguły
Przykład: Obsługa klienta działa w dni robocze w godzinach 08:00–18:00, a w weekendy obowiązują inne reguły.
W każdy dzień weekendu
Reguła obowiązuje w określonych godzinach wyłącznie w soboty i niedziele.
Parametry:
startTime: godzina rozpoczęcia obowiązywania regułyendTime: godzina zakończenia obowiązywania reguły
Przykład: W weekendy obsługa jest dostępna w krótszych godzinach, od 10:00 do 16:00.
Co tydzień
Reguła obowiązuje w przedziale czasu, który może obejmować kilka dni w tygodniu. Przydaje się w przypadku wzorców, które nie mieszczą się w granicach jednego dnia.
Parametry:
startDay: dzień rozpoczęcia obowiązywania reguły (poniedziałek, wtorek itd.)startTime: godzina w dniu rozpoczęciaendDay: dzień zakończenia obowiązywania regułyendTime: godzina w dniu zakończenia
Przykład: Okres wzmożonego ruchu trwa od środy od 14:00 do piątku do 12:00.
Co miesiąc
Reguła obowiązuje w określone dni każdego miesiąca.
Parametry:
startDayOfMonth: dzień miesiąca, w którym zaczyna obowiązywać reguła (1–31)startTime: godzina w dniu rozpoczęciaendDayOfMonth: dzień miesiąca, w którym kończy obowiązywać regułaendTime: godzina w dniu zakończenia
Przykład: Wzmożone przetwarzanie na koniec miesiąca trwa od 25. dnia miesiąca od 08:00 do ostatniego dnia miesiąca do 23:59.
Co roku
Reguła obowiązuje w określonych terminach każdego roku.
Parametry:
startMonth: miesiąc rozpoczęcia obowiązywania regułystartDayOfMonth: dzień w miesiącu rozpoczęciastartTime: godzina w dniu rozpoczęciaendMonth: miesiąc zakończenia obowiązywania regułyendDayOfMonth: dzień w miesiącu zakończeniaendTime: godzina w dniu zakończenia
Przykład: Szczyt sprzedaży świątecznej trwa od 15 listopada od 00:00 do 31 grudnia do 23:59.
Okres stały
Reguła obowiązuje w określonym przedziale dat i godzin, który się nie powtarza. Użyj tej opcji w przypadku jednorazowych zdarzeń.
Parametry:
startDateTime: dokładna data i godzina rozpoczęciaendDateTime: dokładna data i godzina zakończenia
Przykład: Tydzień premiery produktu, od 15 do 22 marca 2025 r., z zastosowaniem specjalnych reguł obsługi.
Łączenie wielu reguł
Cykliczność pozwala łączyć wiele reguł. Można ustawić różne parametry dla różnych przedziałów czasu, a symulacja dobiera właściwą regułę dla każdej chwili.
Przykład: czas przetwarzania na różnych zmianach
Rozważmy proces produkcyjny, w którym czas przetwarzania zależy od zmiany:
| Nazwa reguły | Cykliczność | Rozkład czasu przetwarzania |
|---|---|---|
| Zmiana dzienna | W każdy dzień roboczy, 08:00–16:00 | Normal(30 min, 5 min) |
| Zmiana wieczorna | W każdy dzień roboczy, 16:00–00:00 | Normal(45 min, 10 min) |
| Zespół weekendowy | W każdy dzień weekendu, 10:00–18:00 | Normal(60 min, 15 min) |
| Nocą/domyślnie | Domyślnie | Normal(90 min, 20 min) |
Zmiana dzienna działa najszybciej, bo obsada jest pełna, a pracownicy wypoczęci. Wieczorem praca przebiega wolniej z powodu mniejszego nadzoru. W weekendy tempo jest najniższe, bo pracuje minimalna obsada. Reguła domyślna obejmuje godziny nocne.
Priorytet reguł
Gdy pasować może kilka reguł:
- Reguły są sprawdzane w kolejności ich zdefiniowania w konfiguracji
- Stosowana jest pierwsza pasująca reguła, czyli ta najwyżej na liście
- Reguły domyślne są stosowane tylko wtedy, gdy nie pasuje żadna inna reguła
Wskazówka: Umieszczaj bardziej szczegółowe reguły nad ogólnymi. Jeśli dni robocze mają przebiegać inaczej niż weekendy, ustaw regułę „W każdy dzień roboczy” przed regułą „Codziennie”.
Gdzie stosować cykliczność
Cykliczność można stosować do wielu parametrów symulacji:
| Parametr | Zastosowanie cykliczności |
|---|---|
| Napływ case | Większy napływ w godzinach pracy, mniejszy w nocy |
| Czasy przetwarzania | Szybsze przetwarzanie przy pełnej obsadzie, wolniejsze przy ograniczonych godzinach pracy |
| Dostępność zasobów | Większa obsada w godzinach szczytu, minimalna w nocy |
| Prawdopodobieństwo pominięcia | Inne reguły kierowania w weekendy lub święta |
| Prawdopodobieństwa bramek | Inne wzorce podejmowania decyzji zależnie od pory dnia |
Przykład: centrum obsługi klienta
Poniższy przykład pokazuje, jak cykliczność wpływa na kilka parametrów symulacji centrum obsługi klienta:
Konfiguracja częstości napływu
| Cykliczność | Częstość napływu |
|---|---|
| W każdy dzień roboczy, 09:00–18:00 | Poisson(50 na godzinę) |
| W każdy dzień roboczy, 18:00–22:00 | Poisson(20 na godzinę) |
| W każdy dzień weekendu, 10:00–16:00 | Poisson(15 na godzinę) |
| Domyślnie | Poisson(5 na godzinę) |
Duży napływ w godzinach pracy, umiarkowany wieczorem, niewielki w weekendy i w nocy.
Konfiguracja czasu przetwarzania
| Cykliczność | Rozkład |
|---|---|
| W każdy dzień roboczy, 09:00–17:00 | Triangular(10, 20, 45 min) |
| W każdy dzień weekendu | Triangular(20, 40, 90 min) |
| Domyślnie | Triangular(30, 60, 120 min) |
Przetwarzanie przebiega najszybciej przy pełnej obsadzie, a wolniej w weekendy i poza godzinami pracy.
Konfiguracja dostępności personelu
| Cykliczność | Dostępni konsultanci |
|---|---|
| W każdy dzień roboczy, 09:00–18:00 | 10 konsultantów |
| W każdy dzień roboczy, 18:00–22:00 | 4 konsultantów |
| W każdy dzień weekendu, 10:00–16:00 | 3 konsultantów |
| Domyślnie | 1 konsultant |
Pełna obsada w godzinach pracy, mniejsza dostępność poza nimi.
Jak współdziałają parametry
We wtorek o 10:00:
- Napływ wynosi 50 case na godzinę
- Czas przetwarzania określa szybki rozkład trójkątny
- Dostępnych jest 10 konsultantów
We wtorek o 20:00:
- Napływ spada do 20 case na godzinę
- Czas przetwarzania określa wolniejszy rozkład domyślny
- Dostępnych jest tylko 4 konsultantów
W sobotę o 14:00:
- Napływ wynosi 15 case na godzinę
- Czas przetwarzania określa rozkład weekendowy
- Dostępnych jest 3 konsultantów
Dobre praktyki
1. Zacznij od reguły domyślnej
Najpierw zawsze zdefiniuj regułę domyślną. Obejmie ona wszystkie przedziały czasu, których nie uwzględniają pozostałe reguły.
2. Przechodź od reguł ogólnych do szczegółowych
Zacznij od ogólnych wzorców, na przykład podziału na dni robocze i weekendy. W razie potrzeby dodaj bardziej szczegółowe reguły, na przykład dla poszczególnych zmian.
3. Na początku nie komplikuj konfiguracji
Zacznij od prostego podziału na dni robocze i weekendy, a dopiero później dodaj szczegóły dotyczące godzin lub sezonów. W razie potrzeby można rozbudować konfigurację.
4. Opieraj wzorce na danych
Jeśli to możliwe, przeanalizuj dane historyczne, aby poznać rzeczywiste wzorce. Sprawdź częstość napływu, czasy przetwarzania i obsadę w poszczególnych godzinach i dniach tygodnia.
5. Sprawdź sytuacje graniczne
Sprawdź, czy reguły prawidłowo obsługują momenty zmiany:
- Co dzieje się dokładnie o 17:00, gdy zmienia się zmiana?
- Czy północ jest obsługiwana prawidłowo?
- Czy reguły na koniec miesiąca działają w miesiącach o różnej długości?
6. Opisz reguły
Złożone konfiguracje cykliczności mogą być trudne do zrozumienia po pewnym czasie. Opisz, dlaczego każda reguła została dodana i jaki wzorzec biznesowy odzwierciedla.
Następne kroki
Projektuj lepsze procesy. Buduj spójną architekturę. Zachowaj kontrolę.
Uzyskaj dostęp od razu, bez karty kredytowej i czekania. Przedstaw sposób działania organizacji w postaci przejrzystych, powiązanych modeli procesów.
Buduj architekturę procesów, określaj właścicieli i mechanizmy kontroli oraz uzgadniaj role i zakresy odpowiedzialności na każdym poziomie.
Rozpocznij okres próbny i stwórz solidną podstawę do nadzorowania, zarządzania i ciągłego doskonalenia procesów.