问题:
self.q_eval4next: (100,2) ix=【0,1,0,1---0,1】(100,1)
我想取q_eval4next[:,idx]
#use_doubleQ 切片用!!!!
self.range_index = tf.placeholder(tf.int32,[None,],name='range_index') if self.use_doubleQ: f = tf.map_fn(lambda x: x, self.range_index) # or perhaps something more useful than identity
ix = tf.to_int32(tf.expand_dims(tf.argmax(self.q_eval4next,axis=1),-1))
tmp=tf.to_int32(tf.expand_dims(f,-1))
index_a = tf.concat([tmp,ix,],axis=1)
maxq = tf.gather_nd(self.q_next,index_a)
https://www.programcreek.com/python/example/90420/tensorflow.map_fn
https://*.com/questions/34987509/tensorflow-max-of-a-tensor-along-an-axis
https://zhuanlan.zhihu.com/p/39295071
https://zhuanlan.zhihu.com/p/45673869