Update ARE-DYNAMIC.py
This commit is contained in:
parent
9718f671bc
commit
538caca3d3
|
@ -4,7 +4,7 @@
|
|||
###
|
||||
### Auteurs:
|
||||
### julianb (3670170)
|
||||
### lucieho ()
|
||||
### lucieho (3671067)
|
||||
### nicolasbsn ()
|
||||
### constancepoulain ()
|
||||
###
|
||||
|
@ -142,6 +142,73 @@ def init_liste_gen_grilles():
|
|||
|
||||
#######################
|
||||
### Fonction stratégies
|
||||
def strat_toujours_nier(joueur, adversaire):
|
||||
"""
|
||||
Joueur^2 -> int
|
||||
|
||||
Index: 0
|
||||
|
||||
Toujours nier (coopération)
|
||||
"""
|
||||
return 0 # 0 : coop
|
||||
|
||||
def strat_toujours_avouer(joueur, adversaire):
|
||||
"""
|
||||
Joueur^2 -> int
|
||||
|
||||
Index: 1
|
||||
|
||||
Toujours avouer (trahir)
|
||||
"""
|
||||
return 1 #1 : traître
|
||||
|
||||
def strat_altern(joueur, adversaire):
|
||||
"""
|
||||
Joueur^2 -> int
|
||||
|
||||
Index: 2
|
||||
|
||||
Le joueur alterne entre nier et avouer
|
||||
"""
|
||||
|
||||
if joueur['etat'] == 0:
|
||||
return 1
|
||||
else :
|
||||
return 0
|
||||
|
||||
def strat_precedent_adversaire(joueur, adversaire):
|
||||
"""
|
||||
Joueur^2 -> int
|
||||
|
||||
Index: 3
|
||||
|
||||
Le joueur avoue/nie si durant la partie locale précédente, son adversaire avait avoué/nié (on utilise l'hisorique des états)
|
||||
"""
|
||||
return adversaire['historique_etats'][len(adversaire['historique_etats'])-1] == 0
|
||||
|
||||
def strat_principal_adversaire(joueur, adversaire):
|
||||
"""
|
||||
Joueur^2 -> int
|
||||
|
||||
Index: 4
|
||||
|
||||
Le joueur avoue/nie si l’adversaire avait majoritairement avoué/nié durant ses parties précédentes (on utilise l'hisorique des états)
|
||||
Si aucun état n’est majoritaire, la coopération l’emporte (le joueur nie)
|
||||
"""
|
||||
|
||||
s = 0 # somme des entiers représentant les états
|
||||
|
||||
for i in adversaire['historique_etat']:
|
||||
s += i
|
||||
|
||||
if len(adversaire['historique_etat']) == 0:
|
||||
return 0
|
||||
|
||||
elif (s/len(adversaire['historique_etat'])) > 0.5:
|
||||
return 1
|
||||
|
||||
else:
|
||||
return 0
|
||||
|
||||
def init_liste_strategies():
|
||||
"""
|
||||
|
@ -149,4 +216,11 @@ def init_liste_strategies():
|
|||
|
||||
Rajoute à ListeStrategies toutes les fonctions stratégies
|
||||
"""
|
||||
pass
|
||||
|
||||
ListeStrategies[0] = strat_toujours_nier
|
||||
ListeStrategies[1] = strat_toujours_avouer
|
||||
ListeStrategies[2] = strat_altern
|
||||
ListeStrategies[3] = strat_precedent_adversaire
|
||||
ListeStrategies[4] = strat_principal_adversaire
|
||||
|
||||
###############################################################################
|
||||
|
|
Loading…
Reference in New Issue