所以这就是问题......
我有一个值向量,比如说:
x = [0,4,2,0]
与每个x对应的可能值范围:
0: 0-9
4: 0-9
2: 0-5
0: 0-1
这意味着状态空间为:10*10*6*2
我需要一个函数,计算状态,在特定向量的状态空间内提供一个唯一的整数值。例如:
calc_state(x) -> (10*6*2)*0 + (6*2)*4 + (2)*2 + (1)*0
我的问题是:这是正确的公式吗?还是我工作得太小了?我觉得应该有另外10个因素...但是当我写出来时,我感到更有信心它是正确的...
答案 0 :(得分:1)
是。 strides属性可以帮助编写call_state(x)
:
space=arange(10*10*6*2).reshape(10,10,6,2)
def call_state(x): return (x*space.strides).sum()
答案 1 :(得分:0)
10*10*6*2 - 1
。