Czym jest uczenie ze wzmocnieniem?
Uczenie ze wzmocnieniem (ang. reinforcement learning, RL) to paradygmat uczenia maszynowego, w którym agent uczy się podejmować decyzje przez interakcję ze środowiskiem, otrzymując nagrody za dobre działania i kary za złe. W odróżnieniu od uczenia nadzorowanego (z etykietami) i nienadzorowanego (bez etykiet), w RL agent sam odkrywa optymalne strategie przez próbowanie i uczenie się z konsekwencji.
Analogia: dziecko uczące się chodzić. Nikt nie podaje mu „instrukcji" (etykiet). Dziecko próbuje, upada (kara — ból), wstaje, próbuje inaczej, w końcu robi pierwszy krok (nagroda — postęp). Z czasem optymalizuje strategię chodzenia przez doświadczenie.
RL jest fundamentem takich przełomów jak AlphaGo (pokonanie mistrza świata w Go), AlphaStar (mistrzostwo w StarCraft II), ChatGPT (RLHF — dostrojenie modelu języka do preferencji ludzi) i roboty uczące się chodzić (Boston Dynamics, DeepMind).
Kluczowe pojęcia
Agent i Środowisko
- Agent — decydent, który obserwuje stan środowiska i podejmuje działania
- Środowisko (Environment) — świat, w którym agent operuje; reaguje na działania, zwracając nowy stan i nagrodę
- Stan (State, s) — opis aktualnej sytuacji (np. pozycja na szachownicy, pozycja robota)
- Działanie (Action, a) — decyzja agenta (np. ruch figury, skręt w lewo)
- Nagroda (Reward, r) — sygnał liczbowy od środowiska (pozytywny = dobra decyzja, negatywny = zła)
- Polityka (Policy, π) — strategia agenta: mapowanie stanów na działania. π(a|s) = prawdopodobieństwo wyboru działania a w stanie s
Cykl interakcji
Agent obserwuje stan s → wybiera działanie a wg polityki π → środowisko zwraca nowy stan s' i nagrodę r → agent aktualizuje politykę → powtarza.
Cel agenta: maksymalizacja skumulowanej nagrody (return) w czasie, nie jednorazowej nagrody. Agent musi balansować krótkoterminowe i długoterminowe korzyści.
Proces decyzyjny Markowa (MDP)
Formalizm matematyczny RL to Markov Decision Process (MDP), definiowany jako krotka (S, A, P, R, γ):
- S — zbiór stanów
- A — zbiór działań
- P(s'|s, a) — funkcja przejścia (prawdopodobieństwo przejścia do s' po wykonaniu a w s)
- R(s, a, s') — funkcja nagrody
- γ ∈ [0, 1] — współczynnik dyskontowania (discount factor)
Własność Markowa
Stan s zawiera wszystkie istotne informacje — przyszłość zależy tylko od obecnego stanu, nie od historii. P(s_{t+1}|s_t, a_t) = P(s_{t+1}|s_1, a_1, ..., s_t, a_t). To upraszcza wnioskowanie, ale wymaga odpowiedniego zdefiniowania stanu.
Return i dyskontowanie
Return (G_t) to skumulowana nagroda od czasu t: G_t = r_t + γ·r_{t+1} + γ²·r_{t+2} + ...
Współczynnik dyskontowania γ:
- γ = 0 → agent jest krótkowzroczny (liczy się tylko natychmiastowa nagroda)
- γ = 1 → agent jest dalekowzroczny (wszystkie przyszłe nagrody równie ważne)
- γ = 0.99 → typowa wartość; nagrody dalsze w przyszłości mają malejącą wagę
Funkcje wartości
Funkcja wartości stanu V(s)
V^π(s) = E[G_t | s_t = s, π] — oczekiwany return startując z stanu s i podążając za polityką π. „Jak dobre jest bycie w tym stanie?"
Funkcja wartości działania Q(s, a)
Q^π(s, a) = E[G_t | s_t = s, a_t = a, π] — oczekiwany return po wykonaniu działania a w stanie s i kontynuowaniu wg π. „Jak dobre jest wykonanie tego działania w tym stanie?"
Optymalna polityka
Optymalna polityka π* maksymalizuje V(s) dla każdego stanu. Optymalne funkcje wartości:
- V(s) = max_a Q(s, a)
- π(s) = argmax_a Q(s, a)
Metody tabelaryczne
Q-learning
Q-learning (Watkins, 1989) to algorytm model-free, off-policy uczący się optymalnej funkcji Q bez znajomości modelu środowiska:
Q(s, a) ← Q(s, a) + α · [r + γ · max_{a'} Q(s', a') - Q(s, a)]
Gdzie α to learning rate. Agent aktualizuje Q na podstawie różnicy TD (Temporal Difference): oczekiwanej nagrody vs. faktycznie otrzymanej.
Q-learning jest off-policy — uczy się optymalnej polityki niezależnie od polityki eksploracji (agent może eksplorować losowo, a jednocześnie uczyć się optymalnie).
Więcej szczegółów w artykule o Q-learningu.
SARSA
SARSA (State-Action-Reward-State-Action) to wariant on-policy:
Q(s, a) ← Q(s, a) + α · [r + γ · Q(s', a') - Q(s, a)]
Różnica: SARSA używa Q(s', a') z faktycznie wybranego następnego działania, nie max. Jest bardziej konserwatywny (unika ryzykownych ścieżek).
Eksploracja vs. Eksploatacja
Fundamentalny dylemat RL: czy eksploatować (wybierać działanie z najwyższym Q — najlepsze znane) czy eksplorować (próbować nowych działań — szansa na odkrycie lepszego)?
ε-greedy: Z prawdopodobieństwem 1-ε wybierz najlepsze działanie, z prawdopodobieństwem ε — losowe. Typowo ε maleje w trakcie treningu (z 1.0 do 0.01).
Boltzmann exploration: Prawdopodobieństwo działania a proporcjonalne do exp(Q(s,a)/τ), gdzie τ (temperatura) kontroluje losowość.
UCB (Upper Confidence Bound): Wybieraj działanie z najwyższą górną granicą przedziału ufności — automatycznie faworyzuje mało zbadane działania.
Deep Reinforcement Learning
Problem tablicowy
Q-learning z tablicą działa w małych przestrzeniach (np. gra planszowa z tysiącami stanów). W realnych problemach (gra Atari: ~10⁹ pikseli, Go: 10^{170} stanów, robotyka: ciągłe stany) tablica jest niemożliwa.
DQN (Deep Q-Network)
DQN (Mnih et al., DeepMind, 2013/2015) zastępuje tablicę Q siecią neuronową: Q(s, a; θ) ≈ Q*(s, a). Sieć wejście: stan (piksele gry Atari), wyjście: Q dla każdego działania.
Kluczowe innowacje DQN:
- Experience Replay — przechowywanie przejść (s, a, r, s') w buforze; losowe próbkowanie do treningu (dekorelacja, stabilność)
- Target Network — kopia sieci aktualizowana co N kroków; stabilizuje cel optymalizacji
DQN nauczył się grać w 49 gier Atari na poziomie ludzkim — z samych pikseli, bez wiedzy o zasadach gry.
Policy Gradient Methods
Zamiast aproksymować Q, bezpośrednio optymalizuj politykę π(a|s; θ):
REINFORCE — najprostszy algorytm policy gradient. Gradient: ∇J(θ) = E[∇log π(a|s; θ) · G_t]. Intuicja: zwiększ prawdopodobieństwo działań, które dały wysokie nagrody.
Problem: Wysoka wariancja gradientu (G_t jest losowe). Rozwiązanie: baseline — odejmij V(s) od G_t, używając Advantage A(s,a) = Q(s,a) - V(s).
Actor-Critic
Łączy policy gradient z funkcją wartości:
- Actor — sieć polityki π(a|s; θ) — wybiera działania
- Critic — sieć wartości V(s; w) — ocenia jakość stanów
Actor optymalizuje politykę, Critic dostarcza baseline redukujący wariancję.
PPO (Proximal Policy Optimization)
PPO (Schulman et al., OpenAI, 2017) to najczęściej stosowany algorytm deep RL:
- Ogranicza wielkość aktualizacji polityki (clipped objective), zapobiegając katastrofalnym zmianom
- Stabilniejszy i łatwiejszy do tuningu niż alternatywy (TRPO, SAC)
- Używany w RLHF (ChatGPT, Claude), robotyce, grach
SAC (Soft Actor-Critic)
SAC (Haarnoja et al., 2018) dodaje entropię do celu optymalizacji: agent dąży do maksymalizacji nagrody i losowości polityki. Efekt: lepsza eksploracja i odporność na lokalne minima. Popularny w robotyce.
Przełomowe zastosowania
AlphaGo i AlphaZero
AlphaGo (DeepMind, 2016) pokonał Lee Sedola, mistrza świata w Go (gra o złożoności ~10^{170} stanów). Łączył MCTS (Monte Carlo Tree Search) z deep RL i uczeniem nadzorowanym z gier ludzkich.
AlphaZero (2017) — tabula rasa: żadnych ludzkich gier. Uczył się tylko przez grę z samym sobą (self-play). W 24 godziny osiągnął poziom nadludzki w Go, szachach i shogi.
AlphaStar (StarCraft II)
AlphaStar osiągnął poziom Grand Master w StarCraft II — strategii czasu rzeczywistego z niepełną informacją, tysiącami możliwych działań na sekundę i planowaniem długoterminowym.
Robotyka
RL uczy roboty: chodzić (Spot, Atlas), manipulować obiektami (grasping), nawigować autonomicznie. Wyzwanie: sim-to-real gap — polityka wyuczona w symulacji nie zawsze działa w rzeczywistości. Domain randomization i sim-to-real transfer łagodzą ten problem.
RLHF (Reinforcement Learning from Human Feedback)
RLHF dostosowuje modele językowe (GPT, Claude) do preferencji ludzi. Proces:
- Fine-tuning LLM na demonstracjach ludzi
- Trening reward model z porównań (ludzie oceniają, która odpowiedź jest lepsza)
- Optymalizacja polityki LLM za pomocą PPO z reward modelu
RLHF sprawił, że ChatGPT stał się „pomocny, nieszkodliwy i szczery" — zamiast surowego generowania tekstu.
Model-free vs. Model-based RL
Model-free
Agent nie zna modelu środowiska (P, R) — uczy się bezpośrednio z interakcji. Q-learning, DQN, PPO, SAC to metody model-free. Prostsze, ale wymagają dużo interakcji ze środowiskiem.
Model-based
Agent uczy się modelu środowiska (aproksymacji P i R) i planuje za pomocą symulacji. Efektywniejsze próbkowo (mniej interakcji), ale model może być niedokładny. Przykłady: MuZero (DeepMind), World Models, Dreamer.
MuZero (2019) nie zna nawet zasad gry — uczy się modelu dynamiki, nagrody i wartości jednocześnie. Osiąga poziom AlphaZero w Go, szachach i grach Atari.
Multi-Agent RL
Wielu agentów jednocześnie w tym samym środowisku:
- Współpraca — drużyna robotów, rój dronów
- Rywalizacja — gry strategiczne, negocjacje
- Mieszane — piłka nożna robotów (współpraca w drużynie + rywalizacja z przeciwnikiem)
Wyzwania: niestacjonarność (zachowanie innych agentów zmienia środowisko), credit assignment (kto przyczynił się do sukcesu?).
Wyzwania RL
- Efektywność próbkowa — DQN potrzebuje milionów klatek gry. Roboty nie mogą tak szybko próbować w świecie rzeczywistym.
- Sparse rewards — nagroda tylko na koniec (wygrana/przegrana gry). Agent nie wie, co robił dobrze. Reward shaping i intrinsic motivation pomagają.
- Sim-to-real gap — polityka z symulacji nie działa w rzeczywistości. Domain randomization i transfer learning.
- Safety — agent optymalizujący nagrodę może odkryć niebezpieczne hacki (reward hacking). Constrained RL i safe exploration.
- Reprodukowalność — wyniki RL są wrażliwe na seedy, hiperparametry i implementację.
Podsumowanie
Uczenie ze wzmocnieniem to paradygmat AI, w którym agent odkrywa optymalne strategie przez interakcję ze środowiskiem. Od tabelarycznego Q-learninga po głębokie metody DQN i PPO, RL umożliwił przełomy nieosiągalne innymi metodami: AlphaGo, ChatGPT, autonomiczne roboty. Kluczowe wyzwania — efektywność próbkowa, safety i sim-to-real transfer — definiują kierunki aktywnych badań.