[Épisode 3] Les débutants ont essayé Numeron AI avec python

0e 1er 2ème 3e Histoire finale

À propos de cet article

Enfin, nous allons créer la partie IA. Merci> <

Confirmation du flux AI

Comme mentionné dans la partie 1, l'ordinateur sélectionnera essentiellement la «main avec le plus petit nombre de pires candidats».

Programme requis

Le but est une fonction pour trouver le "pire numéro de candidat". Comment trouver le pire candidat, mais vous avez besoin d'une liste de numéros qui satisfont les résultats de vos appels jusqu'à présent. De plus, il serait utile d'avoir une liste de 720 numéros de 012 à 789. Et il semble amusant de préparer une liste qui contient toutes les combinaisons de EAT et BITE, donc je vais d'abord créer ces trois listes et fonctions.

Liste des numéros de 012 à 789

Je l'ai implémenté comme suit

def change(a,b,c):
    return [[a,b,c],[a,c,b],[b,a,c],[b,c,a],[c,a,b],[c,b,a]]
ALL=[]
for i in range(0,10):
    for j in range(i+1,10):
        for k in range(j+1,10):
            ALL+=change(i,j,k)

Pour expliquer brièvement le flux Créez une fonction qui renvoie une liste de 3! Trie à partir de 3 nombres J'ai fait toutes les combinaisons pour que les nombres ne soient pas couverts par pour, pour, pour. S'il vous plaît laissez-moi savoir s'il y a une meilleure implémentation (laissez-le à d'autres)

Liste de toutes les combinaisons de EAT et BITE

Puisque le nombre est petit, je vais l'écrire honnêtement

EB=[[3,0],[2,1],[2,0],[1,2],[1,1],[1,0],[0,3],[0,2],[0,1],[0,0]]

Liste des candidats

Ensuite, nous définirons une fonction qui collecte les nombres qui satisfont les résultats de EAT et BITE jusqu'à présent. Le premier mouvement est le même que TOUS, donc au début

KOUHO=ALL

Copions-le. Et chaque fois que je sais MANGER, MORDRE

def CHECK(CALL,EAT,BITE,KOUHO):
    X=len(KOUHO)
    group=[]
    for i in range(X):
        if NUMERON(CALL,KOUHO[i])==[EAT,BITE]:
            group.append(KOUHO[i])
    return group

KOUHO

KOUHO=CHECK(CALL,EAT,BITE,KOUHO)

Vous pouvez le mettre à jour avec.

Vous êtes maintenant prêt à trouver le «pire nombre de candidats».

Fonction pour trouver le pire numéro de candidat dans un appel

def BAD(CALL,KOUHO):
    CHECK_LIST=[0]*10
    for i in range(10):
        EAT=EB[i][0]
        BITE=EB[i][1]
        CHECK_LIST[i]=len(CHECK(CALL,EAT,BITE,KOUHO))
    return max(CHECK_LIST)

Par conséquent, tout ce que vous avez à faire est de rechercher entre [0,1,2] et [7,8,9]. Ainsi, la liste des appels com peut être écrite comme suit:

Créer une liste de candidats à un appel com

def CALL_LIST(KOUHO):
    LIST=[]
    EATLIST=[]
    cnt=1000
    for i in range(720):
        if BAD(ALL[i],KOUHO)<cnt:
            cnt=BAD(ALL[i],KOUHO)
            LIST=[]
            EATLIST=[]
            if len(CHECK(ALL[i],3,0,KOUHO))>=1:
                EATLIST.append(ALL[i])
            else:
                LIST.append(ALL[i])
        elif BAD(ALL[i],KOUHO)==cnt:
            if len(CHECK(ALL[i],3,0,KOUHO))>=1:
                EATLIST.append(ALL[i])
            else:
                LIST.append(ALL[i])
    if len(EATLIST)==0:
        return LIST
    else:
        return EATLIST

