Tryby dyspozycji wyjaśnione (Auto, BalanceLocations, BalanceTime, Optima)
API Dispatch TrackRoad obsługuje wiele opcji DispatchMode. Każdy tryb określa jak przystanki są przypisywane oraz co optymalizator traktuje priorytetowo — szybkość, równowagę, wykonalność, okna czasowe lub minimalną liczbę pojazdów.
Ten przewodnik pomoże Ci wybrać właściwy tryb dla Twojego problemu routingu i uniknąć typowych błędów dyspozycji, takich jak UnassignedStops.
Wizualne porównanie opcji DispatchMode oraz tego, jak priorytetyzują równowagę, okna czasowe i wykonalność, aby ograniczyć liczbę nieprzypisanych przystanków.
Przetestuj tryby dyspozycji w Swaggerze
Przetestuj różne wartości DispatchMode z tymi samymi przystankami i pojazdami, aby zobaczyć, jak zmieniają się wyniki.
Otwórz Swagger UI
Przykłady API Dispatch
Czym jest DispatchMode?#
DispatchMode to strategia optymalizacji używana przez silnik routingu TrackRoad. Określa, co optymalizator ma priorytetyzować podczas przypisywania przystanków do pojazdów.
Niektóre tryby priorytetyzują zrównoważone obciążenie pracą, inne najkrótszy łączny czas, a jeszcze inne wykonalność przy ograniczeniach, takich jak okna czasowe.
Ważne:
Jeśli korzystasz z okien czasowych, powinieneś używać trybu Optima.
Porównanie DispatchMode (najlepsze zastosowania)#
| DispatchMode |
Najlepsze do |
Główny cel |
Czy działa z oknami czasowymi? |
Uwagi |
Auto |
Szybki, podstawowy routing |
Automatyczny wybór najlepszej strategii |
Czasami |
Dobra opcja domyślna dla prostych przypadków użycia. Nie jest idealna dla ścisłych okien czasowych. |
BalanceLocations |
Dyspozycja floty |
Równoważenie liczby przystanków na pojazd |
Ograniczone |
Używaj do sprawiedliwego rozdziału obciążenia między kierowców. |
BalanceTime |
Routing floty z czasem obsługi |
Równoważenie całkowitego czasu trasy na kierowcę |
Ograniczone |
Lepszy niż BalanceLocations, gdy czas obsługi różni się między przystankami. |
Optima |
Okna czasowe i harmonogramowanie |
Wykonalność plus zoptymalizowany harmonogram |
Tak (zalecane) |
Najlepszy wybór przy ścisłych ograniczeniach. Wyższy koszt obliczeń, ale lepsze wyniki. |
MinimumVehicles |
Planowanie zdolności operacyjnej |
Użycie jak najmniejszej liczby pojazdów |
Czasami |
Przydatny do szacowania wielkości floty. Może tworzyć dłuższe trasy dla mniejszej liczby kierowców. |
SingleRegion |
Jeden klaster geograficzny |
Utrzymanie tras w obrębie jednego regionu |
Ograniczone |
Przydatny, gdy zbiór przystanków jest naturalnie skupiony w jednym obszarze. |
MultipleRegion |
Routing wielomiejski lub rozproszony |
Automatyczny podział na regiony |
Ograniczone |
Przydatny dla firm działających w wielu strefach lub klastrach miejskich. |
Tryb Auto#
Auto to strategia domyślna. Silnik wybiera wewnętrzny tryb w zależności od wielkości danych wejściowych i ograniczeń.
- Najlepszy do: prostego routingu bez ścisłych ograniczeń
- Najlepsze dane wejściowe: same przystanki lub jeden pojazd
- Okna czasowe: działa tylko wtedy, gdy ograniczenia są luźne
Rekomendacja:
Zacznij od Auto na wczesnym etapie integracji, a następnie przejdź na Optima w harmonogramach produkcyjnych.
Tryb BalanceLocations#
BalanceLocations stara się przypisać w przybliżeniu tę samą liczbę przystanków do każdego pojazdu.
- Najlepszy do: flot dostawczych, gdzie każdy kierowca powinien mieć podobną liczbę przystanków
- Typowe użycie: dwa lub więcej pojazdów przy średniej liczbie przystanków
- Przydatny, gdy wszystkie przystanki mają podobny czas obsługi
Jeśli czas obsługi znacznie różni się między przystankami, BalanceTime jest zwykle lepszym wyborem.
Tryb BalanceTime#
BalanceTime równoważy całkowity czas trasy między pojazdami, w tym czas jazdy i czas obsługi.
- Najlepszy do: obsługi terenowej, dostaw o zróżnicowanym obciążeniu i zmiennych czasach obsługi
- Dane wejściowe: wiele pojazdów oraz realistyczny czas obsługi
- Tworzy bardziej sprawiedliwe trasy oparte na łącznym czasie trwania
Dobra praktyka:
Zawsze uwzględniaj Stops[].ServiceTimeMinutes, jeśli używasz BalanceTime.
Tryb Optima (zalecany dla okien czasowych)#
Optima to najbardziej zaawansowana strategia dyspozycji w TrackRoad. Została zaprojektowana do harmonogramów z ograniczeniami, takimi jak:
- Okna czasowe
- Czas obsługi
- Godziny pracy pojazdu (TimeIn / TimeOut)
- Limity pojemności (waga / objętość)
Jeśli masz okna czasowe, zawsze używaj DispatchMode = Optima. Inne tryby mogą dawać niewykonalne wyniki lub zwracać więcej UnassignedStops.
Tryb MinimumVehicles#
MinimumVehicles stara się wykonać zadanie przy użyciu jak najmniejszej liczby pojazdów. Jest często używany do planowania i szacowania zdolności operacyjnej.
- Najlepszy do: określania wymaganej wielkości floty
- Kompromis: niektóre trasy mogą być dłuższe lub mniej zrównoważone
- Przydatny, gdy chcesz ograniczyć koszty, używając mniejszej liczby kierowców lub pojazdów
Użyj tego trybu, aby odpowiedzieć na pytanie: „Ilu kierowców potrzebuję dzisiaj?”
Tryby SingleRegion i MultipleRegion#
Tryby regionalne są przydatne, gdy zbiór przystanków obejmuje duży obszar geograficzny.
- SingleRegion: utrzymuje trasy w obrębie jednego klastra lub regionu
- MultipleRegion: dzieli przystanki na wiele klastrów geograficznych
Te tryby są pomocne dla firm realizujących dostawy w wielu miastach lub dużych obszarach metropolitalnych.
Którego DispatchMode powinienem użyć?#
| Twój cel |
Zalecany tryb |
Dlaczego |
| Szybki routing (podstawowy) |
Auto |
Szybka i prosta integracja |
| Zrównoważenie liczby przystanków między pojazdami |
BalanceLocations |
Sprawiedliwy podział według liczby |
| Zrównoważenie całkowitego czasu trasy (jazda plus obsługa) |
BalanceTime |
Lepsza sprawiedliwość dla harmonogramów pracy terenowej |
| Okna czasowe plus harmonogramowanie godzin pracy |
Optima |
Optymalizacja uwzględniająca ograniczenia |
| Użycie jak najmniejszej liczby pojazdów |
MinimumVehicles |
Szacowanie wielkości floty i redukcja kosztów |
Jak DispatchMode wpływa na UnassignedStops#
UnassignedStops pojawiają się wtedy, gdy Twoich ograniczeń nie da się spełnić. DispatchMode zmienia to, jak agresywnie silnik próbuje dopasować przystanki do tras.
- Optima: największa szansa na przypisanie przystanków, gdy występują okna czasowe
- Tryby Auto / Balance: mogą generować więcej nieprzypisanych przystanków przy ścisłych ograniczeniach
- MinimumVehicles: może pozostawić przystanki nieprzypisane, jeśli przy danych ograniczeniach możliwa jest zbyt mała liczba pojazdów
Jeśli wynik zawiera UnassignedStops, spróbuj dodać pojazdy, zwiększyć TimeOut, skrócić czas obsługi, poszerzyć okna czasowe lub przejść na Optima.
Powiązane modele Swagger#
Swagger jest źródłem referencyjnym dla wszystkich pól modelu. Strony Centrum wiedzy koncentrują się na dobrych praktykach i rzeczywistych zastosowaniach.
FAQ#
Którego DispatchMode powinienem użyć dla okien czasowych?
Użyj Optima, jeśli masz okna czasowe, czasy obsługi, godziny pracy lub inne ścisłe ograniczenia. To zalecany tryb dla harmonogramowania z ograniczeniami.
Jaka jest różnica między BalanceLocations a BalanceTime?
BalanceLocations stara się rozdzielić podobną liczbę przystanków na każdy pojazd. BalanceTime stara się zrównoważyć całkowity czas trasy, w tym jazdę i czas obsługi.
Dlaczego otrzymuję UnassignedStops?
UnassignedStops zwykle pojawiają się wtedy, gdy ograniczenia są niewykonalne, na przykład przy ciasnych oknach czasowych, krótkich godzinach pracy, niewystarczającej liczbie pojazdów lub zbyt długim czasie obsługi. Przejście na Optima i poluzowanie ograniczeń często pomaga.
Kiedy powinienem użyć MinimumVehicles?
Użyj MinimumVehicles, gdy Twoim celem jest wykonanie pracy przy użyciu jak najmniejszej liczby kierowców lub pojazdów, na przykład do planowania wielkości floty lub analizy kosztów.