This commit is contained in:
2024-07-02 02:36:35 +00:00
parent 85904d3d8e
commit 08c0ba9641

View File

@ -515,11 +515,25 @@ def mapping(problem, agent) -> Generator:
outer_wall_sent.append(PropSymbolExpr(wall_str, x, y))
KB.append(conjoin(outer_wall_sent))
"*** BEGIN YOUR CODE HERE ***"
util.raiseNotDefined()
KB.append(PropSymbolExpr(pacman_str, pac_x_0, pac_y_0, time=0))
for t in range(agent.num_timesteps):
"*** END YOUR CODE HERE ***"
pacphysics = pacphysicsAxioms(t, all_coords, non_outer_wall_coords, known_map, sensorModel=sensorAxioms,successorAxioms=allLegalSuccessorAxioms)
KB.append(pacphysics)
action_t = agent.actions[t]
KB.append(logic.PropSymbolExpr(action_t, time=t))
percepts=agent.getPercepts()
percept_rules=fourBitPerceptRules(t,percepts)
KB.append(percept_rules)
for x, y in non_outer_wall_coords:
# Check if (x, y) is a wall
if entails(conjoin(KB), PropSymbolExpr(wall_str, x, y)):
known_map[x][y] = 1
KB.append(PropSymbolExpr(wall_str, x, y))
elif entails(conjoin(KB), ~PropSymbolExpr(wall_str, x, y)):
known_map[x][y] = 0
KB.append(~PropSymbolExpr(wall_str, x, y))
agent.moveToNextState(action_t)
yield known_map
#______________________________________________________________________________