Update ARE-DYNAMIC.py

This commit is contained in:
julianb0 2017-03-15 11:40:43 +01:00 committed by GitHub
parent 5677c457a6
commit 059fc0ea21
1 changed files with 24 additions and 11 deletions

View File

@ -18,7 +18,7 @@
import random import random
import numpy as np import numpy as np
import matplotlib as mpl import matplotlib as mpl
from matplotlib import pyplot import matplotlib.pyplot as plt
import copy import copy
###################### ######################
@ -39,9 +39,10 @@ HistoriqueGrilles = list()
# i = index de la stratégie en question # i = index de la stratégie en question
# nb_utilisations = nombre total d'utilisations de la stratégie # nb_utilisations = nombre total d'utilisations de la stratégie
# total_ans_prisons = total d'années de prisons subies par les utilisateurs de la stratégie # total_ans_prisons = total d'années de prisons subies par les utilisateurs de la stratégie
# utilisation_detail = une liste de trilets [iter, utilisateurs, utilisations, prisons] # utilisation_detail[i] = une liste de trilets [utilisateurs, utilisations, prisons]
# représentant, à l'itération "iter", le nombre d'utilisateurs, le nombre d'utilisations # représentant, à la fin de l'itération i, le nombre d'utilisateurs, le nombre d'utilisations
# ainsi quel le nombre d'années de prisons qu'ils ont accumulés # ainsi quel le nombre d'années de prisons qu'ils ont accumulés
# attention, le nombre d'utilisateurs stockés est
StratsResultats = list() StratsResultats = list()
# liste des stratégies (fonctions Joueur^2 -> {0, 1} décidant si un joueur nie ou non en fonction de son adversaire) # liste des stratégies (fonctions Joueur^2 -> {0, 1} décidant si un joueur nie ou non en fonction de son adversaire)
@ -118,14 +119,14 @@ def partie1v1(joueur, adversaire):
ans_prison = (5, 5) ans_prison = (5, 5)
(StratsResultats[joueur["strategie"]])[0] += 1 (StratsResultats[joueur["strategie"]])[0] += 1
(StratsResultats[joueur["strategie"]])[2][1] += 1
(StratsResultats[adversaire["strategie"]])[0] += 1
(StratsResultats[adversaire["strategie"]])[2][1] += 1
(StratsResultats[joueur["strategie"]])[1] += ans_prison[0] (StratsResultats[joueur["strategie"]])[1] += ans_prison[0]
(StratsResultats[joueur["strategie"]])[2][2] += ans_prisons[0] (StratsResultats[adversaire["strategie"]])[0] += 1
(StratsResultats[adversaire["strategie"]])[1] += ans_prison[1] (StratsResultats[adversaire["strategie"]])[1] += ans_prison[1]
(StratsResultats[adversaire["strategie"]])[2][2] += ans_prisons[0]
(StratsResultats[joueur["strategie"]])[2][Iteration][1] += 1
(StratsResultats[joueur["strategie"]])[2][Iteration][2] += ans_prisons[0]
(StratsResultats[adversaire["strategie"]])[2][Iteration][1] += 1
(StratsResultats[adversaire["strategie"]])[2][Iteration][2] += ans_prisons[0]
joueur["annees_de_prison"] += ans_prison[0] joueur["annees_de_prison"] += ans_prison[0]
adversaire["annees_de_prison"] += ans_prison[1] adversaire["annees_de_prison"] += ans_prison[1]
@ -452,11 +453,23 @@ def simulation():
while Iteration <= MaxIterations: while Iteration <= MaxIterations:
HistoriqueGrilles.append(copy.deepcopy(Grille)) HistoriqueGrilles.append(copy.deepcopy(Grille))
partie_globale()
Iteration += 1 Iteration += 1
for i in range(len(StratsResultats)):
StratsResultats[i][2].append([0, 0, 0])
partie_globale()
for i in range(len(StratsResultats)):
for x in range(TailleGrilleX):
for y in range(TailleGrilleY):
if
return Grille return Grille
"""
def _ext(M): def _ext(M):
K = np.ndarray((TailleGrilleX, TailleGrilleY)) K = np.ndarray((TailleGrilleX, TailleGrilleY))
@ -465,7 +478,7 @@ def _ext(M):
K[x][y] = M[x][y]["strategie"] K[x][y] = M[x][y]["strategie"]
return K return K
"""
init_complete() init_complete()