tsp problems problem knapsack fitness code algorithms machine-learning mapping genetic-algorithm genetic-programming

machine learning - problems - ¿Cómo crear una asignación bidireccional entre un espacio de entrada y un espacio restringido disperso de mayor dimensión?



knapsack problem genetic algorithm python code (1)

Creo que este problema se puede resolver con ML porque hay algunas propiedades del espacio de salida que quiero lograr.

Problema: D1 <-> D2 donde D1 es el espacio de entrada y D2 es un espacio tal que: D2 tendrá más dimensionalidad (probablemente por órdenes de magnitud) donde cada dimensión está restringida a un número natural entre 0 y N y existe una probabilidad P que el cambio de + -1 a una dimensión aleatoria en D2 no tendrá ningún efecto en la asignación de nuevo a D1. Existe una probabilidad P2 de que tal cambio solo afecte a una sola dimensión en D1, probabilidad P3 de que afecte a 2 dimensiones, y otras reglas similares ...

El objetivo es crear una forma de mapa que permita la aplicación de algoritmos genéticos al espacio D2 con la lógica de que así es como funciona el ADN y, obviamente, es efectivo.

Los algoritmos genéticos aplicados a D1 pueden ser casi inútiles si hay relaciones ocultas entre las dimensiones, es la razón principal por la que se necesita D2, donde tales relaciones se minimizarían y donde existan, su magnitud de impacto de regreso a D1 sería aleatoria.


Parece que está buscando un "código de corrección de errores". En este caso, D1 es su representación inicial y D2 es un código redundante. La teoría de estos códigos le permite calcular la probabilidad de recuperar la representación correcta, dado el tamaño del código D2 y la probabilidad de que D2 se corrompa.

Una referencia realmente excelente para los códigos de corrección de errores binarios es la Teoría de la información, la Inferencia y los Algoritmos de aprendizaje de David MacKay, particularmente la sección II. Tenga en cuenta que esto no es exactamente lo que desea, ya que mencionó números naturales de 0 a N, no números binarios. También puede buscar "códigos de corrección de errores analógicos", que podrían acercarse más a lo que está solicitando aquí.

Acerca de los algoritmos genéticos, al parecer, estos también pueden aplicarse al problema de descubrir códigos de corrección de errores ideales, por ejemplo en este documento .