Files
PathPlanning/Stochastic Shortest Path/value_iteration.py
T
zhm-real a0e6fc92a5 update
2020-06-18 17:08:10 -07:00

44 lines
1.2 KiB
Python

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
@author: huiming zhou
"""
import env
import tools
import motion_model
import numpy as np
import copy
class Value_iteration:
def __init__(self, x_start, x_goal):
self.u_set = motion_model.motions # feasible input set
self.xI, self.xG = x_start, x_goal
self.T = 500
self.gamma = 0.9
self.obs = env.obs_map() # position of obstacles
self.lose = env.lose_map()
self.name = "value_iteration, T=" + str(self.T) + ", gamma=" + str(self.gamma)
env.show_map(self.xI, self.xG, self.obs, self.lose, self.name)
def iteration(self):
value_table = {}
policy = {}
for i in range(env.x_range):
for j in range(env.y_range):
if (i, j) not in self.obs:
value_table[(i, j)] = 0
for k in range(self.T):
value_table_update = copy.deepcopy(value_table)
for key in value_table:
if __name__ == '__main__':
x_Start = (5, 5) # Starting node
x_Goal = (49, 5) # Goal node
VI = Value_iteration(x_Start, x_Goal)