Ejemplo n.º 1
0
    def generateindex(self, b=None, s=''):

        if b == None:
            b = Board()

        self.values.update({b.tuplize(): 0.0})

        if s == '' or s == b.circle:
            next_s = b.cross
        else:
            next_s = b.circle

        for m in b.status['moves']:
            b_next = b.copy()
            b_next.move(m, next_s)
            winner = b_next.winner()
            if winner == 'n':
                self.generateindex(b_next, next_s)
            elif winner == ' ':
                value = 0.5
                self.values.update({b_next.tuplize(): value})
            elif winner == b.cross:
                value = 1.0
                self.values.update({b_next.tuplize(): value})
            else:
                value = -1.0
                self.values.update({b_next.tuplize(): value})

        return self.values