def setParameter(self,parametername,parametervalue): if not parametername in ['maxdepth','mindepth','randomseed']: print __doc__ raise Exception("Invalid parameter '%s' for gameguidance." % parametername) GuidanceBase.setParameter(self,parametername,parametervalue) if parametername=='randomseed': self._rndchoose=random.Random(parametervalue).choice
def setParameter(self,parametername,parametervalue): if not parametername in ['randomseed']: print __doc__ raise Exception("Invalid parameter '%s' for gameguidance." % parametername) GuidanceBase.setParameter(self,parametername,parametervalue) if parametername=='randomseed': self._rndchoose=random.Random(parametervalue).choice
def setParameter(self,parametername,parametervalue): if not parametername in ['lookahead','randomseed','rerouteafter']: print __doc__ raise Exception("Invalid parameter '%s' for gameguidance." % parametername) GuidanceBase.setParameter(self,parametername,parametervalue) if parametername=='randomseed': self._rndchoose=random.Random(parametervalue).choice elif parametername=='rerouteafter': self._steps_to_reroute=self.getParameter(parametername)
def setParameter(self, paramname, paramvalue): accepted = ("numtabuactions", "numtabustates", "numtabutransitions") if paramname == "numtabuactions": self._NUM_TABU_ACTIONS = self._parseSize(paramname, paramvalue) elif paramname == "numtabustates": self._NUM_TABU_STATES = self._parseSize(paramname, paramvalue) elif paramname == "numtabutransitions": self._NUM_TABU_TRANSITIONS = self._parseSize(paramname, paramvalue) else: print __doc__ raise Exception("Invalid parameter '%s' for tabuguidance. Accepted parameters: %s" % paramname, accepted) GuidanceBase.setParameter(self, paramname, paramvalue)
def setParameter(self, paramname, paramvalue): accepted = ("numtabuactions", "numtabustates", "numtabutransitions") if paramname == 'numtabuactions': self._NUM_TABU_ACTIONS = self._parseSize(paramname, paramvalue) elif paramname == 'numtabustates': self._NUM_TABU_STATES = self._parseSize(paramname, paramvalue) elif paramname == 'numtabutransitions': self._NUM_TABU_TRANSITIONS = self._parseSize(paramname, paramvalue) else: print __doc__ raise Exception( "Invalid parameter '%s' for tabuguidance. Accepted parameters: %s" % paramname, accepted) GuidanceBase.setParameter(self, paramname, paramvalue)
def setParameter(self, name, value): accepted = ("transitionweight", "searchorder", "searchdepth", "maxtransitions", "searchconstraint") if name == "transitionweight": if isinstance(value, str) and value.startswith('kw:'): kww = float(value[3:]) self._transitionweight = \ lambda t: kww if 'kw_' in str(t.getAction()) else 0 else: if value < 0: self.log("WARNING! Negative transition weight " + "doesn't make sense!") self._transitionweight = lambda t: value elif name == "searchorder": if value == "bestfirst": self._toHeap = lambda p, badness: (badness, len(p), p) self._fromHeap = lambda values: (values[2], values[0]) elif value == "shortestfirst": self._toHeap = lambda p, badness: (len(p), badness, p) self._fromHeap = lambda values: (values[2], values[1]) else: raise ValueError("Invalid searchorder: '%s'" % (value, )) elif name in ("searchdepth", "searchradius"): self._searchDepth = value elif name == "maxtransitions": self._maxTransitions = value elif name == "greedy": self._greedy = value elif name == "searchconstraint": if value == "nocrossingpaths": self._seco = NO_CROSSING_PATHS elif value == "noloops": self._seco = NO_LOOPS elif value == "noconstraint": self._seco = NONE else: raise ValueError("Invalid searchconstraint '%s'" % value) else: print __doc__ raise ValueError("Invalid parameter '%s' for newguidance. " % name + "Accepted parameters: %s" % ",".join(accepted)) GuidanceBase.setParameter(self, name, value)
def setParameter(self, name, value): accepted = ("transitionweight", "searchorder", "searchdepth", "maxtransitions", "searchconstraint") if name == "transitionweight": if isinstance(value, str) and value.startswith("kw:"): kww = float(value[3:]) self._transitionweight = lambda t: kww if "kw_" in str(t.getAction()) else 0 else: if value < 0: self.log("WARNING! Negative transition weight " + "doesn't make sense!") self._transitionweight = lambda t: value elif name == "searchorder": if value == "bestfirst": self._toHeap = lambda p, badness: (badness, len(p), p) self._fromHeap = lambda values: (values[2], values[0]) elif value == "shortestfirst": self._toHeap = lambda p, badness: (len(p), badness, p) self._fromHeap = lambda values: (values[2], values[1]) else: raise ValueError("Invalid searchorder: '%s'" % (value,)) elif name in ("searchdepth", "searchradius"): self._searchDepth = value elif name == "maxtransitions": self._maxTransitions = value elif name == "greedy": self._greedy = value elif name == "searchconstraint": if value == "nocrossingpaths": self._seco = NO_CROSSING_PATHS elif value == "noloops": self._seco = NO_LOOPS elif value == "noconstraint": self._seco = NONE else: raise ValueError("Invalid searchconstraint '%s'" % value) else: print __doc__ raise ValueError( "Invalid parameter '%s' for newguidance. " % name + "Accepted parameters: %s" % ",".join(accepted) ) GuidanceBase.setParameter(self, name, value)