示例#1
0
文件: initBP.py 项目: JinlongYANG/sp
def init_based_on_last_frame(this, lastResult):
    this.schedule, this.Q = init_schedule(this, this.A, this.nEdges)
    # Initialize the node data (particles, likelihood and max marginal value)
    this.b = [None]*this.nNodes
    this.new_b = [None]*this.nNodes

    for i in this.nodeIdx:
       #print ' ###*** nParticles ' +str(i) + ': ' + str(this.nParticles[i])
       this.b[i] = {'x':lastResult.new_b[i]['x'][:,:this.nParticles[i]], 'L':np.zeros((this.nParticles[i])), 'value':np.zeros((this.nParticles[i]))}
       #print ' *** x: ' + str(this.b[i]['x'].shape)
       #print ' *** L: ' + str(this.b[i]['L'].shape)
       #print ' *** v: ' + str(this.b[i]['value'].shape)
       this.new_b[i] = {'x':lastResult.new_b[i]['x'][:,:this.nParticles[i]], 'L':np.zeros((this.nParticles[i])), 'value':np.zeros((this.nParticles[i]))}

    # Particles initialization
    init_particles_based_on_last_frame(this, lastResult)

    # Beliefs initialization
    for i in this.nodeIdx:
       this.b[i]['L'] = particles.compute_likelihood(this, i, this.b[i]['x'])
       this.b[i]['value'] = this.b[i]['L']

    # Messages initialization
    init_messages(this)

    return
示例#2
0
文件: initBP.py 项目: JinlongYANG/sp
def init(this):

    this.schedule, this.Q = init_schedule(this, this.A, this.nEdges)
    # Initialize the node data (particles, likelihood and max marginal value)
    this.b = [None]*this.nNodes
    this.new_b = [None]*this.nNodes

    for i in this.nodeIdx:
       this.b[i] = {'x':np.zeros((this.nodeDim[i],this.nParticles[i])), 'L':np.zeros((this.nParticles[i])), 'value':np.zeros((this.nParticles[i]))}
       this.new_b[i] = {'x':np.zeros((this.nodeDim[i],this.nParticles[i])), 'L':np.zeros((this.nParticles[i])), 'value':np.zeros((this.nParticles[i]))}

    # Particles initialization
    init_particles(this)

    # Beliefs initialization
    for i in this.nodeIdx:
       this.b[i]['L'] = particles.compute_likelihood(this, i, this.b[i]['x'])
       this.b[i]['value'] = this.b[i]['L']

    # Messages initialization
    init_messages(this)

    return