diff --git a/tracking/inference.py b/tracking/inference.py index 2ec727d..0c3ad9f 100644 --- a/tracking/inference.py +++ b/tracking/inference.py @@ -591,7 +591,8 @@ class ExactInference(InferenceModule): position is known. """ "*** YOUR CODE HERE ***" - raiseNotDefined() + for pos in self.allPositions: + self.beliefs[pos] *= self.getObservationProb(observation, gameState.getPacmanPosition(), pos, self.getJailPosition()) "*** END YOUR CODE HERE ***" self.beliefs.normalize() @@ -609,7 +610,13 @@ class ExactInference(InferenceModule): current position is known. """ "*** YOUR CODE HERE ***" - raiseNotDefined() + next_tick_beliefs=DiscreteDistribution() + for pos in self.allPositions: + newPosDist = self.getPositionDistribution(gameState, pos) + for newPos in newPosDist: + next_tick_beliefs[newPos] += self.beliefs[pos] * newPosDist[newPos] + self.beliefs=next_tick_beliefs + self.beliefs.normalize() "*** END YOUR CODE HERE ***" def getBeliefDistribution(self):