Ejemplo n.º 1
0
 def getSeqO(seqX):
     cnt = len(seqX)
     nts = RandomNum.createNormal(0, 1, cnt)
     ret = np.zeros(cnt)
     for i in range(cnt):
         ret[i] = 0.05 * math.pow(seqX[i], 2) + nts[i]
     return ret
Ejemplo n.º 2
0
 def samplingSIS(self, num):
     weight_line = self.__getWeightLine()
     random_seqs = RandomNum.createRandom(num)
     n_pset = []
     for i in range(num):
         idx = self.__getIdxInLine(weight_line, random_seqs[i])
         n_pset.append(Particle(self.pset[idx].x, 1.0 / num))
     self.pset = n_pset
Ejemplo n.º 3
0
 def getSeqX(init_val, cnt):
     x = init_val
     vts = RandomNum.createNormal(0, 1, cnt)
     ret = np.zeros(cnt)
     for i in range(cnt):
         ret[i] = PFSim.getNextX(i, x, vts[i])
         x = ret[i]
     return ret
Ejemplo n.º 4
0
 def getMeasureData(self, map, radarPos):
     ret_pos = []
     seq_nor = RandomNum.createNormal(0, self.sd, self.lines)
     self.__traverseAllLines(self.__getLinePoint,
                             cur_pos=radarPos,
                             ret_pos=ret_pos,
                             map=map,
                             seq_nor=seq_nor)
     return ret_pos
Ejemplo n.º 5
0
 def samplingLVS(self, num):
     weight_line = self.__getWeightLine()
     r = RandomNum.createRandom(1) * 1.0 / num
     n_pset = []
     r_per = 1.0 / num
     for i in range(num):
         idx = self.__getIdxInLine(weight_line, r)
         n_pset.append(Particle(self.pset[idx].x, 1.0 / num))
         r += r_per
     self.pset = n_pset
Ejemplo n.º 6
0
 def predictSeq(self, t, vts):
     vts = RandomNum.createNormal(0, 1, len(self.pset))
     for i in range(len(self.pset)):
         self.pset[i].x = PFSim.getNextX(t, self.pset[i].x, vts[i])
Ejemplo n.º 7
0
 def genNormalRan(cnt, num):
     ret = []
     for i in range(cnt):
         ret.append(RandomNum.createNormal(0, 1, num))
     return ret
Ejemplo n.º 8
0
def genRandPos(x, y, w, h, num):
    ran1 = RandomNum.createRandom(num) * w + x
    ran2 = RandomNum.createRandom(num) * h + y
    return ran1, ran2