【问题标题】:Numpy - How to get an array of the pattern gamma^t for some 0-t?Numpy - 如何获得一些 0-t 的模式 gamma^t 数组?
【发布时间】:2022-11-17 00:39:22
【问题描述】:

我正在创建一个基本的网格世界 RL 问题,我需要计算某些给定情节的回报。我目前有奖励数组,我想按元素将其与以下形式的列表相乘:

[gamma**0, gamma**1, gamma**2, ....]

为了得到:

[r_0*gamma**0, r_1*gamma**1, r_2*gamma**2, ....]

然后使用 np.sum() 获得全部回报。

我怎样才能完成第一步?我尝试使用 Logspace,但它并不是我想要的(或者我做错了)。

【问题讨论】:

    标签: python arrays numpy reinforcement-learning


    【解决方案1】:

    如果示例 if like this for reward array and gamma is some value:

    n = 20    
    reward = np.random.randint(0, 10, n)
    gamma = 2
    
    np.sum(reward * (gamma ** np.arange(n)))
    

    【讨论】:

    • 我不认为你可以把数组作为指数!这很有道理
    • 好的,不确定那是否是您要问的,那么您可以接受作为答案
    猜你喜欢
    • 1970-01-01
    • 2012-05-06
    • 2018-11-20
    • 1970-01-01
    • 2011-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多