def planMore(self, iters): for n in xrange(iters): self.numIters += 1 n = self.expand() if n != None and self.goal != None: if self.goal.contains(n.x): self.goalNodes.append(n) if n.c + self.objective.terminal(n.x) < self.bestPathCost: self.bestPathCost = n.c + self.objective.terminal(n.x) print "New goal node with cost", self.bestPathCost self.bestPath = TreePlanner.getPath(self, n) if self.bestPath == None: print "Uh... no path to goal?" return True return False
def planMore(self,iters): for n in xrange(iters): self.numIters += 1 n = self.expand() if n != None and self.goal != None: if self.goal.contains(n.x): self.goalNodes.append(n) if n.c + self.objective.terminal(n.x) < self.bestPathCost: self.bestPathCost = n.c + self.objective.terminal(n.x) print "New goal node with cost",self.bestPathCost self.bestPath = TreePlanner.getPath(self,n) if self.bestPath == None: print "Uh... no path to goal?" return True return False
def getPath(self, n=None): if n == None: return self.bestPath return TreePlanner.getPath(self, n)
def getPath(self,n=None): if n == None: return self.bestPath return TreePlanner.getPath(self,n)
def getPath(self,n=None): if n == None: if len(self.goalNodes)==0: return None return TreePlanner.getPath(self,self.goalNodes[0]) return TreePlanner.getPath(self,n)