Si vous essayez de confirmer dans la situation que les candidats restants sont [1,2,3], [1,3,2], [2,4,1]

print(CALL_LIST([[1,2,3],[1,3,2],[2,4,1]]))
#[[1, 2, 3], [1, 3, 2]]

Revenu. Cela semble correct.

Maintenant que vous avez le cerveau du com, créons un environnement de combat !!

Recommended Posts

[Épisode 2] Les débutants ont essayé Numeron AI avec python
[Épisode 3] Les débutants ont essayé Numeron AI avec python
[Épisode 0] Un débutant a essayé Numeron AI avec python
[Épisode 1] Un débutant a essayé Numeron AI avec python
[Dernière histoire] Un débutant a essayé Numeron AI avec python
3. 3. Programmation IA avec Python
J'ai essayé fp-growth avec python
J'ai essayé de gratter avec Python
Créez Puyopuyo AI avec Python
Mayungo's Python Learning Episode 1: J'ai essayé d'imprimer avec impression
J'ai essayé gRPC avec Python
J'ai essayé de gratter avec du python
[IPdb] Les débutants en développement Web ont tenté de résumer le débogage avec Python
Mayungo's Python Learning Episode 3: J'ai essayé d'imprimer des nombres
J'ai essayé webScraping avec python.
J'ai essayé d'exécuter prolog avec python 3.8.2.
les débutants en python ont essayé de le découvrir
J'ai essayé la communication SMTP avec Python
J'ai essayé de résoudre l'édition du débutant du livre des fourmis avec python
[Pandas] J'ai essayé d'analyser les données de ventes avec Python [Pour les débutants]
Mayungo's Python Learning Episode 7: J'ai essayé d'imprimer avec if, elif, else
INSÉRER dans MySQL avec Python [Pour les débutants]
J'ai essayé le rendu non réaliste avec Python + opencv
J'ai essayé un langage fonctionnel avec Python
J'ai essayé la récurrence avec Python ② (séquence de nombres Fibonatch)
[Python] Lire des images avec OpenCV (pour les débutants)
Mayungo's Python Learning Episode 8: J'ai essayé l'entrée
Création WebApi avec Python (création CRUD) Pour les débutants
Comment les débutants en Python commencent avec Progete
Construction d'environnement AI / Machine Learning avec Python
[Pour les débutants] Essayez le web scraping avec Python
# J'ai essayé quelque chose comme Vlookup avec Python # 2
Mayungo's Python Learning Episode 2: J'ai essayé de mettre des caractères avec des variables
J'ai refactoré "J'ai essayé de faire d'Othello AI lorsque les débutants en programmation ont étudié python"
J'ai essayé de prédire l'année prochaine avec l'IA
J'ai essayé des centaines de millions de SQLite avec python
FizzBuzz en Python3
Grattage avec Python
Statistiques avec python
Raisonnement causal et recherche causale par Python (pour les débutants)
J'ai essayé de "différencier" l'image avec Python + OpenCV
Grattage avec Python
Python avec Go
Mayungo's Python Learning Episode 5: J'ai essayé de faire quatre règles avec des nombres
Un débutant en Python a essayé de coder une boisson énergisante
Twilio avec Python
J'ai essayé L-Chika avec Razpai 4 (édition Python)
Intégrer avec Python
Jouez avec 2016-Python
J'ai essayé la différenciation jacobienne et partielle avec python
J'ai essayé d'obtenir des données CloudWatch avec Python
J'ai essayé d'utiliser mecab avec python2.7, ruby2.3, php7
AES256 avec python
~ Conseils pour les débutants de Python donnés avec amour par Pythonista ① ~
J'ai essayé la synthèse de fonctions et le curry avec python
Testé avec Python
J'ai essayé de sortir LLVM IR avec Python
Un débutant en apprentissage automatique a essayé de créer un modèle de prédiction de courses de chevaux avec python