🚦 Optymalizacja sygnalizacji świetlnej: sterowanie adaptacyjne
Obserwuj prawdziwego agenta Q-learning trenującego na żywo, aby sterować skrzyżowaniem czterech dróg, ucząc się z długości kolejek, by pokonać stały harmonogram sygnalizacji i skrócić średni czas oczekiwania.
O optymalizacji sygnalizacji świetlnej
Ta symulacja przedstawia skrzyżowanie czterech dróg w prawdziwym 3D i pozwala porównać dwie zasadniczo różne strategie sterowania. Sterowanie o stałym czasie cyklicznie przełącza fazy północ-południe i wschód-zachód według ustalonego harmonogramu, dokładnie jak najprostsze sterowniki sygnalizacji wdrażane od lat 20. XX wieku. Sterowanie adaptacyjne to prawdziwy tabelaryczny agent Q-learning: dyskretyzuje on długość kolejki na każdym dojeździe do stanu, wybiera fazę jako swoją akcję i na żywo aktualizuje tabelę Q na podstawie obserwowanej nagrody — ujemnej całkowitej długości kolejki — stosując standardową regułę aktualizacji Bellmana. Zachowanie adaptacyjne nie jest w żaden sposób zaskryptowane; obserwuj krzywą uczenia, a zobaczysz autentyczną, zaszumioną poprawę, a nie z góry przygotowaną linię spadkową.
Wdrożone systemy adaptacyjne, takie jak SCOOT (Wielka Brytania) i SCATS (Australia), wykorzystują podobne pętle sprzężenia zwrotnego oparte na kolejkach i obłożeniu, aby na nowo ustalać czasy sygnałów w rzeczywistych miastach, zwykle skracając średnie opóźnienie o 10-25% w porównaniu z planami o stałym czasie, zwłaszcza przy asymetrycznym lub zmiennym w czasie popycie.
Najczęściej zadawane pytania
Jakiego stanu, akcji i nagrody używa agent Q-learning?
Stan to długość kolejki na każdym z czterech dojazdów, dyskretyzowana na przedziały (0, 1-2, 3-5, 6+ samochodów) i połączona w jeden indeks stanu. Akcja to wybór, którą z dwóch faz uruchomić następnie — zielone dla kierunku północ-południe lub wschód-zachód. Nagrodą dla okna decyzyjnego jest ujemna wartość całkowitej długości kolejki zgromadzonej na wszystkich dojazdach w tym oknie, więc agent jest bezpośrednio nagradzany za utrzymywanie krótkich kolejek.
Jak korzystać z tej symulacji?
Wybierz Stały czas lub Adaptacyjne Q-Learning za pomocą przycisków trybu. Dostosuj cztery suwaki natężenia napływu dla każdego dojazdu lub kliknij Preset asymetryczny, aby wysłać znacznie więcej ruchu w kierunku północ-południe niż wschód-zachód. W trybie stałego czasu dostrój wstępnie ustawione czasy trwania zielonego światła. W trybie adaptacyjnym dostrój współczynnik uczenia α i współczynnik eksploracji ε, a następnie obserwuj krzywą uczenia w miarę gromadzenia epizodów — Reset/Retrenuj czyści tabelę Q i zaczyna od nowa.
Dlaczego sterowanie o stałym czasie jest dowodliwie nieoptymalne przy asymetrycznym ruchu?
Sterownik o stałym czasie przydziela czas zielonego światła według harmonogramu ustalonego z góry, bez żadnej informacji o tym, który dojazd rzeczywiście ma oczekujące samochody. Przy asymetrycznym lub zmiennym w czasie popycie gwarantuje to, że czas zielonego światła bywa przydzielany pustemu dojazdowi, podczas gdy samochody stoją w kolejce na ruchliwym — strukturalnie nieoptymalny przydział dla każdego wzorca ruchu innego niż ten, do którego harmonogram został dostrojony. Sterownik adaptacyjny, który może obserwować rzeczywisty stan kolejki, nigdy nie działa gorzej, a zazwyczaj znacznie lepiej, ponieważ zawsze może wybrać odtworzenie strategii stałego czasu, lecz nie jest do niej ograniczony.
Jaka jest reguła aktualizacji Q-learning pokazana w tej symulacji?
Q(s,a) ← Q(s,a) + α[r + γ·max_a′ Q(s′,a′) − Q(s,a)]. Po wykonaniu akcji a w stanie s i zaobserwowaniu nagrody r oraz następnego stanu s′, agent przesuwa swoje oszacowanie wartości akcji Q(s,a) w kierunku zaobserwowanej nagrody plus zdyskontowanej wartości najlepszej akcji dostępnej w następnym stanie. α to współczynnik uczenia (jak bardzo każda obserwacja aktualizuje tabelę), a γ to współczynnik dyskontowania ważący przyszłą nagrodę względem nagrody natychmiastowej.
Co oznacza tutaj eksploracja epsilon-zachłanna?
Z prawdopodobieństwem ε agent wybiera jednorodnie losową fazę (eksploracja), a z prawdopodobieństwem 1−ε wybiera fazę o najwyższej bieżącej wartości Q dla bieżącego stanu (eksploatacja). Czysta eksploatacja od początku pozwoliłaby agentowi utknąć w przeciętnej strategii odkrytej wcześnie; czysta eksploracja nigdy nie zbiegłaby do dobrej strategii. Eksploracja epsilon-zachłanna to najprostszy praktyczny kompromis, a suwak ε w tej symulacji pozwala bezpośrednio odczuć ten kompromis — wysokie ε sprawia, że agent jest wyraźnie bardziej chaotyczny, niskie ε sprawia, że osiada na tym, co już wie.
Czy agent Q-learning rzeczywiście zbiega do dobrej strategii?
Tak, z zastrzeżeniami. Udowodniono, że Q-learning zbiega do optymalnej funkcji wartości akcji dla procesu decyzyjnego Markowa, pod warunkiem że każda para stan-akcja jest odwiedzana nieskończenie wiele razy (co wymaga, by ε nigdy w pełni nie zanikło) a współczynnik uczenia jest odpowiednio zaplanowany. W tym uproszczonym, skończonym przebiegu treningowym zobaczysz, że średni czas oczekiwania na epizod ma tendencję spadkową z widocznym szumem — szumem, który nigdy w pełni nie znika, ponieważ napływ ruchu jest stochastyczny, a przestrzeń stanów jest na tyle mała, że pojedyncze pechowe epizody nadal się zdarzają nawet przy niemal optymalnej strategii.
Czym są SCOOT i SCATS?
SCOOT (Split, Cycle and Offset Optimisation Technique, opracowany w Wielkiej Brytanii) i SCATS (Sydney Coordinated Adaptive Traffic System, opracowany w Australii) to prawdziwe, szeroko wdrożone adaptacyjne systemy sygnalizacji świetlnej stosowane w setkach miast na całym świecie. Oba wykorzystują pętle indukcyjne lub kamery do pomiaru ruchu w czasie rzeczywistym i ciągłego dostosowywania podziałów sygnałów, długości cykli i przesunięć między skrzyżowaniami, zamiast polegać na stałym harmonogramie. Są to produkcyjne potomkowie tej samej podstawowej idei zademonstrowanej tutaj w miniaturze: niech zmierzone dane o kolejkach i przepływie napędzają czasowanie sygnalizacji zamiast ustalonego zegara.
Dlaczego stosuje się zdyskretyzowane przedziały długości kolejki zamiast dokładnych liczb?
Tabelaryczny Q-learning potrzebuje skończonej przestrzeni stanów — osobnego wiersza tabeli dla każdego odrębnego stanu. Używanie dokładnej liczby pojazdów w kolejce (0, 1, 2, 3, ... aż do kilkudziesięciu samochodów) na czterech dojazdach spowodowałoby ogromny wzrost rozmiaru tabeli i wymagałoby znacznie więcej doświadczenia, by wypełnić każdy wpis użytecznym oszacowaniem. Grupowanie kolejki każdego dojazdu na kilka poziomów (pusta / lekka / umiarkowana / ciężka) utrzymuje tabelę na tyle małą, by szybko się uczyć, jednocześnie zachowując informacje o ruchu istotne dla decyzji o wyborze fazy.
Jak nagroda odnosi się do rzeczywistego średniego czasu oczekiwania?
Nagroda dla każdego okna decyzyjnego to ujemna wartość całkowitych sekund kolejki zgromadzonych na wszystkich dojazdach podczas tego okna — bezpośredni wskaźnik zastępczy opóźnienia. Minimalizacja sumy ujemnych nagród (równoważnie, maksymalizacja skumulowanej nagrody) jest matematycznie równoważna minimalizacji całkowitych sekund opóźnienia pojazdów, co dokładnie śledzi wskaźnik „średniego oczekiwania”. Jest to ta sama wielkość, której inżynierowie ruchu używają do uzasadniania wdrożeń sygnalizacji adaptacyjnej w prawdziwym świecie.
Jak to się odnosi do innych symulacji na tej stronie?
To ten sam mechanizm uczenia ze wzmocnieniem, który jest używany w symulacji Uczenia ze wzmocnieniem w świecie siatki, zastosowany do ciągłej, stochastycznej domeny kolejkowej zamiast dyskretnej siatki. Łączy się to również z symulacjami Samochodu autonomicznego oraz Ramienia robota do chwytania i umieszczania, które wykorzystują inne podejścia do uczenia i sterowania, by rozwiązywać inne problemy decyzyjne w czasie rzeczywistym dla systemów autonomicznych.
Prawdziwy agent Q-learning trenuje na żywo w Twojej przeglądarce, sterując skrzyżowaniem czterech dróg na podstawie długości kolejek, konkurując bezpośrednio z bazowym sterowaniem o stałym czasie.
2D · HTML5 Canvas 2D · cel 60 FPS · działa w całości po stronie klienta, bez instalacji