本文整理汇总了Python中world.World.nextPreyStates方法的典型用法代码示例。如果您正苦于以下问题:Python World.nextPreyStates方法的具体用法?Python World.nextPreyStates怎么用?Python World.nextPreyStates使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类world.World
的用法示例。
在下文中一共展示了World.nextPreyStates方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: __init__
# 需要导入模块: from world import World [as 别名]
# 或者: from world.World import nextPreyStates [as 别名]
def __init__(self, policy):
# world object, (starting state is trivial)
world = World((0,0),(1,1))
value = {}
for state in world.allStates():
value[state] = 0
discount = 0.9
delta = 1
while abs(delta) > 0.00001:
delta = 0
for state in world.allStates():
world.setState(state)
old = value[state]
# we can set the minimum to 0 since we know every value will be 0 or positive
curMax = 0
for move in world.moveList():
if world.posAfterMove(move) == (0,0):
probSum = 10
else:
probSum = 0
for nextState,prob in world.nextPreyStates():
probSum += prob*discount*value[nextState]
curMax = max(curMax,probSum)
value[state] = curMax
delta = max(delta,abs(old - curMax))
value[(0,0)] = 10
self.value = value
self.actionList = []
self.allList = []
self.bottomPolicy = policy
self.discount = discount
示例2: isOptimal
# 需要导入模块: from world import World [as 别名]
# 或者: from world.World import nextPreyStates [as 别名]
def isOptimal(self,state, move):
world = World((0,0),(1,1))
ourMove = 0
bestMove = 0
for nmove in world.moveList():
world.setState(state)
world.move(nmove)
if world.position == (0,0):
probSum = 10
else:
probSum = 0
for nextState,prob in world.nextPreyStates():
probSum += prob*self.discount*self.value[nextState]
bestMove = max(bestMove,probSum)
if nmove == move:
ourMove = probSum
return ourMove/bestMove > 0.97