¿Es posible codificar un programa que, dada una secuencia finita, encuentra al menos 2 reglas posibles que generan las series restantes?

Aquí hay varios algoritmos posibles que pueden producir diferentes secuencias enteras dada una secuencia de entrada finita:

  1. Dados N enteros, interpola un polinomio de grado N que se ajuste a los puntos [matemática] (1, s_1), (2, s_2), (3, s_3) [/ matemática], etc.
  2. Dados N enteros, calcule su secuencia de enésima diferencia y suponga que esta secuencia de diferencia se repite. (Alternativamente, calcule sus diferencias de Kth para valores arbitrarios de K menores que N.)
  3. Repita la secuencia de entrada nuevamente desde el principio. O repita el último elemento en la secuencia de entrada.
  4. Trate la secuencia de entrada como la semilla de una secuencia de Fibonacci generalizada y genere el siguiente elemento agregando el N. anterior (puede rellenar la parte negativa de la secuencia para que coincida).

(Si desea manejar casos extremos, como secuencias de entrada constantes que podrían dar como resultado la misma secuencia, simplemente asigne un valor arbitrario a un elemento de entrada N + 1. Si bien esto será arbitrario, no es más que cualquier selección de una regla particular, contexto ausente o criterios de simplicidad).

Es difícil encontrar patrones significativos mediante programación en series de datos. Caes en la madriguera del conejo de la fuerza bruta probando patrones conocidos y búsquedas interminables de permutación iterativa.

Lo mejor es utilizar soluciones de Machine Learning para predicciones de secuencia con backpropagation habilitado. La primera parte de la serie sería el conjunto de entrenamiento. A medida que procesa el resto, cualquier error / divergencia del patrón forzaría el recálculo del algoritmo de prueba de secuencia.

No, porque el problema como se indicó no se puede resolver para todos los casos. Primero, asumiré que la pregunta es sobre secuencias de números en lugar del caso más general de secuencias de símbolos (por ejemplo, palabras en inglés, árabe, etc.).

Incluso con esa restricción, algunas secuencias generarían solo una respuesta significativa. Por ejemplo, la secuencia “1, 1, 1, 1” tiene una sola regla que se puede inferir, la regla es que la secuencia siempre produce el valor 1. Cualquier otra regla es básicamente un generador de números aleatorios, ya que genera números que no se puede inferir de la secuencia dada.

Este es solo uno de un número infinito de casos degenerados.

More Interesting

¿Cómo funciona un árbol de expansión y cómo lo configuro?

Un hombre llega a su oficina en 2 horas y regresa en 3 horas. La ruta a su oficina incluye un sendero inclinado hacia arriba, 8 km y senderos inclinados hacia abajo. Cada vez que viaja hacia arriba, su velocidad es de 60 km / h, mientras que en un plano de 80 km / h, y cubre hacia abajo a una velocidad de 100 km / h. ¿A qué distancia está su oficina?

Cómo multiplicar elementos de matriz sin usar bucle

¿Cómo debo tomar una entrada de orden 10 ^ 250 usando una matriz de caracteres en C?

¿Qué algoritmo usa Facebook para mostrar la lista de amigos en la página de perfil?

¿Por qué mi profesor sugiere que usemos bucles en lugar de recurrencia en el código de producción?

¿Cuáles son todas las áreas donde las estructuras de datos se aplican en escenarios del mundo real?

¿Por qué los estudiantes chinos tienen un talento extraordinario en programación y algoritmos?

¿Cuáles son ejemplos de problemas en los que entrenar un ANN es la solución óptima?

Cómo resolver http://www.spoj.com/problems/SAMER08A/ usando el algoritmo de Dijkstra

¿En qué consiste el pensamiento algorítmico?

Cómo hacer que mis veranos sean productivos cuando mi interés radica en la codificación competitiva

Si clasifica todos los pesos de una red neuronal entrenada en orden ascendente, ¿cómo se vería la curva de los datos ordenados?

¿Es suficiente el conocimiento del tamiz de Eratóstenes y la factorización prima al preparar los concursos de programación?

¿Cuál es el algoritmo detrás de la agregación de noticias de Facebook News alrededor de una palabra clave en particular?