本文整理汇总了Python中robot.Robot.reset方法的典型用法代码示例。如果您正苦于以下问题:Python Robot.reset方法的具体用法?Python Robot.reset怎么用?Python Robot.reset使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类robot.Robot
的用法示例。
在下文中一共展示了Robot.reset方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_rest_name
# 需要导入模块: from robot import Robot [as 别名]
# 或者: from robot.Robot import reset [as 别名]
def test_rest_name(self):
robot = Robot()
name = robot.name
robot.reset()
name2 = robot.name
self.assertNotEqual(name, name2)
self.assertRegexpMatches(name2, self.name_re)
示例2: test_rest_name
# 需要导入模块: from robot import Robot [as 别名]
# 或者: from robot.Robot import reset [as 别名]
def test_rest_name(self):
# Set a seed
seed = "Totally random."
# Initialize RNG using the seed
random.seed(seed)
# Call the generator
robot = Robot()
name = robot.name
# Reinitialize RNG using seed
random.seed(seed)
# Call the generator again
robot.reset()
name2 = robot.name
self.assertNotEqual(name, name2)
self.assertRegexpMatches(name2, self.name_re)
示例3: __init__
# 需要导入模块: from robot import Robot [as 别名]
# 或者: from robot.Robot import reset [as 别名]
class MapStraight:
def __init__(self, initRobotPosition=[2.5, -6.5], boundaries=[[-3, 7],[-7, 7]], redPenalty = 0, rewardStrategy = 'Differential', actionStrategy = 'Absolute',verbose = False):
vrep.simxFinish(-1)
clientID=vrep.simxStart('127.0.0.1',19999,True,True,5000,2)
if clientID==-1:
raise Exception('Could not connect to API server')
errorCodeCar,car = vrep.simxGetObjectHandle(clientID,'nakedAckermannSteeringCar',vrep.simx_opmode_oneshot_wait)
errorCodeFrontRight,fr = vrep.simxGetObjectHandle(clientID,'Cylinder7',vrep.simx_opmode_oneshot_wait)
errorCodeBackRight,br = vrep.simxGetObjectHandle(clientID,'Cylinder3',vrep.simx_opmode_oneshot_wait)
if (errorCodeCar!=0):
raise Exception('Could not get car handle')
returnCode=vrep.simxSetObjectPosition(clientID,car,-1,[initRobotPosition[0],initRobotPosition[1],0.1],vrep.simx_opmode_oneshot_wait)
returnCode,position=vrep.simxGetObjectPosition(clientID,car,-1,vrep.simx_opmode_oneshot_wait)
returnCode,positionFR=vrep.simxGetObjectPosition(clientID,fr,-1,vrep.simx_opmode_oneshot_wait)
returnCode,positionBR=vrep.simxGetObjectPosition(clientID,br,-1,vrep.simx_opmode_oneshot_wait)
theta=math.atan2(positionFR[1]-positionBR[1],positionFR[0]-positionBR[0])
errorCodeTarget,target = vrep.simxGetObjectHandle(clientID,'Target',vrep.simx_opmode_oneshot_wait)
if (errorCodeTarget!=0):
raise Exception('Could not get target handle')
returnCode,targetPosition=vrep.simxGetObjectPosition(clientID,target,-1,vrep.simx_opmode_oneshot_wait)
if (returnCode!=0):
raise Exception('Could not get target position')
self.verbose = verbose
self.car = car
self.fr = fr
self.br = br
self.clientID = clientID
self.boundaries = boundaries
self.redBoundaries=[1.5,2.5]
self.robot = Robot(clientID)
self.target = [targetPosition[0],targetPosition[1]]
#self.initState = [position[0],position[1],theta,1*(self.redBoundaries[0]>position[0] or position[0]>self.redBoundaries[1]),0,0]
self.initState = [position[0],position[1],theta]
self.state = self.initState
self.wininngRadius = 0.5
self.redPenalty = redPenalty
self.rewardStrategy = rewardStrategy
self.actionStrategy = actionStrategy
def start(self):
returnCode = vrep.simxStartSimulation(self.clientID,vrep.simx_opmode_oneshot)
if (returnCode>1):
print "returnCode: ", returnCode
raise Exception('Could not start')
returnCode=vrep.simxSynchronous(self.clientID,True)
for k in range(10): #Run to steps to step through initial "drop"
returncode = vrep.simxSynchronousTrigger(self.clientID)
if (returnCode!=0):
raise Exception('Could not set synchronous mode')
def stop(self):
returnCode = vrep.simxStopSimulation(self.clientID,vrep.simx_opmode_oneshot)
self.robot.reset()
if (returnCode>1):
print "returnCode: ", returnCode
raise Exception('Could not stop')
def getState(self):
returnCode,position=vrep.simxGetObjectPosition(self.clientID,self.car,-1,vrep.simx_opmode_oneshot_wait)
returnCode,positionFR=vrep.simxGetObjectPosition(self.clientID,self.fr,-1,vrep.simx_opmode_oneshot_wait)
returnCode,positionBR=vrep.simxGetObjectPosition(self.clientID,self.br,-1,vrep.simx_opmode_oneshot_wait)
theta=math.atan2(positionFR[1]-positionBR[1],positionFR[0]-positionBR[0])
#return [position[0],position[1],theta,1*(self.redBoundaries[0]>position[0] or position[0]>self.redBoundaries[1]),self.robot.desiredWheelRotSpeed,self.robot.desiredSteeringAngle]
return [position[0],position[1],theta]
def calculateRewardSingle(self):
if self.state[0]<self.boundaries[0][0] or self.state[0]>self.boundaries[0][1] or self.state[01]<self.boundaries[1][0] or self.state[1]>self.boundaries[1][1]:
return -50
elif abs(self.target[0]-self.state[0])+abs(self.target[1]-self.state[1])<self.wininngRadius:
return 50
#.........这里部分代码省略.........
示例4: main
# 需要导入模块: from robot import Robot [as 别名]
# 或者: from robot.Robot import reset [as 别名]
def main():
print "Initializing robot..."
robot = Robot()
print "Initializing model..."
model = Model()
print "Initializing plot..."
plot = Plot(model)
print "Initializing classifier..."
classifier = Classifier()
with open(OUTFILE_PATH, "wb") as csvFile:
csvWriter = csv.writer(csvFile)
for i in count(1):
behaviorType = None
while behaviorType is None:
behaviorType = raw_input("Enter behavior type: "
"Exhaustive (e), Random (r), "
"Sweep (s), User (u): ")
behaviorType = behaviorType if behaviorType in ["e", "r", "s", "u"] else None
targets = None
while targets is None:
try:
targets = input("Enter targets (Python code returning a list): ")
targets = targets if type(targets) is list and len(targets) else None
except: pass
def callback(sensorValue, current, target):
motorValue = target - current
row = [sensorValue, motorValue, i]
csvWriter.writerow(row)
csvFile.flush()
model.feed(sensorValue, motorValue, sequenceLabel=i)
tpActiveCells = model.experimentRunner.tp.mmGetTraceActiveCells().data[-1]
classification = classifier.feed(tpActiveCells)
print "Current: {0}\tSensor: {1}\tNext: {2}\tClassification: {3}".format(
current, sensorValue, target, classification)
if classification is not None:
robot.playTune(classification)
plot.update(model)
if behaviorType == "s":
sweep(targets, robot, callback)
elif behaviorType == "e":
exhaustive(targets, robot, callback)
elif behaviorType == "r":
randomlyExplore(targets, robot, callback)
print MonitorMixinBase.mmPrettyPrintTraces(
model.experimentRunner.tm.mmGetDefaultTraces(verbosity=2) +
model.experimentRunner.tp.mmGetDefaultTraces(verbosity=2),
breakOnResets=model.experimentRunner.tm.mmGetTraceResets())
print MonitorMixinBase.mmPrettyPrintMetrics(
model.experimentRunner.tm.mmGetDefaultMetrics() +
model.experimentRunner.tp.mmGetDefaultMetrics())
robot.reset()
doReset = None
while doReset is None:
doReset = raw_input("Reset (y/n)? ")
doReset = doReset if doReset in ["y", "n"] else None
if doReset == "y":
model.experimentRunner.tm.reset()
model.experimentRunner.tp.reset()
model.experimentRunner.tm.mmClearHistory()
model.experimentRunner.tp.mmClearHistory()