Yo escribí:
En caso de que dividamos los problemas en sub-problemas y confeccionemos redes lógicas:
¿Podría ser que el nodo objetivo esté desligado de la estructura restante?
Dicho de otro modo:
¿Podría ser que la estructura lógica (el modelo que creamos mentalmente) no nos permita llegar a determinado destino?
Si, eso sucede muchas veces cuando estamos intentando comprender un problema por primera vez, que el modelo que nos hacemos del mismo no es correcto. Pero como todo, eso forma parte de la tarea de hacerse experto en una materia. De hecho los novatos y los expertos en un tema no representan la información de la misma manera (me estoy refiriendo a estructuras mentales).
No quise decir que creamos un modelo que no refleja correctamente a los sistemas de nuestro entorno, sino que el modelo que creamos (que es correcto) puede no asumir determinados estados, ya que hay solo una cantidad finita de acciones que podemos llevar a cabo en un modelo.
Por ejemplo, es imposible hacer que el valor de una variable que tiene valor entero tome el valor de un número no entero sumándole o restándole números enteros. El conjunto resultante del modelo no incluiría ningún número no entero, y la solución es hacer que el valor de la variable sea un número no entero. Entonces, si no encontramos la solución para los primeros 10000 números elegidos, entonces "probablemente no la vamos a encontrar". Y como el conjunto resultante no incluye al conjunto solución, no es posible hallar una solución al problema con las herramientas que teníamos.
Y también estoy seguro de que el tema no es tan simple, pero al menos esto podría ser un indicio. Una buena idea sería la de poder calcular derivadas o "distancias" y procesarlas con perceptrones, pero no serviría para modelos que tengan una salida binaria [0,1], ya que hasta que no se encuentra la solución no se puede afirmar nada.
Dicho de otro modo, es como un pathfinding: para “moverse un cuadrado” se debería operar una de las herramientas del modelo, para saber si se acerca a la meta tal vez se debería usar un algoritmo específico, y por último se tendría que archivar las “movidas” y los resultados conjuntamente. Aunque no conozcamos el “mapa”, podemos “dibujarlo” definiendo un grafo si operamos las herramientas y archivamos la salida del modelo.
:!: Aunque no descarto que puedan existir mejores técnicas que ésta.