1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- from Outils.Arbre import *
- from Outils.Moteur_de_jeu import Joueur
- from Outils.Moteur_de_jeu.Joueur import *
- from Outils.Moteur_de_jeu.Plateau import *
- from Outils.Moteur_de_jeu.Coup import *
- from random import shuffle
- def evaluation (plateau,n,premier,num) :
- chemin = plateau.chemin(num)
- t = plateau.pourri_chemin(chemin)
- for k in t :
- if not plateau.barriere_possible(k):
- suppr(t,k)
-
- if chemin == [] :
- print("il y a eu des erreurs")
- return -10**100
-
- if t == [] or n==0 :
- return len(chemin)
- #elif n == premier :
- # l = []
- # for bar in t :
- # coup = Coup("B",barriere = bar)
- # plateau.executer_coup(coup)
- # l.append(evaluation(plateau,n-1,premier,num))
- #
- # suppr(plateau.liste_barrieres , bar)
- #
- #
- # return(max(l))
- else :
- l = []
- n2 = plateau.longueur_chemin(num)
- n3 = plateau.longueur_chemin(1-num)
-
- for bar in t :
-
- coup = Coup("B",barriere = bar)
- plateau.executer_coup(coup)
- n1 = plateau.longueur_chemin(num)
- n4 = plateau.longueur_chemin(1-num)
- l.append(n1-n2-n3+n4)
- suppr(plateau.liste_barrieres , bar)
- k = max(l)
- for i in range (len(l)) :
- if l[i] == k:
- coup = Coup("B",barriere = t[i])
- plateau.executer_coup(coup)
- return(evaluation(plateau,n-1,premier,num))
-
-
-
|