Notas del parche de actualización 1.1

Original article was published on Artificial Intelligence on Medium

Notas del parche de actualización

Este parche traerá los siguientes cambios a Matrix AI Network:

1. Ajustes a la política de sanciones

2. Ajustes al algoritmo de dificultad

3. Más espacio de búsqueda para minería PoW

4. Corrección de errores

Política de penalización

En la versión actual, los nodos de minería elegidos pero que no informan su cálculo base se incluirán en la lista negra y perderán todas las recompensas para esa ronda.
El nuevo parche aumentará la penalización para los nodos de minería penalizados. Si está en la lista negra, su nodo tampoco puede convertirse en un candidato a Masternode de minería para el próximo ciclo electoral.

Algoritmo de ajuste de dificultad

Hemos encontrado dos fallas en la versión actual:

1. El nivel de dificultad cae cuando se elige un nuevo líder de validación.

Si hay un nuevo líder de validación en un ciclo de minería (el tiempo para generar 3 bloques), este ciclo de minería tardará más en terminar, y la dificultad para minar el siguiente bloque disminuirá. (Los validadores se turnan para generar bloques, y un validador que ha generado un bloque se considera el líder de validación de ese bloque). Por lo tanto, el aumento en el tiempo de extracción causado de esta manera no tiene nada que ver con la potencia informática real. (De hecho, un problema con un validador puede hacer que esto suceda repetidamente hasta el punto en que falla el ajuste de dificultad. Como resultado, el nivel de dificultad será demasiado bajo para que los mineros hagan pleno uso de su potencia informática).

Cuando esto sucede, es imposible saber el tiempo real de extracción de un minero. Por lo tanto, al calcular el nivel de dificultad, utilizaremos el “tiempo esperado de generación de bloques” como la solución intermedia en lugar del tiempo real.

2. En la configuración rápida y las etapas de seguimiento, la dificultad de la minería se estabiliza lentamente debido a la falta de sinergia.

Actualmente, el algoritmo de ajuste de dificultad en la red principal pasa por dos etapas:

(1) Configuración rápida: establece rápidamente un algoritmo para los primeros n ciclos de minería. Ajusta el nivel de dificultad de forma exponencial para aumentar la precisión de la estimación.

(2) Seguimiento: utiliza el promedio móvil ponderado exponencial para realizar un seguimiento del cambio de cálculo a través de la red principal.

En la versión actual, al calcular un promedio móvil ponderado exponencial, la información del bloque (nivel de dificultad y tiempo) de la etapa de configuración rápida se utilizará al principio. Esta información no es un reflejo exacto de la potencia informática. Pero dado que el último bloque de la etapa de configuración rápida contiene información relativamente precisa, en la nueva versión, utilizaremos esta información en lugar de tratar de obtener el nivel de dificultad de otras maneras, cuando el cálculo exponencial ponderaba el promedio móvil.

Análisis de resultados de ajuste de algoritmo

Probamos los efectos de estos ajustes bajo el mismo nivel de dificultad y potencia informática, con la rotación del líder de validación habilitada o deshabilitada. Los resultados son los siguientes.

1. Gráfico uno: ajuste de dificultad en la versión actual con la rotación del líder de validación deshabilitada.

2. Gráfico dos: ajuste de dificultad en la versión actual con la rotación del líder de validación habilitada.

3. Gráfico tres: ajuste de dificultad en la nueva versión con la rotación del líder de validación deshabilitada.

4. Gráfico cuatro: ajuste de dificultad en la nueva versión con validación de rotación del líder habilitada.

El gráfico uno muestra que en la versión actual, el nivel de dificultad verá una caída después de la configuración rápida antes de volver a subir lentamente, y el nivel tarda en estabilizarse.

El gráfico tres muestra que en la nueva versión, el nivel de dificultad se estabiliza mucho más rápido después de una configuración rápida. Esto demuestra que las soluciones que presentamos son efectivas.

Al comparar el Cuadro uno y el Cuadro dos, vemos que, con la rotación del líder de validación habilitada, la dificultad no solo aumenta más lentamente, sino que también termina en un nivel más bajo que en el Cuadro uno. Al comparar el Gráfico tres y el Gráfico cuatro, vemos que, bajo parámetros idénticos a los del Gráfico dos y con la rotación del líder de validación habilitada, no hay un cambio obvio en la velocidad a la que aumenta el nivel de dificultad. Aunque la dificultad final es aún menor, la diferencia no es grande. Esto muestra que el parche controlará efectivamente el impacto de la rotación del líder de validación en el cálculo de la dificultad.

Cambios de parámetros

Hemos realizado cambios en algunos parámetros del algoritmo de ajuste de dificultad en función del rendimiento actual de la red principal.

Más espacio de búsqueda para minería PoW

En la versión actual, el espacio de búsqueda para la minería PoW es de solo 4 bytes. Cuando el nivel de dificultad es demasiado alto, es posible que no se encuentre un valor objetivo ideal después de buscar en todo el espacio. En la nueva versión, agregaremos un espacio de 12 bytes, en los 12 bytes iniciales del campo mixDigest del encabezado de bloque.

Corrección de errores

La nueva versión presentará las siguientes correcciones de errores.

  1. En la versión actual, los validadores en la red principal solo aceptan resultados de minería que sean un bloque más altos que la altura local. Cuando la dificultad de minería POW es demasiado baja, esto puede hacer que los resultados de la minería lleguen dos bloques antes. En consecuencia, los mineros con mayor poder de cómputo pueden no ver sus resultados de minería aceptados. Este error se solucionará con el parche.
  2. En la versión actual, el nonce no puede ser 0 para la minería de CPU. Este error se solucionará con el parche.

En la versión actual, el módulo P2P no bloquea las visitas al mapa utilizando ciertos códigos, lo que ocasiona que el sistema se bloquee a veces cuando hay demasiados nodos conectados. Este problema se solucionará con el parche.

Aviso

  1. Los mineros son responsables de mantener sus nodos en buenas condiciones de funcionamiento. Si un nodo elegido no informa su cálculo base, no solo perderá todas las recompensas para el ciclo minero actual, sino que también será excluido de la próxima ronda electoral.
  2. Nuestros experimentos muestran que una CPU de 40 núcleos no es rival para el Apocalypse en potencia informática y no tiene posibilidades de generar bloques. Para garantizar su rentabilidad, se recomienda utilizar el Apocalypse para la minería, convertirse en un validador estacado o ingresar a la minería conjunta para obtener recompensas de validador.