PYTHON Tutorial
Förstärkningsinlärning är en typ av maskininlärning där en agent lär sig att välja de åtgärder som maximerar dess belöning. Den används i en mängd olika tillämpningar, såsom robotstyrning, spel och optimering.
import gym
import numpy as np
env = gym.make('CartPole-v1')
# Hyperparameters
learning_rate = 0.1
gamma = 0.95
# Q-Learning
Q = np.zeros((env.observation_space.n, env.action_space.n))
for episode in range(1000):
done = False
observation = env.reset()
while not done:
# Välj åtgärd
action = np.argmax(Q[observation, :])
# Vidta åtgärd
next_observation, reward, done, info = env.step(action)
# Uppdatera Q-värdet
Q[observation, action] += learning_rate * (reward + gamma * np.max(Q[next_observation, :]) - Q[observation, action])
# Uppdatera observation
observation = next_observation
# Utvärdera policy
for episode in range(100):
observation = env.reset()
done = False
while not done:
env.render()
# Välj åtgärd
action = np.argmax(Q[observation, :])
# Vidta åtgärd
next_observation, reward, done, info = env.step(action)
# Uppdatera observation
observation = next_observation