Q-learning
En model-fri forstærkningslæringsalgoritme, der lærer en optimal politik ved at estimere den forventede fremtidige belønning for hver handling i en given tilstand.
Kort fortalt
Q-learning er en metode, hvor en agent lærer at træffe de bedste beslutninger ved at prøve sig frem og huske, hvilke handlinger der gav mest belønning på lang sigt.
- Kategori
- teknik
- Niveau
- øvet
- Udtale
- /ˈkjuː ˌlɜːrnɪŋ/
Betydninger
1- 1
En algoritme inden for forstærkningslæring, der iterativt opdaterer en Q-funktion for at estimere den optimale handlingsværdi, baseret på Bellman-ligningen for optimalitet.
- Agenten anvender Q-learning til at lære at navigere i et gitter ved at opdatere sine Q-værdier efter hvert skridt.
- I Q-learning vælges handlinger ofte med en epsilon-greedy strategi for at balancere udforskning og udnyttelse.
Hvornår bruges det
Q-learning bruges i forstærkningslæring til at træne agenter i miljøer med diskrete tilstands- og handlingsrum, fx spil, robotstyring og ressourceallokering. Det kræver ikke en model af miljøet og kan anvendes online.
Formel
Q(s,a) ← Q(s,a) + α · (r + γ · maxₐ' Q(s',a') - Q(s,a))Kodeeksempel
def q_learning_update(Q, state, action, reward, next_state, alpha, gamma):
best_next = max(Q[next_state]) if Q[next_state] else 0
td_target = reward + gamma * best_next
Q[state][action] += alpha * (td_target - Q[state][action])Simpel Python-implementering af Q-learning opdateringsreglen. Q er en ordbog med tilstande som nøgler og lister over Q-værdier for hver handling.
Oprindelse
Termen 'Q' står for 'quality' (kvalitet), da Q-værdien angiver den forventede kvalitet af at vælge en given handling i en given tilstand. Algoritmen blev introduceret af Chris Watkins i 1989.
Afledte ord
2Kilder
2- Watkins & Dayan, 1992: Q-Learning
- Mnih et al., 2013: Playing Atari with Deep Reinforcement Learning