Path: blob/master/experiments/histogram.py
1700 views
# -*- coding: utf-8 -*-1"""2Created on Tue Apr 22 10:43:38 201434@author: rlabbe5"""67p = [.2, .2, .2, .2, .2]8world = ['green', 'red', 'red', 'green', 'green']9measurements = ['red', 'green']1011pHit = 0.612pMiss = 0.21314pOvershoot = 0.115pUndershoot = 0.116pExact = 0.81718def normalize (p):19s = sum(p)20for i in range (len(p)):21p[i] = p[i] / s2223def sense(p, Z):24q= []25for i in range (len(p)):26hit = (world[i] ==Z)27q.append(p[i] * (pHit*hit + pMiss*(1-hit)))28normalize(q)29return q303132def move(p, U):33q = []34for i in range(len(p)):35pexact = p[(i-U) % len(p)] * pExact36pover = p[(i-U-1) % len(p)] * pOvershoot37punder = p[(i-U+1) % len(p)] * pUndershoot38q.append (pexact + pover + punder)3940normalize(q)41return q4243if __name__ == "__main__":4445p = sense(p, 'red')46print p47pause()48for z in measurements:49p = sense (p, z)50p = move (p, 1)51print p5253545556575859