Files
game_theory_of_life/modules/agente.py
Luis Rodrigues 44c6eb999b adicionado atributo 'memoria' na classe 'Agente'
este atributo irá guardar um dicionário cujos pares de valores são
<idAgenteAdversario>: <listaComResultadosInteracções>
2024-09-19 10:51:50 +01:00

33 lines
957 B
Python

import modules.estrategia as ModEstrategia
class Agente():
# traços de personalidade
personalidade: dict[str, float] | None = {
'amabilidade': 0.0,
'retaliacao': 0.0,
'perdao': 0.0,
'coerencia': 0.0,
'memoria': 0.0,
}
pontuacao: int = 0
estrategia: str | None = None
id_agente: int = 0
memoria: dict = {}
def __init__(self, estrategia: str):
# definir estrategia aleatoriamente
self.estrategia = estrategia
# definir personalidade com base na estratégia
self.personalidade = ModEstrategia.devolvePersonalidade(
self.estrategia)
# identificador de agente
self.id_agente = id(self)
self.pontuacao = 0
def __str__(self):
return f'Dados Agente ({self.id_agente})\n \
\testrategia: {self.estrategia}\n \
\t\tpersonalidade: {self.personalidade}\n \
\tpontução: {self.pontuacao}'