Я делаю проект на OpenAIgym Blackjack, но правило кажется немного странным. У нас есть кортеж:
- Текущая сумма игрока 0,1, ..., 31.
- Дилер лицевой стороной вверх карты 1, ..., 10.
- Есть ли у игрока полезный туз (нет = 0, да = 1).
Агент выполняет два действия:
Награды:
- + 1: победа
- -1: проигрыш
0: рисунок
for i_episode in range(3):
state = env.reset()
while True:
print(state)
action = env.action_space.sample()
print(action)
state, reward, done, info = env.step(action)
if done:
print('End game! Reward: ', reward)
print('You won :)\n') if reward > 0 else print('You lost :(\n')
break
Вот что происходит, когда мы запускаем игру:
(18, 7, False)
0
End game! Reward: 0.0
You lost :(
(19, 7, False)
0
End game! Reward: 1.0
You won :)
(18, 8, False)
1
End game! Reward: -1
You lost :(
Я не очень понимаю, как для первой игры; у нас сумма 18, у дилера открытая карта - 7, и мы проигрываем? Не имеет смысла, мы не знаем, какова общая сумма дилера - она должна быть больше 18 - но мы просто не знаем