diff --git a/inference.py b/inference.py index 34d43a0..be838de 100644 --- a/inference.py +++ b/inference.py @@ -644,7 +644,8 @@ class ParticleFilter(InferenceModule): """ self.particles = [] "*** YOUR CODE HERE ***" - raiseNotDefined() + for index in range(self.numParticles): + self.particles.append(self.legalPositions[index % len(self.legalPositions)]) "*** END YOUR CODE HERE ***" def getBeliefDistribution(self): @@ -656,7 +657,13 @@ class ParticleFilter(InferenceModule): This function should return a normalized distribution. """ "*** YOUR CODE HERE ***" - raiseNotDefined() + self.beliefs = DiscreteDistribution() + + for particle_position in self.particles: + self.beliefs[particle_position] += 1 + self.beliefs.normalize() + return self.beliefs + "*** END YOUR CODE HERE ***" ########### ########### ###########