Discusión sobre el artículo "Algoritmo de cerradura de código (Сode Lock Algorithm, CLA)"

 

Artículo publicado Algoritmo de cerradura de código (Сode Lock Algorithm, CLA):

En este artículo repensaremos las cerraduras de código, transformándolas de mecanismos de protección en herramientas para resolver problemas complejos de optimización. Descubra el mundo de las cerraduras de código, no como simples dispositivos de seguridad, sino como inspiración para un nuevo enfoque de la optimización. Hoy crearemos toda una población de "cerraduras" en la que cada cerradura representará una solución única a un problema. A continuación, desarrollaremos un algoritmo que "forzará" estas cerraduras y hallará soluciones óptimas en ámbitos que van desde el aprendizaje automático hasta el desarrollo de sistemas comerciales.

Las cerraduras de código, también conocidas como cerraduras digitales o cerraduras de combinación, son mecanismos de seguridad que se usan para controlar el acceso a habitaciones, cajas fuertes, armarios y otros objetos. Se diferencian de las cerraduras convencionales en que,en lugar de utilizar una llave, se debe introducir una combinación numérica determinada para abrirlas.

Las cerraduras de código suelen estar equipadas con un teclado, cilindros especiales u otros mecanismos giratorios en los que hay que especificar una secuencia de números en combinación para abrir la cerradura. Una vez introducida la combinación correcta, la cerradura de código activa un mecanismo que desbloqueará la cerradura, permitiéndonos abrir la puerta o acceder al contenido de la caja fuerte. El usuario puede establecer su propio código o usar el código proporcionado para abrir la cerradura.

Ventajas de las cerraduras de código:

  • Seguridad. Las cerraduras de código pueden proporcionar un alto nivel de seguridad, sobre todo si los códigos se cambian con regularidad.
  • Comodidad. No tiene que llevar llaves encima, por lo que las cerraduras de código son muy cómodas de usar.
  • Posibilidad de establecer varios códigos. Algunos modelos permiten establecer varios códigos distintos para diferentes usuarios o para distintos intervalos de tiempo.


Autor: Andrey Dik

 

¿Todos los OA realizan el mismo número de cálculos FF?

Probablemente sería útil comparar los OA por el número medio de cálculos FF cuando se alcanza el óptimo.


Este número es la velocidad de optimización.

 
fxsaber #:

¿Todas las OA realizan el mismo número de cálculos FF?

Tal vez sería útil comparar los OA en términos de número medio de cálculos FF cuando se alcanza el óptimo.


Este número es la velocidad de optimización.

Sí, todos los OAs realizan el mismo número de cálculos FF en las pruebas - 10000. Diferentes AOs tienen diferentes poblaciones, pero aquí el número de épocas se cambia simplemente: 10000 / population_size = number_epochs.

Una sugerencia interesante es comparar por el número de ejecuciones FF antes de alcanzar el valor máximo que el algoritmo podría alcanzar. Sin embargo, en este caso hay un punto poco claro: un algoritmo atascado al principio de la optimización en valores bajos de FF mostrará un resultado alto en una prueba de este tipo....

 
Andrey Dik #:

un algoritmo atascado al principio de la optimización con valores de FF bajos mostrará un resultado alto en una prueba de este tipo...

Por eso hablaba de la media. O del peor.

 
fxsaber #:

Por eso hablaba de la media. O de lo peor.

Sí, yo también me refería a la media. Puede ser útil especificar la zona, por ejemplo, cuántas carreras del FF, por término medio, caen en la zona del 90%, 70%, 50%. Es decir, es, de hecho, un indicador de la no aleatoriedad de la estrategia de búsqueda, ya que los resultados de la primera época son obviamente aleatorios, por lo que cuanto mayores sean los resultados en cada época posterior, mayor será la capacidad de búsqueda del algoritmo. También es posible medir la ganancia media de convergencia con cada época posterior para un número determinado de épocas.