este atributo irá guardar um dicionário cujos pares de valores são <idAgenteAdversario>: <listaComResultadosInteracções>
33 lines
957 B
Python
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}'
|