| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- # ----------
- # User Instructions:
- #
- # Implement the function optimum_policy2D below.
- #
- # You are given a car in grid with initial state
- # init. Your task is to compute and return the car's
- # optimal path to the position specified in goal;
- # the costs for each motion are as defined in cost.
- #
- # There are four motion directions: up, left, down, and right.
- # Increasing the index in this array corresponds to making a
- # a left turn, and decreasing the index corresponds to making a
- # right turn.
- forward = [[-1, 0], # go up
- [ 0, -1], # go left
- [ 1, 0], # go down
- [ 0, 1]] # go right
- forward_name = ['up', 'left', 'down', 'right']
- # action has 3 values: right turn, no turn, left turn
- action = [-1, 0, 1]
- action_name = ['R', '#', 'L']
- # EXAMPLE INPUTS:
- # grid format:
- # 0 = navigable space
- # 1 = unnavigable space
- grid = [[1, 1, 1, 0, 0, 0],
- [1, 1, 1, 0, 1, 0],
- [0, 0, 0, 0, 0, 0],
- [1, 1, 1, 0, 1, 1],
- [1, 1, 1, 0, 1, 1]]
- init = [4, 3, 0] # given in the form [row,col,direction]
- # direction = 0: up
- # 1: left
- # 2: down
- # 3: right
-
- goal = [2, 0] # given in the form [row,col]
- cost = [2, 1, 20] # cost has 3 values, corresponding to making
- # a right turn, no turn, and a left turn
- # EXAMPLE OUTPUT:
- # calling optimum_policy2D with the given parameters should return
- # [[' ', ' ', ' ', 'R', '#', 'R'],
- # [' ', ' ', ' ', '#', ' ', '#'],
- # ['*', '#', '#', '#', '#', 'R'],
- # [' ', ' ', ' ', '#', ' ', ' '],
- # [' ', ' ', ' ', '#', ' ', ' ']]
- # ----------
- # ----------------------------------------
- # modify code below
- # ----------------------------------------
- def optimum_policy2D(grid,init,goal,cost):
- return policy2D
|