[PYTHON] [Minecraft] Quels sont les éléments importants de la survie?

introduction

Je survivrai avec Minecraft. Alors, que devons-nous faire pour survivre? Quels éléments dois-je créer?

Je l'exécute avec le notebook jupyter. De plus, la visualisation est effectuée avec Cytoscape.

Méthode de réseau étendu

Cela est expliqué dans la figure ci-dessous. 6.PNG

Découvrez quels objets peuvent actuellement être fabriqués à partir d'objets existants et ajoutez-les à des objets existants. Répétez ceci jusqu'à ce qu'il converge.

En interne, il est géré par la matrice suivante.

・ Matrix R représentant le côté gauche de la recette

A B C D E F ...
Recette 1 1 1 0 0 0 0
Recette 2 0 1 1 0 0 0
...

・ Vecteur B représentant le nombre d'éléments sur le côté gauche de la recette

nombre
Recette 1 2
Recette 2 2
...

・ Matrice P représentant le côté droit de la recette

A B C D E F ...
Recette 1 0 0 0 1 0 0
Recette 2 0 0 0 0 1 0
...

・ Matrice x représentant les éléments existants

A B C D E F ...
Existe-t-il? 1 1 0 0 0 0

La procédure est

  1. Prenez le produit intérieur de R et x et voyez s'il correspond à B En d'autres termes, assurez-vous d'avoir tous les objets dont vous avez besoin pour fabriquer.
  2. S'ils correspondent, ajoutez le P correspondant à R à x, en supposant que la recette a été élaborée. Ajoutez l'objet fabriqué à x.

Répétez ceci jusqu'à ce qu'il converge.

Créer une base de données de recettes

Créez une base de données de recettes Minecraft ("toutes les recettes" dans l'explication ci-dessus). J'ai cité la recette du minecraft wiki. Je vais le résumer dans un fichier csv. minecraft_reactions.PNG

La raison pour laquelle il est placé entre "" est qu'il est pratique pour le processus d'extraction d'une chaîne de caractères.

Courir

Je vais présenter le flux avec une capture d'écran. Le programme principal est une implémentation de la méthode de réseau étendu ci-dessus.

importer

0.PNG

Création d'un dictionnaire d'articles

Créez un dictionnaire d'articles basé sur la recette importée. 1.PNG

Spécifiez l'élément initial

Qu'est-ce que vous obtenez en premier lorsque vous descendez en mode survie? Donc, cette fois, j'ai fabriqué les articles initiaux en bois (bûche), pavés et lingots de fer, qui seront disponibles relativement tôt (bien qu'il ne soit peut-être pas si facile d'obtenir du lingot de fer). ...).

Résultat d'exécution

Comme mentionné ci-dessus, un total de 62 objets ont été fabriqués. 7.PNG

Visualisation

Visualisons-le avec Cytoscape. 8.PNG

Les nœuds avec de nombreux bords s'étendant sont des éléments importants.

Cette fois, j'ai ajouté un diamant à l'article initial. 5.PNG

Conclusion

Stick, important.

Merci pour votre visite.

Les références

https://www.cell.com/fulltext/S0092-8674(17)30133-2 Il décrit la méthode du réseau étendu.

Recommended Posts

[Minecraft] Quels sont les éléments importants de la survie?
Ingénierie des fonctionnalités des prévisions financières: quelles sont les fonctionnalités des prévisions financières?
Qu'est-ce que "mahjong" dans la bibliothèque Python? ??
Quels sont le "pipeline" et "{...}" dans le pipeline Jenkins Pipeline {...} (pour les débutants Groovy, pour les langages expérimentés)
Quelle est la raison pour laquelle l'homme n'affiche pas les commandes de base en japonais?
Vérifiez si les caractères sont similaires en Python
[Python] Avant le trait de soulignement (underbar) Quelles sont les deux fonctions?
Qu'est-ce que wheezy dans l'image Docker Python?
Déterminer s'il y a des oiseaux dans l'image
Quel est l'attribut de domaine écrit dans la disposition de Plotly?
Utilisation de l'application LibreOffice en Python (1) Où sont les macros?
Ce que j'ai appris en participant aux qualifications ISUCON10
Que signifie le dernier () dans une fonction en Python?
J'ai essayé de résumer ce que l'homme fort de python fait dans le quartier des professionnels de la compétition
La ventilation est importante. Ce que j'ai fait pour garder une trace de la concentration de C02 dans la pièce