コード例 #1
0
    def escolherProximaAcao(self):
        jogada = None
        while not jogada:
            jogada = input(
                'Escreva sua jogada no formato [Pessoa1,Pessoa2] ou [Pessoa1]\n'
            ).strip()
            if len(jogada) == 3:
                p1, p2 = AgentePrepostoESHumano.parse_jogada(jogada)
            elif len(jogada) < 3:
                p1 = AgentePrepostoESHumano.parse_jogada(jogada)
                p2 = 0
            else:
                jogada = None
                print('Jogada entrada é inválida. Tente novamente.')

        return AcaoJogador.SelecionarIndividuo(p1, p2)
コード例 #2
0
    def escolherProximaAcao(self):
        if not self.solucao:
            no_solucao = busca_arvore_bfs(self.problema, self.count)
            print(f'busca_arvore_bfs = {busca_arvore_bfs}')
            self.solucao = no_solucao.caminho_acoes()
            #print(f'jfsdnflksn 2')
            #print(f'alooooo kk{len(self.solucao), self.solucao}')
            if not self.solucao:
                raise Exception("Agente BFS não encontrou solução.")

        acao = self.solucao.pop(0)
        print(f'Próxima ação é {acao}.')
        time.sleep(2)

        p1, p2 = AgenteAutomaticoBfs.parse_jogada(acao)
        return AcaoJogador.SelecionarIndividuo(p1, p2)
コード例 #3
0
    def escolherProximaAcao(self):
        if not self.solucao:
            no_solucao = busca_arvore_dfs(self.problema)
            print(f'1')
            self.solucao = no_solucao.caminho_acoes()
            print(f'2')
            print(len(self.solucao), self.solucao)
            if not self.solucao:
                raise Exception("Agente BFS não encontrou solução.")

        acao = self.solucao.pop(0)
        print(f'Próxima ação é {acao}.')
        time.sleep(2)

        p1, p2 = AgenteAutomaticoDfs.parse_jogada(acao)
        return AcaoJogador.SelecionarIndividuo(p1, p2)