Esempio n. 1
0
 def phi(self, s, a, sparse=False, format="csr"):
     if sparse:
         cols = np.array([0] * (self.nrbf + 1))
         rows = np.array([a * self.nrbf + i for i in range(self.nrbf)] + [self.feature_cnt - 1])
         data = np.hstack([self.rfunc(s),[1.0]])
         sparse_features = sp_create_data(data,rows,cols,self.feature_cnt,1,format)
         return sparse_features
     else:
         features = np.zeros(self.feature_cnt)
         features[a * self.nrbf : a * self.nrbf + self.nrbf] = self.rfunc(s)
         features[-1] = 1.0
         return features
Esempio n. 2
0
 def phi(self, s, a, sparse=False, format="csr"):
     if sparse:
         cols = np.array([0] * (self.nrbf + 1))
         rows = np.array([a * self.nrbf + i for i in range(self.nrbf)] + [self.feature_cnt - 1])
         data = np.hstack([self.rfunc(s),[1.0]])
         sparse_features = sp_create_data(data,rows,cols,self.feature_cnt,1,format)
         return sparse_features
     else:
         features = np.zeros(self.feature_cnt)
         features[a * self.nrbf : a * self.nrbf + self.nrbf] = self.rfunc(s)
         features[-1] = 1.0
         return features
Esempio n. 3
0
 def phi(self, s, a, sparse=False, format="csr"):
     if sparse:
         cols = np.array([0] * (self.nrbf + 1))
         rows = np.array([a * self.nrbf + i for i in range(self.nrbf)] + [self.feature_cnt - 1])
         data = np.array(self.rfunc(s) + [1.0])
         sparse_features = sp_create_data(data,rows,cols,self.feature_cnt,1,format)
         return sparse_features
     else:
         features = np.zeros(self.feature_cnt)
         for i,f in enumerate(self.rfunc(s)):
             features[a * self.nrbf + i] = f
         features[-1] = 1.0
         return features
Esempio n. 4
0
    def phi(self, s, a, sparse=False, format="csr"):

        if sparse:
            cols = np.array([0,0])
            rows = np.array([s + (a * self.nstates), self.feature_cnt - 1])
            data = np.array([1.0,1.0])
            sparse_features = sp_create_data(data,rows,cols,self.feature_cnt,1,format)
            return sparse_features
        else:
            features = np.zeros(self.feature_cnt)
            features[s + (a * self.nstates)] = 1.0
            features[-1] = 1.0
            return features
Esempio n. 5
0
 def phi(self, s, a, sparse=False, format="csr"):
     if sparse:
         cols = np.array([0] * (self.nrbf + 1))
         rows = np.array([a * self.nrbf + i for i in range(self.nrbf)] + [self.feature_cnt - 1])
         data = np.array(self.rfunc(s) + [1.0])
         sparse_features = sp_create_data(data,rows,cols,self.feature_cnt,1,format)
         return sparse_features
     else:
         features = np.zeros(self.feature_cnt)
         for i,f in enumerate(self.rfunc(s)):
             features[a * self.nrbf + i] = f
         features[-1] = 1.0
         return features
Esempio n. 6
0
    def phi(self, s, a, sparse=False, format="csr"):

        if sparse:
            cols = np.array([0,0])
            rows = np.array([s + (a * self.nstates), self.feature_cnt - 1])
            data = np.array([1.0,1.0])
            sparse_features = sp_create_data(data,rows,cols,self.feature_cnt,1,format)
            return sparse_features
        else:
            features = np.zeros(self.feature_cnt)
            features[s + (a * self.nstates)] = 1.0
            features[-1] = 1.0
            return features
Esempio n. 7
0
    def phi(self, s, a, sparse=False, format="csr"):
        obs = self.observe(s) # 100 pca weights

        if not sparse:
            features = np.zeros(self.nfeatures())
            features[-1] = 1.0
            indx = self.tile(s,a)
            features[indx] = 1.0
            return features
        else:
            cols = np.array([0] * self.nobs + [0])
            rows = np.array(self.tile(s,a) + [self.nfeatures()  - 1])
            data = np.array([1.0] * self.nobs + [1.0])
            sparse_features = sp_create_data(data, rows, cols, self.nfeatures(),1,format)
            return sparse_features
Esempio n. 8
0
    def phi(self, s, a, sparse=False, format="csr"):
        obs = self.observe(s) # 100 pca weights

        if not sparse:
            features = np.zeros(self.nfeatures())
            features[-1] = 1.0
            indx = self.tile(s,a)
            features[indx] = 1.0
            return features
        else:
            cols = np.array([0] * self.nobs + [0])
            rows = np.array(self.tile(s,a) + [self.nfeatures()  - 1])
            data = np.array([1.0] * self.nobs + [1.0])
            sparse_features = sp_create_data(data, rows, cols, self.nfeatures(),1,format)
            return sparse_features