def _strategy(self): max = 0 maxvalue = [] base = self.base.copy() for line in open(os.path.join(define.APP_TMP, "route.txt")): result = np.array(eval(line.rstrip())) tmp = base.copy() for r in result: tmp[r[0]][r[1]] = "V" res = [self.delete(tmp.copy(), flag=True), result, calc(self.get_result())] if not max > res[2]: maxvalue = [res[2], res[1]] max = res[2] return maxvalue[0], maxvalue[1]
def setup( self, define_dict = None, funmod = None, filename = None, required = None, other = None ): define_dict = get_default( define_dict, self.__dict__ ) self._filename = filename other_missing = self.validate( required = required, other = other ) self.transform_input_trivial() self._raw = {} for key, val in define_dict.iteritems(): if isinstance( val, dict ): self._raw[key] = copy( val ) self.transform_input() self.funmod = funmod
def __strategy(self, base, bresult, bpredict, bnode): if len(bresult) > 3: return else: for p in bpredict: tmp = base.copy() tmp[p[0]][p[1]] = "V" parr = np.array([[p[0],p[1]]]) result = np.append(bresult.copy(), parr, axis=0) if self.equal(result.copy()): pass else: res = [self.delete(tmp.copy(), flag=True), result.copy(), self.get_result()] node = Node(result, parr, res[0] - len(res[1]), res[2]) self.node.append(node) bnode.add(node) predict = self._predict(result) self.__strategy(tmp, result, predict, node)
def _strategy(self): max = 0 maxvalue = [] base = self.base.copy() for i in range(1, 7): for j in range(0, 8): result = np.array([[i,j]]) tmp = base.copy() tmp[i][j] = "V" res = [self.delete(tmp.copy(), flag=True), result, self.get_result()] node = Node(res[1], res[1], res[0] - len(res[1]), res[2]) self.node.append(node) self.root.add(node) predict = self._predict(result) self.__strategy(tmp, result, predict, node) for n in self.node: if not max > n._score: maxvalue = [n._score, n._result] max = n._score return maxvalue[0], maxvalue[1]
def get_standard_keywords(): return copy( _required ), copy( _other )