예제 #1
0
class EvitarMem(Reaccao):
    
    def __init__(self):
        self._explorar = Explorar()
        self._mem_posicao = []
        self._max_memoria = 100
    
    def _detectar_estimulo(self,percepcao):
        return percepcao.posicao
        
    def _gerar_resposta(self,posicao):
        memoria_posicao = self.recordar(posicao)
        self.memorizar(posicao)
        self.esquecer()
        if memoria_posicao:
            return self._explorar.activar(None)
        
    def recordar(self, posicao):
        for memorias in self._mem_posicao:
            if memorias == posicao:
                return True
        
    def memorizar(self, posicao):
        self._mem_posicao.append(posicao)
        
    def esquecer(self):
        if len(self._mem_posicao) == self._max_memoria:
            self._mem_posicao.pop(0)
예제 #2
0
class EvitarPassado(Reaccao):

    def __init__(self):
        self._memoria = []
        self._memoria_max = 20
        self._explorar = Explorar()

    def detectar_estimulo(self, percepcao):
        return percepcao.posicao

    def gerar_resposta(self, estimulo):
        recordar = self._recordar(estimulo)
        self._memorizar(estimulo)
        self._esquecer()
        if recordar:
            return self._explorar.activar()

    def _recordar(self, posicao):
        return posicao in self._memoria

    def _esquecer(self):
        if len(self._memoria) > self._memoria_max:
            self._memoria.pop(0)

    def _memorizar(self, posicao):
        self._memoria.append(posicao)
예제 #3
0
 def __init__(self):
     self._explorar = Explorar()
     self._mem_posicao = []
     self._max_memoria = 100
예제 #4
0
 def __init__(self):
     self._memoria = []
     self._memoria_max = 20
     self._explorar = Explorar()