首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >强化学习-动作数

强化学习-动作数
EN

Stack Overflow用户
提问于 2020-03-14 19:20:51
回答 1查看 56关注 0票数 1

读取https://towardsdatascience.com/reinforcement-learning-temporal-difference-sarsa-q-learning-expected-sarsa-on-python-9fecfda7467e epsilon_greedy的定义如下:

代码语言:javascript
复制
def epsilon_greedy(Q, epsilon, n_actions, s, train=False):
    """
    @param Q Q values state x action -> value
    @param epsilon for exploration
    @param s number of states
    @param train if true then no random actions selected
    """
    if train or np.random.rand() < epsilon:
        action = np.argmax(Q[s, :])
    else:
        action = np.random.randint(0, n_actions)
    return action

参数n_actions是否为座席可用操作的数量?因此,如果一个智能体正在学习踢足球,并且可用的动作是{kick,don't kick} n_actions =2

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-14 20:18:53

是的,你是对的。通常,您定义一个字典,其中包含整数和您的代理可以执行的每个操作之间的映射。您可以看到,在函数中,当您没有选择最优的动作索引时,n_actions恰好用于对随机动作索引进行采样。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60682153

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档